{"version":3,"file":"shared-lib.Da46vJBA.mjs","names":["useState","c","d","h","u","n","v","y","t","r","$","o","f","g","i","w","E","k","C","L","x","I","s","S","O","M","A","K","a","p","b","l","N","j","e","J","m","T","wt","a","e","o","r","tt","M","_t","Te","n","s","w","y","g","l","i","c","Yt","u","Ft","t","h","ie","f","ne","p","ce","de","b","x","E","k","N","T","ve","m","v","S","B","C","z","I","R","Y","j","$","P","D","H","L","A","O","U","W","V","F","K","_","X","Z","q","G","J","Q","et","at","ot","rt","nt","st","it","lt","dt","ct","ut","mt","ht","ft","pt","gt","vt","bt","yt","xt","Et","kt","Nt","Mt","Tt","St","Bt","Ct","zt","It","Rt","Pt","Dt","Ht","Lt","Zt","d","useTheme","ToasterComponent","Component","config","Globals","Parameters","SuspenseFetch","SuspenseFetchExtended","key","a","b","Component","key","param","e","Component","config","DSCoreCapsule.Globals","Component","DSCoreCapsule.Parameters","DSCoreCapsule.SuspenseFetch","DSCoreCapsule.SuspenseFetchExtended","DSAffiliatesReferrer.default","r","e","t","s","a","n","o","i","l","u","c","f","d","m","y","g","h","p","v","b","_","F","A","V","x","S","v","d","config","key","Component","useFramerRouter","useMemo","useCallback","to","i","useState","config","animation","Indicators","useRef","useState","el","Component","Scrollable","e","dt","x","Active","useMemo","Component","AppendEmail","useState","AppendRedirect","SearchableArea","useRef","Component","r","t","f","n","e","o","Fixed","Component","_Fragment","e","t","n","r","i","s","a","o","l","c","u","h","d","p","f","get","m","g","y","x","b","_","se","M","w","S","T","E","A","L","C","R","P","I","ye","X","J","Y","Z","Q","K","$","ee","te","ne","re","ie","ae","oe","le","ce","ue","he","de","pe","me","ve","D","B","V","N","U","z","G","F","O","H","k","W","j","q","xe","we","v","Loader","useRef","x","THREE.Scene","THREE.OrthographicCamera","THREE.WebGLRenderer","THREE.PlaneGeometry","THREE.TextureLoader","THREE.ShaderMaterial","THREE.Vector3","THREE.Vector4","THREE.Mesh","y","e","THREE.Clock","fonts","css","className","addPropertyOverrides","cycleOrder","serializationHash","variantClassNames","transition1","Transition","config","React.useContext","React.useMemo","Variants","React.Fragment","humanReadableVariantMap","getProps","createLayoutDependency","useRef","React.useId","className","Image","addPropertyOverrides","cycleOrder","serializationHash","variantClassNames","transition1","transition2","Transition","config","React.useContext","React.useMemo","Variants","React.Fragment","humanReadableVariantMap","getProps","createLayoutDependency","useRef","React.useId","Image","className","Logo","Shaders","Background","serializationHash","variantClassNames","transition1","animation","animation1","Transition","config","React.useContext","React.useMemo","Variants","React.Fragment","getProps","createLayoutDependency","Component","useRef","React.useId","sharedStyle.className","className","css","sharedStyle.css","sharedStyle.fonts","DSInterfaceLinks.Active","Component","DSInterfaceLinks.AppendEmail","DSInterfaceLinks.AppendRedirect","DSInterfaceInteractions.Scrollable","DSInterfaceInteractions.Indicators","DSInterfaceStyles.Fixed","DSInterfaceSearchable.SearchableArea","LoaderComponent","css","Icon","Component","useMemo","lowercaseIconKeyPairs","iconKeys","a","useRef","useState","HouseFactory","React","key","addPropertyOverrides","cycleOrder","serializationHash","variantClassNames","transition1","Transition","config","React.useContext","React.useMemo","Variants","React.Fragment","humanReadableVariantMap","getProps","createLayoutDependency","useRef","React.useId","className","config","React.useContext","React.useMemo","React.Fragment","useRef","React.useId","sharedStyle.className","className","sharedStyle.css","sharedStyle.fonts"],"sources":["https:/framer.com/m/framer/store.js@^1.0.0","https:/ga.jspm.io/npm:next-themes@0.2.1/dist/index.module.js","https:/ga.jspm.io/npm:sonner@1.7.4/dist/index.mjs","https:/framer.com/m/Sonner-2W7J.js","https:/framer.com/m/Capsule-oSSG.js","https:/framer.com/m/Clerk-47om.js","https:/framer.com/m/Development-7oqH.js","https:/framer.com/m/Window-ULev.js","https:/framer.com/m/Referrer-aaHb.js","https:/framerusercontent.com/modules/xbyJH4uSP5O2i9iSVF4l/sdtan7N1Fw9sdsVZO4Ad/core.js","https:/ga.jspm.io/npm:react-hook-form@7.39.5/dist/index.esm.mjs","https:/framer.com/m/Strings-XPcz.js","https:/framer.com/m/Router-vdQr.js","https:/framerusercontent.com/modules/jX5EYy75jVj4TMlbqJdO/Hwg8vri5r3U83RmUZRzT/_capsule.js","https:/framer.com/m/Interactions-aK2Z.js","https:/framer.com/m/Links-r6Zf.js","https:/framer.com/m/Searchable-2VXN.js","https:/ga.jspm.io/npm:clsx@2.1.1/dist/clsx.mjs","https:/framer.com/m/Styles-dHmw.js","https:/framerusercontent.com/modules/cngvAw0w9C1Wv7G3Ze5w/r0j9ptfVncyEjLxyKH31/Ellipsis.js","https:/ga.jspm.io/npm:three@0.136.0/build/three.module.js","https:/framer.com/m/ShaderSource-3JJF.js","https:/framerusercontent.com/modules/rtgc5gNwjSdkuKpOf8h6/ygUwfJdEOMiDct48NPI6/Webgl_Shader_Component.js","https:/framerusercontent.com/modules/teGXcopezj7wLHWPCN4k/5GkZSeaSyzIk6y9y2V7W/UoF26bCkV.js","https:/framerusercontent.com/modules/SlWX8OWpCDslEsiaClGY/nnYBUR4ZPqdjrizgp0up/EUvxkoVxm.js","https:/framerusercontent.com/modules/lkoVix78ObHSq79wCy0h/nFBO9Xn4krB3xuIL7EyX/wZpHBWjxP.js","https:/framer.com/m/Loader-2mfM.js","https:/framerusercontent.com/modules/2cBpFZJqxLrlRI0OkzD9/17XBBKq7lXpU9NiTuFJi/interface.js","https:/framerusercontent.com/modules/4L9XJhVUQFpw5WsuvoGY/Aa1FaVEmw2GKXVYxT9vm/gEpyVZImU.js","https:/framerusercontent.com/modules/SUrKmA7l1xzyhWeD2w77/8U0cVz36BfC37eMx7dmG/Skeleton.js","https:/framer.com/m/framer/icon-nullstate.js@0.7.0","https:/framer.com/m/phosphor-icons/House.js@0.0.57","https:/framerusercontent.com/modules/Ma20hU0GGRxLxZphbywl/OSpwWF91FHPVFyQJjMHt/utils.js","https:/framerusercontent.com/modules/tYScH7LTqUtz5KUaUAYP/p8dptk4UIND8hbFWz9V7/Phosphor.js","https:/framerusercontent.com/modules/ljCT6b16ytiI0KyETuGp/jLrVlLiUzm43EOgjxui9/P_p9udK8V.js","https:/framerusercontent.com/modules/Rf5Kq3UnqWPP78FEP1z0/rDVZJsSuMoqhDNAo8pQ0/w5exNccsr.js"],"sourcesContent":["import{useState,useEffect}from\"react\";import{Data,useObserveData}from\"framer\";export function createStore(state1){// Use Data so that a Preview reload resets the state\nconst dataStore=Data({state:Object.freeze({...state1})});// Create a set function that updates the state\nconst setDataStore=newState=>{// If the state is an object, make sure we copy it\nif(typeof newState===\"function\"){newState=newState(dataStore.state);}dataStore.state=Object.freeze({...dataStore.state,...newState});};// Store the initial state, copy the object if it's an object\nlet storeState=typeof state1===\"object\"?Object.freeze({...state1}):state1;// Keep a list of all the listeners, in the form of React hook setters\nconst storeSetters=new Set();// Create a set function that updates all the listeners / setters\nconst setStoreState=newState=>{// If the state is an object, make sure we copy it\nif(typeof newState===\"function\"){newState=newState(storeState);}storeState=typeof newState===\"object\"?Object.freeze({...storeState,...newState}):newState;// Update all the listeners / setters with the new value\nstoreSetters.forEach(setter=>setter(storeState));};// Create the actual hook based on everything above\nfunction useStore(){// Create the hook we are going to use as a listener\nconst[state,setState]=useState(storeState);// If we unmount the component using this hook, we need to remove the listener\n// @ts-ignore\nuseEffect(()=>{// But right now, we need to add the listener\nstoreSetters.add(setState);return()=>storeSetters.delete(setState);},[]);// If Data context exists, use Data, otherwise use vanilla React state\nif(useObserveData()===true){useObserveData();return[dataStore.state,setDataStore];}else{// Return the state and a function to update the central store\nreturn[state,setStoreState];}}return useStore;}\nexport const __FramerMetadata__ = {\"exports\":{\"createStore\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./createStore.map","import t,{createContext as n,useContext as r,Fragment as o,useState as s,useCallback as a,useEffect as l,useMemo as m,memo as i}from\"react\";const c=[\"light\",\"dark\"],d=\"(prefers-color-scheme: dark)\",h=\"undefined\"==typeof window,u=n(void 0),v={setTheme:t=>{},themes:[]},y=()=>{var t;return null!==(t=r(u))&&void 0!==t?t:v},$=n=>r(u)?t.createElement(o,null,n.children):t.createElement(f,n),g=[\"light\",\"dark\"],f=({forcedTheme:n,disableTransitionOnChange:r=!1,enableSystem:o=!0,enableColorScheme:i=!0,storageKey:h=\"theme\",themes:v=g,defaultTheme:w=(o?\"system\":\"light\"),attribute:E=\"data-theme\",value:k,children:C,nonce:L})=>{const[x,I]=s((()=>S(h,w))),[O,M]=s((()=>S(h))),A=k?Object.values(k):v,K=a((t=>{let n=t;if(!n)return;\"system\"===t&&o&&(n=p());const s=k?k[n]:n,a=r?b():null,l=document.documentElement;if(\"class\"===E?(l.classList.remove(...A),s&&l.classList.add(s)):s?l.setAttribute(E,s):l.removeAttribute(E),i){const t=c.includes(w)?w:null,r=c.includes(n)?n:t;l.style.colorScheme=r}null==a||a()}),[]),N=a((t=>{I(t);try{localStorage.setItem(h,t)}catch(t){}}),[n]),j=a((t=>{const r=p(t);M(r),\"system\"===x&&o&&!n&&K(\"system\")}),[x,n]);l((()=>{const t=window.matchMedia(d);return t.addListener(j),j(t),()=>t.removeListener(j)}),[j]),l((()=>{const e=t=>{t.key===h&&N(t.newValue||w)};return window.addEventListener(\"storage\",e),()=>window.removeEventListener(\"storage\",e)}),[N]),l((()=>{K(null!=n?n:x)}),[n,x]);const J=m((()=>({theme:x,setTheme:N,forcedTheme:n,resolvedTheme:\"system\"===x?O:x,themes:o?[...v,\"system\"]:v,systemTheme:o?O:void 0})),[x,N,n,O,o,v]);return t.createElement(u.Provider,{value:J},t.createElement(T,{forcedTheme:n,disableTransitionOnChange:r,enableSystem:o,enableColorScheme:i,storageKey:h,themes:v,defaultTheme:w,attribute:E,value:k,children:C,attrs:A,nonce:L}),C)},T=i((({forcedTheme:n,storageKey:r,attribute:o,enableSystem:s,enableColorScheme:a,defaultTheme:l,value:m,attrs:i,nonce:h})=>{const u=\"system\"===l,v=\"class\"===o?`var d=document.documentElement,c=d.classList;c.remove(${i.map((t=>`'${t}'`)).join(\",\")});`:`var d=document.documentElement,n='${o}',s='setAttribute';`,g=a?c.includes(l)&&l?`if(e==='light'||e==='dark'||!e)d.style.colorScheme=e||'${l}'`:\"if(e==='light'||e==='dark')d.style.colorScheme=e\":\"\",$=(t,n=!1,r=!0)=>{const s=m?m[t]:t,l=n?t+\"|| ''\":`'${s}'`;let i=\"\";return a&&r&&!n&&c.includes(t)&&(i+=`d.style.colorScheme = '${t}';`),\"class\"===o?i+=n||s?`c.add(${l})`:\"null\":s&&(i+=`d[s](n,${l})`),i},T=n?`!function(){${v}${$(n)}}()`:s?`!function(){try{${v}var e=localStorage.getItem('${r}');if('system'===e||(!e&&${u})){var t='${d}',m=window.matchMedia(t);if(m.media!==t||m.matches){${$(\"dark\")}}else{${$(\"light\")}}}else if(e){${m?`var x=${JSON.stringify(m)};`:\"\"}${$(m?\"x[e]\":\"e\",!0)}}${u?\"\":\"else{\"+$(l,!1,!1)+\"}\"}${g}}catch(e){}}()`:`!function(){try{${v}var e=localStorage.getItem('${r}');if(e){${m?`var x=${JSON.stringify(m)};`:\"\"}${$(m?\"x[e]\":\"e\",!0)}}else{${$(l,!1,!1)};}${g}}catch(t){}}();`;return t.createElement(\"script\",{nonce:h,dangerouslySetInnerHTML:{__html:T}})}),(()=>!0)),S=(t,n)=>{if(h)return;let r;try{r=localStorage.getItem(t)||void 0}catch(t){}return r||n},b=()=>{const t=document.createElement(\"style\");return t.appendChild(document.createTextNode(\"*{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}\")),document.head.appendChild(t),()=>{window.getComputedStyle(document.body),setTimeout((()=>{document.head.removeChild(t)}),1)}},p=t=>(t||(t=window.matchMedia(d)),t.matches?\"dark\":\"light\");export{$ as ThemeProvider,y as useTheme};\n\n//# sourceMappingURL=index.module.js.map","import e,{isValidElement as a,forwardRef as o}from\"react\";import r from\"react-dom\";\"use client\";var jt=e=>{switch(e){case\"success\":return s;case\"info\":return l;case\"warning\":return i;case\"error\":return c;default:return null}},n=Array(12).fill(0),Yt=({visible:a,className:o})=>e.createElement(\"div\",{className:[\"sonner-loading-wrapper\",o].filter(Boolean).join(\" \"),\"data-visible\":a},e.createElement(\"div\",{className:\"sonner-spinner\"},n.map(((a,o)=>e.createElement(\"div\",{className:\"sonner-loading-bar\",key:`spinner-bar-${o}`}))))),s=e.createElement(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",viewBox:\"0 0 20 20\",fill:\"currentColor\",height:\"20\",width:\"20\"},e.createElement(\"path\",{fillRule:\"evenodd\",d:\"M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z\",clipRule:\"evenodd\"})),i=e.createElement(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",viewBox:\"0 0 24 24\",fill:\"currentColor\",height:\"20\",width:\"20\"},e.createElement(\"path\",{fillRule:\"evenodd\",d:\"M9.401 3.003c1.155-2 4.043-2 5.197 0l7.355 12.748c1.154 2-.29 4.5-2.599 4.5H4.645c-2.309 0-3.752-2.5-2.598-4.5L9.4 3.003zM12 8.25a.75.75 0 01.75.75v3.75a.75.75 0 01-1.5 0V9a.75.75 0 01.75-.75zm0 8.25a.75.75 0 100-1.5.75.75 0 000 1.5z\",clipRule:\"evenodd\"})),l=e.createElement(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",viewBox:\"0 0 20 20\",fill:\"currentColor\",height:\"20\",width:\"20\"},e.createElement(\"path\",{fillRule:\"evenodd\",d:\"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a.75.75 0 000 1.5h.253a.25.25 0 01.244.304l-.459 2.066A1.75 1.75 0 0010.747 15H11a.75.75 0 000-1.5h-.253a.25.25 0 01-.244-.304l.459-2.066A1.75 1.75 0 009.253 9H9z\",clipRule:\"evenodd\"})),c=e.createElement(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",viewBox:\"0 0 20 20\",fill:\"currentColor\",height:\"20\",width:\"20\"},e.createElement(\"path\",{fillRule:\"evenodd\",d:\"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-5a.75.75 0 01.75.75v4.5a.75.75 0 01-1.5 0v-4.5A.75.75 0 0110 5zm0 10a1 1 0 100-2 1 1 0 000 2z\",clipRule:\"evenodd\"})),u=e.createElement(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",width:\"12\",height:\"12\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"1.5\",strokeLinecap:\"round\",strokeLinejoin:\"round\"},e.createElement(\"line\",{x1:\"18\",y1:\"6\",x2:\"6\",y2:\"18\"}),e.createElement(\"line\",{x1:\"6\",y1:\"6\",x2:\"18\",y2:\"18\"}));var Ft=()=>{let[a,o]=e.useState(document.hidden);return e.useEffect((()=>{let t=()=>{o(document.hidden)};return document.addEventListener(\"visibilitychange\",t),()=>window.removeEventListener(\"visibilitychange\",t)}),[]),a};var m=1,h=class{constructor(){this.subscribe=e=>(this.subscribers.push(e),()=>{let a=this.subscribers.indexOf(e);this.subscribers.splice(a,1)});this.publish=e=>{this.subscribers.forEach((a=>a(e)))};this.addToast=e=>{this.publish(e),this.toasts=[...this.toasts,e]};this.create=e=>{var a;let{message:o,...r}=e,n=typeof(e==null?void 0:e.id)==\"number\"||((a=e.id)==null?void 0:a.length)>0?e.id:m++,s=this.toasts.find((e=>e.id===n)),i=e.dismissible===void 0||e.dismissible;return this.dismissedToasts.has(n)&&this.dismissedToasts.delete(n),s?this.toasts=this.toasts.map((a=>a.id===n?(this.publish({...a,...e,id:n,title:o}),{...a,...e,id:n,dismissible:i,title:o}):a)):this.addToast({title:o,...r,dismissible:i,id:n}),n};this.dismiss=e=>(this.dismissedToasts.add(e),e||this.toasts.forEach((e=>{this.subscribers.forEach((a=>a({id:e.id,dismiss:!0})))})),this.subscribers.forEach((a=>a({id:e,dismiss:!0}))),e);this.message=(e,a)=>this.create({...a,message:e});this.error=(e,a)=>this.create({...a,message:e,type:\"error\"});this.success=(e,a)=>this.create({...a,type:\"success\",message:e});this.info=(e,a)=>this.create({...a,type:\"info\",message:e});this.warning=(e,a)=>this.create({...a,type:\"warning\",message:e});this.loading=(e,a)=>this.create({...a,type:\"loading\",message:e});this.promise=(a,o)=>{if(!o)return;let r;o.loading!==void 0&&(r=this.create({...o,promise:a,type:\"loading\",message:o.loading,description:typeof o.description!=\"function\"?o.description:void 0}));let n,s=a instanceof Promise?a:a(),i=r!==void 0,l=s.then((async a=>{if(n=[\"resolve\",a],e.isValidElement(a))i=!1,this.create({id:r,type:\"default\",message:a});else if(ie(a)&&!a.ok){i=!1;let e=typeof o.error==\"function\"?await o.error(`HTTP error! status: ${a.status}`):o.error,n=typeof o.description==\"function\"?await o.description(`HTTP error! status: ${a.status}`):o.description;this.create({id:r,type:\"error\",message:e,description:n})}else if(o.success!==void 0){i=!1;let e=typeof o.success==\"function\"?await o.success(a):o.success,n=typeof o.description==\"function\"?await o.description(a):o.description;this.create({id:r,type:\"success\",message:e,description:n})}})).catch((async e=>{if(n=[\"reject\",e],o.error!==void 0){i=!1;let a=typeof o.error==\"function\"?await o.error(e):o.error,n=typeof o.description==\"function\"?await o.description(e):o.description;this.create({id:r,type:\"error\",message:a,description:n})}})).finally((()=>{var e;i&&(this.dismiss(r),r=void 0),(e=o.finally)==null||e.call(o)})),g=()=>new Promise(((e,a)=>l.then((()=>n[0]===\"reject\"?a(n[1]):e(n[1]))).catch(a)));return typeof r!=\"string\"&&typeof r!=\"number\"?{unwrap:g}:Object.assign(r,{unwrap:g})};this.custom=(e,a)=>{let o=(a==null?void 0:a.id)||m++;return this.create({jsx:e(o),id:o,...a}),o};this.getActiveToasts=()=>this.toasts.filter((e=>!this.dismissedToasts.has(e.id)));this.subscribers=[],this.toasts=[],this.dismissedToasts=new Set}},f=new h,ne=(e,a)=>{let o=(a==null?void 0:a.id)||m++;return f.addToast({title:e,...a,id:o}),o},ie=e=>e&&typeof e==\"object\"&&\"ok\"in e&&typeof e.ok==\"boolean\"&&\"status\"in e&&typeof e.status==\"number\",p=ne,ce=()=>f.toasts,de=()=>f.getActiveToasts(),v=Object.assign(p,{success:f.success,info:f.info,warning:f.warning,error:f.error,custom:f.custom,message:f.message,promise:f.promise,dismiss:f.dismiss,loading:f.loading},{getHistory:ce,getToasts:de});function wt(e,{insertAt:a}={}){if(!e||typeof document==\"undefined\")return;let o=document.head||document.getElementsByTagName(\"head\")[0],r=document.createElement(\"style\");r.type=\"text/css\",a===\"top\"&&o.firstChild?o.insertBefore(r,o.firstChild):o.appendChild(r),r.styleSheet?r.styleSheet.cssText=e:r.appendChild(document.createTextNode(e))}wt(':where(html[dir=\"ltr\"]),:where([data-sonner-toaster][dir=\"ltr\"]){--toast-icon-margin-start: -3px;--toast-icon-margin-end: 4px;--toast-svg-margin-start: -1px;--toast-svg-margin-end: 0px;--toast-button-margin-start: auto;--toast-button-margin-end: 0;--toast-close-button-start: 0;--toast-close-button-end: unset;--toast-close-button-transform: translate(-35%, -35%)}:where(html[dir=\"rtl\"]),:where([data-sonner-toaster][dir=\"rtl\"]){--toast-icon-margin-start: 4px;--toast-icon-margin-end: -3px;--toast-svg-margin-start: 0px;--toast-svg-margin-end: -1px;--toast-button-margin-start: 0;--toast-button-margin-end: auto;--toast-close-button-start: unset;--toast-close-button-end: 0;--toast-close-button-transform: translate(35%, -35%)}:where([data-sonner-toaster]){position:fixed;width:var(--width);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;--gray1: hsl(0, 0%, 99%);--gray2: hsl(0, 0%, 97.3%);--gray3: hsl(0, 0%, 95.1%);--gray4: hsl(0, 0%, 93%);--gray5: hsl(0, 0%, 90.9%);--gray6: hsl(0, 0%, 88.7%);--gray7: hsl(0, 0%, 85.8%);--gray8: hsl(0, 0%, 78%);--gray9: hsl(0, 0%, 56.1%);--gray10: hsl(0, 0%, 52.3%);--gray11: hsl(0, 0%, 43.5%);--gray12: hsl(0, 0%, 9%);--border-radius: 8px;box-sizing:border-box;padding:0;margin:0;list-style:none;outline:none;z-index:999999999;transition:transform .4s ease}:where([data-sonner-toaster][data-lifted=\"true\"]){transform:translateY(-10px)}@media (hover: none) and (pointer: coarse){:where([data-sonner-toaster][data-lifted=\"true\"]){transform:none}}:where([data-sonner-toaster][data-x-position=\"right\"]){right:var(--offset-right)}:where([data-sonner-toaster][data-x-position=\"left\"]){left:var(--offset-left)}:where([data-sonner-toaster][data-x-position=\"center\"]){left:50%;transform:translate(-50%)}:where([data-sonner-toaster][data-y-position=\"top\"]){top:var(--offset-top)}:where([data-sonner-toaster][data-y-position=\"bottom\"]){bottom:var(--offset-bottom)}:where([data-sonner-toast]){--y: translateY(100%);--lift-amount: calc(var(--lift) * var(--gap));z-index:var(--z-index);position:absolute;opacity:0;transform:var(--y);filter:blur(0);touch-action:none;transition:transform .4s,opacity .4s,height .4s,box-shadow .2s;box-sizing:border-box;outline:none;overflow-wrap:anywhere}:where([data-sonner-toast][data-styled=\"true\"]){padding:16px;background:var(--normal-bg);border:1px solid var(--normal-border);color:var(--normal-text);border-radius:var(--border-radius);box-shadow:0 4px 12px #0000001a;width:var(--width);font-size:13px;display:flex;align-items:center;gap:6px}:where([data-sonner-toast]:focus-visible){box-shadow:0 4px 12px #0000001a,0 0 0 2px #0003}:where([data-sonner-toast][data-y-position=\"top\"]){top:0;--y: translateY(-100%);--lift: 1;--lift-amount: calc(1 * var(--gap))}:where([data-sonner-toast][data-y-position=\"bottom\"]){bottom:0;--y: translateY(100%);--lift: -1;--lift-amount: calc(var(--lift) * var(--gap))}:where([data-sonner-toast]) :where([data-description]){font-weight:400;line-height:1.4;color:inherit}:where([data-sonner-toast]) :where([data-title]){font-weight:500;line-height:1.5;color:inherit}:where([data-sonner-toast]) :where([data-icon]){display:flex;height:16px;width:16px;position:relative;justify-content:flex-start;align-items:center;flex-shrink:0;margin-left:var(--toast-icon-margin-start);margin-right:var(--toast-icon-margin-end)}:where([data-sonner-toast][data-promise=\"true\"]) :where([data-icon])>svg{opacity:0;transform:scale(.8);transform-origin:center;animation:sonner-fade-in .3s ease forwards}:where([data-sonner-toast]) :where([data-icon])>*{flex-shrink:0}:where([data-sonner-toast]) :where([data-icon]) svg{margin-left:var(--toast-svg-margin-start);margin-right:var(--toast-svg-margin-end)}:where([data-sonner-toast]) :where([data-content]){display:flex;flex-direction:column;gap:2px}[data-sonner-toast][data-styled=true] [data-button]{border-radius:4px;padding-left:8px;padding-right:8px;height:24px;font-size:12px;color:var(--normal-bg);background:var(--normal-text);margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end);border:none;cursor:pointer;outline:none;display:flex;align-items:center;flex-shrink:0;transition:opacity .4s,box-shadow .2s}:where([data-sonner-toast]) :where([data-button]):focus-visible{box-shadow:0 0 0 2px #0006}:where([data-sonner-toast]) :where([data-button]):first-of-type{margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end)}:where([data-sonner-toast]) :where([data-cancel]){color:var(--normal-text);background:rgba(0,0,0,.08)}:where([data-sonner-toast][data-theme=\"dark\"]) :where([data-cancel]){background:rgba(255,255,255,.3)}:where([data-sonner-toast]) :where([data-close-button]){position:absolute;left:var(--toast-close-button-start);right:var(--toast-close-button-end);top:0;height:20px;width:20px;display:flex;justify-content:center;align-items:center;padding:0;color:var(--gray12);border:1px solid var(--gray4);transform:var(--toast-close-button-transform);border-radius:50%;cursor:pointer;z-index:1;transition:opacity .1s,background .2s,border-color .2s}[data-sonner-toast] [data-close-button]{background:var(--gray1)}:where([data-sonner-toast]) :where([data-close-button]):focus-visible{box-shadow:0 4px 12px #0000001a,0 0 0 2px #0003}:where([data-sonner-toast]) :where([data-disabled=\"true\"]){cursor:not-allowed}:where([data-sonner-toast]):hover :where([data-close-button]):hover{background:var(--gray2);border-color:var(--gray5)}:where([data-sonner-toast][data-swiping=\"true\"]):before{content:\"\";position:absolute;left:-50%;right:-50%;height:100%;z-index:-1}:where([data-sonner-toast][data-y-position=\"top\"][data-swiping=\"true\"]):before{bottom:50%;transform:scaleY(3) translateY(50%)}:where([data-sonner-toast][data-y-position=\"bottom\"][data-swiping=\"true\"]):before{top:50%;transform:scaleY(3) translateY(-50%)}:where([data-sonner-toast][data-swiping=\"false\"][data-removed=\"true\"]):before{content:\"\";position:absolute;inset:0;transform:scaleY(2)}:where([data-sonner-toast]):after{content:\"\";position:absolute;left:0;height:calc(var(--gap) + 1px);bottom:100%;width:100%}:where([data-sonner-toast][data-mounted=\"true\"]){--y: translateY(0);opacity:1}:where([data-sonner-toast][data-expanded=\"false\"][data-front=\"false\"]){--scale: var(--toasts-before) * .05 + 1;--y: translateY(calc(var(--lift-amount) * var(--toasts-before))) scale(calc(-1 * var(--scale)));height:var(--front-toast-height)}:where([data-sonner-toast])>*{transition:opacity .4s}:where([data-sonner-toast][data-expanded=\"false\"][data-front=\"false\"][data-styled=\"true\"])>*{opacity:0}:where([data-sonner-toast][data-visible=\"false\"]){opacity:0;pointer-events:none}:where([data-sonner-toast][data-mounted=\"true\"][data-expanded=\"true\"]){--y: translateY(calc(var(--lift) * var(--offset)));height:var(--initial-height)}:where([data-sonner-toast][data-removed=\"true\"][data-front=\"true\"][data-swipe-out=\"false\"]){--y: translateY(calc(var(--lift) * -100%));opacity:0}:where([data-sonner-toast][data-removed=\"true\"][data-front=\"false\"][data-swipe-out=\"false\"][data-expanded=\"true\"]){--y: translateY(calc(var(--lift) * var(--offset) + var(--lift) * -100%));opacity:0}:where([data-sonner-toast][data-removed=\"true\"][data-front=\"false\"][data-swipe-out=\"false\"][data-expanded=\"false\"]){--y: translateY(40%);opacity:0;transition:transform .5s,opacity .2s}:where([data-sonner-toast][data-removed=\"true\"][data-front=\"false\"]):before{height:calc(var(--initial-height) + 20%)}[data-sonner-toast][data-swiping=true]{transform:var(--y) translateY(var(--swipe-amount-y, 0px)) translate(var(--swipe-amount-x, 0px));transition:none}[data-sonner-toast][data-swiped=true]{user-select:none}[data-sonner-toast][data-swipe-out=true][data-y-position=bottom],[data-sonner-toast][data-swipe-out=true][data-y-position=top]{animation-duration:.2s;animation-timing-function:ease-out;animation-fill-mode:forwards}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=left]{animation-name:swipe-out-left}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=right]{animation-name:swipe-out-right}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=up]{animation-name:swipe-out-up}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=down]{animation-name:swipe-out-down}@keyframes swipe-out-left{0%{transform:var(--y) translate(var(--swipe-amount-x));opacity:1}to{transform:var(--y) translate(calc(var(--swipe-amount-x) - 100%));opacity:0}}@keyframes swipe-out-right{0%{transform:var(--y) translate(var(--swipe-amount-x));opacity:1}to{transform:var(--y) translate(calc(var(--swipe-amount-x) + 100%));opacity:0}}@keyframes swipe-out-up{0%{transform:var(--y) translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y) translateY(calc(var(--swipe-amount-y) - 100%));opacity:0}}@keyframes swipe-out-down{0%{transform:var(--y) translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y) translateY(calc(var(--swipe-amount-y) + 100%));opacity:0}}@media (max-width: 600px){[data-sonner-toaster]{position:fixed;right:var(--mobile-offset-right);left:var(--mobile-offset-left);width:100%}[data-sonner-toaster][dir=rtl]{left:calc(var(--mobile-offset-left) * -1)}[data-sonner-toaster] [data-sonner-toast]{left:0;right:0;width:calc(100% - var(--mobile-offset-left) * 2)}[data-sonner-toaster][data-x-position=left]{left:var(--mobile-offset-left)}[data-sonner-toaster][data-y-position=bottom]{bottom:var(--mobile-offset-bottom)}[data-sonner-toaster][data-y-position=top]{top:var(--mobile-offset-top)}[data-sonner-toaster][data-x-position=center]{left:var(--mobile-offset-left);right:var(--mobile-offset-right);transform:none}}[data-sonner-toaster][data-theme=light]{--normal-bg: #fff;--normal-border: var(--gray4);--normal-text: var(--gray12);--success-bg: hsl(143, 85%, 96%);--success-border: hsl(145, 92%, 91%);--success-text: hsl(140, 100%, 27%);--info-bg: hsl(208, 100%, 97%);--info-border: hsl(221, 91%, 91%);--info-text: hsl(210, 92%, 45%);--warning-bg: hsl(49, 100%, 97%);--warning-border: hsl(49, 91%, 91%);--warning-text: hsl(31, 92%, 45%);--error-bg: hsl(359, 100%, 97%);--error-border: hsl(359, 100%, 94%);--error-text: hsl(360, 100%, 45%)}[data-sonner-toaster][data-theme=light] [data-sonner-toast][data-invert=true]{--normal-bg: #000;--normal-border: hsl(0, 0%, 20%);--normal-text: var(--gray1)}[data-sonner-toaster][data-theme=dark] [data-sonner-toast][data-invert=true]{--normal-bg: #fff;--normal-border: var(--gray3);--normal-text: var(--gray12)}[data-sonner-toaster][data-theme=dark]{--normal-bg: #000;--normal-bg-hover: hsl(0, 0%, 12%);--normal-border: hsl(0, 0%, 20%);--normal-border-hover: hsl(0, 0%, 25%);--normal-text: var(--gray1);--success-bg: hsl(150, 100%, 6%);--success-border: hsl(147, 100%, 12%);--success-text: hsl(150, 86%, 65%);--info-bg: hsl(215, 100%, 6%);--info-border: hsl(223, 100%, 12%);--info-text: hsl(216, 87%, 65%);--warning-bg: hsl(64, 100%, 6%);--warning-border: hsl(60, 100%, 12%);--warning-text: hsl(46, 87%, 65%);--error-bg: hsl(358, 76%, 10%);--error-border: hsl(357, 89%, 16%);--error-text: hsl(358, 100%, 81%)}[data-sonner-toaster][data-theme=dark] [data-sonner-toast] [data-close-button]{background:var(--normal-bg);border-color:var(--normal-border);color:var(--normal-text)}[data-sonner-toaster][data-theme=dark] [data-sonner-toast] [data-close-button]:hover{background:var(--normal-bg-hover);border-color:var(--normal-border-hover)}[data-rich-colors=true][data-sonner-toast][data-type=success],[data-rich-colors=true][data-sonner-toast][data-type=success] [data-close-button]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=info],[data-rich-colors=true][data-sonner-toast][data-type=info] [data-close-button]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning],[data-rich-colors=true][data-sonner-toast][data-type=warning] [data-close-button]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=error],[data-rich-colors=true][data-sonner-toast][data-type=error] [data-close-button]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.sonner-loading-wrapper{--size: 16px;height:var(--size);width:var(--size);position:absolute;inset:0;z-index:10}.sonner-loading-wrapper[data-visible=false]{transform-origin:center;animation:sonner-fade-out .2s ease forwards}.sonner-spinner{position:relative;top:50%;left:50%;height:var(--size);width:var(--size)}.sonner-loading-bar{animation:sonner-spin 1.2s linear infinite;background:var(--gray11);border-radius:6px;height:8%;left:-10%;position:absolute;top:-3.9%;width:24%}.sonner-loading-bar:nth-child(1){animation-delay:-1.2s;transform:rotate(.0001deg) translate(146%)}.sonner-loading-bar:nth-child(2){animation-delay:-1.1s;transform:rotate(30deg) translate(146%)}.sonner-loading-bar:nth-child(3){animation-delay:-1s;transform:rotate(60deg) translate(146%)}.sonner-loading-bar:nth-child(4){animation-delay:-.9s;transform:rotate(90deg) translate(146%)}.sonner-loading-bar:nth-child(5){animation-delay:-.8s;transform:rotate(120deg) translate(146%)}.sonner-loading-bar:nth-child(6){animation-delay:-.7s;transform:rotate(150deg) translate(146%)}.sonner-loading-bar:nth-child(7){animation-delay:-.6s;transform:rotate(180deg) translate(146%)}.sonner-loading-bar:nth-child(8){animation-delay:-.5s;transform:rotate(210deg) translate(146%)}.sonner-loading-bar:nth-child(9){animation-delay:-.4s;transform:rotate(240deg) translate(146%)}.sonner-loading-bar:nth-child(10){animation-delay:-.3s;transform:rotate(270deg) translate(146%)}.sonner-loading-bar:nth-child(11){animation-delay:-.2s;transform:rotate(300deg) translate(146%)}.sonner-loading-bar:nth-child(12){animation-delay:-.1s;transform:rotate(330deg) translate(146%)}@keyframes sonner-fade-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes sonner-fade-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8)}}@keyframes sonner-spin{0%{opacity:1}to{opacity:.15}}@media (prefers-reduced-motion){[data-sonner-toast],[data-sonner-toast]>*,.sonner-loading-bar{transition:none!important;animation:none!important}}.sonner-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transform-origin:center;transition:opacity .2s,transform .2s}.sonner-loader[data-visible=false]{opacity:0;transform:scale(.8) translate(-50%,-50%)}\\n');function tt(e){return e.label!==void 0}var b=3,y=\"32px\",w=\"16px\",x=4e3,E=356,k=14,N=20,T=200;function M(...e){return e.filter(Boolean).join(\" \")}function xe(e){let[a,o]=e.split(\"-\"),r=[];return a&&r.push(a),o&&r.push(o),r}var ve=o=>{var r,n,s,i,l,c,m,h,f,p,v;let{invert:b,toast:y,unstyled:w,interacting:E,setHeights:k,visibleToasts:S,heights:B,index:C,toasts:z,expanded:I,removeToast:R,defaultRichColors:Y,closeButton:j,style:$,cancelButtonStyle:P,actionButtonStyle:D,className:H=\"\",descriptionClassName:L=\"\",duration:A,position:O,gap:U,loadingIcon:W,expandByDefault:V,classNames:F,icons:K,closeButtonAriaLabel:_=\"Close toast\",pauseWhenPageIsHidden:X}=o,[Z,q]=e.useState(null),[G,J]=e.useState(null),[Q,et]=e.useState(!1),[at,ot]=e.useState(!1),[rt,nt]=e.useState(!1),[st,it]=e.useState(!1),[lt,dt]=e.useState(!1),[ct,ut]=e.useState(0),[mt,ht]=e.useState(0),ft=e.useRef(y.duration||A||x),pt=e.useRef(null),gt=e.useRef(null),vt=C===0,bt=C+1<=S,yt=y.type,xt=y.dismissible!==!1,Et=y.className||\"\",kt=y.descriptionClassName||\"\",Nt=e.useMemo((()=>B.findIndex((e=>e.toastId===y.id))||0),[B,y.id]),Mt=e.useMemo((()=>{var e;return(e=y.closeButton)!=null?e:j}),[y.closeButton,j]),Tt=e.useMemo((()=>y.duration||A||x),[y.duration,A]),St=e.useRef(0),Bt=e.useRef(0),Ct=e.useRef(0),zt=e.useRef(null),[It,Rt]=O.split(\"-\"),$t=e.useMemo((()=>B.reduce(((e,a,o)=>o>=Nt?e:e+a.height),0)),[B,Nt]),Pt=Ft(),Dt=y.invert||b,Ht=yt===\"loading\";Bt.current=e.useMemo((()=>Nt*U+$t),[Nt,$t]),e.useEffect((()=>{ft.current=Tt}),[Tt]),e.useEffect((()=>{et(!0)}),[]),e.useEffect((()=>{let e=gt.current;if(e){let a=e.getBoundingClientRect().height;return ht(a),k((e=>[{toastId:y.id,height:a,position:y.position},...e])),()=>k((e=>e.filter((e=>e.toastId!==y.id))))}}),[k,y.id]),e.useLayoutEffect((()=>{if(!Q)return;let e=gt.current,a=e.style.height;e.style.height=\"auto\";let o=e.getBoundingClientRect().height;e.style.height=a,ht(o),k((e=>e.find((e=>e.toastId===y.id))?e.map((e=>e.toastId===y.id?{...e,height:o}:e)):[{toastId:y.id,height:o,position:y.position},...e]))}),[Q,y.title,y.description,k,y.id]);let Lt=e.useCallback((()=>{ot(!0),ut(Bt.current),k((e=>e.filter((e=>e.toastId!==y.id)))),setTimeout((()=>{R(y)}),T)}),[y,R,k,Bt]);e.useEffect((()=>{if(y.promise&&yt===\"loading\"||y.duration===1/0||y.type===\"loading\")return;let e;return I||E||X&&Pt?(()=>{if(Ct.current<St.current){let e=(new Date).getTime()-St.current;ft.current=ft.current-e}Ct.current=(new Date).getTime()})():(()=>{ft.current!==1/0&&(St.current=(new Date).getTime(),e=setTimeout((()=>{var e;(e=y.onAutoClose)==null||e.call(y,y),Lt()}),ft.current))})(),()=>clearTimeout(e)}),[I,E,y,yt,X,Pt,Lt]),e.useEffect((()=>{y.delete&&Lt()}),[Lt,y.delete]);function Zt(){var a,o,r;return K!=null&&K.loading?e.createElement(\"div\",{className:M(F==null?void 0:F.loader,(a=y==null?void 0:y.classNames)==null?void 0:a.loader,\"sonner-loader\"),\"data-visible\":yt===\"loading\"},K.loading):W?e.createElement(\"div\",{className:M(F==null?void 0:F.loader,(o=y==null?void 0:y.classNames)==null?void 0:o.loader,\"sonner-loader\"),\"data-visible\":yt===\"loading\"},W):e.createElement(Yt,{className:M(F==null?void 0:F.loader,(r=y==null?void 0:y.classNames)==null?void 0:r.loader),visible:yt===\"loading\"})}return e.createElement(\"li\",{tabIndex:0,ref:gt,className:M(H,Et,F==null?void 0:F.toast,(r=y==null?void 0:y.classNames)==null?void 0:r.toast,F==null?void 0:F.default,F==null?void 0:F[yt],(n=y==null?void 0:y.classNames)==null?void 0:n[yt]),\"data-sonner-toast\":\"\",\"data-rich-colors\":(s=y.richColors)!=null?s:Y,\"data-styled\":!(y.jsx||y.unstyled||w),\"data-mounted\":Q,\"data-promise\":!!y.promise,\"data-swiped\":lt,\"data-removed\":at,\"data-visible\":bt,\"data-y-position\":It,\"data-x-position\":Rt,\"data-index\":C,\"data-front\":vt,\"data-swiping\":rt,\"data-dismissible\":xt,\"data-type\":yt,\"data-invert\":Dt,\"data-swipe-out\":st,\"data-swipe-direction\":G,\"data-expanded\":!!(I||V&&Q),style:{\"--index\":C,\"--toasts-before\":C,\"--z-index\":z.length-C,\"--offset\":`${at?ct:Bt.current}px`,\"--initial-height\":V?\"auto\":`${mt}px`,...$,...y.style},onDragEnd:()=>{nt(!1),q(null),zt.current=null},onPointerDown:e=>{Ht||!xt||(pt.current=new Date,ut(Bt.current),e.target.setPointerCapture(e.pointerId),e.target.tagName!==\"BUTTON\"&&(nt(!0),zt.current={x:e.clientX,y:e.clientY}))},onPointerUp:()=>{var e,a,o,r;if(st||!xt)return;zt.current=null;let n=Number(((e=gt.current)==null?void 0:e.style.getPropertyValue(\"--swipe-amount-x\").replace(\"px\",\"\"))||0),s=Number(((a=gt.current)==null?void 0:a.style.getPropertyValue(\"--swipe-amount-y\").replace(\"px\",\"\"))||0),i=(new Date).getTime()-((o=pt.current)==null?void 0:o.getTime()),l=Z===\"x\"?n:s,c=Math.abs(l)/i;Math.abs(l)>=N||c>.11?(ut(Bt.current),(r=y.onDismiss)==null||r.call(y,y),J(Z===\"x\"?n>0?\"right\":\"left\":s>0?\"down\":\"up\"),Lt(),it(!0),dt(!1)):(nt(!1),q(null))},onPointerMove:e=>{var a,r,n,s;if(!zt.current||!xt||((a=window.getSelection())==null?void 0:a.toString().length)>0)return;let i=e.clientY-zt.current.y,l=e.clientX-zt.current.x,c=(r=o.swipeDirections)!=null?r:xe(O);!Z&&(Math.abs(l)>1||Math.abs(i)>1)&&q(Math.abs(l)>Math.abs(i)?\"x\":\"y\");let u={x:0,y:0};Z===\"y\"?(c.includes(\"top\")||c.includes(\"bottom\"))&&(c.includes(\"top\")&&i<0||c.includes(\"bottom\")&&i>0)&&(u.y=i):Z===\"x\"&&(c.includes(\"left\")||c.includes(\"right\"))&&(c.includes(\"left\")&&l<0||c.includes(\"right\")&&l>0)&&(u.x=l),(Math.abs(u.x)>0||Math.abs(u.y)>0)&&dt(!0),(n=gt.current)==null||n.style.setProperty(\"--swipe-amount-x\",`${u.x}px`),(s=gt.current)==null||s.style.setProperty(\"--swipe-amount-y\",`${u.y}px`)}},Mt&&!y.jsx?e.createElement(\"button\",{\"aria-label\":_,\"data-disabled\":Ht,\"data-close-button\":!0,onClick:Ht||!xt?()=>{}:()=>{var e;Lt(),(e=y.onDismiss)==null||e.call(y,y)},className:M(F==null?void 0:F.closeButton,(i=y==null?void 0:y.classNames)==null?void 0:i.closeButton)},(l=K==null?void 0:K.close)!=null?l:u):null,y.jsx||a(y.title)?y.jsx?y.jsx:typeof y.title==\"function\"?y.title():y.title:e.createElement(e.Fragment,null,yt||y.icon||y.promise?e.createElement(\"div\",{\"data-icon\":\"\",className:M(F==null?void 0:F.icon,(c=y==null?void 0:y.classNames)==null?void 0:c.icon)},y.promise||y.type===\"loading\"&&!y.icon?y.icon||Zt():null,y.type!==\"loading\"?y.icon||(K==null?void 0:K[yt])||jt(yt):null):null,e.createElement(\"div\",{\"data-content\":\"\",className:M(F==null?void 0:F.content,(m=y==null?void 0:y.classNames)==null?void 0:m.content)},e.createElement(\"div\",{\"data-title\":\"\",className:M(F==null?void 0:F.title,(h=y==null?void 0:y.classNames)==null?void 0:h.title)},typeof y.title==\"function\"?y.title():y.title),y.description?e.createElement(\"div\",{\"data-description\":\"\",className:M(L,kt,F==null?void 0:F.description,(f=y==null?void 0:y.classNames)==null?void 0:f.description)},typeof y.description==\"function\"?y.description():y.description):null),a(y.cancel)?y.cancel:y.cancel&&tt(y.cancel)?e.createElement(\"button\",{\"data-button\":!0,\"data-cancel\":!0,style:y.cancelButtonStyle||P,onClick:e=>{var a,o;tt(y.cancel)&&xt&&((o=(a=y.cancel).onClick)==null||o.call(a,e),Lt())},className:M(F==null?void 0:F.cancelButton,(p=y==null?void 0:y.classNames)==null?void 0:p.cancelButton)},y.cancel.label):null,a(y.action)?y.action:y.action&&tt(y.action)?e.createElement(\"button\",{\"data-button\":!0,\"data-action\":!0,style:y.actionButtonStyle||D,onClick:e=>{var a,o;tt(y.action)&&((o=(a=y.action).onClick)==null||o.call(a,e),!e.defaultPrevented&&Lt())},className:M(F==null?void 0:F.actionButton,(v=y==null?void 0:y.classNames)==null?void 0:v.actionButton)},y.action.label):null))};function _t(){if(typeof window==\"undefined\"||typeof document==\"undefined\")return\"ltr\";let e=document.documentElement.getAttribute(\"dir\");return e!==\"auto\"&&e?e:window.getComputedStyle(document.documentElement).direction}function Te(e,a){let o={};return[e,a].forEach(((e,a)=>{let r=a===1,n=r?\"--mobile-offset\":\"--offset\",s=r?w:y;function g(e){[\"top\",\"right\",\"bottom\",\"left\"].forEach((a=>{o[`${n}-${a}`]=typeof e==\"number\"?`${e}px`:e}))}typeof e==\"number\"||typeof e==\"string\"?g(e):typeof e==\"object\"?[\"top\",\"right\",\"bottom\",\"left\"].forEach((a=>{e[a]===void 0?o[`${n}-${a}`]=s:o[`${n}-${a}`]=typeof e[a]==\"number\"?`${e[a]}px`:e[a]})):g(s)})),o}function Oe(){let[a,o]=e.useState([]);return e.useEffect((()=>f.subscribe((e=>{e.dismiss?setTimeout((()=>{r.flushSync((()=>{o((a=>a.filter((a=>a.id!==e.id))))}))})):setTimeout((()=>{r.flushSync((()=>{o((a=>{let o=a.findIndex((a=>a.id===e.id));return o!==-1?[...a.slice(0,o),{...a[o],...e},...a.slice(o+1)]:[e,...a]}))}))}))}))),[]),{toasts:a}}var S=o((function(a,o){let{invert:n,position:s=\"bottom-right\",hotkey:i=[\"altKey\",\"KeyT\"],expand:l,closeButton:c,className:u,offset:m,mobileOffset:h,theme:p=\"light\",richColors:v,duration:y,style:w,visibleToasts:x=b,toastOptions:N,dir:T=_t(),gap:S=k,loadingIcon:B,icons:C,containerAriaLabel:z=\"Notifications\",pauseWhenPageIsHidden:I}=a,[R,Y]=e.useState([]),j=e.useMemo((()=>Array.from(new Set([s].concat(R.filter((e=>e.position)).map((e=>e.position)))))),[R,s]),[$,P]=e.useState([]),[D,H]=e.useState(!1),[L,A]=e.useState(!1),[O,U]=e.useState(p!==\"system\"?p:typeof window!=\"undefined\"&&window.matchMedia&&window.matchMedia(\"(prefers-color-scheme: dark)\").matches?\"dark\":\"light\"),W=e.useRef(null),V=i.join(\"+\").replace(/Key/g,\"\").replace(/Digit/g,\"\"),F=e.useRef(null),K=e.useRef(!1),_=e.useCallback((e=>{Y((a=>{var o;return(o=a.find((a=>a.id===e.id)))!=null&&o.delete||f.dismiss(e.id),a.filter((({id:a})=>a!==e.id))}))}),[]);return e.useEffect((()=>f.subscribe((e=>{e.dismiss?Y((a=>a.map((a=>a.id===e.id?{...a,delete:!0}:a)))):setTimeout((()=>{r.flushSync((()=>{Y((a=>{let o=a.findIndex((a=>a.id===e.id));return o!==-1?[...a.slice(0,o),{...a[o],...e},...a.slice(o+1)]:[e,...a]}))}))}))}))),[]),e.useEffect((()=>{if(p!==\"system\"){U(p);return}if(p===\"system\"&&(window.matchMedia&&window.matchMedia(\"(prefers-color-scheme: dark)\").matches?U(\"dark\"):U(\"light\")),typeof window==\"undefined\")return;let e=window.matchMedia(\"(prefers-color-scheme: dark)\");try{e.addEventListener(\"change\",(({matches:e})=>{U(e?\"dark\":\"light\")}))}catch(a){e.addListener((({matches:e})=>{try{U(e?\"dark\":\"light\")}catch(e){console.error(e)}}))}}),[p]),e.useEffect((()=>{R.length<=1&&H(!1)}),[R]),e.useEffect((()=>{let d=e=>{var a,o;i.every((a=>e[a]||e.code===a))&&(H(!0),(a=W.current)==null||a.focus()),e.code===\"Escape\"&&(document.activeElement===W.current||(o=W.current)!=null&&o.contains(document.activeElement))&&H(!1)};return document.addEventListener(\"keydown\",d),()=>document.removeEventListener(\"keydown\",d)}),[i]),e.useEffect((()=>{if(W.current)return()=>{F.current&&(F.current.focus({preventScroll:!0}),F.current=null,K.current=!1)}}),[W.current]),e.createElement(\"section\",{ref:o,\"aria-label\":`${z} ${V}`,tabIndex:-1,\"aria-live\":\"polite\",\"aria-relevant\":\"additions text\",\"aria-atomic\":\"false\",suppressHydrationWarning:!0},j.map(((o,r)=>{var s;let[i,f]=o.split(\"-\");return R.length?e.createElement(\"ol\",{key:o,dir:T===\"auto\"?_t():T,tabIndex:-1,ref:W,className:u,\"data-sonner-toaster\":!0,\"data-theme\":O,\"data-y-position\":i,\"data-lifted\":D&&R.length>1&&!l,\"data-x-position\":f,style:{\"--front-toast-height\":`${((s=$[0])==null?void 0:s.height)||0}px`,\"--width\":`${E}px`,\"--gap\":`${S}px`,...w,...Te(m,h)},onBlur:e=>{K.current&&!e.currentTarget.contains(e.relatedTarget)&&(K.current=!1,F.current&&(F.current.focus({preventScroll:!0}),F.current=null))},onFocus:e=>{e.target instanceof HTMLElement&&e.target.dataset.dismissible===\"false\"||K.current||(K.current=!0,F.current=e.relatedTarget)},onMouseEnter:()=>H(!0),onMouseMove:()=>H(!0),onMouseLeave:()=>{L||H(!1)},onDragEnd:()=>H(!1),onPointerDown:e=>{e.target instanceof HTMLElement&&e.target.dataset.dismissible===\"false\"||A(!0)},onPointerUp:()=>A(!1)},R.filter((e=>!e.position&&r===0||e.position===o)).map(((r,s)=>{var i,u;return e.createElement(ve,{key:r.id,icons:C,index:s,toast:r,defaultRichColors:v,duration:(i=N==null?void 0:N.duration)!=null?i:y,className:N==null?void 0:N.className,descriptionClassName:N==null?void 0:N.descriptionClassName,invert:n,visibleToasts:x,closeButton:(u=N==null?void 0:N.closeButton)!=null?u:c,interacting:L,position:o,style:N==null?void 0:N.style,unstyled:N==null?void 0:N.unstyled,classNames:N==null?void 0:N.classNames,cancelButtonStyle:N==null?void 0:N.cancelButtonStyle,actionButtonStyle:N==null?void 0:N.actionButtonStyle,removeToast:_,toasts:R.filter((e=>e.position==r.position)),heights:$.filter((e=>e.position==r.position)),setHeights:P,expandByDefault:l,gap:S,loadingIcon:B,expanded:D,pauseWhenPageIsHidden:I,swipeDirections:a.swipeDirections})}))):null})))}));export{S as Toaster,v as toast,Oe as useSonner};\n//# sourceMappingURL=index.mjs.map\n","/**\n * --------------------------------------------------------------------\n * Sonner\n * --------------------------------------------------------------------\n * Distributed under the VIAL License:\n * https://www.abruptive.com/policies/vial\n *\n * Unauthorized access or use of this code will result in prosecution\n * according to the furthest extent of the law.\n *\n * © Abruptive LLC · All Rights Reserved\n * --------------------------------------------------------------------\n */import{jsx as _jsx}from\"react/jsx-runtime\";import{useTheme}from\"next-themes\";import{toast,Toaster as ToasterComponent}from\"https://ga.jspm.io/npm:sonner@1.7.4/dist/index.mjs\";/**\n * --------------------------------------------------------------------\n * Components\n * --------------------------------------------------------------------\n */export const Toaster=({...props})=>{const{theme=\"system\"}=useTheme();return /*#__PURE__*/_jsx(ToasterComponent,{theme:theme,className:\"toaster group\",toastOptions:{classNames:{toast:\"group toast group-[.toaster]:bg-background group-[.toaster]:text-foreground group-[.toaster]:border-border group-[.toaster]:shadow-lg\",description:\"group-[.toast]:text-muted-foreground\",actionButton:\"group-[.toast]:bg-primary group-[.toast]:text-primary-foreground\",cancelButton:\"group-[.toast]:bg-muted group-[.toast]:text-muted-foreground\"}},...props});};/**\n * --------------------------------------------------------------------\n * Functions\n * --------------------------------------------------------------------\n */export{toast};/**\n * --------------------------------------------------------------------\n * Root\n * --------------------------------------------------------------------\n * @framerDisableUnlink\n */export default function Sonner(Component){return({children,...props})=>{return /*#__PURE__*/_jsx(Component,{...props,children:children});};}\nexport const __FramerMetadata__ = {\"exports\":{\"Toaster\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"toast\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"Sonner\",\"slots\":[],\"annotations\":{\"framerDisableUnlink\":\"\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Sonner.map","/**\n * --------------------------------------------------------------------\n * Core: Capsule\n * --------------------------------------------------------------------\n * Distributed under the VIAL License:\n * https://www.abruptive.com/policies/vial\n *\n * Unauthorized access or use of this code will result in prosecution\n * according to the furthest extent of the law.\n *\n * © Abruptive LLC · All Rights Reserved\n * --------------------------------------------------------------------\n */import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useEffect}from\"react\";import{RenderTarget}from\"framer\";import{createStore}from\"https://framer.com/m/framer/store.js@^1.0.0\";import{Toaster}from\"https://framer.com/m/Sonner-2W7J.js\";/**\n * --------------------------------------------------------------------\n * Store\n * --------------------------------------------------------------------\n */// Create a global Framer store.\nexport const useGlobals=createStore({capsule:undefined,// Authentication\nuser:null,token:null,// State\nisLoading:true,isLoggedIn:false});/**\n * --------------------------------------------------------------------\n * Dependencies\n * --------------------------------------------------------------------\n *//**\n * Check if the current render target is a canvas.\n */export const isCanvas=RenderTarget.current()===RenderTarget.canvas;/**\n * Check if the current render target is in the canvas preview.\n */export const isCanvasPreview=typeof window!==\"undefined\"&&RenderTarget.current()===RenderTarget.preview&&window?.location?.host?.includes(\"framercanvas.com\");/**\n * Check if the current render target is in Framer.\n */export const isFramer=isCanvas||isCanvasPreview;/**\n * Helper to check if the current user is logged in.\n */export function isUserLoggedIn(user){if(user===null||user===undefined){return false;}return true;}/**\n * The authenticator wrapper used to load the current user & capsule.\n */function withAuthenticator(Component,capsule){if(isFramer){return props=>{const[_globals,setGlobals]=useGlobals();useEffect(()=>{setGlobals({isLoading:false});},[]);return /*#__PURE__*/_jsx(Component,{...props});};}return props=>{const[{isLoading},setGlobals]=useGlobals();/**\n         * Initialize the Clerk.js instance (via the JavaScript SDK).\n         */const initialize=async()=>{if(typeof window!==\"undefined\"){// @ts-ignore\nif(window.Clerk){const clerk=window.Clerk;const config=capsule?.apps?.clerk||{};// Load the Clerk instance.\nawait clerk.load(config);// Get the user data & session token.\nconst user=clerk.user;// Update the globals with the initial state\nsetGlobals({capsule,user,token:await clerk.session?.getToken({template:\"Hasura\"}),isLoading:false,isLoggedIn:isUserLoggedIn(user)});// Set up an event listener to update user and token on changes\nconst handleClerkUpdate=async resources=>{if(resources.user&&resources.session){const token=await clerk.session.getToken({template:\"Hasura\"});setGlobals(prev=>({...prev,user:resources.user,token,isLoggedIn:true}));}else{setGlobals(prev=>({...prev,user:null,token:null,isLoggedIn:false}));}};// Assuming Clerk exposes addListener and optionally removeListener/off:\nconst unsubscribe=clerk.addListener(handleClerkUpdate);// Optionally, return a cleanup function if Clerk supports removal:\nreturn()=>{unsubscribe();};}else{setTimeout(initialize,100);}}else{setGlobals({isLoading:false});}};/**\n         * If not initialized, run it.\n         */useEffect(()=>{if(isLoading){initialize();}},[isLoading]);/**\n         * Return the component.\n         */return /*#__PURE__*/_jsx(Component,{...props});};}/**\n * --------------------------------------------------------------------\n * Overrides\n * --------------------------------------------------------------------\n *//**\n * An override to wrap the whole layout in.\n */export function App(Component,capsule){return withAuthenticator(({children,...props})=>{const[globals,setGlobals]=useGlobals();/**\n         * Render the component.\n         */return /*#__PURE__*/_jsxs(Component,{...props,globals:globals,children:[/*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:`\n\t\t\t\t\t\t\tdiv[class*=\"-container\"]:empty { \n\t\t\t\t\t\t\t\tdisplay: none;\n\t\t\t\t\t\t\t\tvisibility: hidden;\n\t\t\t\t\t\t\t}`}}),children,/*#__PURE__*/_jsx(Toaster,{})]});},capsule);}/**\n * An override to pass in the capsule to the component.\n */export function Globals(Component){return props=>{const[globals]=useGlobals();return /*#__PURE__*/_jsx(Component,{...props,globals:globals});};}/**\n * An override used to pass the token and user to\n */export function Fetch(Component){if(isFramer)return props=>/*#__PURE__*/_jsx(Component,{...props});return props=>{const[{user,token,isLoading}]=useGlobals();if(isLoading){return null;}return /*#__PURE__*/_jsx(Component,{...props,token:token,user:user?.id});};}/**\n * An override used to pass common URL parameters (including UTM params)\n * to a component while preserving default prop values if no URL parameter is provided.\n */export function Parameters(Component){if(isFramer)return props=>/*#__PURE__*/_jsx(Component,{...props});return props=>{let queryParams={};// Ensure we are in a browser environment before accessing window.\nif(typeof window!==\"undefined\"){const searchParams=new URLSearchParams(window.location.search);queryParams=Object.fromEntries(searchParams.entries());// Remove the query parameters from the URL once they've been processed.\n// This preserves the pathname and any hash but omits the query string.\nconst newUrl=window.location.pathname+window.location.hash;window.history.replaceState(null,\"\",newUrl);}// Merge props and queryParams.\n// For each key, if the URL parameter exists it will override the prop.\nconst mergedProps={...props,...queryParams,email:queryParams.email??props.email,first_name:queryParams.first_name??props.first_name,last_name:queryParams.last_name??props.last_name,utm_source:queryParams.utm_source??props.utm_source,utm_medium:queryParams.utm_medium??props.utm_medium,utm_campaign:queryParams.utm_campaign??props.utm_campaign,utm_term:queryParams.utm_term??props.utm_term,utm_content:queryParams.utm_content??props.utm_content};return /*#__PURE__*/_jsx(Component,{...mergedProps});};}/**\n * An override used to set components in a loading state while waiting for Destacked.\n */export const Suspense=Component=>{return({variant,...props})=>{const[{isLoading}]=useGlobals();return /*#__PURE__*/_jsx(Component,{...props,variant:isLoading?\"Loading\":variant});};};/**\n * An override used to set components in a loading state with support for multiple loading variants.\n */export const SuspenseExtended=Component=>{return({variant,...props})=>{const[{isLoading}]=useGlobals();return /*#__PURE__*/_jsx(Component,{...props,variant:isLoading?variant+\" - Loading\":variant});};};/**\n * An override that combines suspense with fetch for non-native fetches.\n */export function SuspenseFetch(Component){if(isFramer)return props=>/*#__PURE__*/_jsx(Component,{...props});return({variant,...props})=>{const[{user,token,isLoading}]=useGlobals();return /*#__PURE__*/_jsx(Component,{...props,token:token||null,user:user?.id||null,variant:isLoading?\"Loading\":variant});};}/**\n * An override that combines suspense with fetch for non-native fetches with support for multiple loading variants.\n */export function SuspenseFetchExtended(Component){if(isFramer)return props=>/*#__PURE__*/_jsx(Component,{...props});return({variant,...props})=>{const[{user,token,isLoading}]=useGlobals();return /*#__PURE__*/_jsx(Component,{...props,token:token||null,user:user?.id||null,variant:isLoading?variant+\" - Loading\":variant});};}/**\n * --------------------------------------------------------------------\n * Root\n * --------------------------------------------------------------------\n * @framerDisableUnlink\n */export default function Capsule(Component){return({children,...props})=>{return /*#__PURE__*/_jsx(Component,{...props,children:children});};}\nexport const __FramerMetadata__ = {\"exports\":{\"isUserLoggedIn\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SuspenseFetch\":{\"type\":\"reactHoc\",\"name\":\"SuspenseFetch\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"isFramer\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"Capsule\",\"slots\":[],\"annotations\":{\"framerDisableUnlink\":\"\",\"framerContractVersion\":\"1\"}},\"Parameters\":{\"type\":\"reactHoc\",\"name\":\"Parameters\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"isCanvasPreview\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SuspenseFetchExtended\":{\"type\":\"reactHoc\",\"name\":\"SuspenseFetchExtended\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useGlobals\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"App\":{\"type\":\"reactHoc\",\"name\":\"App\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"isCanvas\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Fetch\":{\"type\":\"reactHoc\",\"name\":\"Fetch\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Globals\":{\"type\":\"reactHoc\",\"name\":\"Globals\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SuspenseExtended\":{\"type\":\"reactHoc\",\"name\":\"SuspenseExtended\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Suspense\":{\"type\":\"reactHoc\",\"name\":\"Suspense\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Capsule.map","/**\n * --------------------------------------------------------------------\n * Apps: Clerk\n * --------------------------------------------------------------------\n * Distributed under the VIAL License:\n * https://www.abruptive.com/policies/vial\n *\n * Unauthorized access or use of this code will result in prosecution\n * according to the furthest extent of the law.\n *\n * © Abruptive LLC · All Rights Reserved\n * --------------------------------------------------------------------\n *//**\n * --------------------------------------------------------------------\n * Functions\n * --------------------------------------------------------------------\n *//**\n * Get the authenticated user.\n */import{jsx as _jsx}from\"react/jsx-runtime\";export function getUser(){return window.Clerk.user;}/**\n * Get the auth token for the current user.\n */export async function getToken(){return await window.Clerk.session?.getToken({template:\"Hasura\"});}/**\n * Get the auth session.\n */export async function getSession(){const token=await getToken();const user=getUser();if(!token||!user){return{token:null,user:null};}return{token,user};}/**\n * --------------------------------------------------------------------\n * Root\n * --------------------------------------------------------------------\n * @framerDisableUnlink\n */export default function Clerk(Component){return({children,...props})=>{return /*#__PURE__*/_jsx(Component,{...props,children:children});};}\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Clerk\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"\"}},\"getSession\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getToken\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getUser\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Clerk.map","/**\n * --------------------------------------------------------------------\n * Helpers: Development\n * --------------------------------------------------------------------\n * Distributed under the VIAL License:\n * https://www.abruptive.com/policies/vial\n *\n * Unauthorized access or use of this code will result in prosecution\n * according to the furthest extent of the law.\n *\n * © Abruptive LLC · All Rights Reserved\n * --------------------------------------------------------------------\n */import{jsx as _jsx}from\"react/jsx-runtime\";import{// @ts-expect-error\ngetPropertyControls}from\"framer\";/**\n * --------------------------------------------------------------------\n * Functions\n * --------------------------------------------------------------------\n *//**\n * Turn an object into a variant-friendly version for Framer components.\n */export function propify(obj){if(obj===null||obj===undefined){return obj// Return the value if it's null or undefined\n;}if(Array.isArray(obj)){return obj.map(propify)// Recursively apply to array elements\n;}if(typeof obj===\"object\"){const result={};for(let key in obj){if(obj.hasOwnProperty(key)){const camelCaseKey=key.replace(/_([a-z])/g,(match,letter)=>letter.toUpperCase());result[camelCaseKey]=propify(obj[key])// Recursively apply to nested objects\n;}}return result;}return obj// Return the value if it's neither an array nor an object\n;}/**\n * Compose multiple functions around a wrapped callback.\n */export function compose(...funcs){if(funcs.length===0){return arg=>arg;}if(funcs.length===1){return funcs[0];}return funcs.reduce((a,b)=>(...args)=>a(b(...args)));}/**\n * Get the error message\n *\n * @link https://codex.destacked.com/modules/destacked-helpers/functions/geterror\n *\n * @param {object} err\n * @returns {string}\n */export function getError(err){const defaultError=\"An unexpected error occurred. Refresh and try again.\";if(!err){return defaultError;}// Handle direct string errors.\nif(typeof err===\"string\"){return err;}// Handle errors with multiple messages.\nif(err.errors){return err.errors[0].longMessage||\"\";}// Handle regular errors.\nif(err?.message){return err?.message;}// Handle specific status codes\nswitch(err?.status){case 429:return\"You have made too many requests. Please try again later.\";case 400:return\"Bad Request. Please check your input.\";case 404:return\"Resource not found. Please check the URL.\";case 500:return\"Internal server error. Please try again later.\";default:return defaultError;}}/**\n * Validate conditions in a given object.\n */export function validateConditions(data,conditions){if(!conditions||conditions.length===0)return true;for(const condition of conditions){const{field,operator,value}=condition;if(!(field in data)){return false;}let conditionMet=false;switch(operator){case\"==\":conditionMet=data[field]==value;break;case\"!=\":conditionMet=data[field]!=value;break;case\">\":conditionMet=data[field]>value;break;case\"<\":conditionMet=data[field]<value;break;case\">=\":conditionMet=data[field]>=value;break;case\"<=\":conditionMet=data[field]<=value;break;case\"is set\":conditionMet=data[field]!==undefined&&data[field]!==null&&data[field]!==\"\";break;default:conditionMet=false;}if(!conditionMet)return false;}return true;}/**\n * Utility function to get the variant for a component.\n *\n * @param {Object} params - Parameters for the function.\n * @param {ComponentType} params.Component - The Framer component.\n * @param {string} params.variant - The current variant identifier.\n *\n * @returns {string} The loading variant value.\n */export function getVariant({Component,variant:currentVariant,suffix}){try{const baseControls=getPropertyControls(Component);const variantControl=baseControls?.variant;// Get the control group for the variant.\nif(variantControl?.title===\"Variant\"){const{options=[],optionTitles=[]}=variantControl;const currentIndex=options.indexOf(currentVariant);if(currentIndex!==-1){const currentTitle=optionTitles[currentIndex]// \"Desktop\"\n;const baseTitle=currentTitle.replace(/\\s*\\(Loading\\)$/,\"\").trim();// Find the loading title\nconst newTitle=`${baseTitle}${suffix}`;const newIndex=optionTitles.indexOf(newTitle);// If the new index exists, return the title.\nif(newIndex!==-1){return newTitle;}// Otherwise, return the current variant.\nreturn currentTitle;}}return currentVariant;}catch(error){console.error(\"Error getting the loading variant for: \",Component,\" with current variant: \",currentVariant);return currentVariant;}}/**\n * Utility function to get the loading variant based on the current variant.\n *\n * @param {Object} params - Parameters for the function.\n * @param {ComponentType} params.Component - The Framer component.\n * @param {string} params.variant - The current variant identifier.\n *\n * @returns {string} The loading variant value.\n */export function getLoadingVariant({Component,variant:currentVariant}){let loadingVariantValue=\"Loading\"// Fallback\n;// If no current variant, return the fallback.\nif(!currentVariant){return loadingVariantValue;}try{// Get the base variant control.\nconst baseControls=getPropertyControls(Component);const variantControl=baseControls?.variant;// Get the control group for the variant.\nif(variantControl?.title===\"Variant\"){const{options=[],optionTitles=[]}=variantControl;const currentIndex=options.indexOf(currentVariant);if(currentIndex!==-1){const currentTitle=optionTitles[currentIndex]// \"Desktop\"\n;// Remove any existing \"(Loading)\" to get the base title\nconst baseTitle=currentTitle.replace(/\\s*\\(Loading\\)$/,\"\").trim();// Find the loading title\nconst loadingTitle=`${baseTitle} (Loading)`;const loadingIndex=optionTitles.indexOf(loadingTitle);if(loadingIndex!==-1){loadingVariantValue=loadingTitle;}}}return loadingVariantValue;}catch(error){console.error(\"Error getting the loading variant for: \",Component,\" with current variant: \",currentVariant);return loadingVariantValue;}}/**\n * Utility function to create a loading variant-wrapped component.\n *\n * @experimental Doesn't work as expected yet.\n */export function createLoadingVariant(Component,props){return()=>/*#__PURE__*/_jsx(Component,{// @ts-expect-error\n    style:{...props?.style||{},width:\"100%\",height:\"100%\"},variant:getLoadingVariant({Component,variant:props.variant})});}/**\n * --------------------------------------------------------------------\n * Root\n * --------------------------------------------------------------------\n * @framerDisableUnlink\n */export default function Development(Component){return({children,...props})=>{return /*#__PURE__*/_jsx(Component,{...props,children:children});};}\nexport const __FramerMetadata__ = {\"exports\":{\"compose\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"createLoadingVariant\":{\"type\":\"reactHoc\",\"name\":\"createLoadingVariant\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"validateConditions\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getError\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getVariant\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"Development\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"\"}},\"getLoadingVariant\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"propify\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Development.map","/**\n * --------------------------------------------------------------------\n * Helpers: Window\n * --------------------------------------------------------------------\n * Distributed under the VIAL License:\n * https://www.abruptive.com/policies/vial\n *\n * Unauthorized access or use of this code will result in prosecution\n * according to the furthest extent of the law.\n *\n * © Abruptive LLC · All Rights Reserved\n * --------------------------------------------------------------------\n *//**\n * --------------------------------------------------------------------\n * Functions\n * --------------------------------------------------------------------\n *//**\n * Remove parameters from the window URL.\n *\n * @link https://codex.destacked.com/modules/destacked-helpers/functions/geterror\n */import{jsx as _jsx}from\"react/jsx-runtime\";export function removeParams(params){if(typeof window!==\"undefined\"){const url=new URL(window.location);if(params===\"*\"){// Remove all query parameters\nurl.searchParams.forEach((_,key)=>{url.searchParams.delete(key);});}else{// If a string or an array of strings is provided, remove those specific parameters\nconst paramsToRemove=Array.isArray(params)?params:[params];paramsToRemove.forEach(param=>{url.searchParams.delete(param);});}// Update the URL without the removed parameters\nwindow.history.replaceState(null,\"\",url.toString());}}/**\n * Remove parameters from a custom URL.\n */export function removeParamsFromURL(urlString){const url=new URL(urlString);url.search=\"\";return url.toString();}/**\n * Open a new window (i.e. when sharing to social media).\n */export function openWindow({url,title=\"Share\",width=600,height=600}){const left=window.screenX+(window.outerWidth-width)/2;const top=window.screenY+(window.outerHeight-height)/2;window.open(url,title,`width=${width},height=${height},top=${top},left=${left}`);}/**\n * --------------------------------------------------------------------\n * Root\n * --------------------------------------------------------------------\n * @framerDisableUnlink\n */export default function Window(Component){return({children,...props})=>{return /*#__PURE__*/_jsx(Component,{...props,children:children});};}\nexport const __FramerMetadata__ = {\"exports\":{\"removeParamsFromURL\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"openWindow\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"Window\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"\"}},\"removeParams\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Window.map","/**\n * --------------------------------------------------------------------\n * Affiliates: Referrer\n * --------------------------------------------------------------------\n * Distributed under the VIAL License:\n * https://www.abruptive.com/policies/vial\n *\n * Unauthorized access or use of this code will result in prosecution\n * according to the furthest extent of the law.\n *\n * © Abruptive LLC · All Rights Reserved\n * --------------------------------------------------------------------\n */import{jsx as _jsx}from\"react/jsx-runtime\";import{useEffect}from\"react\";import{createStore}from\"https://framer.com/m/framer/store.js@^1.0.0\";import{getSession}from\"https://framer.com/m/Clerk-47om.js\";import{getError,propify}from\"https://framer.com/m/Development-7oqH.js\";import{removeParams}from\"https://framer.com/m/Window-ULev.js\";/**\n * --------------------------------------------------------------------\n * Constants\n * --------------------------------------------------------------------\n */const key=\"affiliates:referrer\";const param=\"id\";/**\n * --------------------------------------------------------------------\n * Store\n * --------------------------------------------------------------------\n */const defaultValues={affiliateUuid:null,firstName:null,lastName:null,username:null,avatar:null};export const useReferrer=createStore({isLoadingReferrer:true,...defaultValues});/**\n * --------------------------------------------------------------------\n * Functions\n * --------------------------------------------------------------------\n */async function getReferrer(query,{username}){try{const{data,error}=await query({gql:`\n                query GetAffiliateReferrer($member_id: bigint = 0, $username: String = \"\") {\n                    affiliates_profiles(\n                        where: {\n                            _and: [\n                                { status: { _eq: \"active\" } }\n                                { _or: [{ member_id: { _eq: $member_id } }, { member: { username: { _eq: $username } } }] }\n                            ]\n                        }\n                    ) {\n                        uuid\n                        member {\n                            first_name\n                            last_name\n                            username\n                            avatar\n                        }\n                    }\n                }\n            `,variables:{username}});// Return empty if an error occurs.\nif(error){throw error;}// Get the referrer data from the query.\nconst[affiliate]=data.affiliates_profiles||[];// If no affiliate found, return empty.\nif(!affiliate){return null;}// Get the uuid and member from the affiliate.\nconst{uuid,member}=affiliate;// Return the affiliate referrer.\nreturn propify({affiliate:{uuid},member});}catch(e){console.error(getError(e));return null;}}/**\n * --------------------------------------------------------------------\n * Overrides\n * --------------------------------------------------------------------\n *//**\n * Override that tracks the referrer for the current app.\n */export const withAffiliateReferrerTracker=(Component,config)=>{return props=>{const{graph}=props;const[{isLoadingMember:isLoading,isLoggedIn}]=config.useMember();const[referrer,setReferrer]=useReferrer();/**\n         * Set the referrer to the one found.\n         */const setReferrerFound=({member,affiliate})=>{const{uuid:affiliateUuid}=affiliate;const{firstName,lastName,username,avatar}=member;// Extract the data from objects.\nconst payload={affiliateUuid,firstName,lastName,username,avatar};// Update the store.\nsetReferrer({...referrer,isLoadingReferrer:false,...payload});// Update the cache.\nlocalStorage.setItem(key,JSON.stringify(payload));};/**\n         * Set the referrer to empty.\n         */const setReferrerEmpty=()=>{// Update the store.\nsetReferrer({...referrer,isLoadingReferrer:false,...defaultValues});// Update the cache.\nlocalStorage.removeItem(key);};/**\n         * Initialize the affiliate referrer when landing on the page.\n         */useEffect(()=>{async function initialize(){if(typeof window!==\"undefined\"&&!isLoading){if(isLoggedIn){const{user}=await getSession();/**\n                         * Check if the user has a referrer bound.\n                         */const profile=user.referrer;if(profile){const{affiliate:{member,...affiliate}}=profile;setReferrerFound({affiliate,member});}else{setReferrerEmpty();}}else{// Get the search params from the URL.\nconst searchParams=new URLSearchParams(window.location.search);// Get the affiliate referrer.\nif(param&&searchParams.get(param)){const{query}=graph;/**\n                             * Attempt finding the referrer from the URL string.\n                             */const payload=await getReferrer(query,{username:searchParams.get(param)});// If the referrer exists, set it.\nif(payload){removeParams(param);const{member,affiliate}=payload;setReferrerFound({affiliate,member});}else{setReferrerEmpty();}}else if(localStorage.getItem(key)){/**\n                             * Attempt finding the referrer from localStorage.\n                             */const cache=localStorage.getItem(key);// If the referrer exists, set it.\nif(cache){setReferrer({...referrer,isLoadingReferrer:false,...JSON.parse(cache)});}else{setReferrerEmpty();}}else{/**\n                             * No affiliate referrer found.\n                             */setReferrerEmpty();}}}}initialize();},[isLoading,isLoggedIn]);/**\n         * Render the component.\n         */return /*#__PURE__*/_jsx(Component,{...props});};};/**\n * Wrapper that provides the affiliate referrer to a component.\n *\n * @todo Could use dynamic loader variant\n */export const withAffiliateReferrerProps=Component=>{return props=>{const[{isLoadingReferrer,...referrer}]=useReferrer();const variant=isLoadingReferrer?\"Loading\":props.variant;/**\n         * If no referrer is found, hide the component.\n         */if(isLoadingReferrer||!(isLoadingReferrer||referrer.affiliateUuid)){return null;}/**\n         * Render the component.\n         */return /*#__PURE__*/_jsx(Component,{...props,...referrer,variant:variant});};};/**\n * --------------------------------------------------------------------\n * Root\n * --------------------------------------------------------------------\n * @framerDisableUnlink\n */export default function Referrer(Component){return props=>{const[referrer]=useReferrer();return /*#__PURE__*/_jsx(Component,{...props,referrer:referrer});};}\nexport const __FramerMetadata__ = {\"exports\":{\"withAffiliateReferrerTracker\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withAffiliateReferrerProps\":{\"type\":\"reactHoc\",\"name\":\"withAffiliateReferrerProps\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useReferrer\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"Referrer\",\"slots\":[],\"annotations\":{\"framerDisableUnlink\":\"\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Referrer.map","/**\n * --------------------------------------------------------------------\n * Core\n * --------------------------------------------------------------------\n * Distributed under the VIAL License:\n * https://www.abruptive.com/policies/vial\n *\n * Unauthorized access or use of this code will result in prosecution\n * according to the furthest extent of the law.\n *\n * © Abruptive LLC · All Rights Reserved\n * --------------------------------------------------------------------\n */import*as DSCoreCapsule from\"https://framer.com/m/Capsule-oSSG.js\";import*as DSAffiliatesReferrer from\"https://framer.com/m/Referrer-aaHb.js\";/**\n * --------------------------------------------------------------------\n * Overrides\n * --------------------------------------------------------------------\n */export const Globals=Component=>DSCoreCapsule.Globals(Component);export const Fetch=Component=>DSCoreCapsule.Fetch(Component);export const Parameters=Component=>DSCoreCapsule.Parameters(Component);export const Suspense=Component=>DSCoreCapsule.Suspense(Component);export const SuspenseExtended=Component=>DSCoreCapsule.SuspenseExtended(Component);export const SuspenseFetch=Component=>DSCoreCapsule.SuspenseFetch(Component);export const SuspenseFetchExtended=Component=>DSCoreCapsule.SuspenseFetchExtended(Component);/**\n * --------------------------------------------------------------------\n * Shared\n * --------------------------------------------------------------------\n */export const withAffiliateReferrer=Component=>DSAffiliatesReferrer.default(Component);\nexport const __FramerMetadata__ = {\"exports\":{\"SuspenseFetch\":{\"type\":\"reactHoc\",\"name\":\"SuspenseFetch\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Suspense\":{\"type\":\"reactHoc\",\"name\":\"Suspense\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Fetch\":{\"type\":\"reactHoc\",\"name\":\"Fetch\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Parameters\":{\"type\":\"reactHoc\",\"name\":\"Parameters\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Globals\":{\"type\":\"reactHoc\",\"name\":\"Globals\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SuspenseExtended\":{\"type\":\"reactHoc\",\"name\":\"SuspenseExtended\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withAffiliateReferrer\":{\"type\":\"reactHoc\",\"name\":\"withAffiliateReferrer\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SuspenseFetchExtended\":{\"type\":\"reactHoc\",\"name\":\"SuspenseFetchExtended\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./core.map","import e from\"react\";var isCheckBoxInput=e=>\"checkbox\"===e.type;var isDateObject=e=>e instanceof Date;var isNullOrUndefined=e=>null==e;const isObjectType=e=>\"object\"===typeof e;var isObject=e=>!isNullOrUndefined(e)&&!Array.isArray(e)&&isObjectType(e)&&!isDateObject(e);var getEventValue=e=>isObject(e)&&e.target?isCheckBoxInput(e.target)?e.target.checked:e.target.value:e;var getNodeParentName=e=>e.substring(0,e.search(/\\.\\d+(\\.|$)/))||e;var isNameInFieldArray=(e,t)=>e.has(getNodeParentName(t));var compact=e=>Array.isArray(e)?e.filter(Boolean):[];var isUndefined=e=>void 0===e;var get=(e,t,r)=>{if(!t||!isObject(e))return r;const s=compact(t.split(/[,[\\].]+?/)).reduce(((e,t)=>isNullOrUndefined(e)?e:e[t]),e);return isUndefined(s)||s===e?isUndefined(e[t])?r:e[t]:s};const t={BLUR:\"blur\",FOCUS_OUT:\"focusout\",CHANGE:\"change\"};const r={onBlur:\"onBlur\",onChange:\"onChange\",onSubmit:\"onSubmit\",onTouched:\"onTouched\",all:\"all\"};const s={max:\"max\",min:\"min\",maxLength:\"maxLength\",minLength:\"minLength\",pattern:\"pattern\",required:\"required\",validate:\"validate\"};const a=e.createContext(null);\n/**\n * This custom hook allows you to access the form context. useFormContext is intended to be used in deeply nested structures, where it would become inconvenient to pass the context as a prop. To be used with {@link FormProvider}.\n *\n * @remarks\n * [API](https://react-hook-form.com/api/useformcontext) • [Demo](https://codesandbox.io/s/react-hook-form-v7-form-context-ytudi)\n *\n * @returns return all useForm methods\n *\n * @example\n * ```tsx\n * function App() {\n *   const methods = useForm();\n *   const onSubmit = data => console.log(data);\n *\n *   return (\n *     <FormProvider {...methods} >\n *       <form onSubmit={methods.handleSubmit(onSubmit)}>\n *         <NestedInput />\n *         <input type=\"submit\" />\n *       </form>\n *     </FormProvider>\n *   );\n * }\n *\n *  function NestedInput() {\n *   const { register } = useFormContext(); // retrieve all hook methods\n *   return <input {...register(\"test\")} />;\n * }\n * ```\n */const useFormContext=()=>e.useContext(a)\n/**\n * A provider component that propagates the `useForm` methods to all children components via [React Context](https://reactjs.org/docs/context.html) API. To be used with {@link useFormContext}.\n *\n * @remarks\n * [API](https://react-hook-form.com/api/useformcontext) • [Demo](https://codesandbox.io/s/react-hook-form-v7-form-context-ytudi)\n *\n * @param props - all useFrom methods\n *\n * @example\n * ```tsx\n * function App() {\n *   const methods = useForm();\n *   const onSubmit = data => console.log(data);\n *\n *   return (\n *     <FormProvider {...methods} >\n *       <form onSubmit={methods.handleSubmit(onSubmit)}>\n *         <NestedInput />\n *         <input type=\"submit\" />\n *       </form>\n *     </FormProvider>\n *   );\n * }\n *\n *  function NestedInput() {\n *   const { register } = useFormContext(); // retrieve all hook methods\n *   return <input {...register(\"test\")} />;\n * }\n * ```\n */;const FormProvider=t=>{const{children:r,...s}=t;return e.createElement(a.Provider,{value:s},r)};var getProxyFormState=(e,t,s,a=true)=>{const n={defaultValues:t._defaultValues};for(const o in e)Object.defineProperty(n,o,{get:()=>{const n=o;t._proxyFormState[n]!==r.all&&(t._proxyFormState[n]=!a||r.all);s&&(s[n]=true);return e[n]}});return n};var isEmptyObject=e=>isObject(e)&&!Object.keys(e).length;var shouldRenderFormState=(e,t,s)=>{const{name:a,...n}=e;return isEmptyObject(n)||Object.keys(n).length>=Object.keys(t).length||Object.keys(n).find((e=>t[e]===(!s||r.all)))};var convertToArrayPayload=e=>Array.isArray(e)?e:[e];var shouldSubscribeByName=(e,t,r)=>r&&t?e===t:!e||!t||e===t||convertToArrayPayload(e).some((e=>e&&(e.startsWith(t)||t.startsWith(e))));function useSubscribe(t){const r=e.useRef(t);r.current=t;e.useEffect((()=>{const e=!t.disabled&&r.current.subject.subscribe({next:r.current.callback});return()=>{e&&e.unsubscribe()}}),[t.disabled])}\n/**\n * This custom hook allows you to subscribe to each form state, and isolate the re-render at the custom hook level. It has its scope in terms of form state subscription, so it would not affect other useFormState and useForm. Using this hook can reduce the re-render impact on large and complex form application.\n *\n * @remarks\n * [API](https://react-hook-form.com/api/useformstate) • [Demo](https://codesandbox.io/s/useformstate-75xly)\n *\n * @param props - include options on specify fields to subscribe. {@link UseFormStateReturn}\n *\n * @example\n * ```tsx\n * function App() {\n *   const { register, handleSubmit, control } = useForm({\n *     defaultValues: {\n *     firstName: \"firstName\"\n *   }});\n *   const { dirtyFields } = useFormState({\n *     control\n *   });\n *   const onSubmit = (data) => console.log(data);\n *\n *   return (\n *     <form onSubmit={handleSubmit(onSubmit)}>\n *       <input {...register(\"firstName\")} placeholder=\"First Name\" />\n *       {dirtyFields.firstName && <p>Field is dirty.</p>}\n *       <input type=\"submit\" />\n *     </form>\n *   );\n * }\n * ```\n */function useFormState(t){const r=useFormContext();const{control:s=r.control,disabled:a,name:n,exact:o}=t||{};const[i,l]=e.useState(s._formState);const u=e.useRef(true);const c=e.useRef({isDirty:false,dirtyFields:false,touchedFields:false,isValidating:false,isValid:false,errors:false});const f=e.useRef(n);f.current=n;useSubscribe({disabled:a,callback:e.useCallback((e=>u.current&&shouldSubscribeByName(f.current,e.name,o)&&shouldRenderFormState(e,c.current)&&l({...s._formState,...e})),[s,o]),subject:s._subjects.state});e.useEffect((()=>{u.current=true;const e=s._proxyFormState.isDirty&&s._getDirty();e!==s._formState.isDirty&&s._subjects.state.next({isDirty:e});s._updateValid();return()=>{u.current=false}}),[s]);return getProxyFormState(i,s,c.current,false)}var isString=e=>\"string\"===typeof e;var generateWatchOutput=(e,t,r,s)=>{if(isString(e)){s&&t.watch.add(e);return get(r,e)}if(Array.isArray(e))return e.map((e=>(s&&t.watch.add(e),get(r,e))));t.watchAll=!!s;return r};var isPlainObject=e=>{const t=e.constructor&&e.constructor.prototype;return isObject(t)&&t.hasOwnProperty(\"isPrototypeOf\")};var n=\"undefined\"!==typeof window&&\"undefined\"!==typeof window.HTMLElement&&\"undefined\"!==typeof document;function cloneObject(e){let t;const r=Array.isArray(e);if(e instanceof Date)t=new Date(e);else if(e instanceof Set)t=new Set(e);else{if(n&&(e instanceof Blob||e instanceof FileList)||!r&&!isObject(e))return e;t=r?[]:{};if(Array.isArray(e)||isPlainObject(e))for(const r in e)t[r]=cloneObject(e[r]);else t=e}return t}function useWatch(t){const r=useFormContext();const{control:s=r.control,name:a,defaultValue:n,disabled:o,exact:i}=t||{};const l=e.useRef(a);l.current=a;useSubscribe({disabled:o,subject:s._subjects.watch,callback:e=>{if(shouldSubscribeByName(l.current,e.name,i)){const t=generateWatchOutput(l.current,s._names,e.values||s._formValues);c(isUndefined(t)?n:cloneObject(t))}}});const[u,c]=e.useState(isUndefined(n)?s._getWatch(a):n);e.useEffect((()=>s._removeUnmounted()));return u}\n/**\n * Custom hook to work with controlled component, this function provide you with both form and field level state. Re-render is isolated at the hook level.\n *\n * @remarks\n * [API](https://react-hook-form.com/api/usecontroller) • [Demo](https://codesandbox.io/s/usecontroller-0o8px)\n *\n * @param props - the path name to the form field value, and validation rules.\n *\n * @returns field properties, field and form state. {@link UseControllerReturn}\n *\n * @example\n * ```tsx\n * function Input(props) {\n *   const { field, fieldState, formState } = useController(props);\n *   return (\n *     <div>\n *       <input {...field} placeholder={props.name} />\n *       <p>{fieldState.isTouched && \"Touched\"}</p>\n *       <p>{formState.isSubmitted ? \"submitted\" : \"\"}</p>\n *     </div>\n *   );\n * }\n * ```\n */function useController(r){const s=useFormContext();const{name:a,control:n=s.control,shouldUnregister:o}=r;const i=isNameInFieldArray(n._names.array,a);const l=useWatch({control:n,name:a,defaultValue:get(n._formValues,a,get(n._defaultValues,a,r.defaultValue)),exact:true});const u=useFormState({control:n,name:a});const c=e.useRef(n.register(a,{...r.rules,value:l}));e.useEffect((()=>{const updateMounted=(e,t)=>{const r=get(n._fields,e);r&&(r._f.mount=t)};updateMounted(a,true);return()=>{const e=n._options.shouldUnregister||o;(i?e&&!n._stateFlags.action:e)?n.unregister(a):updateMounted(a,false)}}),[a,n,i,o]);return{field:{name:a,value:l,onChange:e.useCallback((e=>c.current.onChange({target:{value:getEventValue(e),name:a},type:t.CHANGE})),[a]),onBlur:e.useCallback((()=>c.current.onBlur({target:{value:get(n._formValues,a),name:a},type:t.BLUR})),[a,n]),ref:e=>{const t=get(n._fields,a);t&&e&&(t._f.ref={focus:()=>e.focus(),select:()=>e.select(),setCustomValidity:t=>e.setCustomValidity(t),reportValidity:()=>e.reportValidity()})}},formState:u,fieldState:Object.defineProperties({},{invalid:{enumerable:true,get:()=>!!get(u.errors,a)},isDirty:{enumerable:true,get:()=>!!get(u.dirtyFields,a)},isTouched:{enumerable:true,get:()=>!!get(u.touchedFields,a)},error:{enumerable:true,get:()=>get(u.errors,a)}})}}\n/**\n * Component based on `useController` hook to work with controlled component.\n *\n * @remarks\n * [API](https://react-hook-form.com/api/usecontroller/controller) • [Demo](https://codesandbox.io/s/react-hook-form-v6-controller-ts-jwyzw) • [Video](https://www.youtube.com/watch?v=N2UNk_UCVyA)\n *\n * @param props - the path name to the form field value, and validation rules.\n *\n * @returns provide field handler functions, field and form state.\n *\n * @example\n * ```tsx\n * function App() {\n *   const { control } = useForm<FormValues>({\n *     defaultValues: {\n *       test: \"\"\n *     }\n *   });\n *\n *   return (\n *     <form>\n *       <Controller\n *         control={control}\n *         name=\"test\"\n *         render={({ field: { onChange, onBlur, value, ref }, formState, fieldState }) => (\n *           <>\n *             <input\n *               onChange={onChange} // send value to hook form\n *               onBlur={onBlur} // notify when input is touched\n *               value={value} // return updated value\n *               ref={ref} // set ref for focus management\n *             />\n *             <p>{formState.isSubmitted ? \"submitted\" : \"\"}</p>\n *             <p>{fieldState.isTouched ? \"touched\" : \"\"}</p>\n *           </>\n *         )}\n *       />\n *     </form>\n *   );\n * }\n * ```\n */const Controller=e=>e.render(useController(e));var appendErrors=(e,t,r,s,a)=>t?{...r[e],types:{...r[e]&&r[e].types?r[e].types:{},[s]:a||true}}:{};var isKey=e=>/^\\w*$/.test(e);var stringToPath=e=>compact(e.replace(/[\"|']|\\]/g,\"\").split(/\\.|\\[/));function set(e,t,r){let s=-1;const a=isKey(t)?[t]:stringToPath(t);const n=a.length;const o=n-1;while(++s<n){const t=a[s];let n=r;if(s!==o){const r=e[t];n=isObject(r)||Array.isArray(r)?r:isNaN(+a[s+1])?{}:[]}e[t]=n;e=e[t]}return e}const focusFieldBy=(e,t,r)=>{for(const s of r||Object.keys(e)){const r=get(e,s);if(r){const{_f:e,...s}=r;if(e&&t(e.name)){if(e.ref.focus){e.ref.focus();break}if(e.refs&&e.refs[0].focus){e.refs[0].focus();break}}else isObject(s)&&focusFieldBy(s,t)}}};var generateId=()=>{const e=\"undefined\"===typeof performance?Date.now():1e3*performance.now();return\"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g,(t=>{const r=(16*Math.random()+e)%16|0;return(\"x\"==t?r:3&r|8).toString(16)}))};var getFocusFieldName=(e,t,r={})=>r.shouldFocus||isUndefined(r.shouldFocus)?r.focusName||`${e}.${isUndefined(r.focusIndex)?t:r.focusIndex}.`:\"\";var isWatched=(e,t,r)=>!r&&(t.watchAll||t.watch.has(e)||[...t.watch].some((t=>e.startsWith(t)&&/^\\.\\w+/.test(e.slice(t.length)))));var updateFieldArrayRootError=(e,t,r)=>{const s=compact(get(e,r));set(s,\"root\",t[r]);set(e,r,s);return e};var isBoolean=e=>\"boolean\"===typeof e;var isFileInput=e=>\"file\"===e.type;var isFunction=e=>\"function\"===typeof e;var isMessage=t=>isString(t)||e.isValidElement(t);var isRadioInput=e=>\"radio\"===e.type;var isRegex=e=>e instanceof RegExp;const o={value:false,isValid:false};const i={value:true,isValid:true};var getCheckboxValue=e=>{if(Array.isArray(e)){if(e.length>1){const t=e.filter((e=>e&&e.checked&&!e.disabled)).map((e=>e.value));return{value:t,isValid:!!t.length}}return e[0].checked&&!e[0].disabled?e[0].attributes&&!isUndefined(e[0].attributes.value)?isUndefined(e[0].value)||\"\"===e[0].value?i:{value:e[0].value,isValid:true}:i:o}return o};const l={isValid:false,value:null};var getRadioValue=e=>Array.isArray(e)?e.reduce(((e,t)=>t&&t.checked&&!t.disabled?{isValid:true,value:t.value}:e),l):l;function getValidateError(e,t,r=\"validate\"){if(isMessage(e)||Array.isArray(e)&&e.every(isMessage)||isBoolean(e)&&!e)return{type:r,message:isMessage(e)?e:\"\",ref:t}}var getValueAndMessage=e=>isObject(e)&&!isRegex(e)?e:{value:e,message:\"\"};var validateField=async(e,t,r,a,n)=>{const{ref:o,refs:i,required:l,maxLength:u,minLength:c,min:f,max:d,pattern:m,validate:y,name:g,valueAsNumber:h,mount:p,disabled:v}=e._f;if(!p||v)return{};const b=i?i[0]:o;const setCustomValidity=e=>{if(a&&b.reportValidity){b.setCustomValidity(isBoolean(e)?\"\":e||\"\");b.reportValidity()}};const _={};const F=isRadioInput(o);const A=isCheckBoxInput(o);const V=F||A;const x=(h||isFileInput(o))&&!o.value||\"\"===t||Array.isArray(t)&&!t.length;const S=appendErrors.bind(null,g,r,_);const getMinMaxMessage=(e,t,r,a=s.maxLength,n=s.minLength)=>{const i=e?t:r;_[g]={type:e?a:n,message:i,ref:o,...S(e?a:n,i)}};if(n?!Array.isArray(t)||!t.length:l&&(!V&&(x||isNullOrUndefined(t))||isBoolean(t)&&!t||A&&!getCheckboxValue(i).isValid||F&&!getRadioValue(i).isValid)){const{value:e,message:t}=isMessage(l)?{value:!!l,message:l}:getValueAndMessage(l);if(e){_[g]={type:s.required,message:t,ref:b,...S(s.required,t)};if(!r){setCustomValidity(t);return _}}}if(!x&&(!isNullOrUndefined(f)||!isNullOrUndefined(d))){let e;let a;const n=getValueAndMessage(d);const i=getValueAndMessage(f);if(isNullOrUndefined(t)||isNaN(t)){const r=o.valueAsDate||new Date(t);const convertTimeToDate=e=>new Date((new Date).toDateString()+\" \"+e);const s=\"time\"==o.type;const l=\"week\"==o.type;isString(n.value)&&t&&(e=s?convertTimeToDate(t)>convertTimeToDate(n.value):l?t>n.value:r>new Date(n.value));isString(i.value)&&t&&(a=s?convertTimeToDate(t)<convertTimeToDate(i.value):l?t<i.value:r<new Date(i.value))}else{const r=o.valueAsNumber||(t?+t:t);isNullOrUndefined(n.value)||(e=r>n.value);isNullOrUndefined(i.value)||(a=r<i.value)}if(e||a){getMinMaxMessage(!!e,n.message,i.message,s.max,s.min);if(!r){setCustomValidity(_[g].message);return _}}}if((u||c)&&!x&&(isString(t)||n&&Array.isArray(t))){const e=getValueAndMessage(u);const s=getValueAndMessage(c);const a=!isNullOrUndefined(e.value)&&t.length>e.value;const n=!isNullOrUndefined(s.value)&&t.length<s.value;if(a||n){getMinMaxMessage(a,e.message,s.message);if(!r){setCustomValidity(_[g].message);return _}}}if(m&&!x&&isString(t)){const{value:e,message:a}=getValueAndMessage(m);if(isRegex(e)&&!t.match(e)){_[g]={type:s.pattern,message:a,ref:o,...S(s.pattern,a)};if(!r){setCustomValidity(a);return _}}}if(y)if(isFunction(y)){const e=await y(t);const a=getValidateError(e,b);if(a){_[g]={...a,...S(s.validate,a.message)};if(!r){setCustomValidity(a.message);return _}}}else if(isObject(y)){let e={};for(const s in y){if(!isEmptyObject(e)&&!r)break;const a=getValidateError(await y[s](t),b,s);if(a){e={...a,...S(s,a.message)};setCustomValidity(a.message);r&&(_[g]=e)}}if(!isEmptyObject(e)){_[g]={ref:b,...e};if(!r)return _}}setCustomValidity(true);return _};function append(e,t){return[...e,...convertToArrayPayload(t)]}var fillEmptyArray=e=>Array.isArray(e)?e.map((()=>{})):void 0;var getValidationModes=e=>({isOnSubmit:!e||e===r.onSubmit,isOnBlur:e===r.onBlur,isOnChange:e===r.onChange,isOnAll:e===r.all,isOnTouch:e===r.onTouched});function insert(e,t,r){return[...e.slice(0,t),...convertToArrayPayload(r),...e.slice(t)]}var moveArrayAt=(e,t,r)=>{if(!Array.isArray(e))return[];isUndefined(e[r])&&(e[r]=void 0);e.splice(r,0,e.splice(t,1)[0]);return e};function prepend(e,t){return[...convertToArrayPayload(t),...convertToArrayPayload(e)]}function removeAtIndexes(e,t){let r=0;const s=[...e];for(const e of t){s.splice(e-r,1);r++}return compact(s).length?s:[]}var removeArrayAt=(e,t)=>isUndefined(t)?[]:removeAtIndexes(e,convertToArrayPayload(t).sort(((e,t)=>e-t)));var swapArrayAt=(e,t,r)=>{e[t]=[e[r],e[r]=e[t]][0]};function baseGet(e,t){const r=t.slice(0,-1).length;let s=0;while(s<r)e=isUndefined(e)?s++:e[t[s++]];return e}function isEmptyArray(e){for(const t in e)if(!isUndefined(e[t]))return false;return true}function unset(e,t){const r=isKey(t)?[t]:stringToPath(t);const s=1==r.length?e:baseGet(e,r);const a=r[r.length-1];let n;s&&delete s[a];for(let t=0;t<r.slice(0,-1).length;t++){let s=-1;let a;const o=r.slice(0,-(t+1));const i=o.length-1;t>0&&(n=e);while(++s<o.length){const t=o[s];a=a?a[t]:e[t];i===s&&(isObject(a)&&isEmptyObject(a)||Array.isArray(a)&&isEmptyArray(a))&&(n?delete n[t]:delete e[t]);n=a}}return e}var updateAt=(e,t,r)=>{e[t]=r;return e};\n/**\n * A custom hook that exposes convenient methods to perform operations with a list of dynamic inputs that need to be appended, updated, removed etc. • [Demo](https://codesandbox.io/s/react-hook-form-usefieldarray-ssugn) • [Video](https://youtu.be/4MrbfGSFY2A)\n *\n * @remarks\n * [API](https://react-hook-form.com/api/usefieldarray) • [Demo](https://codesandbox.io/s/react-hook-form-usefieldarray-ssugn)\n *\n * @param props - useFieldArray props\n *\n * @returns methods - functions to manipulate with the Field Arrays (dynamic inputs) {@link UseFieldArrayReturn}\n *\n * @example\n * ```tsx\n * function App() {\n *   const { register, control, handleSubmit, reset, trigger, setError } = useForm({\n *     defaultValues: {\n *       test: []\n *     }\n *   });\n *   const { fields, append } = useFieldArray({\n *     control,\n *     name: \"test\"\n *   });\n *\n *   return (\n *     <form onSubmit={handleSubmit(data => console.log(data))}>\n *       {fields.map((item, index) => (\n *          <input key={item.id} {...register(`test.${index}.firstName`)}  />\n *       ))}\n *       <button type=\"button\" onClick={() => append({ firstName: \"bill\" })}>\n *         append\n *       </button>\n *       <input type=\"submit\" />\n *     </form>\n *   );\n * }\n * ```\n */function useFieldArray(t){const s=useFormContext();const{control:a=s.control,name:n,keyName:o=\"id\",shouldUnregister:i}=t;const[l,u]=e.useState(a._getFieldArray(n));const c=e.useRef(a._getFieldArray(n).map(generateId));const f=e.useRef(l);const d=e.useRef(n);const m=e.useRef(false);d.current=n;f.current=l;a._names.array.add(n);t.rules&&a.register(n,t.rules);const y=e.useCallback((({values:e,name:t})=>{if(t===d.current||!t){const t=get(e,d.current);if(Array.isArray(t)){u(t);c.current=t.map(generateId)}}}),[]);useSubscribe({callback:y,subject:a._subjects.array});const g=e.useCallback((e=>{m.current=true;a._updateFieldArray(n,e)}),[a,n]);const append$1=(e,t)=>{const r=convertToArrayPayload(cloneObject(e));const s=append(a._getFieldArray(n),r);a._names.focus=getFocusFieldName(n,s.length-1,t);c.current=append(c.current,r.map(generateId));g(s);u(s);a._updateFieldArray(n,s,append,{argA:fillEmptyArray(e)})};const prepend$1=(e,t)=>{const r=convertToArrayPayload(cloneObject(e));const s=prepend(a._getFieldArray(n),r);a._names.focus=getFocusFieldName(n,0,t);c.current=prepend(c.current,r.map(generateId));g(s);u(s);a._updateFieldArray(n,s,prepend,{argA:fillEmptyArray(e)})};const remove=e=>{const t=removeArrayAt(a._getFieldArray(n),e);c.current=removeArrayAt(c.current,e);g(t);u(t);a._updateFieldArray(n,t,removeArrayAt,{argA:e})};const insert$1=(e,t,r)=>{const s=convertToArrayPayload(cloneObject(t));const o=insert(a._getFieldArray(n),e,s);a._names.focus=getFocusFieldName(n,e,r);c.current=insert(c.current,e,s.map(generateId));g(o);u(o);a._updateFieldArray(n,o,insert,{argA:e,argB:fillEmptyArray(t)})};const swap=(e,t)=>{const r=a._getFieldArray(n);swapArrayAt(r,e,t);swapArrayAt(c.current,e,t);g(r);u(r);a._updateFieldArray(n,r,swapArrayAt,{argA:e,argB:t},false)};const move=(e,t)=>{const r=a._getFieldArray(n);moveArrayAt(r,e,t);moveArrayAt(c.current,e,t);g(r);u(r);a._updateFieldArray(n,r,moveArrayAt,{argA:e,argB:t},false)};const update=(e,t)=>{const r=cloneObject(t);const s=updateAt(a._getFieldArray(n),e,r);c.current=[...s].map(((t,r)=>t&&r!==e?c.current[r]:generateId()));g(s);u([...s]);a._updateFieldArray(n,s,updateAt,{argA:e,argB:r},true,false)};const replace=e=>{const t=convertToArrayPayload(cloneObject(e));c.current=t.map(generateId);g([...t]);u([...t]);a._updateFieldArray(n,[...t],(e=>e),{},true,false)};e.useEffect((()=>{a._stateFlags.action=false;isWatched(n,a._names)&&a._subjects.state.next({});if(m.current&&(!getValidationModes(a._options.mode).isOnSubmit||a._formState.isSubmitted))if(a._options.resolver)a._executeSchema([n]).then((e=>{const t=get(e.errors,n);const r=get(a._formState.errors,n);if(r?!t&&r.type:t&&t.type){t?set(a._formState.errors,n,t):unset(a._formState.errors,n);a._subjects.state.next({errors:a._formState.errors})}}));else{const e=get(a._fields,n);e&&e._f&&validateField(e,get(a._formValues,n),a._options.criteriaMode===r.all,a._options.shouldUseNativeValidation,true).then((e=>!isEmptyObject(e)&&a._subjects.state.next({errors:updateFieldArrayRootError(a._formState.errors,e,n)})))}a._subjects.watch.next({name:n,values:a._formValues});a._names.focus&&focusFieldBy(a._fields,(e=>!!e&&e.startsWith(a._names.focus)));a._names.focus=\"\";a._proxyFormState.isValid&&a._updateValid()}),[l,n,a]);e.useEffect((()=>{!get(a._formValues,n)&&a._updateFieldArray(n);return()=>{(a._options.shouldUnregister||i)&&a.unregister(n)}}),[n,a,o,i]);return{swap:e.useCallback(swap,[g,n,a]),move:e.useCallback(move,[g,n,a]),prepend:e.useCallback(prepend$1,[g,n,a]),append:e.useCallback(append$1,[g,n,a]),remove:e.useCallback(remove,[g,n,a]),insert:e.useCallback(insert$1,[g,n,a]),update:e.useCallback(update,[g,n,a]),replace:e.useCallback(replace,[g,n,a]),fields:e.useMemo((()=>l.map(((e,t)=>({...e,[o]:c.current[t]||generateId()})))),[l,o])}}function createSubject(){let e=[];const next=t=>{for(const r of e)r.next(t)};const subscribe=t=>{e.push(t);return{unsubscribe:()=>{e=e.filter((e=>e!==t))}}};const unsubscribe=()=>{e=[]};return{get observers(){return e},next:next,subscribe:subscribe,unsubscribe:unsubscribe}}var isPrimitive=e=>isNullOrUndefined(e)||!isObjectType(e);function deepEqual(e,t){if(isPrimitive(e)||isPrimitive(t))return e===t;if(isDateObject(e)&&isDateObject(t))return e.getTime()===t.getTime();const r=Object.keys(e);const s=Object.keys(t);if(r.length!==s.length)return false;for(const a of r){const r=e[a];if(!s.includes(a))return false;if(\"ref\"!==a){const e=t[a];if(isDateObject(r)&&isDateObject(e)||isObject(r)&&isObject(e)||Array.isArray(r)&&Array.isArray(e)?!deepEqual(r,e):r!==e)return false}}return true}var isHTMLElement=e=>{const t=e?e.ownerDocument:0;const r=t&&t.defaultView?t.defaultView.HTMLElement:HTMLElement;return e instanceof r};var isMultipleSelect=e=>\"select-multiple\"===e.type;var isRadioOrCheckbox=e=>isRadioInput(e)||isCheckBoxInput(e);var live=e=>isHTMLElement(e)&&e.isConnected;var objectHasFunction=e=>{for(const t in e)if(isFunction(e[t]))return true;return false};function markFieldsDirty(e,t={}){const r=Array.isArray(e);if(isObject(e)||r)for(const r in e)if(Array.isArray(e[r])||isObject(e[r])&&!objectHasFunction(e[r])){t[r]=Array.isArray(e[r])?[]:{};markFieldsDirty(e[r],t[r])}else isNullOrUndefined(e[r])||(t[r]=true);return t}function getDirtyFieldsFromDefaultValues(e,t,r){const s=Array.isArray(e);if(isObject(e)||s)for(const s in e)Array.isArray(e[s])||isObject(e[s])&&!objectHasFunction(e[s])?isUndefined(t)||isPrimitive(r[s])?r[s]=Array.isArray(e[s])?markFieldsDirty(e[s],[]):{...markFieldsDirty(e[s])}:getDirtyFieldsFromDefaultValues(e[s],isNullOrUndefined(t)?{}:t[s],r[s]):deepEqual(e[s],t[s])?delete r[s]:r[s]=true;return r}var getDirtyFields=(e,t)=>getDirtyFieldsFromDefaultValues(e,t,markFieldsDirty(t));var getFieldValueAs=(e,{valueAsNumber:t,valueAsDate:r,setValueAs:s})=>isUndefined(e)?e:t?\"\"===e?NaN:e?+e:e:r&&isString(e)?new Date(e):s?s(e):e;function getFieldValue(e){const t=e.ref;if(!(e.refs?e.refs.every((e=>e.disabled)):t.disabled))return isFileInput(t)?t.files:isRadioInput(t)?getRadioValue(e.refs).value:isMultipleSelect(t)?[...t.selectedOptions].map((({value:e})=>e)):isCheckBoxInput(t)?getCheckboxValue(e.refs).value:getFieldValueAs(isUndefined(t.value)?e.ref.value:t.value,e)}var getResolverOptions=(e,t,r,s)=>{const a={};for(const r of e){const e=get(t,r);e&&set(a,r,e._f)}return{criteriaMode:r,names:[...e],fields:a,shouldUseNativeValidation:s}};var getRuleValue=e=>isUndefined(e)?e:isRegex(e)?e.source:isObject(e)?isRegex(e.value)?e.value.source:e.value:e;var hasValidation=e=>e.mount&&(e.required||e.min||e.max||e.maxLength||e.minLength||e.pattern||e.validate);function schemaErrorLookup(e,t,r){const s=get(e,r);if(s||isKey(r))return{error:s,name:r};const a=r.split(\".\");while(a.length){const s=a.join(\".\");const n=get(t,s);const o=get(e,s);if(n&&!Array.isArray(n)&&r!==s)return{name:r};if(o&&o.type)return{name:s,error:o};a.pop()}return{name:r}}var skipValidation=(e,t,r,s,a)=>!a.isOnAll&&(!r&&a.isOnTouch?!(t||e):(r?s.isOnBlur:a.isOnBlur)?!e:!(r?s.isOnChange:a.isOnChange)||e);var unsetEmptyArray=(e,t)=>!compact(get(e,t)).length&&unset(e,t);const u={mode:r.onSubmit,reValidateMode:r.onChange,shouldFocusError:true};function createFormControl(e={}){let s={...u,...e};let a={submitCount:0,isDirty:false,isValidating:false,isSubmitted:false,isSubmitting:false,isSubmitSuccessful:false,isValid:false,touchedFields:{},dirtyFields:{},errors:{}};let o={};let i=cloneObject(s.defaultValues)||{};let l=s.shouldUnregister?{}:cloneObject(i);let c={action:false,mount:false,watch:false};let f={mount:new Set,unMount:new Set,array:new Set,watch:new Set};let d;let m=0;let y={};const g={isDirty:false,dirtyFields:false,touchedFields:false,isValidating:false,isValid:false,errors:false};const h={watch:createSubject(),array:createSubject(),state:createSubject()};const p=getValidationModes(s.mode);const v=getValidationModes(s.reValidateMode);const b=s.criteriaMode===r.all;const debounce=e=>t=>{clearTimeout(m);m=window.setTimeout(e,t)};const _updateValid=async()=>{let e=false;if(g.isValid){e=s.resolver?isEmptyObject((await _executeSchema()).errors):await executeBuiltInValidation(o,true);if(e!==a.isValid){a.isValid=e;h.state.next({isValid:e})}}return e};const _updateFieldArray=(e,t=[],r,s,n=true,u=true)=>{if(s&&r){c.action=true;if(u&&Array.isArray(get(o,e))){const t=r(get(o,e),s.argA,s.argB);n&&set(o,e,t)}if(u&&Array.isArray(get(a.errors,e))){const t=r(get(a.errors,e),s.argA,s.argB);n&&set(a.errors,e,t);unsetEmptyArray(a.errors,e)}if(g.touchedFields&&u&&Array.isArray(get(a.touchedFields,e))){const t=r(get(a.touchedFields,e),s.argA,s.argB);n&&set(a.touchedFields,e,t)}g.dirtyFields&&(a.dirtyFields=getDirtyFields(i,l));h.state.next({isDirty:_getDirty(e,t),dirtyFields:a.dirtyFields,errors:a.errors,isValid:a.isValid})}else set(l,e,t)};const updateErrors=(e,t)=>{set(a.errors,e,t);h.state.next({errors:a.errors})};const updateValidAndValue=(e,t,r,s)=>{const a=get(o,e);if(a){const n=get(l,e,isUndefined(r)?get(i,e):r);isUndefined(n)||s&&s.defaultChecked||t?set(l,e,t?n:getFieldValue(a._f)):setFieldValue(e,n);c.mount&&_updateValid()}};const updateTouchAndDirty=(e,t,r,s,n)=>{let o=false;let l=false;const u={name:e};if(g.isDirty){l=a.isDirty;a.isDirty=u.isDirty=_getDirty();o=l!==u.isDirty}if(g.dirtyFields&&(!r||s)){l=get(a.dirtyFields,e);const r=deepEqual(get(i,e),t);r?unset(a.dirtyFields,e):set(a.dirtyFields,e,true);u.dirtyFields=a.dirtyFields;o=o||l!==!r}if(r){const t=get(a.touchedFields,e);if(!t){set(a.touchedFields,e,r);u.touchedFields=a.touchedFields;o=o||g.touchedFields&&t!==r}}o&&n&&h.state.next(u);return o?u:{}};const shouldRenderByError=(t,r,s,n)=>{const o=get(a.errors,t);const i=g.isValid&&isBoolean(r)&&a.isValid!==r;if(e.delayError&&s){d=debounce((()=>updateErrors(t,s)));d(e.delayError)}else{clearTimeout(m);d=null;s?set(a.errors,t,s):unset(a.errors,t)}if((s?!deepEqual(o,s):o)||!isEmptyObject(n)||i){const e={...n,...i&&isBoolean(r)?{isValid:r}:{},errors:a.errors,name:t};a={...a,...e};h.state.next(e)}y[t]--;if(g.isValidating&&!Object.values(y).some((e=>e))){h.state.next({isValidating:false});y={}}};const _executeSchema=async e=>s.resolver?await s.resolver({...l},s.context,getResolverOptions(e||f.mount,o,s.criteriaMode,s.shouldUseNativeValidation)):{};const executeSchemaAndUpdateState=async e=>{const{errors:t}=await _executeSchema();if(e)for(const r of e){const e=get(t,r);e?set(a.errors,r,e):unset(a.errors,r)}else a.errors=t;return t};const executeBuiltInValidation=async(e,t,r={valid:true})=>{for(const n in e){const o=e[n];if(o){const{_f:e,...n}=o;if(e){const n=f.array.has(e.name);const i=await validateField(o,get(l,e.name),b,s.shouldUseNativeValidation,n);if(i[e.name]){r.valid=false;if(t)break}!t&&(get(i,e.name)?n?updateFieldArrayRootError(a.errors,i,e.name):set(a.errors,e.name,i[e.name]):unset(a.errors,e.name))}n&&await executeBuiltInValidation(n,t,r)}}return r.valid};const _removeUnmounted=()=>{for(const e of f.unMount){const t=get(o,e);t&&(t._f.refs?t._f.refs.every((e=>!live(e))):!live(t._f.ref))&&unregister(e)}f.unMount=new Set};const _getDirty=(e,t)=>(e&&t&&set(l,e,t),!deepEqual(getValues(),i));const _getWatch=(e,t,r)=>generateWatchOutput(e,f,{...c.mount?l:isUndefined(t)?i:isString(e)?{[e]:t}:t},r);const _getFieldArray=t=>compact(get(c.mount?l:i,t,e.shouldUnregister?get(i,t,[]):[]));const setFieldValue=(e,t,r={})=>{const s=get(o,e);let a=t;if(s){const r=s._f;if(r){!r.disabled&&set(l,e,getFieldValueAs(t,r));a=n&&isHTMLElement(r.ref)&&isNullOrUndefined(t)?\"\":t;if(isMultipleSelect(r.ref))[...r.ref.options].forEach((e=>e.selected=a.includes(e.value)));else if(r.refs)isCheckBoxInput(r.ref)?r.refs.length>1?r.refs.forEach((e=>(!e.defaultChecked||!e.disabled)&&(e.checked=Array.isArray(a)?!!a.find((t=>t===e.value)):a===e.value))):r.refs[0]&&(r.refs[0].checked=!!a):r.refs.forEach((e=>e.checked=e.value===a));else if(isFileInput(r.ref))r.ref.value=\"\";else{r.ref.value=a;r.ref.type||h.watch.next({name:e})}}}(r.shouldDirty||r.shouldTouch)&&updateTouchAndDirty(e,a,r.shouldTouch,r.shouldDirty,true);r.shouldValidate&&trigger(e)};const setValues=(e,t,r)=>{for(const s in t){const a=t[s];const n=`${e}.${s}`;const i=get(o,n);!f.array.has(e)&&isPrimitive(a)&&(!i||i._f)||isDateObject(a)?setFieldValue(n,a,r):setValues(n,a,r)}};const setValue=(e,t,r={})=>{const s=get(o,e);const n=f.array.has(e);const u=cloneObject(t);set(l,e,u);if(n){h.array.next({name:e,values:l});if((g.isDirty||g.dirtyFields)&&r.shouldDirty){a.dirtyFields=getDirtyFields(i,l);h.state.next({name:e,dirtyFields:a.dirtyFields,isDirty:_getDirty(e,u)})}}else!s||s._f||isNullOrUndefined(u)?setFieldValue(e,u,r):setValues(e,u,r);isWatched(e,f)&&h.state.next({});h.watch.next({name:e})};const onChange=async e=>{const r=e.target;let n=r.name;const i=get(o,n);if(i){let u;let c;const m=r.type?getFieldValue(i._f):getEventValue(e);const _=e.type===t.BLUR||e.type===t.FOCUS_OUT;const F=!hasValidation(i._f)&&!s.resolver&&!get(a.errors,n)&&!i._f.deps||skipValidation(_,get(a.touchedFields,n),a.isSubmitted,v,p);const A=isWatched(n,f,_);set(l,n,m);if(_){i._f.onBlur&&i._f.onBlur(e);d&&d(0)}else i._f.onChange&&i._f.onChange(e);const V=updateTouchAndDirty(n,m,_,false);const x=!isEmptyObject(V)||A;!_&&h.watch.next({name:n,type:e.type});if(F){g.isValid&&_updateValid();return x&&h.state.next({name:n,...A?{}:V})}!_&&A&&h.state.next({});y[n]=y[n]?y[n]+1:1;h.state.next({isValidating:true});if(s.resolver){const{errors:e}=await _executeSchema([n]);const t=schemaErrorLookup(a.errors,o,n);const r=schemaErrorLookup(e,o,t.name||n);u=r.error;n=r.name;c=isEmptyObject(e)}else{u=(await validateField(i,get(l,n),b,s.shouldUseNativeValidation))[n];_updateValid()}i._f.deps&&trigger(i._f.deps);shouldRenderByError(n,c,u,V)}};const trigger=async(e,t={})=>{let r;let n;const i=convertToArrayPayload(e);h.state.next({isValidating:true});if(s.resolver){const t=await executeSchemaAndUpdateState(isUndefined(e)?e:i);r=isEmptyObject(t);n=e?!i.some((e=>get(t,e))):r}else if(e){n=(await Promise.all(i.map((async e=>{const t=get(o,e);return await executeBuiltInValidation(t&&t._f?{[e]:t}:t)})))).every(Boolean);!(!n&&!a.isValid)&&_updateValid()}else n=r=await executeBuiltInValidation(o);h.state.next({...!isString(e)||g.isValid&&r!==a.isValid?{}:{name:e},...s.resolver||!e?{isValid:r}:{},errors:a.errors,isValidating:false});t.shouldFocus&&!n&&focusFieldBy(o,(e=>e&&get(a.errors,e)),e?i:f.mount);return n};const getValues=e=>{const t={...i,...c.mount?l:{}};return isUndefined(e)?t:isString(e)?get(t,e):e.map((e=>get(t,e)))};const getFieldState=(e,t)=>({invalid:!!get((t||a).errors,e),isDirty:!!get((t||a).dirtyFields,e),isTouched:!!get((t||a).touchedFields,e),error:get((t||a).errors,e)});const clearErrors=e=>{e?convertToArrayPayload(e).forEach((e=>unset(a.errors,e))):a.errors={};h.state.next({errors:a.errors})};const setError=(e,t,r)=>{const s=(get(o,e,{_f:{}})._f||{}).ref;set(a.errors,e,{...t,ref:s});h.state.next({name:e,errors:a.errors,isValid:false});r&&r.shouldFocus&&s&&s.focus&&s.focus()};const watch=(e,t)=>isFunction(e)?h.watch.subscribe({next:r=>e(_getWatch(void 0,t),r)}):_getWatch(e,t,true);const unregister=(e,t={})=>{for(const r of e?convertToArrayPayload(e):f.mount){f.mount.delete(r);f.array.delete(r);if(get(o,r)){if(!t.keepValue){unset(o,r);unset(l,r)}!t.keepError&&unset(a.errors,r);!t.keepDirty&&unset(a.dirtyFields,r);!t.keepTouched&&unset(a.touchedFields,r);!s.shouldUnregister&&!t.keepDefaultValue&&unset(i,r)}}h.watch.next({});h.state.next({...a,...t.keepDirty?{isDirty:_getDirty()}:{}});!t.keepIsValid&&_updateValid()};const register=(e,t={})=>{let r=get(o,e);const a=isBoolean(t.disabled);set(o,e,{...r||{},_f:{...r&&r._f?r._f:{ref:{name:e}},name:e,mount:true,...t}});f.mount.add(e);r?a&&set(l,e,t.disabled?void 0:get(l,e,getFieldValue(r._f))):updateValidAndValue(e,true,t.value);return{...a?{disabled:t.disabled}:{},...s.shouldUseNativeValidation?{required:!!t.required,min:getRuleValue(t.min),max:getRuleValue(t.max),minLength:getRuleValue(t.minLength),maxLength:getRuleValue(t.maxLength),pattern:getRuleValue(t.pattern)}:{},name:e,onChange:onChange,onBlur:onChange,ref:a=>{if(a){register(e,t);r=get(o,e);const s=isUndefined(a.value)&&a.querySelectorAll&&a.querySelectorAll(\"input,select,textarea\")[0]||a;const n=isRadioOrCheckbox(s);const l=r._f.refs||[];if(n?l.find((e=>e===s)):s===r._f.ref)return;set(o,e,{_f:{...r._f,...n?{refs:[...l.filter(live),s,...!Array.isArray(get(i,e))?[]:[{}]],ref:{type:s.type,name:e}}:{ref:s}}});updateValidAndValue(e,false,void 0,s)}else{r=get(o,e,{});r._f&&(r._f.mount=false);(s.shouldUnregister||t.shouldUnregister)&&!(isNameInFieldArray(f.array,e)&&c.action)&&f.unMount.add(e)}}}};const _focusError=()=>s.shouldFocusError&&focusFieldBy(o,(e=>e&&get(a.errors,e)),f.mount);const handleSubmit=(e,t)=>async r=>{if(r){r.preventDefault&&r.preventDefault();r.persist&&r.persist()}let n=true;let i=cloneObject(l);h.state.next({isSubmitting:true});try{if(s.resolver){const{errors:e,values:t}=await _executeSchema();a.errors=e;i=t}else await executeBuiltInValidation(o);if(isEmptyObject(a.errors)){h.state.next({errors:{},isSubmitting:true});await e(i,r)}else{t&&await t({...a.errors},r);_focusError()}}catch(e){n=false;throw e}finally{a.isSubmitted=true;h.state.next({isSubmitted:true,isSubmitting:false,isSubmitSuccessful:isEmptyObject(a.errors)&&n,submitCount:a.submitCount+1,errors:a.errors})}};const resetField=(e,t={})=>{if(get(o,e)){if(isUndefined(t.defaultValue))setValue(e,get(i,e));else{setValue(e,t.defaultValue);set(i,e,t.defaultValue)}t.keepTouched||unset(a.touchedFields,e);if(!t.keepDirty){unset(a.dirtyFields,e);a.isDirty=t.defaultValue?_getDirty(e,get(i,e)):_getDirty()}if(!t.keepError){unset(a.errors,e);g.isValid&&_updateValid()}h.state.next({...a})}};const _reset=(t,r={})=>{const s=t||i;const u=cloneObject(s);const d=t&&!isEmptyObject(t)?u:i;r.keepDefaultValues||(i=s);if(!r.keepValues){if(r.keepDirtyValues)for(const e of f.mount)get(a.dirtyFields,e)?set(d,e,get(l,e)):setValue(e,get(d,e));else{if(n&&isUndefined(t))for(const e of f.mount){const t=get(o,e);if(t&&t._f){const e=Array.isArray(t._f.refs)?t._f.refs[0]:t._f.ref;if(isHTMLElement(e)){const t=e.closest(\"form\");if(t){t.reset();break}}}}o={}}l=e.shouldUnregister?r.keepDefaultValues?cloneObject(i):{}:u;h.array.next({values:d});h.watch.next({values:d})}f={mount:new Set,unMount:new Set,array:new Set,watch:new Set,watchAll:false,focus:\"\"};c.mount=!g.isValid||!!r.keepIsValid;c.watch=!!e.shouldUnregister;h.state.next({submitCount:r.keepSubmitCount?a.submitCount:0,isDirty:r.keepDirty||r.keepDirtyValues?a.isDirty:!!(r.keepDefaultValues&&!deepEqual(t,i)),isSubmitted:!!r.keepIsSubmitted&&a.isSubmitted,dirtyFields:r.keepDirty||r.keepDirtyValues?a.dirtyFields:r.keepDefaultValues&&t?getDirtyFields(i,t):{},touchedFields:r.keepTouched?a.touchedFields:{},errors:r.keepErrors?a.errors:{},isSubmitting:false,isSubmitSuccessful:false})};const reset=(e,t)=>_reset(isFunction(e)?e(l):e,t);const setFocus=(e,t={})=>{const r=get(o,e);const s=r&&r._f;if(s){const e=s.refs?s.refs[0]:s.ref;if(e.focus){e.focus();t.shouldSelect&&e.select()}}};return{control:{register:register,unregister:unregister,getFieldState:getFieldState,_executeSchema:_executeSchema,_focusError:_focusError,_getWatch:_getWatch,_getDirty:_getDirty,_updateValid:_updateValid,_removeUnmounted:_removeUnmounted,_updateFieldArray:_updateFieldArray,_getFieldArray:_getFieldArray,_subjects:h,_proxyFormState:g,get _fields(){return o},get _formValues(){return l},get _stateFlags(){return c},set _stateFlags(e){c=e},get _defaultValues(){return i},get _names(){return f},set _names(e){f=e},get _formState(){return a},set _formState(e){a=e},get _options(){return s},set _options(e){s={...s,...e}}},trigger:trigger,register:register,handleSubmit:handleSubmit,watch:watch,setValue:setValue,getValues:getValues,reset:reset,resetField:resetField,clearErrors:clearErrors,unregister:unregister,setError:setError,setFocus:setFocus,getFieldState:getFieldState}}\n/**\n * Custom hook to manage the entire form.\n *\n * @remarks\n * [API](https://react-hook-form.com/api/useform) • [Demo](https://codesandbox.io/s/react-hook-form-get-started-ts-5ksmm) • [Video](https://www.youtube.com/watch?v=RkXv4AXXC_4)\n *\n * @param props - form configuration and validation parameters.\n *\n * @returns methods - individual functions to manage the form state. {@link UseFormReturn}\n *\n * @example\n * ```tsx\n * function App() {\n *   const { register, handleSubmit, watch, formState: { errors } } = useForm();\n *   const onSubmit = data => console.log(data);\n *\n *   console.log(watch(\"example\"));\n *\n *   return (\n *     <form onSubmit={handleSubmit(onSubmit)}>\n *       <input defaultValue=\"test\" {...register(\"example\")} />\n *       <input {...register(\"exampleRequired\", { required: true })} />\n *       {errors.exampleRequired && <span>This field is required</span>}\n *       <input type=\"submit\" />\n *     </form>\n *   );\n * }\n * ```\n */function useForm(t={}){const r=e.useRef();const[s,a]=e.useState({isDirty:false,isValidating:false,isSubmitted:false,isSubmitting:false,isSubmitSuccessful:false,isValid:false,submitCount:0,dirtyFields:{},touchedFields:{},errors:{},defaultValues:t.defaultValues});r.current||(r.current={...createFormControl(t),formState:s});const n=r.current.control;n._options=t;useSubscribe({subject:n._subjects.state,callback:e.useCallback((e=>{if(shouldRenderFormState(e,n._proxyFormState,true)){n._formState={...n._formState,...e};a({...n._formState})}}),[n])});e.useEffect((()=>{if(!n._stateFlags.mount){n._proxyFormState.isValid&&n._updateValid();n._stateFlags.mount=true}if(n._stateFlags.watch){n._stateFlags.watch=false;n._subjects.state.next({})}n._removeUnmounted()}));e.useEffect((()=>{s.submitCount&&n._focusError()}),[n,s.submitCount]);r.current.formState=getProxyFormState(s,n);return r.current}export{Controller,FormProvider,appendErrors,get,set,useController,useFieldArray,useForm,useFormContext,useFormState,useWatch};\n\n//# sourceMappingURL=index.esm.mjs.map","/**\n * --------------------------------------------------------------------\n * Helpers: Strings\n * --------------------------------------------------------------------\n * Distributed under the VIAL License:\n * https://www.abruptive.com/policies/vial\n *\n * Unauthorized access or use of this code will result in prosecution\n * according to the furthest extent of the law.\n *\n * © Abruptive LLC · All Rights Reserved\n * --------------------------------------------------------------------\n *//**\n * --------------------------------------------------------------------\n * Functions\n * --------------------------------------------------------------------\n *//**\n * Convert the first letter of each word in a string to uppercase.\n *\n * @param text - The text to convert.\n * @returns The text with the first letter of each word uppercase.\n */import{jsx as _jsx}from\"react/jsx-runtime\";export function toUpperCaseFirst(text){return text.split(\" \").map(word=>word.charAt(0).toUpperCase()+word.slice(1).toLowerCase()).join(\" \");}/**\n * Format a currency to USD.\n */export const formatCurrency=val=>{const num=parseFloat(val);if(isNaN(num))return val;return new Intl.NumberFormat(\"en-US\",{style:\"currency\",currency:\"USD\",maximumFractionDigits:0}).format(num);};/**\n * Format a date.\n */export const formatDate=val=>{const d=new Date(val);if(isNaN(d.getTime()))return val;const months=[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"];const month=months[d.getMonth()]||\"\";const day=d.getDate();const year=d.getFullYear();const suffix=dd=>{if(dd>3&&dd<21)return\"th\";switch(dd%10){case 1:return\"st\";case 2:return\"nd\";case 3:return\"rd\";default:return\"th\";}};return`${month} ${day}${suffix(day)}, ${year}`;};/**\n * Parse a string or boolean into a proper boolean value.\n * Returns true if the input is any of [true, \"true\", \"yes\", \"1\"].\n */function parseBoolean(value){if(typeof value===\"boolean\")return value;if(typeof value===\"string\"){const v=value.trim().toLowerCase();return v===\"true\"||v===\"yes\"||v===\"1\";}return false;}/**\n * Format a value.\n */export const formatValue=(raw,fmt)=>{switch(fmt){case\"currency\":return formatCurrency(raw);case\"date\":return formatDate(raw);case\"boolean\":{const boolVal=parseBoolean(raw);return\"<span style='font-size: 1.5em'>\"+(boolVal?\"✓\":\"𐄂\")+\"</span>\";}case\"image\":return raw?`![Image](${raw})`:\"\";default:return raw;}};/**\n * Check if a UUID is valid.\n */export function isValidUUID(uuid){if(!uuid||typeof uuid!==\"string\"){return false;}return/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/.test(uuid);}/**\n * --------------------------------------------------------------------\n * Root\n * --------------------------------------------------------------------\n * @framerDisableUnlink\n */export default function Strings(Component){return({children,...props})=>{return /*#__PURE__*/_jsx(Component,{...props,children:children});};}\nexport const __FramerMetadata__ = {\"exports\":{\"formatCurrency\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"formatValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"toUpperCaseFirst\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"formatDate\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"isValidUUID\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"Strings\",\"slots\":[],\"annotations\":{\"framerDisableUnlink\":\"\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Strings.map","/**\n * --------------------------------------------------------------------\n * Helpers: Router\n * --------------------------------------------------------------------\n * Distributed under the VIAL License:\n * https://www.abruptive.com/policies/vial\n *\n * Unauthorized access or use of this code will result in prosecution\n * according to the furthest extent of the law.\n *\n * © Abruptive LLC · All Rights Reserved\n * --------------------------------------------------------------------\n */// @ts-ignore\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{useRouter as useFramerRouter,useCurrentRouteId}from\"framer\";import{useState,useEffect,useMemo,useCallback}from\"react\";import{isValidUUID}from\"https://framer.com/m/Strings-XPcz.js\";/**\n * --------------------------------------------------------------------\n * Functions\n * --------------------------------------------------------------------\n *//**\n * Hook used to access the current pathname.\n *\n * Works with dynamic routes like /project/:f0eajfae.\n */export const usePathname=()=>{const{routes,currentPathVariables}=useFramerRouter();const currentRouteId=useCurrentRouteId();const currentRoutePath=routes?.[currentRouteId]?.path||\"\";// Memoize the pathname to avoid unnecessary re-renders\nconst pathname=useMemo(()=>{if(!currentRoutePath)return null;let finalPath=currentRoutePath;// If there are dynamic segments, replace them with values from currentPathVariables\nif(currentPathVariables){Object.keys(currentPathVariables).forEach(key=>{const placeholder=`:${key}`;// Replace the placeholder in the currentRoutePath with the corresponding value\nif(finalPath.includes(placeholder)){finalPath=finalPath.replace(placeholder,currentPathVariables[key]);}});}return finalPath||null;},[currentRoutePath,currentPathVariables]);// Return the final pathname.\nreturn pathname;};/**\n * Hook used to navigate to different routes.\n */export const useRouter=()=>{const{navigate,routes}=useFramerRouter();const push=useCallback(to=>{if(typeof window===\"undefined\")return;// Build a URL object so we can easily split path & query\nconst url=new URL(to,window.location.origin);const{pathname,searchParams}=url;const queryParams=Object.fromEntries(searchParams.entries());// Try to match each Framer route definition\nfor(const[routeId,def]of Object.entries(routes||{})){const pattern=def.path||\"\";const keys=[];// Turn /foo/:bar/baz into a regex, capturing named segments\nconst regex=new RegExp(\"^\"+pattern.replace(/:([^/]+)/g,(_,key)=>{keys.push(key);return\"([^/]+)\";})+\"$\");const match=regex.exec(pathname);if(match){// Extract path variables\nconst pathParams={};match.slice(1).forEach((val,i)=>{pathParams[keys[i]]=decodeURIComponent(val);});// Merge path+query params, navigate, then shallow-push the URL\nconst allParams={...pathParams,...queryParams};navigate(routeId,\"\",allParams);return;}}// Fallback: no Framer route matched → just shallow-push\nwindow.history.pushState({},\"\",to);},[navigate,routes]);return{push};};/**\n * Hook to access and manipulate search parameters in the URL.\n *\n * Handles SSR and CSR scenarios.\n */export const useSearchParams=()=>{const pathname=usePathname();const[searchParams,setSearchParams]=useState(null);// Initialize searchParams when the component mounts and when the pathname changes\nuseEffect(()=>{if(pathname){const newSearchParams=new URLSearchParams(window.location.search);setSearchParams(newSearchParams);}},[pathname]);/**\n     * Return the hook methods, ensuring searchParams are available.\n     */return{all:()=>searchParams,get:key=>searchParams?.get(key)||null,has:key=>searchParams?.has(key)||false,set:(key,value)=>{if(typeof window!==\"undefined\"&&searchParams){searchParams.set(key,value);// Update the URL without triggering a page reload (replaceState)\nwindow.history.replaceState(null,\"\",`${window.location.pathname}?${searchParams.toString()}`);// Update the state with the new search parameters\nsetSearchParams(new URLSearchParams(window.location.search));}},delete:key=>{if(typeof window!==\"undefined\"&&searchParams){searchParams.delete(key);// Update the URL without triggering a page reload (replaceState)\nwindow.history.replaceState(null,\"\",`${window.location.pathname}?${searchParams.toString()}`);// Update the state with the new search parameters\nsetSearchParams(new URLSearchParams(window.location.search));}},toString:()=>searchParams?.toString()||\"\"};};/**\n * Helper function that extracts the last N segments from window.location.pathname,\n * where N equals the number of keys provided, and maps each segment to the corresponding key.\n *\n * Example:\n *   For URL: \"https://next.agent.so/share/c/80e9108c-b4e1-4606-a5a6-309a2e576622\"\n *   Calling getPathParams(['conversation_uuid']) returns:\n *     { conversation_uuid: \"80e9108c-b4e1-4606-a5a6-309a2e576622\" }\n *\n *   For URL: \"https://next.agent.so/share/c/80e9108c-b4e1-4606-a5a6-309a2e576622/0a507ad9-c2db-43ce-b518-8be244ecde1e\"\n *   Calling getPathParams(['agent_uuid', 'conversation_uuid']) returns:\n *     { agent_uuid: \"80e9108c-b4e1-4606-a5a6-309a2e576622\", conversation_uuid: \"0a507ad9-c2db-43ce-b518-8be244ecde1e\" }\n */export function getPathParams(keys,config){if(typeof window===\"undefined\")return{};const pathname=window.location.pathname;// Split the pathname into segments and filter out any empty strings\nconst segments=pathname.split(\"/\").filter(Boolean);// Take the last N segments, where N equals the number of keys provided\nconst dynamicSegments=segments.slice(-keys.length);// If a root is provided and we expect only one segment, check if it equals the root.\n// If so, return a marker object (here, { notFound: \"true\" }) that your app can use to render a 404.\nif(config?.root&&keys.length===1&&dynamicSegments[0]===config.root){return{notFound:\"true\"};}// Otherwise, map each provided key to the corresponding dynamic segment.\nconst params={};keys.forEach((key,index)=>{params[key]=dynamicSegments[index]||\"\";});return params;}/**\n * Get the current domain (protocol + hostname) from window.location.\n *\n * Examples:\n * - If window.location is \"https://www.example.com/whatever/the/heck\",\n *   this function returns \"https://www.example.com\".\n * - If window.location is \"https://something.com\", it returns \"https://something.com\".\n * - If window.location is \"https://next.something.com\", it returns \"https://next.something.com\".\n *\n * @returns {string} The current domain or an empty string if window is not available.\n */export function getCurrentUrl(){if(typeof window!==\"undefined\"){return window.location.origin||`${window.location.protocol}//${window.location.hostname}`;}return\"\";}/**\n * Extract an entity's UUID from current URL\n *\n * /example/{boundary}/{widget_uuid} or /example/{boundary}/{widget_uuid}/{section}\n */export function getRouteUUID({boundary}){if(typeof window===\"undefined\")return null;// Get the pathname and segments.\nconst pathname=window.location.pathname;const segments=pathname.split(\"/\").filter(Boolean);// Find the widget UUID in the URL\nconst index=segments.indexOf(boundary);// Search for the UUID.\nif(index!==-1&&segments[index+1]){const potentialUUID=segments[index+1];if(isValidUUID(potentialUUID)){return potentialUUID;}}// If no UUID was found, return null.\nreturn null;}/**\n * Navigate to a specific entity route.\n */export function navigateEntity({root,segment,boundary}){const entity_uuid=getRouteUUID({boundary});if(!entity_uuid){console.warn(\"Could not idenfity the entity.\");return;}// Build the new URL\nconst baseURL=`${root}/${entity_uuid}`;const newURL=segment?`${baseURL}/${segment}`:baseURL;// Update the URL using shallow routing\nif(window.history&&window.history.pushState){window.history.pushState({},\"\",newURL);}}/**\n * --------------------------------------------------------------------\n * Overrides\n * --------------------------------------------------------------------\n *//**\n * Override to navigate to a specific segment in the entity context.\n */export function withEntityNavigate(Component,config={}){return props=>{const{root,segment=\"\",boundary}=config;/**\n         * Render the component.\n         */return /*#__PURE__*/_jsx(\"div\",{onClick:()=>navigateEntity({root,segment,boundary}),role:\"button\",children:/*#__PURE__*/_jsx(Component,{...props})});};}/**\n * Override used to navigate between items in an entity context.\n */export function withEntityNavigationItem(Component,config){return props=>{const{identifier,root,segments,boundary}=config;/**\n         * Render the component.\n         */return /*#__PURE__*/_jsx(\"div\",{onClick:()=>navigateEntity({root,segment:segments[props[identifier]],boundary}),role:\"button\",children:/*#__PURE__*/_jsx(Component,{...props})});};}/**\n * Override that forwards the entity UUID to a component. Should only be used once.\n */export function withEntityRouter(Component){return props=>{const router=useRouter();if(typeof window===\"undefined\")return null;const pathname=window.location.pathname;const segments=pathname.split(\"/\").filter(Boolean);if(segments.length===0){router.push(\"/404\");return null;}const tail=segments[segments.length-1];let entity_uuid=\"\";if(isValidUUID(tail)){entity_uuid=tail;}else{if(segments.length<2){router.push(\"/404\");return null;}const prev=segments[segments.length-2];if(isValidUUID(prev)){entity_uuid=prev;}else{router.push(\"/404\");return null;}}if(!entity_uuid){router.push(\"/404\");return null;}return /*#__PURE__*/_jsx(Component,{...props,entityUUID:entity_uuid});};}/**\n * --------------------------------------------------------------------\n * Root\n * --------------------------------------------------------------------\n * @framerDisableUnlink\n */export default function Router(Component){return({children,...props})=>{return /*#__PURE__*/_jsx(Component,{...props,children:children});};}\nexport const __FramerMetadata__ = {\"exports\":{\"getPathParams\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"usePathname\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withEntityNavigate\":{\"type\":\"reactHoc\",\"name\":\"withEntityNavigate\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"Router\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"\"}},\"useRouter\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withEntityNavigationItem\":{\"type\":\"reactHoc\",\"name\":\"withEntityNavigationItem\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"navigateEntity\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useSearchParams\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getRouteUUID\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getCurrentUrl\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withEntityRouter\":{\"type\":\"reactHoc\",\"name\":\"withEntityRouter\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Router.map","/**\n * --------------------------------------------------------------------\n * Capsule\n * --------------------------------------------------------------------\n * Distributed under the VIAL License:\n * https://www.abruptive.com/policies/vial\n *\n * Unauthorized access or use of this code will result in prosecution\n * according to the furthest extent of the law.\n *\n * © Abruptive LLC · All Rights Reserved\n * --------------------------------------------------------------------\n *//**\n * --------------------------------------------------------------------\n * Config\n * --------------------------------------------------------------------\n */export const config={database:{endpoint:\"https://graph.agent.so\"},members:{paths:{login:\"https://www.agent.so/login\",setup:\"https://account.agent.so/setup\",home:\"https://www.agent.so/chat\",membership:\"https://www.agent.so/account/membership\",upgrade:\"https://www.agent.so/upgrade\"},defaults:{avatar:\"https://common-cdn.agent.so/avatars/default.png\"}},affiliates:{endpoint:\"https://api.agent.so/v1/me/affiliate\",paths:{home:\"https://www.agent.so/ambassador\",setup:\"https://www.agent.so/ambassador/setup\"}},pay:{portal:{endpoint:\"https://api.agent.so/v1/apps/stripe/portal\"}}};\nexport const __FramerMetadata__ = {\"exports\":{\"config\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./_capsule.map","/**\n * --------------------------------------------------------------------\n * Interface: Interactions\n * --------------------------------------------------------------------\n * Distributed under the VIAL License:\n * https://www.abruptive.com/policies/vial\n *\n * Unauthorized access or use of this code will result in prosecution\n * according to the furthest extent of the law.\n *\n * © Abruptive LLC · All Rights Reserved\n * --------------------------------------------------------------------\n */import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useState,useEffect,useRef}from\"react\";import{Frame}from\"framer\";/**\n * --------------------------------------------------------------------\n * Config\n * --------------------------------------------------------------------\n */const config={animated:true,sizes:{icons:15,height:30,width:30},colors:{icons:\"rgb(255, 255, 255)\",masks:{top:\"var(--token-5f2f9a1c-ae2c-4848-9a36-7aa5c05ca9f2)\",bottom:\"var(--token-56c871dd-80bc-4031-b41d-333705d1391c)\",left:\"var(--token-5f2f9a1c-ae2c-4848-9a36-7aa5c05ca9f2)\",right:\"var(--token-56c871dd-80bc-4031-b41d-333705d1391c)\"}}};/**\n * --------------------------------------------------------------------\n * Components\n * --------------------------------------------------------------------\n */const icons={up:/*#__PURE__*/_jsx(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",viewBox:\"0 0 256 256\",focusable:\"false\",color:config.colors.icons,style:{userSelect:\"none\",width:\"100%\",height:\"100%\",display:\"inline-block\",fill:config.colors.icons,color:config.colors.icons,flexShrink:0},children:/*#__PURE__*/_jsx(\"g\",{color:config.colors.icons,weight:\"regular\",children:/*#__PURE__*/_jsx(\"path\",{d:\"M213.66,165.66a8,8,0,0,1-11.32,0L128,91.31,53.66,165.66a8,8,0,0,1-11.32-11.32l80-80a8,8,0,0,1,11.32,0l80,80A8,8,0,0,1,213.66,165.66Z\"})})}),down:/*#__PURE__*/_jsx(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",viewBox:\"0 0 256 256\",focusable:\"false\",color:config.colors.icons,style:{userSelect:\"none\",width:\"100%\",height:\"100%\",display:\"inline-block\",fill:config.colors.icons,color:config.colors.icons,flexShrink:0},children:/*#__PURE__*/_jsx(\"g\",{color:config.colors.icons,weight:\"regular\",children:/*#__PURE__*/_jsx(\"path\",{d:\"M213.66,101.66l-80,80a8,8,0,0,1-11.32,0l-80-80A8,8,0,0,1,53.66,90.34L128,164.69l74.34-74.35a8,8,0,0,1,11.32,11.32Z\"})})}),left:/*#__PURE__*/_jsx(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",viewBox:\"0 0 256 256\",focusable:\"false\",color:config.colors.icons,style:{userSelect:\"none\",width:\"100%\",height:\"100%\",display:\"inline-block\",fill:config.colors.icons,color:config.colors.icons,flexShrink:0},children:/*#__PURE__*/_jsx(\"g\",{color:config.colors.icons,weight:\"regular\",children:/*#__PURE__*/_jsx(\"path\",{d:\"M165.66,202.34a8,8,0,0,1-11.32,11.32l-80-80a8,8,0,0,1,0-11.32l80-80a8,8,0,0,1,11.32,11.32L91.31,128Z\"})})}),right:/*#__PURE__*/_jsx(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",viewBox:\"0 0 256 256\",focusable:\"false\",color:config.colors.icons,style:{userSelect:\"none\",width:\"100%\",height:\"100%\",display:\"inline-block\",fill:config.colors.icons,color:config.colors.icons,flexShrink:0},children:/*#__PURE__*/_jsx(\"g\",{color:config.colors.icons,weight:\"regular\",children:/*#__PURE__*/_jsx(\"path\",{d:\"M90.34,202.34a8,8,0,0,0,11.32,11.32l80-80a8,8,0,0,0,0-11.32l-80-80a8,8,0,0,0-11.32,11.32L164.69,128Z\"})})})};/**\n * --------------------------------------------------------------------\n * Components\n * --------------------------------------------------------------------\n */function Indicator({position,show,icon,gradientColor,iconSize,height,width,animated}){// Set gradient based on position\nconst gradient=position===\"top\"?`linear-gradient(to bottom, ${gradientColor}, transparent)`:position===\"bottom\"?`linear-gradient(to bottom, transparent, ${gradientColor})`:position===\"left\"?`linear-gradient(to right, ${gradientColor}, transparent)`:`linear-gradient(to right, transparent, ${gradientColor})`;// Position the icon based on position\nconst iconPosition=position===\"top\"?{bottom:10}:position===\"bottom\"?{top:10}:position===\"left\"?{right:10}:{left:10};// Apply animation if enabled\nconst animation=animated?{animate:position===\"top\"?{y:[0,-5,0]}:position===\"bottom\"?{y:[0,5,0]}:position===\"left\"?{x:[0,-5,0]}:{x:[0,5,0]},transition:{duration:1,repeat:Infinity}}:{};/**\n     * Render the component.\n     */return /*#__PURE__*/_jsx(Frame,{position:\"absolute\",top:position===\"top\"?0:undefined,bottom:position===\"bottom\"?0:undefined,left:position===\"left\"?0:undefined,right:position===\"right\"?0:undefined,height:position===\"top\"||position===\"bottom\"?height:\"100%\",width:position===\"left\"||position===\"right\"?width:\"100%\",background:gradient,opacity:show?1:0,transition:{duration:.3},style:{pointerEvents:\"none\",zIndex:10},children:/*#__PURE__*/_jsx(Frame,{center:position===\"top\"||position===\"bottom\"?\"x\":\"y\",...iconPosition,width:iconSize,height:iconSize,background:\"transparent\",...animation,children:icon})});}/**\n * --------------------------------------------------------------------\n * Overrides\n * --------------------------------------------------------------------\n */export function Indicators(Component){return props=>{const ref=useRef(null);const[showTopIndicator,setShowTopIndicator]=useState(false);const[showBottomIndicator,setShowBottomIndicator]=useState(false);const[showLeftIndicator,setShowLeftIndicator]=useState(false);const[showRightIndicator,setShowRightIndicator]=useState(false);/**\n         * Track scroll positioning and event handlers.\n         */useEffect(()=>{const el=ref.current;if(!el)return;const updateIndicators=()=>{const{scrollTop,scrollLeft,clientHeight,clientWidth,scrollHeight,scrollWidth}=el;// Vertical indicators\nsetShowTopIndicator(scrollTop>0);setShowBottomIndicator(scrollTop+clientHeight<scrollHeight);// Horizontal indicators\nsetShowLeftIndicator(scrollLeft>0);setShowRightIndicator(scrollLeft+clientWidth<scrollWidth);};// Initial check\nupdateIndicators();// Add scroll listener\nel.addEventListener(\"scroll\",updateIndicators);// Add resize listener for viewport changes\nwindow.addEventListener(\"resize\",updateIndicators);// Cleanup\nreturn()=>{el.removeEventListener(\"scroll\",updateIndicators);window.removeEventListener(\"resize\",updateIndicators);};},[]);/**\n         * Render the component.\n         */return /*#__PURE__*/_jsxs(Frame,{position:\"relative\",width:\"100%\",height:\"100%\",overflow:\"hidden\",background:\"none\",style:{display:\"flex\",flex:\"initial\",alignItems:\"center\",placeContent:\"center flex-start\",flexFlow:\"column\"},children:[/*#__PURE__*/_jsx(Component,{...props,ref:ref,children:props.children}),/*#__PURE__*/_jsx(Indicator,{position:\"top\",show:showTopIndicator,icon:icons.up,gradientColor:config.colors.masks.top,iconSize:config.sizes.icons,height:config.sizes.height,animated:config.animated}),/*#__PURE__*/_jsx(Indicator,{position:\"bottom\",show:showBottomIndicator,icon:icons.down,gradientColor:config.colors.masks.bottom,iconSize:config.sizes.icons,height:config.sizes.height,animated:config.animated}),/*#__PURE__*/_jsx(Indicator,{position:\"left\",show:showLeftIndicator,icon:icons.left,gradientColor:config.colors.masks.left,iconSize:config.sizes.icons,width:config.sizes.width,animated:config.animated}),/*#__PURE__*/_jsx(Indicator,{position:\"right\",show:showRightIndicator,icon:icons.right,gradientColor:config.colors.masks.right,iconSize:config.sizes.icons,width:config.sizes.width,animated:config.animated})]});};}export function Scrollable(Component){return props=>{const ref=useRef(null);const isDragging=useRef(false);const startX=useRef(0);const scrollStart=useRef(0);const lastX=useRef(0);const lastTime=useRef(0);const velocity=useRef(0);const animationFrame=useRef(null);// Map vertical wheel to horizontal scrolling with boundary handling\nuseEffect(()=>{const el=ref.current;if(!el)return;const onWheel=e=>{if(e.deltaY!==0){const atStart=el.scrollLeft<=0;const atEnd=el.scrollLeft+el.clientWidth>=el.scrollWidth;if(e.deltaY>0&&!atEnd||e.deltaY<0&&!atStart){el.scrollLeft+=e.deltaY;e.preventDefault();}// Else, allow default behavior for vertical scroll\n}};el.addEventListener(\"wheel\",onWheel,{passive:false});return()=>el.removeEventListener(\"wheel\",onWheel);},[]);useEffect(()=>{const el=ref.current;if(!el)return;const animateInertia=prevTime=>{const currentTime=performance.now();const dt=currentTime-prevTime;el.scrollLeft+=velocity.current*dt;velocity.current*=.95;if(Math.abs(velocity.current)>.02){animationFrame.current=requestAnimationFrame(()=>animateInertia(currentTime));}else{animationFrame.current=null;}};const onMouseDown=e=>{isDragging.current=true;startX.current=e.pageX-el.offsetLeft;scrollStart.current=el.scrollLeft;lastX.current=e.pageX;lastTime.current=performance.now();if(animationFrame.current!==null){cancelAnimationFrame(animationFrame.current);animationFrame.current=null;}el.style.cursor=\"grabbing\";};const onMouseLeave=()=>{if(isDragging.current){isDragging.current=false;el.style.cursor=\"grab\";if(Math.abs(velocity.current)>.02){animationFrame.current=requestAnimationFrame(()=>animateInertia(performance.now()));}}};const onMouseUp=()=>{if(isDragging.current){isDragging.current=false;el.style.cursor=\"grab\";if(Math.abs(velocity.current)>.02){animationFrame.current=requestAnimationFrame(()=>animateInertia(performance.now()));}}};const onMouseMove=e=>{if(!isDragging.current)return;e.preventDefault();const x=e.pageX;const currentTime=performance.now();const dt=currentTime-lastTime.current;const dx=x-lastX.current;velocity.current=-dx/dt;lastX.current=x;lastTime.current=currentTime;const walk=x-startX.current;el.scrollLeft=scrollStart.current-walk;};el.addEventListener(\"mousedown\",onMouseDown);el.addEventListener(\"mouseleave\",onMouseLeave);el.addEventListener(\"mouseup\",onMouseUp);el.addEventListener(\"mousemove\",onMouseMove);el.style.cursor=\"grab\";return()=>{el.removeEventListener(\"mousedown\",onMouseDown);el.removeEventListener(\"mouseleave\",onMouseLeave);el.removeEventListener(\"mouseup\",onMouseUp);el.removeEventListener(\"mousemove\",onMouseMove);};},[]);return /*#__PURE__*/_jsx(Component,{...props,ref,style:{overflowX:\"scroll\",overflowY:\"hidden\",WebkitOverflowScrolling:\"touch\"}});};}/**\n * --------------------------------------------------------------------\n * Root\n * --------------------------------------------------------------------\n * @framerDisableUnlink\n */export default function Interactions(Component){return({children,...props})=>{return /*#__PURE__*/_jsx(Component,{...props,children:children});};}\nexport const __FramerMetadata__ = {\"exports\":{\"Scrollable\":{\"type\":\"reactHoc\",\"name\":\"Scrollable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Indicators\":{\"type\":\"reactHoc\",\"name\":\"Indicators\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"Interactions\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Interactions.map","/**\n * --------------------------------------------------------------------\n * Interface: Links\n * --------------------------------------------------------------------\n * Distributed under the VIAL License:\n * https://www.abruptive.com/policies/vial\n *\n * Unauthorized access or use of this code will result in prosecution\n * according to the furthest extent of the law.\n *\n * © Abruptive LLC · All Rights Reserved\n * --------------------------------------------------------------------\n */import{jsx as _jsx}from\"react/jsx-runtime\";import{useState,useEffect,useMemo}from\"react\";import{isFramer}from\"https://framer.com/m/Capsule-oSSG.js\";import{useRouter,usePathname}from\"https://framer.com/m/Router-vdQr.js\";/**\n * --------------------------------------------------------------------\n * Overrides\n * --------------------------------------------------------------------\n *//**\n * Override to set variant to \"Active\" when href matches current pathname\n */export function Active(Component){return props=>{const currentPathname=usePathname();// Check the variant and set it if needed.\nconst variant=useMemo(()=>{if(!props.link||!currentPathname)return props.variant;const cleanHref=props.link.split(\"?\")[0];return cleanHref===currentPathname?\"Active\":props.variant;},[props.link,props.variant,currentPathname]);/**\n         * Render the component.\n         */return /*#__PURE__*/_jsx(Component,{...props,variant:variant});};}/**\n * Override the href prop on an element to append an email found on page.\n *\n * The layer must be called $_Email and its value will be added as a param to the href.\n */export function AppendEmail(Component){if(isFramer)return props=>/*#__PURE__*/_jsx(Component,{...props});return props=>{const[hrefWithEmail,setHrefWithEmail]=useState(props.link);useEffect(()=>{if(!props.link)return;// Look for the email element in the DOM\nconst emailElement=document.querySelector('[data-framer-name=\"$_Email\"]');// If the element exists, process it.\nif(emailElement){const textContent=emailElement.textContent;if(textContent){// Use a regular expression to extract an email address\nconst emailRegex=/([a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,})/;const match=textContent.match(emailRegex);if(match&&match[1]){const email=match[1];// Append the email as a query parameter.\n// If there is already a \"?\" in the URL, use \"&\", otherwise \"?\"\nlet newHref=props.link||\"\";if(newHref.indexOf(\"?\")!==-1){newHref+=`&email=${encodeURIComponent(email)}`;}else{newHref+=`?email=${encodeURIComponent(email)}`;}setHrefWithEmail(newHref);}}}},[props.link]);return /*#__PURE__*/_jsx(Component,{...props,link:hrefWithEmail});};}/**\n * Override the href prop on an element to append the current URL as a redirect (i.e. for signup or login forms).\n */export function AppendRedirect(Component){if(isFramer)return props=>/*#__PURE__*/_jsx(Component,{...props});return({link,...props})=>{const router=useRouter();const[hrefWithRedirect,setHrefWithRedirect]=useState(link);useEffect(()=>{if(!link)return;// Get the full current URL and encode it\nconst currentUrl=window.location.href;const encodedUrl=encodeURIComponent(currentUrl);// Append as redirect_url param\nlet newHref=link;if(newHref.includes(\"?\")){newHref+=`&redirect_url=${encodedUrl}`;}else{newHref+=`?redirect_url=${encodedUrl}`;}setHrefWithRedirect(newHref);},[link]);/**\n         * onClick event override.\n         */const onClick=e=>{router.push(hrefWithRedirect);e.preventDefault();return false;};/**\n         * Render the component.\n         */return /*#__PURE__*/_jsx(\"span\",{role:\"button\",onClick:onClick,children:/*#__PURE__*/_jsx(Component,{...props})});};}/**\n * --------------------------------------------------------------------\n * Root\n * --------------------------------------------------------------------\n * @framerDisableUnlink\n */export default function Links(Component){return({children,...props})=>{return /*#__PURE__*/_jsx(Component,{...props,children:children});};}\nexport const __FramerMetadata__ = {\"exports\":{\"AppendRedirect\":{\"type\":\"reactHoc\",\"name\":\"AppendRedirect\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"AppendEmail\":{\"type\":\"reactHoc\",\"name\":\"AppendEmail\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"Links\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"\"}},\"Active\":{\"type\":\"reactHoc\",\"name\":\"Active\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Links.map","/**\n * --------------------------------------------------------------------\n * Interface: Searchable\n * --------------------------------------------------------------------\n * Distributed under the VIAL License:\n * https://www.abruptive.com/policies/vial\n *\n * Unauthorized access or use of this code will result in prosecution\n * according to the furthest extent of the law.\n *\n * © Abruptive LLC · All Rights Reserved\n * --------------------------------------------------------------------\n */import{jsx as _jsx}from\"react/jsx-runtime\";import{useEffect,useRef}from\"react\";import{Controller,FormProvider,useForm,useFormContext}from\"react-hook-form\";/**\n * --------------------------------------------------------------------\n * Overrides\n * --------------------------------------------------------------------\n *//**\n * Override used to make an area searchable using a <Search /> override.\n */export function SearchableArea(Component){return props=>{const methods=useForm();const{watch}=methods;const wrapperRef=useRef(null);useEffect(()=>{const subscription=watch(value=>{const searchValue=(value.search||\"\").trim().toLowerCase();applyFilter(searchValue);});return()=>subscription.unsubscribe();},[watch]);useEffect(()=>{if(!wrapperRef.current)return;const observer=new MutationObserver(()=>{const searchValue=(watch(\"search\")||\"\").trim().toLowerCase();applyFilter(searchValue);});observer.observe(wrapperRef.current,{childList:true,subtree:true,characterData:true});return()=>observer.disconnect();},[watch]);const applyFilter=searchValue=>{const agentCards=wrapperRef.current?.querySelectorAll('[aria-label^=\"searchable-item\"]')||[];// Step 1: Group cards by their grandparents\nconst grandparentMap=new Map;agentCards.forEach(card=>{const grandparent=card.parentElement?.parentElement;if(grandparent){if(!grandparentMap.has(grandparent)){grandparentMap.set(grandparent,[]);}grandparentMap.get(grandparent).push(card);}});// Step 2: Set visibility for each grandparent\ngrandparentMap.forEach((cards,grandparent)=>{const anyCardMatches=cards.some(card=>{const textContent=card.textContent?.toLowerCase()||\"\";const searchText=textContent.trim();return searchValue===\"\"||searchText.includes(searchValue);});grandparent.style.display=anyCardMatches?\"\":\"none\";});// Step 3: Handle search blocks visibility\nconst searchBlocks=wrapperRef.current?.querySelectorAll('[aria-label=\"searchable-block\"]')||[];searchBlocks.forEach(block=>{const cardsInBlock=block.querySelectorAll('[aria-label^=\"searchable-item\"]');const allHidden=Array.from(cardsInBlock).every(card=>{const grandparent=card.parentElement?.parentElement;return grandparent&&grandparent.style.display===\"none\";});block.style.display=allHidden?\"none\":\"\";});// Step 4: Handle hide elements without affecting grandparents\nconst hideElements=wrapperRef.current?.querySelectorAll('[aria-label=\"searchable-block-hide\"]')||[];hideElements.forEach(element=>{if(searchValue!==\"\"){element.style.display=\"none\"// Hide only the element itself\n;}else{element.style.display=\"\"// Show when search is empty\n;}});};return /*#__PURE__*/_jsx(FormProvider,{...methods,children:/*#__PURE__*/_jsx(Component,{...props,ref:wrapperRef})});};}/**\n * Override used to turn a regular input into a searchable input.\n */export function SearchableInput(Component){return props=>{const context=useFormContext();const{control}=context;if(!context){return /*#__PURE__*/_jsx(Component,{...props});}return /*#__PURE__*/_jsx(Controller,{name:\"search\",control:control,render:({field})=>/*#__PURE__*/_jsx(Component,{...props,...field})});};}/**\n * --------------------------------------------------------------------\n * Root\n * --------------------------------------------------------------------\n * @framerDisableUnlink\n */export default function Searchable(Component){return({children,...props})=>{return /*#__PURE__*/_jsx(Component,{...props,children:children});};}\nexport const __FramerMetadata__ = {\"exports\":{\"SearchableArea\":{\"type\":\"reactHoc\",\"name\":\"SearchableArea\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"Searchable\",\"slots\":[],\"annotations\":{\"framerDisableUnlink\":\"\",\"framerContractVersion\":\"1\"}},\"SearchableInput\":{\"type\":\"reactHoc\",\"name\":\"SearchableInput\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Searchable.map","function r(e){var t,f,n=\"\";if(\"string\"==typeof e||\"number\"==typeof e)n+=e;else if(\"object\"==typeof e)if(Array.isArray(e)){var o=e.length;for(t=0;t<o;t++)e[t]&&(f=r(e[t]))&&(n&&(n+=\" \"),n+=f)}else for(f in e)e[f]&&(n&&(n+=\" \"),n+=f);return n}function clsx(){for(var e,t,f=0,n=\"\",o=arguments.length;f<o;f++)(e=arguments[f])&&(t=r(e))&&(n&&(n+=\" \"),n+=t);return n}export{clsx,clsx as default};\n//# sourceMappingURL=clsx.mjs.map\n","/**\n * --------------------------------------------------------------------\n * Interface: Styles\n * --------------------------------------------------------------------\n * Distributed under the VIAL License:\n * https://www.abruptive.com/policies/vial\n *\n * Unauthorized access or use of this code will result in prosecution\n * according to the furthest extent of the law.\n *\n * © Abruptive LLC · All Rights Reserved\n * --------------------------------------------------------------------\n */import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{isFramer}from\"https://framer.com/m/Capsule-oSSG.js\";import clsx from\"https://ga.jspm.io/npm:clsx@2.1.1/dist/clsx.mjs\";/**\n * --------------------------------------------------------------------\n * Components\n * --------------------------------------------------------------------\n */const styles={fixed:/*#__PURE__*/_jsx(\"style\",{children:`\n                .fixed {\n                    width: 100% !important;\n                    height: 100% !important;\n                    position: fixed !important;\n                    opacity: 1 !important;\n                    z-index: 999999999;\n                    inset: 0;\n                    top: 0;\n                    left: 0;\n                    right: 0;\n                    bottom: 0;\n                    user-select: none;\n                }\n            `})};/**\n * --------------------------------------------------------------------\n * Overrides\n * --------------------------------------------------------------------\n *//**\n * Overrride used to make a component fixed to all sides.\n */export function Fixed(Component){if(isFramer)return props=>/*#__PURE__*/_jsx(Component,{...props});return props=>{return /*#__PURE__*/_jsxs(_Fragment,{children:[styles.fixed,/*#__PURE__*/_jsx(Component,{...props,className:clsx(props.className,\"fixed\")})]});};}/**\n * Overrride used to make a component fixed to all sides.\n */export function Disabled(Component){if(isFramer)return props=>/*#__PURE__*/_jsx(Component,{...props});return props=>{return /*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:\"auto\",pointerEvents:\"none\",opacity:.5,cursor:\"not-allowed\"},children:/*#__PURE__*/_jsx(Component,{...props})});};}/**\n * --------------------------------------------------------------------\n * Root\n * --------------------------------------------------------------------\n * @framerDisableUnlink\n */export default function Styles(Component){return({children,...props})=>{return /*#__PURE__*/_jsx(Component,{...props,children:children});};}\nexport const __FramerMetadata__ = {\"exports\":{\"Disabled\":{\"type\":\"reactHoc\",\"name\":\"Disabled\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"Styles\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"\"}},\"Fixed\":{\"type\":\"reactHoc\",\"name\":\"Fixed\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Styles.map","/**\n * --------------------------------------------------------------------\n * Ellipsis\n * --------------------------------------------------------------------\n * Distributed under the VIAL License:\n * https://www.abruptive.com/policies/vial\n *\n * Unauthorized access or use of this code will result in prosecution\n * according to the furthest extent of the law.\n *\n * © Abruptive LLC · All Rights Reserved\n * --------------------------------------------------------------------\n *//**\n * --------------------------------------------------------------------\n * Component\n * --------------------------------------------------------------------\n * @framerDisableUnlink\n */import{jsx as _jsx}from\"react/jsx-runtime\";export default function Ellipsis(){return /*#__PURE__*/_jsx(\"span\",{className:\"ellipsis\",style:{color:\"#fff\"},children:/*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:`\n\t\t\t.ellipsis::after {\n\t\t\t\tdisplay: inline-block;\n\t\t\t\toverflow: hidden;\n\t\t\t\tvertical-align: baseline;\n\t\t\t\tfont-weight: inherit;\n\t\t\t\tcolor: inherit;\n\t\t\t\tposition: absolute;\n\t\t\t\tcontent: '...';\n\t\t\t\twidth: 0;\n\t\t\t\tanimation: ellipsis steps(4, end) 900ms infinite;\n\t\t\t\twhite-space: nowrap;\n\t\t\t}\n\n\t\t\t@keyframes ellipsis {\n\t\t\t\tto {\n\t\t\t\t\twidth: 1.25em;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t@-webkit-keyframes ellipsis {\n\t\t\t\tto {\n\t\t\t\t\twidth: 1.25em;\n\t\t\t\t}\n\t\t\t}\n\t\t`}})});}\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Ellipsis\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Ellipsis.map","/**\n * @license\n * Copyright 2010-2021 Three.js Authors\n * SPDX-License-Identifier: MIT\n */\nconst e=\"136\";const t={LEFT:0,MIDDLE:1,RIGHT:2,ROTATE:0,DOLLY:1,PAN:2};const n={ROTATE:0,PAN:1,DOLLY_PAN:2,DOLLY_ROTATE:3};const r=0;const i=1;const s=2;const a=3;const o=0;const l=1;const c=2;const u=3;const h=0;const d=1;const p=2;const f=1;const m=2;const g=0;const y=1;const x=2;const b=3;const _=4;const M=5;const w=100;const S=101;const T=102;const E=103;const A=104;const L=200;const C=201;const R=202;const P=203;const I=204;const D=205;const B=206;const V=207;const N=208;const U=209;const z=210;const G=0;const F=1;const O=2;const H=3;const k=4;const W=5;const j=6;const q=7;const X=0;const J=1;const Y=2;const Z=0;const Q=1;const K=2;const $=3;const ee=4;const te=5;const ne=300;const re=301;const ie=302;const se=303;const ae=304;const oe=306;const le=307;const ce=1e3;const ue=1001;const he=1002;const de=1003;const pe=1004;const fe=1004;const me=1005;const ge=1005;const ye=1006;const ve=1007;const xe=1007;const be=1008;const _e=1008;const Me=1009;const we=1010;const Se=1011;const Te=1012;const Ee=1013;const Ae=1014;const Le=1015;const Ce=1016;const Re=1017;const Pe=1018;const Ie=1019;const De=1020;const Be=1021;const Ve=1022;const Ne=1023;const Ue=1024;const ze=1025;const Ge=1026;const Fe=1027;const Oe=1028;const He=1029;const ke=1030;const We=1031;const je=1032;const qe=1033;const Xe=33776;const Je=33777;const Ye=33778;const Ze=33779;const Qe=35840;const Ke=35841;const $e=35842;const et=35843;const tt=36196;const nt=37492;const rt=37496;const it=37808;const st=37809;const at=37810;const ot=37811;const lt=37812;const ct=37813;const ut=37814;const ht=37815;const dt=37816;const pt=37817;const ft=37818;const mt=37819;const gt=37820;const yt=37821;const vt=36492;const xt=37840;const bt=37841;const _t=37842;const Mt=37843;const wt=37844;const St=37845;const Tt=37846;const Et=37847;const At=37848;const Lt=37849;const Ct=37850;const Rt=37851;const Pt=37852;const It=37853;const Dt=2200;const Bt=2201;const Vt=2202;const Nt=2300;const Ut=2301;const zt=2302;const Gt=2400;const Ft=2401;const Ot=2402;const Ht=2500;const kt=2501;const Wt=0;const jt=1;const qt=2;const Xt=3e3;const Jt=3001;const Yt=3200;const Zt=3201;const Qt=0;const Kt=1;const $t=0;const en=7680;const tn=7681;const nn=7682;const rn=7683;const sn=34055;const an=34056;const on=5386;const ln=512;const cn=513;const un=514;const hn=515;const dn=516;const pn=517;const fn=518;const mn=519;const gn=35044;const yn=35048;const vn=35040;const xn=35045;const bn=35049;const _n=35041;const Mn=35046;const wn=35050;const Sn=35042;const Tn=\"100\";const En=\"300 es\";class EventDispatcher{addEventListener(e,t){void 0===this._listeners&&(this._listeners={});const n=this._listeners;void 0===n[e]&&(n[e]=[]);-1===n[e].indexOf(t)&&n[e].push(t)}hasEventListener(e,t){if(void 0===this._listeners)return false;const n=this._listeners;return void 0!==n[e]&&-1!==n[e].indexOf(t)}removeEventListener(e,t){if(void 0===this._listeners)return;const n=this._listeners;const r=n[e];if(void 0!==r){const e=r.indexOf(t);-1!==e&&r.splice(e,1)}}dispatchEvent(e){if(void 0===this._listeners)return;const t=this._listeners;const n=t[e.type];if(void 0!==n){e.target=this;const t=n.slice(0);for(let n=0,r=t.length;n<r;n++)t[n].call(this,e);e.target=null}}}const An=[];for(let e=0;e<256;e++)An[e]=(e<16?\"0\":\"\")+e.toString(16);let Ln=1234567;const Cn=Math.PI/180;const Rn=180/Math.PI;function generateUUID(){const e=4294967295*Math.random()|0;const t=4294967295*Math.random()|0;const n=4294967295*Math.random()|0;const r=4294967295*Math.random()|0;const i=An[255&e]+An[e>>8&255]+An[e>>16&255]+An[e>>24&255]+\"-\"+An[255&t]+An[t>>8&255]+\"-\"+An[t>>16&15|64]+An[t>>24&255]+\"-\"+An[63&n|128]+An[n>>8&255]+\"-\"+An[n>>16&255]+An[n>>24&255]+An[255&r]+An[r>>8&255]+An[r>>16&255]+An[r>>24&255];return i.toUpperCase()}function clamp(e,t,n){return Math.max(t,Math.min(n,e))}function euclideanModulo(e,t){return(e%t+t)%t}function mapLinear(e,t,n,r,i){return r+(e-t)*(i-r)/(n-t)}function inverseLerp(e,t,n){return e!==t?(n-e)/(t-e):0}function lerp(e,t,n){return(1-n)*e+n*t}function damp(e,t,n,r){return lerp(e,t,1-Math.exp(-n*r))}function pingpong(e,t=1){return t-Math.abs(euclideanModulo(e,2*t)-t)}function smoothstep(e,t,n){if(e<=t)return 0;if(e>=n)return 1;e=(e-t)/(n-t);return e*e*(3-2*e)}function smootherstep(e,t,n){if(e<=t)return 0;if(e>=n)return 1;e=(e-t)/(n-t);return e*e*e*(e*(6*e-15)+10)}function randInt(e,t){return e+Math.floor(Math.random()*(t-e+1))}function randFloat(e,t){return e+Math.random()*(t-e)}function randFloatSpread(e){return e*(.5-Math.random())}function seededRandom(e){void 0!==e&&(Ln=e%2147483647);Ln=16807*Ln%2147483647;return(Ln-1)/2147483646}function degToRad(e){return e*Cn}function radToDeg(e){return e*Rn}function isPowerOfTwo(e){return 0===(e&e-1)&&0!==e}function ceilPowerOfTwo(e){return Math.pow(2,Math.ceil(Math.log(e)/Math.LN2))}function floorPowerOfTwo(e){return Math.pow(2,Math.floor(Math.log(e)/Math.LN2))}function setQuaternionFromProperEuler(e,t,n,r,i){const s=Math.cos;const a=Math.sin;const o=s(n/2);const l=a(n/2);const c=s((t+r)/2);const u=a((t+r)/2);const h=s((t-r)/2);const d=a((t-r)/2);const p=s((r-t)/2);const f=a((r-t)/2);switch(i){case\"XYX\":e.set(o*u,l*h,l*d,o*c);break;case\"YZY\":e.set(l*d,o*u,l*h,o*c);break;case\"ZXZ\":e.set(l*h,l*d,o*u,o*c);break;case\"XZX\":e.set(o*u,l*f,l*p,o*c);break;case\"YXY\":e.set(l*p,o*u,l*f,o*c);break;case\"ZYZ\":e.set(l*f,l*p,o*u,o*c);break;default:console.warn(\"THREE.MathUtils: .setQuaternionFromProperEuler() encountered an unknown order: \"+i)}}var Pn=Object.freeze({__proto__:null,DEG2RAD:Cn,RAD2DEG:Rn,generateUUID:generateUUID,clamp:clamp,euclideanModulo:euclideanModulo,mapLinear:mapLinear,inverseLerp:inverseLerp,lerp:lerp,damp:damp,pingpong:pingpong,smoothstep:smoothstep,smootherstep:smootherstep,randInt:randInt,randFloat:randFloat,randFloatSpread:randFloatSpread,seededRandom:seededRandom,degToRad:degToRad,radToDeg:radToDeg,isPowerOfTwo:isPowerOfTwo,ceilPowerOfTwo:ceilPowerOfTwo,floorPowerOfTwo:floorPowerOfTwo,setQuaternionFromProperEuler:setQuaternionFromProperEuler});class Vector2{constructor(e=0,t=0){this.x=e;this.y=t}get width(){return this.x}set width(e){this.x=e}get height(){return this.y}set height(e){this.y=e}set(e,t){this.x=e;this.y=t;return this}setScalar(e){this.x=e;this.y=e;return this}setX(e){this.x=e;return this}setY(e){this.y=e;return this}setComponent(e,t){switch(e){case 0:this.x=t;break;case 1:this.y=t;break;default:throw new Error(\"index is out of range: \"+e)}return this}getComponent(e){switch(e){case 0:return this.x;case 1:return this.y;default:throw new Error(\"index is out of range: \"+e)}}clone(){return new this.constructor(this.x,this.y)}copy(e){this.x=e.x;this.y=e.y;return this}add(e,t){if(void 0!==t){console.warn(\"THREE.Vector2: .add() now only accepts one argument. Use .addVectors( a, b ) instead.\");return this.addVectors(e,t)}this.x+=e.x;this.y+=e.y;return this}addScalar(e){this.x+=e;this.y+=e;return this}addVectors(e,t){this.x=e.x+t.x;this.y=e.y+t.y;return this}addScaledVector(e,t){this.x+=e.x*t;this.y+=e.y*t;return this}sub(e,t){if(void 0!==t){console.warn(\"THREE.Vector2: .sub() now only accepts one argument. Use .subVectors( a, b ) instead.\");return this.subVectors(e,t)}this.x-=e.x;this.y-=e.y;return this}subScalar(e){this.x-=e;this.y-=e;return this}subVectors(e,t){this.x=e.x-t.x;this.y=e.y-t.y;return this}multiply(e){this.x*=e.x;this.y*=e.y;return this}multiplyScalar(e){this.x*=e;this.y*=e;return this}divide(e){this.x/=e.x;this.y/=e.y;return this}divideScalar(e){return this.multiplyScalar(1/e)}applyMatrix3(e){const t=this.x,n=this.y;const r=e.elements;this.x=r[0]*t+r[3]*n+r[6];this.y=r[1]*t+r[4]*n+r[7];return this}min(e){this.x=Math.min(this.x,e.x);this.y=Math.min(this.y,e.y);return this}max(e){this.x=Math.max(this.x,e.x);this.y=Math.max(this.y,e.y);return this}clamp(e,t){this.x=Math.max(e.x,Math.min(t.x,this.x));this.y=Math.max(e.y,Math.min(t.y,this.y));return this}clampScalar(e,t){this.x=Math.max(e,Math.min(t,this.x));this.y=Math.max(e,Math.min(t,this.y));return this}clampLength(e,t){const n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(e,Math.min(t,n)))}floor(){this.x=Math.floor(this.x);this.y=Math.floor(this.y);return this}ceil(){this.x=Math.ceil(this.x);this.y=Math.ceil(this.y);return this}round(){this.x=Math.round(this.x);this.y=Math.round(this.y);return this}roundToZero(){this.x=this.x<0?Math.ceil(this.x):Math.floor(this.x);this.y=this.y<0?Math.ceil(this.y):Math.floor(this.y);return this}negate(){this.x=-this.x;this.y=-this.y;return this}dot(e){return this.x*e.x+this.y*e.y}cross(e){return this.x*e.y-this.y*e.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(){const e=Math.atan2(-this.y,-this.x)+Math.PI;return e}distanceTo(e){return Math.sqrt(this.distanceToSquared(e))}distanceToSquared(e){const t=this.x-e.x,n=this.y-e.y;return t*t+n*n}manhattanDistanceTo(e){return Math.abs(this.x-e.x)+Math.abs(this.y-e.y)}setLength(e){return this.normalize().multiplyScalar(e)}lerp(e,t){this.x+=(e.x-this.x)*t;this.y+=(e.y-this.y)*t;return this}lerpVectors(e,t,n){this.x=e.x+(t.x-e.x)*n;this.y=e.y+(t.y-e.y)*n;return this}equals(e){return e.x===this.x&&e.y===this.y}fromArray(e,t=0){this.x=e[t];this.y=e[t+1];return this}toArray(e=[],t=0){e[t]=this.x;e[t+1]=this.y;return e}fromBufferAttribute(e,t,n){void 0!==n&&console.warn(\"THREE.Vector2: offset has been removed from .fromBufferAttribute().\");this.x=e.getX(t);this.y=e.getY(t);return this}rotateAround(e,t){const n=Math.cos(t),r=Math.sin(t);const i=this.x-e.x;const s=this.y-e.y;this.x=i*n-s*r+e.x;this.y=i*r+s*n+e.y;return this}random(){this.x=Math.random();this.y=Math.random();return this}*[Symbol.iterator](){yield this.x;yield this.y}}Vector2.prototype.isVector2=true;class Matrix3{constructor(){this.elements=[1,0,0,0,1,0,0,0,1];arguments.length>0&&console.error(\"THREE.Matrix3: the constructor no longer reads arguments. use .set() instead.\")}set(e,t,n,r,i,s,a,o,l){const c=this.elements;c[0]=e;c[1]=r;c[2]=a;c[3]=t;c[4]=i;c[5]=o;c[6]=n;c[7]=s;c[8]=l;return this}identity(){this.set(1,0,0,0,1,0,0,0,1);return this}copy(e){const t=this.elements;const n=e.elements;t[0]=n[0];t[1]=n[1];t[2]=n[2];t[3]=n[3];t[4]=n[4];t[5]=n[5];t[6]=n[6];t[7]=n[7];t[8]=n[8];return this}extractBasis(e,t,n){e.setFromMatrix3Column(this,0);t.setFromMatrix3Column(this,1);n.setFromMatrix3Column(this,2);return this}setFromMatrix4(e){const t=e.elements;this.set(t[0],t[4],t[8],t[1],t[5],t[9],t[2],t[6],t[10]);return this}multiply(e){return this.multiplyMatrices(this,e)}premultiply(e){return this.multiplyMatrices(e,this)}multiplyMatrices(e,t){const n=e.elements;const r=t.elements;const i=this.elements;const s=n[0],a=n[3],o=n[6];const l=n[1],c=n[4],u=n[7];const h=n[2],d=n[5],p=n[8];const f=r[0],m=r[3],g=r[6];const y=r[1],x=r[4],b=r[7];const _=r[2],M=r[5],w=r[8];i[0]=s*f+a*y+o*_;i[3]=s*m+a*x+o*M;i[6]=s*g+a*b+o*w;i[1]=l*f+c*y+u*_;i[4]=l*m+c*x+u*M;i[7]=l*g+c*b+u*w;i[2]=h*f+d*y+p*_;i[5]=h*m+d*x+p*M;i[8]=h*g+d*b+p*w;return this}multiplyScalar(e){const t=this.elements;t[0]*=e;t[3]*=e;t[6]*=e;t[1]*=e;t[4]*=e;t[7]*=e;t[2]*=e;t[5]*=e;t[8]*=e;return this}determinant(){const e=this.elements;const t=e[0],n=e[1],r=e[2],i=e[3],s=e[4],a=e[5],o=e[6],l=e[7],c=e[8];return t*s*c-t*a*l-n*i*c+n*a*o+r*i*l-r*s*o}invert(){const e=this.elements,t=e[0],n=e[1],r=e[2],i=e[3],s=e[4],a=e[5],o=e[6],l=e[7],c=e[8],u=c*s-a*l,h=a*o-c*i,d=l*i-s*o,p=t*u+n*h+r*d;if(0===p)return this.set(0,0,0,0,0,0,0,0,0);const f=1/p;e[0]=u*f;e[1]=(r*l-c*n)*f;e[2]=(a*n-r*s)*f;e[3]=h*f;e[4]=(c*t-r*o)*f;e[5]=(r*i-a*t)*f;e[6]=d*f;e[7]=(n*o-l*t)*f;e[8]=(s*t-n*i)*f;return this}transpose(){let e;const t=this.elements;e=t[1];t[1]=t[3];t[3]=e;e=t[2];t[2]=t[6];t[6]=e;e=t[5];t[5]=t[7];t[7]=e;return this}getNormalMatrix(e){return this.setFromMatrix4(e).invert().transpose()}transposeIntoArray(e){const t=this.elements;e[0]=t[0];e[1]=t[3];e[2]=t[6];e[3]=t[1];e[4]=t[4];e[5]=t[7];e[6]=t[2];e[7]=t[5];e[8]=t[8];return this}setUvTransform(e,t,n,r,i,s,a){const o=Math.cos(i);const l=Math.sin(i);this.set(n*o,n*l,-n*(o*s+l*a)+s+e,-r*l,r*o,-r*(-l*s+o*a)+a+t,0,0,1);return this}scale(e,t){const n=this.elements;n[0]*=e;n[3]*=e;n[6]*=e;n[1]*=t;n[4]*=t;n[7]*=t;return this}rotate(e){const t=Math.cos(e);const n=Math.sin(e);const r=this.elements;const i=r[0],s=r[3],a=r[6];const o=r[1],l=r[4],c=r[7];r[0]=t*i+n*o;r[3]=t*s+n*l;r[6]=t*a+n*c;r[1]=-n*i+t*o;r[4]=-n*s+t*l;r[7]=-n*a+t*c;return this}translate(e,t){const n=this.elements;n[0]+=e*n[2];n[3]+=e*n[5];n[6]+=e*n[8];n[1]+=t*n[2];n[4]+=t*n[5];n[7]+=t*n[8];return this}equals(e){const t=this.elements;const n=e.elements;for(let e=0;e<9;e++)if(t[e]!==n[e])return false;return true}fromArray(e,t=0){for(let n=0;n<9;n++)this.elements[n]=e[n+t];return this}toArray(e=[],t=0){const n=this.elements;e[t]=n[0];e[t+1]=n[1];e[t+2]=n[2];e[t+3]=n[3];e[t+4]=n[4];e[t+5]=n[5];e[t+6]=n[6];e[t+7]=n[7];e[t+8]=n[8];return e}clone(){return(new this.constructor).fromArray(this.elements)}}Matrix3.prototype.isMatrix3=true;function arrayMax(e){if(0===e.length)return-Infinity;let t=e[0];for(let n=1,r=e.length;n<r;++n)e[n]>t&&(t=e[n]);return t}const In={Int8Array:Int8Array,Uint8Array:Uint8Array,Uint8ClampedArray:Uint8ClampedArray,Int16Array:Int16Array,Uint16Array:Uint16Array,Int32Array:Int32Array,Uint32Array:Uint32Array,Float32Array:Float32Array,Float64Array:Float64Array};function getTypedArray(e,t){return new In[e](t)}function createElementNS(e){return document.createElementNS(\"http://www.w3.org/1999/xhtml\",e)}let Dn;class ImageUtils{static getDataURL(e){if(/^data:/i.test(e.src))return e.src;if(\"undefined\"==typeof HTMLCanvasElement)return e.src;let t;if(e instanceof HTMLCanvasElement)t=e;else{void 0===Dn&&(Dn=createElementNS(\"canvas\"));Dn.width=e.width;Dn.height=e.height;const n=Dn.getContext(\"2d\");e instanceof ImageData?n.putImageData(e,0,0):n.drawImage(e,0,0,e.width,e.height);t=Dn}if(t.width>2048||t.height>2048){console.warn(\"THREE.ImageUtils.getDataURL: Image converted to jpg for performance reasons\",e);return t.toDataURL(\"image/jpeg\",.6)}return t.toDataURL(\"image/png\")}}let Bn=0;class Texture extends EventDispatcher{constructor(e=Texture.DEFAULT_IMAGE,t=Texture.DEFAULT_MAPPING,n=ue,r=ue,i=ye,s=be,a=Ne,o=Me,l=1,c=Xt){super();Object.defineProperty(this,\"id\",{value:Bn++});this.uuid=generateUUID();this.name=\"\";this.image=e;this.mipmaps=[];this.mapping=t;this.wrapS=n;this.wrapT=r;this.magFilter=i;this.minFilter=s;this.anisotropy=l;this.format=a;this.internalFormat=null;this.type=o;this.offset=new Vector2(0,0);this.repeat=new Vector2(1,1);this.center=new Vector2(0,0);this.rotation=0;this.matrixAutoUpdate=true;this.matrix=new Matrix3;this.generateMipmaps=true;this.premultiplyAlpha=false;this.flipY=true;this.unpackAlignment=4;this.encoding=c;this.userData={};this.version=0;this.onUpdate=null;this.isRenderTargetTexture=false}updateMatrix(){this.matrix.setUvTransform(this.offset.x,this.offset.y,this.repeat.x,this.repeat.y,this.rotation,this.center.x,this.center.y)}clone(){return(new this.constructor).copy(this)}copy(e){this.name=e.name;this.image=e.image;this.mipmaps=e.mipmaps.slice(0);this.mapping=e.mapping;this.wrapS=e.wrapS;this.wrapT=e.wrapT;this.magFilter=e.magFilter;this.minFilter=e.minFilter;this.anisotropy=e.anisotropy;this.format=e.format;this.internalFormat=e.internalFormat;this.type=e.type;this.offset.copy(e.offset);this.repeat.copy(e.repeat);this.center.copy(e.center);this.rotation=e.rotation;this.matrixAutoUpdate=e.matrixAutoUpdate;this.matrix.copy(e.matrix);this.generateMipmaps=e.generateMipmaps;this.premultiplyAlpha=e.premultiplyAlpha;this.flipY=e.flipY;this.unpackAlignment=e.unpackAlignment;this.encoding=e.encoding;this.userData=JSON.parse(JSON.stringify(e.userData));return this}toJSON(e){const t=void 0===e||\"string\"===typeof e;if(!t&&void 0!==e.textures[this.uuid])return e.textures[this.uuid];const n={metadata:{version:4.5,type:\"Texture\",generator:\"Texture.toJSON\"},uuid:this.uuid,name:this.name,mapping:this.mapping,repeat:[this.repeat.x,this.repeat.y],offset:[this.offset.x,this.offset.y],center:[this.center.x,this.center.y],rotation:this.rotation,wrap:[this.wrapS,this.wrapT],format:this.format,type:this.type,encoding:this.encoding,minFilter:this.minFilter,magFilter:this.magFilter,anisotropy:this.anisotropy,flipY:this.flipY,premultiplyAlpha:this.premultiplyAlpha,unpackAlignment:this.unpackAlignment};if(void 0!==this.image){const r=this.image;void 0===r.uuid&&(r.uuid=generateUUID());if(!t&&void 0===e.images[r.uuid]){let t;if(Array.isArray(r)){t=[];for(let e=0,n=r.length;e<n;e++)r[e].isDataTexture?t.push(serializeImage(r[e].image)):t.push(serializeImage(r[e]))}else t=serializeImage(r);e.images[r.uuid]={uuid:r.uuid,url:t}}n.image=r.uuid}\"{}\"!==JSON.stringify(this.userData)&&(n.userData=this.userData);t||(e.textures[this.uuid]=n);return n}dispose(){this.dispatchEvent({type:\"dispose\"})}transformUv(e){if(this.mapping!==ne)return e;e.applyMatrix3(this.matrix);if(e.x<0||e.x>1)switch(this.wrapS){case ce:e.x=e.x-Math.floor(e.x);break;case ue:e.x=e.x<0?0:1;break;case he:1===Math.abs(Math.floor(e.x)%2)?e.x=Math.ceil(e.x)-e.x:e.x=e.x-Math.floor(e.x);break}if(e.y<0||e.y>1)switch(this.wrapT){case ce:e.y=e.y-Math.floor(e.y);break;case ue:e.y=e.y<0?0:1;break;case he:1===Math.abs(Math.floor(e.y)%2)?e.y=Math.ceil(e.y)-e.y:e.y=e.y-Math.floor(e.y);break}this.flipY&&(e.y=1-e.y);return e}set needsUpdate(e){true===e&&this.version++}}Texture.DEFAULT_IMAGE=void 0;Texture.DEFAULT_MAPPING=ne;Texture.prototype.isTexture=true;function serializeImage(e){if(\"undefined\"!==typeof HTMLImageElement&&e instanceof HTMLImageElement||\"undefined\"!==typeof HTMLCanvasElement&&e instanceof HTMLCanvasElement||\"undefined\"!==typeof ImageBitmap&&e instanceof ImageBitmap)return ImageUtils.getDataURL(e);if(e.data)return{data:Array.prototype.slice.call(e.data),width:e.width,height:e.height,type:e.data.constructor.name};console.warn(\"THREE.Texture: Unable to serialize Texture.\");return{}}class Vector4{constructor(e=0,t=0,n=0,r=1){this.x=e;this.y=t;this.z=n;this.w=r}get width(){return this.z}set width(e){this.z=e}get height(){return this.w}set height(e){this.w=e}set(e,t,n,r){this.x=e;this.y=t;this.z=n;this.w=r;return this}setScalar(e){this.x=e;this.y=e;this.z=e;this.w=e;return this}setX(e){this.x=e;return this}setY(e){this.y=e;return this}setZ(e){this.z=e;return this}setW(e){this.w=e;return this}setComponent(e,t){switch(e){case 0:this.x=t;break;case 1:this.y=t;break;case 2:this.z=t;break;case 3:this.w=t;break;default:throw new Error(\"index is out of range: \"+e)}return this}getComponent(e){switch(e){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: \"+e)}}clone(){return new this.constructor(this.x,this.y,this.z,this.w)}copy(e){this.x=e.x;this.y=e.y;this.z=e.z;this.w=void 0!==e.w?e.w:1;return this}add(e,t){if(void 0!==t){console.warn(\"THREE.Vector4: .add() now only accepts one argument. Use .addVectors( a, b ) instead.\");return this.addVectors(e,t)}this.x+=e.x;this.y+=e.y;this.z+=e.z;this.w+=e.w;return this}addScalar(e){this.x+=e;this.y+=e;this.z+=e;this.w+=e;return this}addVectors(e,t){this.x=e.x+t.x;this.y=e.y+t.y;this.z=e.z+t.z;this.w=e.w+t.w;return this}addScaledVector(e,t){this.x+=e.x*t;this.y+=e.y*t;this.z+=e.z*t;this.w+=e.w*t;return this}sub(e,t){if(void 0!==t){console.warn(\"THREE.Vector4: .sub() now only accepts one argument. Use .subVectors( a, b ) instead.\");return this.subVectors(e,t)}this.x-=e.x;this.y-=e.y;this.z-=e.z;this.w-=e.w;return this}subScalar(e){this.x-=e;this.y-=e;this.z-=e;this.w-=e;return this}subVectors(e,t){this.x=e.x-t.x;this.y=e.y-t.y;this.z=e.z-t.z;this.w=e.w-t.w;return this}multiply(e){this.x*=e.x;this.y*=e.y;this.z*=e.z;this.w*=e.w;return this}multiplyScalar(e){this.x*=e;this.y*=e;this.z*=e;this.w*=e;return this}applyMatrix4(e){const t=this.x,n=this.y,r=this.z,i=this.w;const s=e.elements;this.x=s[0]*t+s[4]*n+s[8]*r+s[12]*i;this.y=s[1]*t+s[5]*n+s[9]*r+s[13]*i;this.z=s[2]*t+s[6]*n+s[10]*r+s[14]*i;this.w=s[3]*t+s[7]*n+s[11]*r+s[15]*i;return this}divideScalar(e){return this.multiplyScalar(1/e)}setAxisAngleFromQuaternion(e){this.w=2*Math.acos(e.w);const t=Math.sqrt(1-e.w*e.w);if(t<1e-4){this.x=1;this.y=0;this.z=0}else{this.x=e.x/t;this.y=e.y/t;this.z=e.z/t}return this}setAxisAngleFromRotationMatrix(e){let t,n,r,i;const s=.01,a=.1,o=e.elements,l=o[0],c=o[4],u=o[8],h=o[1],d=o[5],p=o[9],f=o[2],m=o[6],g=o[10];if(Math.abs(c-h)<s&&Math.abs(u-f)<s&&Math.abs(p-m)<s){if(Math.abs(c+h)<a&&Math.abs(u+f)<a&&Math.abs(p+m)<a&&Math.abs(l+d+g-3)<a){this.set(1,0,0,0);return this}t=Math.PI;const e=(l+1)/2;const o=(d+1)/2;const y=(g+1)/2;const x=(c+h)/4;const b=(u+f)/4;const _=(p+m)/4;if(e>o&&e>y)if(e<s){n=0;r=.707106781;i=.707106781}else{n=Math.sqrt(e);r=x/n;i=b/n}else if(o>y)if(o<s){n=.707106781;r=0;i=.707106781}else{r=Math.sqrt(o);n=x/r;i=_/r}else if(y<s){n=.707106781;r=.707106781;i=0}else{i=Math.sqrt(y);n=b/i;r=_/i}this.set(n,r,i,t);return this}let y=Math.sqrt((m-p)*(m-p)+(u-f)*(u-f)+(h-c)*(h-c));Math.abs(y)<.001&&(y=1);this.x=(m-p)/y;this.y=(u-f)/y;this.z=(h-c)/y;this.w=Math.acos((l+d+g-1)/2);return this}min(e){this.x=Math.min(this.x,e.x);this.y=Math.min(this.y,e.y);this.z=Math.min(this.z,e.z);this.w=Math.min(this.w,e.w);return this}max(e){this.x=Math.max(this.x,e.x);this.y=Math.max(this.y,e.y);this.z=Math.max(this.z,e.z);this.w=Math.max(this.w,e.w);return this}clamp(e,t){this.x=Math.max(e.x,Math.min(t.x,this.x));this.y=Math.max(e.y,Math.min(t.y,this.y));this.z=Math.max(e.z,Math.min(t.z,this.z));this.w=Math.max(e.w,Math.min(t.w,this.w));return this}clampScalar(e,t){this.x=Math.max(e,Math.min(t,this.x));this.y=Math.max(e,Math.min(t,this.y));this.z=Math.max(e,Math.min(t,this.z));this.w=Math.max(e,Math.min(t,this.w));return this}clampLength(e,t){const n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(e,Math.min(t,n)))}floor(){this.x=Math.floor(this.x);this.y=Math.floor(this.y);this.z=Math.floor(this.z);this.w=Math.floor(this.w);return this}ceil(){this.x=Math.ceil(this.x);this.y=Math.ceil(this.y);this.z=Math.ceil(this.z);this.w=Math.ceil(this.w);return this}round(){this.x=Math.round(this.x);this.y=Math.round(this.y);this.z=Math.round(this.z);this.w=Math.round(this.w);return this}roundToZero(){this.x=this.x<0?Math.ceil(this.x):Math.floor(this.x);this.y=this.y<0?Math.ceil(this.y):Math.floor(this.y);this.z=this.z<0?Math.ceil(this.z):Math.floor(this.z);this.w=this.w<0?Math.ceil(this.w):Math.floor(this.w);return this}negate(){this.x=-this.x;this.y=-this.y;this.z=-this.z;this.w=-this.w;return this}dot(e){return this.x*e.x+this.y*e.y+this.z*e.z+this.w*e.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(e){return this.normalize().multiplyScalar(e)}lerp(e,t){this.x+=(e.x-this.x)*t;this.y+=(e.y-this.y)*t;this.z+=(e.z-this.z)*t;this.w+=(e.w-this.w)*t;return this}lerpVectors(e,t,n){this.x=e.x+(t.x-e.x)*n;this.y=e.y+(t.y-e.y)*n;this.z=e.z+(t.z-e.z)*n;this.w=e.w+(t.w-e.w)*n;return this}equals(e){return e.x===this.x&&e.y===this.y&&e.z===this.z&&e.w===this.w}fromArray(e,t=0){this.x=e[t];this.y=e[t+1];this.z=e[t+2];this.w=e[t+3];return this}toArray(e=[],t=0){e[t]=this.x;e[t+1]=this.y;e[t+2]=this.z;e[t+3]=this.w;return e}fromBufferAttribute(e,t,n){void 0!==n&&console.warn(\"THREE.Vector4: offset has been removed from .fromBufferAttribute().\");this.x=e.getX(t);this.y=e.getY(t);this.z=e.getZ(t);this.w=e.getW(t);return this}random(){this.x=Math.random();this.y=Math.random();this.z=Math.random();this.w=Math.random();return this}*[Symbol.iterator](){yield this.x;yield this.y;yield this.z;yield this.w}}Vector4.prototype.isVector4=true;class WebGLRenderTarget extends EventDispatcher{constructor(e,t,n={}){super();this.width=e;this.height=t;this.depth=1;this.scissor=new Vector4(0,0,e,t);this.scissorTest=false;this.viewport=new Vector4(0,0,e,t);this.texture=new Texture(void 0,n.mapping,n.wrapS,n.wrapT,n.magFilter,n.minFilter,n.format,n.type,n.anisotropy,n.encoding);this.texture.isRenderTargetTexture=true;this.texture.image={width:e,height:t,depth:1};this.texture.generateMipmaps=void 0!==n.generateMipmaps&&n.generateMipmaps;this.texture.internalFormat=void 0!==n.internalFormat?n.internalFormat:null;this.texture.minFilter=void 0!==n.minFilter?n.minFilter:ye;this.depthBuffer=void 0===n.depthBuffer||n.depthBuffer;this.stencilBuffer=void 0!==n.stencilBuffer&&n.stencilBuffer;this.depthTexture=void 0!==n.depthTexture?n.depthTexture:null}setTexture(e){e.image={width:this.width,height:this.height,depth:this.depth};this.texture=e}setSize(e,t,n=1){if(this.width!==e||this.height!==t||this.depth!==n){this.width=e;this.height=t;this.depth=n;this.texture.image.width=e;this.texture.image.height=t;this.texture.image.depth=n;this.dispose()}this.viewport.set(0,0,e,t);this.scissor.set(0,0,e,t)}clone(){return(new this.constructor).copy(this)}copy(e){this.width=e.width;this.height=e.height;this.depth=e.depth;this.viewport.copy(e.viewport);this.texture=e.texture.clone();this.texture.image={...this.texture.image};this.depthBuffer=e.depthBuffer;this.stencilBuffer=e.stencilBuffer;this.depthTexture=e.depthTexture;return this}dispose(){this.dispatchEvent({type:\"dispose\"})}}WebGLRenderTarget.prototype.isWebGLRenderTarget=true;class WebGLMultipleRenderTargets extends WebGLRenderTarget{constructor(e,t,n){super(e,t);const r=this.texture;this.texture=[];for(let e=0;e<n;e++)this.texture[e]=r.clone()}setSize(e,t,n=1){if(this.width!==e||this.height!==t||this.depth!==n){this.width=e;this.height=t;this.depth=n;for(let r=0,i=this.texture.length;r<i;r++){this.texture[r].image.width=e;this.texture[r].image.height=t;this.texture[r].image.depth=n}this.dispose()}this.viewport.set(0,0,e,t);this.scissor.set(0,0,e,t);return this}copy(e){this.dispose();this.width=e.width;this.height=e.height;this.depth=e.depth;this.viewport.set(0,0,this.width,this.height);this.scissor.set(0,0,this.width,this.height);this.depthBuffer=e.depthBuffer;this.stencilBuffer=e.stencilBuffer;this.depthTexture=e.depthTexture;this.texture.length=0;for(let t=0,n=e.texture.length;t<n;t++)this.texture[t]=e.texture[t].clone();return this}}WebGLMultipleRenderTargets.prototype.isWebGLMultipleRenderTargets=true;class WebGLMultisampleRenderTarget extends WebGLRenderTarget{constructor(e,t,n={}){super(e,t,n);this.samples=4;this.ignoreDepthForMultisampleCopy=void 0===n.ignoreDepth||n.ignoreDepth;this.useRenderToTexture=void 0!==n.useRenderToTexture&&n.useRenderToTexture;this.useRenderbuffer=false===this.useRenderToTexture}copy(e){super.copy.call(this,e);this.samples=e.samples;this.useRenderToTexture=e.useRenderToTexture;this.useRenderbuffer=e.useRenderbuffer;return this}}WebGLMultisampleRenderTarget.prototype.isWebGLMultisampleRenderTarget=true;class Quaternion{constructor(e=0,t=0,n=0,r=1){this._x=e;this._y=t;this._z=n;this._w=r}static slerp(e,t,n,r){console.warn(\"THREE.Quaternion: Static .slerp() has been deprecated. Use qm.slerpQuaternions( qa, qb, t ) instead.\");return n.slerpQuaternions(e,t,r)}static slerpFlat(e,t,n,r,i,s,a){let o=n[r+0],l=n[r+1],c=n[r+2],u=n[r+3];const h=i[s+0],d=i[s+1],p=i[s+2],f=i[s+3];if(0!==a)if(1!==a){if(u!==f||o!==h||l!==d||c!==p){let e=1-a;const t=o*h+l*d+c*p+u*f,n=t>=0?1:-1,r=1-t*t;if(r>Number.EPSILON){const i=Math.sqrt(r),s=Math.atan2(i,t*n);e=Math.sin(e*s)/i;a=Math.sin(a*s)/i}const i=a*n;o=o*e+h*i;l=l*e+d*i;c=c*e+p*i;u=u*e+f*i;if(e===1-a){const e=1/Math.sqrt(o*o+l*l+c*c+u*u);o*=e;l*=e;c*=e;u*=e}}e[t]=o;e[t+1]=l;e[t+2]=c;e[t+3]=u}else{e[t+0]=h;e[t+1]=d;e[t+2]=p;e[t+3]=f}else{e[t+0]=o;e[t+1]=l;e[t+2]=c;e[t+3]=u}}static multiplyQuaternionsFlat(e,t,n,r,i,s){const a=n[r];const o=n[r+1];const l=n[r+2];const c=n[r+3];const u=i[s];const h=i[s+1];const d=i[s+2];const p=i[s+3];e[t]=a*p+c*u+o*d-l*h;e[t+1]=o*p+c*h+l*u-a*d;e[t+2]=l*p+c*d+a*h-o*u;e[t+3]=c*p-a*u-o*h-l*d;return e}get x(){return this._x}set x(e){this._x=e;this._onChangeCallback()}get y(){return this._y}set y(e){this._y=e;this._onChangeCallback()}get z(){return this._z}set z(e){this._z=e;this._onChangeCallback()}get w(){return this._w}set w(e){this._w=e;this._onChangeCallback()}set(e,t,n,r){this._x=e;this._y=t;this._z=n;this._w=r;this._onChangeCallback();return this}clone(){return new this.constructor(this._x,this._y,this._z,this._w)}copy(e){this._x=e.x;this._y=e.y;this._z=e.z;this._w=e.w;this._onChangeCallback();return this}setFromEuler(e,t){if(!(e&&e.isEuler))throw new Error(\"THREE.Quaternion: .setFromEuler() now expects an Euler rotation rather than a Vector3 and order.\");const n=e._x,r=e._y,i=e._z,s=e._order;const a=Math.cos;const o=Math.sin;const l=a(n/2);const c=a(r/2);const u=a(i/2);const h=o(n/2);const d=o(r/2);const p=o(i/2);switch(s){case\"XYZ\":this._x=h*c*u+l*d*p;this._y=l*d*u-h*c*p;this._z=l*c*p+h*d*u;this._w=l*c*u-h*d*p;break;case\"YXZ\":this._x=h*c*u+l*d*p;this._y=l*d*u-h*c*p;this._z=l*c*p-h*d*u;this._w=l*c*u+h*d*p;break;case\"ZXY\":this._x=h*c*u-l*d*p;this._y=l*d*u+h*c*p;this._z=l*c*p+h*d*u;this._w=l*c*u-h*d*p;break;case\"ZYX\":this._x=h*c*u-l*d*p;this._y=l*d*u+h*c*p;this._z=l*c*p-h*d*u;this._w=l*c*u+h*d*p;break;case\"YZX\":this._x=h*c*u+l*d*p;this._y=l*d*u+h*c*p;this._z=l*c*p-h*d*u;this._w=l*c*u-h*d*p;break;case\"XZY\":this._x=h*c*u-l*d*p;this._y=l*d*u-h*c*p;this._z=l*c*p+h*d*u;this._w=l*c*u+h*d*p;break;default:console.warn(\"THREE.Quaternion: .setFromEuler() encountered an unknown order: \"+s)}false!==t&&this._onChangeCallback();return this}setFromAxisAngle(e,t){const n=t/2,r=Math.sin(n);this._x=e.x*r;this._y=e.y*r;this._z=e.z*r;this._w=Math.cos(n);this._onChangeCallback();return this}setFromRotationMatrix(e){const t=e.elements,n=t[0],r=t[4],i=t[8],s=t[1],a=t[5],o=t[9],l=t[2],c=t[6],u=t[10],h=n+a+u;if(h>0){const e=.5/Math.sqrt(h+1);this._w=.25/e;this._x=(c-o)*e;this._y=(i-l)*e;this._z=(s-r)*e}else if(n>a&&n>u){const e=2*Math.sqrt(1+n-a-u);this._w=(c-o)/e;this._x=.25*e;this._y=(r+s)/e;this._z=(i+l)/e}else if(a>u){const e=2*Math.sqrt(1+a-n-u);this._w=(i-l)/e;this._x=(r+s)/e;this._y=.25*e;this._z=(o+c)/e}else{const e=2*Math.sqrt(1+u-n-a);this._w=(s-r)/e;this._x=(i+l)/e;this._y=(o+c)/e;this._z=.25*e}this._onChangeCallback();return this}setFromUnitVectors(e,t){let n=e.dot(t)+1;if(n<Number.EPSILON){n=0;if(Math.abs(e.x)>Math.abs(e.z)){this._x=-e.y;this._y=e.x;this._z=0;this._w=n}else{this._x=0;this._y=-e.z;this._z=e.y;this._w=n}}else{this._x=e.y*t.z-e.z*t.y;this._y=e.z*t.x-e.x*t.z;this._z=e.x*t.y-e.y*t.x;this._w=n}return this.normalize()}angleTo(e){return 2*Math.acos(Math.abs(clamp(this.dot(e),-1,1)))}rotateTowards(e,t){const n=this.angleTo(e);if(0===n)return this;const r=Math.min(1,t/n);this.slerp(e,r);return this}identity(){return this.set(0,0,0,1)}invert(){return this.conjugate()}conjugate(){this._x*=-1;this._y*=-1;this._z*=-1;this._onChangeCallback();return this}dot(e){return this._x*e._x+this._y*e._y+this._z*e._z+this._w*e._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 e=this.length();if(0===e){this._x=0;this._y=0;this._z=0;this._w=1}else{e=1/e;this._x=this._x*e;this._y=this._y*e;this._z=this._z*e;this._w=this._w*e}this._onChangeCallback();return this}multiply(e,t){if(void 0!==t){console.warn(\"THREE.Quaternion: .multiply() now only accepts one argument. Use .multiplyQuaternions( a, b ) instead.\");return this.multiplyQuaternions(e,t)}return this.multiplyQuaternions(this,e)}premultiply(e){return this.multiplyQuaternions(e,this)}multiplyQuaternions(e,t){const n=e._x,r=e._y,i=e._z,s=e._w;const a=t._x,o=t._y,l=t._z,c=t._w;this._x=n*c+s*a+r*l-i*o;this._y=r*c+s*o+i*a-n*l;this._z=i*c+s*l+n*o-r*a;this._w=s*c-n*a-r*o-i*l;this._onChangeCallback();return this}slerp(e,t){if(0===t)return this;if(1===t)return this.copy(e);const n=this._x,r=this._y,i=this._z,s=this._w;let a=s*e._w+n*e._x+r*e._y+i*e._z;if(a<0){this._w=-e._w;this._x=-e._x;this._y=-e._y;this._z=-e._z;a=-a}else this.copy(e);if(a>=1){this._w=s;this._x=n;this._y=r;this._z=i;return this}const o=1-a*a;if(o<=Number.EPSILON){const e=1-t;this._w=e*s+t*this._w;this._x=e*n+t*this._x;this._y=e*r+t*this._y;this._z=e*i+t*this._z;this.normalize();this._onChangeCallback();return this}const l=Math.sqrt(o);const c=Math.atan2(l,a);const u=Math.sin((1-t)*c)/l,h=Math.sin(t*c)/l;this._w=s*u+this._w*h;this._x=n*u+this._x*h;this._y=r*u+this._y*h;this._z=i*u+this._z*h;this._onChangeCallback();return this}slerpQuaternions(e,t,n){this.copy(e).slerp(t,n)}random(){const e=Math.random();const t=Math.sqrt(1-e);const n=Math.sqrt(e);const r=2*Math.PI*Math.random();const i=2*Math.PI*Math.random();return this.set(t*Math.cos(r),n*Math.sin(i),n*Math.cos(i),t*Math.sin(r))}equals(e){return e._x===this._x&&e._y===this._y&&e._z===this._z&&e._w===this._w}fromArray(e,t=0){this._x=e[t];this._y=e[t+1];this._z=e[t+2];this._w=e[t+3];this._onChangeCallback();return this}toArray(e=[],t=0){e[t]=this._x;e[t+1]=this._y;e[t+2]=this._z;e[t+3]=this._w;return e}fromBufferAttribute(e,t){this._x=e.getX(t);this._y=e.getY(t);this._z=e.getZ(t);this._w=e.getW(t);return this}_onChange(e){this._onChangeCallback=e;return this}_onChangeCallback(){}}Quaternion.prototype.isQuaternion=true;class Vector3{constructor(e=0,t=0,n=0){this.x=e;this.y=t;this.z=n}set(e,t,n){void 0===n&&(n=this.z);this.x=e;this.y=t;this.z=n;return this}setScalar(e){this.x=e;this.y=e;this.z=e;return this}setX(e){this.x=e;return this}setY(e){this.y=e;return this}setZ(e){this.z=e;return this}setComponent(e,t){switch(e){case 0:this.x=t;break;case 1:this.y=t;break;case 2:this.z=t;break;default:throw new Error(\"index is out of range: \"+e)}return this}getComponent(e){switch(e){case 0:return this.x;case 1:return this.y;case 2:return this.z;default:throw new Error(\"index is out of range: \"+e)}}clone(){return new this.constructor(this.x,this.y,this.z)}copy(e){this.x=e.x;this.y=e.y;this.z=e.z;return this}add(e,t){if(void 0!==t){console.warn(\"THREE.Vector3: .add() now only accepts one argument. Use .addVectors( a, b ) instead.\");return this.addVectors(e,t)}this.x+=e.x;this.y+=e.y;this.z+=e.z;return this}addScalar(e){this.x+=e;this.y+=e;this.z+=e;return this}addVectors(e,t){this.x=e.x+t.x;this.y=e.y+t.y;this.z=e.z+t.z;return this}addScaledVector(e,t){this.x+=e.x*t;this.y+=e.y*t;this.z+=e.z*t;return this}sub(e,t){if(void 0!==t){console.warn(\"THREE.Vector3: .sub() now only accepts one argument. Use .subVectors( a, b ) instead.\");return this.subVectors(e,t)}this.x-=e.x;this.y-=e.y;this.z-=e.z;return this}subScalar(e){this.x-=e;this.y-=e;this.z-=e;return this}subVectors(e,t){this.x=e.x-t.x;this.y=e.y-t.y;this.z=e.z-t.z;return this}multiply(e,t){if(void 0!==t){console.warn(\"THREE.Vector3: .multiply() now only accepts one argument. Use .multiplyVectors( a, b ) instead.\");return this.multiplyVectors(e,t)}this.x*=e.x;this.y*=e.y;this.z*=e.z;return this}multiplyScalar(e){this.x*=e;this.y*=e;this.z*=e;return this}multiplyVectors(e,t){this.x=e.x*t.x;this.y=e.y*t.y;this.z=e.z*t.z;return this}applyEuler(e){e&&e.isEuler||console.error(\"THREE.Vector3: .applyEuler() now expects an Euler rotation rather than a Vector3 and order.\");return this.applyQuaternion(Nn.setFromEuler(e))}applyAxisAngle(e,t){return this.applyQuaternion(Nn.setFromAxisAngle(e,t))}applyMatrix3(e){const t=this.x,n=this.y,r=this.z;const i=e.elements;this.x=i[0]*t+i[3]*n+i[6]*r;this.y=i[1]*t+i[4]*n+i[7]*r;this.z=i[2]*t+i[5]*n+i[8]*r;return this}applyNormalMatrix(e){return this.applyMatrix3(e).normalize()}applyMatrix4(e){const t=this.x,n=this.y,r=this.z;const i=e.elements;const s=1/(i[3]*t+i[7]*n+i[11]*r+i[15]);this.x=(i[0]*t+i[4]*n+i[8]*r+i[12])*s;this.y=(i[1]*t+i[5]*n+i[9]*r+i[13])*s;this.z=(i[2]*t+i[6]*n+i[10]*r+i[14])*s;return this}applyQuaternion(e){const t=this.x,n=this.y,r=this.z;const i=e.x,s=e.y,a=e.z,o=e.w;const l=o*t+s*r-a*n;const c=o*n+a*t-i*r;const u=o*r+i*n-s*t;const h=-i*t-s*n-a*r;this.x=l*o+h*-i+c*-a-u*-s;this.y=c*o+h*-s+u*-i-l*-a;this.z=u*o+h*-a+l*-s-c*-i;return this}project(e){return this.applyMatrix4(e.matrixWorldInverse).applyMatrix4(e.projectionMatrix)}unproject(e){return this.applyMatrix4(e.projectionMatrixInverse).applyMatrix4(e.matrixWorld)}transformDirection(e){const t=this.x,n=this.y,r=this.z;const i=e.elements;this.x=i[0]*t+i[4]*n+i[8]*r;this.y=i[1]*t+i[5]*n+i[9]*r;this.z=i[2]*t+i[6]*n+i[10]*r;return this.normalize()}divide(e){this.x/=e.x;this.y/=e.y;this.z/=e.z;return this}divideScalar(e){return this.multiplyScalar(1/e)}min(e){this.x=Math.min(this.x,e.x);this.y=Math.min(this.y,e.y);this.z=Math.min(this.z,e.z);return this}max(e){this.x=Math.max(this.x,e.x);this.y=Math.max(this.y,e.y);this.z=Math.max(this.z,e.z);return this}clamp(e,t){this.x=Math.max(e.x,Math.min(t.x,this.x));this.y=Math.max(e.y,Math.min(t.y,this.y));this.z=Math.max(e.z,Math.min(t.z,this.z));return this}clampScalar(e,t){this.x=Math.max(e,Math.min(t,this.x));this.y=Math.max(e,Math.min(t,this.y));this.z=Math.max(e,Math.min(t,this.z));return this}clampLength(e,t){const n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(e,Math.min(t,n)))}floor(){this.x=Math.floor(this.x);this.y=Math.floor(this.y);this.z=Math.floor(this.z);return this}ceil(){this.x=Math.ceil(this.x);this.y=Math.ceil(this.y);this.z=Math.ceil(this.z);return this}round(){this.x=Math.round(this.x);this.y=Math.round(this.y);this.z=Math.round(this.z);return this}roundToZero(){this.x=this.x<0?Math.ceil(this.x):Math.floor(this.x);this.y=this.y<0?Math.ceil(this.y):Math.floor(this.y);this.z=this.z<0?Math.ceil(this.z):Math.floor(this.z);return this}negate(){this.x=-this.x;this.y=-this.y;this.z=-this.z;return this}dot(e){return this.x*e.x+this.y*e.y+this.z*e.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(e){return this.normalize().multiplyScalar(e)}lerp(e,t){this.x+=(e.x-this.x)*t;this.y+=(e.y-this.y)*t;this.z+=(e.z-this.z)*t;return this}lerpVectors(e,t,n){this.x=e.x+(t.x-e.x)*n;this.y=e.y+(t.y-e.y)*n;this.z=e.z+(t.z-e.z)*n;return this}cross(e,t){if(void 0!==t){console.warn(\"THREE.Vector3: .cross() now only accepts one argument. Use .crossVectors( a, b ) instead.\");return this.crossVectors(e,t)}return this.crossVectors(this,e)}crossVectors(e,t){const n=e.x,r=e.y,i=e.z;const s=t.x,a=t.y,o=t.z;this.x=r*o-i*a;this.y=i*s-n*o;this.z=n*a-r*s;return this}projectOnVector(e){const t=e.lengthSq();if(0===t)return this.set(0,0,0);const n=e.dot(this)/t;return this.copy(e).multiplyScalar(n)}projectOnPlane(e){Vn.copy(this).projectOnVector(e);return this.sub(Vn)}reflect(e){return this.sub(Vn.copy(e).multiplyScalar(2*this.dot(e)))}angleTo(e){const t=Math.sqrt(this.lengthSq()*e.lengthSq());if(0===t)return Math.PI/2;const n=this.dot(e)/t;return Math.acos(clamp(n,-1,1))}distanceTo(e){return Math.sqrt(this.distanceToSquared(e))}distanceToSquared(e){const t=this.x-e.x,n=this.y-e.y,r=this.z-e.z;return t*t+n*n+r*r}manhattanDistanceTo(e){return Math.abs(this.x-e.x)+Math.abs(this.y-e.y)+Math.abs(this.z-e.z)}setFromSpherical(e){return this.setFromSphericalCoords(e.radius,e.phi,e.theta)}setFromSphericalCoords(e,t,n){const r=Math.sin(t)*e;this.x=r*Math.sin(n);this.y=Math.cos(t)*e;this.z=r*Math.cos(n);return this}setFromCylindrical(e){return this.setFromCylindricalCoords(e.radius,e.theta,e.y)}setFromCylindricalCoords(e,t,n){this.x=e*Math.sin(t);this.y=n;this.z=e*Math.cos(t);return this}setFromMatrixPosition(e){const t=e.elements;this.x=t[12];this.y=t[13];this.z=t[14];return this}setFromMatrixScale(e){const t=this.setFromMatrixColumn(e,0).length();const n=this.setFromMatrixColumn(e,1).length();const r=this.setFromMatrixColumn(e,2).length();this.x=t;this.y=n;this.z=r;return this}setFromMatrixColumn(e,t){return this.fromArray(e.elements,4*t)}setFromMatrix3Column(e,t){return this.fromArray(e.elements,3*t)}equals(e){return e.x===this.x&&e.y===this.y&&e.z===this.z}fromArray(e,t=0){this.x=e[t];this.y=e[t+1];this.z=e[t+2];return this}toArray(e=[],t=0){e[t]=this.x;e[t+1]=this.y;e[t+2]=this.z;return e}fromBufferAttribute(e,t,n){void 0!==n&&console.warn(\"THREE.Vector3: offset has been removed from .fromBufferAttribute().\");this.x=e.getX(t);this.y=e.getY(t);this.z=e.getZ(t);return this}random(){this.x=Math.random();this.y=Math.random();this.z=Math.random();return this}randomDirection(){const e=2*(Math.random()-.5);const t=Math.random()*Math.PI*2;const n=Math.sqrt(1-e**2);this.x=n*Math.cos(t);this.y=n*Math.sin(t);this.z=e;return this}*[Symbol.iterator](){yield this.x;yield this.y;yield this.z}}Vector3.prototype.isVector3=true;const Vn=new Vector3;const Nn=new Quaternion;class Box3{constructor(e=new Vector3(Infinity,Infinity,Infinity),t=new Vector3(-Infinity,-Infinity,-Infinity)){this.min=e;this.max=t}set(e,t){this.min.copy(e);this.max.copy(t);return this}setFromArray(e){let t=Infinity;let n=Infinity;let r=Infinity;let i=-Infinity;let s=-Infinity;let a=-Infinity;for(let o=0,l=e.length;o<l;o+=3){const l=e[o];const c=e[o+1];const u=e[o+2];l<t&&(t=l);c<n&&(n=c);u<r&&(r=u);l>i&&(i=l);c>s&&(s=c);u>a&&(a=u)}this.min.set(t,n,r);this.max.set(i,s,a);return this}setFromBufferAttribute(e){let t=Infinity;let n=Infinity;let r=Infinity;let i=-Infinity;let s=-Infinity;let a=-Infinity;for(let o=0,l=e.count;o<l;o++){const l=e.getX(o);const c=e.getY(o);const u=e.getZ(o);l<t&&(t=l);c<n&&(n=c);u<r&&(r=u);l>i&&(i=l);c>s&&(s=c);u>a&&(a=u)}this.min.set(t,n,r);this.max.set(i,s,a);return this}setFromPoints(e){this.makeEmpty();for(let t=0,n=e.length;t<n;t++)this.expandByPoint(e[t]);return this}setFromCenterAndSize(e,t){const n=zn.copy(t).multiplyScalar(.5);this.min.copy(e).sub(n);this.max.copy(e).add(n);return this}setFromObject(e){this.makeEmpty();return this.expandByObject(e)}clone(){return(new this.constructor).copy(this)}copy(e){this.min.copy(e.min);this.max.copy(e.max);return this}makeEmpty(){this.min.x=this.min.y=this.min.z=Infinity;this.max.x=this.max.y=this.max.z=-Infinity;return this}isEmpty(){return this.max.x<this.min.x||this.max.y<this.min.y||this.max.z<this.min.z}getCenter(e){return this.isEmpty()?e.set(0,0,0):e.addVectors(this.min,this.max).multiplyScalar(.5)}getSize(e){return this.isEmpty()?e.set(0,0,0):e.subVectors(this.max,this.min)}expandByPoint(e){this.min.min(e);this.max.max(e);return this}expandByVector(e){this.min.sub(e);this.max.add(e);return this}expandByScalar(e){this.min.addScalar(-e);this.max.addScalar(e);return this}expandByObject(e){e.updateWorldMatrix(false,false);const t=e.geometry;if(void 0!==t){null===t.boundingBox&&t.computeBoundingBox();Gn.copy(t.boundingBox);Gn.applyMatrix4(e.matrixWorld);this.union(Gn)}const n=e.children;for(let e=0,t=n.length;e<t;e++)this.expandByObject(n[e]);return this}containsPoint(e){return!(e.x<this.min.x||e.x>this.max.x||e.y<this.min.y||e.y>this.max.y||e.z<this.min.z||e.z>this.max.z)}containsBox(e){return this.min.x<=e.min.x&&e.max.x<=this.max.x&&this.min.y<=e.min.y&&e.max.y<=this.max.y&&this.min.z<=e.min.z&&e.max.z<=this.max.z}getParameter(e,t){return t.set((e.x-this.min.x)/(this.max.x-this.min.x),(e.y-this.min.y)/(this.max.y-this.min.y),(e.z-this.min.z)/(this.max.z-this.min.z))}intersectsBox(e){return!(e.max.x<this.min.x||e.min.x>this.max.x||e.max.y<this.min.y||e.min.y>this.max.y||e.max.z<this.min.z||e.min.z>this.max.z)}intersectsSphere(e){this.clampPoint(e.center,zn);return zn.distanceToSquared(e.center)<=e.radius*e.radius}intersectsPlane(e){let t,n;if(e.normal.x>0){t=e.normal.x*this.min.x;n=e.normal.x*this.max.x}else{t=e.normal.x*this.max.x;n=e.normal.x*this.min.x}if(e.normal.y>0){t+=e.normal.y*this.min.y;n+=e.normal.y*this.max.y}else{t+=e.normal.y*this.max.y;n+=e.normal.y*this.min.y}if(e.normal.z>0){t+=e.normal.z*this.min.z;n+=e.normal.z*this.max.z}else{t+=e.normal.z*this.max.z;n+=e.normal.z*this.min.z}return t<=-e.constant&&n>=-e.constant}intersectsTriangle(e){if(this.isEmpty())return false;this.getCenter(qn);Xn.subVectors(this.max,qn);Fn.subVectors(e.a,qn);On.subVectors(e.b,qn);Hn.subVectors(e.c,qn);kn.subVectors(On,Fn);Wn.subVectors(Hn,On);jn.subVectors(Fn,Hn);let t=[0,-kn.z,kn.y,0,-Wn.z,Wn.y,0,-jn.z,jn.y,kn.z,0,-kn.x,Wn.z,0,-Wn.x,jn.z,0,-jn.x,-kn.y,kn.x,0,-Wn.y,Wn.x,0,-jn.y,jn.x,0];if(!satForAxes(t,Fn,On,Hn,Xn))return false;t=[1,0,0,0,1,0,0,0,1];if(!satForAxes(t,Fn,On,Hn,Xn))return false;Jn.crossVectors(kn,Wn);t=[Jn.x,Jn.y,Jn.z];return satForAxes(t,Fn,On,Hn,Xn)}clampPoint(e,t){return t.copy(e).clamp(this.min,this.max)}distanceToPoint(e){const t=zn.copy(e).clamp(this.min,this.max);return t.sub(e).length()}getBoundingSphere(e){this.getCenter(e.center);e.radius=.5*this.getSize(zn).length();return e}intersect(e){this.min.max(e.min);this.max.min(e.max);this.isEmpty()&&this.makeEmpty();return this}union(e){this.min.min(e.min);this.max.max(e.max);return this}applyMatrix4(e){if(this.isEmpty())return this;Un[0].set(this.min.x,this.min.y,this.min.z).applyMatrix4(e);Un[1].set(this.min.x,this.min.y,this.max.z).applyMatrix4(e);Un[2].set(this.min.x,this.max.y,this.min.z).applyMatrix4(e);Un[3].set(this.min.x,this.max.y,this.max.z).applyMatrix4(e);Un[4].set(this.max.x,this.min.y,this.min.z).applyMatrix4(e);Un[5].set(this.max.x,this.min.y,this.max.z).applyMatrix4(e);Un[6].set(this.max.x,this.max.y,this.min.z).applyMatrix4(e);Un[7].set(this.max.x,this.max.y,this.max.z).applyMatrix4(e);this.setFromPoints(Un);return this}translate(e){this.min.add(e);this.max.add(e);return this}equals(e){return e.min.equals(this.min)&&e.max.equals(this.max)}}Box3.prototype.isBox3=true;const Un=[new Vector3,new Vector3,new Vector3,new Vector3,new Vector3,new Vector3,new Vector3,new Vector3];const zn=new Vector3;const Gn=new Box3;const Fn=new Vector3;const On=new Vector3;const Hn=new Vector3;const kn=new Vector3;const Wn=new Vector3;const jn=new Vector3;const qn=new Vector3;const Xn=new Vector3;const Jn=new Vector3;const Yn=new Vector3;function satForAxes(e,t,n,r,i){for(let s=0,a=e.length-3;s<=a;s+=3){Yn.fromArray(e,s);const a=i.x*Math.abs(Yn.x)+i.y*Math.abs(Yn.y)+i.z*Math.abs(Yn.z);const o=t.dot(Yn);const l=n.dot(Yn);const c=r.dot(Yn);if(Math.max(-Math.max(o,l,c),Math.min(o,l,c))>a)return false}return true}const Zn=new Box3;const Qn=new Vector3;const Kn=new Vector3;const $n=new Vector3;class Sphere{constructor(e=new Vector3,t=-1){this.center=e;this.radius=t}set(e,t){this.center.copy(e);this.radius=t;return this}setFromPoints(e,t){const n=this.center;void 0!==t?n.copy(t):Zn.setFromPoints(e).getCenter(n);let r=0;for(let t=0,i=e.length;t<i;t++)r=Math.max(r,n.distanceToSquared(e[t]));this.radius=Math.sqrt(r);return this}copy(e){this.center.copy(e.center);this.radius=e.radius;return this}isEmpty(){return this.radius<0}makeEmpty(){this.center.set(0,0,0);this.radius=-1;return this}containsPoint(e){return e.distanceToSquared(this.center)<=this.radius*this.radius}distanceToPoint(e){return e.distanceTo(this.center)-this.radius}intersectsSphere(e){const t=this.radius+e.radius;return e.center.distanceToSquared(this.center)<=t*t}intersectsBox(e){return e.intersectsSphere(this)}intersectsPlane(e){return Math.abs(e.distanceToPoint(this.center))<=this.radius}clampPoint(e,t){const n=this.center.distanceToSquared(e);t.copy(e);if(n>this.radius*this.radius){t.sub(this.center).normalize();t.multiplyScalar(this.radius).add(this.center)}return t}getBoundingBox(e){if(this.isEmpty()){e.makeEmpty();return e}e.set(this.center,this.center);e.expandByScalar(this.radius);return e}applyMatrix4(e){this.center.applyMatrix4(e);this.radius=this.radius*e.getMaxScaleOnAxis();return this}translate(e){this.center.add(e);return this}expandByPoint(e){$n.subVectors(e,this.center);const t=$n.lengthSq();if(t>this.radius*this.radius){const e=Math.sqrt(t);const n=.5*(e-this.radius);this.center.add($n.multiplyScalar(n/e));this.radius+=n}return this}union(e){true===this.center.equals(e.center)?Kn.set(0,0,1).multiplyScalar(e.radius):Kn.subVectors(e.center,this.center).normalize().multiplyScalar(e.radius);this.expandByPoint(Qn.copy(e.center).add(Kn));this.expandByPoint(Qn.copy(e.center).sub(Kn));return this}equals(e){return e.center.equals(this.center)&&e.radius===this.radius}clone(){return(new this.constructor).copy(this)}}const er=new Vector3;const tr=new Vector3;const nr=new Vector3;const rr=new Vector3;const ir=new Vector3;const sr=new Vector3;const ar=new Vector3;class Ray{constructor(e=new Vector3,t=new Vector3(0,0,-1)){this.origin=e;this.direction=t}set(e,t){this.origin.copy(e);this.direction.copy(t);return this}copy(e){this.origin.copy(e.origin);this.direction.copy(e.direction);return this}at(e,t){return t.copy(this.direction).multiplyScalar(e).add(this.origin)}lookAt(e){this.direction.copy(e).sub(this.origin).normalize();return this}recast(e){this.origin.copy(this.at(e,er));return this}closestPointToPoint(e,t){t.subVectors(e,this.origin);const n=t.dot(this.direction);return n<0?t.copy(this.origin):t.copy(this.direction).multiplyScalar(n).add(this.origin)}distanceToPoint(e){return Math.sqrt(this.distanceSqToPoint(e))}distanceSqToPoint(e){const t=er.subVectors(e,this.origin).dot(this.direction);if(t<0)return this.origin.distanceToSquared(e);er.copy(this.direction).multiplyScalar(t).add(this.origin);return er.distanceToSquared(e)}distanceSqToSegment(e,t,n,r){tr.copy(e).add(t).multiplyScalar(.5);nr.copy(t).sub(e).normalize();rr.copy(this.origin).sub(tr);const i=.5*e.distanceTo(t);const s=-this.direction.dot(nr);const a=rr.dot(this.direction);const o=-rr.dot(nr);const l=rr.lengthSq();const c=Math.abs(1-s*s);let u,h,d,p;if(c>0){u=s*o-a;h=s*a-o;p=i*c;if(u>=0)if(h>=-p)if(h<=p){const e=1/c;u*=e;h*=e;d=u*(u+s*h+2*a)+h*(s*u+h+2*o)+l}else{h=i;u=Math.max(0,-(s*h+a));d=-u*u+h*(h+2*o)+l}else{h=-i;u=Math.max(0,-(s*h+a));d=-u*u+h*(h+2*o)+l}else if(h<=-p){u=Math.max(0,-(-s*i+a));h=u>0?-i:Math.min(Math.max(-i,-o),i);d=-u*u+h*(h+2*o)+l}else if(h<=p){u=0;h=Math.min(Math.max(-i,-o),i);d=h*(h+2*o)+l}else{u=Math.max(0,-(s*i+a));h=u>0?i:Math.min(Math.max(-i,-o),i);d=-u*u+h*(h+2*o)+l}}else{h=s>0?-i:i;u=Math.max(0,-(s*h+a));d=-u*u+h*(h+2*o)+l}n&&n.copy(this.direction).multiplyScalar(u).add(this.origin);r&&r.copy(nr).multiplyScalar(h).add(tr);return d}intersectSphere(e,t){er.subVectors(e.center,this.origin);const n=er.dot(this.direction);const r=er.dot(er)-n*n;const i=e.radius*e.radius;if(r>i)return null;const s=Math.sqrt(i-r);const a=n-s;const o=n+s;return a<0&&o<0?null:a<0?this.at(o,t):this.at(a,t)}intersectsSphere(e){return this.distanceSqToPoint(e.center)<=e.radius*e.radius}distanceToPlane(e){const t=e.normal.dot(this.direction);if(0===t)return 0===e.distanceToPoint(this.origin)?0:null;const n=-(this.origin.dot(e.normal)+e.constant)/t;return n>=0?n:null}intersectPlane(e,t){const n=this.distanceToPlane(e);return null===n?null:this.at(n,t)}intersectsPlane(e){const t=e.distanceToPoint(this.origin);if(0===t)return true;const n=e.normal.dot(this.direction);return n*t<0}intersectBox(e,t){let n,r,i,s,a,o;const l=1/this.direction.x,c=1/this.direction.y,u=1/this.direction.z;const h=this.origin;if(l>=0){n=(e.min.x-h.x)*l;r=(e.max.x-h.x)*l}else{n=(e.max.x-h.x)*l;r=(e.min.x-h.x)*l}if(c>=0){i=(e.min.y-h.y)*c;s=(e.max.y-h.y)*c}else{i=(e.max.y-h.y)*c;s=(e.min.y-h.y)*c}if(n>s||i>r)return null;(i>n||n!==n)&&(n=i);(s<r||r!==r)&&(r=s);if(u>=0){a=(e.min.z-h.z)*u;o=(e.max.z-h.z)*u}else{a=(e.max.z-h.z)*u;o=(e.min.z-h.z)*u}if(n>o||a>r)return null;(a>n||n!==n)&&(n=a);(o<r||r!==r)&&(r=o);return r<0?null:this.at(n>=0?n:r,t)}intersectsBox(e){return null!==this.intersectBox(e,er)}intersectTriangle(e,t,n,r,i){ir.subVectors(t,e);sr.subVectors(n,e);ar.crossVectors(ir,sr);let s=this.direction.dot(ar);let a;if(s>0){if(r)return null;a=1}else{if(!(s<0))return null;a=-1;s=-s}rr.subVectors(this.origin,e);const o=a*this.direction.dot(sr.crossVectors(rr,sr));if(o<0)return null;const l=a*this.direction.dot(ir.cross(rr));if(l<0)return null;if(o+l>s)return null;const c=-a*rr.dot(ar);return c<0?null:this.at(c/s,i)}applyMatrix4(e){this.origin.applyMatrix4(e);this.direction.transformDirection(e);return this}equals(e){return e.origin.equals(this.origin)&&e.direction.equals(this.direction)}clone(){return(new this.constructor).copy(this)}}class Matrix4{constructor(){this.elements=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];arguments.length>0&&console.error(\"THREE.Matrix4: the constructor no longer reads arguments. use .set() instead.\")}set(e,t,n,r,i,s,a,o,l,c,u,h,d,p,f,m){const g=this.elements;g[0]=e;g[4]=t;g[8]=n;g[12]=r;g[1]=i;g[5]=s;g[9]=a;g[13]=o;g[2]=l;g[6]=c;g[10]=u;g[14]=h;g[3]=d;g[7]=p;g[11]=f;g[15]=m;return this}identity(){this.set(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1);return this}clone(){return(new Matrix4).fromArray(this.elements)}copy(e){const t=this.elements;const n=e.elements;t[0]=n[0];t[1]=n[1];t[2]=n[2];t[3]=n[3];t[4]=n[4];t[5]=n[5];t[6]=n[6];t[7]=n[7];t[8]=n[8];t[9]=n[9];t[10]=n[10];t[11]=n[11];t[12]=n[12];t[13]=n[13];t[14]=n[14];t[15]=n[15];return this}copyPosition(e){const t=this.elements,n=e.elements;t[12]=n[12];t[13]=n[13];t[14]=n[14];return this}setFromMatrix3(e){const t=e.elements;this.set(t[0],t[3],t[6],0,t[1],t[4],t[7],0,t[2],t[5],t[8],0,0,0,0,1);return this}extractBasis(e,t,n){e.setFromMatrixColumn(this,0);t.setFromMatrixColumn(this,1);n.setFromMatrixColumn(this,2);return this}makeBasis(e,t,n){this.set(e.x,t.x,n.x,0,e.y,t.y,n.y,0,e.z,t.z,n.z,0,0,0,0,1);return this}extractRotation(e){const t=this.elements;const n=e.elements;const r=1/or.setFromMatrixColumn(e,0).length();const i=1/or.setFromMatrixColumn(e,1).length();const s=1/or.setFromMatrixColumn(e,2).length();t[0]=n[0]*r;t[1]=n[1]*r;t[2]=n[2]*r;t[3]=0;t[4]=n[4]*i;t[5]=n[5]*i;t[6]=n[6]*i;t[7]=0;t[8]=n[8]*s;t[9]=n[9]*s;t[10]=n[10]*s;t[11]=0;t[12]=0;t[13]=0;t[14]=0;t[15]=1;return this}makeRotationFromEuler(e){e&&e.isEuler||console.error(\"THREE.Matrix4: .makeRotationFromEuler() now expects a Euler rotation rather than a Vector3 and order.\");const t=this.elements;const n=e.x,r=e.y,i=e.z;const s=Math.cos(n),a=Math.sin(n);const o=Math.cos(r),l=Math.sin(r);const c=Math.cos(i),u=Math.sin(i);if(\"XYZ\"===e.order){const e=s*c,n=s*u,r=a*c,i=a*u;t[0]=o*c;t[4]=-o*u;t[8]=l;t[1]=n+r*l;t[5]=e-i*l;t[9]=-a*o;t[2]=i-e*l;t[6]=r+n*l;t[10]=s*o}else if(\"YXZ\"===e.order){const e=o*c,n=o*u,r=l*c,i=l*u;t[0]=e+i*a;t[4]=r*a-n;t[8]=s*l;t[1]=s*u;t[5]=s*c;t[9]=-a;t[2]=n*a-r;t[6]=i+e*a;t[10]=s*o}else if(\"ZXY\"===e.order){const e=o*c,n=o*u,r=l*c,i=l*u;t[0]=e-i*a;t[4]=-s*u;t[8]=r+n*a;t[1]=n+r*a;t[5]=s*c;t[9]=i-e*a;t[2]=-s*l;t[6]=a;t[10]=s*o}else if(\"ZYX\"===e.order){const e=s*c,n=s*u,r=a*c,i=a*u;t[0]=o*c;t[4]=r*l-n;t[8]=e*l+i;t[1]=o*u;t[5]=i*l+e;t[9]=n*l-r;t[2]=-l;t[6]=a*o;t[10]=s*o}else if(\"YZX\"===e.order){const e=s*o,n=s*l,r=a*o,i=a*l;t[0]=o*c;t[4]=i-e*u;t[8]=r*u+n;t[1]=u;t[5]=s*c;t[9]=-a*c;t[2]=-l*c;t[6]=n*u+r;t[10]=e-i*u}else if(\"XZY\"===e.order){const e=s*o,n=s*l,r=a*o,i=a*l;t[0]=o*c;t[4]=-u;t[8]=l*c;t[1]=e*u+i;t[5]=s*c;t[9]=n*u-r;t[2]=r*u-n;t[6]=a*c;t[10]=i*u+e}t[3]=0;t[7]=0;t[11]=0;t[12]=0;t[13]=0;t[14]=0;t[15]=1;return this}makeRotationFromQuaternion(e){return this.compose(cr,e,ur)}lookAt(e,t,n){const r=this.elements;pr.subVectors(e,t);0===pr.lengthSq()&&(pr.z=1);pr.normalize();hr.crossVectors(n,pr);if(0===hr.lengthSq()){1===Math.abs(n.z)?pr.x+=1e-4:pr.z+=1e-4;pr.normalize();hr.crossVectors(n,pr)}hr.normalize();dr.crossVectors(pr,hr);r[0]=hr.x;r[4]=dr.x;r[8]=pr.x;r[1]=hr.y;r[5]=dr.y;r[9]=pr.y;r[2]=hr.z;r[6]=dr.z;r[10]=pr.z;return this}multiply(e,t){if(void 0!==t){console.warn(\"THREE.Matrix4: .multiply() now only accepts one argument. Use .multiplyMatrices( a, b ) instead.\");return this.multiplyMatrices(e,t)}return this.multiplyMatrices(this,e)}premultiply(e){return this.multiplyMatrices(e,this)}multiplyMatrices(e,t){const n=e.elements;const r=t.elements;const i=this.elements;const s=n[0],a=n[4],o=n[8],l=n[12];const c=n[1],u=n[5],h=n[9],d=n[13];const p=n[2],f=n[6],m=n[10],g=n[14];const y=n[3],x=n[7],b=n[11],_=n[15];const M=r[0],w=r[4],S=r[8],T=r[12];const E=r[1],A=r[5],L=r[9],C=r[13];const R=r[2],P=r[6],I=r[10],D=r[14];const B=r[3],V=r[7],N=r[11],U=r[15];i[0]=s*M+a*E+o*R+l*B;i[4]=s*w+a*A+o*P+l*V;i[8]=s*S+a*L+o*I+l*N;i[12]=s*T+a*C+o*D+l*U;i[1]=c*M+u*E+h*R+d*B;i[5]=c*w+u*A+h*P+d*V;i[9]=c*S+u*L+h*I+d*N;i[13]=c*T+u*C+h*D+d*U;i[2]=p*M+f*E+m*R+g*B;i[6]=p*w+f*A+m*P+g*V;i[10]=p*S+f*L+m*I+g*N;i[14]=p*T+f*C+m*D+g*U;i[3]=y*M+x*E+b*R+_*B;i[7]=y*w+x*A+b*P+_*V;i[11]=y*S+x*L+b*I+_*N;i[15]=y*T+x*C+b*D+_*U;return this}multiplyScalar(e){const t=this.elements;t[0]*=e;t[4]*=e;t[8]*=e;t[12]*=e;t[1]*=e;t[5]*=e;t[9]*=e;t[13]*=e;t[2]*=e;t[6]*=e;t[10]*=e;t[14]*=e;t[3]*=e;t[7]*=e;t[11]*=e;t[15]*=e;return this}determinant(){const e=this.elements;const t=e[0],n=e[4],r=e[8],i=e[12];const s=e[1],a=e[5],o=e[9],l=e[13];const c=e[2],u=e[6],h=e[10],d=e[14];const p=e[3],f=e[7],m=e[11],g=e[15];return p*(+i*o*u-r*l*u-i*a*h+n*l*h+r*a*d-n*o*d)+f*(+t*o*d-t*l*h+i*s*h-r*s*d+r*l*c-i*o*c)+m*(+t*l*u-t*a*d-i*s*u+n*s*d+i*a*c-n*l*c)+g*(-r*a*c-t*o*u+t*a*h+r*s*u-n*s*h+n*o*c)}transpose(){const e=this.elements;let t;t=e[1];e[1]=e[4];e[4]=t;t=e[2];e[2]=e[8];e[8]=t;t=e[6];e[6]=e[9];e[9]=t;t=e[3];e[3]=e[12];e[12]=t;t=e[7];e[7]=e[13];e[13]=t;t=e[11];e[11]=e[14];e[14]=t;return this}setPosition(e,t,n){const r=this.elements;if(e.isVector3){r[12]=e.x;r[13]=e.y;r[14]=e.z}else{r[12]=e;r[13]=t;r[14]=n}return this}invert(){const e=this.elements,t=e[0],n=e[1],r=e[2],i=e[3],s=e[4],a=e[5],o=e[6],l=e[7],c=e[8],u=e[9],h=e[10],d=e[11],p=e[12],f=e[13],m=e[14],g=e[15],y=u*m*l-f*h*l+f*o*d-a*m*d-u*o*g+a*h*g,x=p*h*l-c*m*l-p*o*d+s*m*d+c*o*g-s*h*g,b=c*f*l-p*u*l+p*a*d-s*f*d-c*a*g+s*u*g,_=p*u*o-c*f*o-p*a*h+s*f*h+c*a*m-s*u*m;const M=t*y+n*x+r*b+i*_;if(0===M)return this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);const w=1/M;e[0]=y*w;e[1]=(f*h*i-u*m*i-f*r*d+n*m*d+u*r*g-n*h*g)*w;e[2]=(a*m*i-f*o*i+f*r*l-n*m*l-a*r*g+n*o*g)*w;e[3]=(u*o*i-a*h*i-u*r*l+n*h*l+a*r*d-n*o*d)*w;e[4]=x*w;e[5]=(c*m*i-p*h*i+p*r*d-t*m*d-c*r*g+t*h*g)*w;e[6]=(p*o*i-s*m*i-p*r*l+t*m*l+s*r*g-t*o*g)*w;e[7]=(s*h*i-c*o*i+c*r*l-t*h*l-s*r*d+t*o*d)*w;e[8]=b*w;e[9]=(p*u*i-c*f*i-p*n*d+t*f*d+c*n*g-t*u*g)*w;e[10]=(s*f*i-p*a*i+p*n*l-t*f*l-s*n*g+t*a*g)*w;e[11]=(c*a*i-s*u*i-c*n*l+t*u*l+s*n*d-t*a*d)*w;e[12]=_*w;e[13]=(c*f*r-p*u*r+p*n*h-t*f*h-c*n*m+t*u*m)*w;e[14]=(p*a*r-s*f*r-p*n*o+t*f*o+s*n*m-t*a*m)*w;e[15]=(s*u*r-c*a*r+c*n*o-t*u*o-s*n*h+t*a*h)*w;return this}scale(e){const t=this.elements;const n=e.x,r=e.y,i=e.z;t[0]*=n;t[4]*=r;t[8]*=i;t[1]*=n;t[5]*=r;t[9]*=i;t[2]*=n;t[6]*=r;t[10]*=i;t[3]*=n;t[7]*=r;t[11]*=i;return this}getMaxScaleOnAxis(){const e=this.elements;const t=e[0]*e[0]+e[1]*e[1]+e[2]*e[2];const n=e[4]*e[4]+e[5]*e[5]+e[6]*e[6];const r=e[8]*e[8]+e[9]*e[9]+e[10]*e[10];return Math.sqrt(Math.max(t,n,r))}makeTranslation(e,t,n){this.set(1,0,0,e,0,1,0,t,0,0,1,n,0,0,0,1);return this}makeRotationX(e){const t=Math.cos(e),n=Math.sin(e);this.set(1,0,0,0,0,t,-n,0,0,n,t,0,0,0,0,1);return this}makeRotationY(e){const t=Math.cos(e),n=Math.sin(e);this.set(t,0,n,0,0,1,0,0,-n,0,t,0,0,0,0,1);return this}makeRotationZ(e){const t=Math.cos(e),n=Math.sin(e);this.set(t,-n,0,0,n,t,0,0,0,0,1,0,0,0,0,1);return this}makeRotationAxis(e,t){const n=Math.cos(t);const r=Math.sin(t);const i=1-n;const s=e.x,a=e.y,o=e.z;const l=i*s,c=i*a;this.set(l*s+n,l*a-r*o,l*o+r*a,0,l*a+r*o,c*a+n,c*o-r*s,0,l*o-r*a,c*o+r*s,i*o*o+n,0,0,0,0,1);return this}makeScale(e,t,n){this.set(e,0,0,0,0,t,0,0,0,0,n,0,0,0,0,1);return this}makeShear(e,t,n,r,i,s){this.set(1,n,i,0,e,1,s,0,t,r,1,0,0,0,0,1);return this}compose(e,t,n){const r=this.elements;const i=t._x,s=t._y,a=t._z,o=t._w;const l=i+i,c=s+s,u=a+a;const h=i*l,d=i*c,p=i*u;const f=s*c,m=s*u,g=a*u;const y=o*l,x=o*c,b=o*u;const _=n.x,M=n.y,w=n.z;r[0]=(1-(f+g))*_;r[1]=(d+b)*_;r[2]=(p-x)*_;r[3]=0;r[4]=(d-b)*M;r[5]=(1-(h+g))*M;r[6]=(m+y)*M;r[7]=0;r[8]=(p+x)*w;r[9]=(m-y)*w;r[10]=(1-(h+f))*w;r[11]=0;r[12]=e.x;r[13]=e.y;r[14]=e.z;r[15]=1;return this}decompose(e,t,n){const r=this.elements;let i=or.set(r[0],r[1],r[2]).length();const s=or.set(r[4],r[5],r[6]).length();const a=or.set(r[8],r[9],r[10]).length();const o=this.determinant();o<0&&(i=-i);e.x=r[12];e.y=r[13];e.z=r[14];lr.copy(this);const l=1/i;const c=1/s;const u=1/a;lr.elements[0]*=l;lr.elements[1]*=l;lr.elements[2]*=l;lr.elements[4]*=c;lr.elements[5]*=c;lr.elements[6]*=c;lr.elements[8]*=u;lr.elements[9]*=u;lr.elements[10]*=u;t.setFromRotationMatrix(lr);n.x=i;n.y=s;n.z=a;return this}makePerspective(e,t,n,r,i,s){void 0===s&&console.warn(\"THREE.Matrix4: .makePerspective() has been redefined and has a new signature. Please check the docs.\");const a=this.elements;const o=2*i/(t-e);const l=2*i/(n-r);const c=(t+e)/(t-e);const u=(n+r)/(n-r);const h=-(s+i)/(s-i);const d=-2*s*i/(s-i);a[0]=o;a[4]=0;a[8]=c;a[12]=0;a[1]=0;a[5]=l;a[9]=u;a[13]=0;a[2]=0;a[6]=0;a[10]=h;a[14]=d;a[3]=0;a[7]=0;a[11]=-1;a[15]=0;return this}makeOrthographic(e,t,n,r,i,s){const a=this.elements;const o=1/(t-e);const l=1/(n-r);const c=1/(s-i);const u=(t+e)*o;const h=(n+r)*l;const d=(s+i)*c;a[0]=2*o;a[4]=0;a[8]=0;a[12]=-u;a[1]=0;a[5]=2*l;a[9]=0;a[13]=-h;a[2]=0;a[6]=0;a[10]=-2*c;a[14]=-d;a[3]=0;a[7]=0;a[11]=0;a[15]=1;return this}equals(e){const t=this.elements;const n=e.elements;for(let e=0;e<16;e++)if(t[e]!==n[e])return false;return true}fromArray(e,t=0){for(let n=0;n<16;n++)this.elements[n]=e[n+t];return this}toArray(e=[],t=0){const n=this.elements;e[t]=n[0];e[t+1]=n[1];e[t+2]=n[2];e[t+3]=n[3];e[t+4]=n[4];e[t+5]=n[5];e[t+6]=n[6];e[t+7]=n[7];e[t+8]=n[8];e[t+9]=n[9];e[t+10]=n[10];e[t+11]=n[11];e[t+12]=n[12];e[t+13]=n[13];e[t+14]=n[14];e[t+15]=n[15];return e}}Matrix4.prototype.isMatrix4=true;const or=new Vector3;const lr=new Matrix4;const cr=new Vector3(0,0,0);const ur=new Vector3(1,1,1);const hr=new Vector3;const dr=new Vector3;const pr=new Vector3;const fr=new Matrix4;const mr=new Quaternion;class Euler{constructor(e=0,t=0,n=0,r=Euler.DefaultOrder){this._x=e;this._y=t;this._z=n;this._order=r}get x(){return this._x}set x(e){this._x=e;this._onChangeCallback()}get y(){return this._y}set y(e){this._y=e;this._onChangeCallback()}get z(){return this._z}set z(e){this._z=e;this._onChangeCallback()}get order(){return this._order}set order(e){this._order=e;this._onChangeCallback()}set(e,t,n,r=this._order){this._x=e;this._y=t;this._z=n;this._order=r;this._onChangeCallback();return this}clone(){return new this.constructor(this._x,this._y,this._z,this._order)}copy(e){this._x=e._x;this._y=e._y;this._z=e._z;this._order=e._order;this._onChangeCallback();return this}setFromRotationMatrix(e,t=this._order,n=true){const r=e.elements;const i=r[0],s=r[4],a=r[8];const o=r[1],l=r[5],c=r[9];const u=r[2],h=r[6],d=r[10];switch(t){case\"XYZ\":this._y=Math.asin(clamp(a,-1,1));if(Math.abs(a)<.9999999){this._x=Math.atan2(-c,d);this._z=Math.atan2(-s,i)}else{this._x=Math.atan2(h,l);this._z=0}break;case\"YXZ\":this._x=Math.asin(-clamp(c,-1,1));if(Math.abs(c)<.9999999){this._y=Math.atan2(a,d);this._z=Math.atan2(o,l)}else{this._y=Math.atan2(-u,i);this._z=0}break;case\"ZXY\":this._x=Math.asin(clamp(h,-1,1));if(Math.abs(h)<.9999999){this._y=Math.atan2(-u,d);this._z=Math.atan2(-s,l)}else{this._y=0;this._z=Math.atan2(o,i)}break;case\"ZYX\":this._y=Math.asin(-clamp(u,-1,1));if(Math.abs(u)<.9999999){this._x=Math.atan2(h,d);this._z=Math.atan2(o,i)}else{this._x=0;this._z=Math.atan2(-s,l)}break;case\"YZX\":this._z=Math.asin(clamp(o,-1,1));if(Math.abs(o)<.9999999){this._x=Math.atan2(-c,l);this._y=Math.atan2(-u,i)}else{this._x=0;this._y=Math.atan2(a,d)}break;case\"XZY\":this._z=Math.asin(-clamp(s,-1,1));if(Math.abs(s)<.9999999){this._x=Math.atan2(h,l);this._y=Math.atan2(a,i)}else{this._x=Math.atan2(-c,d);this._y=0}break;default:console.warn(\"THREE.Euler: .setFromRotationMatrix() encountered an unknown order: \"+t)}this._order=t;true===n&&this._onChangeCallback();return this}setFromQuaternion(e,t,n){fr.makeRotationFromQuaternion(e);return this.setFromRotationMatrix(fr,t,n)}setFromVector3(e,t=this._order){return this.set(e.x,e.y,e.z,t)}reorder(e){mr.setFromEuler(this);return this.setFromQuaternion(mr,e)}equals(e){return e._x===this._x&&e._y===this._y&&e._z===this._z&&e._order===this._order}fromArray(e){this._x=e[0];this._y=e[1];this._z=e[2];void 0!==e[3]&&(this._order=e[3]);this._onChangeCallback();return this}toArray(e=[],t=0){e[t]=this._x;e[t+1]=this._y;e[t+2]=this._z;e[t+3]=this._order;return e}toVector3(e){return e?e.set(this._x,this._y,this._z):new Vector3(this._x,this._y,this._z)}_onChange(e){this._onChangeCallback=e;return this}_onChangeCallback(){}}Euler.prototype.isEuler=true;Euler.DefaultOrder=\"XYZ\";Euler.RotationOrders=[\"XYZ\",\"YZX\",\"ZXY\",\"XZY\",\"YXZ\",\"ZYX\"];class Layers{constructor(){this.mask=1}set(e){this.mask=(1<<e|0)>>>0}enable(e){this.mask|=1<<e|0}enableAll(){this.mask=-1}toggle(e){this.mask^=1<<e|0}disable(e){this.mask&=~(1<<e|0)}disableAll(){this.mask=0}test(e){return 0!==(this.mask&e.mask)}isEnabled(e){return 0!==(this.mask&(1<<e|0))}}let gr=0;const yr=new Vector3;const vr=new Quaternion;const xr=new Matrix4;const br=new Vector3;const _r=new Vector3;const Mr=new Vector3;const wr=new Quaternion;const Sr=new Vector3(1,0,0);const Tr=new Vector3(0,1,0);const Er=new Vector3(0,0,1);const Ar={type:\"added\"};const Lr={type:\"removed\"};class Object3D extends EventDispatcher{constructor(){super();Object.defineProperty(this,\"id\",{value:gr++});this.uuid=generateUUID();this.name=\"\";this.type=\"Object3D\";this.parent=null;this.children=[];this.up=Object3D.DefaultUp.clone();const e=new Vector3;const t=new Euler;const n=new Quaternion;const r=new Vector3(1,1,1);function onRotationChange(){n.setFromEuler(t,false)}function onQuaternionChange(){t.setFromQuaternion(n,void 0,false)}t._onChange(onRotationChange);n._onChange(onQuaternionChange);Object.defineProperties(this,{position:{configurable:true,enumerable:true,value:e},rotation:{configurable:true,enumerable:true,value:t},quaternion:{configurable:true,enumerable:true,value:n},scale:{configurable:true,enumerable:true,value:r},modelViewMatrix:{value:new Matrix4},normalMatrix:{value:new Matrix3}});this.matrix=new Matrix4;this.matrixWorld=new Matrix4;this.matrixAutoUpdate=Object3D.DefaultMatrixAutoUpdate;this.matrixWorldNeedsUpdate=false;this.layers=new Layers;this.visible=true;this.castShadow=false;this.receiveShadow=false;this.frustumCulled=true;this.renderOrder=0;this.animations=[];this.userData={}}onBeforeRender(){}onAfterRender(){}applyMatrix4(e){this.matrixAutoUpdate&&this.updateMatrix();this.matrix.premultiply(e);this.matrix.decompose(this.position,this.quaternion,this.scale)}applyQuaternion(e){this.quaternion.premultiply(e);return this}setRotationFromAxisAngle(e,t){this.quaternion.setFromAxisAngle(e,t)}setRotationFromEuler(e){this.quaternion.setFromEuler(e,true)}setRotationFromMatrix(e){this.quaternion.setFromRotationMatrix(e)}setRotationFromQuaternion(e){this.quaternion.copy(e)}rotateOnAxis(e,t){vr.setFromAxisAngle(e,t);this.quaternion.multiply(vr);return this}rotateOnWorldAxis(e,t){vr.setFromAxisAngle(e,t);this.quaternion.premultiply(vr);return this}rotateX(e){return this.rotateOnAxis(Sr,e)}rotateY(e){return this.rotateOnAxis(Tr,e)}rotateZ(e){return this.rotateOnAxis(Er,e)}translateOnAxis(e,t){yr.copy(e).applyQuaternion(this.quaternion);this.position.add(yr.multiplyScalar(t));return this}translateX(e){return this.translateOnAxis(Sr,e)}translateY(e){return this.translateOnAxis(Tr,e)}translateZ(e){return this.translateOnAxis(Er,e)}localToWorld(e){return e.applyMatrix4(this.matrixWorld)}worldToLocal(e){return e.applyMatrix4(xr.copy(this.matrixWorld).invert())}lookAt(e,t,n){e.isVector3?br.copy(e):br.set(e,t,n);const r=this.parent;this.updateWorldMatrix(true,false);_r.setFromMatrixPosition(this.matrixWorld);this.isCamera||this.isLight?xr.lookAt(_r,br,this.up):xr.lookAt(br,_r,this.up);this.quaternion.setFromRotationMatrix(xr);if(r){xr.extractRotation(r.matrixWorld);vr.setFromRotationMatrix(xr);this.quaternion.premultiply(vr.invert())}}add(e){if(arguments.length>1){for(let e=0;e<arguments.length;e++)this.add(arguments[e]);return this}if(e===this){console.error(\"THREE.Object3D.add: object can't be added as a child of itself.\",e);return this}if(e&&e.isObject3D){null!==e.parent&&e.parent.remove(e);e.parent=this;this.children.push(e);e.dispatchEvent(Ar)}else console.error(\"THREE.Object3D.add: object not an instance of THREE.Object3D.\",e);return this}remove(e){if(arguments.length>1){for(let e=0;e<arguments.length;e++)this.remove(arguments[e]);return this}const t=this.children.indexOf(e);if(-1!==t){e.parent=null;this.children.splice(t,1);e.dispatchEvent(Lr)}return this}removeFromParent(){const e=this.parent;null!==e&&e.remove(this);return this}clear(){for(let e=0;e<this.children.length;e++){const t=this.children[e];t.parent=null;t.dispatchEvent(Lr)}this.children.length=0;return this}attach(e){this.updateWorldMatrix(true,false);xr.copy(this.matrixWorld).invert();if(null!==e.parent){e.parent.updateWorldMatrix(true,false);xr.multiply(e.parent.matrixWorld)}e.applyMatrix4(xr);this.add(e);e.updateWorldMatrix(false,true);return this}getObjectById(e){return this.getObjectByProperty(\"id\",e)}getObjectByName(e){return this.getObjectByProperty(\"name\",e)}getObjectByProperty(e,t){if(this[e]===t)return this;for(let n=0,r=this.children.length;n<r;n++){const r=this.children[n];const i=r.getObjectByProperty(e,t);if(void 0!==i)return i}}getWorldPosition(e){this.updateWorldMatrix(true,false);return e.setFromMatrixPosition(this.matrixWorld)}getWorldQuaternion(e){this.updateWorldMatrix(true,false);this.matrixWorld.decompose(_r,e,Mr);return e}getWorldScale(e){this.updateWorldMatrix(true,false);this.matrixWorld.decompose(_r,wr,e);return e}getWorldDirection(e){this.updateWorldMatrix(true,false);const t=this.matrixWorld.elements;return e.set(t[8],t[9],t[10]).normalize()}raycast(){}traverse(e){e(this);const t=this.children;for(let n=0,r=t.length;n<r;n++)t[n].traverse(e)}traverseVisible(e){if(false===this.visible)return;e(this);const t=this.children;for(let n=0,r=t.length;n<r;n++)t[n].traverseVisible(e)}traverseAncestors(e){const t=this.parent;if(null!==t){e(t);t.traverseAncestors(e)}}updateMatrix(){this.matrix.compose(this.position,this.quaternion,this.scale);this.matrixWorldNeedsUpdate=true}updateMatrixWorld(e){this.matrixAutoUpdate&&this.updateMatrix();if(this.matrixWorldNeedsUpdate||e){null===this.parent?this.matrixWorld.copy(this.matrix):this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.matrix);this.matrixWorldNeedsUpdate=false;e=true}const t=this.children;for(let n=0,r=t.length;n<r;n++)t[n].updateMatrixWorld(e)}updateWorldMatrix(e,t){const n=this.parent;true===e&&null!==n&&n.updateWorldMatrix(true,false);this.matrixAutoUpdate&&this.updateMatrix();null===this.parent?this.matrixWorld.copy(this.matrix):this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.matrix);if(true===t){const e=this.children;for(let t=0,n=e.length;t<n;t++)e[t].updateWorldMatrix(false,true)}}toJSON(e){const t=void 0===e||\"string\"===typeof e;const n={};if(t){e={geometries:{},materials:{},textures:{},images:{},shapes:{},skeletons:{},animations:{}};n.metadata={version:4.5,type:\"Object\",generator:\"Object3D.toJSON\"}}const r={};r.uuid=this.uuid;r.type=this.type;\"\"!==this.name&&(r.name=this.name);true===this.castShadow&&(r.castShadow=true);true===this.receiveShadow&&(r.receiveShadow=true);false===this.visible&&(r.visible=false);false===this.frustumCulled&&(r.frustumCulled=false);0!==this.renderOrder&&(r.renderOrder=this.renderOrder);\"{}\"!==JSON.stringify(this.userData)&&(r.userData=this.userData);r.layers=this.layers.mask;r.matrix=this.matrix.toArray();false===this.matrixAutoUpdate&&(r.matrixAutoUpdate=false);if(this.isInstancedMesh){r.type=\"InstancedMesh\";r.count=this.count;r.instanceMatrix=this.instanceMatrix.toJSON();null!==this.instanceColor&&(r.instanceColor=this.instanceColor.toJSON())}function serialize(t,n){void 0===t[n.uuid]&&(t[n.uuid]=n.toJSON(e));return n.uuid}if(this.isScene){this.background&&(this.background.isColor?r.background=this.background.toJSON():this.background.isTexture&&(r.background=this.background.toJSON(e).uuid));this.environment&&this.environment.isTexture&&(r.environment=this.environment.toJSON(e).uuid)}else if(this.isMesh||this.isLine||this.isPoints){r.geometry=serialize(e.geometries,this.geometry);const t=this.geometry.parameters;if(void 0!==t&&void 0!==t.shapes){const n=t.shapes;if(Array.isArray(n))for(let t=0,r=n.length;t<r;t++){const r=n[t];serialize(e.shapes,r)}else serialize(e.shapes,n)}}if(this.isSkinnedMesh){r.bindMode=this.bindMode;r.bindMatrix=this.bindMatrix.toArray();if(void 0!==this.skeleton){serialize(e.skeletons,this.skeleton);r.skeleton=this.skeleton.uuid}}if(void 0!==this.material)if(Array.isArray(this.material)){const t=[];for(let n=0,r=this.material.length;n<r;n++)t.push(serialize(e.materials,this.material[n]));r.material=t}else r.material=serialize(e.materials,this.material);if(this.children.length>0){r.children=[];for(let t=0;t<this.children.length;t++)r.children.push(this.children[t].toJSON(e).object)}if(this.animations.length>0){r.animations=[];for(let t=0;t<this.animations.length;t++){const n=this.animations[t];r.animations.push(serialize(e.animations,n))}}if(t){const t=extractFromCache(e.geometries);const r=extractFromCache(e.materials);const i=extractFromCache(e.textures);const s=extractFromCache(e.images);const a=extractFromCache(e.shapes);const o=extractFromCache(e.skeletons);const l=extractFromCache(e.animations);t.length>0&&(n.geometries=t);r.length>0&&(n.materials=r);i.length>0&&(n.textures=i);s.length>0&&(n.images=s);a.length>0&&(n.shapes=a);o.length>0&&(n.skeletons=o);l.length>0&&(n.animations=l)}n.object=r;return n;function extractFromCache(e){const t=[];for(const n in e){const r=e[n];delete r.metadata;t.push(r)}return t}}clone(e){return(new this.constructor).copy(this,e)}copy(e,t=true){this.name=e.name;this.up.copy(e.up);this.position.copy(e.position);this.rotation.order=e.rotation.order;this.quaternion.copy(e.quaternion);this.scale.copy(e.scale);this.matrix.copy(e.matrix);this.matrixWorld.copy(e.matrixWorld);this.matrixAutoUpdate=e.matrixAutoUpdate;this.matrixWorldNeedsUpdate=e.matrixWorldNeedsUpdate;this.layers.mask=e.layers.mask;this.visible=e.visible;this.castShadow=e.castShadow;this.receiveShadow=e.receiveShadow;this.frustumCulled=e.frustumCulled;this.renderOrder=e.renderOrder;this.userData=JSON.parse(JSON.stringify(e.userData));if(true===t)for(let t=0;t<e.children.length;t++){const n=e.children[t];this.add(n.clone())}return this}}Object3D.DefaultUp=new Vector3(0,1,0);Object3D.DefaultMatrixAutoUpdate=true;Object3D.prototype.isObject3D=true;const Cr=new Vector3;const Rr=new Vector3;const Pr=new Vector3;const Ir=new Vector3;const Dr=new Vector3;const Br=new Vector3;const Vr=new Vector3;const Nr=new Vector3;const Ur=new Vector3;const zr=new Vector3;class Triangle{constructor(e=new Vector3,t=new Vector3,n=new Vector3){this.a=e;this.b=t;this.c=n}static getNormal(e,t,n,r){r.subVectors(n,t);Cr.subVectors(e,t);r.cross(Cr);const i=r.lengthSq();return i>0?r.multiplyScalar(1/Math.sqrt(i)):r.set(0,0,0)}static getBarycoord(e,t,n,r,i){Cr.subVectors(r,t);Rr.subVectors(n,t);Pr.subVectors(e,t);const s=Cr.dot(Cr);const a=Cr.dot(Rr);const o=Cr.dot(Pr);const l=Rr.dot(Rr);const c=Rr.dot(Pr);const u=s*l-a*a;if(0===u)return i.set(-2,-1,-1);const h=1/u;const d=(l*o-a*c)*h;const p=(s*c-a*o)*h;return i.set(1-d-p,p,d)}static containsPoint(e,t,n,r){this.getBarycoord(e,t,n,r,Ir);return Ir.x>=0&&Ir.y>=0&&Ir.x+Ir.y<=1}static getUV(e,t,n,r,i,s,a,o){this.getBarycoord(e,t,n,r,Ir);o.set(0,0);o.addScaledVector(i,Ir.x);o.addScaledVector(s,Ir.y);o.addScaledVector(a,Ir.z);return o}static isFrontFacing(e,t,n,r){Cr.subVectors(n,t);Rr.subVectors(e,t);return Cr.cross(Rr).dot(r)<0}set(e,t,n){this.a.copy(e);this.b.copy(t);this.c.copy(n);return this}setFromPointsAndIndices(e,t,n,r){this.a.copy(e[t]);this.b.copy(e[n]);this.c.copy(e[r]);return this}setFromAttributeAndIndices(e,t,n,r){this.a.fromBufferAttribute(e,t);this.b.fromBufferAttribute(e,n);this.c.fromBufferAttribute(e,r);return this}clone(){return(new this.constructor).copy(this)}copy(e){this.a.copy(e.a);this.b.copy(e.b);this.c.copy(e.c);return this}getArea(){Cr.subVectors(this.c,this.b);Rr.subVectors(this.a,this.b);return.5*Cr.cross(Rr).length()}getMidpoint(e){return e.addVectors(this.a,this.b).add(this.c).multiplyScalar(1/3)}getNormal(e){return Triangle.getNormal(this.a,this.b,this.c,e)}getPlane(e){return e.setFromCoplanarPoints(this.a,this.b,this.c)}getBarycoord(e,t){return Triangle.getBarycoord(e,this.a,this.b,this.c,t)}getUV(e,t,n,r,i){return Triangle.getUV(e,this.a,this.b,this.c,t,n,r,i)}containsPoint(e){return Triangle.containsPoint(e,this.a,this.b,this.c)}isFrontFacing(e){return Triangle.isFrontFacing(this.a,this.b,this.c,e)}intersectsBox(e){return e.intersectsTriangle(this)}closestPointToPoint(e,t){const n=this.a,r=this.b,i=this.c;let s,a;Dr.subVectors(r,n);Br.subVectors(i,n);Nr.subVectors(e,n);const o=Dr.dot(Nr);const l=Br.dot(Nr);if(o<=0&&l<=0)return t.copy(n);Ur.subVectors(e,r);const c=Dr.dot(Ur);const u=Br.dot(Ur);if(c>=0&&u<=c)return t.copy(r);const h=o*u-c*l;if(h<=0&&o>=0&&c<=0){s=o/(o-c);return t.copy(n).addScaledVector(Dr,s)}zr.subVectors(e,i);const d=Dr.dot(zr);const p=Br.dot(zr);if(p>=0&&d<=p)return t.copy(i);const f=d*l-o*p;if(f<=0&&l>=0&&p<=0){a=l/(l-p);return t.copy(n).addScaledVector(Br,a)}const m=c*p-d*u;if(m<=0&&u-c>=0&&d-p>=0){Vr.subVectors(i,r);a=(u-c)/(u-c+(d-p));return t.copy(r).addScaledVector(Vr,a)}const g=1/(m+f+h);s=f*g;a=h*g;return t.copy(n).addScaledVector(Dr,s).addScaledVector(Br,a)}equals(e){return e.a.equals(this.a)&&e.b.equals(this.b)&&e.c.equals(this.c)}}let Gr=0;class Material extends EventDispatcher{constructor(){super();Object.defineProperty(this,\"id\",{value:Gr++});this.uuid=generateUUID();this.name=\"\";this.type=\"Material\";this.fog=true;this.blending=y;this.side=h;this.vertexColors=false;this.opacity=1;this.format=Ne;this.transparent=false;this.blendSrc=I;this.blendDst=D;this.blendEquation=w;this.blendSrcAlpha=null;this.blendDstAlpha=null;this.blendEquationAlpha=null;this.depthFunc=H;this.depthTest=true;this.depthWrite=true;this.stencilWriteMask=255;this.stencilFunc=mn;this.stencilRef=0;this.stencilFuncMask=255;this.stencilFail=en;this.stencilZFail=en;this.stencilZPass=en;this.stencilWrite=false;this.clippingPlanes=null;this.clipIntersection=false;this.clipShadows=false;this.shadowSide=null;this.colorWrite=true;this.precision=null;this.polygonOffset=false;this.polygonOffsetFactor=0;this.polygonOffsetUnits=0;this.dithering=false;this.alphaToCoverage=false;this.premultipliedAlpha=false;this.visible=true;this.toneMapped=true;this.userData={};this.version=0;this._alphaTest=0}get alphaTest(){return this._alphaTest}set alphaTest(e){this._alphaTest>0!==e>0&&this.version++;this._alphaTest=e}onBuild(){}onBeforeRender(){}onBeforeCompile(){}customProgramCacheKey(){return this.onBeforeCompile.toString()}setValues(e){if(void 0!==e)for(const t in e){const n=e[t];if(void 0===n){console.warn(\"THREE.Material: '\"+t+\"' parameter is undefined.\");continue}if(\"shading\"===t){console.warn(\"THREE.\"+this.type+\": .shading has been removed. Use the boolean .flatShading instead.\");this.flatShading=n===f;continue}const r=this[t];void 0!==r?r&&r.isColor?r.set(n):r&&r.isVector3&&n&&n.isVector3?r.copy(n):this[t]=n:console.warn(\"THREE.\"+this.type+\": '\"+t+\"' is not a property of this material.\")}}toJSON(e){const t=void 0===e||\"string\"===typeof e;t&&(e={textures:{},images:{}});const n={metadata:{version:4.5,type:\"Material\",generator:\"Material.toJSON\"}};n.uuid=this.uuid;n.type=this.type;\"\"!==this.name&&(n.name=this.name);this.color&&this.color.isColor&&(n.color=this.color.getHex());void 0!==this.roughness&&(n.roughness=this.roughness);void 0!==this.metalness&&(n.metalness=this.metalness);void 0!==this.sheen&&(n.sheen=this.sheen);this.sheenColor&&this.sheenColor.isColor&&(n.sheenColor=this.sheenColor.getHex());void 0!==this.sheenRoughness&&(n.sheenRoughness=this.sheenRoughness);this.emissive&&this.emissive.isColor&&(n.emissive=this.emissive.getHex());this.emissiveIntensity&&1!==this.emissiveIntensity&&(n.emissiveIntensity=this.emissiveIntensity);this.specular&&this.specular.isColor&&(n.specular=this.specular.getHex());void 0!==this.specularIntensity&&(n.specularIntensity=this.specularIntensity);this.specularColor&&this.specularColor.isColor&&(n.specularColor=this.specularColor.getHex());void 0!==this.shininess&&(n.shininess=this.shininess);void 0!==this.clearcoat&&(n.clearcoat=this.clearcoat);void 0!==this.clearcoatRoughness&&(n.clearcoatRoughness=this.clearcoatRoughness);this.clearcoatMap&&this.clearcoatMap.isTexture&&(n.clearcoatMap=this.clearcoatMap.toJSON(e).uuid);this.clearcoatRoughnessMap&&this.clearcoatRoughnessMap.isTexture&&(n.clearcoatRoughnessMap=this.clearcoatRoughnessMap.toJSON(e).uuid);if(this.clearcoatNormalMap&&this.clearcoatNormalMap.isTexture){n.clearcoatNormalMap=this.clearcoatNormalMap.toJSON(e).uuid;n.clearcoatNormalScale=this.clearcoatNormalScale.toArray()}this.map&&this.map.isTexture&&(n.map=this.map.toJSON(e).uuid);this.matcap&&this.matcap.isTexture&&(n.matcap=this.matcap.toJSON(e).uuid);this.alphaMap&&this.alphaMap.isTexture&&(n.alphaMap=this.alphaMap.toJSON(e).uuid);if(this.lightMap&&this.lightMap.isTexture){n.lightMap=this.lightMap.toJSON(e).uuid;n.lightMapIntensity=this.lightMapIntensity}if(this.aoMap&&this.aoMap.isTexture){n.aoMap=this.aoMap.toJSON(e).uuid;n.aoMapIntensity=this.aoMapIntensity}if(this.bumpMap&&this.bumpMap.isTexture){n.bumpMap=this.bumpMap.toJSON(e).uuid;n.bumpScale=this.bumpScale}if(this.normalMap&&this.normalMap.isTexture){n.normalMap=this.normalMap.toJSON(e).uuid;n.normalMapType=this.normalMapType;n.normalScale=this.normalScale.toArray()}if(this.displacementMap&&this.displacementMap.isTexture){n.displacementMap=this.displacementMap.toJSON(e).uuid;n.displacementScale=this.displacementScale;n.displacementBias=this.displacementBias}this.roughnessMap&&this.roughnessMap.isTexture&&(n.roughnessMap=this.roughnessMap.toJSON(e).uuid);this.metalnessMap&&this.metalnessMap.isTexture&&(n.metalnessMap=this.metalnessMap.toJSON(e).uuid);this.emissiveMap&&this.emissiveMap.isTexture&&(n.emissiveMap=this.emissiveMap.toJSON(e).uuid);this.specularMap&&this.specularMap.isTexture&&(n.specularMap=this.specularMap.toJSON(e).uuid);this.specularIntensityMap&&this.specularIntensityMap.isTexture&&(n.specularIntensityMap=this.specularIntensityMap.toJSON(e).uuid);this.specularColorMap&&this.specularColorMap.isTexture&&(n.specularColorMap=this.specularColorMap.toJSON(e).uuid);if(this.envMap&&this.envMap.isTexture){n.envMap=this.envMap.toJSON(e).uuid;void 0!==this.combine&&(n.combine=this.combine)}void 0!==this.envMapIntensity&&(n.envMapIntensity=this.envMapIntensity);void 0!==this.reflectivity&&(n.reflectivity=this.reflectivity);void 0!==this.refractionRatio&&(n.refractionRatio=this.refractionRatio);this.gradientMap&&this.gradientMap.isTexture&&(n.gradientMap=this.gradientMap.toJSON(e).uuid);void 0!==this.transmission&&(n.transmission=this.transmission);this.transmissionMap&&this.transmissionMap.isTexture&&(n.transmissionMap=this.transmissionMap.toJSON(e).uuid);void 0!==this.thickness&&(n.thickness=this.thickness);this.thicknessMap&&this.thicknessMap.isTexture&&(n.thicknessMap=this.thicknessMap.toJSON(e).uuid);void 0!==this.attenuationDistance&&(n.attenuationDistance=this.attenuationDistance);void 0!==this.attenuationColor&&(n.attenuationColor=this.attenuationColor.getHex());void 0!==this.size&&(n.size=this.size);null!==this.shadowSide&&(n.shadowSide=this.shadowSide);void 0!==this.sizeAttenuation&&(n.sizeAttenuation=this.sizeAttenuation);this.blending!==y&&(n.blending=this.blending);this.side!==h&&(n.side=this.side);this.vertexColors&&(n.vertexColors=true);this.opacity<1&&(n.opacity=this.opacity);this.format!==Ne&&(n.format=this.format);true===this.transparent&&(n.transparent=this.transparent);n.depthFunc=this.depthFunc;n.depthTest=this.depthTest;n.depthWrite=this.depthWrite;n.colorWrite=this.colorWrite;n.stencilWrite=this.stencilWrite;n.stencilWriteMask=this.stencilWriteMask;n.stencilFunc=this.stencilFunc;n.stencilRef=this.stencilRef;n.stencilFuncMask=this.stencilFuncMask;n.stencilFail=this.stencilFail;n.stencilZFail=this.stencilZFail;n.stencilZPass=this.stencilZPass;this.rotation&&0!==this.rotation&&(n.rotation=this.rotation);true===this.polygonOffset&&(n.polygonOffset=true);0!==this.polygonOffsetFactor&&(n.polygonOffsetFactor=this.polygonOffsetFactor);0!==this.polygonOffsetUnits&&(n.polygonOffsetUnits=this.polygonOffsetUnits);this.linewidth&&1!==this.linewidth&&(n.linewidth=this.linewidth);void 0!==this.dashSize&&(n.dashSize=this.dashSize);void 0!==this.gapSize&&(n.gapSize=this.gapSize);void 0!==this.scale&&(n.scale=this.scale);true===this.dithering&&(n.dithering=true);this.alphaTest>0&&(n.alphaTest=this.alphaTest);true===this.alphaToCoverage&&(n.alphaToCoverage=this.alphaToCoverage);true===this.premultipliedAlpha&&(n.premultipliedAlpha=this.premultipliedAlpha);true===this.wireframe&&(n.wireframe=this.wireframe);this.wireframeLinewidth>1&&(n.wireframeLinewidth=this.wireframeLinewidth);\"round\"!==this.wireframeLinecap&&(n.wireframeLinecap=this.wireframeLinecap);\"round\"!==this.wireframeLinejoin&&(n.wireframeLinejoin=this.wireframeLinejoin);true===this.flatShading&&(n.flatShading=this.flatShading);false===this.visible&&(n.visible=false);false===this.toneMapped&&(n.toneMapped=false);\"{}\"!==JSON.stringify(this.userData)&&(n.userData=this.userData);function extractFromCache(e){const t=[];for(const n in e){const r=e[n];delete r.metadata;t.push(r)}return t}if(t){const t=extractFromCache(e.textures);const r=extractFromCache(e.images);t.length>0&&(n.textures=t);r.length>0&&(n.images=r)}return n}clone(){return(new this.constructor).copy(this)}copy(e){this.name=e.name;this.fog=e.fog;this.blending=e.blending;this.side=e.side;this.vertexColors=e.vertexColors;this.opacity=e.opacity;this.format=e.format;this.transparent=e.transparent;this.blendSrc=e.blendSrc;this.blendDst=e.blendDst;this.blendEquation=e.blendEquation;this.blendSrcAlpha=e.blendSrcAlpha;this.blendDstAlpha=e.blendDstAlpha;this.blendEquationAlpha=e.blendEquationAlpha;this.depthFunc=e.depthFunc;this.depthTest=e.depthTest;this.depthWrite=e.depthWrite;this.stencilWriteMask=e.stencilWriteMask;this.stencilFunc=e.stencilFunc;this.stencilRef=e.stencilRef;this.stencilFuncMask=e.stencilFuncMask;this.stencilFail=e.stencilFail;this.stencilZFail=e.stencilZFail;this.stencilZPass=e.stencilZPass;this.stencilWrite=e.stencilWrite;const t=e.clippingPlanes;let n=null;if(null!==t){const e=t.length;n=new Array(e);for(let r=0;r!==e;++r)n[r]=t[r].clone()}this.clippingPlanes=n;this.clipIntersection=e.clipIntersection;this.clipShadows=e.clipShadows;this.shadowSide=e.shadowSide;this.colorWrite=e.colorWrite;this.precision=e.precision;this.polygonOffset=e.polygonOffset;this.polygonOffsetFactor=e.polygonOffsetFactor;this.polygonOffsetUnits=e.polygonOffsetUnits;this.dithering=e.dithering;this.alphaTest=e.alphaTest;this.alphaToCoverage=e.alphaToCoverage;this.premultipliedAlpha=e.premultipliedAlpha;this.visible=e.visible;this.toneMapped=e.toneMapped;this.userData=JSON.parse(JSON.stringify(e.userData));return this}dispose(){this.dispatchEvent({type:\"dispose\"})}set needsUpdate(e){true===e&&this.version++}}Material.prototype.isMaterial=true;const Fr={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};const Or={h:0,s:0,l:0};const Hr={h:0,s:0,l:0};function hue2rgb(e,t,n){n<0&&(n+=1);n>1&&(n-=1);return n<1/6?e+6*(t-e)*n:n<.5?t:n<2/3?e+6*(t-e)*(2/3-n):e}function SRGBToLinear(e){return e<.04045?.0773993808*e:Math.pow(.9478672986*e+.0521327014,2.4)}function LinearToSRGB(e){return e<.0031308?12.92*e:1.055*Math.pow(e,.41666)-.055}class Color{constructor(e,t,n){return void 0===t&&void 0===n?this.set(e):this.setRGB(e,t,n)}set(e){e&&e.isColor?this.copy(e):\"number\"===typeof e?this.setHex(e):\"string\"===typeof e&&this.setStyle(e);return this}setScalar(e){this.r=e;this.g=e;this.b=e;return this}setHex(e){e=Math.floor(e);this.r=(e>>16&255)/255;this.g=(e>>8&255)/255;this.b=(255&e)/255;return this}setRGB(e,t,n){this.r=e;this.g=t;this.b=n;return this}setHSL(e,t,n){e=euclideanModulo(e,1);t=clamp(t,0,1);n=clamp(n,0,1);if(0===t)this.r=this.g=this.b=n;else{const r=n<=.5?n*(1+t):n+t-n*t;const i=2*n-r;this.r=hue2rgb(i,r,e+1/3);this.g=hue2rgb(i,r,e);this.b=hue2rgb(i,r,e-1/3)}return this}setStyle(e){function handleAlpha(t){void 0!==t&&parseFloat(t)<1&&console.warn(\"THREE.Color: Alpha component of \"+e+\" will be ignored.\")}let t;if(t=/^((?:rgb|hsl)a?)\\(([^\\)]*)\\)/.exec(e)){let e;const n=t[1];const r=t[2];switch(n){case\"rgb\":case\"rgba\":if(e=/^\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)\\s*(?:,\\s*(\\d*\\.?\\d+)\\s*)?$/.exec(r)){this.r=Math.min(255,parseInt(e[1],10))/255;this.g=Math.min(255,parseInt(e[2],10))/255;this.b=Math.min(255,parseInt(e[3],10))/255;handleAlpha(e[4]);return this}if(e=/^\\s*(\\d+)\\%\\s*,\\s*(\\d+)\\%\\s*,\\s*(\\d+)\\%\\s*(?:,\\s*(\\d*\\.?\\d+)\\s*)?$/.exec(r)){this.r=Math.min(100,parseInt(e[1],10))/100;this.g=Math.min(100,parseInt(e[2],10))/100;this.b=Math.min(100,parseInt(e[3],10))/100;handleAlpha(e[4]);return this}break;case\"hsl\":case\"hsla\":if(e=/^\\s*(\\d*\\.?\\d+)\\s*,\\s*(\\d+)\\%\\s*,\\s*(\\d+)\\%\\s*(?:,\\s*(\\d*\\.?\\d+)\\s*)?$/.exec(r)){const t=parseFloat(e[1])/360;const n=parseInt(e[2],10)/100;const r=parseInt(e[3],10)/100;handleAlpha(e[4]);return this.setHSL(t,n,r)}break}}else if(t=/^\\#([A-Fa-f\\d]+)$/.exec(e)){const e=t[1];const n=e.length;if(3===n){this.r=parseInt(e.charAt(0)+e.charAt(0),16)/255;this.g=parseInt(e.charAt(1)+e.charAt(1),16)/255;this.b=parseInt(e.charAt(2)+e.charAt(2),16)/255;return this}if(6===n){this.r=parseInt(e.charAt(0)+e.charAt(1),16)/255;this.g=parseInt(e.charAt(2)+e.charAt(3),16)/255;this.b=parseInt(e.charAt(4)+e.charAt(5),16)/255;return this}}return e&&e.length>0?this.setColorName(e):this}setColorName(e){const t=Fr[e.toLowerCase()];void 0!==t?this.setHex(t):console.warn(\"THREE.Color: Unknown color \"+e);return this}clone(){return new this.constructor(this.r,this.g,this.b)}copy(e){this.r=e.r;this.g=e.g;this.b=e.b;return this}copySRGBToLinear(e){this.r=SRGBToLinear(e.r);this.g=SRGBToLinear(e.g);this.b=SRGBToLinear(e.b);return this}copyLinearToSRGB(e){this.r=LinearToSRGB(e.r);this.g=LinearToSRGB(e.g);this.b=LinearToSRGB(e.b);return this}convertSRGBToLinear(){this.copySRGBToLinear(this);return this}convertLinearToSRGB(){this.copyLinearToSRGB(this);return this}getHex(){return 255*this.r<<16^255*this.g<<8^255*this.b<<0}getHexString(){return(\"000000\"+this.getHex().toString(16)).slice(-6)}getHSL(e){const t=this.r,n=this.g,r=this.b;const i=Math.max(t,n,r);const s=Math.min(t,n,r);let a,o;const l=(s+i)/2;if(s===i){a=0;o=0}else{const e=i-s;o=l<=.5?e/(i+s):e/(2-i-s);switch(i){case t:a=(n-r)/e+(n<r?6:0);break;case n:a=(r-t)/e+2;break;case r:a=(t-n)/e+4;break}a/=6}e.h=a;e.s=o;e.l=l;return e}getStyle(){return\"rgb(\"+(255*this.r|0)+\",\"+(255*this.g|0)+\",\"+(255*this.b|0)+\")\"}offsetHSL(e,t,n){this.getHSL(Or);Or.h+=e;Or.s+=t;Or.l+=n;this.setHSL(Or.h,Or.s,Or.l);return this}add(e){this.r+=e.r;this.g+=e.g;this.b+=e.b;return this}addColors(e,t){this.r=e.r+t.r;this.g=e.g+t.g;this.b=e.b+t.b;return this}addScalar(e){this.r+=e;this.g+=e;this.b+=e;return this}sub(e){this.r=Math.max(0,this.r-e.r);this.g=Math.max(0,this.g-e.g);this.b=Math.max(0,this.b-e.b);return this}multiply(e){this.r*=e.r;this.g*=e.g;this.b*=e.b;return this}multiplyScalar(e){this.r*=e;this.g*=e;this.b*=e;return this}lerp(e,t){this.r+=(e.r-this.r)*t;this.g+=(e.g-this.g)*t;this.b+=(e.b-this.b)*t;return this}lerpColors(e,t,n){this.r=e.r+(t.r-e.r)*n;this.g=e.g+(t.g-e.g)*n;this.b=e.b+(t.b-e.b)*n;return this}lerpHSL(e,t){this.getHSL(Or);e.getHSL(Hr);const n=lerp(Or.h,Hr.h,t);const r=lerp(Or.s,Hr.s,t);const i=lerp(Or.l,Hr.l,t);this.setHSL(n,r,i);return this}equals(e){return e.r===this.r&&e.g===this.g&&e.b===this.b}fromArray(e,t=0){this.r=e[t];this.g=e[t+1];this.b=e[t+2];return this}toArray(e=[],t=0){e[t]=this.r;e[t+1]=this.g;e[t+2]=this.b;return e}fromBufferAttribute(e,t){this.r=e.getX(t);this.g=e.getY(t);this.b=e.getZ(t);if(true===e.normalized){this.r/=255;this.g/=255;this.b/=255}return this}toJSON(){return this.getHex()}}Color.NAMES=Fr;Color.prototype.isColor=true;Color.prototype.r=1;Color.prototype.g=1;Color.prototype.b=1;class MeshBasicMaterial extends Material{constructor(e){super();this.type=\"MeshBasicMaterial\";this.color=new Color(16777215);this.map=null;this.lightMap=null;this.lightMapIntensity=1;this.aoMap=null;this.aoMapIntensity=1;this.specularMap=null;this.alphaMap=null;this.envMap=null;this.combine=X;this.reflectivity=1;this.refractionRatio=.98;this.wireframe=false;this.wireframeLinewidth=1;this.wireframeLinecap=\"round\";this.wireframeLinejoin=\"round\";this.setValues(e)}copy(e){super.copy(e);this.color.copy(e.color);this.map=e.map;this.lightMap=e.lightMap;this.lightMapIntensity=e.lightMapIntensity;this.aoMap=e.aoMap;this.aoMapIntensity=e.aoMapIntensity;this.specularMap=e.specularMap;this.alphaMap=e.alphaMap;this.envMap=e.envMap;this.combine=e.combine;this.reflectivity=e.reflectivity;this.refractionRatio=e.refractionRatio;this.wireframe=e.wireframe;this.wireframeLinewidth=e.wireframeLinewidth;this.wireframeLinecap=e.wireframeLinecap;this.wireframeLinejoin=e.wireframeLinejoin;return this}}MeshBasicMaterial.prototype.isMeshBasicMaterial=true;const kr=new Vector3;const Wr=new Vector2;class BufferAttribute{constructor(e,t,n){if(Array.isArray(e))throw new TypeError(\"THREE.BufferAttribute: array should be a Typed Array.\");this.name=\"\";this.array=e;this.itemSize=t;this.count=void 0!==e?e.length/t:0;this.normalized=true===n;this.usage=gn;this.updateRange={offset:0,count:-1};this.version=0}onUploadCallback(){}set needsUpdate(e){true===e&&this.version++}setUsage(e){this.usage=e;return this}copy(e){this.name=e.name;this.array=new e.array.constructor(e.array);this.itemSize=e.itemSize;this.count=e.count;this.normalized=e.normalized;this.usage=e.usage;return this}copyAt(e,t,n){e*=this.itemSize;n*=t.itemSize;for(let r=0,i=this.itemSize;r<i;r++)this.array[e+r]=t.array[n+r];return this}copyArray(e){this.array.set(e);return this}copyColorsArray(e){const t=this.array;let n=0;for(let r=0,i=e.length;r<i;r++){let i=e[r];if(void 0===i){console.warn(\"THREE.BufferAttribute.copyColorsArray(): color is undefined\",r);i=new Color}t[n++]=i.r;t[n++]=i.g;t[n++]=i.b}return this}copyVector2sArray(e){const t=this.array;let n=0;for(let r=0,i=e.length;r<i;r++){let i=e[r];if(void 0===i){console.warn(\"THREE.BufferAttribute.copyVector2sArray(): vector is undefined\",r);i=new Vector2}t[n++]=i.x;t[n++]=i.y}return this}copyVector3sArray(e){const t=this.array;let n=0;for(let r=0,i=e.length;r<i;r++){let i=e[r];if(void 0===i){console.warn(\"THREE.BufferAttribute.copyVector3sArray(): vector is undefined\",r);i=new Vector3}t[n++]=i.x;t[n++]=i.y;t[n++]=i.z}return this}copyVector4sArray(e){const t=this.array;let n=0;for(let r=0,i=e.length;r<i;r++){let i=e[r];if(void 0===i){console.warn(\"THREE.BufferAttribute.copyVector4sArray(): vector is undefined\",r);i=new Vector4}t[n++]=i.x;t[n++]=i.y;t[n++]=i.z;t[n++]=i.w}return this}applyMatrix3(e){if(2===this.itemSize)for(let t=0,n=this.count;t<n;t++){Wr.fromBufferAttribute(this,t);Wr.applyMatrix3(e);this.setXY(t,Wr.x,Wr.y)}else if(3===this.itemSize)for(let t=0,n=this.count;t<n;t++){kr.fromBufferAttribute(this,t);kr.applyMatrix3(e);this.setXYZ(t,kr.x,kr.y,kr.z)}return this}applyMatrix4(e){for(let t=0,n=this.count;t<n;t++){kr.x=this.getX(t);kr.y=this.getY(t);kr.z=this.getZ(t);kr.applyMatrix4(e);this.setXYZ(t,kr.x,kr.y,kr.z)}return this}applyNormalMatrix(e){for(let t=0,n=this.count;t<n;t++){kr.x=this.getX(t);kr.y=this.getY(t);kr.z=this.getZ(t);kr.applyNormalMatrix(e);this.setXYZ(t,kr.x,kr.y,kr.z)}return this}transformDirection(e){for(let t=0,n=this.count;t<n;t++){kr.x=this.getX(t);kr.y=this.getY(t);kr.z=this.getZ(t);kr.transformDirection(e);this.setXYZ(t,kr.x,kr.y,kr.z)}return this}set(e,t=0){this.array.set(e,t);return this}getX(e){return this.array[e*this.itemSize]}setX(e,t){this.array[e*this.itemSize]=t;return this}getY(e){return this.array[e*this.itemSize+1]}setY(e,t){this.array[e*this.itemSize+1]=t;return this}getZ(e){return this.array[e*this.itemSize+2]}setZ(e,t){this.array[e*this.itemSize+2]=t;return this}getW(e){return this.array[e*this.itemSize+3]}setW(e,t){this.array[e*this.itemSize+3]=t;return this}setXY(e,t,n){e*=this.itemSize;this.array[e+0]=t;this.array[e+1]=n;return this}setXYZ(e,t,n,r){e*=this.itemSize;this.array[e+0]=t;this.array[e+1]=n;this.array[e+2]=r;return this}setXYZW(e,t,n,r,i){e*=this.itemSize;this.array[e+0]=t;this.array[e+1]=n;this.array[e+2]=r;this.array[e+3]=i;return this}onUpload(e){this.onUploadCallback=e;return this}clone(){return new this.constructor(this.array,this.itemSize).copy(this)}toJSON(){const e={itemSize:this.itemSize,type:this.array.constructor.name,array:Array.prototype.slice.call(this.array),normalized:this.normalized};\"\"!==this.name&&(e.name=this.name);this.usage!==gn&&(e.usage=this.usage);0===this.updateRange.offset&&-1===this.updateRange.count||(e.updateRange=this.updateRange);return e}}BufferAttribute.prototype.isBufferAttribute=true;class Int8BufferAttribute extends BufferAttribute{constructor(e,t,n){super(new Int8Array(e),t,n)}}class Uint8BufferAttribute extends BufferAttribute{constructor(e,t,n){super(new Uint8Array(e),t,n)}}class Uint8ClampedBufferAttribute extends BufferAttribute{constructor(e,t,n){super(new Uint8ClampedArray(e),t,n)}}class Int16BufferAttribute extends BufferAttribute{constructor(e,t,n){super(new Int16Array(e),t,n)}}class Uint16BufferAttribute extends BufferAttribute{constructor(e,t,n){super(new Uint16Array(e),t,n)}}class Int32BufferAttribute extends BufferAttribute{constructor(e,t,n){super(new Int32Array(e),t,n)}}class Uint32BufferAttribute extends BufferAttribute{constructor(e,t,n){super(new Uint32Array(e),t,n)}}class Float16BufferAttribute extends BufferAttribute{constructor(e,t,n){super(new Uint16Array(e),t,n)}}Float16BufferAttribute.prototype.isFloat16BufferAttribute=true;class Float32BufferAttribute extends BufferAttribute{constructor(e,t,n){super(new Float32Array(e),t,n)}}class Float64BufferAttribute extends BufferAttribute{constructor(e,t,n){super(new Float64Array(e),t,n)}}let jr=0;const qr=new Matrix4;const Xr=new Object3D;const Jr=new Vector3;const Yr=new Box3;const Zr=new Box3;const Qr=new Vector3;class BufferGeometry extends EventDispatcher{constructor(){super();Object.defineProperty(this,\"id\",{value:jr++});this.uuid=generateUUID();this.name=\"\";this.type=\"BufferGeometry\";this.index=null;this.attributes={};this.morphAttributes={};this.morphTargetsRelative=false;this.groups=[];this.boundingBox=null;this.boundingSphere=null;this.drawRange={start:0,count:Infinity};this.userData={}}getIndex(){return this.index}setIndex(e){Array.isArray(e)?this.index=new(arrayMax(e)>65535?Uint32BufferAttribute:Uint16BufferAttribute)(e,1):this.index=e;return this}getAttribute(e){return this.attributes[e]}setAttribute(e,t){this.attributes[e]=t;return this}deleteAttribute(e){delete this.attributes[e];return this}hasAttribute(e){return void 0!==this.attributes[e]}addGroup(e,t,n=0){this.groups.push({start:e,count:t,materialIndex:n})}clearGroups(){this.groups=[]}setDrawRange(e,t){this.drawRange.start=e;this.drawRange.count=t}applyMatrix4(e){const t=this.attributes.position;if(void 0!==t){t.applyMatrix4(e);t.needsUpdate=true}const n=this.attributes.normal;if(void 0!==n){const t=(new Matrix3).getNormalMatrix(e);n.applyNormalMatrix(t);n.needsUpdate=true}const r=this.attributes.tangent;if(void 0!==r){r.transformDirection(e);r.needsUpdate=true}null!==this.boundingBox&&this.computeBoundingBox();null!==this.boundingSphere&&this.computeBoundingSphere();return this}applyQuaternion(e){qr.makeRotationFromQuaternion(e);this.applyMatrix4(qr);return this}rotateX(e){qr.makeRotationX(e);this.applyMatrix4(qr);return this}rotateY(e){qr.makeRotationY(e);this.applyMatrix4(qr);return this}rotateZ(e){qr.makeRotationZ(e);this.applyMatrix4(qr);return this}translate(e,t,n){qr.makeTranslation(e,t,n);this.applyMatrix4(qr);return this}scale(e,t,n){qr.makeScale(e,t,n);this.applyMatrix4(qr);return this}lookAt(e){Xr.lookAt(e);Xr.updateMatrix();this.applyMatrix4(Xr.matrix);return this}center(){this.computeBoundingBox();this.boundingBox.getCenter(Jr).negate();this.translate(Jr.x,Jr.y,Jr.z);return this}setFromPoints(e){const t=[];for(let n=0,r=e.length;n<r;n++){const r=e[n];t.push(r.x,r.y,r.z||0)}this.setAttribute(\"position\",new Float32BufferAttribute(t,3));return this}computeBoundingBox(){null===this.boundingBox&&(this.boundingBox=new Box3);const e=this.attributes.position;const t=this.morphAttributes.position;if(e&&e.isGLBufferAttribute){console.error('THREE.BufferGeometry.computeBoundingBox(): GLBufferAttribute requires a manual bounding box. Alternatively set \"mesh.frustumCulled\" to \"false\".',this);this.boundingBox.set(new Vector3(-Infinity,-Infinity,-Infinity),new Vector3(Infinity,Infinity,Infinity))}else{if(void 0!==e){this.boundingBox.setFromBufferAttribute(e);if(t)for(let e=0,n=t.length;e<n;e++){const n=t[e];Yr.setFromBufferAttribute(n);if(this.morphTargetsRelative){Qr.addVectors(this.boundingBox.min,Yr.min);this.boundingBox.expandByPoint(Qr);Qr.addVectors(this.boundingBox.max,Yr.max);this.boundingBox.expandByPoint(Qr)}else{this.boundingBox.expandByPoint(Yr.min);this.boundingBox.expandByPoint(Yr.max)}}}else this.boundingBox.makeEmpty();(isNaN(this.boundingBox.min.x)||isNaN(this.boundingBox.min.y)||isNaN(this.boundingBox.min.z))&&console.error('THREE.BufferGeometry.computeBoundingBox(): Computed min/max have NaN values. The \"position\" attribute is likely to have NaN values.',this)}}computeBoundingSphere(){null===this.boundingSphere&&(this.boundingSphere=new Sphere);const e=this.attributes.position;const t=this.morphAttributes.position;if(e&&e.isGLBufferAttribute){console.error('THREE.BufferGeometry.computeBoundingSphere(): GLBufferAttribute requires a manual bounding sphere. Alternatively set \"mesh.frustumCulled\" to \"false\".',this);this.boundingSphere.set(new Vector3,Infinity)}else if(e){const n=this.boundingSphere.center;Yr.setFromBufferAttribute(e);if(t)for(let e=0,n=t.length;e<n;e++){const n=t[e];Zr.setFromBufferAttribute(n);if(this.morphTargetsRelative){Qr.addVectors(Yr.min,Zr.min);Yr.expandByPoint(Qr);Qr.addVectors(Yr.max,Zr.max);Yr.expandByPoint(Qr)}else{Yr.expandByPoint(Zr.min);Yr.expandByPoint(Zr.max)}}Yr.getCenter(n);let r=0;for(let t=0,i=e.count;t<i;t++){Qr.fromBufferAttribute(e,t);r=Math.max(r,n.distanceToSquared(Qr))}if(t)for(let i=0,s=t.length;i<s;i++){const s=t[i];const a=this.morphTargetsRelative;for(let t=0,i=s.count;t<i;t++){Qr.fromBufferAttribute(s,t);if(a){Jr.fromBufferAttribute(e,t);Qr.add(Jr)}r=Math.max(r,n.distanceToSquared(Qr))}}this.boundingSphere.radius=Math.sqrt(r);isNaN(this.boundingSphere.radius)&&console.error('THREE.BufferGeometry.computeBoundingSphere(): Computed radius is NaN. The \"position\" attribute is likely to have NaN values.',this)}}computeTangents(){const e=this.index;const t=this.attributes;if(null===e||void 0===t.position||void 0===t.normal||void 0===t.uv){console.error(\"THREE.BufferGeometry: .computeTangents() failed. Missing required attributes (index, position, normal or uv)\");return}const n=e.array;const r=t.position.array;const i=t.normal.array;const s=t.uv.array;const a=r.length/3;void 0===t.tangent&&this.setAttribute(\"tangent\",new BufferAttribute(new Float32Array(4*a),4));const o=t.tangent.array;const l=[],c=[];for(let e=0;e<a;e++){l[e]=new Vector3;c[e]=new Vector3}const u=new Vector3,h=new Vector3,d=new Vector3,p=new Vector2,f=new Vector2,m=new Vector2,g=new Vector3,y=new Vector3;function handleTriangle(e,t,n){u.fromArray(r,3*e);h.fromArray(r,3*t);d.fromArray(r,3*n);p.fromArray(s,2*e);f.fromArray(s,2*t);m.fromArray(s,2*n);h.sub(u);d.sub(u);f.sub(p);m.sub(p);const i=1/(f.x*m.y-m.x*f.y);if(isFinite(i)){g.copy(h).multiplyScalar(m.y).addScaledVector(d,-f.y).multiplyScalar(i);y.copy(d).multiplyScalar(f.x).addScaledVector(h,-m.x).multiplyScalar(i);l[e].add(g);l[t].add(g);l[n].add(g);c[e].add(y);c[t].add(y);c[n].add(y)}}let x=this.groups;0===x.length&&(x=[{start:0,count:n.length}]);for(let e=0,t=x.length;e<t;++e){const t=x[e];const r=t.start;const i=t.count;for(let e=r,t=r+i;e<t;e+=3)handleTriangle(n[e+0],n[e+1],n[e+2])}const b=new Vector3,_=new Vector3;const M=new Vector3,w=new Vector3;function handleVertex(e){M.fromArray(i,3*e);w.copy(M);const t=l[e];b.copy(t);b.sub(M.multiplyScalar(M.dot(t))).normalize();_.crossVectors(w,t);const n=_.dot(c[e]);const r=n<0?-1:1;o[4*e]=b.x;o[4*e+1]=b.y;o[4*e+2]=b.z;o[4*e+3]=r}for(let e=0,t=x.length;e<t;++e){const t=x[e];const r=t.start;const i=t.count;for(let e=r,t=r+i;e<t;e+=3){handleVertex(n[e+0]);handleVertex(n[e+1]);handleVertex(n[e+2])}}}computeVertexNormals(){const e=this.index;const t=this.getAttribute(\"position\");if(void 0!==t){let n=this.getAttribute(\"normal\");if(void 0===n){n=new BufferAttribute(new Float32Array(3*t.count),3);this.setAttribute(\"normal\",n)}else for(let e=0,t=n.count;e<t;e++)n.setXYZ(e,0,0,0);const r=new Vector3,i=new Vector3,s=new Vector3;const a=new Vector3,o=new Vector3,l=new Vector3;const c=new Vector3,u=new Vector3;if(e)for(let h=0,d=e.count;h<d;h+=3){const d=e.getX(h+0);const p=e.getX(h+1);const f=e.getX(h+2);r.fromBufferAttribute(t,d);i.fromBufferAttribute(t,p);s.fromBufferAttribute(t,f);c.subVectors(s,i);u.subVectors(r,i);c.cross(u);a.fromBufferAttribute(n,d);o.fromBufferAttribute(n,p);l.fromBufferAttribute(n,f);a.add(c);o.add(c);l.add(c);n.setXYZ(d,a.x,a.y,a.z);n.setXYZ(p,o.x,o.y,o.z);n.setXYZ(f,l.x,l.y,l.z)}else for(let e=0,a=t.count;e<a;e+=3){r.fromBufferAttribute(t,e+0);i.fromBufferAttribute(t,e+1);s.fromBufferAttribute(t,e+2);c.subVectors(s,i);u.subVectors(r,i);c.cross(u);n.setXYZ(e+0,c.x,c.y,c.z);n.setXYZ(e+1,c.x,c.y,c.z);n.setXYZ(e+2,c.x,c.y,c.z)}this.normalizeNormals();n.needsUpdate=true}}merge(e,t){if(!(e&&e.isBufferGeometry)){console.error(\"THREE.BufferGeometry.merge(): geometry not an instance of THREE.BufferGeometry.\",e);return}if(void 0===t){t=0;console.warn(\"THREE.BufferGeometry.merge(): Overwriting original geometry, starting at offset=0. Use BufferGeometryUtils.mergeBufferGeometries() for lossless merge.\")}const n=this.attributes;for(const r in n){if(void 0===e.attributes[r])continue;const i=n[r];const s=i.array;const a=e.attributes[r];const o=a.array;const l=a.itemSize*t;const c=Math.min(o.length,s.length-l);for(let e=0,t=l;e<c;e++,t++)s[t]=o[e]}return this}normalizeNormals(){const e=this.attributes.normal;for(let t=0,n=e.count;t<n;t++){Qr.fromBufferAttribute(e,t);Qr.normalize();e.setXYZ(t,Qr.x,Qr.y,Qr.z)}}toNonIndexed(){function convertBufferAttribute(e,t){const n=e.array;const r=e.itemSize;const i=e.normalized;const s=new n.constructor(t.length*r);let a=0,o=0;for(let i=0,l=t.length;i<l;i++){a=e.isInterleavedBufferAttribute?t[i]*e.data.stride+e.offset:t[i]*r;for(let e=0;e<r;e++)s[o++]=n[a++]}return new BufferAttribute(s,r,i)}if(null===this.index){console.warn(\"THREE.BufferGeometry.toNonIndexed(): BufferGeometry is already non-indexed.\");return this}const e=new BufferGeometry;const t=this.index.array;const n=this.attributes;for(const r in n){const i=n[r];const s=convertBufferAttribute(i,t);e.setAttribute(r,s)}const r=this.morphAttributes;for(const n in r){const i=[];const s=r[n];for(let e=0,n=s.length;e<n;e++){const n=s[e];const r=convertBufferAttribute(n,t);i.push(r)}e.morphAttributes[n]=i}e.morphTargetsRelative=this.morphTargetsRelative;const i=this.groups;for(let t=0,n=i.length;t<n;t++){const n=i[t];e.addGroup(n.start,n.count,n.materialIndex)}return e}toJSON(){const e={metadata:{version:4.5,type:\"BufferGeometry\",generator:\"BufferGeometry.toJSON\"}};e.uuid=this.uuid;e.type=this.type;\"\"!==this.name&&(e.name=this.name);Object.keys(this.userData).length>0&&(e.userData=this.userData);if(void 0!==this.parameters){const t=this.parameters;for(const n in t)void 0!==t[n]&&(e[n]=t[n]);return e}e.data={attributes:{}};const t=this.index;null!==t&&(e.data.index={type:t.array.constructor.name,array:Array.prototype.slice.call(t.array)});const n=this.attributes;for(const t in n){const r=n[t];e.data.attributes[t]=r.toJSON(e.data)}const r={};let i=false;for(const t in this.morphAttributes){const n=this.morphAttributes[t];const s=[];for(let t=0,r=n.length;t<r;t++){const r=n[t];s.push(r.toJSON(e.data))}if(s.length>0){r[t]=s;i=true}}if(i){e.data.morphAttributes=r;e.data.morphTargetsRelative=this.morphTargetsRelative}const s=this.groups;s.length>0&&(e.data.groups=JSON.parse(JSON.stringify(s)));const a=this.boundingSphere;null!==a&&(e.data.boundingSphere={center:a.center.toArray(),radius:a.radius});return e}clone(){return(new this.constructor).copy(this)}copy(e){this.index=null;this.attributes={};this.morphAttributes={};this.groups=[];this.boundingBox=null;this.boundingSphere=null;const t={};this.name=e.name;const n=e.index;null!==n&&this.setIndex(n.clone(t));const r=e.attributes;for(const e in r){const n=r[e];this.setAttribute(e,n.clone(t))}const i=e.morphAttributes;for(const e in i){const n=[];const r=i[e];for(let e=0,i=r.length;e<i;e++)n.push(r[e].clone(t));this.morphAttributes[e]=n}this.morphTargetsRelative=e.morphTargetsRelative;const s=e.groups;for(let e=0,t=s.length;e<t;e++){const t=s[e];this.addGroup(t.start,t.count,t.materialIndex)}const a=e.boundingBox;null!==a&&(this.boundingBox=a.clone());const o=e.boundingSphere;null!==o&&(this.boundingSphere=o.clone());this.drawRange.start=e.drawRange.start;this.drawRange.count=e.drawRange.count;this.userData=e.userData;void 0!==e.parameters&&(this.parameters=Object.assign({},e.parameters));return this}dispose(){this.dispatchEvent({type:\"dispose\"})}}BufferGeometry.prototype.isBufferGeometry=true;const Kr=new Matrix4;const $r=new Ray;const ei=new Sphere;const ti=new Vector3;const ni=new Vector3;const ri=new Vector3;const ii=new Vector3;const si=new Vector3;const ai=new Vector3;const oi=new Vector3;const li=new Vector3;const ci=new Vector3;const ui=new Vector2;const hi=new Vector2;const di=new Vector2;const pi=new Vector3;const fi=new Vector3;class Mesh extends Object3D{constructor(e=new BufferGeometry,t=new MeshBasicMaterial){super();this.type=\"Mesh\";this.geometry=e;this.material=t;this.updateMorphTargets()}copy(e){super.copy(e);void 0!==e.morphTargetInfluences&&(this.morphTargetInfluences=e.morphTargetInfluences.slice());void 0!==e.morphTargetDictionary&&(this.morphTargetDictionary=Object.assign({},e.morphTargetDictionary));this.material=e.material;this.geometry=e.geometry;return this}updateMorphTargets(){const e=this.geometry;if(e.isBufferGeometry){const t=e.morphAttributes;const n=Object.keys(t);if(n.length>0){const e=t[n[0]];if(void 0!==e){this.morphTargetInfluences=[];this.morphTargetDictionary={};for(let t=0,n=e.length;t<n;t++){const n=e[t].name||String(t);this.morphTargetInfluences.push(0);this.morphTargetDictionary[n]=t}}}}else{const t=e.morphTargets;void 0!==t&&t.length>0&&console.error(\"THREE.Mesh.updateMorphTargets() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.\")}}raycast(e,t){const n=this.geometry;const r=this.material;const i=this.matrixWorld;if(void 0===r)return;null===n.boundingSphere&&n.computeBoundingSphere();ei.copy(n.boundingSphere);ei.applyMatrix4(i);if(false===e.ray.intersectsSphere(ei))return;Kr.copy(i).invert();$r.copy(e.ray).applyMatrix4(Kr);if(null!==n.boundingBox&&false===$r.intersectsBox(n.boundingBox))return;let s;if(n.isBufferGeometry){const i=n.index;const a=n.attributes.position;const o=n.morphAttributes.position;const l=n.morphTargetsRelative;const c=n.attributes.uv;const u=n.attributes.uv2;const h=n.groups;const d=n.drawRange;if(null!==i)if(Array.isArray(r))for(let n=0,p=h.length;n<p;n++){const p=h[n];const f=r[p.materialIndex];const m=Math.max(p.start,d.start);const g=Math.min(i.count,Math.min(p.start+p.count,d.start+d.count));for(let n=m,r=g;n<r;n+=3){const r=i.getX(n);const h=i.getX(n+1);const d=i.getX(n+2);s=checkBufferGeometryIntersection(this,f,e,$r,a,o,l,c,u,r,h,d);if(s){s.faceIndex=Math.floor(n/3);s.face.materialIndex=p.materialIndex;t.push(s)}}}else{const n=Math.max(0,d.start);const h=Math.min(i.count,d.start+d.count);for(let d=n,p=h;d<p;d+=3){const n=i.getX(d);const h=i.getX(d+1);const p=i.getX(d+2);s=checkBufferGeometryIntersection(this,r,e,$r,a,o,l,c,u,n,h,p);if(s){s.faceIndex=Math.floor(d/3);t.push(s)}}}else if(void 0!==a)if(Array.isArray(r))for(let n=0,i=h.length;n<i;n++){const i=h[n];const p=r[i.materialIndex];const f=Math.max(i.start,d.start);const m=Math.min(a.count,Math.min(i.start+i.count,d.start+d.count));for(let n=f,r=m;n<r;n+=3){const r=n;const h=n+1;const d=n+2;s=checkBufferGeometryIntersection(this,p,e,$r,a,o,l,c,u,r,h,d);if(s){s.faceIndex=Math.floor(n/3);s.face.materialIndex=i.materialIndex;t.push(s)}}}else{const n=Math.max(0,d.start);const i=Math.min(a.count,d.start+d.count);for(let h=n,d=i;h<d;h+=3){const n=h;const i=h+1;const d=h+2;s=checkBufferGeometryIntersection(this,r,e,$r,a,o,l,c,u,n,i,d);if(s){s.faceIndex=Math.floor(h/3);t.push(s)}}}}else n.isGeometry&&console.error(\"THREE.Mesh.raycast() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.\")}}Mesh.prototype.isMesh=true;function checkIntersection(e,t,n,r,i,s,a,o){let l;l=t.side===d?r.intersectTriangle(a,s,i,true,o):r.intersectTriangle(i,s,a,t.side!==p,o);if(null===l)return null;fi.copy(o);fi.applyMatrix4(e.matrixWorld);const c=n.ray.origin.distanceTo(fi);return c<n.near||c>n.far?null:{distance:c,point:fi.clone(),object:e}}function checkBufferGeometryIntersection(e,t,n,r,i,s,a,o,l,c,u,h){ti.fromBufferAttribute(i,c);ni.fromBufferAttribute(i,u);ri.fromBufferAttribute(i,h);const d=e.morphTargetInfluences;if(s&&d){oi.set(0,0,0);li.set(0,0,0);ci.set(0,0,0);for(let e=0,t=s.length;e<t;e++){const t=d[e];const n=s[e];if(0!==t){ii.fromBufferAttribute(n,c);si.fromBufferAttribute(n,u);ai.fromBufferAttribute(n,h);if(a){oi.addScaledVector(ii,t);li.addScaledVector(si,t);ci.addScaledVector(ai,t)}else{oi.addScaledVector(ii.sub(ti),t);li.addScaledVector(si.sub(ni),t);ci.addScaledVector(ai.sub(ri),t)}}}ti.add(oi);ni.add(li);ri.add(ci)}if(e.isSkinnedMesh){e.boneTransform(c,ti);e.boneTransform(u,ni);e.boneTransform(h,ri)}const p=checkIntersection(e,t,n,r,ti,ni,ri,pi);if(p){if(o){ui.fromBufferAttribute(o,c);hi.fromBufferAttribute(o,u);di.fromBufferAttribute(o,h);p.uv=Triangle.getUV(pi,ti,ni,ri,ui,hi,di,new Vector2)}if(l){ui.fromBufferAttribute(l,c);hi.fromBufferAttribute(l,u);di.fromBufferAttribute(l,h);p.uv2=Triangle.getUV(pi,ti,ni,ri,ui,hi,di,new Vector2)}const e={a:c,b:u,c:h,normal:new Vector3,materialIndex:0};Triangle.getNormal(ti,ni,ri,e.normal);p.face=e}return p}class BoxGeometry extends BufferGeometry{constructor(e=1,t=1,n=1,r=1,i=1,s=1){super();this.type=\"BoxGeometry\";this.parameters={width:e,height:t,depth:n,widthSegments:r,heightSegments:i,depthSegments:s};const a=this;r=Math.floor(r);i=Math.floor(i);s=Math.floor(s);const o=[];const l=[];const c=[];const u=[];let h=0;let d=0;buildPlane(\"z\",\"y\",\"x\",-1,-1,n,t,e,s,i,0);buildPlane(\"z\",\"y\",\"x\",1,-1,n,t,-e,s,i,1);buildPlane(\"x\",\"z\",\"y\",1,1,e,n,t,r,s,2);buildPlane(\"x\",\"z\",\"y\",1,-1,e,n,-t,r,s,3);buildPlane(\"x\",\"y\",\"z\",1,-1,e,t,n,r,i,4);buildPlane(\"x\",\"y\",\"z\",-1,-1,e,t,-n,r,i,5);this.setIndex(o);this.setAttribute(\"position\",new Float32BufferAttribute(l,3));this.setAttribute(\"normal\",new Float32BufferAttribute(c,3));this.setAttribute(\"uv\",new Float32BufferAttribute(u,2));function buildPlane(e,t,n,r,i,s,p,f,m,g,y){const x=s/m;const b=p/g;const _=s/2;const M=p/2;const w=f/2;const S=m+1;const T=g+1;let E=0;let A=0;const L=new Vector3;for(let s=0;s<T;s++){const a=s*b-M;for(let o=0;o<S;o++){const h=o*x-_;L[e]=h*r;L[t]=a*i;L[n]=w;l.push(L.x,L.y,L.z);L[e]=0;L[t]=0;L[n]=f>0?1:-1;c.push(L.x,L.y,L.z);u.push(o/m);u.push(1-s/g);E+=1}}for(let e=0;e<g;e++)for(let t=0;t<m;t++){const n=h+t+S*e;const r=h+t+S*(e+1);const i=h+(t+1)+S*(e+1);const s=h+(t+1)+S*e;o.push(n,r,s);o.push(r,i,s);A+=6}a.addGroup(d,A,y);d+=A;h+=E}}static fromJSON(e){return new BoxGeometry(e.width,e.height,e.depth,e.widthSegments,e.heightSegments,e.depthSegments)}}function cloneUniforms(e){const t={};for(const n in e){t[n]={};for(const r in e[n]){const i=e[n][r];i&&(i.isColor||i.isMatrix3||i.isMatrix4||i.isVector2||i.isVector3||i.isVector4||i.isTexture||i.isQuaternion)?t[n][r]=i.clone():Array.isArray(i)?t[n][r]=i.slice():t[n][r]=i}}return t}function mergeUniforms(e){const t={};for(let n=0;n<e.length;n++){const r=cloneUniforms(e[n]);for(const e in r)t[e]=r[e]}return t}const mi={clone:cloneUniforms,merge:mergeUniforms};var gi=\"void main() {\\n\\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\\n}\";var yi=\"void main() {\\n\\tgl_FragColor = vec4( 1.0, 0.0, 0.0, 1.0 );\\n}\";class ShaderMaterial extends Material{constructor(e){super();this.type=\"ShaderMaterial\";this.defines={};this.uniforms={};this.vertexShader=gi;this.fragmentShader=yi;this.linewidth=1;this.wireframe=false;this.wireframeLinewidth=1;this.fog=false;this.lights=false;this.clipping=false;this.extensions={derivatives:false,fragDepth:false,drawBuffers:false,shaderTextureLOD:false};this.defaultAttributeValues={color:[1,1,1],uv:[0,0],uv2:[0,0]};this.index0AttributeName=void 0;this.uniformsNeedUpdate=false;this.glslVersion=null;if(void 0!==e){void 0!==e.attributes&&console.error(\"THREE.ShaderMaterial: attributes should now be defined in THREE.BufferGeometry instead.\");this.setValues(e)}}copy(e){super.copy(e);this.fragmentShader=e.fragmentShader;this.vertexShader=e.vertexShader;this.uniforms=cloneUniforms(e.uniforms);this.defines=Object.assign({},e.defines);this.wireframe=e.wireframe;this.wireframeLinewidth=e.wireframeLinewidth;this.lights=e.lights;this.clipping=e.clipping;this.extensions=Object.assign({},e.extensions);this.glslVersion=e.glslVersion;return this}toJSON(e){const t=super.toJSON(e);t.glslVersion=this.glslVersion;t.uniforms={};for(const n in this.uniforms){const r=this.uniforms[n];const i=r.value;i&&i.isTexture?t.uniforms[n]={type:\"t\",value:i.toJSON(e).uuid}:i&&i.isColor?t.uniforms[n]={type:\"c\",value:i.getHex()}:i&&i.isVector2?t.uniforms[n]={type:\"v2\",value:i.toArray()}:i&&i.isVector3?t.uniforms[n]={type:\"v3\",value:i.toArray()}:i&&i.isVector4?t.uniforms[n]={type:\"v4\",value:i.toArray()}:i&&i.isMatrix3?t.uniforms[n]={type:\"m3\",value:i.toArray()}:i&&i.isMatrix4?t.uniforms[n]={type:\"m4\",value:i.toArray()}:t.uniforms[n]={value:i}}Object.keys(this.defines).length>0&&(t.defines=this.defines);t.vertexShader=this.vertexShader;t.fragmentShader=this.fragmentShader;const n={};for(const e in this.extensions)true===this.extensions[e]&&(n[e]=true);Object.keys(n).length>0&&(t.extensions=n);return t}}ShaderMaterial.prototype.isShaderMaterial=true;class Camera extends Object3D{constructor(){super();this.type=\"Camera\";this.matrixWorldInverse=new Matrix4;this.projectionMatrix=new Matrix4;this.projectionMatrixInverse=new Matrix4}copy(e,t){super.copy(e,t);this.matrixWorldInverse.copy(e.matrixWorldInverse);this.projectionMatrix.copy(e.projectionMatrix);this.projectionMatrixInverse.copy(e.projectionMatrixInverse);return this}getWorldDirection(e){this.updateWorldMatrix(true,false);const t=this.matrixWorld.elements;return e.set(-t[8],-t[9],-t[10]).normalize()}updateMatrixWorld(e){super.updateMatrixWorld(e);this.matrixWorldInverse.copy(this.matrixWorld).invert()}updateWorldMatrix(e,t){super.updateWorldMatrix(e,t);this.matrixWorldInverse.copy(this.matrixWorld).invert()}clone(){return(new this.constructor).copy(this)}}Camera.prototype.isCamera=true;class PerspectiveCamera extends Camera{constructor(e=50,t=1,n=.1,r=2e3){super();this.type=\"PerspectiveCamera\";this.fov=e;this.zoom=1;this.near=n;this.far=r;this.focus=10;this.aspect=t;this.view=null;this.filmGauge=35;this.filmOffset=0;this.updateProjectionMatrix()}copy(e,t){super.copy(e,t);this.fov=e.fov;this.zoom=e.zoom;this.near=e.near;this.far=e.far;this.focus=e.focus;this.aspect=e.aspect;this.view=null===e.view?null:Object.assign({},e.view);this.filmGauge=e.filmGauge;this.filmOffset=e.filmOffset;return this}setFocalLength(e){const t=.5*this.getFilmHeight()/e;this.fov=2*Rn*Math.atan(t);this.updateProjectionMatrix()}getFocalLength(){const e=Math.tan(.5*Cn*this.fov);return.5*this.getFilmHeight()/e}getEffectiveFOV(){return 2*Rn*Math.atan(Math.tan(.5*Cn*this.fov)/this.zoom)}getFilmWidth(){return this.filmGauge*Math.min(this.aspect,1)}getFilmHeight(){return this.filmGauge/Math.max(this.aspect,1)}setViewOffset(e,t,n,r,i,s){this.aspect=e/t;null===this.view&&(this.view={enabled:true,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1});this.view.enabled=true;this.view.fullWidth=e;this.view.fullHeight=t;this.view.offsetX=n;this.view.offsetY=r;this.view.width=i;this.view.height=s;this.updateProjectionMatrix()}clearViewOffset(){null!==this.view&&(this.view.enabled=false);this.updateProjectionMatrix()}updateProjectionMatrix(){const e=this.near;let t=e*Math.tan(.5*Cn*this.fov)/this.zoom;let n=2*t;let r=this.aspect*n;let i=-.5*r;const s=this.view;if(null!==this.view&&this.view.enabled){const e=s.fullWidth,a=s.fullHeight;i+=s.offsetX*r/e;t-=s.offsetY*n/a;r*=s.width/e;n*=s.height/a}const a=this.filmOffset;0!==a&&(i+=e*a/this.getFilmWidth());this.projectionMatrix.makePerspective(i,i+r,t,t-n,e,this.far);this.projectionMatrixInverse.copy(this.projectionMatrix).invert()}toJSON(e){const t=super.toJSON(e);t.object.fov=this.fov;t.object.zoom=this.zoom;t.object.near=this.near;t.object.far=this.far;t.object.focus=this.focus;t.object.aspect=this.aspect;null!==this.view&&(t.object.view=Object.assign({},this.view));t.object.filmGauge=this.filmGauge;t.object.filmOffset=this.filmOffset;return t}}PerspectiveCamera.prototype.isPerspectiveCamera=true;const vi=90,xi=1;class CubeCamera extends Object3D{constructor(e,t,n){super();this.type=\"CubeCamera\";if(true!==n.isWebGLCubeRenderTarget){console.error(\"THREE.CubeCamera: The constructor now expects an instance of WebGLCubeRenderTarget as third parameter.\");return}this.renderTarget=n;const r=new PerspectiveCamera(vi,xi,e,t);r.layers=this.layers;r.up.set(0,-1,0);r.lookAt(new Vector3(1,0,0));this.add(r);const i=new PerspectiveCamera(vi,xi,e,t);i.layers=this.layers;i.up.set(0,-1,0);i.lookAt(new Vector3(-1,0,0));this.add(i);const s=new PerspectiveCamera(vi,xi,e,t);s.layers=this.layers;s.up.set(0,0,1);s.lookAt(new Vector3(0,1,0));this.add(s);const a=new PerspectiveCamera(vi,xi,e,t);a.layers=this.layers;a.up.set(0,0,-1);a.lookAt(new Vector3(0,-1,0));this.add(a);const o=new PerspectiveCamera(vi,xi,e,t);o.layers=this.layers;o.up.set(0,-1,0);o.lookAt(new Vector3(0,0,1));this.add(o);const l=new PerspectiveCamera(vi,xi,e,t);l.layers=this.layers;l.up.set(0,-1,0);l.lookAt(new Vector3(0,0,-1));this.add(l)}update(e,t){null===this.parent&&this.updateMatrixWorld();const n=this.renderTarget;const[r,i,s,a,o,l]=this.children;const c=e.xr.enabled;const u=e.getRenderTarget();e.xr.enabled=false;const h=n.texture.generateMipmaps;n.texture.generateMipmaps=false;e.setRenderTarget(n,0);e.render(t,r);e.setRenderTarget(n,1);e.render(t,i);e.setRenderTarget(n,2);e.render(t,s);e.setRenderTarget(n,3);e.render(t,a);e.setRenderTarget(n,4);e.render(t,o);n.texture.generateMipmaps=h;e.setRenderTarget(n,5);e.render(t,l);e.setRenderTarget(u);e.xr.enabled=c}}class CubeTexture extends Texture{constructor(e,t,n,r,i,s,a,o,l,c){e=void 0!==e?e:[];t=void 0!==t?t:re;super(e,t,n,r,i,s,a,o,l,c);this.flipY=false}get images(){return this.image}set images(e){this.image=e}}CubeTexture.prototype.isCubeTexture=true;class WebGLCubeRenderTarget extends WebGLRenderTarget{constructor(e,t,n){if(Number.isInteger(t)){console.warn(\"THREE.WebGLCubeRenderTarget: constructor signature is now WebGLCubeRenderTarget( size, options )\");t=n}super(e,e,t);t=t||{};this.texture=new CubeTexture(void 0,t.mapping,t.wrapS,t.wrapT,t.magFilter,t.minFilter,t.format,t.type,t.anisotropy,t.encoding);this.texture.isRenderTargetTexture=true;this.texture.generateMipmaps=void 0!==t.generateMipmaps&&t.generateMipmaps;this.texture.minFilter=void 0!==t.minFilter?t.minFilter:ye;this.texture._needsFlipEnvMap=false}fromEquirectangularTexture(e,t){this.texture.type=t.type;this.texture.format=Ne;this.texture.encoding=t.encoding;this.texture.generateMipmaps=t.generateMipmaps;this.texture.minFilter=t.minFilter;this.texture.magFilter=t.magFilter;const n={uniforms:{tEquirect:{value:null}},vertexShader:\"\\n\\n\\t\\t\\t\\tvarying vec3 vWorldDirection;\\n\\n\\t\\t\\t\\tvec3 transformDirection( in vec3 dir, in mat4 matrix ) {\\n\\n\\t\\t\\t\\t\\treturn normalize( ( matrix * vec4( dir, 0.0 ) ).xyz );\\n\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\tvoid main() {\\n\\n\\t\\t\\t\\t\\tvWorldDirection = transformDirection( position, modelMatrix );\\n\\n\\t\\t\\t\\t\\t#include <begin_vertex>\\n\\t\\t\\t\\t\\t#include <project_vertex>\\n\\n\\t\\t\\t\\t}\\n\\t\\t\\t\",fragmentShader:\"\\n\\n\\t\\t\\t\\tuniform sampler2D tEquirect;\\n\\n\\t\\t\\t\\tvarying vec3 vWorldDirection;\\n\\n\\t\\t\\t\\t#include <common>\\n\\n\\t\\t\\t\\tvoid main() {\\n\\n\\t\\t\\t\\t\\tvec3 direction = normalize( vWorldDirection );\\n\\n\\t\\t\\t\\t\\tvec2 sampleUV = equirectUv( direction );\\n\\n\\t\\t\\t\\t\\tgl_FragColor = texture2D( tEquirect, sampleUV );\\n\\n\\t\\t\\t\\t}\\n\\t\\t\\t\"};const r=new BoxGeometry(5,5,5);const i=new ShaderMaterial({name:\"CubemapFromEquirect\",uniforms:cloneUniforms(n.uniforms),vertexShader:n.vertexShader,fragmentShader:n.fragmentShader,side:d,blending:g});i.uniforms.tEquirect.value=t;const s=new Mesh(r,i);const a=t.minFilter;t.minFilter===be&&(t.minFilter=ye);const o=new CubeCamera(1,10,this);o.update(e,s);t.minFilter=a;s.geometry.dispose();s.material.dispose();return this}clear(e,t,n,r){const i=e.getRenderTarget();for(let i=0;i<6;i++){e.setRenderTarget(this,i);e.clear(t,n,r)}e.setRenderTarget(i)}}WebGLCubeRenderTarget.prototype.isWebGLCubeRenderTarget=true;const bi=new Vector3;const _i=new Vector3;const Mi=new Matrix3;class Plane{constructor(e=new Vector3(1,0,0),t=0){this.normal=e;this.constant=t}set(e,t){this.normal.copy(e);this.constant=t;return this}setComponents(e,t,n,r){this.normal.set(e,t,n);this.constant=r;return this}setFromNormalAndCoplanarPoint(e,t){this.normal.copy(e);this.constant=-t.dot(this.normal);return this}setFromCoplanarPoints(e,t,n){const r=bi.subVectors(n,t).cross(_i.subVectors(e,t)).normalize();this.setFromNormalAndCoplanarPoint(r,e);return this}copy(e){this.normal.copy(e.normal);this.constant=e.constant;return this}normalize(){const e=1/this.normal.length();this.normal.multiplyScalar(e);this.constant*=e;return this}negate(){this.constant*=-1;this.normal.negate();return this}distanceToPoint(e){return this.normal.dot(e)+this.constant}distanceToSphere(e){return this.distanceToPoint(e.center)-e.radius}projectPoint(e,t){return t.copy(this.normal).multiplyScalar(-this.distanceToPoint(e)).add(e)}intersectLine(e,t){const n=e.delta(bi);const r=this.normal.dot(n);if(0===r)return 0===this.distanceToPoint(e.start)?t.copy(e.start):null;const i=-(e.start.dot(this.normal)+this.constant)/r;return i<0||i>1?null:t.copy(n).multiplyScalar(i).add(e.start)}intersectsLine(e){const t=this.distanceToPoint(e.start);const n=this.distanceToPoint(e.end);return t<0&&n>0||n<0&&t>0}intersectsBox(e){return e.intersectsPlane(this)}intersectsSphere(e){return e.intersectsPlane(this)}coplanarPoint(e){return e.copy(this.normal).multiplyScalar(-this.constant)}applyMatrix4(e,t){const n=t||Mi.getNormalMatrix(e);const r=this.coplanarPoint(bi).applyMatrix4(e);const i=this.normal.applyMatrix3(n).normalize();this.constant=-r.dot(i);return this}translate(e){this.constant-=e.dot(this.normal);return this}equals(e){return e.normal.equals(this.normal)&&e.constant===this.constant}clone(){return(new this.constructor).copy(this)}}Plane.prototype.isPlane=true;const wi=new Sphere;const Si=new Vector3;class Frustum{constructor(e=new Plane,t=new Plane,n=new Plane,r=new Plane,i=new Plane,s=new Plane){this.planes=[e,t,n,r,i,s]}set(e,t,n,r,i,s){const a=this.planes;a[0].copy(e);a[1].copy(t);a[2].copy(n);a[3].copy(r);a[4].copy(i);a[5].copy(s);return this}copy(e){const t=this.planes;for(let n=0;n<6;n++)t[n].copy(e.planes[n]);return this}setFromProjectionMatrix(e){const t=this.planes;const n=e.elements;const r=n[0],i=n[1],s=n[2],a=n[3];const o=n[4],l=n[5],c=n[6],u=n[7];const h=n[8],d=n[9],p=n[10],f=n[11];const m=n[12],g=n[13],y=n[14],x=n[15];t[0].setComponents(a-r,u-o,f-h,x-m).normalize();t[1].setComponents(a+r,u+o,f+h,x+m).normalize();t[2].setComponents(a+i,u+l,f+d,x+g).normalize();t[3].setComponents(a-i,u-l,f-d,x-g).normalize();t[4].setComponents(a-s,u-c,f-p,x-y).normalize();t[5].setComponents(a+s,u+c,f+p,x+y).normalize();return this}intersectsObject(e){const t=e.geometry;null===t.boundingSphere&&t.computeBoundingSphere();wi.copy(t.boundingSphere).applyMatrix4(e.matrixWorld);return this.intersectsSphere(wi)}intersectsSprite(e){wi.center.set(0,0,0);wi.radius=.7071067811865476;wi.applyMatrix4(e.matrixWorld);return this.intersectsSphere(wi)}intersectsSphere(e){const t=this.planes;const n=e.center;const r=-e.radius;for(let e=0;e<6;e++){const i=t[e].distanceToPoint(n);if(i<r)return false}return true}intersectsBox(e){const t=this.planes;for(let n=0;n<6;n++){const r=t[n];Si.x=r.normal.x>0?e.max.x:e.min.x;Si.y=r.normal.y>0?e.max.y:e.min.y;Si.z=r.normal.z>0?e.max.z:e.min.z;if(r.distanceToPoint(Si)<0)return false}return true}containsPoint(e){const t=this.planes;for(let n=0;n<6;n++)if(t[n].distanceToPoint(e)<0)return false;return true}clone(){return(new this.constructor).copy(this)}}function WebGLAnimation(){let e=null;let t=false;let n=null;let r=null;function onAnimationFrame(t,i){n(t,i);r=e.requestAnimationFrame(onAnimationFrame)}return{start:function(){if(true!==t&&null!==n){r=e.requestAnimationFrame(onAnimationFrame);t=true}},stop:function(){e.cancelAnimationFrame(r);t=false},setAnimationLoop:function(e){n=e},setContext:function(t){e=t}}}function WebGLAttributes(e,t){const n=t.isWebGL2;const r=new WeakMap;function createBuffer(t,r){const i=t.array;const s=t.usage;const a=e.createBuffer();e.bindBuffer(r,a);e.bufferData(r,i,s);t.onUploadCallback();let o=5126;i instanceof Float32Array?o=5126:i instanceof Float64Array?console.warn(\"THREE.WebGLAttributes: Unsupported data buffer format: Float64Array.\"):i instanceof Uint16Array?t.isFloat16BufferAttribute?n?o=5131:console.warn(\"THREE.WebGLAttributes: Usage of Float16BufferAttribute requires WebGL2.\"):o=5123:i instanceof Int16Array?o=5122:i instanceof Uint32Array?o=5125:i instanceof Int32Array?o=5124:i instanceof Int8Array?o=5120:(i instanceof Uint8Array||i instanceof Uint8ClampedArray)&&(o=5121);return{buffer:a,type:o,bytesPerElement:i.BYTES_PER_ELEMENT,version:t.version}}function updateBuffer(t,r,i){const s=r.array;const a=r.updateRange;e.bindBuffer(i,t);if(-1===a.count)e.bufferSubData(i,0,s);else{n?e.bufferSubData(i,a.offset*s.BYTES_PER_ELEMENT,s,a.offset,a.count):e.bufferSubData(i,a.offset*s.BYTES_PER_ELEMENT,s.subarray(a.offset,a.offset+a.count));a.count=-1}}function get(e){e.isInterleavedBufferAttribute&&(e=e.data);return r.get(e)}function remove(t){t.isInterleavedBufferAttribute&&(t=t.data);const n=r.get(t);if(n){e.deleteBuffer(n.buffer);r.delete(t)}}function update(e,t){if(e.isGLBufferAttribute){const t=r.get(e);(!t||t.version<e.version)&&r.set(e,{buffer:e.buffer,type:e.type,bytesPerElement:e.elementSize,version:e.version});return}e.isInterleavedBufferAttribute&&(e=e.data);const n=r.get(e);if(void 0===n)r.set(e,createBuffer(e,t));else if(n.version<e.version){updateBuffer(n.buffer,e,t);n.version=e.version}}return{get:get,remove:remove,update:update}}class PlaneGeometry extends BufferGeometry{constructor(e=1,t=1,n=1,r=1){super();this.type=\"PlaneGeometry\";this.parameters={width:e,height:t,widthSegments:n,heightSegments:r};const i=e/2;const s=t/2;const a=Math.floor(n);const o=Math.floor(r);const l=a+1;const c=o+1;const u=e/a;const h=t/o;const d=[];const p=[];const f=[];const m=[];for(let e=0;e<c;e++){const t=e*h-s;for(let n=0;n<l;n++){const r=n*u-i;p.push(r,-t,0);f.push(0,0,1);m.push(n/a);m.push(1-e/o)}}for(let e=0;e<o;e++)for(let t=0;t<a;t++){const n=t+l*e;const r=t+l*(e+1);const i=t+1+l*(e+1);const s=t+1+l*e;d.push(n,r,s);d.push(r,i,s)}this.setIndex(d);this.setAttribute(\"position\",new Float32BufferAttribute(p,3));this.setAttribute(\"normal\",new Float32BufferAttribute(f,3));this.setAttribute(\"uv\",new Float32BufferAttribute(m,2))}static fromJSON(e){return new PlaneGeometry(e.width,e.height,e.widthSegments,e.heightSegments)}}var Ti=\"#ifdef USE_ALPHAMAP\\n\\tdiffuseColor.a *= texture2D( alphaMap, vUv ).g;\\n#endif\";var Ei=\"#ifdef USE_ALPHAMAP\\n\\tuniform sampler2D alphaMap;\\n#endif\";var Ai=\"#ifdef USE_ALPHATEST\\n\\tif ( diffuseColor.a < alphaTest ) discard;\\n#endif\";var Li=\"#ifdef USE_ALPHATEST\\n\\tuniform float alphaTest;\\n#endif\";var Ci=\"#ifdef USE_AOMAP\\n\\tfloat ambientOcclusion = ( texture2D( aoMap, vUv2 ).r - 1.0 ) * aoMapIntensity + 1.0;\\n\\treflectedLight.indirectDiffuse *= ambientOcclusion;\\n\\t#if defined( USE_ENVMAP ) && defined( STANDARD )\\n\\t\\tfloat dotNV = saturate( dot( geometry.normal, geometry.viewDir ) );\\n\\t\\treflectedLight.indirectSpecular *= computeSpecularOcclusion( dotNV, ambientOcclusion, material.roughness );\\n\\t#endif\\n#endif\";var Ri=\"#ifdef USE_AOMAP\\n\\tuniform sampler2D aoMap;\\n\\tuniform float aoMapIntensity;\\n#endif\";var Pi=\"vec3 transformed = vec3( position );\";var Ii=\"vec3 objectNormal = vec3( normal );\\n#ifdef USE_TANGENT\\n\\tvec3 objectTangent = vec3( tangent.xyz );\\n#endif\";var Di=\"vec3 BRDF_Lambert( const in vec3 diffuseColor ) {\\n\\treturn RECIPROCAL_PI * diffuseColor;\\n}\\nvec3 F_Schlick( const in vec3 f0, const in float f90, const in float dotVH ) {\\n\\tfloat fresnel = exp2( ( - 5.55473 * dotVH - 6.98316 ) * dotVH );\\n\\treturn f0 * ( 1.0 - fresnel ) + ( f90 * fresnel );\\n}\\nfloat V_GGX_SmithCorrelated( const in float alpha, const in float dotNL, const in float dotNV ) {\\n\\tfloat a2 = pow2( alpha );\\n\\tfloat gv = dotNL * sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNV ) );\\n\\tfloat gl = dotNV * sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNL ) );\\n\\treturn 0.5 / max( gv + gl, EPSILON );\\n}\\nfloat D_GGX( const in float alpha, const in float dotNH ) {\\n\\tfloat a2 = pow2( alpha );\\n\\tfloat denom = pow2( dotNH ) * ( a2 - 1.0 ) + 1.0;\\n\\treturn RECIPROCAL_PI * a2 / pow2( denom );\\n}\\nvec3 BRDF_GGX( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, const in vec3 f0, const in float f90, const in float roughness ) {\\n\\tfloat alpha = pow2( roughness );\\n\\tvec3 halfDir = normalize( lightDir + viewDir );\\n\\tfloat dotNL = saturate( dot( normal, lightDir ) );\\n\\tfloat dotNV = saturate( dot( normal, viewDir ) );\\n\\tfloat dotNH = saturate( dot( normal, halfDir ) );\\n\\tfloat dotVH = saturate( dot( viewDir, halfDir ) );\\n\\tvec3 F = F_Schlick( f0, f90, dotVH );\\n\\tfloat V = V_GGX_SmithCorrelated( alpha, dotNL, dotNV );\\n\\tfloat D = D_GGX( alpha, dotNH );\\n\\treturn F * ( V * D );\\n}\\nvec2 LTC_Uv( const in vec3 N, const in vec3 V, const in float roughness ) {\\n\\tconst float LUT_SIZE = 64.0;\\n\\tconst float LUT_SCALE = ( LUT_SIZE - 1.0 ) / LUT_SIZE;\\n\\tconst float LUT_BIAS = 0.5 / LUT_SIZE;\\n\\tfloat dotNV = saturate( dot( N, V ) );\\n\\tvec2 uv = vec2( roughness, sqrt( 1.0 - dotNV ) );\\n\\tuv = uv * LUT_SCALE + LUT_BIAS;\\n\\treturn uv;\\n}\\nfloat LTC_ClippedSphereFormFactor( const in vec3 f ) {\\n\\tfloat l = length( f );\\n\\treturn max( ( l * l + f.z ) / ( l + 1.0 ), 0.0 );\\n}\\nvec3 LTC_EdgeVectorFormFactor( const in vec3 v1, const in vec3 v2 ) {\\n\\tfloat x = dot( v1, v2 );\\n\\tfloat y = abs( x );\\n\\tfloat a = 0.8543985 + ( 0.4965155 + 0.0145206 * y ) * y;\\n\\tfloat b = 3.4175940 + ( 4.1616724 + y ) * y;\\n\\tfloat v = a / b;\\n\\tfloat theta_sintheta = ( x > 0.0 ) ? v : 0.5 * inversesqrt( max( 1.0 - x * x, 1e-7 ) ) - v;\\n\\treturn cross( v1, v2 ) * theta_sintheta;\\n}\\nvec3 LTC_Evaluate( const in vec3 N, const in vec3 V, const in vec3 P, const in mat3 mInv, const in vec3 rectCoords[ 4 ] ) {\\n\\tvec3 v1 = rectCoords[ 1 ] - rectCoords[ 0 ];\\n\\tvec3 v2 = rectCoords[ 3 ] - rectCoords[ 0 ];\\n\\tvec3 lightNormal = cross( v1, v2 );\\n\\tif( dot( lightNormal, P - rectCoords[ 0 ] ) < 0.0 ) return vec3( 0.0 );\\n\\tvec3 T1, T2;\\n\\tT1 = normalize( V - N * dot( V, N ) );\\n\\tT2 = - cross( N, T1 );\\n\\tmat3 mat = mInv * transposeMat3( mat3( T1, T2, N ) );\\n\\tvec3 coords[ 4 ];\\n\\tcoords[ 0 ] = mat * ( rectCoords[ 0 ] - P );\\n\\tcoords[ 1 ] = mat * ( rectCoords[ 1 ] - P );\\n\\tcoords[ 2 ] = mat * ( rectCoords[ 2 ] - P );\\n\\tcoords[ 3 ] = mat * ( rectCoords[ 3 ] - P );\\n\\tcoords[ 0 ] = normalize( coords[ 0 ] );\\n\\tcoords[ 1 ] = normalize( coords[ 1 ] );\\n\\tcoords[ 2 ] = normalize( coords[ 2 ] );\\n\\tcoords[ 3 ] = normalize( coords[ 3 ] );\\n\\tvec3 vectorFormFactor = vec3( 0.0 );\\n\\tvectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 0 ], coords[ 1 ] );\\n\\tvectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 1 ], coords[ 2 ] );\\n\\tvectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 2 ], coords[ 3 ] );\\n\\tvectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 3 ], coords[ 0 ] );\\n\\tfloat result = LTC_ClippedSphereFormFactor( vectorFormFactor );\\n\\treturn vec3( result );\\n}\\nfloat G_BlinnPhong_Implicit( ) {\\n\\treturn 0.25;\\n}\\nfloat D_BlinnPhong( const in float shininess, const in float dotNH ) {\\n\\treturn RECIPROCAL_PI * ( shininess * 0.5 + 1.0 ) * pow( dotNH, shininess );\\n}\\nvec3 BRDF_BlinnPhong( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, const in vec3 specularColor, const in float shininess ) {\\n\\tvec3 halfDir = normalize( lightDir + viewDir );\\n\\tfloat dotNH = saturate( dot( normal, halfDir ) );\\n\\tfloat dotVH = saturate( dot( viewDir, halfDir ) );\\n\\tvec3 F = F_Schlick( specularColor, 1.0, dotVH );\\n\\tfloat G = G_BlinnPhong_Implicit( );\\n\\tfloat D = D_BlinnPhong( shininess, dotNH );\\n\\treturn F * ( G * D );\\n}\\n#if defined( USE_SHEEN )\\nfloat D_Charlie( float roughness, float dotNH ) {\\n\\tfloat alpha = pow2( roughness );\\n\\tfloat invAlpha = 1.0 / alpha;\\n\\tfloat cos2h = dotNH * dotNH;\\n\\tfloat sin2h = max( 1.0 - cos2h, 0.0078125 );\\n\\treturn ( 2.0 + invAlpha ) * pow( sin2h, invAlpha * 0.5 ) / ( 2.0 * PI );\\n}\\nfloat V_Neubelt( float dotNV, float dotNL ) {\\n\\treturn saturate( 1.0 / ( 4.0 * ( dotNL + dotNV - dotNL * dotNV ) ) );\\n}\\nvec3 BRDF_Sheen( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, vec3 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\";var Bi=\"#ifdef USE_BUMPMAP\\n\\tuniform sampler2D bumpMap;\\n\\tuniform float bumpScale;\\n\\tvec2 dHdxy_fwd() {\\n\\t\\tvec2 dSTdx = dFdx( vUv );\\n\\t\\tvec2 dSTdy = dFdy( vUv );\\n\\t\\tfloat Hll = bumpScale * texture2D( bumpMap, vUv ).x;\\n\\t\\tfloat dBx = bumpScale * texture2D( bumpMap, vUv + dSTdx ).x - Hll;\\n\\t\\tfloat dBy = bumpScale * texture2D( bumpMap, vUv + dSTdy ).x - Hll;\\n\\t\\treturn vec2( dBx, dBy );\\n\\t}\\n\\tvec3 perturbNormalArb( vec3 surf_pos, vec3 surf_norm, vec2 dHdxy, float faceDirection ) {\\n\\t\\tvec3 vSigmaX = vec3( dFdx( surf_pos.x ), dFdx( surf_pos.y ), dFdx( surf_pos.z ) );\\n\\t\\tvec3 vSigmaY = vec3( dFdy( surf_pos.x ), dFdy( surf_pos.y ), dFdy( surf_pos.z ) );\\n\\t\\tvec3 vN = surf_norm;\\n\\t\\tvec3 R1 = cross( vSigmaY, vN );\\n\\t\\tvec3 R2 = cross( vN, vSigmaX );\\n\\t\\tfloat fDet = dot( vSigmaX, R1 ) * faceDirection;\\n\\t\\tvec3 vGrad = sign( fDet ) * ( dHdxy.x * R1 + dHdxy.y * R2 );\\n\\t\\treturn normalize( abs( fDet ) * surf_norm - vGrad );\\n\\t}\\n#endif\";var Vi=\"#if NUM_CLIPPING_PLANES > 0\\n\\tvec4 plane;\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < UNION_CLIPPING_PLANES; i ++ ) {\\n\\t\\tplane = clippingPlanes[ i ];\\n\\t\\tif ( dot( vClipPosition, plane.xyz ) > plane.w ) discard;\\n\\t}\\n\\t#pragma unroll_loop_end\\n\\t#if UNION_CLIPPING_PLANES < NUM_CLIPPING_PLANES\\n\\t\\tbool clipped = true;\\n\\t\\t#pragma unroll_loop_start\\n\\t\\tfor ( int i = UNION_CLIPPING_PLANES; i < NUM_CLIPPING_PLANES; i ++ ) {\\n\\t\\t\\tplane = clippingPlanes[ i ];\\n\\t\\t\\tclipped = ( dot( vClipPosition, plane.xyz ) > plane.w ) && clipped;\\n\\t\\t}\\n\\t\\t#pragma unroll_loop_end\\n\\t\\tif ( clipped ) discard;\\n\\t#endif\\n#endif\";var Ni=\"#if NUM_CLIPPING_PLANES > 0\\n\\tvarying vec3 vClipPosition;\\n\\tuniform vec4 clippingPlanes[ NUM_CLIPPING_PLANES ];\\n#endif\";var Ui=\"#if NUM_CLIPPING_PLANES > 0\\n\\tvarying vec3 vClipPosition;\\n#endif\";var zi=\"#if NUM_CLIPPING_PLANES > 0\\n\\tvClipPosition = - mvPosition.xyz;\\n#endif\";var Gi=\"#if defined( USE_COLOR_ALPHA )\\n\\tdiffuseColor *= vColor;\\n#elif defined( USE_COLOR )\\n\\tdiffuseColor.rgb *= vColor;\\n#endif\";var Fi=\"#if defined( USE_COLOR_ALPHA )\\n\\tvarying vec4 vColor;\\n#elif defined( USE_COLOR )\\n\\tvarying vec3 vColor;\\n#endif\";var Oi=\"#if defined( USE_COLOR_ALPHA )\\n\\tvarying vec4 vColor;\\n#elif defined( USE_COLOR ) || defined( USE_INSTANCING_COLOR )\\n\\tvarying vec3 vColor;\\n#endif\";var Hi=\"#if defined( USE_COLOR_ALPHA )\\n\\tvColor = vec4( 1.0 );\\n#elif defined( USE_COLOR ) || defined( USE_INSTANCING_COLOR )\\n\\tvColor = vec3( 1.0 );\\n#endif\\n#ifdef USE_COLOR\\n\\tvColor *= color;\\n#endif\\n#ifdef USE_INSTANCING_COLOR\\n\\tvColor.xyz *= instanceColor.xyz;\\n#endif\";var ki=\"#define PI 3.141592653589793\\n#define PI2 6.283185307179586\\n#define PI_HALF 1.5707963267948966\\n#define RECIPROCAL_PI 0.3183098861837907\\n#define RECIPROCAL_PI2 0.15915494309189535\\n#define EPSILON 1e-6\\n#ifndef saturate\\n#define saturate( a ) clamp( a, 0.0, 1.0 )\\n#endif\\n#define whiteComplement( a ) ( 1.0 - saturate( a ) )\\nfloat pow2( const in float x ) { return x*x; }\\nfloat pow3( const in float x ) { return x*x*x; }\\nfloat pow4( const in float x ) { float x2 = x*x; return x2*x2; }\\nfloat max3( const in vec3 v ) { return max( max( v.x, v.y ), v.z ); }\\nfloat average( const in vec3 color ) { return dot( color, vec3( 0.3333 ) ); }\\nhighp float rand( const in vec2 uv ) {\\n\\tconst highp float a = 12.9898, b = 78.233, c = 43758.5453;\\n\\thighp float dt = dot( uv.xy, vec2( a,b ) ), sn = mod( dt, PI );\\n\\treturn fract( sin( sn ) * c );\\n}\\n#ifdef HIGH_PRECISION\\n\\tfloat precisionSafeLength( vec3 v ) { return length( v ); }\\n#else\\n\\tfloat precisionSafeLength( vec3 v ) {\\n\\t\\tfloat maxComponent = max3( abs( v ) );\\n\\t\\treturn length( v / maxComponent ) * maxComponent;\\n\\t}\\n#endif\\nstruct IncidentLight {\\n\\tvec3 color;\\n\\tvec3 direction;\\n\\tbool visible;\\n};\\nstruct ReflectedLight {\\n\\tvec3 directDiffuse;\\n\\tvec3 directSpecular;\\n\\tvec3 indirectDiffuse;\\n\\tvec3 indirectSpecular;\\n};\\nstruct GeometricContext {\\n\\tvec3 position;\\n\\tvec3 normal;\\n\\tvec3 viewDir;\\n#ifdef USE_CLEARCOAT\\n\\tvec3 clearcoatNormal;\\n#endif\\n};\\nvec3 transformDirection( in vec3 dir, in mat4 matrix ) {\\n\\treturn normalize( ( matrix * vec4( dir, 0.0 ) ).xyz );\\n}\\nvec3 inverseTransformDirection( in vec3 dir, in mat4 matrix ) {\\n\\treturn normalize( ( vec4( dir, 0.0 ) * matrix ).xyz );\\n}\\nmat3 transposeMat3( const in mat3 m ) {\\n\\tmat3 tmp;\\n\\ttmp[ 0 ] = vec3( m[ 0 ].x, m[ 1 ].x, m[ 2 ].x );\\n\\ttmp[ 1 ] = vec3( m[ 0 ].y, m[ 1 ].y, m[ 2 ].y );\\n\\ttmp[ 2 ] = vec3( m[ 0 ].z, m[ 1 ].z, m[ 2 ].z );\\n\\treturn tmp;\\n}\\nfloat linearToRelativeLuminance( const in vec3 color ) {\\n\\tvec3 weights = vec3( 0.2126, 0.7152, 0.0722 );\\n\\treturn dot( weights, color.rgb );\\n}\\nbool isPerspectiveMatrix( mat4 m ) {\\n\\treturn m[ 2 ][ 3 ] == - 1.0;\\n}\\nvec2 equirectUv( in vec3 dir ) {\\n\\tfloat u = atan( dir.z, dir.x ) * RECIPROCAL_PI2 + 0.5;\\n\\tfloat v = asin( clamp( dir.y, - 1.0, 1.0 ) ) * RECIPROCAL_PI + 0.5;\\n\\treturn vec2( u, v );\\n}\";var Wi=\"#ifdef ENVMAP_TYPE_CUBE_UV\\n\\t#define cubeUV_maxMipLevel 8.0\\n\\t#define cubeUV_minMipLevel 4.0\\n\\t#define cubeUV_maxTileSize 256.0\\n\\t#define cubeUV_minTileSize 16.0\\n\\tfloat getFace( vec3 direction ) {\\n\\t\\tvec3 absDirection = abs( direction );\\n\\t\\tfloat face = - 1.0;\\n\\t\\tif ( absDirection.x > absDirection.z ) {\\n\\t\\t\\tif ( absDirection.x > absDirection.y )\\n\\t\\t\\t\\tface = direction.x > 0.0 ? 0.0 : 3.0;\\n\\t\\t\\telse\\n\\t\\t\\t\\tface = direction.y > 0.0 ? 1.0 : 4.0;\\n\\t\\t} else {\\n\\t\\t\\tif ( absDirection.z > absDirection.y )\\n\\t\\t\\t\\tface = direction.z > 0.0 ? 2.0 : 5.0;\\n\\t\\t\\telse\\n\\t\\t\\t\\tface = direction.y > 0.0 ? 1.0 : 4.0;\\n\\t\\t}\\n\\t\\treturn face;\\n\\t}\\n\\tvec2 getUV( vec3 direction, float face ) {\\n\\t\\tvec2 uv;\\n\\t\\tif ( face == 0.0 ) {\\n\\t\\t\\tuv = vec2( direction.z, direction.y ) / abs( direction.x );\\n\\t\\t} else if ( face == 1.0 ) {\\n\\t\\t\\tuv = vec2( - direction.x, - direction.z ) / abs( direction.y );\\n\\t\\t} else if ( face == 2.0 ) {\\n\\t\\t\\tuv = vec2( - direction.x, direction.y ) / abs( direction.z );\\n\\t\\t} else if ( face == 3.0 ) {\\n\\t\\t\\tuv = vec2( - direction.z, direction.y ) / abs( direction.x );\\n\\t\\t} else if ( face == 4.0 ) {\\n\\t\\t\\tuv = vec2( - direction.x, direction.z ) / abs( direction.y );\\n\\t\\t} else {\\n\\t\\t\\tuv = vec2( direction.x, direction.y ) / abs( direction.z );\\n\\t\\t}\\n\\t\\treturn 0.5 * ( uv + 1.0 );\\n\\t}\\n\\tvec3 bilinearCubeUV( sampler2D envMap, vec3 direction, float mipInt ) {\\n\\t\\tfloat face = getFace( direction );\\n\\t\\tfloat filterInt = max( cubeUV_minMipLevel - mipInt, 0.0 );\\n\\t\\tmipInt = max( mipInt, cubeUV_minMipLevel );\\n\\t\\tfloat faceSize = exp2( mipInt );\\n\\t\\tfloat texelSize = 1.0 / ( 3.0 * cubeUV_maxTileSize );\\n\\t\\tvec2 uv = getUV( direction, face ) * ( faceSize - 1.0 ) + 0.5;\\n\\t\\tif ( face > 2.0 ) {\\n\\t\\t\\tuv.y += faceSize;\\n\\t\\t\\tface -= 3.0;\\n\\t\\t}\\n\\t\\tuv.x += face * faceSize;\\n\\t\\tif ( mipInt < cubeUV_maxMipLevel ) {\\n\\t\\t\\tuv.y += 2.0 * cubeUV_maxTileSize;\\n\\t\\t}\\n\\t\\tuv.y += filterInt * 2.0 * cubeUV_minTileSize;\\n\\t\\tuv.x += 3.0 * max( 0.0, cubeUV_maxTileSize - 2.0 * faceSize );\\n\\t\\tuv *= texelSize;\\n\\t\\treturn texture2D( envMap, uv ).rgb;\\n\\t}\\n\\t#define r0 1.0\\n\\t#define v0 0.339\\n\\t#define m0 - 2.0\\n\\t#define r1 0.8\\n\\t#define v1 0.276\\n\\t#define m1 - 1.0\\n\\t#define r4 0.4\\n\\t#define v4 0.046\\n\\t#define m4 2.0\\n\\t#define r5 0.305\\n\\t#define v5 0.016\\n\\t#define m5 3.0\\n\\t#define r6 0.21\\n\\t#define v6 0.0038\\n\\t#define m6 4.0\\n\\tfloat roughnessToMip( float roughness ) {\\n\\t\\tfloat mip = 0.0;\\n\\t\\tif ( roughness >= r1 ) {\\n\\t\\t\\tmip = ( r0 - roughness ) * ( m1 - m0 ) / ( r0 - r1 ) + m0;\\n\\t\\t} else if ( roughness >= r4 ) {\\n\\t\\t\\tmip = ( r1 - roughness ) * ( m4 - m1 ) / ( r1 - r4 ) + m1;\\n\\t\\t} else if ( roughness >= r5 ) {\\n\\t\\t\\tmip = ( r4 - roughness ) * ( m5 - m4 ) / ( r4 - r5 ) + m4;\\n\\t\\t} else if ( roughness >= r6 ) {\\n\\t\\t\\tmip = ( r5 - roughness ) * ( m6 - m5 ) / ( r5 - r6 ) + m5;\\n\\t\\t} else {\\n\\t\\t\\tmip = - 2.0 * log2( 1.16 * roughness );\\t\\t}\\n\\t\\treturn mip;\\n\\t}\\n\\tvec4 textureCubeUV( sampler2D envMap, vec3 sampleDir, float roughness ) {\\n\\t\\tfloat mip = clamp( roughnessToMip( roughness ), m0, cubeUV_maxMipLevel );\\n\\t\\tfloat mipF = fract( mip );\\n\\t\\tfloat mipInt = floor( mip );\\n\\t\\tvec3 color0 = bilinearCubeUV( envMap, sampleDir, mipInt );\\n\\t\\tif ( mipF == 0.0 ) {\\n\\t\\t\\treturn vec4( color0, 1.0 );\\n\\t\\t} else {\\n\\t\\t\\tvec3 color1 = bilinearCubeUV( envMap, sampleDir, mipInt + 1.0 );\\n\\t\\t\\treturn vec4( mix( color0, color1, mipF ), 1.0 );\\n\\t\\t}\\n\\t}\\n#endif\";var ji=\"vec3 transformedNormal = objectNormal;\\n#ifdef USE_INSTANCING\\n\\tmat3 m = mat3( instanceMatrix );\\n\\ttransformedNormal /= vec3( dot( m[ 0 ], m[ 0 ] ), dot( m[ 1 ], m[ 1 ] ), dot( m[ 2 ], m[ 2 ] ) );\\n\\ttransformedNormal = m * transformedNormal;\\n#endif\\ntransformedNormal = normalMatrix * transformedNormal;\\n#ifdef FLIP_SIDED\\n\\ttransformedNormal = - transformedNormal;\\n#endif\\n#ifdef USE_TANGENT\\n\\tvec3 transformedTangent = ( modelViewMatrix * vec4( objectTangent, 0.0 ) ).xyz;\\n\\t#ifdef FLIP_SIDED\\n\\t\\ttransformedTangent = - transformedTangent;\\n\\t#endif\\n#endif\";var qi=\"#ifdef USE_DISPLACEMENTMAP\\n\\tuniform sampler2D displacementMap;\\n\\tuniform float displacementScale;\\n\\tuniform float displacementBias;\\n#endif\";var Xi=\"#ifdef USE_DISPLACEMENTMAP\\n\\ttransformed += normalize( objectNormal ) * ( texture2D( displacementMap, vUv ).x * displacementScale + displacementBias );\\n#endif\";var Ji=\"#ifdef USE_EMISSIVEMAP\\n\\tvec4 emissiveColor = texture2D( emissiveMap, vUv );\\n\\temissiveColor.rgb = emissiveMapTexelToLinear( emissiveColor ).rgb;\\n\\ttotalEmissiveRadiance *= emissiveColor.rgb;\\n#endif\";var Yi=\"#ifdef USE_EMISSIVEMAP\\n\\tuniform sampler2D emissiveMap;\\n#endif\";var Zi=\"gl_FragColor = linearToOutputTexel( gl_FragColor );\";var Qi=\"vec4 LinearToLinear( in vec4 value ) {\\n\\treturn value;\\n}\\nvec4 sRGBToLinear( in vec4 value ) {\\n\\treturn vec4( mix( pow( value.rgb * 0.9478672986 + vec3( 0.0521327014 ), vec3( 2.4 ) ), value.rgb * 0.0773993808, vec3( lessThanEqual( value.rgb, vec3( 0.04045 ) ) ) ), value.a );\\n}\\nvec4 LinearTosRGB( in vec4 value ) {\\n\\treturn vec4( mix( pow( value.rgb, vec3( 0.41666 ) ) * 1.055 - vec3( 0.055 ), value.rgb * 12.92, vec3( lessThanEqual( value.rgb, vec3( 0.0031308 ) ) ) ), value.a );\\n}\";var Ki=\"#ifdef USE_ENVMAP\\n\\t#ifdef ENV_WORLDPOS\\n\\t\\tvec3 cameraToFrag;\\n\\t\\tif ( isOrthographic ) {\\n\\t\\t\\tcameraToFrag = normalize( vec3( - viewMatrix[ 0 ][ 2 ], - viewMatrix[ 1 ][ 2 ], - viewMatrix[ 2 ][ 2 ] ) );\\n\\t\\t} else {\\n\\t\\t\\tcameraToFrag = normalize( vWorldPosition - cameraPosition );\\n\\t\\t}\\n\\t\\tvec3 worldNormal = inverseTransformDirection( normal, viewMatrix );\\n\\t\\t#ifdef ENVMAP_MODE_REFLECTION\\n\\t\\t\\tvec3 reflectVec = reflect( cameraToFrag, worldNormal );\\n\\t\\t#else\\n\\t\\t\\tvec3 reflectVec = refract( cameraToFrag, worldNormal, refractionRatio );\\n\\t\\t#endif\\n\\t#else\\n\\t\\tvec3 reflectVec = vReflect;\\n\\t#endif\\n\\t#ifdef ENVMAP_TYPE_CUBE\\n\\t\\tvec4 envColor = textureCube( envMap, vec3( flipEnvMap * reflectVec.x, reflectVec.yz ) );\\n\\t\\tenvColor = envMapTexelToLinear( envColor );\\n\\t#elif defined( ENVMAP_TYPE_CUBE_UV )\\n\\t\\tvec4 envColor = textureCubeUV( envMap, reflectVec, 0.0 );\\n\\t#else\\n\\t\\tvec4 envColor = vec4( 0.0 );\\n\\t#endif\\n\\t#ifdef ENVMAP_BLENDING_MULTIPLY\\n\\t\\toutgoingLight = mix( outgoingLight, outgoingLight * envColor.xyz, specularStrength * reflectivity );\\n\\t#elif defined( ENVMAP_BLENDING_MIX )\\n\\t\\toutgoingLight = mix( outgoingLight, envColor.xyz, specularStrength * reflectivity );\\n\\t#elif defined( ENVMAP_BLENDING_ADD )\\n\\t\\toutgoingLight += envColor.xyz * specularStrength * reflectivity;\\n\\t#endif\\n#endif\";var $i=\"#ifdef USE_ENVMAP\\n\\tuniform float envMapIntensity;\\n\\tuniform float flipEnvMap;\\n\\t#ifdef ENVMAP_TYPE_CUBE\\n\\t\\tuniform samplerCube envMap;\\n\\t#else\\n\\t\\tuniform sampler2D envMap;\\n\\t#endif\\n\\t\\n#endif\";var es=\"#ifdef USE_ENVMAP\\n\\tuniform float reflectivity;\\n\\t#if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG )\\n\\t\\t#define ENV_WORLDPOS\\n\\t#endif\\n\\t#ifdef ENV_WORLDPOS\\n\\t\\tvarying vec3 vWorldPosition;\\n\\t\\tuniform float refractionRatio;\\n\\t#else\\n\\t\\tvarying vec3 vReflect;\\n\\t#endif\\n#endif\";var ts=\"#ifdef USE_ENVMAP\\n\\t#if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) ||defined( PHONG )\\n\\t\\t#define ENV_WORLDPOS\\n\\t#endif\\n\\t#ifdef ENV_WORLDPOS\\n\\t\\t\\n\\t\\tvarying vec3 vWorldPosition;\\n\\t#else\\n\\t\\tvarying vec3 vReflect;\\n\\t\\tuniform float refractionRatio;\\n\\t#endif\\n#endif\";var ns=\"#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\";var rs=\"#ifdef USE_FOG\\n\\tvFogDepth = - mvPosition.z;\\n#endif\";var is=\"#ifdef USE_FOG\\n\\tvarying float vFogDepth;\\n#endif\";var ss=\"#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\";var as=\"#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\";var os=\"#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\\treturn ( coord.x < 0.7 ) ? vec3( 0.7 ) : vec3( 1.0 );\\n\\t#endif\\n}\";var ls=\"#ifdef USE_LIGHTMAP\\n\\tvec4 lightMapTexel = texture2D( lightMap, vUv2 );\\n\\tvec3 lightMapIrradiance = lightMapTexelToLinear( lightMapTexel ).rgb * lightMapIntensity;\\n\\t#ifndef PHYSICALLY_CORRECT_LIGHTS\\n\\t\\tlightMapIrradiance *= PI;\\n\\t#endif\\n\\treflectedLight.indirectDiffuse += lightMapIrradiance;\\n#endif\";var cs=\"#ifdef USE_LIGHTMAP\\n\\tuniform sampler2D lightMap;\\n\\tuniform float lightMapIntensity;\\n#endif\";var us=\"vec3 diffuse = vec3( 1.0 );\\nGeometricContext geometry;\\ngeometry.position = mvPosition.xyz;\\ngeometry.normal = normalize( transformedNormal );\\ngeometry.viewDir = ( isOrthographic ) ? vec3( 0, 0, 1 ) : normalize( -mvPosition.xyz );\\nGeometricContext backGeometry;\\nbackGeometry.position = geometry.position;\\nbackGeometry.normal = -geometry.normal;\\nbackGeometry.viewDir = geometry.viewDir;\\nvLightFront = vec3( 0.0 );\\nvIndirectFront = vec3( 0.0 );\\n#ifdef DOUBLE_SIDED\\n\\tvLightBack = vec3( 0.0 );\\n\\tvIndirectBack = vec3( 0.0 );\\n#endif\\nIncidentLight directLight;\\nfloat dotNL;\\nvec3 directLightColor_Diffuse;\\nvIndirectFront += getAmbientLightIrradiance( ambientLightColor );\\nvIndirectFront += getLightProbeIrradiance( lightProbe, geometry.normal );\\n#ifdef DOUBLE_SIDED\\n\\tvIndirectBack += getAmbientLightIrradiance( ambientLightColor );\\n\\tvIndirectBack += getLightProbeIrradiance( lightProbe, backGeometry.normal );\\n#endif\\n#if NUM_POINT_LIGHTS > 0\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) {\\n\\t\\tgetPointLightInfo( pointLights[ i ], geometry, directLight );\\n\\t\\tdotNL = dot( geometry.normal, directLight.direction );\\n\\t\\tdirectLightColor_Diffuse = directLight.color;\\n\\t\\tvLightFront += saturate( dotNL ) * directLightColor_Diffuse;\\n\\t\\t#ifdef DOUBLE_SIDED\\n\\t\\t\\tvLightBack += saturate( - dotNL ) * directLightColor_Diffuse;\\n\\t\\t#endif\\n\\t}\\n\\t#pragma unroll_loop_end\\n#endif\\n#if NUM_SPOT_LIGHTS > 0\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < NUM_SPOT_LIGHTS; i ++ ) {\\n\\t\\tgetSpotLightInfo( spotLights[ i ], geometry, directLight );\\n\\t\\tdotNL = dot( geometry.normal, directLight.direction );\\n\\t\\tdirectLightColor_Diffuse = directLight.color;\\n\\t\\tvLightFront += saturate( dotNL ) * directLightColor_Diffuse;\\n\\t\\t#ifdef DOUBLE_SIDED\\n\\t\\t\\tvLightBack += saturate( - dotNL ) * directLightColor_Diffuse;\\n\\t\\t#endif\\n\\t}\\n\\t#pragma unroll_loop_end\\n#endif\\n#if NUM_DIR_LIGHTS > 0\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < NUM_DIR_LIGHTS; i ++ ) {\\n\\t\\tgetDirectionalLightInfo( directionalLights[ i ], geometry, directLight );\\n\\t\\tdotNL = dot( geometry.normal, directLight.direction );\\n\\t\\tdirectLightColor_Diffuse = directLight.color;\\n\\t\\tvLightFront += saturate( dotNL ) * directLightColor_Diffuse;\\n\\t\\t#ifdef DOUBLE_SIDED\\n\\t\\t\\tvLightBack += saturate( - dotNL ) * directLightColor_Diffuse;\\n\\t\\t#endif\\n\\t}\\n\\t#pragma unroll_loop_end\\n#endif\\n#if NUM_HEMI_LIGHTS > 0\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < NUM_HEMI_LIGHTS; i ++ ) {\\n\\t\\tvIndirectFront += getHemisphereLightIrradiance( hemisphereLights[ i ], geometry.normal );\\n\\t\\t#ifdef DOUBLE_SIDED\\n\\t\\t\\tvIndirectBack += getHemisphereLightIrradiance( hemisphereLights[ i ], backGeometry.normal );\\n\\t\\t#endif\\n\\t}\\n\\t#pragma unroll_loop_end\\n#endif\";var hs=\"uniform bool receiveShadow;\\nuniform vec3 ambientLightColor;\\nuniform vec3 lightProbe[ 9 ];\\nvec3 shGetIrradianceAt( in vec3 normal, in vec3 shCoefficients[ 9 ] ) {\\n\\tfloat x = normal.x, y = normal.y, z = normal.z;\\n\\tvec3 result = shCoefficients[ 0 ] * 0.886227;\\n\\tresult += shCoefficients[ 1 ] * 2.0 * 0.511664 * y;\\n\\tresult += shCoefficients[ 2 ] * 2.0 * 0.511664 * z;\\n\\tresult += shCoefficients[ 3 ] * 2.0 * 0.511664 * x;\\n\\tresult += shCoefficients[ 4 ] * 2.0 * 0.429043 * x * y;\\n\\tresult += shCoefficients[ 5 ] * 2.0 * 0.429043 * y * z;\\n\\tresult += shCoefficients[ 6 ] * ( 0.743125 * z * z - 0.247708 );\\n\\tresult += shCoefficients[ 7 ] * 2.0 * 0.429043 * x * z;\\n\\tresult += shCoefficients[ 8 ] * 0.429043 * ( x * x - y * y );\\n\\treturn result;\\n}\\nvec3 getLightProbeIrradiance( const in vec3 lightProbe[ 9 ], const in vec3 normal ) {\\n\\tvec3 worldNormal = inverseTransformDirection( normal, viewMatrix );\\n\\tvec3 irradiance = shGetIrradianceAt( worldNormal, lightProbe );\\n\\treturn irradiance;\\n}\\nvec3 getAmbientLightIrradiance( const in vec3 ambientLightColor ) {\\n\\tvec3 irradiance = ambientLightColor;\\n\\treturn irradiance;\\n}\\nfloat getDistanceAttenuation( const in float lightDistance, const in float cutoffDistance, const in float decayExponent ) {\\n\\t#if defined ( PHYSICALLY_CORRECT_LIGHTS )\\n\\t\\tfloat distanceFalloff = 1.0 / max( pow( lightDistance, decayExponent ), 0.01 );\\n\\t\\tif ( cutoffDistance > 0.0 ) {\\n\\t\\t\\tdistanceFalloff *= pow2( saturate( 1.0 - pow4( lightDistance / cutoffDistance ) ) );\\n\\t\\t}\\n\\t\\treturn distanceFalloff;\\n\\t#else\\n\\t\\tif ( cutoffDistance > 0.0 && decayExponent > 0.0 ) {\\n\\t\\t\\treturn pow( saturate( - lightDistance / cutoffDistance + 1.0 ), decayExponent );\\n\\t\\t}\\n\\t\\treturn 1.0;\\n\\t#endif\\n}\\nfloat getSpotAttenuation( const in float coneCosine, const in float penumbraCosine, const in float angleCosine ) {\\n\\treturn smoothstep( coneCosine, penumbraCosine, angleCosine );\\n}\\n#if NUM_DIR_LIGHTS > 0\\n\\tstruct DirectionalLight {\\n\\t\\tvec3 direction;\\n\\t\\tvec3 color;\\n\\t};\\n\\tuniform DirectionalLight directionalLights[ NUM_DIR_LIGHTS ];\\n\\tvoid getDirectionalLightInfo( const in DirectionalLight directionalLight, const in GeometricContext geometry, out IncidentLight light ) {\\n\\t\\tlight.color = directionalLight.color;\\n\\t\\tlight.direction = directionalLight.direction;\\n\\t\\tlight.visible = true;\\n\\t}\\n#endif\\n#if NUM_POINT_LIGHTS > 0\\n\\tstruct PointLight {\\n\\t\\tvec3 position;\\n\\t\\tvec3 color;\\n\\t\\tfloat distance;\\n\\t\\tfloat decay;\\n\\t};\\n\\tuniform PointLight pointLights[ NUM_POINT_LIGHTS ];\\n\\tvoid getPointLightInfo( const in PointLight pointLight, const in GeometricContext geometry, out IncidentLight light ) {\\n\\t\\tvec3 lVector = pointLight.position - geometry.position;\\n\\t\\tlight.direction = normalize( lVector );\\n\\t\\tfloat lightDistance = length( lVector );\\n\\t\\tlight.color = pointLight.color;\\n\\t\\tlight.color *= getDistanceAttenuation( lightDistance, pointLight.distance, pointLight.decay );\\n\\t\\tlight.visible = ( light.color != vec3( 0.0 ) );\\n\\t}\\n#endif\\n#if NUM_SPOT_LIGHTS > 0\\n\\tstruct SpotLight {\\n\\t\\tvec3 position;\\n\\t\\tvec3 direction;\\n\\t\\tvec3 color;\\n\\t\\tfloat distance;\\n\\t\\tfloat decay;\\n\\t\\tfloat coneCos;\\n\\t\\tfloat penumbraCos;\\n\\t};\\n\\tuniform SpotLight spotLights[ NUM_SPOT_LIGHTS ];\\n\\tvoid getSpotLightInfo( const in SpotLight spotLight, const in GeometricContext geometry, out IncidentLight light ) {\\n\\t\\tvec3 lVector = spotLight.position - geometry.position;\\n\\t\\tlight.direction = normalize( lVector );\\n\\t\\tfloat angleCos = dot( light.direction, spotLight.direction );\\n\\t\\tfloat spotAttenuation = getSpotAttenuation( spotLight.coneCos, spotLight.penumbraCos, angleCos );\\n\\t\\tif ( spotAttenuation > 0.0 ) {\\n\\t\\t\\tfloat lightDistance = length( lVector );\\n\\t\\t\\tlight.color = spotLight.color * spotAttenuation;\\n\\t\\t\\tlight.color *= getDistanceAttenuation( lightDistance, spotLight.distance, spotLight.decay );\\n\\t\\t\\tlight.visible = ( light.color != vec3( 0.0 ) );\\n\\t\\t} else {\\n\\t\\t\\tlight.color = vec3( 0.0 );\\n\\t\\t\\tlight.visible = false;\\n\\t\\t}\\n\\t}\\n#endif\\n#if NUM_RECT_AREA_LIGHTS > 0\\n\\tstruct RectAreaLight {\\n\\t\\tvec3 color;\\n\\t\\tvec3 position;\\n\\t\\tvec3 halfWidth;\\n\\t\\tvec3 halfHeight;\\n\\t};\\n\\tuniform sampler2D ltc_1;\\tuniform sampler2D ltc_2;\\n\\tuniform RectAreaLight rectAreaLights[ NUM_RECT_AREA_LIGHTS ];\\n#endif\\n#if NUM_HEMI_LIGHTS > 0\\n\\tstruct HemisphereLight {\\n\\t\\tvec3 direction;\\n\\t\\tvec3 skyColor;\\n\\t\\tvec3 groundColor;\\n\\t};\\n\\tuniform HemisphereLight hemisphereLights[ NUM_HEMI_LIGHTS ];\\n\\tvec3 getHemisphereLightIrradiance( const in HemisphereLight hemiLight, const in vec3 normal ) {\\n\\t\\tfloat dotNL = dot( normal, hemiLight.direction );\\n\\t\\tfloat hemiDiffuseWeight = 0.5 * dotNL + 0.5;\\n\\t\\tvec3 irradiance = mix( hemiLight.groundColor, hemiLight.skyColor, hemiDiffuseWeight );\\n\\t\\treturn irradiance;\\n\\t}\\n#endif\";var ds=\"#if defined( USE_ENVMAP )\\n\\t#ifdef ENVMAP_MODE_REFRACTION\\n\\t\\tuniform float refractionRatio;\\n\\t#endif\\n\\tvec3 getIBLIrradiance( const in vec3 normal ) {\\n\\t\\t#if defined( ENVMAP_TYPE_CUBE_UV )\\n\\t\\t\\tvec3 worldNormal = inverseTransformDirection( normal, viewMatrix );\\n\\t\\t\\tvec4 envMapColor = textureCubeUV( envMap, worldNormal, 1.0 );\\n\\t\\t\\treturn PI * envMapColor.rgb * envMapIntensity;\\n\\t\\t#else\\n\\t\\t\\treturn vec3( 0.0 );\\n\\t\\t#endif\\n\\t}\\n\\tvec3 getIBLRadiance( const in vec3 viewDir, const in vec3 normal, const in float roughness ) {\\n\\t\\t#if defined( ENVMAP_TYPE_CUBE_UV )\\n\\t\\t\\tvec3 reflectVec;\\n\\t\\t\\t#ifdef ENVMAP_MODE_REFLECTION\\n\\t\\t\\t\\treflectVec = reflect( - viewDir, normal );\\n\\t\\t\\t\\treflectVec = normalize( mix( reflectVec, normal, roughness * roughness) );\\n\\t\\t\\t#else\\n\\t\\t\\t\\treflectVec = refract( - viewDir, normal, refractionRatio );\\n\\t\\t\\t#endif\\n\\t\\t\\treflectVec = inverseTransformDirection( reflectVec, viewMatrix );\\n\\t\\t\\tvec4 envMapColor = textureCubeUV( envMap, reflectVec, roughness );\\n\\t\\t\\treturn envMapColor.rgb * envMapIntensity;\\n\\t\\t#else\\n\\t\\t\\treturn vec3( 0.0 );\\n\\t\\t#endif\\n\\t}\\n#endif\";var ps=\"ToonMaterial material;\\nmaterial.diffuseColor = diffuseColor.rgb;\";var fs=\"varying vec3 vViewPosition;\\nstruct ToonMaterial {\\n\\tvec3 diffuseColor;\\n};\\nvoid RE_Direct_Toon( const in IncidentLight directLight, const in GeometricContext geometry, const in ToonMaterial material, inout ReflectedLight reflectedLight ) {\\n\\tvec3 irradiance = getGradientIrradiance( geometry.normal, directLight.direction ) * directLight.color;\\n\\treflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\\n}\\nvoid RE_IndirectDiffuse_Toon( const in vec3 irradiance, const in GeometricContext geometry, const in ToonMaterial material, inout ReflectedLight reflectedLight ) {\\n\\treflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\\n}\\n#define RE_Direct\\t\\t\\t\\tRE_Direct_Toon\\n#define RE_IndirectDiffuse\\t\\tRE_IndirectDiffuse_Toon\\n#define Material_LightProbeLOD( material )\\t(0)\";var ms=\"BlinnPhongMaterial material;\\nmaterial.diffuseColor = diffuseColor.rgb;\\nmaterial.specularColor = specular;\\nmaterial.specularShininess = shininess;\\nmaterial.specularStrength = specularStrength;\";var gs=\"varying vec3 vViewPosition;\\nstruct BlinnPhongMaterial {\\n\\tvec3 diffuseColor;\\n\\tvec3 specularColor;\\n\\tfloat specularShininess;\\n\\tfloat specularStrength;\\n};\\nvoid RE_Direct_BlinnPhong( const in IncidentLight directLight, const in GeometricContext geometry, const in BlinnPhongMaterial material, inout ReflectedLight reflectedLight ) {\\n\\tfloat dotNL = saturate( dot( geometry.normal, directLight.direction ) );\\n\\tvec3 irradiance = dotNL * directLight.color;\\n\\treflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\\n\\treflectedLight.directSpecular += irradiance * BRDF_BlinnPhong( directLight.direction, geometry.viewDir, geometry.normal, material.specularColor, material.specularShininess ) * material.specularStrength;\\n}\\nvoid RE_IndirectDiffuse_BlinnPhong( const in vec3 irradiance, const in GeometricContext geometry, const in BlinnPhongMaterial material, inout ReflectedLight reflectedLight ) {\\n\\treflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\\n}\\n#define RE_Direct\\t\\t\\t\\tRE_Direct_BlinnPhong\\n#define RE_IndirectDiffuse\\t\\tRE_IndirectDiffuse_BlinnPhong\\n#define Material_LightProbeLOD( material )\\t(0)\";var ys=\"PhysicalMaterial material;\\nmaterial.diffuseColor = diffuseColor.rgb * ( 1.0 - metalnessFactor );\\nvec3 dxy = max( abs( dFdx( geometryNormal ) ), abs( dFdy( geometryNormal ) ) );\\nfloat geometryRoughness = max( max( dxy.x, dxy.y ), dxy.z );\\nmaterial.roughness = max( roughnessFactor, 0.0525 );material.roughness += geometryRoughness;\\nmaterial.roughness = min( material.roughness, 1.0 );\\n#ifdef IOR\\n\\t#ifdef SPECULAR\\n\\t\\tfloat specularIntensityFactor = specularIntensity;\\n\\t\\tvec3 specularColorFactor = specularColor;\\n\\t\\t#ifdef USE_SPECULARINTENSITYMAP\\n\\t\\t\\tspecularIntensityFactor *= texture2D( specularIntensityMap, vUv ).a;\\n\\t\\t#endif\\n\\t\\t#ifdef USE_SPECULARCOLORMAP\\n\\t\\t\\tspecularColorFactor *= specularColorMapTexelToLinear( texture2D( specularColorMap, vUv ) ).rgb;\\n\\t\\t#endif\\n\\t\\tmaterial.specularF90 = mix( specularIntensityFactor, 1.0, metalnessFactor );\\n\\t#else\\n\\t\\tfloat specularIntensityFactor = 1.0;\\n\\t\\tvec3 specularColorFactor = vec3( 1.0 );\\n\\t\\tmaterial.specularF90 = 1.0;\\n\\t#endif\\n\\tmaterial.specularColor = mix( min( pow2( ( ior - 1.0 ) / ( ior + 1.0 ) ) * specularColorFactor, vec3( 1.0 ) ) * specularIntensityFactor, diffuseColor.rgb, metalnessFactor );\\n#else\\n\\tmaterial.specularColor = mix( vec3( 0.04 ), diffuseColor.rgb, metalnessFactor );\\n\\tmaterial.specularF90 = 1.0;\\n#endif\\n#ifdef USE_CLEARCOAT\\n\\tmaterial.clearcoat = clearcoat;\\n\\tmaterial.clearcoatRoughness = clearcoatRoughness;\\n\\tmaterial.clearcoatF0 = vec3( 0.04 );\\n\\tmaterial.clearcoatF90 = 1.0;\\n\\t#ifdef USE_CLEARCOATMAP\\n\\t\\tmaterial.clearcoat *= texture2D( clearcoatMap, vUv ).x;\\n\\t#endif\\n\\t#ifdef USE_CLEARCOAT_ROUGHNESSMAP\\n\\t\\tmaterial.clearcoatRoughness *= texture2D( clearcoatRoughnessMap, vUv ).y;\\n\\t#endif\\n\\tmaterial.clearcoat = saturate( material.clearcoat );\\tmaterial.clearcoatRoughness = max( material.clearcoatRoughness, 0.0525 );\\n\\tmaterial.clearcoatRoughness += geometryRoughness;\\n\\tmaterial.clearcoatRoughness = min( material.clearcoatRoughness, 1.0 );\\n#endif\\n#ifdef USE_SHEEN\\n\\tmaterial.sheenColor = sheenColor;\\n\\t#ifdef USE_SHEENCOLORMAP\\n\\t\\tmaterial.sheenColor *= sheenColorMapTexelToLinear( texture2D( sheenColorMap, vUv ) ).rgb;\\n\\t#endif\\n\\tmaterial.sheenRoughness = clamp( sheenRoughness, 0.07, 1.0 );\\n\\t#ifdef USE_SHEENROUGHNESSMAP\\n\\t\\tmaterial.sheenRoughness *= texture2D( sheenRoughnessMap, vUv ).a;\\n\\t#endif\\n#endif\";var vs=\"struct PhysicalMaterial {\\n\\tvec3 diffuseColor;\\n\\tfloat roughness;\\n\\tvec3 specularColor;\\n\\tfloat specularF90;\\n\\t#ifdef USE_CLEARCOAT\\n\\t\\tfloat clearcoat;\\n\\t\\tfloat clearcoatRoughness;\\n\\t\\tvec3 clearcoatF0;\\n\\t\\tfloat clearcoatF90;\\n\\t#endif\\n\\t#ifdef USE_SHEEN\\n\\t\\tvec3 sheenColor;\\n\\t\\tfloat sheenRoughness;\\n\\t#endif\\n};\\nvec3 clearcoatSpecular = vec3( 0.0 );\\nvec3 sheenSpecular = vec3( 0.0 );\\nfloat IBLSheenBRDF( const in vec3 normal, const in vec3 viewDir, const in float roughness) {\\n\\tfloat dotNV = saturate( dot( normal, viewDir ) );\\n\\tfloat r2 = roughness * roughness;\\n\\tfloat a = roughness < 0.25 ? -339.2 * r2 + 161.4 * roughness - 25.9 : -8.48 * r2 + 14.3 * roughness - 9.95;\\n\\tfloat b = roughness < 0.25 ? 44.0 * r2 - 23.7 * roughness + 3.26 : 1.97 * r2 - 3.27 * roughness + 0.72;\\n\\tfloat DG = exp( a * dotNV + b ) + ( roughness < 0.25 ? 0.0 : 0.1 * ( roughness - 0.25 ) );\\n\\treturn saturate( DG * RECIPROCAL_PI );\\n}\\nvec2 DFGApprox( const in vec3 normal, const in vec3 viewDir, const in float roughness ) {\\n\\tfloat dotNV = saturate( dot( normal, viewDir ) );\\n\\tconst vec4 c0 = vec4( - 1, - 0.0275, - 0.572, 0.022 );\\n\\tconst vec4 c1 = vec4( 1, 0.0425, 1.04, - 0.04 );\\n\\tvec4 r = roughness * c0 + c1;\\n\\tfloat a004 = min( r.x * r.x, exp2( - 9.28 * dotNV ) ) * r.x + r.y;\\n\\tvec2 fab = vec2( - 1.04, 1.04 ) * a004 + r.zw;\\n\\treturn fab;\\n}\\nvec3 EnvironmentBRDF( const in vec3 normal, const in vec3 viewDir, const in vec3 specularColor, const in float specularF90, const in float roughness ) {\\n\\tvec2 fab = DFGApprox( normal, viewDir, roughness );\\n\\treturn specularColor * fab.x + specularF90 * fab.y;\\n}\\nvoid computeMultiscattering( const in vec3 normal, const in vec3 viewDir, const in vec3 specularColor, const in float specularF90, const in float roughness, inout vec3 singleScatter, inout vec3 multiScatter ) {\\n\\tvec2 fab = DFGApprox( normal, viewDir, roughness );\\n\\tvec3 FssEss = specularColor * fab.x + specularF90 * fab.y;\\n\\tfloat Ess = fab.x + fab.y;\\n\\tfloat Ems = 1.0 - Ess;\\n\\tvec3 Favg = specularColor + ( 1.0 - specularColor ) * 0.047619;\\tvec3 Fms = FssEss * Favg / ( 1.0 - Ems * Favg );\\n\\tsingleScatter += FssEss;\\n\\tmultiScatter += Fms * Ems;\\n}\\n#if NUM_RECT_AREA_LIGHTS > 0\\n\\tvoid RE_Direct_RectArea_Physical( const in RectAreaLight rectAreaLight, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\\n\\t\\tvec3 normal = geometry.normal;\\n\\t\\tvec3 viewDir = geometry.viewDir;\\n\\t\\tvec3 position = geometry.position;\\n\\t\\tvec3 lightPos = rectAreaLight.position;\\n\\t\\tvec3 halfWidth = rectAreaLight.halfWidth;\\n\\t\\tvec3 halfHeight = rectAreaLight.halfHeight;\\n\\t\\tvec3 lightColor = rectAreaLight.color;\\n\\t\\tfloat roughness = material.roughness;\\n\\t\\tvec3 rectCoords[ 4 ];\\n\\t\\trectCoords[ 0 ] = lightPos + halfWidth - halfHeight;\\t\\trectCoords[ 1 ] = lightPos - halfWidth - halfHeight;\\n\\t\\trectCoords[ 2 ] = lightPos - halfWidth + halfHeight;\\n\\t\\trectCoords[ 3 ] = lightPos + halfWidth + halfHeight;\\n\\t\\tvec2 uv = LTC_Uv( normal, viewDir, roughness );\\n\\t\\tvec4 t1 = texture2D( ltc_1, uv );\\n\\t\\tvec4 t2 = texture2D( ltc_2, uv );\\n\\t\\tmat3 mInv = mat3(\\n\\t\\t\\tvec3( t1.x, 0, t1.y ),\\n\\t\\t\\tvec3(    0, 1,    0 ),\\n\\t\\t\\tvec3( t1.z, 0, t1.w )\\n\\t\\t);\\n\\t\\tvec3 fresnel = ( material.specularColor * t2.x + ( vec3( 1.0 ) - material.specularColor ) * t2.y );\\n\\t\\treflectedLight.directSpecular += lightColor * fresnel * LTC_Evaluate( normal, viewDir, position, mInv, rectCoords );\\n\\t\\treflectedLight.directDiffuse += lightColor * material.diffuseColor * LTC_Evaluate( normal, viewDir, position, mat3( 1.0 ), rectCoords );\\n\\t}\\n#endif\\nvoid RE_Direct_Physical( const in IncidentLight directLight, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\\n\\tfloat dotNL = saturate( dot( geometry.normal, directLight.direction ) );\\n\\tvec3 irradiance = dotNL * directLight.color;\\n\\t#ifdef USE_CLEARCOAT\\n\\t\\tfloat dotNLcc = saturate( dot( geometry.clearcoatNormal, directLight.direction ) );\\n\\t\\tvec3 ccIrradiance = dotNLcc * directLight.color;\\n\\t\\tclearcoatSpecular += ccIrradiance * BRDF_GGX( directLight.direction, geometry.viewDir, geometry.clearcoatNormal, material.clearcoatF0, material.clearcoatF90, material.clearcoatRoughness );\\n\\t#endif\\n\\t#ifdef USE_SHEEN\\n\\t\\tsheenSpecular += irradiance * BRDF_Sheen( directLight.direction, geometry.viewDir, geometry.normal, material.sheenColor, material.sheenRoughness );\\n\\t#endif\\n\\treflectedLight.directSpecular += irradiance * BRDF_GGX( directLight.direction, geometry.viewDir, geometry.normal, material.specularColor, material.specularF90, material.roughness );\\n\\treflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\\n}\\nvoid RE_IndirectDiffuse_Physical( const in vec3 irradiance, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\\n\\treflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\\n}\\nvoid RE_IndirectSpecular_Physical( const in vec3 radiance, const in vec3 irradiance, const in vec3 clearcoatRadiance, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight) {\\n\\t#ifdef USE_CLEARCOAT\\n\\t\\tclearcoatSpecular += clearcoatRadiance * EnvironmentBRDF( geometry.clearcoatNormal, geometry.viewDir, material.clearcoatF0, material.clearcoatF90, material.clearcoatRoughness );\\n\\t#endif\\n\\t#ifdef USE_SHEEN\\n\\t\\tsheenSpecular += irradiance * material.sheenColor * IBLSheenBRDF( geometry.normal, geometry.viewDir, material.sheenRoughness );\\n\\t#endif\\n\\tvec3 singleScattering = vec3( 0.0 );\\n\\tvec3 multiScattering = vec3( 0.0 );\\n\\tvec3 cosineWeightedIrradiance = irradiance * RECIPROCAL_PI;\\n\\tcomputeMultiscattering( geometry.normal, geometry.viewDir, material.specularColor, material.specularF90, material.roughness, singleScattering, multiScattering );\\n\\tvec3 diffuse = material.diffuseColor * ( 1.0 - ( singleScattering + multiScattering ) );\\n\\treflectedLight.indirectSpecular += radiance * singleScattering;\\n\\treflectedLight.indirectSpecular += multiScattering * cosineWeightedIrradiance;\\n\\treflectedLight.indirectDiffuse += diffuse * cosineWeightedIrradiance;\\n}\\n#define RE_Direct\\t\\t\\t\\tRE_Direct_Physical\\n#define RE_Direct_RectArea\\t\\tRE_Direct_RectArea_Physical\\n#define RE_IndirectDiffuse\\t\\tRE_IndirectDiffuse_Physical\\n#define RE_IndirectSpecular\\t\\tRE_IndirectSpecular_Physical\\nfloat computeSpecularOcclusion( const in float dotNV, const in float ambientOcclusion, const in float roughness ) {\\n\\treturn saturate( pow( dotNV + ambientOcclusion, exp2( - 16.0 * roughness - 1.0 ) ) - 1.0 + ambientOcclusion );\\n}\";var xs=\"\\nGeometricContext geometry;\\ngeometry.position = - vViewPosition;\\ngeometry.normal = normal;\\ngeometry.viewDir = ( isOrthographic ) ? vec3( 0, 0, 1 ) : normalize( vViewPosition );\\n#ifdef USE_CLEARCOAT\\n\\tgeometry.clearcoatNormal = clearcoatNormal;\\n#endif\\nIncidentLight directLight;\\n#if ( NUM_POINT_LIGHTS > 0 ) && defined( RE_Direct )\\n\\tPointLight pointLight;\\n\\t#if defined( USE_SHADOWMAP ) && NUM_POINT_LIGHT_SHADOWS > 0\\n\\tPointLightShadow pointLightShadow;\\n\\t#endif\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) {\\n\\t\\tpointLight = pointLights[ i ];\\n\\t\\tgetPointLightInfo( pointLight, geometry, directLight );\\n\\t\\t#if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_POINT_LIGHT_SHADOWS )\\n\\t\\tpointLightShadow = pointLightShadows[ i ];\\n\\t\\tdirectLight.color *= all( bvec2( directLight.visible, receiveShadow ) ) ? getPointShadow( pointShadowMap[ i ], pointLightShadow.shadowMapSize, pointLightShadow.shadowBias, pointLightShadow.shadowRadius, vPointShadowCoord[ i ], pointLightShadow.shadowCameraNear, pointLightShadow.shadowCameraFar ) : 1.0;\\n\\t\\t#endif\\n\\t\\tRE_Direct( directLight, geometry, material, reflectedLight );\\n\\t}\\n\\t#pragma unroll_loop_end\\n#endif\\n#if ( NUM_SPOT_LIGHTS > 0 ) && defined( RE_Direct )\\n\\tSpotLight spotLight;\\n\\t#if defined( USE_SHADOWMAP ) && NUM_SPOT_LIGHT_SHADOWS > 0\\n\\tSpotLightShadow spotLightShadow;\\n\\t#endif\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < NUM_SPOT_LIGHTS; i ++ ) {\\n\\t\\tspotLight = spotLights[ i ];\\n\\t\\tgetSpotLightInfo( spotLight, geometry, directLight );\\n\\t\\t#if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS )\\n\\t\\tspotLightShadow = spotLightShadows[ i ];\\n\\t\\tdirectLight.color *= all( bvec2( directLight.visible, receiveShadow ) ) ? getShadow( spotShadowMap[ i ], spotLightShadow.shadowMapSize, spotLightShadow.shadowBias, spotLightShadow.shadowRadius, vSpotShadowCoord[ i ] ) : 1.0;\\n\\t\\t#endif\\n\\t\\tRE_Direct( directLight, geometry, material, reflectedLight );\\n\\t}\\n\\t#pragma unroll_loop_end\\n#endif\\n#if ( NUM_DIR_LIGHTS > 0 ) && defined( RE_Direct )\\n\\tDirectionalLight directionalLight;\\n\\t#if defined( USE_SHADOWMAP ) && NUM_DIR_LIGHT_SHADOWS > 0\\n\\tDirectionalLightShadow directionalLightShadow;\\n\\t#endif\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < NUM_DIR_LIGHTS; i ++ ) {\\n\\t\\tdirectionalLight = directionalLights[ i ];\\n\\t\\tgetDirectionalLightInfo( directionalLight, geometry, directLight );\\n\\t\\t#if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_DIR_LIGHT_SHADOWS )\\n\\t\\tdirectionalLightShadow = directionalLightShadows[ i ];\\n\\t\\tdirectLight.color *= all( bvec2( directLight.visible, receiveShadow ) ) ? getShadow( directionalShadowMap[ i ], directionalLightShadow.shadowMapSize, directionalLightShadow.shadowBias, directionalLightShadow.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0;\\n\\t\\t#endif\\n\\t\\tRE_Direct( directLight, geometry, material, reflectedLight );\\n\\t}\\n\\t#pragma unroll_loop_end\\n#endif\\n#if ( NUM_RECT_AREA_LIGHTS > 0 ) && defined( RE_Direct_RectArea )\\n\\tRectAreaLight rectAreaLight;\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < NUM_RECT_AREA_LIGHTS; i ++ ) {\\n\\t\\trectAreaLight = rectAreaLights[ i ];\\n\\t\\tRE_Direct_RectArea( rectAreaLight, geometry, material, reflectedLight );\\n\\t}\\n\\t#pragma unroll_loop_end\\n#endif\\n#if defined( RE_IndirectDiffuse )\\n\\tvec3 iblIrradiance = vec3( 0.0 );\\n\\tvec3 irradiance = getAmbientLightIrradiance( ambientLightColor );\\n\\tirradiance += getLightProbeIrradiance( lightProbe, geometry.normal );\\n\\t#if ( NUM_HEMI_LIGHTS > 0 )\\n\\t\\t#pragma unroll_loop_start\\n\\t\\tfor ( int i = 0; i < NUM_HEMI_LIGHTS; i ++ ) {\\n\\t\\t\\tirradiance += getHemisphereLightIrradiance( hemisphereLights[ i ], geometry.normal );\\n\\t\\t}\\n\\t\\t#pragma unroll_loop_end\\n\\t#endif\\n#endif\\n#if defined( RE_IndirectSpecular )\\n\\tvec3 radiance = vec3( 0.0 );\\n\\tvec3 clearcoatRadiance = vec3( 0.0 );\\n#endif\";var bs=\"#if defined( RE_IndirectDiffuse )\\n\\t#ifdef USE_LIGHTMAP\\n\\t\\tvec4 lightMapTexel = texture2D( lightMap, vUv2 );\\n\\t\\tvec3 lightMapIrradiance = lightMapTexelToLinear( lightMapTexel ).rgb * lightMapIntensity;\\n\\t\\t#ifndef PHYSICALLY_CORRECT_LIGHTS\\n\\t\\t\\tlightMapIrradiance *= PI;\\n\\t\\t#endif\\n\\t\\tirradiance += lightMapIrradiance;\\n\\t#endif\\n\\t#if defined( USE_ENVMAP ) && defined( STANDARD ) && defined( ENVMAP_TYPE_CUBE_UV )\\n\\t\\tiblIrradiance += getIBLIrradiance( geometry.normal );\\n\\t#endif\\n#endif\\n#if defined( USE_ENVMAP ) && defined( RE_IndirectSpecular )\\n\\tradiance += getIBLRadiance( geometry.viewDir, geometry.normal, material.roughness );\\n\\t#ifdef USE_CLEARCOAT\\n\\t\\tclearcoatRadiance += getIBLRadiance( geometry.viewDir, geometry.clearcoatNormal, material.clearcoatRoughness );\\n\\t#endif\\n#endif\";var _s=\"#if defined( RE_IndirectDiffuse )\\n\\tRE_IndirectDiffuse( irradiance, geometry, material, reflectedLight );\\n#endif\\n#if defined( RE_IndirectSpecular )\\n\\tRE_IndirectSpecular( radiance, iblIrradiance, clearcoatRadiance, geometry, material, reflectedLight );\\n#endif\";var Ms=\"#if defined( USE_LOGDEPTHBUF ) && defined( USE_LOGDEPTHBUF_EXT )\\n\\tgl_FragDepthEXT = vIsPerspective == 0.0 ? gl_FragCoord.z : log2( vFragDepth ) * logDepthBufFC * 0.5;\\n#endif\";var ws=\"#if defined( USE_LOGDEPTHBUF ) && defined( USE_LOGDEPTHBUF_EXT )\\n\\tuniform float logDepthBufFC;\\n\\tvarying float vFragDepth;\\n\\tvarying float vIsPerspective;\\n#endif\";var Ss=\"#ifdef USE_LOGDEPTHBUF\\n\\t#ifdef USE_LOGDEPTHBUF_EXT\\n\\t\\tvarying float vFragDepth;\\n\\t\\tvarying float vIsPerspective;\\n\\t#else\\n\\t\\tuniform float logDepthBufFC;\\n\\t#endif\\n#endif\";var Ts=\"#ifdef USE_LOGDEPTHBUF\\n\\t#ifdef USE_LOGDEPTHBUF_EXT\\n\\t\\tvFragDepth = 1.0 + gl_Position.w;\\n\\t\\tvIsPerspective = float( isPerspectiveMatrix( projectionMatrix ) );\\n\\t#else\\n\\t\\tif ( isPerspectiveMatrix( projectionMatrix ) ) {\\n\\t\\t\\tgl_Position.z = log2( max( EPSILON, gl_Position.w + 1.0 ) ) * logDepthBufFC - 1.0;\\n\\t\\t\\tgl_Position.z *= gl_Position.w;\\n\\t\\t}\\n\\t#endif\\n#endif\";var Es=\"#ifdef USE_MAP\\n\\tvec4 texelColor = texture2D( map, vUv );\\n\\ttexelColor = mapTexelToLinear( texelColor );\\n\\tdiffuseColor *= texelColor;\\n#endif\";var As=\"#ifdef USE_MAP\\n\\tuniform sampler2D map;\\n#endif\";var Ls=\"#if defined( USE_MAP ) || defined( USE_ALPHAMAP )\\n\\tvec2 uv = ( uvTransform * vec3( gl_PointCoord.x, 1.0 - gl_PointCoord.y, 1 ) ).xy;\\n#endif\\n#ifdef USE_MAP\\n\\tvec4 mapTexel = texture2D( map, uv );\\n\\tdiffuseColor *= mapTexelToLinear( mapTexel );\\n#endif\\n#ifdef USE_ALPHAMAP\\n\\tdiffuseColor.a *= texture2D( alphaMap, uv ).g;\\n#endif\";var Cs=\"#if defined( USE_MAP ) || defined( USE_ALPHAMAP )\\n\\tuniform mat3 uvTransform;\\n#endif\\n#ifdef USE_MAP\\n\\tuniform sampler2D map;\\n#endif\\n#ifdef USE_ALPHAMAP\\n\\tuniform sampler2D alphaMap;\\n#endif\";var Rs=\"float metalnessFactor = metalness;\\n#ifdef USE_METALNESSMAP\\n\\tvec4 texelMetalness = texture2D( metalnessMap, vUv );\\n\\tmetalnessFactor *= texelMetalness.b;\\n#endif\";var Ps=\"#ifdef USE_METALNESSMAP\\n\\tuniform sampler2D metalnessMap;\\n#endif\";var Is=\"#ifdef USE_MORPHNORMALS\\n\\tobjectNormal *= morphTargetBaseInfluence;\\n\\t#ifdef MORPHTARGETS_TEXTURE\\n\\t\\tfor ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) {\\n\\t\\t\\tif ( morphTargetInfluences[ i ] > 0.0 ) objectNormal += getMorph( gl_VertexID, i, 1, 2 ) * morphTargetInfluences[ i ];\\n\\t\\t}\\n\\t#else\\n\\t\\tobjectNormal += morphNormal0 * morphTargetInfluences[ 0 ];\\n\\t\\tobjectNormal += morphNormal1 * morphTargetInfluences[ 1 ];\\n\\t\\tobjectNormal += morphNormal2 * morphTargetInfluences[ 2 ];\\n\\t\\tobjectNormal += morphNormal3 * morphTargetInfluences[ 3 ];\\n\\t#endif\\n#endif\";var Ds=\"#ifdef USE_MORPHTARGETS\\n\\tuniform float morphTargetBaseInfluence;\\n\\t#ifdef MORPHTARGETS_TEXTURE\\n\\t\\tuniform float morphTargetInfluences[ MORPHTARGETS_COUNT ];\\n\\t\\tuniform sampler2DArray morphTargetsTexture;\\n\\t\\tuniform vec2 morphTargetsTextureSize;\\n\\t\\tvec3 getMorph( const in int vertexIndex, const in int morphTargetIndex, const in int offset, const in int stride ) {\\n\\t\\t\\tfloat texelIndex = float( vertexIndex * stride + offset );\\n\\t\\t\\tfloat y = floor( texelIndex / morphTargetsTextureSize.x );\\n\\t\\t\\tfloat x = texelIndex - y * morphTargetsTextureSize.x;\\n\\t\\t\\tvec3 morphUV = vec3( ( x + 0.5 ) / morphTargetsTextureSize.x, y / morphTargetsTextureSize.y, morphTargetIndex );\\n\\t\\t\\treturn texture( morphTargetsTexture, morphUV ).xyz;\\n\\t\\t}\\n\\t#else\\n\\t\\t#ifndef USE_MORPHNORMALS\\n\\t\\t\\tuniform float morphTargetInfluences[ 8 ];\\n\\t\\t#else\\n\\t\\t\\tuniform float morphTargetInfluences[ 4 ];\\n\\t\\t#endif\\n\\t#endif\\n#endif\";var Bs=\"#ifdef USE_MORPHTARGETS\\n\\ttransformed *= morphTargetBaseInfluence;\\n\\t#ifdef MORPHTARGETS_TEXTURE\\n\\t\\tfor ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) {\\n\\t\\t\\t#ifndef USE_MORPHNORMALS\\n\\t\\t\\t\\tif ( morphTargetInfluences[ i ] > 0.0 ) transformed += getMorph( gl_VertexID, i, 0, 1 ) * morphTargetInfluences[ i ];\\n\\t\\t\\t#else\\n\\t\\t\\t\\tif ( morphTargetInfluences[ i ] > 0.0 ) transformed += getMorph( gl_VertexID, i, 0, 2 ) * morphTargetInfluences[ i ];\\n\\t\\t\\t#endif\\n\\t\\t}\\n\\t#else\\n\\t\\ttransformed += morphTarget0 * morphTargetInfluences[ 0 ];\\n\\t\\ttransformed += morphTarget1 * morphTargetInfluences[ 1 ];\\n\\t\\ttransformed += morphTarget2 * morphTargetInfluences[ 2 ];\\n\\t\\ttransformed += morphTarget3 * morphTargetInfluences[ 3 ];\\n\\t\\t#ifndef USE_MORPHNORMALS\\n\\t\\t\\ttransformed += morphTarget4 * morphTargetInfluences[ 4 ];\\n\\t\\t\\ttransformed += morphTarget5 * morphTargetInfluences[ 5 ];\\n\\t\\t\\ttransformed += morphTarget6 * morphTargetInfluences[ 6 ];\\n\\t\\t\\ttransformed += morphTarget7 * morphTargetInfluences[ 7 ];\\n\\t\\t#endif\\n\\t#endif\\n#endif\";var Vs=\"float faceDirection = gl_FrontFacing ? 1.0 : - 1.0;\\n#ifdef FLAT_SHADED\\n\\tvec3 fdx = vec3( dFdx( vViewPosition.x ), dFdx( vViewPosition.y ), dFdx( vViewPosition.z ) );\\n\\tvec3 fdy = vec3( dFdy( vViewPosition.x ), dFdy( vViewPosition.y ), dFdy( vViewPosition.z ) );\\n\\tvec3 normal = normalize( cross( fdx, fdy ) );\\n#else\\n\\tvec3 normal = normalize( vNormal );\\n\\t#ifdef DOUBLE_SIDED\\n\\t\\tnormal = normal * faceDirection;\\n\\t#endif\\n\\t#ifdef USE_TANGENT\\n\\t\\tvec3 tangent = normalize( vTangent );\\n\\t\\tvec3 bitangent = normalize( vBitangent );\\n\\t\\t#ifdef DOUBLE_SIDED\\n\\t\\t\\ttangent = tangent * faceDirection;\\n\\t\\t\\tbitangent = bitangent * faceDirection;\\n\\t\\t#endif\\n\\t\\t#if defined( TANGENTSPACE_NORMALMAP ) || defined( USE_CLEARCOAT_NORMALMAP )\\n\\t\\t\\tmat3 vTBN = mat3( tangent, bitangent, normal );\\n\\t\\t#endif\\n\\t#endif\\n#endif\\nvec3 geometryNormal = normal;\";var Ns=\"#ifdef OBJECTSPACE_NORMALMAP\\n\\tnormal = texture2D( normalMap, vUv ).xyz * 2.0 - 1.0;\\n\\t#ifdef FLIP_SIDED\\n\\t\\tnormal = - normal;\\n\\t#endif\\n\\t#ifdef DOUBLE_SIDED\\n\\t\\tnormal = normal * faceDirection;\\n\\t#endif\\n\\tnormal = normalize( normalMatrix * normal );\\n#elif defined( TANGENTSPACE_NORMALMAP )\\n\\tvec3 mapN = texture2D( normalMap, vUv ).xyz * 2.0 - 1.0;\\n\\tmapN.xy *= normalScale;\\n\\t#ifdef USE_TANGENT\\n\\t\\tnormal = normalize( vTBN * mapN );\\n\\t#else\\n\\t\\tnormal = perturbNormal2Arb( - vViewPosition, normal, mapN, faceDirection );\\n\\t#endif\\n#elif defined( USE_BUMPMAP )\\n\\tnormal = perturbNormalArb( - vViewPosition, normal, dHdxy_fwd(), faceDirection );\\n#endif\";var Us=\"#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\";var zs=\"#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\";var Gs=\"#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\";var Fs=\"#ifdef USE_NORMALMAP\\n\\tuniform sampler2D normalMap;\\n\\tuniform vec2 normalScale;\\n#endif\\n#ifdef OBJECTSPACE_NORMALMAP\\n\\tuniform mat3 normalMatrix;\\n#endif\\n#if ! defined ( USE_TANGENT ) && ( defined ( TANGENTSPACE_NORMALMAP ) || defined ( USE_CLEARCOAT_NORMALMAP ) )\\n\\tvec3 perturbNormal2Arb( vec3 eye_pos, vec3 surf_norm, vec3 mapN, float faceDirection ) {\\n\\t\\tvec3 q0 = vec3( dFdx( eye_pos.x ), dFdx( eye_pos.y ), dFdx( eye_pos.z ) );\\n\\t\\tvec3 q1 = vec3( dFdy( eye_pos.x ), dFdy( eye_pos.y ), dFdy( eye_pos.z ) );\\n\\t\\tvec2 st0 = dFdx( vUv.st );\\n\\t\\tvec2 st1 = dFdy( vUv.st );\\n\\t\\tvec3 N = surf_norm;\\n\\t\\tvec3 q1perp = cross( q1, N );\\n\\t\\tvec3 q0perp = cross( N, q0 );\\n\\t\\tvec3 T = q1perp * st0.x + q0perp * st1.x;\\n\\t\\tvec3 B = q1perp * st0.y + q0perp * st1.y;\\n\\t\\tfloat det = max( dot( T, T ), dot( B, B ) );\\n\\t\\tfloat scale = ( det == 0.0 ) ? 0.0 : faceDirection * inversesqrt( det );\\n\\t\\treturn normalize( T * ( mapN.x * scale ) + B * ( mapN.y * scale ) + N * mapN.z );\\n\\t}\\n#endif\";var Os=\"#ifdef USE_CLEARCOAT\\n\\tvec3 clearcoatNormal = geometryNormal;\\n#endif\";var Hs=\"#ifdef USE_CLEARCOAT_NORMALMAP\\n\\tvec3 clearcoatMapN = texture2D( clearcoatNormalMap, vUv ).xyz * 2.0 - 1.0;\\n\\tclearcoatMapN.xy *= clearcoatNormalScale;\\n\\t#ifdef USE_TANGENT\\n\\t\\tclearcoatNormal = normalize( vTBN * clearcoatMapN );\\n\\t#else\\n\\t\\tclearcoatNormal = perturbNormal2Arb( - vViewPosition, clearcoatNormal, clearcoatMapN, faceDirection );\\n\\t#endif\\n#endif\";var ks=\"#ifdef USE_CLEARCOATMAP\\n\\tuniform sampler2D clearcoatMap;\\n#endif\\n#ifdef USE_CLEARCOAT_ROUGHNESSMAP\\n\\tuniform sampler2D clearcoatRoughnessMap;\\n#endif\\n#ifdef USE_CLEARCOAT_NORMALMAP\\n\\tuniform sampler2D clearcoatNormalMap;\\n\\tuniform vec2 clearcoatNormalScale;\\n#endif\";var Ws=\"#ifdef OPAQUE\\ndiffuseColor.a = 1.0;\\n#endif\\n#ifdef USE_TRANSMISSION\\ndiffuseColor.a *= transmissionAlpha + 0.1;\\n#endif\\ngl_FragColor = vec4( outgoingLight, diffuseColor.a );\";var js=\"vec3 packNormalToRGB( const in vec3 normal ) {\\n\\treturn normalize( normal ) * 0.5 + 0.5;\\n}\\nvec3 unpackRGBToNormal( const in vec3 rgb ) {\\n\\treturn 2.0 * rgb.xyz - 1.0;\\n}\\nconst float PackUpscale = 256. / 255.;const float UnpackDownscale = 255. / 256.;\\nconst vec3 PackFactors = vec3( 256. * 256. * 256., 256. * 256., 256. );\\nconst vec4 UnpackFactors = UnpackDownscale / vec4( PackFactors, 1. );\\nconst float ShiftRight8 = 1. / 256.;\\nvec4 packDepthToRGBA( const in float v ) {\\n\\tvec4 r = vec4( fract( v * PackFactors ), v );\\n\\tr.yzw -= r.xyz * ShiftRight8;\\treturn r * PackUpscale;\\n}\\nfloat unpackRGBAToDepth( const in vec4 v ) {\\n\\treturn dot( v, UnpackFactors );\\n}\\nvec4 pack2HalfToRGBA( vec2 v ) {\\n\\tvec4 r = vec4( v.x, fract( v.x * 255.0 ), v.y, fract( v.y * 255.0 ) );\\n\\treturn vec4( r.x - r.y / 255.0, r.y, r.z - r.w / 255.0, r.w );\\n}\\nvec2 unpackRGBATo2Half( vec4 v ) {\\n\\treturn vec2( v.x + ( v.y / 255.0 ), v.z + ( v.w / 255.0 ) );\\n}\\nfloat viewZToOrthographicDepth( const in float viewZ, const in float near, const in float far ) {\\n\\treturn ( viewZ + near ) / ( near - far );\\n}\\nfloat orthographicDepthToViewZ( const in float linearClipZ, const in float near, const in float far ) {\\n\\treturn linearClipZ * ( near - far ) - near;\\n}\\nfloat viewZToPerspectiveDepth( const in float viewZ, const in float near, const in float far ) {\\n\\treturn ( ( near + viewZ ) * far ) / ( ( far - near ) * viewZ );\\n}\\nfloat perspectiveDepthToViewZ( const in float invClipZ, const in float near, const in float far ) {\\n\\treturn ( near * far ) / ( ( far - near ) * invClipZ - far );\\n}\";var qs=\"#ifdef PREMULTIPLIED_ALPHA\\n\\tgl_FragColor.rgb *= gl_FragColor.a;\\n#endif\";var Xs=\"vec4 mvPosition = vec4( transformed, 1.0 );\\n#ifdef USE_INSTANCING\\n\\tmvPosition = instanceMatrix * mvPosition;\\n#endif\\nmvPosition = modelViewMatrix * mvPosition;\\ngl_Position = projectionMatrix * mvPosition;\";var Js=\"#ifdef DITHERING\\n\\tgl_FragColor.rgb = dithering( gl_FragColor.rgb );\\n#endif\";var Ys=\"#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\";var Zs=\"float roughnessFactor = roughness;\\n#ifdef USE_ROUGHNESSMAP\\n\\tvec4 texelRoughness = texture2D( roughnessMap, vUv );\\n\\troughnessFactor *= texelRoughness.g;\\n#endif\";var Qs=\"#ifdef USE_ROUGHNESSMAP\\n\\tuniform sampler2D roughnessMap;\\n#endif\";var Ks=\"#ifdef USE_SHADOWMAP\\n\\t#if NUM_DIR_LIGHT_SHADOWS > 0\\n\\t\\tuniform sampler2D directionalShadowMap[ NUM_DIR_LIGHT_SHADOWS ];\\n\\t\\tvarying vec4 vDirectionalShadowCoord[ NUM_DIR_LIGHT_SHADOWS ];\\n\\t\\tstruct DirectionalLightShadow {\\n\\t\\t\\tfloat shadowBias;\\n\\t\\t\\tfloat shadowNormalBias;\\n\\t\\t\\tfloat shadowRadius;\\n\\t\\t\\tvec2 shadowMapSize;\\n\\t\\t};\\n\\t\\tuniform DirectionalLightShadow directionalLightShadows[ NUM_DIR_LIGHT_SHADOWS ];\\n\\t#endif\\n\\t#if NUM_SPOT_LIGHT_SHADOWS > 0\\n\\t\\tuniform sampler2D spotShadowMap[ NUM_SPOT_LIGHT_SHADOWS ];\\n\\t\\tvarying vec4 vSpotShadowCoord[ NUM_SPOT_LIGHT_SHADOWS ];\\n\\t\\tstruct SpotLightShadow {\\n\\t\\t\\tfloat shadowBias;\\n\\t\\t\\tfloat shadowNormalBias;\\n\\t\\t\\tfloat shadowRadius;\\n\\t\\t\\tvec2 shadowMapSize;\\n\\t\\t};\\n\\t\\tuniform SpotLightShadow spotLightShadows[ NUM_SPOT_LIGHT_SHADOWS ];\\n\\t#endif\\n\\t#if NUM_POINT_LIGHT_SHADOWS > 0\\n\\t\\tuniform sampler2D pointShadowMap[ NUM_POINT_LIGHT_SHADOWS ];\\n\\t\\tvarying vec4 vPointShadowCoord[ NUM_POINT_LIGHT_SHADOWS ];\\n\\t\\tstruct PointLightShadow {\\n\\t\\t\\tfloat shadowBias;\\n\\t\\t\\tfloat shadowNormalBias;\\n\\t\\t\\tfloat shadowRadius;\\n\\t\\t\\tvec2 shadowMapSize;\\n\\t\\t\\tfloat shadowCameraNear;\\n\\t\\t\\tfloat shadowCameraFar;\\n\\t\\t};\\n\\t\\tuniform PointLightShadow pointLightShadows[ NUM_POINT_LIGHT_SHADOWS ];\\n\\t#endif\\n\\tfloat texture2DCompare( sampler2D depths, vec2 uv, float compare ) {\\n\\t\\treturn step( compare, unpackRGBAToDepth( texture2D( depths, uv ) ) );\\n\\t}\\n\\tvec2 texture2DDistribution( sampler2D shadow, vec2 uv ) {\\n\\t\\treturn unpackRGBATo2Half( texture2D( shadow, uv ) );\\n\\t}\\n\\tfloat VSMShadow (sampler2D shadow, vec2 uv, float compare ){\\n\\t\\tfloat occlusion = 1.0;\\n\\t\\tvec2 distribution = texture2DDistribution( shadow, uv );\\n\\t\\tfloat hard_shadow = step( compare , distribution.x );\\n\\t\\tif (hard_shadow != 1.0 ) {\\n\\t\\t\\tfloat distance = compare - distribution.x ;\\n\\t\\t\\tfloat variance = max( 0.00000, distribution.y * distribution.y );\\n\\t\\t\\tfloat softness_probability = variance / (variance + distance * distance );\\t\\t\\tsoftness_probability = clamp( ( softness_probability - 0.3 ) / ( 0.95 - 0.3 ), 0.0, 1.0 );\\t\\t\\tocclusion = clamp( max( hard_shadow, softness_probability ), 0.0, 1.0 );\\n\\t\\t}\\n\\t\\treturn occlusion;\\n\\t}\\n\\tfloat getShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowBias, float shadowRadius, vec4 shadowCoord ) {\\n\\t\\tfloat shadow = 1.0;\\n\\t\\tshadowCoord.xyz /= shadowCoord.w;\\n\\t\\tshadowCoord.z += shadowBias;\\n\\t\\tbvec4 inFrustumVec = bvec4 ( shadowCoord.x >= 0.0, shadowCoord.x <= 1.0, shadowCoord.y >= 0.0, shadowCoord.y <= 1.0 );\\n\\t\\tbool inFrustum = all( inFrustumVec );\\n\\t\\tbvec2 frustumTestVec = bvec2( inFrustum, shadowCoord.z <= 1.0 );\\n\\t\\tbool frustumTest = all( frustumTestVec );\\n\\t\\tif ( frustumTest ) {\\n\\t\\t#if defined( SHADOWMAP_TYPE_PCF )\\n\\t\\t\\tvec2 texelSize = vec2( 1.0 ) / shadowMapSize;\\n\\t\\t\\tfloat dx0 = - texelSize.x * shadowRadius;\\n\\t\\t\\tfloat dy0 = - texelSize.y * shadowRadius;\\n\\t\\t\\tfloat dx1 = + texelSize.x * shadowRadius;\\n\\t\\t\\tfloat dy1 = + texelSize.y * shadowRadius;\\n\\t\\t\\tfloat dx2 = dx0 / 2.0;\\n\\t\\t\\tfloat dy2 = dy0 / 2.0;\\n\\t\\t\\tfloat dx3 = dx1 / 2.0;\\n\\t\\t\\tfloat dy3 = dy1 / 2.0;\\n\\t\\t\\tshadow = (\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, dy0 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy0 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, dy0 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, dy2 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy2 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, dy2 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, 0.0 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, 0.0 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy, shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, 0.0 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, 0.0 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, dy3 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy3 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, dy3 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, dy1 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy1 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, dy1 ), shadowCoord.z )\\n\\t\\t\\t) * ( 1.0 / 17.0 );\\n\\t\\t#elif defined( SHADOWMAP_TYPE_PCF_SOFT )\\n\\t\\t\\tvec2 texelSize = vec2( 1.0 ) / shadowMapSize;\\n\\t\\t\\tfloat dx = texelSize.x;\\n\\t\\t\\tfloat dy = texelSize.y;\\n\\t\\t\\tvec2 uv = shadowCoord.xy;\\n\\t\\t\\tvec2 f = fract( uv * shadowMapSize + 0.5 );\\n\\t\\t\\tuv -= f * texelSize;\\n\\t\\t\\tshadow = (\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, uv, shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, uv + vec2( dx, 0.0 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, uv + vec2( 0.0, dy ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, uv + texelSize, shadowCoord.z ) +\\n\\t\\t\\t\\tmix( texture2DCompare( shadowMap, uv + vec2( -dx, 0.0 ), shadowCoord.z ), \\n\\t\\t\\t\\t\\t texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, 0.0 ), shadowCoord.z ),\\n\\t\\t\\t\\t\\t f.x ) +\\n\\t\\t\\t\\tmix( texture2DCompare( shadowMap, uv + vec2( -dx, dy ), shadowCoord.z ), \\n\\t\\t\\t\\t\\t texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, dy ), shadowCoord.z ),\\n\\t\\t\\t\\t\\t f.x ) +\\n\\t\\t\\t\\tmix( texture2DCompare( shadowMap, uv + vec2( 0.0, -dy ), shadowCoord.z ), \\n\\t\\t\\t\\t\\t texture2DCompare( shadowMap, uv + vec2( 0.0, 2.0 * dy ), shadowCoord.z ),\\n\\t\\t\\t\\t\\t f.y ) +\\n\\t\\t\\t\\tmix( texture2DCompare( shadowMap, uv + vec2( dx, -dy ), shadowCoord.z ), \\n\\t\\t\\t\\t\\t texture2DCompare( shadowMap, uv + vec2( dx, 2.0 * dy ), shadowCoord.z ),\\n\\t\\t\\t\\t\\t f.y ) +\\n\\t\\t\\t\\tmix( mix( texture2DCompare( shadowMap, uv + vec2( -dx, -dy ), shadowCoord.z ), \\n\\t\\t\\t\\t\\t\\t  texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, -dy ), shadowCoord.z ),\\n\\t\\t\\t\\t\\t\\t  f.x ),\\n\\t\\t\\t\\t\\t mix( texture2DCompare( shadowMap, uv + vec2( -dx, 2.0 * dy ), shadowCoord.z ), \\n\\t\\t\\t\\t\\t\\t  texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, 2.0 * dy ), shadowCoord.z ),\\n\\t\\t\\t\\t\\t\\t  f.x ),\\n\\t\\t\\t\\t\\t f.y )\\n\\t\\t\\t) * ( 1.0 / 9.0 );\\n\\t\\t#elif defined( SHADOWMAP_TYPE_VSM )\\n\\t\\t\\tshadow = VSMShadow( shadowMap, shadowCoord.xy, shadowCoord.z );\\n\\t\\t#else\\n\\t\\t\\tshadow = texture2DCompare( shadowMap, shadowCoord.xy, shadowCoord.z );\\n\\t\\t#endif\\n\\t\\t}\\n\\t\\treturn shadow;\\n\\t}\\n\\tvec2 cubeToUV( vec3 v, float texelSizeY ) {\\n\\t\\tvec3 absV = abs( v );\\n\\t\\tfloat scaleToCube = 1.0 / max( absV.x, max( absV.y, absV.z ) );\\n\\t\\tabsV *= scaleToCube;\\n\\t\\tv *= scaleToCube * ( 1.0 - 2.0 * texelSizeY );\\n\\t\\tvec2 planar = v.xy;\\n\\t\\tfloat almostATexel = 1.5 * texelSizeY;\\n\\t\\tfloat almostOne = 1.0 - almostATexel;\\n\\t\\tif ( absV.z >= almostOne ) {\\n\\t\\t\\tif ( v.z > 0.0 )\\n\\t\\t\\t\\tplanar.x = 4.0 - v.x;\\n\\t\\t} else if ( absV.x >= almostOne ) {\\n\\t\\t\\tfloat signX = sign( v.x );\\n\\t\\t\\tplanar.x = v.z * signX + 2.0 * signX;\\n\\t\\t} else if ( absV.y >= almostOne ) {\\n\\t\\t\\tfloat signY = sign( v.y );\\n\\t\\t\\tplanar.x = v.x + 2.0 * signY + 2.0;\\n\\t\\t\\tplanar.y = v.z * signY - 2.0;\\n\\t\\t}\\n\\t\\treturn vec2( 0.125, 0.25 ) * planar + vec2( 0.375, 0.75 );\\n\\t}\\n\\tfloat getPointShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowBias, float shadowRadius, vec4 shadowCoord, float shadowCameraNear, float shadowCameraFar ) {\\n\\t\\tvec2 texelSize = vec2( 1.0 ) / ( shadowMapSize * vec2( 4.0, 2.0 ) );\\n\\t\\tvec3 lightToPosition = shadowCoord.xyz;\\n\\t\\tfloat dp = ( length( lightToPosition ) - shadowCameraNear ) / ( shadowCameraFar - shadowCameraNear );\\t\\tdp += shadowBias;\\n\\t\\tvec3 bd3D = normalize( lightToPosition );\\n\\t\\t#if defined( SHADOWMAP_TYPE_PCF ) || defined( SHADOWMAP_TYPE_PCF_SOFT ) || defined( SHADOWMAP_TYPE_VSM )\\n\\t\\t\\tvec2 offset = vec2( - 1, 1 ) * shadowRadius * texelSize.y;\\n\\t\\t\\treturn (\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xyy, texelSize.y ), dp ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yyy, texelSize.y ), dp ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xyx, texelSize.y ), dp ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yyx, texelSize.y ), dp ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, cubeToUV( bd3D, texelSize.y ), dp ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xxy, texelSize.y ), dp ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yxy, texelSize.y ), dp ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xxx, texelSize.y ), dp ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yxx, texelSize.y ), dp )\\n\\t\\t\\t) * ( 1.0 / 9.0 );\\n\\t\\t#else\\n\\t\\t\\treturn texture2DCompare( shadowMap, cubeToUV( bd3D, texelSize.y ), dp );\\n\\t\\t#endif\\n\\t}\\n#endif\";var $s=\"#ifdef USE_SHADOWMAP\\n\\t#if NUM_DIR_LIGHT_SHADOWS > 0\\n\\t\\tuniform mat4 directionalShadowMatrix[ NUM_DIR_LIGHT_SHADOWS ];\\n\\t\\tvarying vec4 vDirectionalShadowCoord[ NUM_DIR_LIGHT_SHADOWS ];\\n\\t\\tstruct DirectionalLightShadow {\\n\\t\\t\\tfloat shadowBias;\\n\\t\\t\\tfloat shadowNormalBias;\\n\\t\\t\\tfloat shadowRadius;\\n\\t\\t\\tvec2 shadowMapSize;\\n\\t\\t};\\n\\t\\tuniform DirectionalLightShadow directionalLightShadows[ NUM_DIR_LIGHT_SHADOWS ];\\n\\t#endif\\n\\t#if NUM_SPOT_LIGHT_SHADOWS > 0\\n\\t\\tuniform mat4 spotShadowMatrix[ NUM_SPOT_LIGHT_SHADOWS ];\\n\\t\\tvarying vec4 vSpotShadowCoord[ NUM_SPOT_LIGHT_SHADOWS ];\\n\\t\\tstruct SpotLightShadow {\\n\\t\\t\\tfloat shadowBias;\\n\\t\\t\\tfloat shadowNormalBias;\\n\\t\\t\\tfloat shadowRadius;\\n\\t\\t\\tvec2 shadowMapSize;\\n\\t\\t};\\n\\t\\tuniform SpotLightShadow spotLightShadows[ NUM_SPOT_LIGHT_SHADOWS ];\\n\\t#endif\\n\\t#if NUM_POINT_LIGHT_SHADOWS > 0\\n\\t\\tuniform mat4 pointShadowMatrix[ NUM_POINT_LIGHT_SHADOWS ];\\n\\t\\tvarying vec4 vPointShadowCoord[ NUM_POINT_LIGHT_SHADOWS ];\\n\\t\\tstruct PointLightShadow {\\n\\t\\t\\tfloat shadowBias;\\n\\t\\t\\tfloat shadowNormalBias;\\n\\t\\t\\tfloat shadowRadius;\\n\\t\\t\\tvec2 shadowMapSize;\\n\\t\\t\\tfloat shadowCameraNear;\\n\\t\\t\\tfloat shadowCameraFar;\\n\\t\\t};\\n\\t\\tuniform PointLightShadow pointLightShadows[ NUM_POINT_LIGHT_SHADOWS ];\\n\\t#endif\\n#endif\";var ea=\"#ifdef USE_SHADOWMAP\\n\\t#if NUM_DIR_LIGHT_SHADOWS > 0 || NUM_SPOT_LIGHT_SHADOWS > 0 || NUM_POINT_LIGHT_SHADOWS > 0\\n\\t\\tvec3 shadowWorldNormal = inverseTransformDirection( transformedNormal, viewMatrix );\\n\\t\\tvec4 shadowWorldPosition;\\n\\t#endif\\n\\t#if NUM_DIR_LIGHT_SHADOWS > 0\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < NUM_DIR_LIGHT_SHADOWS; i ++ ) {\\n\\t\\tshadowWorldPosition = worldPosition + vec4( shadowWorldNormal * directionalLightShadows[ i ].shadowNormalBias, 0 );\\n\\t\\tvDirectionalShadowCoord[ i ] = directionalShadowMatrix[ i ] * shadowWorldPosition;\\n\\t}\\n\\t#pragma unroll_loop_end\\n\\t#endif\\n\\t#if NUM_SPOT_LIGHT_SHADOWS > 0\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < NUM_SPOT_LIGHT_SHADOWS; i ++ ) {\\n\\t\\tshadowWorldPosition = worldPosition + vec4( shadowWorldNormal * spotLightShadows[ i ].shadowNormalBias, 0 );\\n\\t\\tvSpotShadowCoord[ i ] = spotShadowMatrix[ i ] * shadowWorldPosition;\\n\\t}\\n\\t#pragma unroll_loop_end\\n\\t#endif\\n\\t#if NUM_POINT_LIGHT_SHADOWS > 0\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < NUM_POINT_LIGHT_SHADOWS; i ++ ) {\\n\\t\\tshadowWorldPosition = worldPosition + vec4( shadowWorldNormal * pointLightShadows[ i ].shadowNormalBias, 0 );\\n\\t\\tvPointShadowCoord[ i ] = pointShadowMatrix[ i ] * shadowWorldPosition;\\n\\t}\\n\\t#pragma unroll_loop_end\\n\\t#endif\\n#endif\";var ta=\"float getShadowMask() {\\n\\tfloat shadow = 1.0;\\n\\t#ifdef USE_SHADOWMAP\\n\\t#if NUM_DIR_LIGHT_SHADOWS > 0\\n\\tDirectionalLightShadow directionalLight;\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < NUM_DIR_LIGHT_SHADOWS; i ++ ) {\\n\\t\\tdirectionalLight = directionalLightShadows[ i ];\\n\\t\\tshadow *= receiveShadow ? getShadow( directionalShadowMap[ i ], directionalLight.shadowMapSize, directionalLight.shadowBias, directionalLight.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0;\\n\\t}\\n\\t#pragma unroll_loop_end\\n\\t#endif\\n\\t#if NUM_SPOT_LIGHT_SHADOWS > 0\\n\\tSpotLightShadow spotLight;\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < NUM_SPOT_LIGHT_SHADOWS; i ++ ) {\\n\\t\\tspotLight = spotLightShadows[ i ];\\n\\t\\tshadow *= receiveShadow ? getShadow( spotShadowMap[ i ], spotLight.shadowMapSize, spotLight.shadowBias, spotLight.shadowRadius, vSpotShadowCoord[ i ] ) : 1.0;\\n\\t}\\n\\t#pragma unroll_loop_end\\n\\t#endif\\n\\t#if NUM_POINT_LIGHT_SHADOWS > 0\\n\\tPointLightShadow pointLight;\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < NUM_POINT_LIGHT_SHADOWS; i ++ ) {\\n\\t\\tpointLight = pointLightShadows[ i ];\\n\\t\\tshadow *= receiveShadow ? getPointShadow( pointShadowMap[ i ], pointLight.shadowMapSize, pointLight.shadowBias, pointLight.shadowRadius, vPointShadowCoord[ i ], pointLight.shadowCameraNear, pointLight.shadowCameraFar ) : 1.0;\\n\\t}\\n\\t#pragma unroll_loop_end\\n\\t#endif\\n\\t#endif\\n\\treturn shadow;\\n}\";var na=\"#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\";var ra=\"#ifdef USE_SKINNING\\n\\tuniform mat4 bindMatrix;\\n\\tuniform mat4 bindMatrixInverse;\\n\\t#ifdef BONE_TEXTURE\\n\\t\\tuniform highp sampler2D boneTexture;\\n\\t\\tuniform int boneTextureSize;\\n\\t\\tmat4 getBoneMatrix( const in float i ) {\\n\\t\\t\\tfloat j = i * 4.0;\\n\\t\\t\\tfloat x = mod( j, float( boneTextureSize ) );\\n\\t\\t\\tfloat y = floor( j / float( boneTextureSize ) );\\n\\t\\t\\tfloat dx = 1.0 / float( boneTextureSize );\\n\\t\\t\\tfloat dy = 1.0 / float( boneTextureSize );\\n\\t\\t\\ty = dy * ( y + 0.5 );\\n\\t\\t\\tvec4 v1 = texture2D( boneTexture, vec2( dx * ( x + 0.5 ), y ) );\\n\\t\\t\\tvec4 v2 = texture2D( boneTexture, vec2( dx * ( x + 1.5 ), y ) );\\n\\t\\t\\tvec4 v3 = texture2D( boneTexture, vec2( dx * ( x + 2.5 ), y ) );\\n\\t\\t\\tvec4 v4 = texture2D( boneTexture, vec2( dx * ( x + 3.5 ), y ) );\\n\\t\\t\\tmat4 bone = mat4( v1, v2, v3, v4 );\\n\\t\\t\\treturn bone;\\n\\t\\t}\\n\\t#else\\n\\t\\tuniform mat4 boneMatrices[ MAX_BONES ];\\n\\t\\tmat4 getBoneMatrix( const in float i ) {\\n\\t\\t\\tmat4 bone = boneMatrices[ int(i) ];\\n\\t\\t\\treturn bone;\\n\\t\\t}\\n\\t#endif\\n#endif\";var ia=\"#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\";var sa=\"#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\";var aa=\"float specularStrength;\\n#ifdef USE_SPECULARMAP\\n\\tvec4 texelSpecular = texture2D( specularMap, vUv );\\n\\tspecularStrength = texelSpecular.r;\\n#else\\n\\tspecularStrength = 1.0;\\n#endif\";var oa=\"#ifdef USE_SPECULARMAP\\n\\tuniform sampler2D specularMap;\\n#endif\";var la=\"#if defined( TONE_MAPPING )\\n\\tgl_FragColor.rgb = toneMapping( gl_FragColor.rgb );\\n#endif\";var ca=\"#ifndef saturate\\n#define saturate( a ) clamp( a, 0.0, 1.0 )\\n#endif\\nuniform float toneMappingExposure;\\nvec3 LinearToneMapping( vec3 color ) {\\n\\treturn toneMappingExposure * color;\\n}\\nvec3 ReinhardToneMapping( vec3 color ) {\\n\\tcolor *= toneMappingExposure;\\n\\treturn saturate( color / ( vec3( 1.0 ) + color ) );\\n}\\nvec3 OptimizedCineonToneMapping( vec3 color ) {\\n\\tcolor *= toneMappingExposure;\\n\\tcolor = max( vec3( 0.0 ), color - 0.004 );\\n\\treturn pow( ( color * ( 6.2 * color + 0.5 ) ) / ( color * ( 6.2 * color + 1.7 ) + 0.06 ), vec3( 2.2 ) );\\n}\\nvec3 RRTAndODTFit( vec3 v ) {\\n\\tvec3 a = v * ( v + 0.0245786 ) - 0.000090537;\\n\\tvec3 b = v * ( 0.983729 * v + 0.4329510 ) + 0.238081;\\n\\treturn a / b;\\n}\\nvec3 ACESFilmicToneMapping( vec3 color ) {\\n\\tconst mat3 ACESInputMat = mat3(\\n\\t\\tvec3( 0.59719, 0.07600, 0.02840 ),\\t\\tvec3( 0.35458, 0.90834, 0.13383 ),\\n\\t\\tvec3( 0.04823, 0.01566, 0.83777 )\\n\\t);\\n\\tconst mat3 ACESOutputMat = mat3(\\n\\t\\tvec3(  1.60475, -0.10208, -0.00327 ),\\t\\tvec3( -0.53108,  1.10813, -0.07276 ),\\n\\t\\tvec3( -0.07367, -0.00605,  1.07602 )\\n\\t);\\n\\tcolor *= toneMappingExposure / 0.6;\\n\\tcolor = ACESInputMat * color;\\n\\tcolor = RRTAndODTFit( color );\\n\\tcolor = ACESOutputMat * color;\\n\\treturn saturate( color );\\n}\\nvec3 CustomToneMapping( vec3 color ) { return color; }\";var ua=\"#ifdef USE_TRANSMISSION\\n\\tfloat transmissionAlpha = 1.0;\\n\\tfloat transmissionFactor = transmission;\\n\\tfloat thicknessFactor = thickness;\\n\\t#ifdef USE_TRANSMISSIONMAP\\n\\t\\ttransmissionFactor *= texture2D( transmissionMap, vUv ).r;\\n\\t#endif\\n\\t#ifdef USE_THICKNESSMAP\\n\\t\\tthicknessFactor *= texture2D( thicknessMap, vUv ).g;\\n\\t#endif\\n\\tvec3 pos = vWorldPosition;\\n\\tvec3 v = normalize( cameraPosition - pos );\\n\\tvec3 n = inverseTransformDirection( normal, viewMatrix );\\n\\tvec4 transmission = getIBLVolumeRefraction(\\n\\t\\tn, v, roughnessFactor, material.diffuseColor, material.specularColor, material.specularF90,\\n\\t\\tpos, modelMatrix, viewMatrix, projectionMatrix, ior, thicknessFactor,\\n\\t\\tattenuationColor, attenuationDistance );\\n\\ttotalDiffuse = mix( totalDiffuse, transmission.rgb, transmissionFactor );\\n\\ttransmissionAlpha = mix( transmissionAlpha, transmission.a, transmissionFactor );\\n#endif\";var ha=\"#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\\tvec3 getVolumeTransmissionRay( vec3 n, vec3 v, float thickness, float ior, mat4 modelMatrix ) {\\n\\t\\tvec3 refractionVector = refract( - v, normalize( n ), 1.0 / ior );\\n\\t\\tvec3 modelScale;\\n\\t\\tmodelScale.x = length( vec3( modelMatrix[ 0 ].xyz ) );\\n\\t\\tmodelScale.y = length( vec3( modelMatrix[ 1 ].xyz ) );\\n\\t\\tmodelScale.z = length( vec3( modelMatrix[ 2 ].xyz ) );\\n\\t\\treturn normalize( refractionVector ) * thickness * modelScale;\\n\\t}\\n\\tfloat applyIorToRoughness( float roughness, float ior ) {\\n\\t\\treturn roughness * clamp( ior * 2.0 - 2.0, 0.0, 1.0 );\\n\\t}\\n\\tvec4 getTransmissionSample( vec2 fragCoord, float roughness, float ior ) {\\n\\t\\tfloat framebufferLod = log2( transmissionSamplerSize.x ) * applyIorToRoughness( roughness, ior );\\n\\t\\t#ifdef TEXTURE_LOD_EXT\\n\\t\\t\\treturn texture2DLodEXT( transmissionSamplerMap, fragCoord.xy, framebufferLod );\\n\\t\\t#else\\n\\t\\t\\treturn texture2D( transmissionSamplerMap, fragCoord.xy, framebufferLod );\\n\\t\\t#endif\\n\\t}\\n\\tvec3 applyVolumeAttenuation( vec3 radiance, float transmissionDistance, vec3 attenuationColor, float attenuationDistance ) {\\n\\t\\tif ( attenuationDistance == 0.0 ) {\\n\\t\\t\\treturn radiance;\\n\\t\\t} else {\\n\\t\\t\\tvec3 attenuationCoefficient = -log( attenuationColor ) / attenuationDistance;\\n\\t\\t\\tvec3 transmittance = exp( - attenuationCoefficient * transmissionDistance );\\t\\t\\treturn transmittance * radiance;\\n\\t\\t}\\n\\t}\\n\\tvec4 getIBLVolumeRefraction( vec3 n, vec3 v, float roughness, vec3 diffuseColor, vec3 specularColor, float specularF90,\\n\\t\\tvec3 position, mat4 modelMatrix, mat4 viewMatrix, mat4 projMatrix, float ior, float thickness,\\n\\t\\tvec3 attenuationColor, float attenuationDistance ) {\\n\\t\\tvec3 transmissionRay = getVolumeTransmissionRay( n, v, thickness, ior, modelMatrix );\\n\\t\\tvec3 refractedRayExit = position + transmissionRay;\\n\\t\\tvec4 ndcPos = projMatrix * viewMatrix * vec4( refractedRayExit, 1.0 );\\n\\t\\tvec2 refractionCoords = ndcPos.xy / ndcPos.w;\\n\\t\\trefractionCoords += 1.0;\\n\\t\\trefractionCoords /= 2.0;\\n\\t\\tvec4 transmittedLight = getTransmissionSample( refractionCoords, roughness, ior );\\n\\t\\tvec3 attenuatedColor = applyVolumeAttenuation( transmittedLight.rgb, length( transmissionRay ), attenuationColor, attenuationDistance );\\n\\t\\tvec3 F = EnvironmentBRDF( n, v, specularColor, specularF90, roughness );\\n\\t\\treturn vec4( ( 1.0 - F ) * attenuatedColor * diffuseColor, transmittedLight.a );\\n\\t}\\n#endif\";var da=\"#if ( defined( USE_UV ) && ! defined( UVS_VERTEX_ONLY ) )\\n\\tvarying vec2 vUv;\\n#endif\";var pa=\"#ifdef USE_UV\\n\\t#ifdef UVS_VERTEX_ONLY\\n\\t\\tvec2 vUv;\\n\\t#else\\n\\t\\tvarying vec2 vUv;\\n\\t#endif\\n\\tuniform mat3 uvTransform;\\n#endif\";var fa=\"#ifdef USE_UV\\n\\tvUv = ( uvTransform * vec3( uv, 1 ) ).xy;\\n#endif\";var ma=\"#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP )\\n\\tvarying vec2 vUv2;\\n#endif\";var ga=\"#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP )\\n\\tattribute vec2 uv2;\\n\\tvarying vec2 vUv2;\\n\\tuniform mat3 uv2Transform;\\n#endif\";var ya=\"#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP )\\n\\tvUv2 = ( uv2Transform * vec3( uv2, 1 ) ).xy;\\n#endif\";var va=\"#if defined( USE_ENVMAP ) || defined( DISTANCE ) || defined ( USE_SHADOWMAP ) || defined ( USE_TRANSMISSION )\\n\\tvec4 worldPosition = vec4( transformed, 1.0 );\\n\\t#ifdef USE_INSTANCING\\n\\t\\tworldPosition = instanceMatrix * worldPosition;\\n\\t#endif\\n\\tworldPosition = modelMatrix * worldPosition;\\n#endif\";const xa=\"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}\";const ba=\"uniform sampler2D t2D;\\nvarying vec2 vUv;\\nvoid main() {\\n\\tvec4 texColor = texture2D( t2D, vUv );\\n\\tgl_FragColor = mapTexelToLinear( texColor );\\n\\t#include <tonemapping_fragment>\\n\\t#include <encodings_fragment>\\n}\";const _a=\"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}\";const Ma=\"#include <envmap_common_pars_fragment>\\nuniform float opacity;\\nvarying vec3 vWorldDirection;\\n#include <cube_uv_reflection_fragment>\\nvoid main() {\\n\\tvec3 vReflect = vWorldDirection;\\n\\t#include <envmap_fragment>\\n\\tgl_FragColor = envColor;\\n\\tgl_FragColor.a *= opacity;\\n\\t#include <tonemapping_fragment>\\n\\t#include <encodings_fragment>\\n}\";const wa=\"#include <common>\\n#include <uv_pars_vertex>\\n#include <displacementmap_pars_vertex>\\n#include <morphtarget_pars_vertex>\\n#include <skinning_pars_vertex>\\n#include <logdepthbuf_pars_vertex>\\n#include <clipping_planes_pars_vertex>\\nvarying vec2 vHighPrecisionZW;\\nvoid main() {\\n\\t#include <uv_vertex>\\n\\t#include <skinbase_vertex>\\n\\t#ifdef USE_DISPLACEMENTMAP\\n\\t\\t#include <beginnormal_vertex>\\n\\t\\t#include <morphnormal_vertex>\\n\\t\\t#include <skinnormal_vertex>\\n\\t#endif\\n\\t#include <begin_vertex>\\n\\t#include <morphtarget_vertex>\\n\\t#include <skinning_vertex>\\n\\t#include <displacementmap_vertex>\\n\\t#include <project_vertex>\\n\\t#include <logdepthbuf_vertex>\\n\\t#include <clipping_planes_vertex>\\n\\tvHighPrecisionZW = gl_Position.zw;\\n}\";const Sa=\"#if DEPTH_PACKING == 3200\\n\\tuniform float opacity;\\n#endif\\n#include <common>\\n#include <packing>\\n#include <uv_pars_fragment>\\n#include <map_pars_fragment>\\n#include <alphamap_pars_fragment>\\n#include <alphatest_pars_fragment>\\n#include <logdepthbuf_pars_fragment>\\n#include <clipping_planes_pars_fragment>\\nvarying vec2 vHighPrecisionZW;\\nvoid main() {\\n\\t#include <clipping_planes_fragment>\\n\\tvec4 diffuseColor = vec4( 1.0 );\\n\\t#if DEPTH_PACKING == 3200\\n\\t\\tdiffuseColor.a = opacity;\\n\\t#endif\\n\\t#include <map_fragment>\\n\\t#include <alphamap_fragment>\\n\\t#include <alphatest_fragment>\\n\\t#include <logdepthbuf_fragment>\\n\\tfloat fragCoordZ = 0.5 * vHighPrecisionZW[0] / vHighPrecisionZW[1] + 0.5;\\n\\t#if DEPTH_PACKING == 3200\\n\\t\\tgl_FragColor = vec4( vec3( 1.0 - fragCoordZ ), opacity );\\n\\t#elif DEPTH_PACKING == 3201\\n\\t\\tgl_FragColor = packDepthToRGBA( fragCoordZ );\\n\\t#endif\\n}\";const Ta=\"#define DISTANCE\\nvarying vec3 vWorldPosition;\\n#include <common>\\n#include <uv_pars_vertex>\\n#include <displacementmap_pars_vertex>\\n#include <morphtarget_pars_vertex>\\n#include <skinning_pars_vertex>\\n#include <clipping_planes_pars_vertex>\\nvoid main() {\\n\\t#include <uv_vertex>\\n\\t#include <skinbase_vertex>\\n\\t#ifdef USE_DISPLACEMENTMAP\\n\\t\\t#include <beginnormal_vertex>\\n\\t\\t#include <morphnormal_vertex>\\n\\t\\t#include <skinnormal_vertex>\\n\\t#endif\\n\\t#include <begin_vertex>\\n\\t#include <morphtarget_vertex>\\n\\t#include <skinning_vertex>\\n\\t#include <displacementmap_vertex>\\n\\t#include <project_vertex>\\n\\t#include <worldpos_vertex>\\n\\t#include <clipping_planes_vertex>\\n\\tvWorldPosition = worldPosition.xyz;\\n}\";const Ea=\"#define DISTANCE\\nuniform vec3 referencePosition;\\nuniform float nearDistance;\\nuniform float farDistance;\\nvarying vec3 vWorldPosition;\\n#include <common>\\n#include <packing>\\n#include <uv_pars_fragment>\\n#include <map_pars_fragment>\\n#include <alphamap_pars_fragment>\\n#include <alphatest_pars_fragment>\\n#include <clipping_planes_pars_fragment>\\nvoid main () {\\n\\t#include <clipping_planes_fragment>\\n\\tvec4 diffuseColor = vec4( 1.0 );\\n\\t#include <map_fragment>\\n\\t#include <alphamap_fragment>\\n\\t#include <alphatest_fragment>\\n\\tfloat dist = length( vWorldPosition - referencePosition );\\n\\tdist = ( dist - nearDistance ) / ( farDistance - nearDistance );\\n\\tdist = saturate( dist );\\n\\tgl_FragColor = packDepthToRGBA( dist );\\n}\";const Aa=\"varying vec3 vWorldDirection;\\n#include <common>\\nvoid main() {\\n\\tvWorldDirection = transformDirection( position, modelMatrix );\\n\\t#include <begin_vertex>\\n\\t#include <project_vertex>\\n}\";const La=\"uniform sampler2D tEquirect;\\nvarying vec3 vWorldDirection;\\n#include <common>\\nvoid main() {\\n\\tvec3 direction = normalize( vWorldDirection );\\n\\tvec2 sampleUV = equirectUv( direction );\\n\\tvec4 texColor = texture2D( tEquirect, sampleUV );\\n\\tgl_FragColor = mapTexelToLinear( texColor );\\n\\t#include <tonemapping_fragment>\\n\\t#include <encodings_fragment>\\n}\";const Ca=\"uniform float scale;\\nattribute float lineDistance;\\nvarying float vLineDistance;\\n#include <common>\\n#include <color_pars_vertex>\\n#include <fog_pars_vertex>\\n#include <morphtarget_pars_vertex>\\n#include <logdepthbuf_pars_vertex>\\n#include <clipping_planes_pars_vertex>\\nvoid main() {\\n\\tvLineDistance = scale * lineDistance;\\n\\t#include <color_vertex>\\n\\t#include <begin_vertex>\\n\\t#include <morphtarget_vertex>\\n\\t#include <project_vertex>\\n\\t#include <logdepthbuf_vertex>\\n\\t#include <clipping_planes_vertex>\\n\\t#include <fog_vertex>\\n}\";const Ra=\"uniform vec3 diffuse;\\nuniform float opacity;\\nuniform float dashSize;\\nuniform float totalSize;\\nvarying float vLineDistance;\\n#include <common>\\n#include <color_pars_fragment>\\n#include <fog_pars_fragment>\\n#include <logdepthbuf_pars_fragment>\\n#include <clipping_planes_pars_fragment>\\nvoid main() {\\n\\t#include <clipping_planes_fragment>\\n\\tif ( mod( vLineDistance, totalSize ) > dashSize ) {\\n\\t\\tdiscard;\\n\\t}\\n\\tvec3 outgoingLight = vec3( 0.0 );\\n\\tvec4 diffuseColor = vec4( diffuse, opacity );\\n\\t#include <logdepthbuf_fragment>\\n\\t#include <color_fragment>\\n\\toutgoingLight = diffuseColor.rgb;\\n\\t#include <output_fragment>\\n\\t#include <tonemapping_fragment>\\n\\t#include <encodings_fragment>\\n\\t#include <fog_fragment>\\n\\t#include <premultiplied_alpha_fragment>\\n}\";const Pa=\"#include <common>\\n#include <uv_pars_vertex>\\n#include <uv2_pars_vertex>\\n#include <envmap_pars_vertex>\\n#include <color_pars_vertex>\\n#include <fog_pars_vertex>\\n#include <morphtarget_pars_vertex>\\n#include <skinning_pars_vertex>\\n#include <logdepthbuf_pars_vertex>\\n#include <clipping_planes_pars_vertex>\\nvoid main() {\\n\\t#include <uv_vertex>\\n\\t#include <uv2_vertex>\\n\\t#include <color_vertex>\\n\\t#if defined ( USE_ENVMAP ) || defined ( USE_SKINNING )\\n\\t\\t#include <beginnormal_vertex>\\n\\t\\t#include <morphnormal_vertex>\\n\\t\\t#include <skinbase_vertex>\\n\\t\\t#include <skinnormal_vertex>\\n\\t\\t#include <defaultnormal_vertex>\\n\\t#endif\\n\\t#include <begin_vertex>\\n\\t#include <morphtarget_vertex>\\n\\t#include <skinning_vertex>\\n\\t#include <project_vertex>\\n\\t#include <logdepthbuf_vertex>\\n\\t#include <clipping_planes_vertex>\\n\\t#include <worldpos_vertex>\\n\\t#include <envmap_vertex>\\n\\t#include <fog_vertex>\\n}\";const Ia=\"uniform vec3 diffuse;\\nuniform float opacity;\\n#ifndef FLAT_SHADED\\n\\tvarying vec3 vNormal;\\n#endif\\n#include <common>\\n#include <dithering_pars_fragment>\\n#include <color_pars_fragment>\\n#include <uv_pars_fragment>\\n#include <uv2_pars_fragment>\\n#include <map_pars_fragment>\\n#include <alphamap_pars_fragment>\\n#include <alphatest_pars_fragment>\\n#include <aomap_pars_fragment>\\n#include <lightmap_pars_fragment>\\n#include <envmap_common_pars_fragment>\\n#include <envmap_pars_fragment>\\n#include <cube_uv_reflection_fragment>\\n#include <fog_pars_fragment>\\n#include <specularmap_pars_fragment>\\n#include <logdepthbuf_pars_fragment>\\n#include <clipping_planes_pars_fragment>\\nvoid main() {\\n\\t#include <clipping_planes_fragment>\\n\\tvec4 diffuseColor = vec4( diffuse, opacity );\\n\\t#include <logdepthbuf_fragment>\\n\\t#include <map_fragment>\\n\\t#include <color_fragment>\\n\\t#include <alphamap_fragment>\\n\\t#include <alphatest_fragment>\\n\\t#include <specularmap_fragment>\\n\\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\\n\\t#ifdef USE_LIGHTMAP\\n\\t\\tvec4 lightMapTexel= texture2D( lightMap, vUv2 );\\n\\t\\treflectedLight.indirectDiffuse += lightMapTexelToLinear( lightMapTexel ).rgb * lightMapIntensity;\\n\\t#else\\n\\t\\treflectedLight.indirectDiffuse += vec3( 1.0 );\\n\\t#endif\\n\\t#include <aomap_fragment>\\n\\treflectedLight.indirectDiffuse *= diffuseColor.rgb;\\n\\tvec3 outgoingLight = reflectedLight.indirectDiffuse;\\n\\t#include <envmap_fragment>\\n\\t#include <output_fragment>\\n\\t#include <tonemapping_fragment>\\n\\t#include <encodings_fragment>\\n\\t#include <fog_fragment>\\n\\t#include <premultiplied_alpha_fragment>\\n\\t#include <dithering_fragment>\\n}\";const Da=\"#define LAMBERT\\nvarying vec3 vLightFront;\\nvarying vec3 vIndirectFront;\\n#ifdef DOUBLE_SIDED\\n\\tvarying vec3 vLightBack;\\n\\tvarying vec3 vIndirectBack;\\n#endif\\n#include <common>\\n#include <uv_pars_vertex>\\n#include <uv2_pars_vertex>\\n#include <envmap_pars_vertex>\\n#include <bsdfs>\\n#include <lights_pars_begin>\\n#include <color_pars_vertex>\\n#include <fog_pars_vertex>\\n#include <morphtarget_pars_vertex>\\n#include <skinning_pars_vertex>\\n#include <shadowmap_pars_vertex>\\n#include <logdepthbuf_pars_vertex>\\n#include <clipping_planes_pars_vertex>\\nvoid main() {\\n\\t#include <uv_vertex>\\n\\t#include <uv2_vertex>\\n\\t#include <color_vertex>\\n\\t#include <beginnormal_vertex>\\n\\t#include <morphnormal_vertex>\\n\\t#include <skinbase_vertex>\\n\\t#include <skinnormal_vertex>\\n\\t#include <defaultnormal_vertex>\\n\\t#include <begin_vertex>\\n\\t#include <morphtarget_vertex>\\n\\t#include <skinning_vertex>\\n\\t#include <project_vertex>\\n\\t#include <logdepthbuf_vertex>\\n\\t#include <clipping_planes_vertex>\\n\\t#include <worldpos_vertex>\\n\\t#include <envmap_vertex>\\n\\t#include <lights_lambert_vertex>\\n\\t#include <shadowmap_vertex>\\n\\t#include <fog_vertex>\\n}\";const Ba=\"uniform vec3 diffuse;\\nuniform vec3 emissive;\\nuniform float opacity;\\nvarying vec3 vLightFront;\\nvarying vec3 vIndirectFront;\\n#ifdef DOUBLE_SIDED\\n\\tvarying vec3 vLightBack;\\n\\tvarying vec3 vIndirectBack;\\n#endif\\n#include <common>\\n#include <packing>\\n#include <dithering_pars_fragment>\\n#include <color_pars_fragment>\\n#include <uv_pars_fragment>\\n#include <uv2_pars_fragment>\\n#include <map_pars_fragment>\\n#include <alphamap_pars_fragment>\\n#include <alphatest_pars_fragment>\\n#include <aomap_pars_fragment>\\n#include <lightmap_pars_fragment>\\n#include <emissivemap_pars_fragment>\\n#include <envmap_common_pars_fragment>\\n#include <envmap_pars_fragment>\\n#include <cube_uv_reflection_fragment>\\n#include <bsdfs>\\n#include <lights_pars_begin>\\n#include <fog_pars_fragment>\\n#include <shadowmap_pars_fragment>\\n#include <shadowmask_pars_fragment>\\n#include <specularmap_pars_fragment>\\n#include <logdepthbuf_pars_fragment>\\n#include <clipping_planes_pars_fragment>\\nvoid main() {\\n\\t#include <clipping_planes_fragment>\\n\\tvec4 diffuseColor = vec4( diffuse, opacity );\\n\\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\\n\\tvec3 totalEmissiveRadiance = emissive;\\n\\t#include <logdepthbuf_fragment>\\n\\t#include <map_fragment>\\n\\t#include <color_fragment>\\n\\t#include <alphamap_fragment>\\n\\t#include <alphatest_fragment>\\n\\t#include <specularmap_fragment>\\n\\t#include <emissivemap_fragment>\\n\\t#ifdef DOUBLE_SIDED\\n\\t\\treflectedLight.indirectDiffuse += ( gl_FrontFacing ) ? vIndirectFront : vIndirectBack;\\n\\t#else\\n\\t\\treflectedLight.indirectDiffuse += vIndirectFront;\\n\\t#endif\\n\\t#include <lightmap_fragment>\\n\\treflectedLight.indirectDiffuse *= BRDF_Lambert( diffuseColor.rgb );\\n\\t#ifdef DOUBLE_SIDED\\n\\t\\treflectedLight.directDiffuse = ( gl_FrontFacing ) ? vLightFront : vLightBack;\\n\\t#else\\n\\t\\treflectedLight.directDiffuse = vLightFront;\\n\\t#endif\\n\\treflectedLight.directDiffuse *= BRDF_Lambert( diffuseColor.rgb ) * getShadowMask();\\n\\t#include <aomap_fragment>\\n\\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + totalEmissiveRadiance;\\n\\t#include <envmap_fragment>\\n\\t#include <output_fragment>\\n\\t#include <tonemapping_fragment>\\n\\t#include <encodings_fragment>\\n\\t#include <fog_fragment>\\n\\t#include <premultiplied_alpha_fragment>\\n\\t#include <dithering_fragment>\\n}\";const Va=\"#define MATCAP\\nvarying vec3 vViewPosition;\\n#include <common>\\n#include <uv_pars_vertex>\\n#include <color_pars_vertex>\\n#include <displacementmap_pars_vertex>\\n#include <fog_pars_vertex>\\n#include <normal_pars_vertex>\\n#include <morphtarget_pars_vertex>\\n#include <skinning_pars_vertex>\\n#include <logdepthbuf_pars_vertex>\\n#include <clipping_planes_pars_vertex>\\nvoid main() {\\n\\t#include <uv_vertex>\\n\\t#include <color_vertex>\\n\\t#include <beginnormal_vertex>\\n\\t#include <morphnormal_vertex>\\n\\t#include <skinbase_vertex>\\n\\t#include <skinnormal_vertex>\\n\\t#include <defaultnormal_vertex>\\n\\t#include <normal_vertex>\\n\\t#include <begin_vertex>\\n\\t#include <morphtarget_vertex>\\n\\t#include <skinning_vertex>\\n\\t#include <displacementmap_vertex>\\n\\t#include <project_vertex>\\n\\t#include <logdepthbuf_vertex>\\n\\t#include <clipping_planes_vertex>\\n\\t#include <fog_vertex>\\n\\tvViewPosition = - mvPosition.xyz;\\n}\";const Na=\"#define MATCAP\\nuniform vec3 diffuse;\\nuniform float opacity;\\nuniform sampler2D matcap;\\nvarying vec3 vViewPosition;\\n#include <common>\\n#include <dithering_pars_fragment>\\n#include <color_pars_fragment>\\n#include <uv_pars_fragment>\\n#include <map_pars_fragment>\\n#include <alphamap_pars_fragment>\\n#include <alphatest_pars_fragment>\\n#include <fog_pars_fragment>\\n#include <normal_pars_fragment>\\n#include <bumpmap_pars_fragment>\\n#include <normalmap_pars_fragment>\\n#include <logdepthbuf_pars_fragment>\\n#include <clipping_planes_pars_fragment>\\nvoid main() {\\n\\t#include <clipping_planes_fragment>\\n\\tvec4 diffuseColor = vec4( diffuse, opacity );\\n\\t#include <logdepthbuf_fragment>\\n\\t#include <map_fragment>\\n\\t#include <color_fragment>\\n\\t#include <alphamap_fragment>\\n\\t#include <alphatest_fragment>\\n\\t#include <normal_fragment_begin>\\n\\t#include <normal_fragment_maps>\\n\\tvec3 viewDir = normalize( vViewPosition );\\n\\tvec3 x = normalize( vec3( viewDir.z, 0.0, - viewDir.x ) );\\n\\tvec3 y = cross( viewDir, x );\\n\\tvec2 uv = vec2( dot( x, normal ), dot( y, normal ) ) * 0.495 + 0.5;\\n\\t#ifdef USE_MATCAP\\n\\t\\tvec4 matcapColor = texture2D( matcap, uv );\\n\\t\\tmatcapColor = matcapTexelToLinear( matcapColor );\\n\\t#else\\n\\t\\tvec4 matcapColor = vec4( 1.0 );\\n\\t#endif\\n\\tvec3 outgoingLight = diffuseColor.rgb * matcapColor.rgb;\\n\\t#include <output_fragment>\\n\\t#include <tonemapping_fragment>\\n\\t#include <encodings_fragment>\\n\\t#include <fog_fragment>\\n\\t#include <premultiplied_alpha_fragment>\\n\\t#include <dithering_fragment>\\n}\";const Ua=\"#define NORMAL\\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( TANGENTSPACE_NORMALMAP )\\n\\tvarying vec3 vViewPosition;\\n#endif\\n#include <common>\\n#include <uv_pars_vertex>\\n#include <displacementmap_pars_vertex>\\n#include <normal_pars_vertex>\\n#include <morphtarget_pars_vertex>\\n#include <skinning_pars_vertex>\\n#include <logdepthbuf_pars_vertex>\\n#include <clipping_planes_pars_vertex>\\nvoid main() {\\n\\t#include <uv_vertex>\\n\\t#include <beginnormal_vertex>\\n\\t#include <morphnormal_vertex>\\n\\t#include <skinbase_vertex>\\n\\t#include <skinnormal_vertex>\\n\\t#include <defaultnormal_vertex>\\n\\t#include <normal_vertex>\\n\\t#include <begin_vertex>\\n\\t#include <morphtarget_vertex>\\n\\t#include <skinning_vertex>\\n\\t#include <displacementmap_vertex>\\n\\t#include <project_vertex>\\n\\t#include <logdepthbuf_vertex>\\n\\t#include <clipping_planes_vertex>\\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( TANGENTSPACE_NORMALMAP )\\n\\tvViewPosition = - mvPosition.xyz;\\n#endif\\n}\";const za=\"#define NORMAL\\nuniform float opacity;\\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( TANGENTSPACE_NORMALMAP )\\n\\tvarying vec3 vViewPosition;\\n#endif\\n#include <packing>\\n#include <uv_pars_fragment>\\n#include <normal_pars_fragment>\\n#include <bumpmap_pars_fragment>\\n#include <normalmap_pars_fragment>\\n#include <logdepthbuf_pars_fragment>\\n#include <clipping_planes_pars_fragment>\\nvoid main() {\\n\\t#include <clipping_planes_fragment>\\n\\t#include <logdepthbuf_fragment>\\n\\t#include <normal_fragment_begin>\\n\\t#include <normal_fragment_maps>\\n\\tgl_FragColor = vec4( packNormalToRGB( normal ), opacity );\\n}\";const Ga=\"#define PHONG\\nvarying vec3 vViewPosition;\\n#include <common>\\n#include <uv_pars_vertex>\\n#include <uv2_pars_vertex>\\n#include <displacementmap_pars_vertex>\\n#include <envmap_pars_vertex>\\n#include <color_pars_vertex>\\n#include <fog_pars_vertex>\\n#include <normal_pars_vertex>\\n#include <morphtarget_pars_vertex>\\n#include <skinning_pars_vertex>\\n#include <shadowmap_pars_vertex>\\n#include <logdepthbuf_pars_vertex>\\n#include <clipping_planes_pars_vertex>\\nvoid main() {\\n\\t#include <uv_vertex>\\n\\t#include <uv2_vertex>\\n\\t#include <color_vertex>\\n\\t#include <beginnormal_vertex>\\n\\t#include <morphnormal_vertex>\\n\\t#include <skinbase_vertex>\\n\\t#include <skinnormal_vertex>\\n\\t#include <defaultnormal_vertex>\\n\\t#include <normal_vertex>\\n\\t#include <begin_vertex>\\n\\t#include <morphtarget_vertex>\\n\\t#include <skinning_vertex>\\n\\t#include <displacementmap_vertex>\\n\\t#include <project_vertex>\\n\\t#include <logdepthbuf_vertex>\\n\\t#include <clipping_planes_vertex>\\n\\tvViewPosition = - mvPosition.xyz;\\n\\t#include <worldpos_vertex>\\n\\t#include <envmap_vertex>\\n\\t#include <shadowmap_vertex>\\n\\t#include <fog_vertex>\\n}\";const Fa=\"#define PHONG\\nuniform vec3 diffuse;\\nuniform vec3 emissive;\\nuniform vec3 specular;\\nuniform float shininess;\\nuniform float opacity;\\n#include <common>\\n#include <packing>\\n#include <dithering_pars_fragment>\\n#include <color_pars_fragment>\\n#include <uv_pars_fragment>\\n#include <uv2_pars_fragment>\\n#include <map_pars_fragment>\\n#include <alphamap_pars_fragment>\\n#include <alphatest_pars_fragment>\\n#include <aomap_pars_fragment>\\n#include <lightmap_pars_fragment>\\n#include <emissivemap_pars_fragment>\\n#include <envmap_common_pars_fragment>\\n#include <envmap_pars_fragment>\\n#include <cube_uv_reflection_fragment>\\n#include <fog_pars_fragment>\\n#include <bsdfs>\\n#include <lights_pars_begin>\\n#include <normal_pars_fragment>\\n#include <lights_phong_pars_fragment>\\n#include <shadowmap_pars_fragment>\\n#include <bumpmap_pars_fragment>\\n#include <normalmap_pars_fragment>\\n#include <specularmap_pars_fragment>\\n#include <logdepthbuf_pars_fragment>\\n#include <clipping_planes_pars_fragment>\\nvoid main() {\\n\\t#include <clipping_planes_fragment>\\n\\tvec4 diffuseColor = vec4( diffuse, opacity );\\n\\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\\n\\tvec3 totalEmissiveRadiance = emissive;\\n\\t#include <logdepthbuf_fragment>\\n\\t#include <map_fragment>\\n\\t#include <color_fragment>\\n\\t#include <alphamap_fragment>\\n\\t#include <alphatest_fragment>\\n\\t#include <specularmap_fragment>\\n\\t#include <normal_fragment_begin>\\n\\t#include <normal_fragment_maps>\\n\\t#include <emissivemap_fragment>\\n\\t#include <lights_phong_fragment>\\n\\t#include <lights_fragment_begin>\\n\\t#include <lights_fragment_maps>\\n\\t#include <lights_fragment_end>\\n\\t#include <aomap_fragment>\\n\\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + reflectedLight.directSpecular + reflectedLight.indirectSpecular + totalEmissiveRadiance;\\n\\t#include <envmap_fragment>\\n\\t#include <output_fragment>\\n\\t#include <tonemapping_fragment>\\n\\t#include <encodings_fragment>\\n\\t#include <fog_fragment>\\n\\t#include <premultiplied_alpha_fragment>\\n\\t#include <dithering_fragment>\\n}\";const Oa=\"#define STANDARD\\nvarying vec3 vViewPosition;\\n#ifdef USE_TRANSMISSION\\n\\tvarying vec3 vWorldPosition;\\n#endif\\n#include <common>\\n#include <uv_pars_vertex>\\n#include <uv2_pars_vertex>\\n#include <displacementmap_pars_vertex>\\n#include <color_pars_vertex>\\n#include <fog_pars_vertex>\\n#include <normal_pars_vertex>\\n#include <morphtarget_pars_vertex>\\n#include <skinning_pars_vertex>\\n#include <shadowmap_pars_vertex>\\n#include <logdepthbuf_pars_vertex>\\n#include <clipping_planes_pars_vertex>\\nvoid main() {\\n\\t#include <uv_vertex>\\n\\t#include <uv2_vertex>\\n\\t#include <color_vertex>\\n\\t#include <beginnormal_vertex>\\n\\t#include <morphnormal_vertex>\\n\\t#include <skinbase_vertex>\\n\\t#include <skinnormal_vertex>\\n\\t#include <defaultnormal_vertex>\\n\\t#include <normal_vertex>\\n\\t#include <begin_vertex>\\n\\t#include <morphtarget_vertex>\\n\\t#include <skinning_vertex>\\n\\t#include <displacementmap_vertex>\\n\\t#include <project_vertex>\\n\\t#include <logdepthbuf_vertex>\\n\\t#include <clipping_planes_vertex>\\n\\tvViewPosition = - mvPosition.xyz;\\n\\t#include <worldpos_vertex>\\n\\t#include <shadowmap_vertex>\\n\\t#include <fog_vertex>\\n#ifdef USE_TRANSMISSION\\n\\tvWorldPosition = worldPosition.xyz;\\n#endif\\n}\";const Ha=\"#define STANDARD\\n#ifdef PHYSICAL\\n\\t#define IOR\\n\\t#define SPECULAR\\n#endif\\nuniform vec3 diffuse;\\nuniform vec3 emissive;\\nuniform float roughness;\\nuniform float metalness;\\nuniform float opacity;\\n#ifdef IOR\\n\\tuniform float ior;\\n#endif\\n#ifdef SPECULAR\\n\\tuniform float specularIntensity;\\n\\tuniform vec3 specularColor;\\n\\t#ifdef USE_SPECULARINTENSITYMAP\\n\\t\\tuniform sampler2D specularIntensityMap;\\n\\t#endif\\n\\t#ifdef USE_SPECULARCOLORMAP\\n\\t\\tuniform sampler2D specularColorMap;\\n\\t#endif\\n#endif\\n#ifdef USE_CLEARCOAT\\n\\tuniform float clearcoat;\\n\\tuniform float clearcoatRoughness;\\n#endif\\n#ifdef USE_SHEEN\\n\\tuniform vec3 sheenColor;\\n\\tuniform float sheenRoughness;\\n\\t#ifdef USE_SHEENCOLORMAP\\n\\t\\tuniform sampler2D sheenColorMap;\\n\\t#endif\\n\\t#ifdef USE_SHEENROUGHNESSMAP\\n\\t\\tuniform sampler2D sheenRoughnessMap;\\n\\t#endif\\n#endif\\nvarying vec3 vViewPosition;\\n#include <common>\\n#include <packing>\\n#include <dithering_pars_fragment>\\n#include <color_pars_fragment>\\n#include <uv_pars_fragment>\\n#include <uv2_pars_fragment>\\n#include <map_pars_fragment>\\n#include <alphamap_pars_fragment>\\n#include <alphatest_pars_fragment>\\n#include <aomap_pars_fragment>\\n#include <lightmap_pars_fragment>\\n#include <emissivemap_pars_fragment>\\n#include <bsdfs>\\n#include <cube_uv_reflection_fragment>\\n#include <envmap_common_pars_fragment>\\n#include <envmap_physical_pars_fragment>\\n#include <fog_pars_fragment>\\n#include <lights_pars_begin>\\n#include <normal_pars_fragment>\\n#include <lights_physical_pars_fragment>\\n#include <transmission_pars_fragment>\\n#include <shadowmap_pars_fragment>\\n#include <bumpmap_pars_fragment>\\n#include <normalmap_pars_fragment>\\n#include <clearcoat_pars_fragment>\\n#include <roughnessmap_pars_fragment>\\n#include <metalnessmap_pars_fragment>\\n#include <logdepthbuf_pars_fragment>\\n#include <clipping_planes_pars_fragment>\\nvoid main() {\\n\\t#include <clipping_planes_fragment>\\n\\tvec4 diffuseColor = vec4( diffuse, opacity );\\n\\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\\n\\tvec3 totalEmissiveRadiance = emissive;\\n\\t#include <logdepthbuf_fragment>\\n\\t#include <map_fragment>\\n\\t#include <color_fragment>\\n\\t#include <alphamap_fragment>\\n\\t#include <alphatest_fragment>\\n\\t#include <roughnessmap_fragment>\\n\\t#include <metalnessmap_fragment>\\n\\t#include <normal_fragment_begin>\\n\\t#include <normal_fragment_maps>\\n\\t#include <clearcoat_normal_fragment_begin>\\n\\t#include <clearcoat_normal_fragment_maps>\\n\\t#include <emissivemap_fragment>\\n\\t#include <lights_physical_fragment>\\n\\t#include <lights_fragment_begin>\\n\\t#include <lights_fragment_maps>\\n\\t#include <lights_fragment_end>\\n\\t#include <aomap_fragment>\\n\\tvec3 totalDiffuse = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse;\\n\\tvec3 totalSpecular = reflectedLight.directSpecular + reflectedLight.indirectSpecular;\\n\\t#include <transmission_fragment>\\n\\tvec3 outgoingLight = totalDiffuse + totalSpecular + totalEmissiveRadiance;\\n\\t#ifdef USE_SHEEN\\n\\t\\tfloat sheenEnergyComp = 1.0 - 0.157 * max3( material.sheenColor );\\n\\t\\toutgoingLight = outgoingLight * sheenEnergyComp + sheenSpecular;\\n\\t#endif\\n\\t#ifdef USE_CLEARCOAT\\n\\t\\tfloat dotNVcc = saturate( dot( geometry.clearcoatNormal, geometry.viewDir ) );\\n\\t\\tvec3 Fcc = F_Schlick( material.clearcoatF0, material.clearcoatF90, dotNVcc );\\n\\t\\toutgoingLight = outgoingLight * ( 1.0 - material.clearcoat * Fcc ) + clearcoatSpecular * material.clearcoat;\\n\\t#endif\\n\\t#include <output_fragment>\\n\\t#include <tonemapping_fragment>\\n\\t#include <encodings_fragment>\\n\\t#include <fog_fragment>\\n\\t#include <premultiplied_alpha_fragment>\\n\\t#include <dithering_fragment>\\n}\";const ka=\"#define TOON\\nvarying vec3 vViewPosition;\\n#include <common>\\n#include <uv_pars_vertex>\\n#include <uv2_pars_vertex>\\n#include <displacementmap_pars_vertex>\\n#include <color_pars_vertex>\\n#include <fog_pars_vertex>\\n#include <normal_pars_vertex>\\n#include <morphtarget_pars_vertex>\\n#include <skinning_pars_vertex>\\n#include <shadowmap_pars_vertex>\\n#include <logdepthbuf_pars_vertex>\\n#include <clipping_planes_pars_vertex>\\nvoid main() {\\n\\t#include <uv_vertex>\\n\\t#include <uv2_vertex>\\n\\t#include <color_vertex>\\n\\t#include <beginnormal_vertex>\\n\\t#include <morphnormal_vertex>\\n\\t#include <skinbase_vertex>\\n\\t#include <skinnormal_vertex>\\n\\t#include <defaultnormal_vertex>\\n\\t#include <normal_vertex>\\n\\t#include <begin_vertex>\\n\\t#include <morphtarget_vertex>\\n\\t#include <skinning_vertex>\\n\\t#include <displacementmap_vertex>\\n\\t#include <project_vertex>\\n\\t#include <logdepthbuf_vertex>\\n\\t#include <clipping_planes_vertex>\\n\\tvViewPosition = - mvPosition.xyz;\\n\\t#include <worldpos_vertex>\\n\\t#include <shadowmap_vertex>\\n\\t#include <fog_vertex>\\n}\";const Wa=\"#define TOON\\nuniform vec3 diffuse;\\nuniform vec3 emissive;\\nuniform float opacity;\\n#include <common>\\n#include <packing>\\n#include <dithering_pars_fragment>\\n#include <color_pars_fragment>\\n#include <uv_pars_fragment>\\n#include <uv2_pars_fragment>\\n#include <map_pars_fragment>\\n#include <alphamap_pars_fragment>\\n#include <alphatest_pars_fragment>\\n#include <aomap_pars_fragment>\\n#include <lightmap_pars_fragment>\\n#include <emissivemap_pars_fragment>\\n#include <gradientmap_pars_fragment>\\n#include <fog_pars_fragment>\\n#include <bsdfs>\\n#include <lights_pars_begin>\\n#include <normal_pars_fragment>\\n#include <lights_toon_pars_fragment>\\n#include <shadowmap_pars_fragment>\\n#include <bumpmap_pars_fragment>\\n#include <normalmap_pars_fragment>\\n#include <logdepthbuf_pars_fragment>\\n#include <clipping_planes_pars_fragment>\\nvoid main() {\\n\\t#include <clipping_planes_fragment>\\n\\tvec4 diffuseColor = vec4( diffuse, opacity );\\n\\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\\n\\tvec3 totalEmissiveRadiance = emissive;\\n\\t#include <logdepthbuf_fragment>\\n\\t#include <map_fragment>\\n\\t#include <color_fragment>\\n\\t#include <alphamap_fragment>\\n\\t#include <alphatest_fragment>\\n\\t#include <normal_fragment_begin>\\n\\t#include <normal_fragment_maps>\\n\\t#include <emissivemap_fragment>\\n\\t#include <lights_toon_fragment>\\n\\t#include <lights_fragment_begin>\\n\\t#include <lights_fragment_maps>\\n\\t#include <lights_fragment_end>\\n\\t#include <aomap_fragment>\\n\\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + totalEmissiveRadiance;\\n\\t#include <output_fragment>\\n\\t#include <tonemapping_fragment>\\n\\t#include <encodings_fragment>\\n\\t#include <fog_fragment>\\n\\t#include <premultiplied_alpha_fragment>\\n\\t#include <dithering_fragment>\\n}\";const ja=\"uniform float size;\\nuniform float scale;\\n#include <common>\\n#include <color_pars_vertex>\\n#include <fog_pars_vertex>\\n#include <morphtarget_pars_vertex>\\n#include <logdepthbuf_pars_vertex>\\n#include <clipping_planes_pars_vertex>\\nvoid main() {\\n\\t#include <color_vertex>\\n\\t#include <begin_vertex>\\n\\t#include <morphtarget_vertex>\\n\\t#include <project_vertex>\\n\\tgl_PointSize = size;\\n\\t#ifdef USE_SIZEATTENUATION\\n\\t\\tbool isPerspective = isPerspectiveMatrix( projectionMatrix );\\n\\t\\tif ( isPerspective ) gl_PointSize *= ( scale / - mvPosition.z );\\n\\t#endif\\n\\t#include <logdepthbuf_vertex>\\n\\t#include <clipping_planes_vertex>\\n\\t#include <worldpos_vertex>\\n\\t#include <fog_vertex>\\n}\";const qa=\"uniform vec3 diffuse;\\nuniform float opacity;\\n#include <common>\\n#include <color_pars_fragment>\\n#include <map_particle_pars_fragment>\\n#include <alphatest_pars_fragment>\\n#include <fog_pars_fragment>\\n#include <logdepthbuf_pars_fragment>\\n#include <clipping_planes_pars_fragment>\\nvoid main() {\\n\\t#include <clipping_planes_fragment>\\n\\tvec3 outgoingLight = vec3( 0.0 );\\n\\tvec4 diffuseColor = vec4( diffuse, opacity );\\n\\t#include <logdepthbuf_fragment>\\n\\t#include <map_particle_fragment>\\n\\t#include <color_fragment>\\n\\t#include <alphatest_fragment>\\n\\toutgoingLight = diffuseColor.rgb;\\n\\t#include <output_fragment>\\n\\t#include <tonemapping_fragment>\\n\\t#include <encodings_fragment>\\n\\t#include <fog_fragment>\\n\\t#include <premultiplied_alpha_fragment>\\n}\";const Xa=\"#include <common>\\n#include <fog_pars_vertex>\\n#include <morphtarget_pars_vertex>\\n#include <skinning_pars_vertex>\\n#include <shadowmap_pars_vertex>\\nvoid main() {\\n\\t#include <beginnormal_vertex>\\n\\t#include <morphnormal_vertex>\\n\\t#include <skinbase_vertex>\\n\\t#include <skinnormal_vertex>\\n\\t#include <defaultnormal_vertex>\\n\\t#include <begin_vertex>\\n\\t#include <morphtarget_vertex>\\n\\t#include <skinning_vertex>\\n\\t#include <project_vertex>\\n\\t#include <worldpos_vertex>\\n\\t#include <shadowmap_vertex>\\n\\t#include <fog_vertex>\\n}\";const Ja=\"uniform vec3 color;\\nuniform float opacity;\\n#include <common>\\n#include <packing>\\n#include <fog_pars_fragment>\\n#include <bsdfs>\\n#include <lights_pars_begin>\\n#include <shadowmap_pars_fragment>\\n#include <shadowmask_pars_fragment>\\nvoid main() {\\n\\tgl_FragColor = vec4( color, opacity * ( 1.0 - getShadowMask() ) );\\n\\t#include <tonemapping_fragment>\\n\\t#include <encodings_fragment>\\n\\t#include <fog_fragment>\\n}\";const Ya=\"uniform float rotation;\\nuniform vec2 center;\\n#include <common>\\n#include <uv_pars_vertex>\\n#include <fog_pars_vertex>\\n#include <logdepthbuf_pars_vertex>\\n#include <clipping_planes_pars_vertex>\\nvoid main() {\\n\\t#include <uv_vertex>\\n\\tvec4 mvPosition = modelViewMatrix * vec4( 0.0, 0.0, 0.0, 1.0 );\\n\\tvec2 scale;\\n\\tscale.x = length( vec3( modelMatrix[ 0 ].x, modelMatrix[ 0 ].y, modelMatrix[ 0 ].z ) );\\n\\tscale.y = length( vec3( modelMatrix[ 1 ].x, modelMatrix[ 1 ].y, modelMatrix[ 1 ].z ) );\\n\\t#ifndef USE_SIZEATTENUATION\\n\\t\\tbool isPerspective = isPerspectiveMatrix( projectionMatrix );\\n\\t\\tif ( isPerspective ) scale *= - mvPosition.z;\\n\\t#endif\\n\\tvec2 alignedPosition = ( position.xy - ( center - vec2( 0.5 ) ) ) * scale;\\n\\tvec2 rotatedPosition;\\n\\trotatedPosition.x = cos( rotation ) * alignedPosition.x - sin( rotation ) * alignedPosition.y;\\n\\trotatedPosition.y = sin( rotation ) * alignedPosition.x + cos( rotation ) * alignedPosition.y;\\n\\tmvPosition.xy += rotatedPosition;\\n\\tgl_Position = projectionMatrix * mvPosition;\\n\\t#include <logdepthbuf_vertex>\\n\\t#include <clipping_planes_vertex>\\n\\t#include <fog_vertex>\\n}\";const Za=\"uniform vec3 diffuse;\\nuniform float opacity;\\n#include <common>\\n#include <uv_pars_fragment>\\n#include <map_pars_fragment>\\n#include <alphamap_pars_fragment>\\n#include <alphatest_pars_fragment>\\n#include <fog_pars_fragment>\\n#include <logdepthbuf_pars_fragment>\\n#include <clipping_planes_pars_fragment>\\nvoid main() {\\n\\t#include <clipping_planes_fragment>\\n\\tvec3 outgoingLight = vec3( 0.0 );\\n\\tvec4 diffuseColor = vec4( diffuse, opacity );\\n\\t#include <logdepthbuf_fragment>\\n\\t#include <map_fragment>\\n\\t#include <alphamap_fragment>\\n\\t#include <alphatest_fragment>\\n\\toutgoingLight = diffuseColor.rgb;\\n\\t#include <output_fragment>\\n\\t#include <tonemapping_fragment>\\n\\t#include <encodings_fragment>\\n\\t#include <fog_fragment>\\n}\";const Qa={alphamap_fragment:Ti,alphamap_pars_fragment:Ei,alphatest_fragment:Ai,alphatest_pars_fragment:Li,aomap_fragment:Ci,aomap_pars_fragment:Ri,begin_vertex:Pi,beginnormal_vertex:Ii,bsdfs:Di,bumpmap_pars_fragment:Bi,clipping_planes_fragment:Vi,clipping_planes_pars_fragment:Ni,clipping_planes_pars_vertex:Ui,clipping_planes_vertex:zi,color_fragment:Gi,color_pars_fragment:Fi,color_pars_vertex:Oi,color_vertex:Hi,common:ki,cube_uv_reflection_fragment:Wi,defaultnormal_vertex:ji,displacementmap_pars_vertex:qi,displacementmap_vertex:Xi,emissivemap_fragment:Ji,emissivemap_pars_fragment:Yi,encodings_fragment:Zi,encodings_pars_fragment:Qi,envmap_fragment:Ki,envmap_common_pars_fragment:$i,envmap_pars_fragment:es,envmap_pars_vertex:ts,envmap_physical_pars_fragment:ds,envmap_vertex:ns,fog_vertex:rs,fog_pars_vertex:is,fog_fragment:ss,fog_pars_fragment:as,gradientmap_pars_fragment:os,lightmap_fragment:ls,lightmap_pars_fragment:cs,lights_lambert_vertex:us,lights_pars_begin:hs,lights_toon_fragment:ps,lights_toon_pars_fragment:fs,lights_phong_fragment:ms,lights_phong_pars_fragment:gs,lights_physical_fragment:ys,lights_physical_pars_fragment:vs,lights_fragment_begin:xs,lights_fragment_maps:bs,lights_fragment_end:_s,logdepthbuf_fragment:Ms,logdepthbuf_pars_fragment:ws,logdepthbuf_pars_vertex:Ss,logdepthbuf_vertex:Ts,map_fragment:Es,map_pars_fragment:As,map_particle_fragment:Ls,map_particle_pars_fragment:Cs,metalnessmap_fragment:Rs,metalnessmap_pars_fragment:Ps,morphnormal_vertex:Is,morphtarget_pars_vertex:Ds,morphtarget_vertex:Bs,normal_fragment_begin:Vs,normal_fragment_maps:Ns,normal_pars_fragment:Us,normal_pars_vertex:zs,normal_vertex:Gs,normalmap_pars_fragment:Fs,clearcoat_normal_fragment_begin:Os,clearcoat_normal_fragment_maps:Hs,clearcoat_pars_fragment:ks,output_fragment:Ws,packing:js,premultiplied_alpha_fragment:qs,project_vertex:Xs,dithering_fragment:Js,dithering_pars_fragment:Ys,roughnessmap_fragment:Zs,roughnessmap_pars_fragment:Qs,shadowmap_pars_fragment:Ks,shadowmap_pars_vertex:$s,shadowmap_vertex:ea,shadowmask_pars_fragment:ta,skinbase_vertex:na,skinning_pars_vertex:ra,skinning_vertex:ia,skinnormal_vertex:sa,specularmap_fragment:aa,specularmap_pars_fragment:oa,tonemapping_fragment:la,tonemapping_pars_fragment:ca,transmission_fragment:ua,transmission_pars_fragment:ha,uv_pars_fragment:da,uv_pars_vertex:pa,uv_vertex:fa,uv2_pars_fragment:ma,uv2_pars_vertex:ga,uv2_vertex:ya,worldpos_vertex:va,background_vert:xa,background_frag:ba,cube_vert:_a,cube_frag:Ma,depth_vert:wa,depth_frag:Sa,distanceRGBA_vert:Ta,distanceRGBA_frag:Ea,equirect_vert:Aa,equirect_frag:La,linedashed_vert:Ca,linedashed_frag:Ra,meshbasic_vert:Pa,meshbasic_frag:Ia,meshlambert_vert:Da,meshlambert_frag:Ba,meshmatcap_vert:Va,meshmatcap_frag:Na,meshnormal_vert:Ua,meshnormal_frag:za,meshphong_vert:Ga,meshphong_frag:Fa,meshphysical_vert:Oa,meshphysical_frag:Ha,meshtoon_vert:ka,meshtoon_frag:Wa,points_vert:ja,points_frag:qa,shadow_vert:Xa,shadow_frag:Ja,sprite_vert:Ya,sprite_frag:Za};const Ka={common:{diffuse:{value:new Color(16777215)},opacity:{value:1},map:{value:null},uvTransform:{value:new Matrix3},uv2Transform:{value:new Matrix3},alphaMap:{value:null},alphaTest:{value:0}},specularmap:{specularMap:{value:null}},envmap:{envMap:{value:null},flipEnvMap:{value:-1},reflectivity:{value:1},ior:{value:1.5},refractionRatio:{value:.98}},aomap:{aoMap:{value:null},aoMapIntensity:{value:1}},lightmap:{lightMap:{value:null},lightMapIntensity:{value:1}},emissivemap:{emissiveMap:{value:null}},bumpmap:{bumpMap:{value:null},bumpScale:{value:1}},normalmap:{normalMap:{value:null},normalScale:{value:new Vector2(1,1)}},displacementmap:{displacementMap:{value:null},displacementScale:{value:1},displacementBias:{value:0}},roughnessmap:{roughnessMap:{value:null}},metalnessmap:{metalnessMap:{value:null}},gradientmap:{gradientMap:{value:null}},fog:{fogDensity:{value:25e-5},fogNear:{value:1},fogFar:{value:2e3},fogColor:{value:new Color(16777215)}},lights:{ambientLightColor:{value:[]},lightProbe:{value:[]},directionalLights:{value:[],properties:{direction:{},color:{}}},directionalLightShadows:{value:[],properties:{shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{}}},directionalShadowMap:{value:[]},directionalShadowMatrix:{value:[]},spotLights:{value:[],properties:{color:{},position:{},direction:{},distance:{},coneCos:{},penumbraCos:{},decay:{}}},spotLightShadows:{value:[],properties:{shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{}}},spotShadowMap:{value:[]},spotShadowMatrix:{value:[]},pointLights:{value:[],properties:{color:{},position:{},decay:{},distance:{}}},pointLightShadows:{value:[],properties:{shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{},shadowCameraNear:{},shadowCameraFar:{}}},pointShadowMap:{value:[]},pointShadowMatrix:{value:[]},hemisphereLights:{value:[],properties:{direction:{},skyColor:{},groundColor:{}}},rectAreaLights:{value:[],properties:{color:{},position:{},width:{},height:{}}},ltc_1:{value:null},ltc_2:{value:null}},points:{diffuse:{value:new Color(16777215)},opacity:{value:1},size:{value:1},scale:{value:1},map:{value:null},alphaMap:{value:null},alphaTest:{value:0},uvTransform:{value:new Matrix3}},sprite:{diffuse:{value:new Color(16777215)},opacity:{value:1},center:{value:new Vector2(.5,.5)},rotation:{value:0},map:{value:null},alphaMap:{value:null},alphaTest:{value:0},uvTransform:{value:new Matrix3}}};const $a={basic:{uniforms:mergeUniforms([Ka.common,Ka.specularmap,Ka.envmap,Ka.aomap,Ka.lightmap,Ka.fog]),vertexShader:Qa.meshbasic_vert,fragmentShader:Qa.meshbasic_frag},lambert:{uniforms:mergeUniforms([Ka.common,Ka.specularmap,Ka.envmap,Ka.aomap,Ka.lightmap,Ka.emissivemap,Ka.fog,Ka.lights,{emissive:{value:new Color(0)}}]),vertexShader:Qa.meshlambert_vert,fragmentShader:Qa.meshlambert_frag},phong:{uniforms:mergeUniforms([Ka.common,Ka.specularmap,Ka.envmap,Ka.aomap,Ka.lightmap,Ka.emissivemap,Ka.bumpmap,Ka.normalmap,Ka.displacementmap,Ka.fog,Ka.lights,{emissive:{value:new Color(0)},specular:{value:new Color(1118481)},shininess:{value:30}}]),vertexShader:Qa.meshphong_vert,fragmentShader:Qa.meshphong_frag},standard:{uniforms:mergeUniforms([Ka.common,Ka.envmap,Ka.aomap,Ka.lightmap,Ka.emissivemap,Ka.bumpmap,Ka.normalmap,Ka.displacementmap,Ka.roughnessmap,Ka.metalnessmap,Ka.fog,Ka.lights,{emissive:{value:new Color(0)},roughness:{value:1},metalness:{value:0},envMapIntensity:{value:1}}]),vertexShader:Qa.meshphysical_vert,fragmentShader:Qa.meshphysical_frag},toon:{uniforms:mergeUniforms([Ka.common,Ka.aomap,Ka.lightmap,Ka.emissivemap,Ka.bumpmap,Ka.normalmap,Ka.displacementmap,Ka.gradientmap,Ka.fog,Ka.lights,{emissive:{value:new Color(0)}}]),vertexShader:Qa.meshtoon_vert,fragmentShader:Qa.meshtoon_frag},matcap:{uniforms:mergeUniforms([Ka.common,Ka.bumpmap,Ka.normalmap,Ka.displacementmap,Ka.fog,{matcap:{value:null}}]),vertexShader:Qa.meshmatcap_vert,fragmentShader:Qa.meshmatcap_frag},points:{uniforms:mergeUniforms([Ka.points,Ka.fog]),vertexShader:Qa.points_vert,fragmentShader:Qa.points_frag},dashed:{uniforms:mergeUniforms([Ka.common,Ka.fog,{scale:{value:1},dashSize:{value:1},totalSize:{value:2}}]),vertexShader:Qa.linedashed_vert,fragmentShader:Qa.linedashed_frag},depth:{uniforms:mergeUniforms([Ka.common,Ka.displacementmap]),vertexShader:Qa.depth_vert,fragmentShader:Qa.depth_frag},normal:{uniforms:mergeUniforms([Ka.common,Ka.bumpmap,Ka.normalmap,Ka.displacementmap,{opacity:{value:1}}]),vertexShader:Qa.meshnormal_vert,fragmentShader:Qa.meshnormal_frag},sprite:{uniforms:mergeUniforms([Ka.sprite,Ka.fog]),vertexShader:Qa.sprite_vert,fragmentShader:Qa.sprite_frag},background:{uniforms:{uvTransform:{value:new Matrix3},t2D:{value:null}},vertexShader:Qa.background_vert,fragmentShader:Qa.background_frag},cube:{uniforms:mergeUniforms([Ka.envmap,{opacity:{value:1}}]),vertexShader:Qa.cube_vert,fragmentShader:Qa.cube_frag},equirect:{uniforms:{tEquirect:{value:null}},vertexShader:Qa.equirect_vert,fragmentShader:Qa.equirect_frag},distanceRGBA:{uniforms:mergeUniforms([Ka.common,Ka.displacementmap,{referencePosition:{value:new Vector3},nearDistance:{value:1},farDistance:{value:1e3}}]),vertexShader:Qa.distanceRGBA_vert,fragmentShader:Qa.distanceRGBA_frag},shadow:{uniforms:mergeUniforms([Ka.lights,Ka.fog,{color:{value:new Color(0)},opacity:{value:1}}]),vertexShader:Qa.shadow_vert,fragmentShader:Qa.shadow_frag}};$a.physical={uniforms:mergeUniforms([$a.standard.uniforms,{clearcoat:{value:0},clearcoatMap:{value:null},clearcoatRoughness:{value:0},clearcoatRoughnessMap:{value:null},clearcoatNormalScale:{value:new Vector2(1,1)},clearcoatNormalMap:{value:null},sheen:{value:0},sheenColor:{value:new Color(0)},sheenColorMap:{value:null},sheenRoughness:{value:0},sheenRoughnessMap:{value:null},transmission:{value:0},transmissionMap:{value:null},transmissionSamplerSize:{value:new Vector2},transmissionSamplerMap:{value:null},thickness:{value:0},thicknessMap:{value:null},attenuationDistance:{value:0},attenuationColor:{value:new Color(0)},specularIntensity:{value:0},specularIntensityMap:{value:null},specularColor:{value:new Color(1,1,1)},specularColorMap:{value:null}}]),vertexShader:Qa.meshphysical_vert,fragmentShader:Qa.meshphysical_frag};function WebGLBackground(e,t,n,r,i){const s=new Color(0);let a=0;let o;let l;let c=null;let u=0;let p=null;function render(n,i){let f=false;let m=true===i.isScene?i.background:null;m&&m.isTexture&&(m=t.get(m));const g=e.xr;const y=g.getSession&&g.getSession();y&&\"additive\"===y.environmentBlendMode&&(m=null);if(null===m)setClear(s,a);else if(m&&m.isColor){setClear(m,1);f=true}(e.autoClear||f)&&e.clear(e.autoClearColor,e.autoClearDepth,e.autoClearStencil);if(m&&(m.isCubeTexture||m.mapping===oe)){if(void 0===l){l=new Mesh(new BoxGeometry(1,1,1),new ShaderMaterial({name:\"BackgroundCubeMaterial\",uniforms:cloneUniforms($a.cube.uniforms),vertexShader:$a.cube.vertexShader,fragmentShader:$a.cube.fragmentShader,side:d,depthTest:false,depthWrite:false,fog:false}));l.geometry.deleteAttribute(\"normal\");l.geometry.deleteAttribute(\"uv\");l.onBeforeRender=function(e,t,n){this.matrixWorld.copyPosition(n.matrixWorld)};Object.defineProperty(l.material,\"envMap\",{get:function(){return this.uniforms.envMap.value}});r.update(l)}l.material.uniforms.envMap.value=m;l.material.uniforms.flipEnvMap.value=m.isCubeTexture&&false===m.isRenderTargetTexture?-1:1;if(c!==m||u!==m.version||p!==e.toneMapping){l.material.needsUpdate=true;c=m;u=m.version;p=e.toneMapping}n.unshift(l,l.geometry,l.material,0,0,null)}else if(m&&m.isTexture){if(void 0===o){o=new Mesh(new PlaneGeometry(2,2),new ShaderMaterial({name:\"BackgroundMaterial\",uniforms:cloneUniforms($a.background.uniforms),vertexShader:$a.background.vertexShader,fragmentShader:$a.background.fragmentShader,side:h,depthTest:false,depthWrite:false,fog:false}));o.geometry.deleteAttribute(\"normal\");Object.defineProperty(o.material,\"map\",{get:function(){return this.uniforms.t2D.value}});r.update(o)}o.material.uniforms.t2D.value=m;true===m.matrixAutoUpdate&&m.updateMatrix();o.material.uniforms.uvTransform.value.copy(m.matrix);if(c!==m||u!==m.version||p!==e.toneMapping){o.material.needsUpdate=true;c=m;u=m.version;p=e.toneMapping}n.unshift(o,o.geometry,o.material,0,0,null)}}function setClear(e,t){n.buffers.color.setClear(e.r,e.g,e.b,t,i)}return{getClearColor:function(){return s},setClearColor:function(e,t=1){s.set(e);a=t;setClear(s,a)},getClearAlpha:function(){return a},setClearAlpha:function(e){a=e;setClear(s,a)},render:render}}function WebGLBindingStates(e,t,n,r){const i=e.getParameter(34921);const s=r.isWebGL2?null:t.get(\"OES_vertex_array_object\");const a=r.isWebGL2||null!==s;const o={};const l=createBindingState(null);let c=l;function setup(t,r,i,s,o){let l=false;if(a){const e=getBindingState(s,i,r);if(c!==e){c=e;bindVertexArrayObject(c.object)}l=needsUpdate(s,o);l&&saveCache(s,o)}else{const e=true===r.wireframe;if(c.geometry!==s.id||c.program!==i.id||c.wireframe!==e){c.geometry=s.id;c.program=i.id;c.wireframe=e;l=true}}true===t.isInstancedMesh&&(l=true);null!==o&&n.update(o,34963);if(l){setupVertexAttributes(t,r,i,s);null!==o&&e.bindBuffer(34963,n.get(o).buffer)}}function createVertexArrayObject(){return r.isWebGL2?e.createVertexArray():s.createVertexArrayOES()}function bindVertexArrayObject(t){return r.isWebGL2?e.bindVertexArray(t):s.bindVertexArrayOES(t)}function deleteVertexArrayObject(t){return r.isWebGL2?e.deleteVertexArray(t):s.deleteVertexArrayOES(t)}function getBindingState(e,t,n){const r=true===n.wireframe;let i=o[e.id];if(void 0===i){i={};o[e.id]=i}let s=i[t.id];if(void 0===s){s={};i[t.id]=s}let a=s[r];if(void 0===a){a=createBindingState(createVertexArrayObject());s[r]=a}return a}function createBindingState(e){const t=[];const n=[];const r=[];for(let e=0;e<i;e++){t[e]=0;n[e]=0;r[e]=0}return{geometry:null,program:null,wireframe:false,newAttributes:t,enabledAttributes:n,attributeDivisors:r,object:e,attributes:{},index:null}}function needsUpdate(e,t){const n=c.attributes;const r=e.attributes;let i=0;for(const e in r){const t=n[e];const s=r[e];if(void 0===t)return true;if(t.attribute!==s)return true;if(t.data!==s.data)return true;i++}return c.attributesNum!==i||c.index!==t}function saveCache(e,t){const n={};const r=e.attributes;let i=0;for(const e in r){const t=r[e];const s={};s.attribute=t;t.data&&(s.data=t.data);n[e]=s;i++}c.attributes=n;c.attributesNum=i;c.index=t}function initAttributes(){const e=c.newAttributes;for(let t=0,n=e.length;t<n;t++)e[t]=0}function enableAttribute(e){enableAttributeAndDivisor(e,0)}function enableAttributeAndDivisor(n,i){const s=c.newAttributes;const a=c.enabledAttributes;const o=c.attributeDivisors;s[n]=1;if(0===a[n]){e.enableVertexAttribArray(n);a[n]=1}if(o[n]!==i){const s=r.isWebGL2?e:t.get(\"ANGLE_instanced_arrays\");s[r.isWebGL2?\"vertexAttribDivisor\":\"vertexAttribDivisorANGLE\"](n,i);o[n]=i}}function disableUnusedAttributes(){const t=c.newAttributes;const n=c.enabledAttributes;for(let r=0,i=n.length;r<i;r++)if(n[r]!==t[r]){e.disableVertexAttribArray(r);n[r]=0}}function vertexAttribPointer(t,n,i,s,a,o){true!==r.isWebGL2||5124!==i&&5125!==i?e.vertexAttribPointer(t,n,i,s,a,o):e.vertexAttribIPointer(t,n,i,a,o)}function setupVertexAttributes(i,s,a,o){if(false===r.isWebGL2&&(i.isInstancedMesh||o.isInstancedBufferGeometry)&&null===t.get(\"ANGLE_instanced_arrays\"))return;initAttributes();const l=o.attributes;const c=a.getAttributes();const u=s.defaultAttributeValues;for(const t in c){const r=c[t];if(r.location>=0){let s=l[t];if(void 0===s){\"instanceMatrix\"===t&&i.instanceMatrix&&(s=i.instanceMatrix);\"instanceColor\"===t&&i.instanceColor&&(s=i.instanceColor)}if(void 0!==s){const t=s.normalized;const a=s.itemSize;const l=n.get(s);if(void 0===l)continue;const c=l.buffer;const u=l.type;const h=l.bytesPerElement;if(s.isInterleavedBufferAttribute){const n=s.data;const l=n.stride;const d=s.offset;if(n&&n.isInstancedInterleavedBuffer){for(let e=0;e<r.locationSize;e++)enableAttributeAndDivisor(r.location+e,n.meshPerAttribute);true!==i.isInstancedMesh&&void 0===o._maxInstanceCount&&(o._maxInstanceCount=n.meshPerAttribute*n.count)}else for(let e=0;e<r.locationSize;e++)enableAttribute(r.location+e);e.bindBuffer(34962,c);for(let e=0;e<r.locationSize;e++)vertexAttribPointer(r.location+e,a/r.locationSize,u,t,l*h,(d+a/r.locationSize*e)*h)}else{if(s.isInstancedBufferAttribute){for(let e=0;e<r.locationSize;e++)enableAttributeAndDivisor(r.location+e,s.meshPerAttribute);true!==i.isInstancedMesh&&void 0===o._maxInstanceCount&&(o._maxInstanceCount=s.meshPerAttribute*s.count)}else for(let e=0;e<r.locationSize;e++)enableAttribute(r.location+e);e.bindBuffer(34962,c);for(let e=0;e<r.locationSize;e++)vertexAttribPointer(r.location+e,a/r.locationSize,u,t,a*h,a/r.locationSize*e*h)}}else if(void 0!==u){const n=u[t];if(void 0!==n)switch(n.length){case 2:e.vertexAttrib2fv(r.location,n);break;case 3:e.vertexAttrib3fv(r.location,n);break;case 4:e.vertexAttrib4fv(r.location,n);break;default:e.vertexAttrib1fv(r.location,n)}}}}disableUnusedAttributes()}function dispose(){reset();for(const e in o){const t=o[e];for(const e in t){const n=t[e];for(const e in n){deleteVertexArrayObject(n[e].object);delete n[e]}delete t[e]}delete o[e]}}function releaseStatesOfGeometry(e){if(void 0===o[e.id])return;const t=o[e.id];for(const e in t){const n=t[e];for(const e in n){deleteVertexArrayObject(n[e].object);delete n[e]}delete t[e]}delete o[e.id]}function releaseStatesOfProgram(e){for(const t in o){const n=o[t];if(void 0===n[e.id])continue;const r=n[e.id];for(const e in r){deleteVertexArrayObject(r[e].object);delete r[e]}delete n[e.id]}}function reset(){resetDefaultState();if(c!==l){c=l;bindVertexArrayObject(c.object)}}function resetDefaultState(){l.geometry=null;l.program=null;l.wireframe=false}return{setup:setup,reset:reset,resetDefaultState:resetDefaultState,dispose:dispose,releaseStatesOfGeometry:releaseStatesOfGeometry,releaseStatesOfProgram:releaseStatesOfProgram,initAttributes:initAttributes,enableAttribute:enableAttribute,disableUnusedAttributes:disableUnusedAttributes}}function WebGLBufferRenderer(e,t,n,r){const i=r.isWebGL2;let s;function setMode(e){s=e}function render(t,r){e.drawArrays(s,t,r);n.update(r,s,1)}function renderInstances(r,a,o){if(0===o)return;let l,c;if(i){l=e;c=\"drawArraysInstanced\"}else{l=t.get(\"ANGLE_instanced_arrays\");c=\"drawArraysInstancedANGLE\";if(null===l){console.error(\"THREE.WebGLBufferRenderer: using THREE.InstancedBufferGeometry but hardware does not support extension ANGLE_instanced_arrays.\");return}}l[c](s,r,a,o);n.update(a,s,o)}this.setMode=setMode;this.render=render;this.renderInstances=renderInstances}function WebGLCapabilities(e,t,n){let r;function getMaxAnisotropy(){if(void 0!==r)return r;if(true===t.has(\"EXT_texture_filter_anisotropic\")){const n=t.get(\"EXT_texture_filter_anisotropic\");r=e.getParameter(n.MAX_TEXTURE_MAX_ANISOTROPY_EXT)}else r=0;return r}function getMaxPrecision(t){if(\"highp\"===t){if(e.getShaderPrecisionFormat(35633,36338).precision>0&&e.getShaderPrecisionFormat(35632,36338).precision>0)return\"highp\";t=\"mediump\"}return\"mediump\"===t&&e.getShaderPrecisionFormat(35633,36337).precision>0&&e.getShaderPrecisionFormat(35632,36337).precision>0?\"mediump\":\"lowp\"}const i=\"undefined\"!==typeof WebGL2RenderingContext&&e instanceof WebGL2RenderingContext||\"undefined\"!==typeof WebGL2ComputeRenderingContext&&e instanceof WebGL2ComputeRenderingContext;let s=void 0!==n.precision?n.precision:\"highp\";const a=getMaxPrecision(s);if(a!==s){console.warn(\"THREE.WebGLRenderer:\",s,\"not supported, using\",a,\"instead.\");s=a}const o=i||t.has(\"WEBGL_draw_buffers\");const l=true===n.logarithmicDepthBuffer;const c=e.getParameter(34930);const u=e.getParameter(35660);const h=e.getParameter(3379);const d=e.getParameter(34076);const p=e.getParameter(34921);const f=e.getParameter(36347);const m=e.getParameter(36348);const g=e.getParameter(36349);const y=u>0;const x=i||t.has(\"OES_texture_float\");const b=y&&x;const _=i?e.getParameter(36183):0;return{isWebGL2:i,drawBuffers:o,getMaxAnisotropy:getMaxAnisotropy,getMaxPrecision:getMaxPrecision,precision:s,logarithmicDepthBuffer:l,maxTextures:c,maxVertexTextures:u,maxTextureSize:h,maxCubemapSize:d,maxAttributes:p,maxVertexUniforms:f,maxVaryings:m,maxFragmentUniforms:g,vertexTextures:y,floatFragmentTextures:x,floatVertexTextures:b,maxSamples:_}}function WebGLClipping(e){const t=this;let n=null,r=0,i=false,s=false;const a=new Plane,o=new Matrix3,l={value:null,needsUpdate:false};this.uniform=l;this.numPlanes=0;this.numIntersection=0;this.init=function(e,t,s){const a=0!==e.length||t||0!==r||i;i=t;n=projectPlanes(e,s,0);r=e.length;return a};this.beginShadows=function(){s=true;projectPlanes(null)};this.endShadows=function(){s=false;resetGlobalState()};this.setState=function(t,a,o){const c=t.clippingPlanes,u=t.clipIntersection,h=t.clipShadows;const d=e.get(t);if(!i||null===c||0===c.length||s&&!h)s?projectPlanes(null):resetGlobalState();else{const e=s?0:r,t=4*e;let i=d.clippingState||null;l.value=i;i=projectPlanes(c,a,t,o);for(let e=0;e!==t;++e)i[e]=n[e];d.clippingState=i;this.numIntersection=u?this.numPlanes:0;this.numPlanes+=e}};function resetGlobalState(){if(l.value!==n){l.value=n;l.needsUpdate=r>0}t.numPlanes=r;t.numIntersection=0}function projectPlanes(e,n,r,i){const s=null!==e?e.length:0;let c=null;if(0!==s){c=l.value;if(true!==i||null===c){const t=r+4*s,i=n.matrixWorldInverse;o.getNormalMatrix(i);(null===c||c.length<t)&&(c=new Float32Array(t));for(let t=0,n=r;t!==s;++t,n+=4){a.copy(e[t]).applyMatrix4(i,o);a.normal.toArray(c,n);c[n+3]=a.constant}}l.value=c;l.needsUpdate=true}t.numPlanes=s;t.numIntersection=0;return c}}function WebGLCubeMaps(e){let t=new WeakMap;function mapTextureMapping(e,t){t===se?e.mapping=re:t===ae&&(e.mapping=ie);return e}function get(n){if(n&&n.isTexture&&false===n.isRenderTargetTexture){const r=n.mapping;if(r===se||r===ae){if(t.has(n)){const e=t.get(n).texture;return mapTextureMapping(e,n.mapping)}{const r=n.image;if(r&&r.height>0){const i=e.getRenderTarget();const s=new WebGLCubeRenderTarget(r.height/2);s.fromEquirectangularTexture(e,n);t.set(n,s);e.setRenderTarget(i);n.addEventListener(\"dispose\",onTextureDispose);return mapTextureMapping(s.texture,n.mapping)}return null}}}return n}function onTextureDispose(e){const n=e.target;n.removeEventListener(\"dispose\",onTextureDispose);const r=t.get(n);if(void 0!==r){t.delete(n);r.dispose()}}function dispose(){t=new WeakMap}return{get:get,dispose:dispose}}class OrthographicCamera extends Camera{constructor(e=-1,t=1,n=1,r=-1,i=.1,s=2e3){super();this.type=\"OrthographicCamera\";this.zoom=1;this.view=null;this.left=e;this.right=t;this.top=n;this.bottom=r;this.near=i;this.far=s;this.updateProjectionMatrix()}copy(e,t){super.copy(e,t);this.left=e.left;this.right=e.right;this.top=e.top;this.bottom=e.bottom;this.near=e.near;this.far=e.far;this.zoom=e.zoom;this.view=null===e.view?null:Object.assign({},e.view);return this}setViewOffset(e,t,n,r,i,s){null===this.view&&(this.view={enabled:true,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1});this.view.enabled=true;this.view.fullWidth=e;this.view.fullHeight=t;this.view.offsetX=n;this.view.offsetY=r;this.view.width=i;this.view.height=s;this.updateProjectionMatrix()}clearViewOffset(){null!==this.view&&(this.view.enabled=false);this.updateProjectionMatrix()}updateProjectionMatrix(){const e=(this.right-this.left)/(2*this.zoom);const t=(this.top-this.bottom)/(2*this.zoom);const n=(this.right+this.left)/2;const r=(this.top+this.bottom)/2;let i=n-e;let s=n+e;let a=r+t;let o=r-t;if(null!==this.view&&this.view.enabled){const e=(this.right-this.left)/this.view.fullWidth/this.zoom;const t=(this.top-this.bottom)/this.view.fullHeight/this.zoom;i+=e*this.view.offsetX;s=i+e*this.view.width;a-=t*this.view.offsetY;o=a-t*this.view.height}this.projectionMatrix.makeOrthographic(i,s,a,o,this.near,this.far);this.projectionMatrixInverse.copy(this.projectionMatrix).invert()}toJSON(e){const t=super.toJSON(e);t.object.zoom=this.zoom;t.object.left=this.left;t.object.right=this.right;t.object.top=this.top;t.object.bottom=this.bottom;t.object.near=this.near;t.object.far=this.far;null!==this.view&&(t.object.view=Object.assign({},this.view));return t}}OrthographicCamera.prototype.isOrthographicCamera=true;class RawShaderMaterial extends ShaderMaterial{constructor(e){super(e);this.type=\"RawShaderMaterial\"}}RawShaderMaterial.prototype.isRawShaderMaterial=true;const eo=4;const to=8;const no=Math.pow(2,to);const ro=[.125,.215,.35,.446,.526,.582];const io=to-eo+1+ro.length;const so=20;const ao={[Xt]:0,[Jt]:1};const oo=new OrthographicCamera;const{_lodPlanes:lo,_sizeLods:co,_sigmas:uo}=_createPlanes();const ho=new Color;let po=null;const fo=(1+Math.sqrt(5))/2;const mo=1/fo;const go=[new Vector3(1,1,1),new Vector3(-1,1,1),new Vector3(1,1,-1),new Vector3(-1,1,-1),new Vector3(0,fo,mo),new Vector3(0,fo,-mo),new Vector3(mo,0,fo),new Vector3(-mo,0,fo),new Vector3(fo,mo,0),new Vector3(-fo,mo,0)];class PMREMGenerator{constructor(e){this._renderer=e;this._pingPongRenderTarget=null;this._blurMaterial=_getBlurShader(so);this._equirectShader=null;this._cubemapShader=null;this._compileMaterial(this._blurMaterial)}fromScene(e,t=0,n=.1,r=100){po=this._renderer.getRenderTarget();const i=this._allocateTargets();this._sceneToCubeUV(e,n,r,i);t>0&&this._blur(i,0,0,t);this._applyPMREM(i);this._cleanup(i);return i}fromEquirectangular(e){return this._fromTexture(e)}fromCubemap(e){return this._fromTexture(e)}compileCubemapShader(){if(null===this._cubemapShader){this._cubemapShader=_getCubemapShader();this._compileMaterial(this._cubemapShader)}}compileEquirectangularShader(){if(null===this._equirectShader){this._equirectShader=_getEquirectShader();this._compileMaterial(this._equirectShader)}}dispose(){this._blurMaterial.dispose();null!==this._cubemapShader&&this._cubemapShader.dispose();null!==this._equirectShader&&this._equirectShader.dispose();for(let e=0;e<lo.length;e++)lo[e].dispose()}_cleanup(e){this._pingPongRenderTarget.dispose();this._renderer.setRenderTarget(po);e.scissorTest=false;_setViewport(e,0,0,e.width,e.height)}_fromTexture(e){po=this._renderer.getRenderTarget();const t=this._allocateTargets(e);this._textureToCubeUV(e,t);this._applyPMREM(t);this._cleanup(t);return t}_allocateTargets(e){const t={magFilter:ye,minFilter:ye,generateMipmaps:false,type:Ce,format:Ne,encoding:Xt,depthBuffer:false};const n=_createRenderTarget(t);n.depthBuffer=!e;this._pingPongRenderTarget=_createRenderTarget(t);return n}_compileMaterial(e){const t=new Mesh(lo[0],e);this._renderer.compile(t,oo)}_sceneToCubeUV(e,t,n,r){const i=90;const s=1;const a=new PerspectiveCamera(i,s,t,n);const o=[1,-1,1,1,1,1];const l=[1,1,1,-1,-1,-1];const c=this._renderer;const u=c.autoClear;const h=c.toneMapping;c.getClearColor(ho);c.toneMapping=Z;c.autoClear=false;const p=new MeshBasicMaterial({name:\"PMREM.Background\",side:d,depthWrite:false,depthTest:false});const f=new Mesh(new BoxGeometry,p);let m=false;const g=e.background;if(g){if(g.isColor){p.color.copy(g);e.background=null;m=true}}else{p.color.copy(ho);m=true}for(let t=0;t<6;t++){const n=t%3;if(0==n){a.up.set(0,o[t],0);a.lookAt(l[t],0,0)}else if(1==n){a.up.set(0,0,o[t]);a.lookAt(0,l[t],0)}else{a.up.set(0,o[t],0);a.lookAt(0,0,l[t])}_setViewport(r,n*no,t>2?no:0,no,no);c.setRenderTarget(r);m&&c.render(f,a);c.render(e,a)}f.geometry.dispose();f.material.dispose();c.toneMapping=h;c.autoClear=u;e.background=g}_setEncoding(e,t){true===this._renderer.capabilities.isWebGL2&&t.format===Ne&&t.type===Me&&t.encoding===Jt?e.value=ao[Xt]:e.value=ao[t.encoding]}_textureToCubeUV(e,t){const n=this._renderer;const r=e.mapping===re||e.mapping===ie;r?null==this._cubemapShader&&(this._cubemapShader=_getCubemapShader()):null==this._equirectShader&&(this._equirectShader=_getEquirectShader());const i=r?this._cubemapShader:this._equirectShader;const s=new Mesh(lo[0],i);const a=i.uniforms;a.envMap.value=e;r||a.texelSize.value.set(1/e.image.width,1/e.image.height);this._setEncoding(a.inputEncoding,e);_setViewport(t,0,0,3*no,2*no);n.setRenderTarget(t);n.render(s,oo)}_applyPMREM(e){const t=this._renderer;const n=t.autoClear;t.autoClear=false;for(let t=1;t<io;t++){const n=Math.sqrt(uo[t]*uo[t]-uo[t-1]*uo[t-1]);const r=go[(t-1)%go.length];this._blur(e,t-1,t,n,r)}t.autoClear=n}_blur(e,t,n,r,i){const s=this._pingPongRenderTarget;this._halfBlur(e,s,t,n,r,\"latitudinal\",i);this._halfBlur(s,e,n,n,r,\"longitudinal\",i)}_halfBlur(e,t,n,r,i,s,a){const o=this._renderer;const l=this._blurMaterial;\"latitudinal\"!==s&&\"longitudinal\"!==s&&console.error(\"blur direction must be either latitudinal or longitudinal!\");const c=3;const u=new Mesh(lo[r],l);const h=l.uniforms;const d=co[n]-1;const p=isFinite(i)?Math.PI/(2*d):2*Math.PI/(2*so-1);const f=i/p;const m=isFinite(i)?1+Math.floor(c*f):so;m>so&&console.warn(`sigmaRadians, ${i}, is too large and will clip, as it requested ${m} samples when the maximum is set to ${so}`);const g=[];let y=0;for(let e=0;e<so;++e){const t=e/f;const n=Math.exp(-t*t/2);g.push(n);0==e?y+=n:e<m&&(y+=2*n)}for(let e=0;e<g.length;e++)g[e]=g[e]/y;h.envMap.value=e.texture;h.samples.value=m;h.weights.value=g;h.latitudinal.value=\"latitudinal\"===s;a&&(h.poleAxis.value=a);h.dTheta.value=p;h.mipInt.value=to-n;const x=co[r];const b=3*Math.max(0,no-2*x);const _=(0===r?0:2*no)+2*x*(r>to-eo?r-to+eo:0);_setViewport(t,b,_,3*x,2*x);o.setRenderTarget(t);o.render(u,oo)}}function _createPlanes(){const e=[];const t=[];const n=[];let r=to;for(let i=0;i<io;i++){const s=Math.pow(2,r);t.push(s);let a=1/s;i>to-eo?a=ro[i-to+eo-1]:0==i&&(a=0);n.push(a);const o=1/(s-1);const l=-o/2;const c=1+o/2;const u=[l,l,c,l,c,c,l,l,c,c,l,c];const h=6;const d=6;const p=3;const f=2;const m=1;const g=new Float32Array(p*d*h);const y=new Float32Array(f*d*h);const x=new Float32Array(m*d*h);for(let e=0;e<h;e++){const t=e%3*2/3-1;const n=e>2?0:-1;const r=[t,n,0,t+2/3,n,0,t+2/3,n+1,0,t,n,0,t+2/3,n+1,0,t,n+1,0];g.set(r,p*d*e);y.set(u,f*d*e);const i=[e,e,e,e,e,e];x.set(i,m*d*e)}const b=new BufferGeometry;b.setAttribute(\"position\",new BufferAttribute(g,p));b.setAttribute(\"uv\",new BufferAttribute(y,f));b.setAttribute(\"faceIndex\",new BufferAttribute(x,m));e.push(b);r>eo&&r--}return{_lodPlanes:e,_sizeLods:t,_sigmas:n}}function _createRenderTarget(e){const t=new WebGLRenderTarget(3*no,3*no,e);t.texture.mapping=oe;t.texture.name=\"PMREM.cubeUv\";t.scissorTest=true;return t}function _setViewport(e,t,n,r,i){e.viewport.set(t,n,r,i);e.scissor.set(t,n,r,i)}function _getBlurShader(e){const t=new Float32Array(e);const n=new Vector3(0,1,0);const r=new RawShaderMaterial({name:\"SphericalGaussianBlur\",defines:{n:e},uniforms:{envMap:{value:null},samples:{value:1},weights:{value:t},latitudinal:{value:false},dTheta:{value:0},mipInt:{value:0},poleAxis:{value:n}},vertexShader:_getCommonVertexShader(),fragmentShader:`\\n\\n\\t\\t\\tprecision mediump float;\\n\\t\\t\\tprecision mediump int;\\n\\n\\t\\t\\tvarying vec3 vOutputDirection;\\n\\n\\t\\t\\tuniform sampler2D envMap;\\n\\t\\t\\tuniform int samples;\\n\\t\\t\\tuniform float weights[ n ];\\n\\t\\t\\tuniform bool latitudinal;\\n\\t\\t\\tuniform float dTheta;\\n\\t\\t\\tuniform float mipInt;\\n\\t\\t\\tuniform vec3 poleAxis;\\n\\n\\t\\t\\t${_getEncodings()}\\n\\n\\t\\t\\t#define ENVMAP_TYPE_CUBE_UV\\n\\t\\t\\t#include <cube_uv_reflection_fragment>\\n\\n\\t\\t\\tvec3 getSample( float theta, vec3 axis ) {\\n\\n\\t\\t\\t\\tfloat cosTheta = cos( theta );\\n\\t\\t\\t\\t// Rodrigues' axis-angle rotation\\n\\t\\t\\t\\tvec3 sampleDirection = vOutputDirection * cosTheta\\n\\t\\t\\t\\t\\t+ cross( axis, vOutputDirection ) * sin( theta )\\n\\t\\t\\t\\t\\t+ axis * dot( axis, vOutputDirection ) * ( 1.0 - cosTheta );\\n\\n\\t\\t\\t\\treturn bilinearCubeUV( envMap, sampleDirection, mipInt );\\n\\n\\t\\t\\t}\\n\\n\\t\\t\\tvoid main() {\\n\\n\\t\\t\\t\\tvec3 axis = latitudinal ? poleAxis : cross( poleAxis, vOutputDirection );\\n\\n\\t\\t\\t\\tif ( all( equal( axis, vec3( 0.0 ) ) ) ) {\\n\\n\\t\\t\\t\\t\\taxis = vec3( vOutputDirection.z, 0.0, - vOutputDirection.x );\\n\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\taxis = normalize( axis );\\n\\n\\t\\t\\t\\tgl_FragColor = vec4( 0.0, 0.0, 0.0, 1.0 );\\n\\t\\t\\t\\tgl_FragColor.rgb += weights[ 0 ] * getSample( 0.0, axis );\\n\\n\\t\\t\\t\\tfor ( int i = 1; i < n; i++ ) {\\n\\n\\t\\t\\t\\t\\tif ( i >= samples ) {\\n\\n\\t\\t\\t\\t\\t\\tbreak;\\n\\n\\t\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\t\\tfloat theta = dTheta * float( i );\\n\\t\\t\\t\\t\\tgl_FragColor.rgb += weights[ i ] * getSample( -1.0 * theta, axis );\\n\\t\\t\\t\\t\\tgl_FragColor.rgb += weights[ i ] * getSample( theta, axis );\\n\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t}\\n\\t\\t`,blending:g,depthTest:false,depthWrite:false});return r}function _getEquirectShader(){const e=new Vector2(1,1);const t=new RawShaderMaterial({name:\"EquirectangularToCubeUV\",uniforms:{envMap:{value:null},texelSize:{value:e},inputEncoding:{value:ao[Xt]}},vertexShader:_getCommonVertexShader(),fragmentShader:`\\n\\n\\t\\t\\tprecision mediump float;\\n\\t\\t\\tprecision mediump int;\\n\\n\\t\\t\\tvarying vec3 vOutputDirection;\\n\\n\\t\\t\\tuniform sampler2D envMap;\\n\\t\\t\\tuniform vec2 texelSize;\\n\\n\\t\\t\\t${_getEncodings()}\\n\\n\\t\\t\\t#include <common>\\n\\n\\t\\t\\tvoid main() {\\n\\n\\t\\t\\t\\tgl_FragColor = vec4( 0.0, 0.0, 0.0, 1.0 );\\n\\n\\t\\t\\t\\tvec3 outputDirection = normalize( vOutputDirection );\\n\\t\\t\\t\\tvec2 uv = equirectUv( outputDirection );\\n\\n\\t\\t\\t\\tvec2 f = fract( uv / texelSize - 0.5 );\\n\\t\\t\\t\\tuv -= f * texelSize;\\n\\t\\t\\t\\tvec3 tl = envMapTexelToLinear( texture2D ( envMap, uv ) ).rgb;\\n\\t\\t\\t\\tuv.x += texelSize.x;\\n\\t\\t\\t\\tvec3 tr = envMapTexelToLinear( texture2D ( envMap, uv ) ).rgb;\\n\\t\\t\\t\\tuv.y += texelSize.y;\\n\\t\\t\\t\\tvec3 br = envMapTexelToLinear( texture2D ( envMap, uv ) ).rgb;\\n\\t\\t\\t\\tuv.x -= texelSize.x;\\n\\t\\t\\t\\tvec3 bl = envMapTexelToLinear( texture2D ( envMap, uv ) ).rgb;\\n\\n\\t\\t\\t\\tvec3 tm = mix( tl, tr, f.x );\\n\\t\\t\\t\\tvec3 bm = mix( bl, br, f.x );\\n\\t\\t\\t\\tgl_FragColor.rgb = mix( tm, bm, f.y );\\n\\n\\t\\t\\t}\\n\\t\\t`,blending:g,depthTest:false,depthWrite:false});return t}function _getCubemapShader(){const e=new RawShaderMaterial({name:\"CubemapToCubeUV\",uniforms:{envMap:{value:null},inputEncoding:{value:ao[Xt]}},vertexShader:_getCommonVertexShader(),fragmentShader:`\\n\\n\\t\\t\\tprecision mediump float;\\n\\t\\t\\tprecision mediump int;\\n\\n\\t\\t\\tvarying vec3 vOutputDirection;\\n\\n\\t\\t\\tuniform samplerCube envMap;\\n\\n\\t\\t\\t${_getEncodings()}\\n\\n\\t\\t\\tvoid main() {\\n\\n\\t\\t\\t\\tgl_FragColor = envMapTexelToLinear( textureCube( envMap, vec3( - vOutputDirection.x, vOutputDirection.yz ) ) );\\n\\n\\t\\t\\t}\\n\\t\\t`,blending:g,depthTest:false,depthWrite:false});return e}function _getCommonVertexShader(){return\"\\n\\n\\t\\tprecision mediump float;\\n\\t\\tprecision mediump int;\\n\\n\\t\\tattribute vec3 position;\\n\\t\\tattribute vec2 uv;\\n\\t\\tattribute float faceIndex;\\n\\n\\t\\tvarying vec3 vOutputDirection;\\n\\n\\t\\t// RH coordinate system; PMREM face-indexing convention\\n\\t\\tvec3 getDirection( vec2 uv, float face ) {\\n\\n\\t\\t\\tuv = 2.0 * uv - 1.0;\\n\\n\\t\\t\\tvec3 direction = vec3( uv, 1.0 );\\n\\n\\t\\t\\tif ( face == 0.0 ) {\\n\\n\\t\\t\\t\\tdirection = direction.zyx; // ( 1, v, u ) pos x\\n\\n\\t\\t\\t} else if ( face == 1.0 ) {\\n\\n\\t\\t\\t\\tdirection = direction.xzy;\\n\\t\\t\\t\\tdirection.xz *= -1.0; // ( -u, 1, -v ) pos y\\n\\n\\t\\t\\t} else if ( face == 2.0 ) {\\n\\n\\t\\t\\t\\tdirection.x *= -1.0; // ( -u, v, 1 ) pos z\\n\\n\\t\\t\\t} else if ( face == 3.0 ) {\\n\\n\\t\\t\\t\\tdirection = direction.zyx;\\n\\t\\t\\t\\tdirection.xz *= -1.0; // ( -1, v, -u ) neg x\\n\\n\\t\\t\\t} else if ( face == 4.0 ) {\\n\\n\\t\\t\\t\\tdirection = direction.xzy;\\n\\t\\t\\t\\tdirection.xy *= -1.0; // ( -u, -1, v ) neg y\\n\\n\\t\\t\\t} else if ( face == 5.0 ) {\\n\\n\\t\\t\\t\\tdirection.z *= -1.0; // ( u, v, -1 ) neg z\\n\\n\\t\\t\\t}\\n\\n\\t\\t\\treturn direction;\\n\\n\\t\\t}\\n\\n\\t\\tvoid main() {\\n\\n\\t\\t\\tvOutputDirection = getDirection( uv, faceIndex );\\n\\t\\t\\tgl_Position = vec4( position, 1.0 );\\n\\n\\t\\t}\\n\\t\"}function _getEncodings(){return\"\\n\\n\\t\\tuniform int inputEncoding;\\n\\n\\t\\t#include <encodings_pars_fragment>\\n\\n\\t\\tvec4 inputTexelToLinear( vec4 value ) {\\n\\n\\t\\t\\tif ( inputEncoding == 0 ) {\\n\\n\\t\\t\\t\\treturn value;\\n\\n\\t\\t\\t} else {\\n\\n\\t\\t\\t\\treturn sRGBToLinear( value );\\n\\n\\t\\t\\t}\\n\\n\\t\\t}\\n\\n\\t\\tvec4 envMapTexelToLinear( vec4 color ) {\\n\\n\\t\\t\\treturn inputTexelToLinear( color );\\n\\n\\t\\t}\\n\\t\"}function WebGLCubeUVMaps(e){let t=new WeakMap;let n=null;function get(r){if(r&&r.isTexture&&false===r.isRenderTargetTexture){const i=r.mapping;const s=i===se||i===ae;const a=i===re||i===ie;if(s||a){if(t.has(r))return t.get(r).texture;{const i=r.image;if(s&&i&&i.height>0||a&&i&&isCubeTextureComplete(i)){const i=e.getRenderTarget();null===n&&(n=new PMREMGenerator(e));const a=s?n.fromEquirectangular(r):n.fromCubemap(r);t.set(r,a);e.setRenderTarget(i);r.addEventListener(\"dispose\",onTextureDispose);return a.texture}return null}}}return r}function isCubeTextureComplete(e){let t=0;const n=6;for(let r=0;r<n;r++)void 0!==e[r]&&t++;return t===n}function onTextureDispose(e){const n=e.target;n.removeEventListener(\"dispose\",onTextureDispose);const r=t.get(n);if(void 0!==r){t.delete(n);r.dispose()}}function dispose(){t=new WeakMap;if(null!==n){n.dispose();n=null}}return{get:get,dispose:dispose}}function WebGLExtensions(e){const t={};function getExtension(n){if(void 0!==t[n])return t[n];let r;switch(n){case\"WEBGL_depth_texture\":r=e.getExtension(\"WEBGL_depth_texture\")||e.getExtension(\"MOZ_WEBGL_depth_texture\")||e.getExtension(\"WEBKIT_WEBGL_depth_texture\");break;case\"EXT_texture_filter_anisotropic\":r=e.getExtension(\"EXT_texture_filter_anisotropic\")||e.getExtension(\"MOZ_EXT_texture_filter_anisotropic\")||e.getExtension(\"WEBKIT_EXT_texture_filter_anisotropic\");break;case\"WEBGL_compressed_texture_s3tc\":r=e.getExtension(\"WEBGL_compressed_texture_s3tc\")||e.getExtension(\"MOZ_WEBGL_compressed_texture_s3tc\")||e.getExtension(\"WEBKIT_WEBGL_compressed_texture_s3tc\");break;case\"WEBGL_compressed_texture_pvrtc\":r=e.getExtension(\"WEBGL_compressed_texture_pvrtc\")||e.getExtension(\"WEBKIT_WEBGL_compressed_texture_pvrtc\");break;default:r=e.getExtension(n)}t[n]=r;return r}return{has:function(e){return null!==getExtension(e)},init:function(e){if(e.isWebGL2)getExtension(\"EXT_color_buffer_float\");else{getExtension(\"WEBGL_depth_texture\");getExtension(\"OES_texture_float\");getExtension(\"OES_texture_half_float\");getExtension(\"OES_texture_half_float_linear\");getExtension(\"OES_standard_derivatives\");getExtension(\"OES_element_index_uint\");getExtension(\"OES_vertex_array_object\");getExtension(\"ANGLE_instanced_arrays\")}getExtension(\"OES_texture_float_linear\");getExtension(\"EXT_color_buffer_half_float\");getExtension(\"WEBGL_multisampled_render_to_texture\")},get:function(e){const t=getExtension(e);null===t&&console.warn(\"THREE.WebGLRenderer: \"+e+\" extension not supported.\");return t}}}function WebGLGeometries(e,t,n,r){const i={};const s=new WeakMap;function onGeometryDispose(e){const a=e.target;null!==a.index&&t.remove(a.index);for(const e in a.attributes)t.remove(a.attributes[e]);a.removeEventListener(\"dispose\",onGeometryDispose);delete i[a.id];const o=s.get(a);if(o){t.remove(o);s.delete(a)}r.releaseStatesOfGeometry(a);true===a.isInstancedBufferGeometry&&delete a._maxInstanceCount;n.memory.geometries--}function get(e,t){if(true===i[t.id])return t;t.addEventListener(\"dispose\",onGeometryDispose);i[t.id]=true;n.memory.geometries++;return t}function update(e){const n=e.attributes;for(const e in n)t.update(n[e],34962);const r=e.morphAttributes;for(const e in r){const n=r[e];for(let e=0,r=n.length;e<r;e++)t.update(n[e],34962)}}function updateWireframeAttribute(e){const n=[];const r=e.index;const i=e.attributes.position;let a=0;if(null!==r){const e=r.array;a=r.version;for(let t=0,r=e.length;t<r;t+=3){const r=e[t+0];const i=e[t+1];const s=e[t+2];n.push(r,i,i,s,s,r)}}else{const e=i.array;a=i.version;for(let t=0,r=e.length/3-1;t<r;t+=3){const e=t+0;const r=t+1;const i=t+2;n.push(e,r,r,i,i,e)}}const o=new(arrayMax(n)>65535?Uint32BufferAttribute:Uint16BufferAttribute)(n,1);o.version=a;const l=s.get(e);l&&t.remove(l);s.set(e,o)}function getWireframeAttribute(e){const t=s.get(e);if(t){const n=e.index;null!==n&&t.version<n.version&&updateWireframeAttribute(e)}else updateWireframeAttribute(e);return s.get(e)}return{get:get,update:update,getWireframeAttribute:getWireframeAttribute}}function WebGLIndexedBufferRenderer(e,t,n,r){const i=r.isWebGL2;let s;function setMode(e){s=e}let a,o;function setIndex(e){a=e.type;o=e.bytesPerElement}function render(t,r){e.drawElements(s,r,a,t*o);n.update(r,s,1)}function renderInstances(r,l,c){if(0===c)return;let u,h;if(i){u=e;h=\"drawElementsInstanced\"}else{u=t.get(\"ANGLE_instanced_arrays\");h=\"drawElementsInstancedANGLE\";if(null===u){console.error(\"THREE.WebGLIndexedBufferRenderer: using THREE.InstancedBufferGeometry but hardware does not support extension ANGLE_instanced_arrays.\");return}}u[h](s,l,a,r*o,c);n.update(l,s,c)}this.setMode=setMode;this.setIndex=setIndex;this.render=render;this.renderInstances=renderInstances}function WebGLInfo(e){const t={geometries:0,textures:0};const n={frame:0,calls:0,triangles:0,points:0,lines:0};function update(e,t,r){n.calls++;switch(t){case 4:n.triangles+=r*(e/3);break;case 1:n.lines+=r*(e/2);break;case 3:n.lines+=r*(e-1);break;case 2:n.lines+=r*e;break;case 0:n.points+=r*e;break;default:console.error(\"THREE.WebGLInfo: Unknown draw mode:\",t);break}}function reset(){n.frame++;n.calls=0;n.triangles=0;n.points=0;n.lines=0}return{memory:t,render:n,programs:null,autoReset:true,reset:reset,update:update}}class DataTexture2DArray extends Texture{constructor(e=null,t=1,n=1,r=1){super(null);this.image={data:e,width:t,height:n,depth:r};this.magFilter=de;this.minFilter=de;this.wrapR=ue;this.generateMipmaps=false;this.flipY=false;this.unpackAlignment=1}}DataTexture2DArray.prototype.isDataTexture2DArray=true;function numericalSort(e,t){return e[0]-t[0]}function absNumericalSort(e,t){return Math.abs(t[1])-Math.abs(e[1])}function denormalize(e,t){let n=1;const r=t.isInterleavedBufferAttribute?t.data.array:t.array;r instanceof Int8Array?n=127:r instanceof Int16Array?n=32767:r instanceof Int32Array?n=2147483647:console.error(\"THREE.WebGLMorphtargets: Unsupported morph attribute data type: \",r);e.divideScalar(n)}function WebGLMorphtargets(e,t,n){const r={};const i=new Float32Array(8);const s=new WeakMap;const a=new Vector3;const o=[];for(let e=0;e<8;e++)o[e]=[e,0];function update(l,c,u,h){const d=l.morphTargetInfluences;if(true===t.isWebGL2){const r=c.morphAttributes.position.length;let i=s.get(c);if(void 0===i||i.count!==r){void 0!==i&&i.texture.dispose();const e=void 0!==c.morphAttributes.normal;const n=c.morphAttributes.position;const o=c.morphAttributes.normal||[];const l=c.attributes.position.count;const u=true===e?2:1;let h=l*u;let d=1;if(h>t.maxTextureSize){d=Math.ceil(h/t.maxTextureSize);h=t.maxTextureSize}const p=new Float32Array(h*d*4*r);const f=new DataTexture2DArray(p,h,d,r);f.format=Ne;f.type=Le;f.needsUpdate=true;const m=4*u;for(let t=0;t<r;t++){const r=n[t];const i=o[t];const s=h*d*4*t;for(let t=0;t<r.count;t++){a.fromBufferAttribute(r,t);true===r.normalized&&denormalize(a,r);const n=t*m;p[s+n+0]=a.x;p[s+n+1]=a.y;p[s+n+2]=a.z;p[s+n+3]=0;if(true===e){a.fromBufferAttribute(i,t);true===i.normalized&&denormalize(a,i);p[s+n+4]=a.x;p[s+n+5]=a.y;p[s+n+6]=a.z;p[s+n+7]=0}}}i={count:r,texture:f,size:new Vector2(h,d)};s.set(c,i)}let o=0;for(let e=0;e<d.length;e++)o+=d[e];const l=c.morphTargetsRelative?1:1-o;h.getUniforms().setValue(e,\"morphTargetBaseInfluence\",l);h.getUniforms().setValue(e,\"morphTargetInfluences\",d);h.getUniforms().setValue(e,\"morphTargetsTexture\",i.texture,n);h.getUniforms().setValue(e,\"morphTargetsTextureSize\",i.size)}else{const t=void 0===d?0:d.length;let n=r[c.id];if(void 0===n||n.length!==t){n=[];for(let e=0;e<t;e++)n[e]=[e,0];r[c.id]=n}for(let e=0;e<t;e++){const t=n[e];t[0]=e;t[1]=d[e]}n.sort(absNumericalSort);for(let e=0;e<8;e++)if(e<t&&n[e][1]){o[e][0]=n[e][0];o[e][1]=n[e][1]}else{o[e][0]=Number.MAX_SAFE_INTEGER;o[e][1]=0}o.sort(numericalSort);const s=c.morphAttributes.position;const a=c.morphAttributes.normal;let l=0;for(let e=0;e<8;e++){const t=o[e];const n=t[0];const r=t[1];if(n!==Number.MAX_SAFE_INTEGER&&r){s&&c.getAttribute(\"morphTarget\"+e)!==s[n]&&c.setAttribute(\"morphTarget\"+e,s[n]);a&&c.getAttribute(\"morphNormal\"+e)!==a[n]&&c.setAttribute(\"morphNormal\"+e,a[n]);i[e]=r;l+=r}else{s&&true===c.hasAttribute(\"morphTarget\"+e)&&c.deleteAttribute(\"morphTarget\"+e);a&&true===c.hasAttribute(\"morphNormal\"+e)&&c.deleteAttribute(\"morphNormal\"+e);i[e]=0}}const u=c.morphTargetsRelative?1:1-l;h.getUniforms().setValue(e,\"morphTargetBaseInfluence\",u);h.getUniforms().setValue(e,\"morphTargetInfluences\",i)}}return{update:update}}function WebGLObjects(e,t,n,r){let i=new WeakMap;function update(e){const s=r.render.frame;const a=e.geometry;const o=t.get(e,a);if(i.get(o)!==s){t.update(o);i.set(o,s)}if(e.isInstancedMesh){false===e.hasEventListener(\"dispose\",onInstancedMeshDispose)&&e.addEventListener(\"dispose\",onInstancedMeshDispose);n.update(e.instanceMatrix,34962);null!==e.instanceColor&&n.update(e.instanceColor,34962)}return o}function dispose(){i=new WeakMap}function onInstancedMeshDispose(e){const t=e.target;t.removeEventListener(\"dispose\",onInstancedMeshDispose);n.remove(t.instanceMatrix);null!==t.instanceColor&&n.remove(t.instanceColor)}return{update:update,dispose:dispose}}class DataTexture3D extends Texture{constructor(e=null,t=1,n=1,r=1){super(null);this.image={data:e,width:t,height:n,depth:r};this.magFilter=de;this.minFilter=de;this.wrapR=ue;this.generateMipmaps=false;this.flipY=false;this.unpackAlignment=1}}DataTexture3D.prototype.isDataTexture3D=true;const yo=new Texture;const vo=new DataTexture2DArray;const xo=new DataTexture3D;const bo=new CubeTexture;const _o=[];const Mo=[];const wo=new Float32Array(16);const So=new Float32Array(9);const To=new Float32Array(4);function flatten(e,t,n){const r=e[0];if(r<=0||r>0)return e;const i=t*n;let s=_o[i];if(void 0===s){s=new Float32Array(i);_o[i]=s}if(0!==t){r.toArray(s,0);for(let r=1,i=0;r!==t;++r){i+=n;e[r].toArray(s,i)}}return s}function arraysEqual(e,t){if(e.length!==t.length)return false;for(let n=0,r=e.length;n<r;n++)if(e[n]!==t[n])return false;return true}function copyArray(e,t){for(let n=0,r=t.length;n<r;n++)e[n]=t[n]}function allocTexUnits(e,t){let n=Mo[t];if(void 0===n){n=new Int32Array(t);Mo[t]=n}for(let r=0;r!==t;++r)n[r]=e.allocateTextureUnit();return n}function setValueV1f(e,t){const n=this.cache;if(n[0]!==t){e.uniform1f(this.addr,t);n[0]=t}}function setValueV2f(e,t){const n=this.cache;if(void 0!==t.x){if(n[0]!==t.x||n[1]!==t.y){e.uniform2f(this.addr,t.x,t.y);n[0]=t.x;n[1]=t.y}}else{if(arraysEqual(n,t))return;e.uniform2fv(this.addr,t);copyArray(n,t)}}function setValueV3f(e,t){const n=this.cache;if(void 0!==t.x){if(n[0]!==t.x||n[1]!==t.y||n[2]!==t.z){e.uniform3f(this.addr,t.x,t.y,t.z);n[0]=t.x;n[1]=t.y;n[2]=t.z}}else if(void 0!==t.r){if(n[0]!==t.r||n[1]!==t.g||n[2]!==t.b){e.uniform3f(this.addr,t.r,t.g,t.b);n[0]=t.r;n[1]=t.g;n[2]=t.b}}else{if(arraysEqual(n,t))return;e.uniform3fv(this.addr,t);copyArray(n,t)}}function setValueV4f(e,t){const n=this.cache;if(void 0!==t.x){if(n[0]!==t.x||n[1]!==t.y||n[2]!==t.z||n[3]!==t.w){e.uniform4f(this.addr,t.x,t.y,t.z,t.w);n[0]=t.x;n[1]=t.y;n[2]=t.z;n[3]=t.w}}else{if(arraysEqual(n,t))return;e.uniform4fv(this.addr,t);copyArray(n,t)}}function setValueM2(e,t){const n=this.cache;const r=t.elements;if(void 0===r){if(arraysEqual(n,t))return;e.uniformMatrix2fv(this.addr,false,t);copyArray(n,t)}else{if(arraysEqual(n,r))return;To.set(r);e.uniformMatrix2fv(this.addr,false,To);copyArray(n,r)}}function setValueM3(e,t){const n=this.cache;const r=t.elements;if(void 0===r){if(arraysEqual(n,t))return;e.uniformMatrix3fv(this.addr,false,t);copyArray(n,t)}else{if(arraysEqual(n,r))return;So.set(r);e.uniformMatrix3fv(this.addr,false,So);copyArray(n,r)}}function setValueM4(e,t){const n=this.cache;const r=t.elements;if(void 0===r){if(arraysEqual(n,t))return;e.uniformMatrix4fv(this.addr,false,t);copyArray(n,t)}else{if(arraysEqual(n,r))return;wo.set(r);e.uniformMatrix4fv(this.addr,false,wo);copyArray(n,r)}}function setValueV1i(e,t){const n=this.cache;if(n[0]!==t){e.uniform1i(this.addr,t);n[0]=t}}function setValueV2i(e,t){const n=this.cache;if(!arraysEqual(n,t)){e.uniform2iv(this.addr,t);copyArray(n,t)}}function setValueV3i(e,t){const n=this.cache;if(!arraysEqual(n,t)){e.uniform3iv(this.addr,t);copyArray(n,t)}}function setValueV4i(e,t){const n=this.cache;if(!arraysEqual(n,t)){e.uniform4iv(this.addr,t);copyArray(n,t)}}function setValueV1ui(e,t){const n=this.cache;if(n[0]!==t){e.uniform1ui(this.addr,t);n[0]=t}}function setValueV2ui(e,t){const n=this.cache;if(!arraysEqual(n,t)){e.uniform2uiv(this.addr,t);copyArray(n,t)}}function setValueV3ui(e,t){const n=this.cache;if(!arraysEqual(n,t)){e.uniform3uiv(this.addr,t);copyArray(n,t)}}function setValueV4ui(e,t){const n=this.cache;if(!arraysEqual(n,t)){e.uniform4uiv(this.addr,t);copyArray(n,t)}}function setValueT1(e,t,n){const r=this.cache;const i=n.allocateTextureUnit();if(r[0]!==i){e.uniform1i(this.addr,i);r[0]=i}n.safeSetTexture2D(t||yo,i)}function setValueT3D1(e,t,n){const r=this.cache;const i=n.allocateTextureUnit();if(r[0]!==i){e.uniform1i(this.addr,i);r[0]=i}n.setTexture3D(t||xo,i)}function setValueT6(e,t,n){const r=this.cache;const i=n.allocateTextureUnit();if(r[0]!==i){e.uniform1i(this.addr,i);r[0]=i}n.safeSetTextureCube(t||bo,i)}function setValueT2DArray1(e,t,n){const r=this.cache;const i=n.allocateTextureUnit();if(r[0]!==i){e.uniform1i(this.addr,i);r[0]=i}n.setTexture2DArray(t||vo,i)}function getSingularSetter(e){switch(e){case 5126:return setValueV1f;case 35664:return setValueV2f;case 35665:return setValueV3f;case 35666:return setValueV4f;case 35674:return setValueM2;case 35675:return setValueM3;case 35676:return setValueM4;case 5124:case 35670:return setValueV1i;case 35667:case 35671:return setValueV2i;case 35668:case 35672:return setValueV3i;case 35669:case 35673:return setValueV4i;case 5125:return setValueV1ui;case 36294:return setValueV2ui;case 36295:return setValueV3ui;case 36296:return setValueV4ui;case 35678:case 36198:case 36298:case 36306:case 35682:return setValueT1;case 35679:case 36299:case 36307:return setValueT3D1;case 35680:case 36300:case 36308:case 36293:return setValueT6;case 36289:case 36303:case 36311:case 36292:return setValueT2DArray1}}function setValueV1fArray(e,t){e.uniform1fv(this.addr,t)}function setValueV2fArray(e,t){const n=flatten(t,this.size,2);e.uniform2fv(this.addr,n)}function setValueV3fArray(e,t){const n=flatten(t,this.size,3);e.uniform3fv(this.addr,n)}function setValueV4fArray(e,t){const n=flatten(t,this.size,4);e.uniform4fv(this.addr,n)}function setValueM2Array(e,t){const n=flatten(t,this.size,4);e.uniformMatrix2fv(this.addr,false,n)}function setValueM3Array(e,t){const n=flatten(t,this.size,9);e.uniformMatrix3fv(this.addr,false,n)}function setValueM4Array(e,t){const n=flatten(t,this.size,16);e.uniformMatrix4fv(this.addr,false,n)}function setValueV1iArray(e,t){e.uniform1iv(this.addr,t)}function setValueV2iArray(e,t){e.uniform2iv(this.addr,t)}function setValueV3iArray(e,t){e.uniform3iv(this.addr,t)}function setValueV4iArray(e,t){e.uniform4iv(this.addr,t)}function setValueV1uiArray(e,t){e.uniform1uiv(this.addr,t)}function setValueV2uiArray(e,t){e.uniform2uiv(this.addr,t)}function setValueV3uiArray(e,t){e.uniform3uiv(this.addr,t)}function setValueV4uiArray(e,t){e.uniform4uiv(this.addr,t)}function setValueT1Array(e,t,n){const r=t.length;const i=allocTexUnits(n,r);e.uniform1iv(this.addr,i);for(let e=0;e!==r;++e)n.safeSetTexture2D(t[e]||yo,i[e])}function setValueT3DArray(e,t,n){const r=t.length;const i=allocTexUnits(n,r);e.uniform1iv(this.addr,i);for(let e=0;e!==r;++e)n.setTexture3D(t[e]||xo,i[e])}function setValueT6Array(e,t,n){const r=t.length;const i=allocTexUnits(n,r);e.uniform1iv(this.addr,i);for(let e=0;e!==r;++e)n.safeSetTextureCube(t[e]||bo,i[e])}function setValueT2DArrayArray(e,t,n){const r=t.length;const i=allocTexUnits(n,r);e.uniform1iv(this.addr,i);for(let e=0;e!==r;++e)n.setTexture2DArray(t[e]||vo,i[e])}function getPureArraySetter(e){switch(e){case 5126:return setValueV1fArray;case 35664:return setValueV2fArray;case 35665:return setValueV3fArray;case 35666:return setValueV4fArray;case 35674:return setValueM2Array;case 35675:return setValueM3Array;case 35676:return setValueM4Array;case 5124:case 35670:return setValueV1iArray;case 35667:case 35671:return setValueV2iArray;case 35668:case 35672:return setValueV3iArray;case 35669:case 35673:return setValueV4iArray;case 5125:return setValueV1uiArray;case 36294:return setValueV2uiArray;case 36295:return setValueV3uiArray;case 36296:return setValueV4uiArray;case 35678:case 36198:case 36298:case 36306:case 35682:return setValueT1Array;case 35679:case 36299:case 36307:return setValueT3DArray;case 35680:case 36300:case 36308:case 36293:return setValueT6Array;case 36289:case 36303:case 36311:case 36292:return setValueT2DArrayArray}}function SingleUniform(e,t,n){this.id=e;this.addr=n;this.cache=[];this.setValue=getSingularSetter(t.type)}function PureArrayUniform(e,t,n){this.id=e;this.addr=n;this.cache=[];this.size=t.size;this.setValue=getPureArraySetter(t.type)}PureArrayUniform.prototype.updateCache=function(e){const t=this.cache;e instanceof Float32Array&&t.length!==e.length&&(this.cache=new Float32Array(e.length));copyArray(t,e)};function StructuredUniform(e){this.id=e;this.seq=[];this.map={}}StructuredUniform.prototype.setValue=function(e,t,n){const r=this.seq;for(let i=0,s=r.length;i!==s;++i){const s=r[i];s.setValue(e,t[s.id],n)}};const Eo=/(\\w+)(\\])?(\\[|\\.)?/g;function addUniform(e,t){e.seq.push(t);e.map[t.id]=t}function parseUniform(e,t,n){const r=e.name,i=r.length;Eo.lastIndex=0;while(true){const s=Eo.exec(r),a=Eo.lastIndex;let o=s[1];const l=\"]\"===s[2],c=s[3];l&&(o|=0);if(void 0===c||\"[\"===c&&a+2===i){addUniform(n,void 0===c?new SingleUniform(o,e,t):new PureArrayUniform(o,e,t));break}{const e=n.map;let t=e[o];if(void 0===t){t=new StructuredUniform(o);addUniform(n,t)}n=t}}}function WebGLUniforms(e,t){this.seq=[];this.map={};const n=e.getProgramParameter(t,35718);for(let r=0;r<n;++r){const n=e.getActiveUniform(t,r),i=e.getUniformLocation(t,n.name);parseUniform(n,i,this)}}WebGLUniforms.prototype.setValue=function(e,t,n,r){const i=this.map[t];void 0!==i&&i.setValue(e,n,r)};WebGLUniforms.prototype.setOptional=function(e,t,n){const r=t[n];void 0!==r&&this.setValue(e,n,r)};WebGLUniforms.upload=function(e,t,n,r){for(let i=0,s=t.length;i!==s;++i){const s=t[i],a=n[s.id];false!==a.needsUpdate&&s.setValue(e,a.value,r)}};WebGLUniforms.seqWithValue=function(e,t){const n=[];for(let r=0,i=e.length;r!==i;++r){const i=e[r];i.id in t&&n.push(i)}return n};function WebGLShader(e,t,n){const r=e.createShader(t);e.shaderSource(r,n);e.compileShader(r);return r}let Ao=0;function addLineNumbers(e){const t=e.split(\"\\n\");for(let e=0;e<t.length;e++)t[e]=e+1+\": \"+t[e];return t.join(\"\\n\")}function getEncodingComponents(e){switch(e){case Xt:return[\"Linear\",\"( value )\"];case Jt:return[\"sRGB\",\"( value )\"];default:console.warn(\"THREE.WebGLProgram: Unsupported encoding:\",e);return[\"Linear\",\"( value )\"]}}function getShaderErrors(e,t,n){const r=e.getShaderParameter(t,35713);const i=e.getShaderInfoLog(t).trim();return r&&\"\"===i?\"\":n.toUpperCase()+\"\\n\\n\"+i+\"\\n\\n\"+addLineNumbers(e.getShaderSource(t))}function getTexelDecodingFunction(e,t){const n=getEncodingComponents(t);return\"vec4 \"+e+\"( vec4 value ) { return \"+n[0]+\"ToLinear\"+n[1]+\"; }\"}function getTexelEncodingFunction(e,t){const n=getEncodingComponents(t);return\"vec4 \"+e+\"( vec4 value ) { return LinearTo\"+n[0]+n[1]+\"; }\"}function getToneMappingFunction(e,t){let n;switch(t){case Q:n=\"Linear\";break;case K:n=\"Reinhard\";break;case $:n=\"OptimizedCineon\";break;case ee:n=\"ACESFilmic\";break;case te:n=\"Custom\";break;default:console.warn(\"THREE.WebGLProgram: Unsupported toneMapping:\",t);n=\"Linear\"}return\"vec3 \"+e+\"( vec3 color ) { return \"+n+\"ToneMapping( color ); }\"}function generateExtensions(e){const t=[e.extensionDerivatives||e.envMapCubeUV||e.bumpMap||e.tangentSpaceNormalMap||e.clearcoatNormalMap||e.flatShading||\"physical\"===e.shaderID?\"#extension GL_OES_standard_derivatives : enable\":\"\",(e.extensionFragDepth||e.logarithmicDepthBuffer)&&e.rendererExtensionFragDepth?\"#extension GL_EXT_frag_depth : enable\":\"\",e.extensionDrawBuffers&&e.rendererExtensionDrawBuffers?\"#extension GL_EXT_draw_buffers : require\":\"\",(e.extensionShaderTextureLOD||e.envMap||e.transmission)&&e.rendererExtensionShaderTextureLod?\"#extension GL_EXT_shader_texture_lod : enable\":\"\"];return t.filter(filterEmptyLine).join(\"\\n\")}function generateDefines(e){const t=[];for(const n in e){const r=e[n];false!==r&&t.push(\"#define \"+n+\" \"+r)}return t.join(\"\\n\")}function fetchAttributeLocations(e,t){const n={};const r=e.getProgramParameter(t,35721);for(let i=0;i<r;i++){const r=e.getActiveAttrib(t,i);const s=r.name;let a=1;35674===r.type&&(a=2);35675===r.type&&(a=3);35676===r.type&&(a=4);n[s]={type:r.type,location:e.getAttribLocation(t,s),locationSize:a}}return n}function filterEmptyLine(e){return\"\"!==e}function replaceLightNums(e,t){return e.replace(/NUM_DIR_LIGHTS/g,t.numDirLights).replace(/NUM_SPOT_LIGHTS/g,t.numSpotLights).replace(/NUM_RECT_AREA_LIGHTS/g,t.numRectAreaLights).replace(/NUM_POINT_LIGHTS/g,t.numPointLights).replace(/NUM_HEMI_LIGHTS/g,t.numHemiLights).replace(/NUM_DIR_LIGHT_SHADOWS/g,t.numDirLightShadows).replace(/NUM_SPOT_LIGHT_SHADOWS/g,t.numSpotLightShadows).replace(/NUM_POINT_LIGHT_SHADOWS/g,t.numPointLightShadows)}function replaceClippingPlaneNums(e,t){return e.replace(/NUM_CLIPPING_PLANES/g,t.numClippingPlanes).replace(/UNION_CLIPPING_PLANES/g,t.numClippingPlanes-t.numClipIntersection)}const Lo=/^[ \\t]*#include +<([\\w\\d./]+)>/gm;function resolveIncludes(e){return e.replace(Lo,includeReplacer)}function includeReplacer(e,t){const n=Qa[t];if(void 0===n)throw new Error(\"Can not resolve #include <\"+t+\">\");return resolveIncludes(n)}const Co=/#pragma unroll_loop[\\s]+?for \\( int i \\= (\\d+)\\; i < (\\d+)\\; i \\+\\+ \\) \\{([\\s\\S]+?)(?=\\})\\}/g;const Ro=/#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 unrollLoops(e){return e.replace(Ro,loopReplacer).replace(Co,deprecatedLoopReplacer)}function deprecatedLoopReplacer(e,t,n,r){console.warn(\"WebGLProgram: #pragma unroll_loop shader syntax is deprecated. Please use #pragma unroll_loop_start syntax instead.\");return loopReplacer(e,t,n,r)}function loopReplacer(e,t,n,r){let i=\"\";for(let e=parseInt(t);e<parseInt(n);e++)i+=r.replace(/\\[\\s*i\\s*\\]/g,\"[ \"+e+\" ]\").replace(/UNROLLED_LOOP_INDEX/g,e);return i}function generatePrecision(e){let t=\"precision \"+e.precision+\" float;\\nprecision \"+e.precision+\" int;\";\"highp\"===e.precision?t+=\"\\n#define HIGH_PRECISION\":\"mediump\"===e.precision?t+=\"\\n#define MEDIUM_PRECISION\":\"lowp\"===e.precision&&(t+=\"\\n#define LOW_PRECISION\");return t}function generateShadowMapTypeDefine(e){let t=\"SHADOWMAP_TYPE_BASIC\";e.shadowMapType===l?t=\"SHADOWMAP_TYPE_PCF\":e.shadowMapType===c?t=\"SHADOWMAP_TYPE_PCF_SOFT\":e.shadowMapType===u&&(t=\"SHADOWMAP_TYPE_VSM\");return t}function generateEnvMapTypeDefine(e){let t=\"ENVMAP_TYPE_CUBE\";if(e.envMap)switch(e.envMapMode){case re:case ie:t=\"ENVMAP_TYPE_CUBE\";break;case oe:case le:t=\"ENVMAP_TYPE_CUBE_UV\";break}return t}function generateEnvMapModeDefine(e){let t=\"ENVMAP_MODE_REFLECTION\";if(e.envMap)switch(e.envMapMode){case ie:case le:t=\"ENVMAP_MODE_REFRACTION\";break}return t}function generateEnvMapBlendingDefine(e){let t=\"ENVMAP_BLENDING_NONE\";if(e.envMap)switch(e.combine){case X:t=\"ENVMAP_BLENDING_MULTIPLY\";break;case J:t=\"ENVMAP_BLENDING_MIX\";break;case Y:t=\"ENVMAP_BLENDING_ADD\";break}return t}function WebGLProgram(e,t,n,r){const i=e.getContext();const s=n.defines;let a=n.vertexShader;let o=n.fragmentShader;const l=generateShadowMapTypeDefine(n);const c=generateEnvMapTypeDefine(n);const u=generateEnvMapModeDefine(n);const h=generateEnvMapBlendingDefine(n);const d=n.isWebGL2?\"\":generateExtensions(n);const p=generateDefines(s);const f=i.createProgram();let m,g;let y=n.glslVersion?\"#version \"+n.glslVersion+\"\\n\":\"\";if(n.isRawShaderMaterial){m=[p].filter(filterEmptyLine).join(\"\\n\");m.length>0&&(m+=\"\\n\");g=[d,p].filter(filterEmptyLine).join(\"\\n\");g.length>0&&(g+=\"\\n\")}else{m=[generatePrecision(n),\"#define SHADER_NAME \"+n.shaderName,p,n.instancing?\"#define USE_INSTANCING\":\"\",n.instancingColor?\"#define USE_INSTANCING_COLOR\":\"\",n.supportsVertexTextures?\"#define VERTEX_TEXTURES\":\"\",\"#define MAX_BONES \"+n.maxBones,n.useFog&&n.fog?\"#define USE_FOG\":\"\",n.useFog&&n.fogExp2?\"#define FOG_EXP2\":\"\",n.map?\"#define USE_MAP\":\"\",n.envMap?\"#define USE_ENVMAP\":\"\",n.envMap?\"#define \"+u:\"\",n.lightMap?\"#define USE_LIGHTMAP\":\"\",n.aoMap?\"#define USE_AOMAP\":\"\",n.emissiveMap?\"#define USE_EMISSIVEMAP\":\"\",n.bumpMap?\"#define USE_BUMPMAP\":\"\",n.normalMap?\"#define USE_NORMALMAP\":\"\",n.normalMap&&n.objectSpaceNormalMap?\"#define OBJECTSPACE_NORMALMAP\":\"\",n.normalMap&&n.tangentSpaceNormalMap?\"#define TANGENTSPACE_NORMALMAP\":\"\",n.clearcoatMap?\"#define USE_CLEARCOATMAP\":\"\",n.clearcoatRoughnessMap?\"#define USE_CLEARCOAT_ROUGHNESSMAP\":\"\",n.clearcoatNormalMap?\"#define USE_CLEARCOAT_NORMALMAP\":\"\",n.displacementMap&&n.supportsVertexTextures?\"#define USE_DISPLACEMENTMAP\":\"\",n.specularMap?\"#define USE_SPECULARMAP\":\"\",n.specularIntensityMap?\"#define USE_SPECULARINTENSITYMAP\":\"\",n.specularColorMap?\"#define USE_SPECULARCOLORMAP\":\"\",n.roughnessMap?\"#define USE_ROUGHNESSMAP\":\"\",n.metalnessMap?\"#define USE_METALNESSMAP\":\"\",n.alphaMap?\"#define USE_ALPHAMAP\":\"\",n.transmission?\"#define USE_TRANSMISSION\":\"\",n.transmissionMap?\"#define USE_TRANSMISSIONMAP\":\"\",n.thicknessMap?\"#define USE_THICKNESSMAP\":\"\",n.sheenColorMap?\"#define USE_SHEENCOLORMAP\":\"\",n.sheenRoughnessMap?\"#define USE_SHEENROUGHNESSMAP\":\"\",n.vertexTangents?\"#define USE_TANGENT\":\"\",n.vertexColors?\"#define USE_COLOR\":\"\",n.vertexAlphas?\"#define USE_COLOR_ALPHA\":\"\",n.vertexUvs?\"#define USE_UV\":\"\",n.uvsVertexOnly?\"#define UVS_VERTEX_ONLY\":\"\",n.flatShading?\"#define FLAT_SHADED\":\"\",n.skinning?\"#define USE_SKINNING\":\"\",n.useVertexTexture?\"#define BONE_TEXTURE\":\"\",n.morphTargets?\"#define USE_MORPHTARGETS\":\"\",n.morphNormals&&false===n.flatShading?\"#define USE_MORPHNORMALS\":\"\",n.morphTargets&&n.isWebGL2?\"#define MORPHTARGETS_TEXTURE\":\"\",n.morphTargets&&n.isWebGL2?\"#define MORPHTARGETS_COUNT \"+n.morphTargetsCount:\"\",n.doubleSided?\"#define DOUBLE_SIDED\":\"\",n.flipSided?\"#define FLIP_SIDED\":\"\",n.shadowMapEnabled?\"#define USE_SHADOWMAP\":\"\",n.shadowMapEnabled?\"#define \"+l:\"\",n.sizeAttenuation?\"#define USE_SIZEATTENUATION\":\"\",n.logarithmicDepthBuffer?\"#define USE_LOGDEPTHBUF\":\"\",n.logarithmicDepthBuffer&&n.rendererExtensionFragDepth?\"#define USE_LOGDEPTHBUF_EXT\":\"\",\"uniform mat4 modelMatrix;\",\"uniform mat4 modelViewMatrix;\",\"uniform mat4 projectionMatrix;\",\"uniform mat4 viewMatrix;\",\"uniform mat3 normalMatrix;\",\"uniform vec3 cameraPosition;\",\"uniform bool isOrthographic;\",\"#ifdef USE_INSTANCING\",\"\\tattribute mat4 instanceMatrix;\",\"#endif\",\"#ifdef USE_INSTANCING_COLOR\",\"\\tattribute vec3 instanceColor;\",\"#endif\",\"attribute vec3 position;\",\"attribute vec3 normal;\",\"attribute vec2 uv;\",\"#ifdef USE_TANGENT\",\"\\tattribute vec4 tangent;\",\"#endif\",\"#if defined( USE_COLOR_ALPHA )\",\"\\tattribute vec4 color;\",\"#elif defined( USE_COLOR )\",\"\\tattribute vec3 color;\",\"#endif\",\"#if ( defined( USE_MORPHTARGETS ) && ! defined( MORPHTARGETS_TEXTURE ) )\",\"\\tattribute vec3 morphTarget0;\",\"\\tattribute vec3 morphTarget1;\",\"\\tattribute vec3 morphTarget2;\",\"\\tattribute vec3 morphTarget3;\",\"\\t#ifdef USE_MORPHNORMALS\",\"\\t\\tattribute vec3 morphNormal0;\",\"\\t\\tattribute vec3 morphNormal1;\",\"\\t\\tattribute vec3 morphNormal2;\",\"\\t\\tattribute vec3 morphNormal3;\",\"\\t#else\",\"\\t\\tattribute vec3 morphTarget4;\",\"\\t\\tattribute vec3 morphTarget5;\",\"\\t\\tattribute vec3 morphTarget6;\",\"\\t\\tattribute vec3 morphTarget7;\",\"\\t#endif\",\"#endif\",\"#ifdef USE_SKINNING\",\"\\tattribute vec4 skinIndex;\",\"\\tattribute vec4 skinWeight;\",\"#endif\",\"\\n\"].filter(filterEmptyLine).join(\"\\n\");g=[d,generatePrecision(n),\"#define SHADER_NAME \"+n.shaderName,p,n.useFog&&n.fog?\"#define USE_FOG\":\"\",n.useFog&&n.fogExp2?\"#define FOG_EXP2\":\"\",n.map?\"#define USE_MAP\":\"\",n.matcap?\"#define USE_MATCAP\":\"\",n.envMap?\"#define USE_ENVMAP\":\"\",n.envMap?\"#define \"+c:\"\",n.envMap?\"#define \"+u:\"\",n.envMap?\"#define \"+h:\"\",n.lightMap?\"#define USE_LIGHTMAP\":\"\",n.aoMap?\"#define USE_AOMAP\":\"\",n.emissiveMap?\"#define USE_EMISSIVEMAP\":\"\",n.bumpMap?\"#define USE_BUMPMAP\":\"\",n.normalMap?\"#define USE_NORMALMAP\":\"\",n.normalMap&&n.objectSpaceNormalMap?\"#define OBJECTSPACE_NORMALMAP\":\"\",n.normalMap&&n.tangentSpaceNormalMap?\"#define TANGENTSPACE_NORMALMAP\":\"\",n.clearcoat?\"#define USE_CLEARCOAT\":\"\",n.clearcoatMap?\"#define USE_CLEARCOATMAP\":\"\",n.clearcoatRoughnessMap?\"#define USE_CLEARCOAT_ROUGHNESSMAP\":\"\",n.clearcoatNormalMap?\"#define USE_CLEARCOAT_NORMALMAP\":\"\",n.specularMap?\"#define USE_SPECULARMAP\":\"\",n.specularIntensityMap?\"#define USE_SPECULARINTENSITYMAP\":\"\",n.specularColorMap?\"#define USE_SPECULARCOLORMAP\":\"\",n.roughnessMap?\"#define USE_ROUGHNESSMAP\":\"\",n.metalnessMap?\"#define USE_METALNESSMAP\":\"\",n.alphaMap?\"#define USE_ALPHAMAP\":\"\",n.alphaTest?\"#define USE_ALPHATEST\":\"\",n.sheen?\"#define USE_SHEEN\":\"\",n.sheenColorMap?\"#define USE_SHEENCOLORMAP\":\"\",n.sheenRoughnessMap?\"#define USE_SHEENROUGHNESSMAP\":\"\",n.transmission?\"#define USE_TRANSMISSION\":\"\",n.transmissionMap?\"#define USE_TRANSMISSIONMAP\":\"\",n.thicknessMap?\"#define USE_THICKNESSMAP\":\"\",n.vertexTangents?\"#define USE_TANGENT\":\"\",n.vertexColors||n.instancingColor?\"#define USE_COLOR\":\"\",n.vertexAlphas?\"#define USE_COLOR_ALPHA\":\"\",n.vertexUvs?\"#define USE_UV\":\"\",n.uvsVertexOnly?\"#define UVS_VERTEX_ONLY\":\"\",n.gradientMap?\"#define USE_GRADIENTMAP\":\"\",n.flatShading?\"#define FLAT_SHADED\":\"\",n.doubleSided?\"#define DOUBLE_SIDED\":\"\",n.flipSided?\"#define FLIP_SIDED\":\"\",n.shadowMapEnabled?\"#define USE_SHADOWMAP\":\"\",n.shadowMapEnabled?\"#define \"+l:\"\",n.premultipliedAlpha?\"#define PREMULTIPLIED_ALPHA\":\"\",n.physicallyCorrectLights?\"#define PHYSICALLY_CORRECT_LIGHTS\":\"\",n.logarithmicDepthBuffer?\"#define USE_LOGDEPTHBUF\":\"\",n.logarithmicDepthBuffer&&n.rendererExtensionFragDepth?\"#define USE_LOGDEPTHBUF_EXT\":\"\",(n.extensionShaderTextureLOD||n.envMap)&&n.rendererExtensionShaderTextureLod?\"#define TEXTURE_LOD_EXT\":\"\",\"uniform mat4 viewMatrix;\",\"uniform vec3 cameraPosition;\",\"uniform bool isOrthographic;\",n.toneMapping!==Z?\"#define TONE_MAPPING\":\"\",n.toneMapping!==Z?Qa.tonemapping_pars_fragment:\"\",n.toneMapping!==Z?getToneMappingFunction(\"toneMapping\",n.toneMapping):\"\",n.dithering?\"#define DITHERING\":\"\",n.format===Ve?\"#define OPAQUE\":\"\",Qa.encodings_pars_fragment,n.map?getTexelDecodingFunction(\"mapTexelToLinear\",n.mapEncoding):\"\",n.matcap?getTexelDecodingFunction(\"matcapTexelToLinear\",n.matcapEncoding):\"\",n.envMap?getTexelDecodingFunction(\"envMapTexelToLinear\",n.envMapEncoding):\"\",n.emissiveMap?getTexelDecodingFunction(\"emissiveMapTexelToLinear\",n.emissiveMapEncoding):\"\",n.specularColorMap?getTexelDecodingFunction(\"specularColorMapTexelToLinear\",n.specularColorMapEncoding):\"\",n.sheenColorMap?getTexelDecodingFunction(\"sheenColorMapTexelToLinear\",n.sheenColorMapEncoding):\"\",n.lightMap?getTexelDecodingFunction(\"lightMapTexelToLinear\",n.lightMapEncoding):\"\",getTexelEncodingFunction(\"linearToOutputTexel\",n.outputEncoding),n.depthPacking?\"#define DEPTH_PACKING \"+n.depthPacking:\"\",\"\\n\"].filter(filterEmptyLine).join(\"\\n\")}a=resolveIncludes(a);a=replaceLightNums(a,n);a=replaceClippingPlaneNums(a,n);o=resolveIncludes(o);o=replaceLightNums(o,n);o=replaceClippingPlaneNums(o,n);a=unrollLoops(a);o=unrollLoops(o);if(n.isWebGL2&&true!==n.isRawShaderMaterial){y=\"#version 300 es\\n\";m=[\"precision mediump sampler2DArray;\",\"#define attribute in\",\"#define varying out\",\"#define texture2D texture\"].join(\"\\n\")+\"\\n\"+m;g=[\"#define varying in\",n.glslVersion===En?\"\":\"layout(location = 0) out highp vec4 pc_fragColor;\",n.glslVersion===En?\"\":\"#define gl_FragColor pc_fragColor\",\"#define gl_FragDepthEXT gl_FragDepth\",\"#define texture2D texture\",\"#define textureCube texture\",\"#define texture2DProj textureProj\",\"#define texture2DLodEXT textureLod\",\"#define texture2DProjLodEXT textureProjLod\",\"#define textureCubeLodEXT textureLod\",\"#define texture2DGradEXT textureGrad\",\"#define texture2DProjGradEXT textureProjGrad\",\"#define textureCubeGradEXT textureGrad\"].join(\"\\n\")+\"\\n\"+g}const x=y+m+a;const b=y+g+o;const _=WebGLShader(i,35633,x);const M=WebGLShader(i,35632,b);i.attachShader(f,_);i.attachShader(f,M);void 0!==n.index0AttributeName?i.bindAttribLocation(f,0,n.index0AttributeName):true===n.morphTargets&&i.bindAttribLocation(f,0,\"position\");i.linkProgram(f);if(e.debug.checkShaderErrors){const e=i.getProgramInfoLog(f).trim();const t=i.getShaderInfoLog(_).trim();const n=i.getShaderInfoLog(M).trim();let r=true;let s=true;if(false===i.getProgramParameter(f,35714)){r=false;const t=getShaderErrors(i,_,\"vertex\");const n=getShaderErrors(i,M,\"fragment\");console.error(\"THREE.WebGLProgram: Shader Error \"+i.getError()+\" - VALIDATE_STATUS \"+i.getProgramParameter(f,35715)+\"\\n\\nProgram Info Log: \"+e+\"\\n\"+t+\"\\n\"+n)}else\"\"!==e?console.warn(\"THREE.WebGLProgram: Program Info Log:\",e):\"\"!==t&&\"\"!==n||(s=false);s&&(this.diagnostics={runnable:r,programLog:e,vertexShader:{log:t,prefix:m},fragmentShader:{log:n,prefix:g}})}i.deleteShader(_);i.deleteShader(M);let w;this.getUniforms=function(){void 0===w&&(w=new WebGLUniforms(i,f));return w};let S;this.getAttributes=function(){void 0===S&&(S=fetchAttributeLocations(i,f));return S};this.destroy=function(){r.releaseStatesOfProgram(this);i.deleteProgram(f);this.program=void 0};this.name=n.shaderName;this.id=Ao++;this.cacheKey=t;this.usedTimes=1;this.program=f;this.vertexShader=_;this.fragmentShader=M;return this}let Po=0;class WebGLShaderCache{constructor(){this.shaderCache=new Map;this.materialCache=new Map}update(e){const t=e.vertexShader;const n=e.fragmentShader;const r=this._getShaderStage(t);const i=this._getShaderStage(n);const s=this._getShaderCacheForMaterial(e);if(false===s.has(r)){s.add(r);r.usedTimes++}if(false===s.has(i)){s.add(i);i.usedTimes++}return this}remove(e){const t=this.materialCache.get(e);for(const e of t){e.usedTimes--;0===e.usedTimes&&this.shaderCache.delete(e)}this.materialCache.delete(e);return this}getVertexShaderID(e){return this._getShaderStage(e.vertexShader).id}getFragmentShaderID(e){return this._getShaderStage(e.fragmentShader).id}dispose(){this.shaderCache.clear();this.materialCache.clear()}_getShaderCacheForMaterial(e){const t=this.materialCache;false===t.has(e)&&t.set(e,new Set);return t.get(e)}_getShaderStage(e){const t=this.shaderCache;if(false===t.has(e)){const n=new WebGLShaderStage;t.set(e,n)}return t.get(e)}}class WebGLShaderStage{constructor(){this.id=Po++;this.usedTimes=0}}function WebGLPrograms(e,t,n,r,i,s,a){const o=new Layers;const l=new WebGLShaderCache;const c=[];const u=i.isWebGL2;const h=i.logarithmicDepthBuffer;const f=i.floatVertexTextures;const m=i.maxVertexUniforms;const g=i.vertexTextures;let y=i.precision;const x={MeshDepthMaterial:\"depth\",MeshDistanceMaterial:\"distanceRGBA\",MeshNormalMaterial:\"normal\",MeshBasicMaterial:\"basic\",MeshLambertMaterial:\"lambert\",MeshPhongMaterial:\"phong\",MeshToonMaterial:\"toon\",MeshStandardMaterial:\"physical\",MeshPhysicalMaterial:\"physical\",MeshMatcapMaterial:\"matcap\",LineBasicMaterial:\"basic\",LineDashedMaterial:\"dashed\",PointsMaterial:\"points\",ShadowMaterial:\"shadow\",SpriteMaterial:\"sprite\"};function getMaxBones(e){const t=e.skeleton;const n=t.bones;if(f)return 1024;{const e=m;const t=Math.floor((e-20)/4);const r=Math.min(t,n.length);if(r<n.length){console.warn(\"THREE.WebGLRenderer: Skeleton has \"+n.length+\" bones. This GPU supports \"+r+\".\");return 0}return r}}function getTextureEncodingFromMap(e){let t;if(e&&e.isTexture)t=e.encoding;else if(e&&e.isWebGLRenderTarget){console.warn(\"THREE.WebGLPrograms.getTextureEncodingFromMap: don't use render targets as textures. Use their .texture property instead.\");t=e.texture.encoding}else t=Xt;u&&e&&e.isTexture&&e.format===Ne&&e.type===Me&&e.encoding===Jt&&(t=Xt);return t}function getParameters(s,o,c,m,b){const _=m.fog;const M=s.isMeshStandardMaterial?m.environment:null;const w=(s.isMeshStandardMaterial?n:t).get(s.envMap||M);const S=x[s.type];const T=b.isSkinnedMesh?getMaxBones(b):0;if(null!==s.precision){y=i.getMaxPrecision(s.precision);y!==s.precision&&console.warn(\"THREE.WebGLProgram.getParameters:\",s.precision,\"not supported, using\",y,\"instead.\")}let E,A;let L,C;if(S){const e=$a[S];E=e.vertexShader;A=e.fragmentShader}else{E=s.vertexShader;A=s.fragmentShader;l.update(s);L=l.getVertexShaderID(s);C=l.getFragmentShaderID(s)}const R=e.getRenderTarget();const P=s.alphaTest>0;const I=s.clearcoat>0;const D={isWebGL2:u,shaderID:S,shaderName:s.type,vertexShader:E,fragmentShader:A,defines:s.defines,customVertexShaderID:L,customFragmentShaderID:C,isRawShaderMaterial:true===s.isRawShaderMaterial,glslVersion:s.glslVersion,precision:y,instancing:true===b.isInstancedMesh,instancingColor:true===b.isInstancedMesh&&null!==b.instanceColor,supportsVertexTextures:g,outputEncoding:null!==R?getTextureEncodingFromMap(R.texture):e.outputEncoding,map:!!s.map,mapEncoding:getTextureEncodingFromMap(s.map),matcap:!!s.matcap,matcapEncoding:getTextureEncodingFromMap(s.matcap),envMap:!!w,envMapMode:w&&w.mapping,envMapEncoding:getTextureEncodingFromMap(w),envMapCubeUV:!!w&&(w.mapping===oe||w.mapping===le),lightMap:!!s.lightMap,lightMapEncoding:getTextureEncodingFromMap(s.lightMap),aoMap:!!s.aoMap,emissiveMap:!!s.emissiveMap,emissiveMapEncoding:getTextureEncodingFromMap(s.emissiveMap),bumpMap:!!s.bumpMap,normalMap:!!s.normalMap,objectSpaceNormalMap:s.normalMapType===Kt,tangentSpaceNormalMap:s.normalMapType===Qt,clearcoat:I,clearcoatMap:I&&!!s.clearcoatMap,clearcoatRoughnessMap:I&&!!s.clearcoatRoughnessMap,clearcoatNormalMap:I&&!!s.clearcoatNormalMap,displacementMap:!!s.displacementMap,roughnessMap:!!s.roughnessMap,metalnessMap:!!s.metalnessMap,specularMap:!!s.specularMap,specularIntensityMap:!!s.specularIntensityMap,specularColorMap:!!s.specularColorMap,specularColorMapEncoding:getTextureEncodingFromMap(s.specularColorMap),alphaMap:!!s.alphaMap,alphaTest:P,gradientMap:!!s.gradientMap,sheen:s.sheen>0,sheenColorMap:!!s.sheenColorMap,sheenColorMapEncoding:getTextureEncodingFromMap(s.sheenColorMap),sheenRoughnessMap:!!s.sheenRoughnessMap,transmission:s.transmission>0,transmissionMap:!!s.transmissionMap,thicknessMap:!!s.thicknessMap,combine:s.combine,vertexTangents:!!s.normalMap&&!!b.geometry&&!!b.geometry.attributes.tangent,vertexColors:s.vertexColors,vertexAlphas:true===s.vertexColors&&!!b.geometry&&!!b.geometry.attributes.color&&4===b.geometry.attributes.color.itemSize,vertexUvs:!!s.map||!!s.bumpMap||!!s.normalMap||!!s.specularMap||!!s.alphaMap||!!s.emissiveMap||!!s.roughnessMap||!!s.metalnessMap||!!s.clearcoatMap||!!s.clearcoatRoughnessMap||!!s.clearcoatNormalMap||!!s.displacementMap||!!s.transmissionMap||!!s.thicknessMap||!!s.specularIntensityMap||!!s.specularColorMap||!!s.sheenColorMap||!!s.sheenRoughnessMap,uvsVertexOnly:!(!!s.map||!!s.bumpMap||!!s.normalMap||!!s.specularMap||!!s.alphaMap||!!s.emissiveMap||!!s.roughnessMap||!!s.metalnessMap||!!s.clearcoatNormalMap||s.transmission>0||!!s.transmissionMap||!!s.thicknessMap||!!s.specularIntensityMap||!!s.specularColorMap||s.sheen>0||!!s.sheenColorMap||!!s.sheenRoughnessMap)&&!!s.displacementMap,fog:!!_,useFog:s.fog,fogExp2:_&&_.isFogExp2,flatShading:!!s.flatShading,sizeAttenuation:s.sizeAttenuation,logarithmicDepthBuffer:h,skinning:true===b.isSkinnedMesh&&T>0,maxBones:T,useVertexTexture:f,morphTargets:!!b.geometry&&!!b.geometry.morphAttributes.position,morphNormals:!!b.geometry&&!!b.geometry.morphAttributes.normal,morphTargetsCount:!b.geometry||!b.geometry.morphAttributes.position?0:b.geometry.morphAttributes.position.length,numDirLights:o.directional.length,numPointLights:o.point.length,numSpotLights:o.spot.length,numRectAreaLights:o.rectArea.length,numHemiLights:o.hemi.length,numDirLightShadows:o.directionalShadowMap.length,numPointLightShadows:o.pointShadowMap.length,numSpotLightShadows:o.spotShadowMap.length,numClippingPlanes:a.numPlanes,numClipIntersection:a.numIntersection,format:s.format,dithering:s.dithering,shadowMapEnabled:e.shadowMap.enabled&&c.length>0,shadowMapType:e.shadowMap.type,toneMapping:s.toneMapped?e.toneMapping:Z,physicallyCorrectLights:e.physicallyCorrectLights,premultipliedAlpha:s.premultipliedAlpha,doubleSided:s.side===p,flipSided:s.side===d,depthPacking:void 0!==s.depthPacking&&s.depthPacking,index0AttributeName:s.index0AttributeName,extensionDerivatives:s.extensions&&s.extensions.derivatives,extensionFragDepth:s.extensions&&s.extensions.fragDepth,extensionDrawBuffers:s.extensions&&s.extensions.drawBuffers,extensionShaderTextureLOD:s.extensions&&s.extensions.shaderTextureLOD,rendererExtensionFragDepth:u||r.has(\"EXT_frag_depth\"),rendererExtensionDrawBuffers:u||r.has(\"WEBGL_draw_buffers\"),rendererExtensionShaderTextureLod:u||r.has(\"EXT_shader_texture_lod\"),customProgramCacheKey:s.customProgramCacheKey()};return D}function getProgramCacheKey(t){const n=[];if(t.shaderID)n.push(t.shaderID);else{n.push(t.customVertexShaderID);n.push(t.customFragmentShaderID)}if(void 0!==t.defines)for(const e in t.defines){n.push(e);n.push(t.defines[e])}if(false===t.isRawShaderMaterial){getProgramCacheKeyParameters(n,t);getProgramCacheKeyBooleans(n,t);n.push(e.outputEncoding)}n.push(t.customProgramCacheKey);return n.join()}function getProgramCacheKeyParameters(e,t){e.push(t.precision);e.push(t.outputEncoding);e.push(t.mapEncoding);e.push(t.matcapEncoding);e.push(t.envMapMode);e.push(t.envMapEncoding);e.push(t.lightMapEncoding);e.push(t.emissiveMapEncoding);e.push(t.combine);e.push(t.vertexUvs);e.push(t.fogExp2);e.push(t.sizeAttenuation);e.push(t.maxBones);e.push(t.morphTargetsCount);e.push(t.numDirLights);e.push(t.numPointLights);e.push(t.numSpotLights);e.push(t.numHemiLights);e.push(t.numRectAreaLights);e.push(t.numDirLightShadows);e.push(t.numPointLightShadows);e.push(t.numSpotLightShadows);e.push(t.shadowMapType);e.push(t.toneMapping);e.push(t.numClippingPlanes);e.push(t.numClipIntersection);e.push(t.format);e.push(t.specularColorMapEncoding);e.push(t.sheenColorMapEncoding)}function getProgramCacheKeyBooleans(e,t){o.disableAll();t.isWebGL2&&o.enable(0);t.supportsVertexTextures&&o.enable(1);t.instancing&&o.enable(2);t.instancingColor&&o.enable(3);t.map&&o.enable(4);t.matcap&&o.enable(5);t.envMap&&o.enable(6);t.envMapCubeUV&&o.enable(7);t.lightMap&&o.enable(8);t.aoMap&&o.enable(9);t.emissiveMap&&o.enable(10);t.bumpMap&&o.enable(11);t.normalMap&&o.enable(12);t.objectSpaceNormalMap&&o.enable(13);t.tangentSpaceNormalMap&&o.enable(14);t.clearcoat&&o.enable(15);t.clearcoatMap&&o.enable(16);t.clearcoatRoughnessMap&&o.enable(17);t.clearcoatNormalMap&&o.enable(18);t.displacementMap&&o.enable(19);t.specularMap&&o.enable(20);t.roughnessMap&&o.enable(21);t.metalnessMap&&o.enable(22);t.gradientMap&&o.enable(23);t.alphaMap&&o.enable(24);t.alphaTest&&o.enable(25);t.vertexColors&&o.enable(26);t.vertexAlphas&&o.enable(27);t.vertexUvs&&o.enable(28);t.vertexTangents&&o.enable(29);t.uvsVertexOnly&&o.enable(30);t.fog&&o.enable(31);e.push(o.mask);o.disableAll();t.useFog&&o.enable(0);t.flatShading&&o.enable(1);t.logarithmicDepthBuffer&&o.enable(2);t.skinning&&o.enable(3);t.useVertexTexture&&o.enable(4);t.morphTargets&&o.enable(5);t.morphNormals&&o.enable(6);t.premultipliedAlpha&&o.enable(7);t.shadowMapEnabled&&o.enable(8);t.physicallyCorrectLights&&o.enable(9);t.doubleSided&&o.enable(10);t.flipSided&&o.enable(11);t.depthPacking&&o.enable(12);t.dithering&&o.enable(13);t.specularIntensityMap&&o.enable(14);t.specularColorMap&&o.enable(15);t.transmission&&o.enable(16);t.transmissionMap&&o.enable(17);t.thicknessMap&&o.enable(18);t.sheen&&o.enable(19);t.sheenColorMap&&o.enable(20);t.sheenRoughnessMap&&o.enable(21);e.push(o.mask)}function getUniforms(e){const t=x[e.type];let n;if(t){const e=$a[t];n=mi.clone(e.uniforms)}else n=e.uniforms;return n}function acquireProgram(t,n){let r;for(let e=0,t=c.length;e<t;e++){const t=c[e];if(t.cacheKey===n){r=t;++r.usedTimes;break}}if(void 0===r){r=new WebGLProgram(e,n,t,s);c.push(r)}return r}function releaseProgram(e){if(0===--e.usedTimes){const t=c.indexOf(e);c[t]=c[c.length-1];c.pop();e.destroy()}}function releaseShaderCache(e){l.remove(e)}function dispose(){l.dispose()}return{getParameters:getParameters,getProgramCacheKey:getProgramCacheKey,getUniforms:getUniforms,acquireProgram:acquireProgram,releaseProgram:releaseProgram,releaseShaderCache:releaseShaderCache,programs:c,dispose:dispose}}function WebGLProperties(){let e=new WeakMap;function get(t){let n=e.get(t);if(void 0===n){n={};e.set(t,n)}return n}function remove(t){e.delete(t)}function update(t,n,r){e.get(t)[n]=r}function dispose(){e=new WeakMap}return{get:get,remove:remove,update:update,dispose:dispose}}function painterSortStable(e,t){return e.groupOrder!==t.groupOrder?e.groupOrder-t.groupOrder:e.renderOrder!==t.renderOrder?e.renderOrder-t.renderOrder:e.material.id!==t.material.id?e.material.id-t.material.id:e.z!==t.z?e.z-t.z:e.id-t.id}function reversePainterSortStable(e,t){return e.groupOrder!==t.groupOrder?e.groupOrder-t.groupOrder:e.renderOrder!==t.renderOrder?e.renderOrder-t.renderOrder:e.z!==t.z?t.z-e.z:e.id-t.id}function WebGLRenderList(){const e=[];let t=0;const n=[];const r=[];const i=[];function init(){t=0;n.length=0;r.length=0;i.length=0}function getNextRenderItem(n,r,i,s,a,o){let l=e[t];if(void 0===l){l={id:n.id,object:n,geometry:r,material:i,groupOrder:s,renderOrder:n.renderOrder,z:a,group:o};e[t]=l}else{l.id=n.id;l.object=n;l.geometry=r;l.material=i;l.groupOrder=s;l.renderOrder=n.renderOrder;l.z=a;l.group=o}t++;return l}function push(e,t,s,a,o,l){const c=getNextRenderItem(e,t,s,a,o,l);s.transmission>0?r.push(c):true===s.transparent?i.push(c):n.push(c)}function unshift(e,t,s,a,o,l){const c=getNextRenderItem(e,t,s,a,o,l);s.transmission>0?r.unshift(c):true===s.transparent?i.unshift(c):n.unshift(c)}function sort(e,t){n.length>1&&n.sort(e||painterSortStable);r.length>1&&r.sort(t||reversePainterSortStable);i.length>1&&i.sort(t||reversePainterSortStable)}function finish(){for(let n=t,r=e.length;n<r;n++){const t=e[n];if(null===t.id)break;t.id=null;t.object=null;t.geometry=null;t.material=null;t.group=null}}return{opaque:n,transmissive:r,transparent:i,init:init,push:push,unshift:unshift,finish:finish,sort:sort}}function WebGLRenderLists(){let e=new WeakMap;function get(t,n){let r;if(false===e.has(t)){r=new WebGLRenderList;e.set(t,[r])}else if(n>=e.get(t).length){r=new WebGLRenderList;e.get(t).push(r)}else r=e.get(t)[n];return r}function dispose(){e=new WeakMap}return{get:get,dispose:dispose}}function UniformsCache(){const e={};return{get:function(t){if(void 0!==e[t.id])return e[t.id];let n;switch(t.type){case\"DirectionalLight\":n={direction:new Vector3,color:new Color};break;case\"SpotLight\":n={position:new Vector3,direction:new Vector3,color:new Color,distance:0,coneCos:0,penumbraCos:0,decay:0};break;case\"PointLight\":n={position:new Vector3,color:new Color,distance:0,decay:0};break;case\"HemisphereLight\":n={direction:new Vector3,skyColor:new Color,groundColor:new Color};break;case\"RectAreaLight\":n={color:new Color,position:new Vector3,halfWidth:new Vector3,halfHeight:new Vector3};break}e[t.id]=n;return n}}}function ShadowUniformsCache(){const e={};return{get:function(t){if(void 0!==e[t.id])return e[t.id];let n;switch(t.type){case\"DirectionalLight\":n={shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new Vector2};break;case\"SpotLight\":n={shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new Vector2};break;case\"PointLight\":n={shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new Vector2,shadowCameraNear:1,shadowCameraFar:1e3};break}e[t.id]=n;return n}}}let Io=0;function shadowCastingLightsFirst(e,t){return(t.castShadow?1:0)-(e.castShadow?1:0)}function WebGLLights(e,t){const n=new UniformsCache;const r=ShadowUniformsCache();const i={version:0,hash:{directionalLength:-1,pointLength:-1,spotLength:-1,rectAreaLength:-1,hemiLength:-1,numDirectionalShadows:-1,numPointShadows:-1,numSpotShadows:-1},ambient:[0,0,0],probe:[],directional:[],directionalShadow:[],directionalShadowMap:[],directionalShadowMatrix:[],spot:[],spotShadow:[],spotShadowMap:[],spotShadowMatrix:[],rectArea:[],rectAreaLTC1:null,rectAreaLTC2:null,point:[],pointShadow:[],pointShadowMap:[],pointShadowMatrix:[],hemi:[]};for(let e=0;e<9;e++)i.probe.push(new Vector3);const s=new Vector3;const a=new Matrix4;const o=new Matrix4;function setup(s,a){let o=0,l=0,c=0;for(let e=0;e<9;e++)i.probe[e].set(0,0,0);let u=0;let h=0;let d=0;let p=0;let f=0;let m=0;let g=0;let y=0;s.sort(shadowCastingLightsFirst);const x=true!==a?Math.PI:1;for(let e=0,t=s.length;e<t;e++){const t=s[e];const a=t.color;const b=t.intensity;const _=t.distance;const M=t.shadow&&t.shadow.map?t.shadow.map.texture:null;if(t.isAmbientLight){o+=a.r*b*x;l+=a.g*b*x;c+=a.b*b*x}else if(t.isLightProbe)for(let e=0;e<9;e++)i.probe[e].addScaledVector(t.sh.coefficients[e],b);else if(t.isDirectionalLight){const e=n.get(t);e.color.copy(t.color).multiplyScalar(t.intensity*x);if(t.castShadow){const e=t.shadow;const n=r.get(t);n.shadowBias=e.bias;n.shadowNormalBias=e.normalBias;n.shadowRadius=e.radius;n.shadowMapSize=e.mapSize;i.directionalShadow[u]=n;i.directionalShadowMap[u]=M;i.directionalShadowMatrix[u]=t.shadow.matrix;m++}i.directional[u]=e;u++}else if(t.isSpotLight){const e=n.get(t);e.position.setFromMatrixPosition(t.matrixWorld);e.color.copy(a).multiplyScalar(b*x);e.distance=_;e.coneCos=Math.cos(t.angle);e.penumbraCos=Math.cos(t.angle*(1-t.penumbra));e.decay=t.decay;if(t.castShadow){const e=t.shadow;const n=r.get(t);n.shadowBias=e.bias;n.shadowNormalBias=e.normalBias;n.shadowRadius=e.radius;n.shadowMapSize=e.mapSize;i.spotShadow[d]=n;i.spotShadowMap[d]=M;i.spotShadowMatrix[d]=t.shadow.matrix;y++}i.spot[d]=e;d++}else if(t.isRectAreaLight){const e=n.get(t);e.color.copy(a).multiplyScalar(b);e.halfWidth.set(.5*t.width,0,0);e.halfHeight.set(0,.5*t.height,0);i.rectArea[p]=e;p++}else if(t.isPointLight){const e=n.get(t);e.color.copy(t.color).multiplyScalar(t.intensity*x);e.distance=t.distance;e.decay=t.decay;if(t.castShadow){const e=t.shadow;const n=r.get(t);n.shadowBias=e.bias;n.shadowNormalBias=e.normalBias;n.shadowRadius=e.radius;n.shadowMapSize=e.mapSize;n.shadowCameraNear=e.camera.near;n.shadowCameraFar=e.camera.far;i.pointShadow[h]=n;i.pointShadowMap[h]=M;i.pointShadowMatrix[h]=t.shadow.matrix;g++}i.point[h]=e;h++}else if(t.isHemisphereLight){const e=n.get(t);e.skyColor.copy(t.color).multiplyScalar(b*x);e.groundColor.copy(t.groundColor).multiplyScalar(b*x);i.hemi[f]=e;f++}}if(p>0)if(t.isWebGL2){i.rectAreaLTC1=Ka.LTC_FLOAT_1;i.rectAreaLTC2=Ka.LTC_FLOAT_2}else if(true===e.has(\"OES_texture_float_linear\")){i.rectAreaLTC1=Ka.LTC_FLOAT_1;i.rectAreaLTC2=Ka.LTC_FLOAT_2}else if(true===e.has(\"OES_texture_half_float_linear\")){i.rectAreaLTC1=Ka.LTC_HALF_1;i.rectAreaLTC2=Ka.LTC_HALF_2}else console.error(\"THREE.WebGLRenderer: Unable to use RectAreaLight. Missing WebGL extensions.\");i.ambient[0]=o;i.ambient[1]=l;i.ambient[2]=c;const b=i.hash;if(b.directionalLength!==u||b.pointLength!==h||b.spotLength!==d||b.rectAreaLength!==p||b.hemiLength!==f||b.numDirectionalShadows!==m||b.numPointShadows!==g||b.numSpotShadows!==y){i.directional.length=u;i.spot.length=d;i.rectArea.length=p;i.point.length=h;i.hemi.length=f;i.directionalShadow.length=m;i.directionalShadowMap.length=m;i.pointShadow.length=g;i.pointShadowMap.length=g;i.spotShadow.length=y;i.spotShadowMap.length=y;i.directionalShadowMatrix.length=m;i.pointShadowMatrix.length=g;i.spotShadowMatrix.length=y;b.directionalLength=u;b.pointLength=h;b.spotLength=d;b.rectAreaLength=p;b.hemiLength=f;b.numDirectionalShadows=m;b.numPointShadows=g;b.numSpotShadows=y;i.version=Io++}}function setupView(e,t){let n=0;let r=0;let l=0;let c=0;let u=0;const h=t.matrixWorldInverse;for(let t=0,d=e.length;t<d;t++){const d=e[t];if(d.isDirectionalLight){const e=i.directional[n];e.direction.setFromMatrixPosition(d.matrixWorld);s.setFromMatrixPosition(d.target.matrixWorld);e.direction.sub(s);e.direction.transformDirection(h);n++}else if(d.isSpotLight){const e=i.spot[l];e.position.setFromMatrixPosition(d.matrixWorld);e.position.applyMatrix4(h);e.direction.setFromMatrixPosition(d.matrixWorld);s.setFromMatrixPosition(d.target.matrixWorld);e.direction.sub(s);e.direction.transformDirection(h);l++}else if(d.isRectAreaLight){const e=i.rectArea[c];e.position.setFromMatrixPosition(d.matrixWorld);e.position.applyMatrix4(h);o.identity();a.copy(d.matrixWorld);a.premultiply(h);o.extractRotation(a);e.halfWidth.set(.5*d.width,0,0);e.halfHeight.set(0,.5*d.height,0);e.halfWidth.applyMatrix4(o);e.halfHeight.applyMatrix4(o);c++}else if(d.isPointLight){const e=i.point[r];e.position.setFromMatrixPosition(d.matrixWorld);e.position.applyMatrix4(h);r++}else if(d.isHemisphereLight){const e=i.hemi[u];e.direction.setFromMatrixPosition(d.matrixWorld);e.direction.transformDirection(h);e.direction.normalize();u++}}}return{setup:setup,setupView:setupView,state:i}}function WebGLRenderState(e,t){const n=new WebGLLights(e,t);const r=[];const i=[];function init(){r.length=0;i.length=0}function pushLight(e){r.push(e)}function pushShadow(e){i.push(e)}function setupLights(e){n.setup(r,e)}function setupLightsView(e){n.setupView(r,e)}const s={lightsArray:r,shadowsArray:i,lights:n};return{init:init,state:s,setupLights:setupLights,setupLightsView:setupLightsView,pushLight:pushLight,pushShadow:pushShadow}}function WebGLRenderStates(e,t){let n=new WeakMap;function get(r,i=0){let s;if(false===n.has(r)){s=new WebGLRenderState(e,t);n.set(r,[s])}else if(i>=n.get(r).length){s=new WebGLRenderState(e,t);n.get(r).push(s)}else s=n.get(r)[i];return s}function dispose(){n=new WeakMap}return{get:get,dispose:dispose}}class MeshDepthMaterial extends Material{constructor(e){super();this.type=\"MeshDepthMaterial\";this.depthPacking=Yt;this.map=null;this.alphaMap=null;this.displacementMap=null;this.displacementScale=1;this.displacementBias=0;this.wireframe=false;this.wireframeLinewidth=1;this.fog=false;this.setValues(e)}copy(e){super.copy(e);this.depthPacking=e.depthPacking;this.map=e.map;this.alphaMap=e.alphaMap;this.displacementMap=e.displacementMap;this.displacementScale=e.displacementScale;this.displacementBias=e.displacementBias;this.wireframe=e.wireframe;this.wireframeLinewidth=e.wireframeLinewidth;return this}}MeshDepthMaterial.prototype.isMeshDepthMaterial=true;class MeshDistanceMaterial extends Material{constructor(e){super();this.type=\"MeshDistanceMaterial\";this.referencePosition=new Vector3;this.nearDistance=1;this.farDistance=1e3;this.map=null;this.alphaMap=null;this.displacementMap=null;this.displacementScale=1;this.displacementBias=0;this.fog=false;this.setValues(e)}copy(e){super.copy(e);this.referencePosition.copy(e.referencePosition);this.nearDistance=e.nearDistance;this.farDistance=e.farDistance;this.map=e.map;this.alphaMap=e.alphaMap;this.displacementMap=e.displacementMap;this.displacementScale=e.displacementScale;this.displacementBias=e.displacementBias;return this}}MeshDistanceMaterial.prototype.isMeshDistanceMaterial=true;const Do=\"void main() {\\n\\tgl_Position = vec4( position, 1.0 );\\n}\";const Bo=\"uniform sampler2D shadow_pass;\\nuniform vec2 resolution;\\nuniform float radius;\\n#include <packing>\\nvoid main() {\\n\\tconst float samples = float( VSM_SAMPLES );\\n\\tfloat mean = 0.0;\\n\\tfloat squared_mean = 0.0;\\n\\tfloat uvStride = samples <= 1.0 ? 0.0 : 2.0 / ( samples - 1.0 );\\n\\tfloat uvStart = samples <= 1.0 ? 0.0 : - 1.0;\\n\\tfor ( float i = 0.0; i < samples; i ++ ) {\\n\\t\\tfloat uvOffset = uvStart + i * uvStride;\\n\\t\\t#ifdef HORIZONTAL_PASS\\n\\t\\t\\tvec2 distribution = unpackRGBATo2Half( texture2D( shadow_pass, ( gl_FragCoord.xy + vec2( uvOffset, 0.0 ) * radius ) / resolution ) );\\n\\t\\t\\tmean += distribution.x;\\n\\t\\t\\tsquared_mean += distribution.y * distribution.y + distribution.x * distribution.x;\\n\\t\\t#else\\n\\t\\t\\tfloat depth = unpackRGBAToDepth( texture2D( shadow_pass, ( gl_FragCoord.xy + vec2( 0.0, uvOffset ) * radius ) / resolution ) );\\n\\t\\t\\tmean += depth;\\n\\t\\t\\tsquared_mean += depth * depth;\\n\\t\\t#endif\\n\\t}\\n\\tmean = mean / samples;\\n\\tsquared_mean = squared_mean / samples;\\n\\tfloat std_dev = sqrt( squared_mean - mean * mean );\\n\\tgl_FragColor = pack2HalfToRGBA( vec2( mean, std_dev ) );\\n}\";function WebGLShadowMap(e,t,n){let r=new Frustum;const i=new Vector2,s=new Vector2,a=new Vector4,o=new MeshDepthMaterial({depthPacking:Zt}),c=new MeshDistanceMaterial,f={},m=n.maxTextureSize;const y={0:d,1:h,2:p};const x=new ShaderMaterial({defines:{VSM_SAMPLES:8},uniforms:{shadow_pass:{value:null},resolution:{value:new Vector2},radius:{value:4}},vertexShader:Do,fragmentShader:Bo});const b=x.clone();b.defines.HORIZONTAL_PASS=1;const _=new BufferGeometry;_.setAttribute(\"position\",new BufferAttribute(new Float32Array([-1,-1,.5,3,-1,.5,-1,3,.5]),3));const M=new Mesh(_,x);const w=this;this.enabled=false;this.autoUpdate=true;this.needsUpdate=false;this.type=l;this.render=function(t,n,o){if(false===w.enabled)return;if(false===w.autoUpdate&&false===w.needsUpdate)return;if(0===t.length)return;const l=e.getRenderTarget();const c=e.getActiveCubeFace();const h=e.getActiveMipmapLevel();const d=e.state;d.setBlending(g);d.buffers.color.setClear(1,1,1,1);d.buffers.depth.setTest(true);d.setScissorTest(false);for(let l=0,c=t.length;l<c;l++){const c=t[l];const h=c.shadow;if(void 0===h){console.warn(\"THREE.WebGLShadowMap:\",c,\"has no shadow.\");continue}if(false===h.autoUpdate&&false===h.needsUpdate)continue;i.copy(h.mapSize);const p=h.getFrameExtents();i.multiply(p);s.copy(h.mapSize);if(i.x>m||i.y>m){if(i.x>m){s.x=Math.floor(m/p.x);i.x=s.x*p.x;h.mapSize.x=s.x}if(i.y>m){s.y=Math.floor(m/p.y);i.y=s.y*p.y;h.mapSize.y=s.y}}if(null===h.map&&!h.isPointLightShadow&&this.type===u){const e={minFilter:ye,magFilter:ye,format:Ne};h.map=new WebGLRenderTarget(i.x,i.y,e);h.map.texture.name=c.name+\".shadowMap\";h.mapPass=new WebGLRenderTarget(i.x,i.y,e);h.camera.updateProjectionMatrix()}if(null===h.map){const e={minFilter:de,magFilter:de,format:Ne};h.map=new WebGLRenderTarget(i.x,i.y,e);h.map.texture.name=c.name+\".shadowMap\";h.camera.updateProjectionMatrix()}e.setRenderTarget(h.map);e.clear();const f=h.getViewportCount();for(let e=0;e<f;e++){const t=h.getViewport(e);a.set(s.x*t.x,s.y*t.y,s.x*t.z,s.y*t.w);d.viewport(a);h.updateMatrices(c,e);r=h.getFrustum();renderObject(n,o,h.camera,c,this.type)}h.isPointLightShadow||this.type!==u||VSMPass(h,o);h.needsUpdate=false}w.needsUpdate=false;e.setRenderTarget(l,c,h)};function VSMPass(n,r){const i=t.update(M);if(x.defines.VSM_SAMPLES!==n.blurSamples){x.defines.VSM_SAMPLES=n.blurSamples;b.defines.VSM_SAMPLES=n.blurSamples;x.needsUpdate=true;b.needsUpdate=true}x.uniforms.shadow_pass.value=n.map.texture;x.uniforms.resolution.value=n.mapSize;x.uniforms.radius.value=n.radius;e.setRenderTarget(n.mapPass);e.clear();e.renderBufferDirect(r,null,i,x,M,null);b.uniforms.shadow_pass.value=n.mapPass.texture;b.uniforms.resolution.value=n.mapSize;b.uniforms.radius.value=n.radius;e.setRenderTarget(n.map);e.clear();e.renderBufferDirect(r,null,i,b,M,null)}function getDepthMaterial(t,n,r,i,s,a,l){let h=null;const d=true===i.isPointLight?t.customDistanceMaterial:t.customDepthMaterial;h=void 0!==d?d:true===i.isPointLight?c:o;if(e.localClippingEnabled&&true===r.clipShadows&&0!==r.clippingPlanes.length||r.displacementMap&&0!==r.displacementScale||r.alphaMap&&r.alphaTest>0){const e=h.uuid,t=r.uuid;let n=f[e];if(void 0===n){n={};f[e]=n}let i=n[t];if(void 0===i){i=h.clone();n[t]=i}h=i}h.visible=r.visible;h.wireframe=r.wireframe;h.side=l===u?null!==r.shadowSide?r.shadowSide:r.side:null!==r.shadowSide?r.shadowSide:y[r.side];h.alphaMap=r.alphaMap;h.alphaTest=r.alphaTest;h.clipShadows=r.clipShadows;h.clippingPlanes=r.clippingPlanes;h.clipIntersection=r.clipIntersection;h.displacementMap=r.displacementMap;h.displacementScale=r.displacementScale;h.displacementBias=r.displacementBias;h.wireframeLinewidth=r.wireframeLinewidth;h.linewidth=r.linewidth;if(true===i.isPointLight&&true===h.isMeshDistanceMaterial){h.referencePosition.setFromMatrixPosition(i.matrixWorld);h.nearDistance=s;h.farDistance=a}return h}function renderObject(n,i,s,a,o){if(false===n.visible)return;const l=n.layers.test(i.layers);if(l&&(n.isMesh||n.isLine||n.isPoints)&&(n.castShadow||n.receiveShadow&&o===u)&&(!n.frustumCulled||r.intersectsObject(n))){n.modelViewMatrix.multiplyMatrices(s.matrixWorldInverse,n.matrixWorld);const r=t.update(n);const i=n.material;if(Array.isArray(i)){const t=r.groups;for(let l=0,c=t.length;l<c;l++){const c=t[l];const u=i[c.materialIndex];if(u&&u.visible){const t=getDepthMaterial(n,r,u,a,s.near,s.far,o);e.renderBufferDirect(s,null,r,t,n,c)}}}else if(i.visible){const t=getDepthMaterial(n,r,i,a,s.near,s.far,o);e.renderBufferDirect(s,null,r,t,n,null)}}const c=n.children;for(let e=0,t=c.length;e<t;e++)renderObject(c[e],i,s,a,o)}}function WebGLState(e,t,n){const a=n.isWebGL2;function ColorBuffer(){let t=false;const n=new Vector4;let r=null;const i=new Vector4(0,0,0,0);return{setMask:function(n){if(r!==n&&!t){e.colorMask(n,n,n,n);r=n}},setLocked:function(e){t=e},setClear:function(t,r,s,a,o){if(true===o){t*=a;r*=a;s*=a}n.set(t,r,s,a);if(false===i.equals(n)){e.clearColor(t,r,s,a);i.copy(n)}},reset:function(){t=false;r=null;i.set(-1,0,0,0)}}}function DepthBuffer(){let t=false;let n=null;let r=null;let i=null;return{setTest:function(e){e?enable(2929):disable(2929)},setMask:function(r){if(n!==r&&!t){e.depthMask(r);n=r}},setFunc:function(t){if(r!==t){if(t)switch(t){case G:e.depthFunc(512);break;case F:e.depthFunc(519);break;case O:e.depthFunc(513);break;case H:e.depthFunc(515);break;case k:e.depthFunc(514);break;case W:e.depthFunc(518);break;case j:e.depthFunc(516);break;case q:e.depthFunc(517);break;default:e.depthFunc(515)}else e.depthFunc(515);r=t}},setLocked:function(e){t=e},setClear:function(t){if(i!==t){e.clearDepth(t);i=t}},reset:function(){t=false;n=null;r=null;i=null}}}function StencilBuffer(){let t=false;let n=null;let r=null;let i=null;let s=null;let a=null;let o=null;let l=null;let c=null;return{setTest:function(e){t||(e?enable(2960):disable(2960))},setMask:function(r){if(n!==r&&!t){e.stencilMask(r);n=r}},setFunc:function(t,n,a){if(r!==t||i!==n||s!==a){e.stencilFunc(t,n,a);r=t;i=n;s=a}},setOp:function(t,n,r){if(a!==t||o!==n||l!==r){e.stencilOp(t,n,r);a=t;o=n;l=r}},setLocked:function(e){t=e},setClear:function(t){if(c!==t){e.clearStencil(t);c=t}},reset:function(){t=false;n=null;r=null;i=null;s=null;a=null;o=null;l=null;c=null}}}const o=new ColorBuffer;const l=new DepthBuffer;const c=new StencilBuffer;let u={};let h={};let f=null;let m=false;let X=null;let J=null;let Y=null;let Z=null;let Q=null;let K=null;let $=null;let ee=false;let te=null;let ne=null;let re=null;let ie=null;let se=null;const ae=e.getParameter(35661);let oe=false;let le=0;const ce=e.getParameter(7938);if(-1!==ce.indexOf(\"WebGL\")){le=parseFloat(/^WebGL (\\d)/.exec(ce)[1]);oe=le>=1}else if(-1!==ce.indexOf(\"OpenGL ES\")){le=parseFloat(/^OpenGL ES (\\d)/.exec(ce)[1]);oe=le>=2}let ue=null;let he={};const de=e.getParameter(3088);const pe=e.getParameter(2978);const fe=(new Vector4).fromArray(de);const me=(new Vector4).fromArray(pe);function createTexture(t,n,r){const i=new Uint8Array(4);const s=e.createTexture();e.bindTexture(t,s);e.texParameteri(t,10241,9728);e.texParameteri(t,10240,9728);for(let t=0;t<r;t++)e.texImage2D(n+t,0,6408,1,1,0,6408,5121,i);return s}const ge={};ge[3553]=createTexture(3553,3553,1);ge[34067]=createTexture(34067,34069,6);o.setClear(0,0,0,1);l.setClear(1);c.setClear(0);enable(2929);l.setFunc(H);setFlipSided(false);setCullFace(i);enable(2884);setBlending(g);function enable(t){if(true!==u[t]){e.enable(t);u[t]=true}}function disable(t){if(false!==u[t]){e.disable(t);u[t]=false}}function bindFramebuffer(t,n){if(h[t]!==n){e.bindFramebuffer(t,n);h[t]=n;if(a){36009===t&&(h[36160]=n);36160===t&&(h[36009]=n)}return true}return false}function useProgram(t){if(f!==t){e.useProgram(t);f=t;return true}return false}const ye={[w]:32774,[S]:32778,[T]:32779};if(a){ye[E]=32775;ye[A]=32776}else{const e=t.get(\"EXT_blend_minmax\");if(null!==e){ye[E]=e.MIN_EXT;ye[A]=e.MAX_EXT}}const ve={[L]:0,[C]:1,[R]:768,[I]:770,[z]:776,[N]:774,[B]:772,[P]:769,[D]:771,[U]:775,[V]:773};function setBlending(t,n,r,i,s,a,o,l){if(t!==g){if(false===m){enable(3042);m=true}if(t===M){s=s||n;a=a||r;o=o||i;if(n!==J||s!==Q){e.blendEquationSeparate(ye[n],ye[s]);J=n;Q=s}if(r!==Y||i!==Z||a!==K||o!==$){e.blendFuncSeparate(ve[r],ve[i],ve[a],ve[o]);Y=r;Z=i;K=a;$=o}X=t;ee=null}else if(t!==X||l!==ee){if(J!==w||Q!==w){e.blendEquation(32774);J=w;Q=w}if(l)switch(t){case y:e.blendFuncSeparate(1,771,1,771);break;case x:e.blendFunc(1,1);break;case b:e.blendFuncSeparate(0,0,769,771);break;case _:e.blendFuncSeparate(0,768,0,770);break;default:console.error(\"THREE.WebGLState: Invalid blending: \",t);break}else switch(t){case y:e.blendFuncSeparate(770,771,1,771);break;case x:e.blendFunc(770,1);break;case b:e.blendFunc(0,769);break;case _:e.blendFunc(0,768);break;default:console.error(\"THREE.WebGLState: Invalid blending: \",t);break}Y=null;Z=null;K=null;$=null;X=t;ee=l}}else if(true===m){disable(3042);m=false}}function setMaterial(e,t){e.side===p?disable(2884):enable(2884);let n=e.side===d;t&&(n=!n);setFlipSided(n);e.blending===y&&false===e.transparent?setBlending(g):setBlending(e.blending,e.blendEquation,e.blendSrc,e.blendDst,e.blendEquationAlpha,e.blendSrcAlpha,e.blendDstAlpha,e.premultipliedAlpha);l.setFunc(e.depthFunc);l.setTest(e.depthTest);l.setMask(e.depthWrite);o.setMask(e.colorWrite);const r=e.stencilWrite;c.setTest(r);if(r){c.setMask(e.stencilWriteMask);c.setFunc(e.stencilFunc,e.stencilRef,e.stencilFuncMask);c.setOp(e.stencilFail,e.stencilZFail,e.stencilZPass)}setPolygonOffset(e.polygonOffset,e.polygonOffsetFactor,e.polygonOffsetUnits);true===e.alphaToCoverage?enable(32926):disable(32926)}function setFlipSided(t){if(te!==t){t?e.frontFace(2304):e.frontFace(2305);te=t}}function setCullFace(t){if(t!==r){enable(2884);t!==ne&&(t===i?e.cullFace(1029):t===s?e.cullFace(1028):e.cullFace(1032))}else disable(2884);ne=t}function setLineWidth(t){if(t!==re){oe&&e.lineWidth(t);re=t}}function setPolygonOffset(t,n,r){if(t){enable(32823);if(ie!==n||se!==r){e.polygonOffset(n,r);ie=n;se=r}}else disable(32823)}function setScissorTest(e){e?enable(3089):disable(3089)}function activeTexture(t){void 0===t&&(t=33984+ae-1);if(ue!==t){e.activeTexture(t);ue=t}}function bindTexture(t,n){null===ue&&activeTexture();let r=he[ue];if(void 0===r){r={type:void 0,texture:void 0};he[ue]=r}if(r.type!==t||r.texture!==n){e.bindTexture(t,n||ge[t]);r.type=t;r.texture=n}}function unbindTexture(){const t=he[ue];if(void 0!==t&&void 0!==t.type){e.bindTexture(t.type,null);t.type=void 0;t.texture=void 0}}function compressedTexImage2D(){try{e.compressedTexImage2D.apply(e,arguments)}catch(e){console.error(\"THREE.WebGLState:\",e)}}function texSubImage2D(){try{e.texSubImage2D.apply(e,arguments)}catch(e){console.error(\"THREE.WebGLState:\",e)}}function texSubImage3D(){try{e.texSubImage3D.apply(e,arguments)}catch(e){console.error(\"THREE.WebGLState:\",e)}}function compressedTexSubImage2D(){try{e.compressedTexSubImage2D.apply(e,arguments)}catch(e){console.error(\"THREE.WebGLState:\",e)}}function texStorage2D(){try{e.texStorage2D.apply(e,arguments)}catch(e){console.error(\"THREE.WebGLState:\",e)}}function texStorage3D(){try{e.texStorage3D.apply(e,arguments)}catch(e){console.error(\"THREE.WebGLState:\",e)}}function texImage2D(){try{e.texImage2D.apply(e,arguments)}catch(e){console.error(\"THREE.WebGLState:\",e)}}function texImage3D(){try{e.texImage3D.apply(e,arguments)}catch(e){console.error(\"THREE.WebGLState:\",e)}}function scissor(t){if(false===fe.equals(t)){e.scissor(t.x,t.y,t.z,t.w);fe.copy(t)}}function viewport(t){if(false===me.equals(t)){e.viewport(t.x,t.y,t.z,t.w);me.copy(t)}}function reset(){e.disable(3042);e.disable(2884);e.disable(2929);e.disable(32823);e.disable(3089);e.disable(2960);e.disable(32926);e.blendEquation(32774);e.blendFunc(1,0);e.blendFuncSeparate(1,0,1,0);e.colorMask(true,true,true,true);e.clearColor(0,0,0,0);e.depthMask(true);e.depthFunc(513);e.clearDepth(1);e.stencilMask(4294967295);e.stencilFunc(519,0,4294967295);e.stencilOp(7680,7680,7680);e.clearStencil(0);e.cullFace(1029);e.frontFace(2305);e.polygonOffset(0,0);e.activeTexture(33984);e.bindFramebuffer(36160,null);if(true===a){e.bindFramebuffer(36009,null);e.bindFramebuffer(36008,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);u={};ue=null;he={};h={};f=null;m=false;X=null;J=null;Y=null;Z=null;Q=null;K=null;$=null;ee=false;te=null;ne=null;re=null;ie=null;se=null;fe.set(0,0,e.canvas.width,e.canvas.height);me.set(0,0,e.canvas.width,e.canvas.height);o.reset();l.reset();c.reset()}return{buffers:{color:o,depth:l,stencil:c},enable:enable,disable:disable,bindFramebuffer:bindFramebuffer,useProgram:useProgram,setBlending:setBlending,setMaterial:setMaterial,setFlipSided:setFlipSided,setCullFace:setCullFace,setLineWidth:setLineWidth,setPolygonOffset:setPolygonOffset,setScissorTest:setScissorTest,activeTexture:activeTexture,bindTexture:bindTexture,unbindTexture:unbindTexture,compressedTexImage2D:compressedTexImage2D,texImage2D:texImage2D,texImage3D:texImage3D,texStorage2D:texStorage2D,texStorage3D:texStorage3D,texSubImage2D:texSubImage2D,texSubImage3D:texSubImage3D,compressedTexSubImage2D:compressedTexSubImage2D,scissor:scissor,viewport:viewport,reset:reset}}function WebGLTextures(e,t,n,r,i,s,a){const o=i.isWebGL2;const l=i.maxTextures;const c=i.maxCubemapSize;const u=i.maxTextureSize;const h=i.maxSamples;const d=t.has(\"WEBGL_multisampled_render_to_texture\");const p=d?t.get(\"WEBGL_multisampled_render_to_texture\"):void 0;const f=new WeakMap;let m;let g=false;try{g=\"undefined\"!==typeof OffscreenCanvas&&null!==new OffscreenCanvas(1,1).getContext(\"2d\")}catch(e){}function createCanvas(e,t){return g?new OffscreenCanvas(e,t):createElementNS(\"canvas\")}function resizeImage(e,t,n,r){let i=1;(e.width>r||e.height>r)&&(i=r/Math.max(e.width,e.height));if(i<1||true===t){if(\"undefined\"!==typeof HTMLImageElement&&e instanceof HTMLImageElement||\"undefined\"!==typeof HTMLCanvasElement&&e instanceof HTMLCanvasElement||\"undefined\"!==typeof ImageBitmap&&e instanceof ImageBitmap){const r=t?floorPowerOfTwo:Math.floor;const s=r(i*e.width);const a=r(i*e.height);void 0===m&&(m=createCanvas(s,a));const o=n?createCanvas(s,a):m;o.width=s;o.height=a;const l=o.getContext(\"2d\");l.drawImage(e,0,0,s,a);console.warn(\"THREE.WebGLRenderer: Texture has been resized from (\"+e.width+\"x\"+e.height+\") to (\"+s+\"x\"+a+\").\");return o}\"data\"in e&&console.warn(\"THREE.WebGLRenderer: Image in DataTexture is too big (\"+e.width+\"x\"+e.height+\").\");return e}return e}function isPowerOfTwo$1(e){return isPowerOfTwo(e.width)&&isPowerOfTwo(e.height)}function textureNeedsPowerOfTwo(e){return!o&&(e.wrapS!==ue||e.wrapT!==ue||e.minFilter!==de&&e.minFilter!==ye)}function textureNeedsGenerateMipmaps(e,t){return e.generateMipmaps&&t&&e.minFilter!==de&&e.minFilter!==ye}function generateMipmap(t){e.generateMipmap(t)}function getInternalFormat(n,r,i,s){if(false===o)return r;if(null!==n){if(void 0!==e[n])return e[n];console.warn(\"THREE.WebGLRenderer: Attempt to use non-existing WebGL internal format '\"+n+\"'\")}let a=r;if(6403===r){5126===i&&(a=33326);5131===i&&(a=33325);5121===i&&(a=33321)}if(6407===r){5126===i&&(a=34837);5131===i&&(a=34843);5121===i&&(a=32849)}if(6408===r){5126===i&&(a=34836);5131===i&&(a=34842);5121===i&&(a=s===Jt?35907:32856)}33325!==a&&33326!==a&&34842!==a&&34836!==a||t.get(\"EXT_color_buffer_float\");return a}function getMipLevels(e,t,n){return true===textureNeedsGenerateMipmaps(e,n)||e.isFramebufferTexture&&e.minFilter!==de&&e.minFilter!==ye?Math.log2(Math.max(t.width,t.height))+1:void 0!==e.mipmaps&&e.mipmaps.length>0?e.mipmaps.length:e.isCompressedTexture&&Array.isArray(e.image)?t.mipmaps.length:1}function filterFallback(e){return e===de||e===pe||e===me?9728:9729}function onTextureDispose(e){const t=e.target;t.removeEventListener(\"dispose\",onTextureDispose);deallocateTexture(t);t.isVideoTexture&&f.delete(t);a.memory.textures--}function onRenderTargetDispose(e){const t=e.target;t.removeEventListener(\"dispose\",onRenderTargetDispose);deallocateRenderTarget(t)}function deallocateTexture(t){const n=r.get(t);if(void 0!==n.__webglInit){e.deleteTexture(n.__webglTexture);r.remove(t)}}function deallocateRenderTarget(t){const n=t.texture;const i=r.get(t);const s=r.get(n);if(t){if(void 0!==s.__webglTexture){e.deleteTexture(s.__webglTexture);a.memory.textures--}t.depthTexture&&t.depthTexture.dispose();if(t.isWebGLCubeRenderTarget)for(let t=0;t<6;t++){e.deleteFramebuffer(i.__webglFramebuffer[t]);i.__webglDepthbuffer&&e.deleteRenderbuffer(i.__webglDepthbuffer[t])}else{e.deleteFramebuffer(i.__webglFramebuffer);i.__webglDepthbuffer&&e.deleteRenderbuffer(i.__webglDepthbuffer);i.__webglMultisampledFramebuffer&&e.deleteFramebuffer(i.__webglMultisampledFramebuffer);i.__webglColorRenderbuffer&&e.deleteRenderbuffer(i.__webglColorRenderbuffer);i.__webglDepthRenderbuffer&&e.deleteRenderbuffer(i.__webglDepthRenderbuffer)}if(t.isWebGLMultipleRenderTargets)for(let t=0,i=n.length;t<i;t++){const i=r.get(n[t]);if(i.__webglTexture){e.deleteTexture(i.__webglTexture);a.memory.textures--}r.remove(n[t])}r.remove(n);r.remove(t)}}let y=0;function resetTextureUnits(){y=0}function allocateTextureUnit(){const e=y;e>=l&&console.warn(\"THREE.WebGLTextures: Trying to use \"+e+\" texture units while this GPU supports only \"+l);y+=1;return e}function setTexture2D(e,t){const i=r.get(e);e.isVideoTexture&&updateVideoTexture(e);if(e.version>0&&i.__version!==e.version){const n=e.image;if(void 0===n)console.warn(\"THREE.WebGLRenderer: Texture marked for update but image is undefined\");else{if(false!==n.complete){uploadTexture(i,e,t);return}console.warn(\"THREE.WebGLRenderer: Texture marked for update but image is incomplete\")}}n.activeTexture(33984+t);n.bindTexture(3553,i.__webglTexture)}function setTexture2DArray(e,t){const i=r.get(e);if(e.version>0&&i.__version!==e.version)uploadTexture(i,e,t);else{n.activeTexture(33984+t);n.bindTexture(35866,i.__webglTexture)}}function setTexture3D(e,t){const i=r.get(e);if(e.version>0&&i.__version!==e.version)uploadTexture(i,e,t);else{n.activeTexture(33984+t);n.bindTexture(32879,i.__webglTexture)}}function setTextureCube(e,t){const i=r.get(e);if(e.version>0&&i.__version!==e.version)uploadCubeTexture(i,e,t);else{n.activeTexture(33984+t);n.bindTexture(34067,i.__webglTexture)}}const x={[ce]:10497,[ue]:33071,[he]:33648};const b={[de]:9728,[pe]:9984,[me]:9986,[ye]:9729,[ve]:9985,[be]:9987};function setTextureParameters(n,s,a){if(a){e.texParameteri(n,10242,x[s.wrapS]);e.texParameteri(n,10243,x[s.wrapT]);32879!==n&&35866!==n||e.texParameteri(n,32882,x[s.wrapR]);e.texParameteri(n,10240,b[s.magFilter]);e.texParameteri(n,10241,b[s.minFilter])}else{e.texParameteri(n,10242,33071);e.texParameteri(n,10243,33071);32879!==n&&35866!==n||e.texParameteri(n,32882,33071);s.wrapS===ue&&s.wrapT===ue||console.warn(\"THREE.WebGLRenderer: Texture is not power of two. Texture.wrapS and Texture.wrapT should be set to THREE.ClampToEdgeWrapping.\");e.texParameteri(n,10240,filterFallback(s.magFilter));e.texParameteri(n,10241,filterFallback(s.minFilter));s.minFilter!==de&&s.minFilter!==ye&&console.warn(\"THREE.WebGLRenderer: Texture is not power of two. Texture.minFilter should be set to THREE.NearestFilter or THREE.LinearFilter.\")}if(true===t.has(\"EXT_texture_filter_anisotropic\")){const a=t.get(\"EXT_texture_filter_anisotropic\");if(s.type===Le&&false===t.has(\"OES_texture_float_linear\"))return;if(false===o&&s.type===Ce&&false===t.has(\"OES_texture_half_float_linear\"))return;if(s.anisotropy>1||r.get(s).__currentAnisotropy){e.texParameterf(n,a.TEXTURE_MAX_ANISOTROPY_EXT,Math.min(s.anisotropy,i.getMaxAnisotropy()));r.get(s).__currentAnisotropy=s.anisotropy}}}function initTexture(t,n){if(void 0===t.__webglInit){t.__webglInit=true;n.addEventListener(\"dispose\",onTextureDispose);t.__webglTexture=e.createTexture();a.memory.textures++}}function uploadTexture(t,r,i){let a=3553;r.isDataTexture2DArray&&(a=35866);r.isDataTexture3D&&(a=32879);initTexture(t,r);n.activeTexture(33984+i);n.bindTexture(a,t.__webglTexture);e.pixelStorei(37440,r.flipY);e.pixelStorei(37441,r.premultiplyAlpha);e.pixelStorei(3317,r.unpackAlignment);e.pixelStorei(37443,0);const l=textureNeedsPowerOfTwo(r)&&false===isPowerOfTwo$1(r.image);const c=resizeImage(r.image,l,false,u);const h=isPowerOfTwo$1(c)||o,d=s.convert(r.format);let p=s.convert(r.type),f=getInternalFormat(r.internalFormat,d,p,r.encoding);setTextureParameters(a,r,h);let m;const g=r.mipmaps;const y=o&&true!==r.isVideoTexture;const x=void 0===t.__version;const b=getMipLevels(r,c,h);if(r.isDepthTexture){f=6402;o?f=r.type===Le?36012:r.type===Ae?33190:r.type===De?35056:33189:r.type===Le&&console.error(\"WebGLRenderer: Floating point depth texture requires WebGL2.\");if(r.format===Ge&&6402===f&&r.type!==Te&&r.type!==Ae){console.warn(\"THREE.WebGLRenderer: Use UnsignedShortType or UnsignedIntType for DepthFormat DepthTexture.\");r.type=Te;p=s.convert(r.type)}if(r.format===Fe&&6402===f){f=34041;if(r.type!==De){console.warn(\"THREE.WebGLRenderer: Use UnsignedInt248Type for DepthStencilFormat DepthTexture.\");r.type=De;p=s.convert(r.type)}}y&&x?n.texStorage2D(3553,1,f,c.width,c.height):n.texImage2D(3553,0,f,c.width,c.height,0,d,p,null)}else if(r.isDataTexture)if(g.length>0&&h){y&&x&&n.texStorage2D(3553,b,f,g[0].width,g[0].height);for(let e=0,t=g.length;e<t;e++){m=g[e];y?n.texSubImage2D(3553,0,0,0,m.width,m.height,d,p,m.data):n.texImage2D(3553,e,f,m.width,m.height,0,d,p,m.data)}r.generateMipmaps=false}else if(y){x&&n.texStorage2D(3553,b,f,c.width,c.height);n.texSubImage2D(3553,0,0,0,c.width,c.height,d,p,c.data)}else n.texImage2D(3553,0,f,c.width,c.height,0,d,p,c.data);else if(r.isCompressedTexture){y&&x&&n.texStorage2D(3553,b,f,g[0].width,g[0].height);for(let e=0,t=g.length;e<t;e++){m=g[e];r.format!==Ne&&r.format!==Ve?null!==d?y?n.compressedTexSubImage2D(3553,e,0,0,m.width,m.height,d,m.data):n.compressedTexImage2D(3553,e,f,m.width,m.height,0,m.data):console.warn(\"THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .uploadTexture()\"):y?n.texSubImage2D(3553,e,0,0,m.width,m.height,d,p,m.data):n.texImage2D(3553,e,f,m.width,m.height,0,d,p,m.data)}}else if(r.isDataTexture2DArray)if(y){x&&n.texStorage3D(35866,b,f,c.width,c.height,c.depth);n.texSubImage3D(35866,0,0,0,0,c.width,c.height,c.depth,d,p,c.data)}else n.texImage3D(35866,0,f,c.width,c.height,c.depth,0,d,p,c.data);else if(r.isDataTexture3D)if(y){x&&n.texStorage3D(32879,b,f,c.width,c.height,c.depth);n.texSubImage3D(32879,0,0,0,0,c.width,c.height,c.depth,d,p,c.data)}else n.texImage3D(32879,0,f,c.width,c.height,c.depth,0,d,p,c.data);else if(r.isFramebufferTexture)y&&x?n.texStorage2D(3553,b,f,c.width,c.height):n.texImage2D(3553,0,f,c.width,c.height,0,d,p,null);else if(g.length>0&&h){y&&x&&n.texStorage2D(3553,b,f,g[0].width,g[0].height);for(let e=0,t=g.length;e<t;e++){m=g[e];y?n.texSubImage2D(3553,e,0,0,d,p,m):n.texImage2D(3553,e,f,d,p,m)}r.generateMipmaps=false}else if(y){x&&n.texStorage2D(3553,b,f,c.width,c.height);n.texSubImage2D(3553,0,0,0,d,p,c)}else n.texImage2D(3553,0,f,d,p,c);textureNeedsGenerateMipmaps(r,h)&&generateMipmap(a);t.__version=r.version;r.onUpdate&&r.onUpdate(r)}function uploadCubeTexture(t,r,i){if(6!==r.image.length)return;initTexture(t,r);n.activeTexture(33984+i);n.bindTexture(34067,t.__webglTexture);e.pixelStorei(37440,r.flipY);e.pixelStorei(37441,r.premultiplyAlpha);e.pixelStorei(3317,r.unpackAlignment);e.pixelStorei(37443,0);const a=r&&(r.isCompressedTexture||r.image[0].isCompressedTexture);const l=r.image[0]&&r.image[0].isDataTexture;const u=[];for(let e=0;e<6;e++)u[e]=a||l?l?r.image[e].image:r.image[e]:resizeImage(r.image[e],false,true,c);const h=u[0],d=isPowerOfTwo$1(h)||o,p=s.convert(r.format),f=s.convert(r.type),m=getInternalFormat(r.internalFormat,p,f,r.encoding);const g=o&&true!==r.isVideoTexture;const y=void 0===t.__version;let x=getMipLevels(r,h,d);setTextureParameters(34067,r,d);let b;if(a){g&&y&&n.texStorage2D(34067,x,m,h.width,h.height);for(let e=0;e<6;e++){b=u[e].mipmaps;for(let t=0;t<b.length;t++){const i=b[t];r.format!==Ne&&r.format!==Ve?null!==p?g?n.compressedTexSubImage2D(34069+e,t,0,0,i.width,i.height,p,i.data):n.compressedTexImage2D(34069+e,t,m,i.width,i.height,0,i.data):console.warn(\"THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .setTextureCube()\"):g?n.texSubImage2D(34069+e,t,0,0,i.width,i.height,p,f,i.data):n.texImage2D(34069+e,t,m,i.width,i.height,0,p,f,i.data)}}}else{b=r.mipmaps;if(g&&y){b.length>0&&x++;n.texStorage2D(34067,x,m,u[0].width,u[0].height)}for(let e=0;e<6;e++)if(l){g?n.texSubImage2D(34069+e,0,0,0,u[e].width,u[e].height,p,f,u[e].data):n.texImage2D(34069+e,0,m,u[e].width,u[e].height,0,p,f,u[e].data);for(let t=0;t<b.length;t++){const r=b[t];const i=r.image[e].image;g?n.texSubImage2D(34069+e,t+1,0,0,i.width,i.height,p,f,i.data):n.texImage2D(34069+e,t+1,m,i.width,i.height,0,p,f,i.data)}}else{g?n.texSubImage2D(34069+e,0,0,0,p,f,u[e]):n.texImage2D(34069+e,0,m,p,f,u[e]);for(let t=0;t<b.length;t++){const r=b[t];g?n.texSubImage2D(34069+e,t+1,0,0,p,f,r.image[e]):n.texImage2D(34069+e,t+1,m,p,f,r.image[e])}}}textureNeedsGenerateMipmaps(r,d)&&generateMipmap(34067);t.__version=r.version;r.onUpdate&&r.onUpdate(r)}function setupFrameBufferTexture(t,i,a,o,l){const c=s.convert(a.format);const u=s.convert(a.type);const h=getInternalFormat(a.internalFormat,c,u,a.encoding);const d=r.get(i);d.__hasExternalTextures||(32879===l||35866===l?n.texImage3D(l,0,h,i.width,i.height,i.depth,0,c,u,null):n.texImage2D(l,0,h,i.width,i.height,0,c,u,null));n.bindFramebuffer(36160,t);i.useRenderToTexture?p.framebufferTexture2DMultisampleEXT(36160,o,l,r.get(a).__webglTexture,0,getRenderTargetSamples(i)):e.framebufferTexture2D(36160,o,l,r.get(a).__webglTexture,0);n.bindFramebuffer(36160,null)}function setupRenderBufferStorage(t,n,r){e.bindRenderbuffer(36161,t);if(n.depthBuffer&&!n.stencilBuffer){let i=33189;if(r||n.useRenderToTexture){const t=n.depthTexture;t&&t.isDepthTexture&&(t.type===Le?i=36012:t.type===Ae&&(i=33190));const r=getRenderTargetSamples(n);n.useRenderToTexture?p.renderbufferStorageMultisampleEXT(36161,r,i,n.width,n.height):e.renderbufferStorageMultisample(36161,r,i,n.width,n.height)}else e.renderbufferStorage(36161,i,n.width,n.height);e.framebufferRenderbuffer(36160,36096,36161,t)}else if(n.depthBuffer&&n.stencilBuffer){const i=getRenderTargetSamples(n);r&&n.useRenderbuffer?e.renderbufferStorageMultisample(36161,i,35056,n.width,n.height):n.useRenderToTexture?p.renderbufferStorageMultisampleEXT(36161,i,35056,n.width,n.height):e.renderbufferStorage(36161,34041,n.width,n.height);e.framebufferRenderbuffer(36160,33306,36161,t)}else{const t=true===n.isWebGLMultipleRenderTargets?n.texture[0]:n.texture;const i=s.convert(t.format);const a=s.convert(t.type);const o=getInternalFormat(t.internalFormat,i,a,t.encoding);const l=getRenderTargetSamples(n);r&&n.useRenderbuffer?e.renderbufferStorageMultisample(36161,l,o,n.width,n.height):n.useRenderToTexture?p.renderbufferStorageMultisampleEXT(36161,l,o,n.width,n.height):e.renderbufferStorage(36161,o,n.width,n.height)}e.bindRenderbuffer(36161,null)}function setupDepthTexture(t,i){const s=i&&i.isWebGLCubeRenderTarget;if(s)throw new Error(\"Depth Texture with cube render targets is not supported\");n.bindFramebuffer(36160,t);if(!(i.depthTexture&&i.depthTexture.isDepthTexture))throw new Error(\"renderTarget.depthTexture must be an instance of THREE.DepthTexture\");if(!r.get(i.depthTexture).__webglTexture||i.depthTexture.image.width!==i.width||i.depthTexture.image.height!==i.height){i.depthTexture.image.width=i.width;i.depthTexture.image.height=i.height;i.depthTexture.needsUpdate=true}setTexture2D(i.depthTexture,0);const a=r.get(i.depthTexture).__webglTexture;const o=getRenderTargetSamples(i);if(i.depthTexture.format===Ge)i.useRenderToTexture?p.framebufferTexture2DMultisampleEXT(36160,36096,3553,a,0,o):e.framebufferTexture2D(36160,36096,3553,a,0);else{if(i.depthTexture.format!==Fe)throw new Error(\"Unknown depthTexture format\");i.useRenderToTexture?p.framebufferTexture2DMultisampleEXT(36160,33306,3553,a,0,o):e.framebufferTexture2D(36160,33306,3553,a,0)}}function setupDepthRenderbuffer(t){const i=r.get(t);const s=true===t.isWebGLCubeRenderTarget;if(t.depthTexture&&!i.__autoAllocateDepthBuffer){if(s)throw new Error(\"target.depthTexture not supported in Cube render targets\");setupDepthTexture(i.__webglFramebuffer,t)}else if(s){i.__webglDepthbuffer=[];for(let r=0;r<6;r++){n.bindFramebuffer(36160,i.__webglFramebuffer[r]);i.__webglDepthbuffer[r]=e.createRenderbuffer();setupRenderBufferStorage(i.__webglDepthbuffer[r],t,false)}}else{n.bindFramebuffer(36160,i.__webglFramebuffer);i.__webglDepthbuffer=e.createRenderbuffer();setupRenderBufferStorage(i.__webglDepthbuffer,t,false)}n.bindFramebuffer(36160,null)}function rebindTextures(e,t,n){const i=r.get(e);void 0!==t&&setupFrameBufferTexture(i.__webglFramebuffer,e,e.texture,36064,3553);void 0!==n&&setupDepthRenderbuffer(e)}function setupRenderTarget(t){const l=t.texture;const c=r.get(t);const u=r.get(l);t.addEventListener(\"dispose\",onRenderTargetDispose);if(true!==t.isWebGLMultipleRenderTargets){void 0===u.__webglTexture&&(u.__webglTexture=e.createTexture());u.__version=l.version;a.memory.textures++}const h=true===t.isWebGLCubeRenderTarget;const d=true===t.isWebGLMultipleRenderTargets;const p=l.isDataTexture3D||l.isDataTexture2DArray;const f=isPowerOfTwo$1(t)||o;if(o&&l.format===Ve&&(l.type===Le||l.type===Ce)){l.format=Ne;console.warn(\"THREE.WebGLRenderer: Rendering to textures with RGB format is not supported. Using RGBA format instead.\")}if(h){c.__webglFramebuffer=[];for(let t=0;t<6;t++)c.__webglFramebuffer[t]=e.createFramebuffer()}else{c.__webglFramebuffer=e.createFramebuffer();if(d)if(i.drawBuffers){const n=t.texture;for(let t=0,i=n.length;t<i;t++){const i=r.get(n[t]);if(void 0===i.__webglTexture){i.__webglTexture=e.createTexture();a.memory.textures++}}}else console.warn(\"THREE.WebGLRenderer: WebGLMultipleRenderTargets can only be used with WebGL2 or WEBGL_draw_buffers extension.\");else if(t.useRenderbuffer)if(o){c.__webglMultisampledFramebuffer=e.createFramebuffer();c.__webglColorRenderbuffer=e.createRenderbuffer();e.bindRenderbuffer(36161,c.__webglColorRenderbuffer);const r=s.convert(l.format);const i=s.convert(l.type);const a=getInternalFormat(l.internalFormat,r,i,l.encoding);const o=getRenderTargetSamples(t);e.renderbufferStorageMultisample(36161,o,a,t.width,t.height);n.bindFramebuffer(36160,c.__webglMultisampledFramebuffer);e.framebufferRenderbuffer(36160,36064,36161,c.__webglColorRenderbuffer);e.bindRenderbuffer(36161,null);if(t.depthBuffer){c.__webglDepthRenderbuffer=e.createRenderbuffer();setupRenderBufferStorage(c.__webglDepthRenderbuffer,t,true)}n.bindFramebuffer(36160,null)}else console.warn(\"THREE.WebGLRenderer: WebGLMultisampleRenderTarget can only be used with WebGL2.\")}if(h){n.bindTexture(34067,u.__webglTexture);setTextureParameters(34067,l,f);for(let e=0;e<6;e++)setupFrameBufferTexture(c.__webglFramebuffer[e],t,l,36064,34069+e);textureNeedsGenerateMipmaps(l,f)&&generateMipmap(34067);n.unbindTexture()}else if(d){const e=t.texture;for(let i=0,s=e.length;i<s;i++){const s=e[i];const a=r.get(s);n.bindTexture(3553,a.__webglTexture);setTextureParameters(3553,s,f);setupFrameBufferTexture(c.__webglFramebuffer,t,s,36064+i,3553);textureNeedsGenerateMipmaps(s,f)&&generateMipmap(3553)}n.unbindTexture()}else{let e=3553;if(p)if(o){const t=l.isDataTexture3D;e=t?32879:35866}else console.warn(\"THREE.DataTexture3D and THREE.DataTexture2DArray only supported with WebGL2.\");n.bindTexture(e,u.__webglTexture);setTextureParameters(e,l,f);setupFrameBufferTexture(c.__webglFramebuffer,t,l,36064,e);textureNeedsGenerateMipmaps(l,f)&&generateMipmap(e);n.unbindTexture()}t.depthBuffer&&setupDepthRenderbuffer(t)}function updateRenderTargetMipmap(e){const t=isPowerOfTwo$1(e)||o;const i=true===e.isWebGLMultipleRenderTargets?e.texture:[e.texture];for(let s=0,a=i.length;s<a;s++){const a=i[s];if(textureNeedsGenerateMipmaps(a,t)){const t=e.isWebGLCubeRenderTarget?34067:3553;const i=r.get(a).__webglTexture;n.bindTexture(t,i);generateMipmap(t);n.unbindTexture()}}}function updateMultisampleRenderTarget(t){if(t.useRenderbuffer)if(o){const i=t.width;const s=t.height;let a=16384;const o=[36064];const l=t.stencilBuffer?33306:36096;t.depthBuffer&&o.push(l);if(!t.ignoreDepthForMultisampleCopy){t.depthBuffer&&(a|=256);t.stencilBuffer&&(a|=1024)}const c=r.get(t);n.bindFramebuffer(36008,c.__webglMultisampledFramebuffer);n.bindFramebuffer(36009,c.__webglFramebuffer);if(t.ignoreDepthForMultisampleCopy){e.invalidateFramebuffer(36008,[l]);e.invalidateFramebuffer(36009,[l])}e.blitFramebuffer(0,0,i,s,0,0,i,s,a,9728);e.invalidateFramebuffer(36008,o);n.bindFramebuffer(36008,null);n.bindFramebuffer(36009,c.__webglMultisampledFramebuffer)}else console.warn(\"THREE.WebGLRenderer: WebGLMultisampleRenderTarget can only be used with WebGL2.\")}function getRenderTargetSamples(e){return o&&(e.useRenderbuffer||e.useRenderToTexture)?Math.min(h,e.samples):0}function updateVideoTexture(e){const t=a.render.frame;if(f.get(e)!==t){f.set(e,t);e.update()}}let _=false;let M=false;function safeSetTexture2D(e,t){if(e&&e.isWebGLRenderTarget){if(false===_){console.warn(\"THREE.WebGLTextures.safeSetTexture2D: don't use render targets as textures. Use their .texture property instead.\");_=true}e=e.texture}setTexture2D(e,t)}function safeSetTextureCube(e,t){if(e&&e.isWebGLCubeRenderTarget){if(false===M){console.warn(\"THREE.WebGLTextures.safeSetTextureCube: don't use cube render targets as textures. Use their .texture property instead.\");M=true}e=e.texture}setTextureCube(e,t)}this.allocateTextureUnit=allocateTextureUnit;this.resetTextureUnits=resetTextureUnits;this.setTexture2D=setTexture2D;this.setTexture2DArray=setTexture2DArray;this.setTexture3D=setTexture3D;this.setTextureCube=setTextureCube;this.rebindTextures=rebindTextures;this.setupRenderTarget=setupRenderTarget;this.updateRenderTargetMipmap=updateRenderTargetMipmap;this.updateMultisampleRenderTarget=updateMultisampleRenderTarget;this.setupDepthRenderbuffer=setupDepthRenderbuffer;this.setupFrameBufferTexture=setupFrameBufferTexture;this.safeSetTexture2D=safeSetTexture2D;this.safeSetTextureCube=safeSetTextureCube}function WebGLUtils(e,t,n){const r=n.isWebGL2;function convert(e){let n;if(e===Me)return 5121;if(e===Re)return 32819;if(e===Pe)return 32820;if(e===Ie)return 33635;if(e===we)return 5120;if(e===Se)return 5122;if(e===Te)return 5123;if(e===Ee)return 5124;if(e===Ae)return 5125;if(e===Le)return 5126;if(e===Ce){if(r)return 5131;n=t.get(\"OES_texture_half_float\");return null!==n?n.HALF_FLOAT_OES:null}if(e===Be)return 6406;if(e===Ve)return 6407;if(e===Ne)return 6408;if(e===Ue)return 6409;if(e===ze)return 6410;if(e===Ge)return 6402;if(e===Fe)return 34041;if(e===Oe)return 6403;if(e===He)return 36244;if(e===ke)return 33319;if(e===We)return 33320;if(e===je)return 36248;if(e===qe)return 36249;if(e===Xe||e===Je||e===Ye||e===Ze){n=t.get(\"WEBGL_compressed_texture_s3tc\");if(null===n)return null;if(e===Xe)return n.COMPRESSED_RGB_S3TC_DXT1_EXT;if(e===Je)return n.COMPRESSED_RGBA_S3TC_DXT1_EXT;if(e===Ye)return n.COMPRESSED_RGBA_S3TC_DXT3_EXT;if(e===Ze)return n.COMPRESSED_RGBA_S3TC_DXT5_EXT}if(e===Qe||e===Ke||e===$e||e===et){n=t.get(\"WEBGL_compressed_texture_pvrtc\");if(null===n)return null;if(e===Qe)return n.COMPRESSED_RGB_PVRTC_4BPPV1_IMG;if(e===Ke)return n.COMPRESSED_RGB_PVRTC_2BPPV1_IMG;if(e===$e)return n.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;if(e===et)return n.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG}if(e===tt){n=t.get(\"WEBGL_compressed_texture_etc1\");return null!==n?n.COMPRESSED_RGB_ETC1_WEBGL:null}if(e===nt||e===rt){n=t.get(\"WEBGL_compressed_texture_etc\");if(null!==n){if(e===nt)return n.COMPRESSED_RGB8_ETC2;if(e===rt)return n.COMPRESSED_RGBA8_ETC2_EAC}}if(e===it||e===st||e===at||e===ot||e===lt||e===ct||e===ut||e===ht||e===dt||e===pt||e===ft||e===mt||e===gt||e===yt||e===xt||e===bt||e===_t||e===Mt||e===wt||e===St||e===Tt||e===Et||e===At||e===Lt||e===Ct||e===Rt||e===Pt||e===It){n=t.get(\"WEBGL_compressed_texture_astc\");return null!==n?e:null}if(e===vt){n=t.get(\"EXT_texture_compression_bptc\");return null!==n?e:null}if(e===De){if(r)return 34042;n=t.get(\"WEBGL_depth_texture\");return null!==n?n.UNSIGNED_INT_24_8_WEBGL:null}}return{convert:convert}}class ArrayCamera extends PerspectiveCamera{constructor(e=[]){super();this.cameras=e}}ArrayCamera.prototype.isArrayCamera=true;class Group extends Object3D{constructor(){super();this.type=\"Group\"}}Group.prototype.isGroup=true;const Vo={type:\"move\"};class WebXRController{constructor(){this._targetRay=null;this._grip=null;this._hand=null}getHandSpace(){if(null===this._hand){this._hand=new Group;this._hand.matrixAutoUpdate=false;this._hand.visible=false;this._hand.joints={};this._hand.inputState={pinching:false}}return this._hand}getTargetRaySpace(){if(null===this._targetRay){this._targetRay=new Group;this._targetRay.matrixAutoUpdate=false;this._targetRay.visible=false;this._targetRay.hasLinearVelocity=false;this._targetRay.linearVelocity=new Vector3;this._targetRay.hasAngularVelocity=false;this._targetRay.angularVelocity=new Vector3}return this._targetRay}getGripSpace(){if(null===this._grip){this._grip=new Group;this._grip.matrixAutoUpdate=false;this._grip.visible=false;this._grip.hasLinearVelocity=false;this._grip.linearVelocity=new Vector3;this._grip.hasAngularVelocity=false;this._grip.angularVelocity=new Vector3}return this._grip}dispatchEvent(e){null!==this._targetRay&&this._targetRay.dispatchEvent(e);null!==this._grip&&this._grip.dispatchEvent(e);null!==this._hand&&this._hand.dispatchEvent(e);return this}disconnect(e){this.dispatchEvent({type:\"disconnected\",data:e});null!==this._targetRay&&(this._targetRay.visible=false);null!==this._grip&&(this._grip.visible=false);null!==this._hand&&(this._hand.visible=false);return this}update(e,t,n){let r=null;let i=null;let s=null;const a=this._targetRay;const o=this._grip;const l=this._hand;if(e&&\"visible-blurred\"!==t.session.visibilityState){if(null!==a){r=t.getPose(e.targetRaySpace,n);if(null!==r){a.matrix.fromArray(r.transform.matrix);a.matrix.decompose(a.position,a.rotation,a.scale);if(r.linearVelocity){a.hasLinearVelocity=true;a.linearVelocity.copy(r.linearVelocity)}else a.hasLinearVelocity=false;if(r.angularVelocity){a.hasAngularVelocity=true;a.angularVelocity.copy(r.angularVelocity)}else a.hasAngularVelocity=false;this.dispatchEvent(Vo)}}if(l&&e.hand){s=true;for(const r of e.hand.values()){const e=t.getJointPose(r,n);if(void 0===l.joints[r.jointName]){const e=new Group;e.matrixAutoUpdate=false;e.visible=false;l.joints[r.jointName]=e;l.add(e)}const i=l.joints[r.jointName];if(null!==e){i.matrix.fromArray(e.transform.matrix);i.matrix.decompose(i.position,i.rotation,i.scale);i.jointRadius=e.radius}i.visible=null!==e}const r=l.joints[\"index-finger-tip\"];const i=l.joints[\"thumb-tip\"];const a=r.position.distanceTo(i.position);const o=.02;const c=.005;if(l.inputState.pinching&&a>o+c){l.inputState.pinching=false;this.dispatchEvent({type:\"pinchend\",handedness:e.handedness,target:this})}else if(!l.inputState.pinching&&a<=o-c){l.inputState.pinching=true;this.dispatchEvent({type:\"pinchstart\",handedness:e.handedness,target:this})}}else if(null!==o&&e.gripSpace){i=t.getPose(e.gripSpace,n);if(null!==i){o.matrix.fromArray(i.transform.matrix);o.matrix.decompose(o.position,o.rotation,o.scale);if(i.linearVelocity){o.hasLinearVelocity=true;o.linearVelocity.copy(i.linearVelocity)}else o.hasLinearVelocity=false;if(i.angularVelocity){o.hasAngularVelocity=true;o.angularVelocity.copy(i.angularVelocity)}else o.hasAngularVelocity=false}}}null!==a&&(a.visible=null!==r);null!==o&&(o.visible=null!==i);null!==l&&(l.visible=null!==s);return this}}class DepthTexture extends Texture{constructor(e,t,n,r,i,s,a,o,l,c){c=void 0!==c?c:Ge;if(c!==Ge&&c!==Fe)throw new Error(\"DepthTexture format must be either THREE.DepthFormat or THREE.DepthStencilFormat\");void 0===n&&c===Ge&&(n=Te);void 0===n&&c===Fe&&(n=De);super(null,r,i,s,a,o,c,n,l);this.image={width:e,height:t};this.magFilter=void 0!==a?a:de;this.minFilter=void 0!==o?o:de;this.flipY=false;this.generateMipmaps=false}}DepthTexture.prototype.isDepthTexture=true;class WebXRManager extends EventDispatcher{constructor(e,t){super();const n=this;let r=null;let i=1;let s=null;let a=\"local-floor\";const o=e.extensions.has(\"WEBGL_multisampled_render_to_texture\");let l=null;let c=null;let u=null;let h=null;let d=false;let p=null;const f=t.getContextAttributes();let m=null;let g=null;const y=[];const x=new Map;const b=new PerspectiveCamera;b.layers.enable(1);b.viewport=new Vector4;const _=new PerspectiveCamera;_.layers.enable(2);_.viewport=new Vector4;const M=[b,_];const w=new ArrayCamera;w.layers.enable(1);w.layers.enable(2);let S=null;let T=null;this.cameraAutoUpdate=true;this.enabled=false;this.isPresenting=false;this.getController=function(e){let t=y[e];if(void 0===t){t=new WebXRController;y[e]=t}return t.getTargetRaySpace()};this.getControllerGrip=function(e){let t=y[e];if(void 0===t){t=new WebXRController;y[e]=t}return t.getGripSpace()};this.getHand=function(e){let t=y[e];if(void 0===t){t=new WebXRController;y[e]=t}return t.getHandSpace()};function onSessionEvent(e){const t=x.get(e.inputSource);t&&t.dispatchEvent({type:e.type,data:e.inputSource})}function onSessionEnd(){x.forEach((function(e,t){e.disconnect(t)}));x.clear();S=null;T=null;e.setRenderTarget(m);h=null;u=null;c=null;r=null;g=null;C.stop();n.isPresenting=false;n.dispatchEvent({type:\"sessionend\"})}this.setFramebufferScaleFactor=function(e){i=e;true===n.isPresenting&&console.warn(\"THREE.WebXRManager: Cannot change framebuffer scale while presenting.\")};this.setReferenceSpaceType=function(e){a=e;true===n.isPresenting&&console.warn(\"THREE.WebXRManager: Cannot change reference space type while presenting.\")};this.getReferenceSpace=function(){return s};this.getBaseLayer=function(){return null!==u?u:h};this.getBinding=function(){return c};this.getFrame=function(){return p};this.getSession=function(){return r};this.setSession=async function(l){r=l;if(null!==r){m=e.getRenderTarget();r.addEventListener(\"select\",onSessionEvent);r.addEventListener(\"selectstart\",onSessionEvent);r.addEventListener(\"selectend\",onSessionEvent);r.addEventListener(\"squeeze\",onSessionEvent);r.addEventListener(\"squeezestart\",onSessionEvent);r.addEventListener(\"squeezeend\",onSessionEvent);r.addEventListener(\"end\",onSessionEnd);r.addEventListener(\"inputsourceschange\",onInputSourcesChange);true!==f.xrCompatible&&await t.makeXRCompatible();if(void 0===r.renderState.layers||false===e.capabilities.isWebGL2){const n={antialias:void 0!==r.renderState.layers||f.antialias,alpha:f.alpha,depth:f.depth,stencil:f.stencil,framebufferScaleFactor:i};h=new XRWebGLLayer(r,t,n);r.updateRenderState({baseLayer:h});g=new WebGLRenderTarget(h.framebufferWidth,h.framebufferHeight,{format:Ne,type:Me,encoding:e.outputEncoding})}else{d=f.antialias;let n=null;let s=null;let a=null;if(f.depth){a=f.stencil?35056:33190;n=f.stencil?Fe:Ge;s=f.stencil?De:Te}const l={colorFormat:f.alpha||d?32856:32849,depthFormat:a,scaleFactor:i};c=new XRWebGLBinding(r,t);u=c.createProjectionLayer(l);r.updateRenderState({layers:[u]});g=d?new WebGLMultisampleRenderTarget(u.textureWidth,u.textureHeight,{format:Ne,type:Me,depthTexture:new DepthTexture(u.textureWidth,u.textureHeight,s,void 0,void 0,void 0,void 0,void 0,void 0,n),stencilBuffer:f.stencil,ignoreDepth:u.ignoreDepthValues,useRenderToTexture:o,encoding:e.outputEncoding}):new WebGLRenderTarget(u.textureWidth,u.textureHeight,{format:f.alpha?Ne:Ve,type:Me,depthTexture:new DepthTexture(u.textureWidth,u.textureHeight,s,void 0,void 0,void 0,void 0,void 0,void 0,n),stencilBuffer:f.stencil,ignoreDepth:u.ignoreDepthValues,encoding:e.outputEncoding})}this.setFoveation(1);s=await r.requestReferenceSpace(a);C.setContext(r);C.start();n.isPresenting=true;n.dispatchEvent({type:\"sessionstart\"})}};function onInputSourcesChange(e){const t=r.inputSources;for(let e=0;e<y.length;e++)x.set(t[e],y[e]);for(let t=0;t<e.removed.length;t++){const n=e.removed[t];const r=x.get(n);if(r){r.dispatchEvent({type:\"disconnected\",data:n});x.delete(n)}}for(let t=0;t<e.added.length;t++){const n=e.added[t];const r=x.get(n);r&&r.dispatchEvent({type:\"connected\",data:n})}}const E=new Vector3;const A=new Vector3;function setProjectionFromUnion(e,t,n){E.setFromMatrixPosition(t.matrixWorld);A.setFromMatrixPosition(n.matrixWorld);const r=E.distanceTo(A);const i=t.projectionMatrix.elements;const s=n.projectionMatrix.elements;const a=i[14]/(i[10]-1);const o=i[14]/(i[10]+1);const l=(i[9]+1)/i[5];const c=(i[9]-1)/i[5];const u=(i[8]-1)/i[0];const h=(s[8]+1)/s[0];const d=a*u;const p=a*h;const f=r/(-u+h);const m=f*-u;t.matrixWorld.decompose(e.position,e.quaternion,e.scale);e.translateX(m);e.translateZ(f);e.matrixWorld.compose(e.position,e.quaternion,e.scale);e.matrixWorldInverse.copy(e.matrixWorld).invert();const g=a+f;const y=o+f;const x=d-m;const b=p+(r-m);const _=l*o/y*g;const M=c*o/y*g;e.projectionMatrix.makePerspective(x,b,_,M,g,y)}function updateCamera(e,t){null===t?e.matrixWorld.copy(e.matrix):e.matrixWorld.multiplyMatrices(t.matrixWorld,e.matrix);e.matrixWorldInverse.copy(e.matrixWorld).invert()}this.updateCamera=function(e){if(null===r)return;w.near=_.near=b.near=e.near;w.far=_.far=b.far=e.far;if(S!==w.near||T!==w.far){r.updateRenderState({depthNear:w.near,depthFar:w.far});S=w.near;T=w.far}const t=e.parent;const n=w.cameras;updateCamera(w,t);for(let e=0;e<n.length;e++)updateCamera(n[e],t);w.matrixWorld.decompose(w.position,w.quaternion,w.scale);e.position.copy(w.position);e.quaternion.copy(w.quaternion);e.scale.copy(w.scale);e.matrix.copy(w.matrix);e.matrixWorld.copy(w.matrixWorld);const i=e.children;for(let e=0,t=i.length;e<t;e++)i[e].updateMatrixWorld(true);2===n.length?setProjectionFromUnion(w,b,_):w.projectionMatrix.copy(b.projectionMatrix)};this.getCamera=function(){return w};this.getFoveation=function(){return null!==u?u.fixedFoveation:null!==h?h.fixedFoveation:void 0};this.setFoveation=function(e){null!==u&&(u.fixedFoveation=e);null!==h&&void 0!==h.fixedFoveation&&(h.fixedFoveation=e)};let L=null;function onAnimationFrame(t,n){l=n.getViewerPose(s);p=n;if(null!==l){const t=l.views;if(null!==h){e.setRenderTargetFramebuffer(g,h.framebuffer);e.setRenderTarget(g)}let n=false;if(t.length!==w.cameras.length){w.cameras.length=0;n=true}for(let r=0;r<t.length;r++){const i=t[r];let s=null;if(null!==h)s=h.getViewport(i);else{const t=c.getViewSubImage(u,i);s=t.viewport;if(0===r){e.setRenderTargetTextures(g,t.colorTexture,u.ignoreDepthValues?void 0:t.depthStencilTexture);e.setRenderTarget(g)}}const a=M[r];a.matrix.fromArray(i.transform.matrix);a.projectionMatrix.fromArray(i.projectionMatrix);a.viewport.set(s.x,s.y,s.width,s.height);0===r&&w.matrix.copy(a.matrix);true===n&&w.cameras.push(a)}}const i=r.inputSources;for(let e=0;e<y.length;e++){const t=y[e];const r=i[e];t.update(r,n,s)}L&&L(t,n);p=null}const C=new WebGLAnimation;C.setAnimationLoop(onAnimationFrame);this.setAnimationLoop=function(e){L=e};this.dispose=function(){}}}function WebGLMaterials(e){function refreshFogUniforms(e,t){e.fogColor.value.copy(t.color);if(t.isFog){e.fogNear.value=t.near;e.fogFar.value=t.far}else t.isFogExp2&&(e.fogDensity.value=t.density)}function refreshMaterialUniforms(e,t,n,r,i){if(t.isMeshBasicMaterial)refreshUniformsCommon(e,t);else if(t.isMeshLambertMaterial){refreshUniformsCommon(e,t);refreshUniformsLambert(e,t)}else if(t.isMeshToonMaterial){refreshUniformsCommon(e,t);refreshUniformsToon(e,t)}else if(t.isMeshPhongMaterial){refreshUniformsCommon(e,t);refreshUniformsPhong(e,t)}else if(t.isMeshStandardMaterial){refreshUniformsCommon(e,t);t.isMeshPhysicalMaterial?refreshUniformsPhysical(e,t,i):refreshUniformsStandard(e,t)}else if(t.isMeshMatcapMaterial){refreshUniformsCommon(e,t);refreshUniformsMatcap(e,t)}else if(t.isMeshDepthMaterial){refreshUniformsCommon(e,t);refreshUniformsDepth(e,t)}else if(t.isMeshDistanceMaterial){refreshUniformsCommon(e,t);refreshUniformsDistance(e,t)}else if(t.isMeshNormalMaterial){refreshUniformsCommon(e,t);refreshUniformsNormal(e,t)}else if(t.isLineBasicMaterial){refreshUniformsLine(e,t);t.isLineDashedMaterial&&refreshUniformsDash(e,t)}else if(t.isPointsMaterial)refreshUniformsPoints(e,t,n,r);else if(t.isSpriteMaterial)refreshUniformsSprites(e,t);else if(t.isShadowMaterial){e.color.value.copy(t.color);e.opacity.value=t.opacity}else t.isShaderMaterial&&(t.uniformsNeedUpdate=false)}function refreshUniformsCommon(t,n){t.opacity.value=n.opacity;n.color&&t.diffuse.value.copy(n.color);n.emissive&&t.emissive.value.copy(n.emissive).multiplyScalar(n.emissiveIntensity);n.map&&(t.map.value=n.map);n.alphaMap&&(t.alphaMap.value=n.alphaMap);n.specularMap&&(t.specularMap.value=n.specularMap);n.alphaTest>0&&(t.alphaTest.value=n.alphaTest);const r=e.get(n).envMap;if(r){t.envMap.value=r;t.flipEnvMap.value=r.isCubeTexture&&false===r.isRenderTargetTexture?-1:1;t.reflectivity.value=n.reflectivity;t.ior.value=n.ior;t.refractionRatio.value=n.refractionRatio}if(n.lightMap){t.lightMap.value=n.lightMap;t.lightMapIntensity.value=n.lightMapIntensity}if(n.aoMap){t.aoMap.value=n.aoMap;t.aoMapIntensity.value=n.aoMapIntensity}let i;n.map?i=n.map:n.specularMap?i=n.specularMap:n.displacementMap?i=n.displacementMap:n.normalMap?i=n.normalMap:n.bumpMap?i=n.bumpMap:n.roughnessMap?i=n.roughnessMap:n.metalnessMap?i=n.metalnessMap:n.alphaMap?i=n.alphaMap:n.emissiveMap?i=n.emissiveMap:n.clearcoatMap?i=n.clearcoatMap:n.clearcoatNormalMap?i=n.clearcoatNormalMap:n.clearcoatRoughnessMap?i=n.clearcoatRoughnessMap:n.specularIntensityMap?i=n.specularIntensityMap:n.specularColorMap?i=n.specularColorMap:n.transmissionMap?i=n.transmissionMap:n.thicknessMap?i=n.thicknessMap:n.sheenColorMap?i=n.sheenColorMap:n.sheenRoughnessMap&&(i=n.sheenRoughnessMap);if(void 0!==i){i.isWebGLRenderTarget&&(i=i.texture);true===i.matrixAutoUpdate&&i.updateMatrix();t.uvTransform.value.copy(i.matrix)}let s;n.aoMap?s=n.aoMap:n.lightMap&&(s=n.lightMap);if(void 0!==s){s.isWebGLRenderTarget&&(s=s.texture);true===s.matrixAutoUpdate&&s.updateMatrix();t.uv2Transform.value.copy(s.matrix)}}function refreshUniformsLine(e,t){e.diffuse.value.copy(t.color);e.opacity.value=t.opacity}function refreshUniformsDash(e,t){e.dashSize.value=t.dashSize;e.totalSize.value=t.dashSize+t.gapSize;e.scale.value=t.scale}function refreshUniformsPoints(e,t,n,r){e.diffuse.value.copy(t.color);e.opacity.value=t.opacity;e.size.value=t.size*n;e.scale.value=.5*r;t.map&&(e.map.value=t.map);t.alphaMap&&(e.alphaMap.value=t.alphaMap);t.alphaTest>0&&(e.alphaTest.value=t.alphaTest);let i;t.map?i=t.map:t.alphaMap&&(i=t.alphaMap);if(void 0!==i){true===i.matrixAutoUpdate&&i.updateMatrix();e.uvTransform.value.copy(i.matrix)}}function refreshUniformsSprites(e,t){e.diffuse.value.copy(t.color);e.opacity.value=t.opacity;e.rotation.value=t.rotation;t.map&&(e.map.value=t.map);t.alphaMap&&(e.alphaMap.value=t.alphaMap);t.alphaTest>0&&(e.alphaTest.value=t.alphaTest);let n;t.map?n=t.map:t.alphaMap&&(n=t.alphaMap);if(void 0!==n){true===n.matrixAutoUpdate&&n.updateMatrix();e.uvTransform.value.copy(n.matrix)}}function refreshUniformsLambert(e,t){t.emissiveMap&&(e.emissiveMap.value=t.emissiveMap)}function refreshUniformsPhong(e,t){e.specular.value.copy(t.specular);e.shininess.value=Math.max(t.shininess,1e-4);t.emissiveMap&&(e.emissiveMap.value=t.emissiveMap);if(t.bumpMap){e.bumpMap.value=t.bumpMap;e.bumpScale.value=t.bumpScale;t.side===d&&(e.bumpScale.value*=-1)}if(t.normalMap){e.normalMap.value=t.normalMap;e.normalScale.value.copy(t.normalScale);t.side===d&&e.normalScale.value.negate()}if(t.displacementMap){e.displacementMap.value=t.displacementMap;e.displacementScale.value=t.displacementScale;e.displacementBias.value=t.displacementBias}}function refreshUniformsToon(e,t){t.gradientMap&&(e.gradientMap.value=t.gradientMap);t.emissiveMap&&(e.emissiveMap.value=t.emissiveMap);if(t.bumpMap){e.bumpMap.value=t.bumpMap;e.bumpScale.value=t.bumpScale;t.side===d&&(e.bumpScale.value*=-1)}if(t.normalMap){e.normalMap.value=t.normalMap;e.normalScale.value.copy(t.normalScale);t.side===d&&e.normalScale.value.negate()}if(t.displacementMap){e.displacementMap.value=t.displacementMap;e.displacementScale.value=t.displacementScale;e.displacementBias.value=t.displacementBias}}function refreshUniformsStandard(t,n){t.roughness.value=n.roughness;t.metalness.value=n.metalness;n.roughnessMap&&(t.roughnessMap.value=n.roughnessMap);n.metalnessMap&&(t.metalnessMap.value=n.metalnessMap);n.emissiveMap&&(t.emissiveMap.value=n.emissiveMap);if(n.bumpMap){t.bumpMap.value=n.bumpMap;t.bumpScale.value=n.bumpScale;n.side===d&&(t.bumpScale.value*=-1)}if(n.normalMap){t.normalMap.value=n.normalMap;t.normalScale.value.copy(n.normalScale);n.side===d&&t.normalScale.value.negate()}if(n.displacementMap){t.displacementMap.value=n.displacementMap;t.displacementScale.value=n.displacementScale;t.displacementBias.value=n.displacementBias}const r=e.get(n).envMap;r&&(t.envMapIntensity.value=n.envMapIntensity)}function refreshUniformsPhysical(e,t,n){refreshUniformsStandard(e,t);e.ior.value=t.ior;if(t.sheen>0){e.sheenColor.value.copy(t.sheenColor).multiplyScalar(t.sheen);e.sheenRoughness.value=t.sheenRoughness;t.sheenColorMap&&(e.sheenColorMap.value=t.sheenColorMap);t.sheenRoughnessMap&&(e.sheenRoughnessMap.value=t.sheenRoughnessMap)}if(t.clearcoat>0){e.clearcoat.value=t.clearcoat;e.clearcoatRoughness.value=t.clearcoatRoughness;t.clearcoatMap&&(e.clearcoatMap.value=t.clearcoatMap);t.clearcoatRoughnessMap&&(e.clearcoatRoughnessMap.value=t.clearcoatRoughnessMap);if(t.clearcoatNormalMap){e.clearcoatNormalScale.value.copy(t.clearcoatNormalScale);e.clearcoatNormalMap.value=t.clearcoatNormalMap;t.side===d&&e.clearcoatNormalScale.value.negate()}}if(t.transmission>0){e.transmission.value=t.transmission;e.transmissionSamplerMap.value=n.texture;e.transmissionSamplerSize.value.set(n.width,n.height);t.transmissionMap&&(e.transmissionMap.value=t.transmissionMap);e.thickness.value=t.thickness;t.thicknessMap&&(e.thicknessMap.value=t.thicknessMap);e.attenuationDistance.value=t.attenuationDistance;e.attenuationColor.value.copy(t.attenuationColor)}e.specularIntensity.value=t.specularIntensity;e.specularColor.value.copy(t.specularColor);t.specularIntensityMap&&(e.specularIntensityMap.value=t.specularIntensityMap);t.specularColorMap&&(e.specularColorMap.value=t.specularColorMap)}function refreshUniformsMatcap(e,t){t.matcap&&(e.matcap.value=t.matcap);if(t.bumpMap){e.bumpMap.value=t.bumpMap;e.bumpScale.value=t.bumpScale;t.side===d&&(e.bumpScale.value*=-1)}if(t.normalMap){e.normalMap.value=t.normalMap;e.normalScale.value.copy(t.normalScale);t.side===d&&e.normalScale.value.negate()}if(t.displacementMap){e.displacementMap.value=t.displacementMap;e.displacementScale.value=t.displacementScale;e.displacementBias.value=t.displacementBias}}function refreshUniformsDepth(e,t){if(t.displacementMap){e.displacementMap.value=t.displacementMap;e.displacementScale.value=t.displacementScale;e.displacementBias.value=t.displacementBias}}function refreshUniformsDistance(e,t){if(t.displacementMap){e.displacementMap.value=t.displacementMap;e.displacementScale.value=t.displacementScale;e.displacementBias.value=t.displacementBias}e.referencePosition.value.copy(t.referencePosition);e.nearDistance.value=t.nearDistance;e.farDistance.value=t.farDistance}function refreshUniformsNormal(e,t){if(t.bumpMap){e.bumpMap.value=t.bumpMap;e.bumpScale.value=t.bumpScale;t.side===d&&(e.bumpScale.value*=-1)}if(t.normalMap){e.normalMap.value=t.normalMap;e.normalScale.value.copy(t.normalScale);t.side===d&&e.normalScale.value.negate()}if(t.displacementMap){e.displacementMap.value=t.displacementMap;e.displacementScale.value=t.displacementScale;e.displacementBias.value=t.displacementBias}}return{refreshFogUniforms:refreshFogUniforms,refreshMaterialUniforms:refreshMaterialUniforms}}function createCanvasElement(){const e=createElementNS(\"canvas\");e.style.display=\"block\";return e}function WebGLRenderer(t={}){const n=void 0!==t.canvas?t.canvas:createCanvasElement(),r=void 0!==t.context?t.context:null,i=void 0!==t.alpha&&t.alpha,s=void 0===t.depth||t.depth,a=void 0===t.stencil||t.stencil,o=void 0!==t.antialias&&t.antialias,l=void 0===t.premultipliedAlpha||t.premultipliedAlpha,c=void 0!==t.preserveDrawingBuffer&&t.preserveDrawingBuffer,u=void 0!==t.powerPreference?t.powerPreference:\"default\",f=void 0!==t.failIfMajorPerformanceCaveat&&t.failIfMajorPerformanceCaveat;let m=null;let g=null;const y=[];const x=[];this.domElement=n;this.debug={\n/**\n\t\t * Enables error checking and reporting when shader programs are being compiled\n\t\t * @type {boolean}\n\t\t */\ncheckShaderErrors:true};this.autoClear=true;this.autoClearColor=true;this.autoClearDepth=true;this.autoClearStencil=true;this.sortObjects=true;this.clippingPlanes=[];this.localClippingEnabled=false;this.outputEncoding=Xt;this.physicallyCorrectLights=false;this.toneMapping=Z;this.toneMappingExposure=1;const b=this;let _=false;let M=0;let w=0;let S=null;let T=-1;let E=null;const A=new Vector4;const L=new Vector4;let C=null;let R=n.width;let P=n.height;let I=1;let D=null;let B=null;const V=new Vector4(0,0,R,P);const N=new Vector4(0,0,R,P);let U=false;const z=[];const G=new Frustum;let F=false;let O=false;let H=null;const k=new Matrix4;const W=new Vector3;const j={background:null,fog:null,environment:null,overrideMaterial:null,isScene:true};function getTargetPixelRatio(){return null===S?I:1}let q=r;function getContext(e,t){for(let r=0;r<e.length;r++){const i=e[r];const s=n.getContext(i,t);if(null!==s)return s}return null}try{const t={alpha:i,depth:s,stencil:a,antialias:o,premultipliedAlpha:l,preserveDrawingBuffer:c,powerPreference:u,failIfMajorPerformanceCaveat:f};\"setAttribute\"in n&&n.setAttribute(\"data-engine\",`three.js r${e}`);n.addEventListener(\"webglcontextlost\",onContextLost,false);n.addEventListener(\"webglcontextrestored\",onContextRestore,false);if(null===q){const e=[\"webgl2\",\"webgl\",\"experimental-webgl\"];true===b.isWebGL1Renderer&&e.shift();q=getContext(e,t);if(null===q)throw getContext(e)?new Error(\"Error creating WebGL context with your selected attributes.\"):new Error(\"Error creating WebGL context.\")}void 0===q.getShaderPrecisionFormat&&(q.getShaderPrecisionFormat=function(){return{rangeMin:1,rangeMax:1,precision:1}})}catch(e){console.error(\"THREE.WebGLRenderer: \"+e.message);throw e}let X,J,Y,Q;let K,$,ee,te,ne,re,ie;let se,ae,oe,le,ce,he;let pe,fe,me,ge;let ye,ve;function initGLContext(){X=new WebGLExtensions(q);J=new WebGLCapabilities(q,X,t);X.init(J);ye=new WebGLUtils(q,X,J);Y=new WebGLState(q,X,J);z[0]=1029;Q=new WebGLInfo(q);K=new WebGLProperties;$=new WebGLTextures(q,X,Y,K,J,ye,Q);ee=new WebGLCubeMaps(b);te=new WebGLCubeUVMaps(b);ne=new WebGLAttributes(q,J);ve=new WebGLBindingStates(q,X,ne,J);re=new WebGLGeometries(q,ne,Q,ve);ie=new WebGLObjects(q,re,ne,Q);fe=new WebGLMorphtargets(q,J,$);ce=new WebGLClipping(K);se=new WebGLPrograms(b,ee,te,X,J,ve,ce);ae=new WebGLMaterials(K);oe=new WebGLRenderLists;le=new WebGLRenderStates(X,J);pe=new WebGLBackground(b,ee,Y,ie,l);he=new WebGLShadowMap(b,ie,J);me=new WebGLBufferRenderer(q,X,Q,J);ge=new WebGLIndexedBufferRenderer(q,X,Q,J);Q.programs=se.programs;b.capabilities=J;b.extensions=X;b.properties=K;b.renderLists=oe;b.shadowMap=he;b.state=Y;b.info=Q}initGLContext();const xe=new WebXRManager(b,q);this.xr=xe;this.getContext=function(){return q};this.getContextAttributes=function(){return q.getContextAttributes()};this.forceContextLoss=function(){const e=X.get(\"WEBGL_lose_context\");e&&e.loseContext()};this.forceContextRestore=function(){const e=X.get(\"WEBGL_lose_context\");e&&e.restoreContext()};this.getPixelRatio=function(){return I};this.setPixelRatio=function(e){if(void 0!==e){I=e;this.setSize(R,P,false)}};this.getSize=function(e){return e.set(R,P)};this.setSize=function(e,t,r){if(xe.isPresenting)console.warn(\"THREE.WebGLRenderer: Can't change size while VR device is presenting.\");else{R=e;P=t;n.width=Math.floor(e*I);n.height=Math.floor(t*I);if(false!==r){n.style.width=e+\"px\";n.style.height=t+\"px\"}this.setViewport(0,0,e,t)}};this.getDrawingBufferSize=function(e){return e.set(R*I,P*I).floor()};this.setDrawingBufferSize=function(e,t,r){R=e;P=t;I=r;n.width=Math.floor(e*r);n.height=Math.floor(t*r);this.setViewport(0,0,e,t)};this.getCurrentViewport=function(e){return e.copy(A)};this.getViewport=function(e){return e.copy(V)};this.setViewport=function(e,t,n,r){e.isVector4?V.set(e.x,e.y,e.z,e.w):V.set(e,t,n,r);Y.viewport(A.copy(V).multiplyScalar(I).floor())};this.getScissor=function(e){return e.copy(N)};this.setScissor=function(e,t,n,r){e.isVector4?N.set(e.x,e.y,e.z,e.w):N.set(e,t,n,r);Y.scissor(L.copy(N).multiplyScalar(I).floor())};this.getScissorTest=function(){return U};this.setScissorTest=function(e){Y.setScissorTest(U=e)};this.setOpaqueSort=function(e){D=e};this.setTransparentSort=function(e){B=e};this.getClearColor=function(e){return e.copy(pe.getClearColor())};this.setClearColor=function(){pe.setClearColor.apply(pe,arguments)};this.getClearAlpha=function(){return pe.getClearAlpha()};this.setClearAlpha=function(){pe.setClearAlpha.apply(pe,arguments)};this.clear=function(e,t,n){let r=0;(void 0===e||e)&&(r|=16384);(void 0===t||t)&&(r|=256);(void 0===n||n)&&(r|=1024);q.clear(r)};this.clearColor=function(){this.clear(true,false,false)};this.clearDepth=function(){this.clear(false,true,false)};this.clearStencil=function(){this.clear(false,false,true)};this.dispose=function(){n.removeEventListener(\"webglcontextlost\",onContextLost,false);n.removeEventListener(\"webglcontextrestored\",onContextRestore,false);oe.dispose();le.dispose();K.dispose();ee.dispose();te.dispose();ie.dispose();ve.dispose();se.dispose();xe.dispose();xe.removeEventListener(\"sessionstart\",onXRSessionStart);xe.removeEventListener(\"sessionend\",onXRSessionEnd);if(H){H.dispose();H=null}we.stop()};function onContextLost(e){e.preventDefault();console.log(\"THREE.WebGLRenderer: Context Lost.\");_=true}function onContextRestore(){console.log(\"THREE.WebGLRenderer: Context Restored.\");_=false;const e=Q.autoReset;const t=he.enabled;const n=he.autoUpdate;const r=he.needsUpdate;const i=he.type;initGLContext();Q.autoReset=e;he.enabled=t;he.autoUpdate=n;he.needsUpdate=r;he.type=i}function onMaterialDispose(e){const t=e.target;t.removeEventListener(\"dispose\",onMaterialDispose);deallocateMaterial(t)}function deallocateMaterial(e){releaseMaterialProgramReferences(e);K.remove(e)}function releaseMaterialProgramReferences(e){const t=K.get(e).programs;if(void 0!==t){t.forEach((function(e){se.releaseProgram(e)}));e.isShaderMaterial&&se.releaseShaderCache(e)}}this.renderBufferDirect=function(e,t,n,r,i,s){null===t&&(t=j);const a=i.isMesh&&i.matrixWorld.determinant()<0;const o=setProgram(e,t,n,r,i);Y.setMaterial(r,a);let l=n.index;const c=n.attributes.position;if(null===l){if(void 0===c||0===c.count)return}else if(0===l.count)return;let u=1;if(true===r.wireframe){l=re.getWireframeAttribute(n);u=2}ve.setup(i,r,o,n,l);let h;let d=me;if(null!==l){h=ne.get(l);d=ge;d.setIndex(h)}const p=null!==l?l.count:c.count;const f=n.drawRange.start*u;const m=n.drawRange.count*u;const g=null!==s?s.start*u:0;const y=null!==s?s.count*u:Infinity;const x=Math.max(f,g);const b=Math.min(p,f+m,g+y)-1;const _=Math.max(0,b-x+1);if(0!==_){if(i.isMesh)if(true===r.wireframe){Y.setLineWidth(r.wireframeLinewidth*getTargetPixelRatio());d.setMode(1)}else d.setMode(4);else if(i.isLine){let e=r.linewidth;void 0===e&&(e=1);Y.setLineWidth(e*getTargetPixelRatio());i.isLineSegments?d.setMode(1):i.isLineLoop?d.setMode(2):d.setMode(3)}else i.isPoints?d.setMode(0):i.isSprite&&d.setMode(4);if(i.isInstancedMesh)d.renderInstances(x,_,i.count);else if(n.isInstancedBufferGeometry){const e=Math.min(n.instanceCount,n._maxInstanceCount);d.renderInstances(x,_,e)}else d.render(x,_)}};this.compile=function(e,t){g=le.get(e);g.init();x.push(g);e.traverseVisible((function(e){if(e.isLight&&e.layers.test(t.layers)){g.pushLight(e);e.castShadow&&g.pushShadow(e)}}));g.setupLights(b.physicallyCorrectLights);e.traverse((function(t){const n=t.material;if(n)if(Array.isArray(n))for(let r=0;r<n.length;r++){const i=n[r];getProgram(i,e,t)}else getProgram(n,e,t)}));x.pop();g=null};let _e=null;function onAnimationFrame(e){_e&&_e(e)}function onXRSessionStart(){we.stop()}function onXRSessionEnd(){we.start()}const we=new WebGLAnimation;we.setAnimationLoop(onAnimationFrame);\"undefined\"!==typeof window&&we.setContext(window);this.setAnimationLoop=function(e){_e=e;xe.setAnimationLoop(e);null===e?we.stop():we.start()};xe.addEventListener(\"sessionstart\",onXRSessionStart);xe.addEventListener(\"sessionend\",onXRSessionEnd);this.render=function(e,t){if(void 0!==t&&true!==t.isCamera){console.error(\"THREE.WebGLRenderer.render: camera is not an instance of THREE.Camera.\");return}if(true===_)return;true===e.autoUpdate&&e.updateMatrixWorld();null===t.parent&&t.updateMatrixWorld();if(true===xe.enabled&&true===xe.isPresenting){true===xe.cameraAutoUpdate&&xe.updateCamera(t);t=xe.getCamera()}true===e.isScene&&e.onBeforeRender(b,e,t,S);g=le.get(e,x.length);g.init();x.push(g);k.multiplyMatrices(t.projectionMatrix,t.matrixWorldInverse);G.setFromProjectionMatrix(k);O=this.localClippingEnabled;F=ce.init(this.clippingPlanes,O,t);m=oe.get(e,y.length);m.init();y.push(m);projectObject(e,t,0,b.sortObjects);m.finish();true===b.sortObjects&&m.sort(D,B);true===F&&ce.beginShadows();const n=g.state.shadowsArray;he.render(n,e,t);true===F&&ce.endShadows();true===this.info.autoReset&&this.info.reset();pe.render(m,e);g.setupLights(b.physicallyCorrectLights);if(t.isArrayCamera){const n=t.cameras;for(let t=0,r=n.length;t<r;t++){const r=n[t];renderScene(m,e,r,r.viewport)}}else renderScene(m,e,t);if(null!==S){$.updateMultisampleRenderTarget(S);$.updateRenderTargetMipmap(S)}true===e.isScene&&e.onAfterRender(b,e,t);Y.buffers.depth.setTest(true);Y.buffers.depth.setMask(true);Y.buffers.color.setMask(true);Y.setPolygonOffset(false);ve.resetDefaultState();T=-1;E=null;x.pop();g=x.length>0?x[x.length-1]:null;y.pop();m=y.length>0?y[y.length-1]:null};function projectObject(e,t,n,r){if(false===e.visible)return;const i=e.layers.test(t.layers);if(i)if(e.isGroup)n=e.renderOrder;else if(e.isLOD)true===e.autoUpdate&&e.update(t);else if(e.isLight){g.pushLight(e);e.castShadow&&g.pushShadow(e)}else if(e.isSprite){if(!e.frustumCulled||G.intersectsSprite(e)){r&&W.setFromMatrixPosition(e.matrixWorld).applyMatrix4(k);const t=ie.update(e);const i=e.material;i.visible&&m.push(e,t,i,n,W.z,null)}}else if(e.isMesh||e.isLine||e.isPoints){if(e.isSkinnedMesh&&e.skeleton.frame!==Q.render.frame){e.skeleton.update();e.skeleton.frame=Q.render.frame}if(!e.frustumCulled||G.intersectsObject(e)){r&&W.setFromMatrixPosition(e.matrixWorld).applyMatrix4(k);const t=ie.update(e);const i=e.material;if(Array.isArray(i)){const r=t.groups;for(let s=0,a=r.length;s<a;s++){const a=r[s];const o=i[a.materialIndex];o&&o.visible&&m.push(e,t,o,n,W.z,a)}}else i.visible&&m.push(e,t,i,n,W.z,null)}}const s=e.children;for(let e=0,i=s.length;e<i;e++)projectObject(s[e],t,n,r)}function renderScene(e,t,n,r){const i=e.opaque;const s=e.transmissive;const a=e.transparent;g.setupLightsView(n);s.length>0&&renderTransmissionPass(i,t,n);r&&Y.viewport(A.copy(r));i.length>0&&renderObjects(i,t,n);s.length>0&&renderObjects(s,t,n);a.length>0&&renderObjects(a,t,n)}function renderTransmissionPass(e,t,n){if(null===H){const e=true===o&&true===J.isWebGL2;const t=e?WebGLMultisampleRenderTarget:WebGLRenderTarget;H=new t(1024,1024,{generateMipmaps:true,type:null!==ye.convert(Ce)?Ce:Me,minFilter:be,magFilter:de,wrapS:ue,wrapT:ue,useRenderToTexture:X.has(\"WEBGL_multisampled_render_to_texture\")})}const r=b.getRenderTarget();b.setRenderTarget(H);b.clear();const i=b.toneMapping;b.toneMapping=Z;renderObjects(e,t,n);b.toneMapping=i;$.updateMultisampleRenderTarget(H);$.updateRenderTargetMipmap(H);b.setRenderTarget(r)}function renderObjects(e,t,n){const r=true===t.isScene?t.overrideMaterial:null;for(let i=0,s=e.length;i<s;i++){const s=e[i];const a=s.object;const o=s.geometry;const l=null===r?s.material:r;const c=s.group;a.layers.test(n.layers)&&renderObject(a,t,n,o,l,c)}}function renderObject(e,t,n,r,i,s){e.onBeforeRender(b,t,n,r,i,s);e.modelViewMatrix.multiplyMatrices(n.matrixWorldInverse,e.matrixWorld);e.normalMatrix.getNormalMatrix(e.modelViewMatrix);i.onBeforeRender(b,t,n,r,e,s);if(true===i.transparent&&i.side===p){i.side=d;i.needsUpdate=true;b.renderBufferDirect(n,t,r,i,e,s);i.side=h;i.needsUpdate=true;b.renderBufferDirect(n,t,r,i,e,s);i.side=p}else b.renderBufferDirect(n,t,r,i,e,s);e.onAfterRender(b,t,n,r,i,s)}function getProgram(e,t,n){true!==t.isScene&&(t=j);const r=K.get(e);const i=g.state.lights;const s=g.state.shadowsArray;const a=i.state.version;const o=se.getParameters(e,i.state,s,t,n);const l=se.getProgramCacheKey(o);let c=r.programs;r.environment=e.isMeshStandardMaterial?t.environment:null;r.fog=t.fog;r.envMap=(e.isMeshStandardMaterial?te:ee).get(e.envMap||r.environment);if(void 0===c){e.addEventListener(\"dispose\",onMaterialDispose);c=new Map;r.programs=c}let u=c.get(l);if(void 0!==u){if(r.currentProgram===u&&r.lightsStateVersion===a){updateCommonMaterialProperties(e,o);return u}}else{o.uniforms=se.getUniforms(e);e.onBuild(n,o,b);e.onBeforeCompile(o,b);u=se.acquireProgram(o,l);c.set(l,u);r.uniforms=o.uniforms}const h=r.uniforms;(e.isShaderMaterial||e.isRawShaderMaterial)&&true!==e.clipping||(h.clippingPlanes=ce.uniform);updateCommonMaterialProperties(e,o);r.needsLights=materialNeedsLights(e);r.lightsStateVersion=a;if(r.needsLights){h.ambientLightColor.value=i.state.ambient;h.lightProbe.value=i.state.probe;h.directionalLights.value=i.state.directional;h.directionalLightShadows.value=i.state.directionalShadow;h.spotLights.value=i.state.spot;h.spotLightShadows.value=i.state.spotShadow;h.rectAreaLights.value=i.state.rectArea;h.ltc_1.value=i.state.rectAreaLTC1;h.ltc_2.value=i.state.rectAreaLTC2;h.pointLights.value=i.state.point;h.pointLightShadows.value=i.state.pointShadow;h.hemisphereLights.value=i.state.hemi;h.directionalShadowMap.value=i.state.directionalShadowMap;h.directionalShadowMatrix.value=i.state.directionalShadowMatrix;h.spotShadowMap.value=i.state.spotShadowMap;h.spotShadowMatrix.value=i.state.spotShadowMatrix;h.pointShadowMap.value=i.state.pointShadowMap;h.pointShadowMatrix.value=i.state.pointShadowMatrix}const d=u.getUniforms();const p=WebGLUniforms.seqWithValue(d.seq,h);r.currentProgram=u;r.uniformsList=p;return u}function updateCommonMaterialProperties(e,t){const n=K.get(e);n.outputEncoding=t.outputEncoding;n.instancing=t.instancing;n.skinning=t.skinning;n.morphTargets=t.morphTargets;n.morphNormals=t.morphNormals;n.morphTargetsCount=t.morphTargetsCount;n.numClippingPlanes=t.numClippingPlanes;n.numIntersection=t.numClipIntersection;n.vertexAlphas=t.vertexAlphas;n.vertexTangents=t.vertexTangents;n.toneMapping=t.toneMapping}function setProgram(e,t,n,r,i){true!==t.isScene&&(t=j);$.resetTextureUnits();const s=t.fog;const a=r.isMeshStandardMaterial?t.environment:null;const o=null===S?b.outputEncoding:S.texture.encoding;const l=(r.isMeshStandardMaterial?te:ee).get(r.envMap||a);const c=true===r.vertexColors&&!!n.attributes.color&&4===n.attributes.color.itemSize;const u=!!r.normalMap&&!!n.attributes.tangent;const h=!!n.morphAttributes.position;const d=!!n.morphAttributes.normal;const p=!n.morphAttributes.position?0:n.morphAttributes.position.length;const f=r.toneMapped?b.toneMapping:Z;const m=K.get(r);const y=g.state.lights;if(true===F&&(true===O||e!==E)){const t=e===E&&r.id===T;ce.setState(r,e,t)}let x=false;if(r.version===m.__version)m.needsLights&&m.lightsStateVersion!==y.state.version||m.outputEncoding!==o||i.isInstancedMesh&&false===m.instancing?x=true:i.isInstancedMesh||true!==m.instancing?i.isSkinnedMesh&&false===m.skinning?x=true:i.isSkinnedMesh||true!==m.skinning?m.envMap!==l||r.fog&&m.fog!==s?x=true:void 0===m.numClippingPlanes||m.numClippingPlanes===ce.numPlanes&&m.numIntersection===ce.numIntersection?(m.vertexAlphas!==c||m.vertexTangents!==u||m.morphTargets!==h||m.morphNormals!==d||m.toneMapping!==f||true===J.isWebGL2&&m.morphTargetsCount!==p)&&(x=true):x=true:x=true:x=true;else{x=true;m.__version=r.version}let _=m.currentProgram;true===x&&(_=getProgram(r,t,i));let M=false;let w=false;let A=false;const L=_.getUniforms(),C=m.uniforms;if(Y.useProgram(_.program)){M=true;w=true;A=true}if(r.id!==T){T=r.id;w=true}if(M||E!==e){L.setValue(q,\"projectionMatrix\",e.projectionMatrix);J.logarithmicDepthBuffer&&L.setValue(q,\"logDepthBufFC\",2/(Math.log(e.far+1)/Math.LN2));if(E!==e){E=e;w=true;A=true}if(r.isShaderMaterial||r.isMeshPhongMaterial||r.isMeshToonMaterial||r.isMeshStandardMaterial||r.envMap){const t=L.map.cameraPosition;void 0!==t&&t.setValue(q,W.setFromMatrixPosition(e.matrixWorld))}(r.isMeshPhongMaterial||r.isMeshToonMaterial||r.isMeshLambertMaterial||r.isMeshBasicMaterial||r.isMeshStandardMaterial||r.isShaderMaterial)&&L.setValue(q,\"isOrthographic\",true===e.isOrthographicCamera);(r.isMeshPhongMaterial||r.isMeshToonMaterial||r.isMeshLambertMaterial||r.isMeshBasicMaterial||r.isMeshStandardMaterial||r.isShaderMaterial||r.isShadowMaterial||i.isSkinnedMesh)&&L.setValue(q,\"viewMatrix\",e.matrixWorldInverse)}if(i.isSkinnedMesh){L.setOptional(q,i,\"bindMatrix\");L.setOptional(q,i,\"bindMatrixInverse\");const e=i.skeleton;if(e)if(J.floatVertexTextures){null===e.boneTexture&&e.computeBoneTexture();L.setValue(q,\"boneTexture\",e.boneTexture,$);L.setValue(q,\"boneTextureSize\",e.boneTextureSize)}else L.setOptional(q,e,\"boneMatrices\")}!n||void 0===n.morphAttributes.position&&void 0===n.morphAttributes.normal||fe.update(i,n,r,_);if(w||m.receiveShadow!==i.receiveShadow){m.receiveShadow=i.receiveShadow;L.setValue(q,\"receiveShadow\",i.receiveShadow)}if(w){L.setValue(q,\"toneMappingExposure\",b.toneMappingExposure);m.needsLights&&markUniformsLightsNeedsUpdate(C,A);s&&r.fog&&ae.refreshFogUniforms(C,s);ae.refreshMaterialUniforms(C,r,I,P,H);WebGLUniforms.upload(q,m.uniformsList,C,$)}if(r.isShaderMaterial&&true===r.uniformsNeedUpdate){WebGLUniforms.upload(q,m.uniformsList,C,$);r.uniformsNeedUpdate=false}r.isSpriteMaterial&&L.setValue(q,\"center\",i.center);L.setValue(q,\"modelViewMatrix\",i.modelViewMatrix);L.setValue(q,\"normalMatrix\",i.normalMatrix);L.setValue(q,\"modelMatrix\",i.matrixWorld);return _}function markUniformsLightsNeedsUpdate(e,t){e.ambientLightColor.needsUpdate=t;e.lightProbe.needsUpdate=t;e.directionalLights.needsUpdate=t;e.directionalLightShadows.needsUpdate=t;e.pointLights.needsUpdate=t;e.pointLightShadows.needsUpdate=t;e.spotLights.needsUpdate=t;e.spotLightShadows.needsUpdate=t;e.rectAreaLights.needsUpdate=t;e.hemisphereLights.needsUpdate=t}function materialNeedsLights(e){return e.isMeshLambertMaterial||e.isMeshToonMaterial||e.isMeshPhongMaterial||e.isMeshStandardMaterial||e.isShadowMaterial||e.isShaderMaterial&&true===e.lights}this.getActiveCubeFace=function(){return M};this.getActiveMipmapLevel=function(){return w};this.getRenderTarget=function(){return S};this.setRenderTargetTextures=function(e,t,n){K.get(e.texture).__webglTexture=t;K.get(e.depthTexture).__webglTexture=n;const r=K.get(e);r.__hasExternalTextures=true;if(r.__hasExternalTextures){r.__autoAllocateDepthBuffer=void 0===n;if(!r.__autoAllocateDepthBuffer&&e.useRenderToTexture){console.warn(\"render-to-texture extension was disabled because an external texture was provided\");e.useRenderToTexture=false;e.useRenderbuffer=true}}};this.setRenderTargetFramebuffer=function(e,t){const n=K.get(e);n.__webglFramebuffer=t;n.__useDefaultFramebuffer=void 0===t};this.setRenderTarget=function(e,t=0,n=0){S=e;M=t;w=n;let r=true;if(e){const t=K.get(e);if(void 0!==t.__useDefaultFramebuffer){Y.bindFramebuffer(36160,null);r=false}else void 0===t.__webglFramebuffer?$.setupRenderTarget(e):t.__hasExternalTextures&&$.rebindTextures(e,K.get(e.texture).__webglTexture,K.get(e.depthTexture).__webglTexture)}let i=null;let s=false;let a=false;if(e){const n=e.texture;(n.isDataTexture3D||n.isDataTexture2DArray)&&(a=true);const r=K.get(e).__webglFramebuffer;if(e.isWebGLCubeRenderTarget){i=r[t];s=true}else i=e.useRenderbuffer?K.get(e).__webglMultisampledFramebuffer:r;A.copy(e.viewport);L.copy(e.scissor);C=e.scissorTest}else{A.copy(V).multiplyScalar(I).floor();L.copy(N).multiplyScalar(I).floor();C=U}const o=Y.bindFramebuffer(36160,i);if(o&&J.drawBuffers&&r){let t=false;if(e){if(e.isWebGLMultipleRenderTargets){const n=e.texture;if(z.length!==n.length||36064!==z[0]){for(let e=0,t=n.length;e<t;e++)z[e]=36064+e;z.length=n.length;t=true}}else if(1!==z.length||36064!==z[0]){z[0]=36064;z.length=1;t=true}}else if(1!==z.length||1029!==z[0]){z[0]=1029;z.length=1;t=true}t&&(J.isWebGL2?q.drawBuffers(z):X.get(\"WEBGL_draw_buffers\").drawBuffersWEBGL(z))}Y.viewport(A);Y.scissor(L);Y.setScissorTest(C);if(s){const r=K.get(e.texture);q.framebufferTexture2D(36160,36064,34069+t,r.__webglTexture,n)}else if(a){const r=K.get(e.texture);const i=t||0;q.framebufferTextureLayer(36160,36064,r.__webglTexture,n||0,i)}T=-1};this.readRenderTargetPixels=function(e,t,n,r,i,s,a){if(!(e&&e.isWebGLRenderTarget)){console.error(\"THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.\");return}let o=K.get(e).__webglFramebuffer;e.isWebGLCubeRenderTarget&&void 0!==a&&(o=o[a]);if(o){Y.bindFramebuffer(36160,o);try{const a=e.texture;const o=a.format;const l=a.type;if(o!==Ne&&ye.convert(o)!==q.getParameter(35739)){console.error(\"THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in RGBA or implementation defined format.\");return}const c=l===Ce&&(X.has(\"EXT_color_buffer_half_float\")||J.isWebGL2&&X.has(\"EXT_color_buffer_float\"));if(l!==Me&&ye.convert(l)!==q.getParameter(35738)&&!(l===Le&&(J.isWebGL2||X.has(\"OES_texture_float\")||X.has(\"WEBGL_color_buffer_float\")))&&!c){console.error(\"THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in UnsignedByteType or implementation defined type.\");return}36053===q.checkFramebufferStatus(36160)?t>=0&&t<=e.width-r&&n>=0&&n<=e.height-i&&q.readPixels(t,n,r,i,ye.convert(o),ye.convert(l),s):console.error(\"THREE.WebGLRenderer.readRenderTargetPixels: readPixels from renderTarget failed. Framebuffer not complete.\")}finally{const e=null!==S?K.get(S).__webglFramebuffer:null;Y.bindFramebuffer(36160,e)}}};this.copyFramebufferToTexture=function(e,t,n=0){if(true!==t.isFramebufferTexture){console.error(\"THREE.WebGLRenderer: copyFramebufferToTexture() can only be used with FramebufferTexture.\");return}const r=Math.pow(2,-n);const i=Math.floor(t.image.width*r);const s=Math.floor(t.image.height*r);$.setTexture2D(t,0);q.copyTexSubImage2D(3553,n,0,0,e.x,e.y,i,s);Y.unbindTexture()};this.copyTextureToTexture=function(e,t,n,r=0){const i=t.image.width;const s=t.image.height;const a=ye.convert(n.format);const o=ye.convert(n.type);$.setTexture2D(n,0);q.pixelStorei(37440,n.flipY);q.pixelStorei(37441,n.premultiplyAlpha);q.pixelStorei(3317,n.unpackAlignment);t.isDataTexture?q.texSubImage2D(3553,r,e.x,e.y,i,s,a,o,t.image.data):t.isCompressedTexture?q.compressedTexSubImage2D(3553,r,e.x,e.y,t.mipmaps[0].width,t.mipmaps[0].height,a,t.mipmaps[0].data):q.texSubImage2D(3553,r,e.x,e.y,a,o,t.image);0===r&&n.generateMipmaps&&q.generateMipmap(3553);Y.unbindTexture()};this.copyTextureToTexture3D=function(e,t,n,r,i=0){if(b.isWebGL1Renderer){console.warn(\"THREE.WebGLRenderer.copyTextureToTexture3D: can only be used with WebGL2.\");return}const s=e.max.x-e.min.x+1;const a=e.max.y-e.min.y+1;const o=e.max.z-e.min.z+1;const l=ye.convert(r.format);const c=ye.convert(r.type);let u;if(r.isDataTexture3D){$.setTexture3D(r,0);u=32879}else{if(!r.isDataTexture2DArray){console.warn(\"THREE.WebGLRenderer.copyTextureToTexture3D: only supports THREE.DataTexture3D and THREE.DataTexture2DArray.\");return}$.setTexture2DArray(r,0);u=35866}q.pixelStorei(37440,r.flipY);q.pixelStorei(37441,r.premultiplyAlpha);q.pixelStorei(3317,r.unpackAlignment);const h=q.getParameter(3314);const d=q.getParameter(32878);const p=q.getParameter(3316);const f=q.getParameter(3315);const m=q.getParameter(32877);const g=n.isCompressedTexture?n.mipmaps[0]:n.image;q.pixelStorei(3314,g.width);q.pixelStorei(32878,g.height);q.pixelStorei(3316,e.min.x);q.pixelStorei(3315,e.min.y);q.pixelStorei(32877,e.min.z);if(n.isDataTexture||n.isDataTexture3D)q.texSubImage3D(u,i,t.x,t.y,t.z,s,a,o,l,c,g.data);else if(n.isCompressedTexture){console.warn(\"THREE.WebGLRenderer.copyTextureToTexture3D: untested support for compressed srcTexture.\");q.compressedTexSubImage3D(u,i,t.x,t.y,t.z,s,a,o,l,g.data)}else q.texSubImage3D(u,i,t.x,t.y,t.z,s,a,o,l,c,g);q.pixelStorei(3314,h);q.pixelStorei(32878,d);q.pixelStorei(3316,p);q.pixelStorei(3315,f);q.pixelStorei(32877,m);0===i&&r.generateMipmaps&&q.generateMipmap(u);Y.unbindTexture()};this.initTexture=function(e){$.setTexture2D(e,0);Y.unbindTexture()};this.resetState=function(){M=0;w=0;S=null;Y.reset();ve.reset()};\"undefined\"!==typeof __THREE_DEVTOOLS__&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent(\"observe\",{detail:this}))}WebGLRenderer.prototype.isWebGLRenderer=true;class WebGL1Renderer extends WebGLRenderer{}WebGL1Renderer.prototype.isWebGL1Renderer=true;class FogExp2{constructor(e,t=25e-5){this.name=\"\";this.color=new Color(e);this.density=t}clone(){return new FogExp2(this.color,this.density)}toJSON(){return{type:\"FogExp2\",color:this.color.getHex(),density:this.density}}}FogExp2.prototype.isFogExp2=true;class Fog{constructor(e,t=1,n=1e3){this.name=\"\";this.color=new Color(e);this.near=t;this.far=n}clone(){return new Fog(this.color,this.near,this.far)}toJSON(){return{type:\"Fog\",color:this.color.getHex(),near:this.near,far:this.far}}}Fog.prototype.isFog=true;class Scene extends Object3D{constructor(){super();this.type=\"Scene\";this.background=null;this.environment=null;this.fog=null;this.overrideMaterial=null;this.autoUpdate=true;\"undefined\"!==typeof __THREE_DEVTOOLS__&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent(\"observe\",{detail:this}))}copy(e,t){super.copy(e,t);null!==e.background&&(this.background=e.background.clone());null!==e.environment&&(this.environment=e.environment.clone());null!==e.fog&&(this.fog=e.fog.clone());null!==e.overrideMaterial&&(this.overrideMaterial=e.overrideMaterial.clone());this.autoUpdate=e.autoUpdate;this.matrixAutoUpdate=e.matrixAutoUpdate;return this}toJSON(e){const t=super.toJSON(e);null!==this.fog&&(t.object.fog=this.fog.toJSON());return t}}Scene.prototype.isScene=true;class InterleavedBuffer{constructor(e,t){this.array=e;this.stride=t;this.count=void 0!==e?e.length/t:0;this.usage=gn;this.updateRange={offset:0,count:-1};this.version=0;this.uuid=generateUUID()}onUploadCallback(){}set needsUpdate(e){true===e&&this.version++}setUsage(e){this.usage=e;return this}copy(e){this.array=new e.array.constructor(e.array);this.count=e.count;this.stride=e.stride;this.usage=e.usage;return this}copyAt(e,t,n){e*=this.stride;n*=t.stride;for(let r=0,i=this.stride;r<i;r++)this.array[e+r]=t.array[n+r];return this}set(e,t=0){this.array.set(e,t);return this}clone(e){void 0===e.arrayBuffers&&(e.arrayBuffers={});void 0===this.array.buffer._uuid&&(this.array.buffer._uuid=generateUUID());void 0===e.arrayBuffers[this.array.buffer._uuid]&&(e.arrayBuffers[this.array.buffer._uuid]=this.array.slice(0).buffer);const t=new this.array.constructor(e.arrayBuffers[this.array.buffer._uuid]);const n=new this.constructor(t,this.stride);n.setUsage(this.usage);return n}onUpload(e){this.onUploadCallback=e;return this}toJSON(e){void 0===e.arrayBuffers&&(e.arrayBuffers={});void 0===this.array.buffer._uuid&&(this.array.buffer._uuid=generateUUID());void 0===e.arrayBuffers[this.array.buffer._uuid]&&(e.arrayBuffers[this.array.buffer._uuid]=Array.prototype.slice.call(new Uint32Array(this.array.buffer)));return{uuid:this.uuid,buffer:this.array.buffer._uuid,type:this.array.constructor.name,stride:this.stride}}}InterleavedBuffer.prototype.isInterleavedBuffer=true;const No=new Vector3;class InterleavedBufferAttribute{constructor(e,t,n,r=false){this.name=\"\";this.data=e;this.itemSize=t;this.offset=n;this.normalized=true===r}get count(){return this.data.count}get array(){return this.data.array}set needsUpdate(e){this.data.needsUpdate=e}applyMatrix4(e){for(let t=0,n=this.data.count;t<n;t++){No.x=this.getX(t);No.y=this.getY(t);No.z=this.getZ(t);No.applyMatrix4(e);this.setXYZ(t,No.x,No.y,No.z)}return this}applyNormalMatrix(e){for(let t=0,n=this.count;t<n;t++){No.x=this.getX(t);No.y=this.getY(t);No.z=this.getZ(t);No.applyNormalMatrix(e);this.setXYZ(t,No.x,No.y,No.z)}return this}transformDirection(e){for(let t=0,n=this.count;t<n;t++){No.x=this.getX(t);No.y=this.getY(t);No.z=this.getZ(t);No.transformDirection(e);this.setXYZ(t,No.x,No.y,No.z)}return this}setX(e,t){this.data.array[e*this.data.stride+this.offset]=t;return this}setY(e,t){this.data.array[e*this.data.stride+this.offset+1]=t;return this}setZ(e,t){this.data.array[e*this.data.stride+this.offset+2]=t;return this}setW(e,t){this.data.array[e*this.data.stride+this.offset+3]=t;return this}getX(e){return this.data.array[e*this.data.stride+this.offset]}getY(e){return this.data.array[e*this.data.stride+this.offset+1]}getZ(e){return this.data.array[e*this.data.stride+this.offset+2]}getW(e){return this.data.array[e*this.data.stride+this.offset+3]}setXY(e,t,n){e=e*this.data.stride+this.offset;this.data.array[e+0]=t;this.data.array[e+1]=n;return this}setXYZ(e,t,n,r){e=e*this.data.stride+this.offset;this.data.array[e+0]=t;this.data.array[e+1]=n;this.data.array[e+2]=r;return this}setXYZW(e,t,n,r,i){e=e*this.data.stride+this.offset;this.data.array[e+0]=t;this.data.array[e+1]=n;this.data.array[e+2]=r;this.data.array[e+3]=i;return this}clone(e){if(void 0===e){console.log(\"THREE.InterleavedBufferAttribute.clone(): Cloning an interlaved buffer attribute will deinterleave buffer data.\");const e=[];for(let t=0;t<this.count;t++){const n=t*this.data.stride+this.offset;for(let t=0;t<this.itemSize;t++)e.push(this.data.array[n+t])}return new BufferAttribute(new this.array.constructor(e),this.itemSize,this.normalized)}void 0===e.interleavedBuffers&&(e.interleavedBuffers={});void 0===e.interleavedBuffers[this.data.uuid]&&(e.interleavedBuffers[this.data.uuid]=this.data.clone(e));return new InterleavedBufferAttribute(e.interleavedBuffers[this.data.uuid],this.itemSize,this.offset,this.normalized)}toJSON(e){if(void 0===e){console.log(\"THREE.InterleavedBufferAttribute.toJSON(): Serializing an interlaved buffer attribute will deinterleave buffer data.\");const e=[];for(let t=0;t<this.count;t++){const n=t*this.data.stride+this.offset;for(let t=0;t<this.itemSize;t++)e.push(this.data.array[n+t])}return{itemSize:this.itemSize,type:this.array.constructor.name,array:e,normalized:this.normalized}}void 0===e.interleavedBuffers&&(e.interleavedBuffers={});void 0===e.interleavedBuffers[this.data.uuid]&&(e.interleavedBuffers[this.data.uuid]=this.data.toJSON(e));return{isInterleavedBufferAttribute:true,itemSize:this.itemSize,data:this.data.uuid,offset:this.offset,normalized:this.normalized}}}InterleavedBufferAttribute.prototype.isInterleavedBufferAttribute=true;class SpriteMaterial extends Material{constructor(e){super();this.type=\"SpriteMaterial\";this.color=new Color(16777215);this.map=null;this.alphaMap=null;this.rotation=0;this.sizeAttenuation=true;this.transparent=true;this.setValues(e)}copy(e){super.copy(e);this.color.copy(e.color);this.map=e.map;this.alphaMap=e.alphaMap;this.rotation=e.rotation;this.sizeAttenuation=e.sizeAttenuation;return this}}SpriteMaterial.prototype.isSpriteMaterial=true;let Uo;const zo=new Vector3;const Go=new Vector3;const Fo=new Vector3;const Oo=new Vector2;const Ho=new Vector2;const ko=new Matrix4;const Wo=new Vector3;const jo=new Vector3;const qo=new Vector3;const Xo=new Vector2;const Jo=new Vector2;const Yo=new Vector2;class Sprite extends Object3D{constructor(e){super();this.type=\"Sprite\";if(void 0===Uo){Uo=new BufferGeometry;const e=new Float32Array([-.5,-.5,0,0,0,.5,-.5,0,1,0,.5,.5,0,1,1,-.5,.5,0,0,1]);const t=new InterleavedBuffer(e,5);Uo.setIndex([0,1,2,0,2,3]);Uo.setAttribute(\"position\",new InterleavedBufferAttribute(t,3,0,false));Uo.setAttribute(\"uv\",new InterleavedBufferAttribute(t,2,3,false))}this.geometry=Uo;this.material=void 0!==e?e:new SpriteMaterial;this.center=new Vector2(.5,.5)}raycast(e,t){null===e.camera&&console.error('THREE.Sprite: \"Raycaster.camera\" needs to be set in order to raycast against sprites.');Go.setFromMatrixScale(this.matrixWorld);ko.copy(e.camera.matrixWorld);this.modelViewMatrix.multiplyMatrices(e.camera.matrixWorldInverse,this.matrixWorld);Fo.setFromMatrixPosition(this.modelViewMatrix);e.camera.isPerspectiveCamera&&false===this.material.sizeAttenuation&&Go.multiplyScalar(-Fo.z);const n=this.material.rotation;let r,i;if(0!==n){i=Math.cos(n);r=Math.sin(n)}const s=this.center;transformVertex(Wo.set(-.5,-.5,0),Fo,s,Go,r,i);transformVertex(jo.set(.5,-.5,0),Fo,s,Go,r,i);transformVertex(qo.set(.5,.5,0),Fo,s,Go,r,i);Xo.set(0,0);Jo.set(1,0);Yo.set(1,1);let a=e.ray.intersectTriangle(Wo,jo,qo,false,zo);if(null===a){transformVertex(jo.set(-.5,.5,0),Fo,s,Go,r,i);Jo.set(0,1);a=e.ray.intersectTriangle(Wo,qo,jo,false,zo);if(null===a)return}const o=e.ray.origin.distanceTo(zo);o<e.near||o>e.far||t.push({distance:o,point:zo.clone(),uv:Triangle.getUV(zo,Wo,jo,qo,Xo,Jo,Yo,new Vector2),face:null,object:this})}copy(e){super.copy(e);void 0!==e.center&&this.center.copy(e.center);this.material=e.material;return this}}Sprite.prototype.isSprite=true;function transformVertex(e,t,n,r,i,s){Oo.subVectors(e,n).addScalar(.5).multiply(r);if(void 0!==i){Ho.x=s*Oo.x-i*Oo.y;Ho.y=i*Oo.x+s*Oo.y}else Ho.copy(Oo);e.copy(t);e.x+=Ho.x;e.y+=Ho.y;e.applyMatrix4(ko)}const Zo=new Vector3;const Qo=new Vector3;class LOD extends Object3D{constructor(){super();this._currentLevel=0;this.type=\"LOD\";Object.defineProperties(this,{levels:{enumerable:true,value:[]},isLOD:{value:true}});this.autoUpdate=true}copy(e){super.copy(e,false);const t=e.levels;for(let e=0,n=t.length;e<n;e++){const n=t[e];this.addLevel(n.object.clone(),n.distance)}this.autoUpdate=e.autoUpdate;return this}addLevel(e,t=0){t=Math.abs(t);const n=this.levels;let r;for(r=0;r<n.length;r++)if(t<n[r].distance)break;n.splice(r,0,{distance:t,object:e});this.add(e);return this}getCurrentLevel(){return this._currentLevel}getObjectForDistance(e){const t=this.levels;if(t.length>0){let n,r;for(n=1,r=t.length;n<r;n++)if(e<t[n].distance)break;return t[n-1].object}return null}raycast(e,t){const n=this.levels;if(n.length>0){Zo.setFromMatrixPosition(this.matrixWorld);const n=e.ray.origin.distanceTo(Zo);this.getObjectForDistance(n).raycast(e,t)}}update(e){const t=this.levels;if(t.length>1){Zo.setFromMatrixPosition(e.matrixWorld);Qo.setFromMatrixPosition(this.matrixWorld);const n=Zo.distanceTo(Qo)/e.zoom;t[0].object.visible=true;let r,i;for(r=1,i=t.length;r<i;r++){if(!(n>=t[r].distance))break;t[r-1].object.visible=false;t[r].object.visible=true}this._currentLevel=r-1;for(;r<i;r++)t[r].object.visible=false}}toJSON(e){const t=super.toJSON(e);false===this.autoUpdate&&(t.object.autoUpdate=false);t.object.levels=[];const n=this.levels;for(let e=0,r=n.length;e<r;e++){const r=n[e];t.object.levels.push({object:r.object.uuid,distance:r.distance})}return t}}const Ko=new Vector3;const $o=new Vector4;const el=new Vector4;const tl=new Vector3;const nl=new Matrix4;class SkinnedMesh extends Mesh{constructor(e,t){super(e,t);this.type=\"SkinnedMesh\";this.bindMode=\"attached\";this.bindMatrix=new Matrix4;this.bindMatrixInverse=new Matrix4}copy(e){super.copy(e);this.bindMode=e.bindMode;this.bindMatrix.copy(e.bindMatrix);this.bindMatrixInverse.copy(e.bindMatrixInverse);this.skeleton=e.skeleton;return this}bind(e,t){this.skeleton=e;if(void 0===t){this.updateMatrixWorld(true);this.skeleton.calculateInverses();t=this.matrixWorld}this.bindMatrix.copy(t);this.bindMatrixInverse.copy(t).invert()}pose(){this.skeleton.pose()}normalizeSkinWeights(){const e=new Vector4;const t=this.geometry.attributes.skinWeight;for(let n=0,r=t.count;n<r;n++){e.x=t.getX(n);e.y=t.getY(n);e.z=t.getZ(n);e.w=t.getW(n);const r=1/e.manhattanLength();Infinity!==r?e.multiplyScalar(r):e.set(1,0,0,0);t.setXYZW(n,e.x,e.y,e.z,e.w)}}updateMatrixWorld(e){super.updateMatrixWorld(e);\"attached\"===this.bindMode?this.bindMatrixInverse.copy(this.matrixWorld).invert():\"detached\"===this.bindMode?this.bindMatrixInverse.copy(this.bindMatrix).invert():console.warn(\"THREE.SkinnedMesh: Unrecognized bindMode: \"+this.bindMode)}boneTransform(e,t){const n=this.skeleton;const r=this.geometry;$o.fromBufferAttribute(r.attributes.skinIndex,e);el.fromBufferAttribute(r.attributes.skinWeight,e);Ko.copy(t).applyMatrix4(this.bindMatrix);t.set(0,0,0);for(let e=0;e<4;e++){const r=el.getComponent(e);if(0!==r){const i=$o.getComponent(e);nl.multiplyMatrices(n.bones[i].matrixWorld,n.boneInverses[i]);t.addScaledVector(tl.copy(Ko).applyMatrix4(nl),r)}}return t.applyMatrix4(this.bindMatrixInverse)}}SkinnedMesh.prototype.isSkinnedMesh=true;class Bone extends Object3D{constructor(){super();this.type=\"Bone\"}}Bone.prototype.isBone=true;class DataTexture extends Texture{constructor(e=null,t=1,n=1,r,i,s,a,o,l=de,c=de,u,h){super(null,s,a,o,l,c,r,i,u,h);this.image={data:e,width:t,height:n};this.magFilter=l;this.minFilter=c;this.generateMipmaps=false;this.flipY=false;this.unpackAlignment=1}}DataTexture.prototype.isDataTexture=true;const rl=new Matrix4;const il=new Matrix4;class Skeleton{constructor(e=[],t=[]){this.uuid=generateUUID();this.bones=e.slice(0);this.boneInverses=t;this.boneMatrices=null;this.boneTexture=null;this.boneTextureSize=0;this.frame=-1;this.init()}init(){const e=this.bones;const t=this.boneInverses;this.boneMatrices=new Float32Array(16*e.length);if(0===t.length)this.calculateInverses();else if(e.length!==t.length){console.warn(\"THREE.Skeleton: Number of inverse bone matrices does not match amount of bones.\");this.boneInverses=[];for(let e=0,t=this.bones.length;e<t;e++)this.boneInverses.push(new Matrix4)}}calculateInverses(){this.boneInverses.length=0;for(let e=0,t=this.bones.length;e<t;e++){const t=new Matrix4;this.bones[e]&&t.copy(this.bones[e].matrixWorld).invert();this.boneInverses.push(t)}}pose(){for(let e=0,t=this.bones.length;e<t;e++){const t=this.bones[e];t&&t.matrixWorld.copy(this.boneInverses[e]).invert()}for(let e=0,t=this.bones.length;e<t;e++){const t=this.bones[e];if(t){if(t.parent&&t.parent.isBone){t.matrix.copy(t.parent.matrixWorld).invert();t.matrix.multiply(t.matrixWorld)}else t.matrix.copy(t.matrixWorld);t.matrix.decompose(t.position,t.quaternion,t.scale)}}}update(){const e=this.bones;const t=this.boneInverses;const n=this.boneMatrices;const r=this.boneTexture;for(let r=0,i=e.length;r<i;r++){const i=e[r]?e[r].matrixWorld:il;rl.multiplyMatrices(i,t[r]);rl.toArray(n,16*r)}null!==r&&(r.needsUpdate=true)}clone(){return new Skeleton(this.bones,this.boneInverses)}computeBoneTexture(){let e=Math.sqrt(4*this.bones.length);e=ceilPowerOfTwo(e);e=Math.max(e,4);const t=new Float32Array(e*e*4);t.set(this.boneMatrices);const n=new DataTexture(t,e,e,Ne,Le);n.needsUpdate=true;this.boneMatrices=t;this.boneTexture=n;this.boneTextureSize=e;return this}getBoneByName(e){for(let t=0,n=this.bones.length;t<n;t++){const n=this.bones[t];if(n.name===e)return n}}dispose(){if(null!==this.boneTexture){this.boneTexture.dispose();this.boneTexture=null}}fromJSON(e,t){this.uuid=e.uuid;for(let n=0,r=e.bones.length;n<r;n++){const r=e.bones[n];let i=t[r];if(void 0===i){console.warn(\"THREE.Skeleton: No bone found with UUID:\",r);i=new Bone}this.bones.push(i);this.boneInverses.push((new Matrix4).fromArray(e.boneInverses[n]))}this.init();return this}toJSON(){const e={metadata:{version:4.5,type:\"Skeleton\",generator:\"Skeleton.toJSON\"},bones:[],boneInverses:[]};e.uuid=this.uuid;const t=this.bones;const n=this.boneInverses;for(let r=0,i=t.length;r<i;r++){const i=t[r];e.bones.push(i.uuid);const s=n[r];e.boneInverses.push(s.toArray())}return e}}class InstancedBufferAttribute extends BufferAttribute{constructor(e,t,n,r=1){if(\"number\"===typeof n){r=n;n=false;console.error(\"THREE.InstancedBufferAttribute: The constructor now expects normalized as the third argument.\")}super(e,t,n);this.meshPerAttribute=r}copy(e){super.copy(e);this.meshPerAttribute=e.meshPerAttribute;return this}toJSON(){const e=super.toJSON();e.meshPerAttribute=this.meshPerAttribute;e.isInstancedBufferAttribute=true;return e}}InstancedBufferAttribute.prototype.isInstancedBufferAttribute=true;const sl=new Matrix4;const al=new Matrix4;const ol=[];const ll=new Mesh;class InstancedMesh extends Mesh{constructor(e,t,n){super(e,t);this.instanceMatrix=new InstancedBufferAttribute(new Float32Array(16*n),16);this.instanceColor=null;this.count=n;this.frustumCulled=false}copy(e){super.copy(e);this.instanceMatrix.copy(e.instanceMatrix);null!==e.instanceColor&&(this.instanceColor=e.instanceColor.clone());this.count=e.count;return this}getColorAt(e,t){t.fromArray(this.instanceColor.array,3*e)}getMatrixAt(e,t){t.fromArray(this.instanceMatrix.array,16*e)}raycast(e,t){const n=this.matrixWorld;const r=this.count;ll.geometry=this.geometry;ll.material=this.material;if(void 0!==ll.material)for(let i=0;i<r;i++){this.getMatrixAt(i,sl);al.multiplyMatrices(n,sl);ll.matrixWorld=al;ll.raycast(e,ol);for(let e=0,n=ol.length;e<n;e++){const n=ol[e];n.instanceId=i;n.object=this;t.push(n)}ol.length=0}}setColorAt(e,t){null===this.instanceColor&&(this.instanceColor=new InstancedBufferAttribute(new Float32Array(3*this.instanceMatrix.count),3));t.toArray(this.instanceColor.array,3*e)}setMatrixAt(e,t){t.toArray(this.instanceMatrix.array,16*e)}updateMorphTargets(){}dispose(){this.dispatchEvent({type:\"dispose\"})}}InstancedMesh.prototype.isInstancedMesh=true;class LineBasicMaterial extends Material{constructor(e){super();this.type=\"LineBasicMaterial\";this.color=new Color(16777215);this.linewidth=1;this.linecap=\"round\";this.linejoin=\"round\";this.setValues(e)}copy(e){super.copy(e);this.color.copy(e.color);this.linewidth=e.linewidth;this.linecap=e.linecap;this.linejoin=e.linejoin;return this}}LineBasicMaterial.prototype.isLineBasicMaterial=true;const cl=new Vector3;const ul=new Vector3;const hl=new Matrix4;const dl=new Ray;const pl=new Sphere;class Line extends Object3D{constructor(e=new BufferGeometry,t=new LineBasicMaterial){super();this.type=\"Line\";this.geometry=e;this.material=t;this.updateMorphTargets()}copy(e){super.copy(e);this.material=e.material;this.geometry=e.geometry;return this}computeLineDistances(){const e=this.geometry;if(e.isBufferGeometry)if(null===e.index){const t=e.attributes.position;const n=[0];for(let e=1,r=t.count;e<r;e++){cl.fromBufferAttribute(t,e-1);ul.fromBufferAttribute(t,e);n[e]=n[e-1];n[e]+=cl.distanceTo(ul)}e.setAttribute(\"lineDistance\",new Float32BufferAttribute(n,1))}else console.warn(\"THREE.Line.computeLineDistances(): Computation only possible with non-indexed BufferGeometry.\");else e.isGeometry&&console.error(\"THREE.Line.computeLineDistances() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.\");return this}raycast(e,t){const n=this.geometry;const r=this.matrixWorld;const i=e.params.Line.threshold;const s=n.drawRange;null===n.boundingSphere&&n.computeBoundingSphere();pl.copy(n.boundingSphere);pl.applyMatrix4(r);pl.radius+=i;if(false===e.ray.intersectsSphere(pl))return;hl.copy(r).invert();dl.copy(e.ray).applyMatrix4(hl);const a=i/((this.scale.x+this.scale.y+this.scale.z)/3);const o=a*a;const l=new Vector3;const c=new Vector3;const u=new Vector3;const h=new Vector3;const d=this.isLineSegments?2:1;if(n.isBufferGeometry){const r=n.index;const i=n.attributes;const a=i.position;if(null!==r){const n=Math.max(0,s.start);const i=Math.min(r.count,s.start+s.count);for(let s=n,p=i-1;s<p;s+=d){const n=r.getX(s);const i=r.getX(s+1);l.fromBufferAttribute(a,n);c.fromBufferAttribute(a,i);const d=dl.distanceSqToSegment(l,c,h,u);if(d>o)continue;h.applyMatrix4(this.matrixWorld);const p=e.ray.origin.distanceTo(h);p<e.near||p>e.far||t.push({distance:p,point:u.clone().applyMatrix4(this.matrixWorld),index:s,face:null,faceIndex:null,object:this})}}else{const n=Math.max(0,s.start);const r=Math.min(a.count,s.start+s.count);for(let i=n,s=r-1;i<s;i+=d){l.fromBufferAttribute(a,i);c.fromBufferAttribute(a,i+1);const n=dl.distanceSqToSegment(l,c,h,u);if(n>o)continue;h.applyMatrix4(this.matrixWorld);const r=e.ray.origin.distanceTo(h);r<e.near||r>e.far||t.push({distance:r,point:u.clone().applyMatrix4(this.matrixWorld),index:i,face:null,faceIndex:null,object:this})}}}else n.isGeometry&&console.error(\"THREE.Line.raycast() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.\")}updateMorphTargets(){const e=this.geometry;if(e.isBufferGeometry){const t=e.morphAttributes;const n=Object.keys(t);if(n.length>0){const e=t[n[0]];if(void 0!==e){this.morphTargetInfluences=[];this.morphTargetDictionary={};for(let t=0,n=e.length;t<n;t++){const n=e[t].name||String(t);this.morphTargetInfluences.push(0);this.morphTargetDictionary[n]=t}}}}else{const t=e.morphTargets;void 0!==t&&t.length>0&&console.error(\"THREE.Line.updateMorphTargets() does not support THREE.Geometry. Use THREE.BufferGeometry instead.\")}}}Line.prototype.isLine=true;const fl=new Vector3;const ml=new Vector3;class LineSegments extends Line{constructor(e,t){super(e,t);this.type=\"LineSegments\"}computeLineDistances(){const e=this.geometry;if(e.isBufferGeometry)if(null===e.index){const t=e.attributes.position;const n=[];for(let e=0,r=t.count;e<r;e+=2){fl.fromBufferAttribute(t,e);ml.fromBufferAttribute(t,e+1);n[e]=0===e?0:n[e-1];n[e+1]=n[e]+fl.distanceTo(ml)}e.setAttribute(\"lineDistance\",new Float32BufferAttribute(n,1))}else console.warn(\"THREE.LineSegments.computeLineDistances(): Computation only possible with non-indexed BufferGeometry.\");else e.isGeometry&&console.error(\"THREE.LineSegments.computeLineDistances() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.\");return this}}LineSegments.prototype.isLineSegments=true;class LineLoop extends Line{constructor(e,t){super(e,t);this.type=\"LineLoop\"}}LineLoop.prototype.isLineLoop=true;class PointsMaterial extends Material{constructor(e){super();this.type=\"PointsMaterial\";this.color=new Color(16777215);this.map=null;this.alphaMap=null;this.size=1;this.sizeAttenuation=true;this.setValues(e)}copy(e){super.copy(e);this.color.copy(e.color);this.map=e.map;this.alphaMap=e.alphaMap;this.size=e.size;this.sizeAttenuation=e.sizeAttenuation;return this}}PointsMaterial.prototype.isPointsMaterial=true;const gl=new Matrix4;const yl=new Ray;const vl=new Sphere;const xl=new Vector3;class Points extends Object3D{constructor(e=new BufferGeometry,t=new PointsMaterial){super();this.type=\"Points\";this.geometry=e;this.material=t;this.updateMorphTargets()}copy(e){super.copy(e);this.material=e.material;this.geometry=e.geometry;return this}raycast(e,t){const n=this.geometry;const r=this.matrixWorld;const i=e.params.Points.threshold;const s=n.drawRange;null===n.boundingSphere&&n.computeBoundingSphere();vl.copy(n.boundingSphere);vl.applyMatrix4(r);vl.radius+=i;if(false===e.ray.intersectsSphere(vl))return;gl.copy(r).invert();yl.copy(e.ray).applyMatrix4(gl);const a=i/((this.scale.x+this.scale.y+this.scale.z)/3);const o=a*a;if(n.isBufferGeometry){const i=n.index;const a=n.attributes;const l=a.position;if(null!==i){const n=Math.max(0,s.start);const a=Math.min(i.count,s.start+s.count);for(let s=n,c=a;s<c;s++){const n=i.getX(s);xl.fromBufferAttribute(l,n);testPoint(xl,n,o,r,e,t,this)}}else{const n=Math.max(0,s.start);const i=Math.min(l.count,s.start+s.count);for(let s=n,a=i;s<a;s++){xl.fromBufferAttribute(l,s);testPoint(xl,s,o,r,e,t,this)}}}else console.error(\"THREE.Points.raycast() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.\")}updateMorphTargets(){const e=this.geometry;if(e.isBufferGeometry){const t=e.morphAttributes;const n=Object.keys(t);if(n.length>0){const e=t[n[0]];if(void 0!==e){this.morphTargetInfluences=[];this.morphTargetDictionary={};for(let t=0,n=e.length;t<n;t++){const n=e[t].name||String(t);this.morphTargetInfluences.push(0);this.morphTargetDictionary[n]=t}}}}else{const t=e.morphTargets;void 0!==t&&t.length>0&&console.error(\"THREE.Points.updateMorphTargets() does not support THREE.Geometry. Use THREE.BufferGeometry instead.\")}}}Points.prototype.isPoints=true;function testPoint(e,t,n,r,i,s,a){const o=yl.distanceSqToPoint(e);if(o<n){const n=new Vector3;yl.closestPointToPoint(e,n);n.applyMatrix4(r);const l=i.ray.origin.distanceTo(n);if(l<i.near||l>i.far)return;s.push({distance:l,distanceToRay:Math.sqrt(o),point:n,index:t,face:null,object:a})}}class VideoTexture extends Texture{constructor(e,t,n,r,i,s,a,o,l){super(e,t,n,r,i,s,a,o,l);this.format=void 0!==a?a:Ve;this.minFilter=void 0!==s?s:ye;this.magFilter=void 0!==i?i:ye;this.generateMipmaps=false;const c=this;function updateVideo(){c.needsUpdate=true;e.requestVideoFrameCallback(updateVideo)}\"requestVideoFrameCallback\"in e&&e.requestVideoFrameCallback(updateVideo)}clone(){return new this.constructor(this.image).copy(this)}update(){const e=this.image;const t=\"requestVideoFrameCallback\"in e;false===t&&e.readyState>=e.HAVE_CURRENT_DATA&&(this.needsUpdate=true)}}VideoTexture.prototype.isVideoTexture=true;class FramebufferTexture extends Texture{constructor(e,t,n){super({width:e,height:t});this.format=n;this.magFilter=de;this.minFilter=de;this.generateMipmaps=false;this.needsUpdate=true}}FramebufferTexture.prototype.isFramebufferTexture=true;class CompressedTexture extends Texture{constructor(e,t,n,r,i,s,a,o,l,c,u,h){super(null,s,a,o,l,c,r,i,u,h);this.image={width:t,height:n};this.mipmaps=e;this.flipY=false;this.generateMipmaps=false}}CompressedTexture.prototype.isCompressedTexture=true;class CanvasTexture extends Texture{constructor(e,t,n,r,i,s,a,o,l){super(e,t,n,r,i,s,a,o,l);this.needsUpdate=true}}CanvasTexture.prototype.isCanvasTexture=true;class CircleGeometry extends BufferGeometry{constructor(e=1,t=8,n=0,r=2*Math.PI){super();this.type=\"CircleGeometry\";this.parameters={radius:e,segments:t,thetaStart:n,thetaLength:r};t=Math.max(3,t);const i=[];const s=[];const a=[];const o=[];const l=new Vector3;const c=new Vector2;s.push(0,0,0);a.push(0,0,1);o.push(.5,.5);for(let i=0,u=3;i<=t;i++,u+=3){const h=n+i/t*r;l.x=e*Math.cos(h);l.y=e*Math.sin(h);s.push(l.x,l.y,l.z);a.push(0,0,1);c.x=(s[u]/e+1)/2;c.y=(s[u+1]/e+1)/2;o.push(c.x,c.y)}for(let e=1;e<=t;e++)i.push(e,e+1,0);this.setIndex(i);this.setAttribute(\"position\",new Float32BufferAttribute(s,3));this.setAttribute(\"normal\",new Float32BufferAttribute(a,3));this.setAttribute(\"uv\",new Float32BufferAttribute(o,2))}static fromJSON(e){return new CircleGeometry(e.radius,e.segments,e.thetaStart,e.thetaLength)}}class CylinderGeometry extends BufferGeometry{constructor(e=1,t=1,n=1,r=8,i=1,s=false,a=0,o=2*Math.PI){super();this.type=\"CylinderGeometry\";this.parameters={radiusTop:e,radiusBottom:t,height:n,radialSegments:r,heightSegments:i,openEnded:s,thetaStart:a,thetaLength:o};const l=this;r=Math.floor(r);i=Math.floor(i);const c=[];const u=[];const h=[];const d=[];let p=0;const f=[];const m=n/2;let g=0;generateTorso();if(false===s){e>0&&generateCap(true);t>0&&generateCap(false)}this.setIndex(c);this.setAttribute(\"position\",new Float32BufferAttribute(u,3));this.setAttribute(\"normal\",new Float32BufferAttribute(h,3));this.setAttribute(\"uv\",new Float32BufferAttribute(d,2));function generateTorso(){const s=new Vector3;const y=new Vector3;let x=0;const b=(t-e)/n;for(let l=0;l<=i;l++){const c=[];const g=l/i;const x=g*(t-e)+e;for(let e=0;e<=r;e++){const t=e/r;const i=t*o+a;const l=Math.sin(i);const f=Math.cos(i);y.x=x*l;y.y=-g*n+m;y.z=x*f;u.push(y.x,y.y,y.z);s.set(l,b,f).normalize();h.push(s.x,s.y,s.z);d.push(t,1-g);c.push(p++)}f.push(c)}for(let e=0;e<r;e++)for(let t=0;t<i;t++){const n=f[t][e];const r=f[t+1][e];const i=f[t+1][e+1];const s=f[t][e+1];c.push(n,r,s);c.push(r,i,s);x+=6}l.addGroup(g,x,0);g+=x}function generateCap(n){const i=p;const s=new Vector2;const f=new Vector3;let y=0;const x=true===n?e:t;const b=true===n?1:-1;for(let e=1;e<=r;e++){u.push(0,m*b,0);h.push(0,b,0);d.push(.5,.5);p++}const _=p;for(let e=0;e<=r;e++){const t=e/r;const n=t*o+a;const i=Math.cos(n);const l=Math.sin(n);f.x=x*l;f.y=m*b;f.z=x*i;u.push(f.x,f.y,f.z);h.push(0,b,0);s.x=.5*i+.5;s.y=.5*l*b+.5;d.push(s.x,s.y);p++}for(let e=0;e<r;e++){const t=i+e;const r=_+e;true===n?c.push(r,r+1,t):c.push(r+1,r,t);y+=3}l.addGroup(g,y,true===n?1:2);g+=y}}static fromJSON(e){return new CylinderGeometry(e.radiusTop,e.radiusBottom,e.height,e.radialSegments,e.heightSegments,e.openEnded,e.thetaStart,e.thetaLength)}}class ConeGeometry extends CylinderGeometry{constructor(e=1,t=1,n=8,r=1,i=false,s=0,a=2*Math.PI){super(0,e,t,n,r,i,s,a);this.type=\"ConeGeometry\";this.parameters={radius:e,height:t,radialSegments:n,heightSegments:r,openEnded:i,thetaStart:s,thetaLength:a}}static fromJSON(e){return new ConeGeometry(e.radius,e.height,e.radialSegments,e.heightSegments,e.openEnded,e.thetaStart,e.thetaLength)}}class PolyhedronGeometry extends BufferGeometry{constructor(e=[],t=[],n=1,r=0){super();this.type=\"PolyhedronGeometry\";this.parameters={vertices:e,indices:t,radius:n,detail:r};const i=[];const s=[];subdivide(r);applyRadius(n);generateUVs();this.setAttribute(\"position\",new Float32BufferAttribute(i,3));this.setAttribute(\"normal\",new Float32BufferAttribute(i.slice(),3));this.setAttribute(\"uv\",new Float32BufferAttribute(s,2));0===r?this.computeVertexNormals():this.normalizeNormals();function subdivide(e){const n=new Vector3;const r=new Vector3;const i=new Vector3;for(let s=0;s<t.length;s+=3){getVertexByIndex(t[s+0],n);getVertexByIndex(t[s+1],r);getVertexByIndex(t[s+2],i);subdivideFace(n,r,i,e)}}function subdivideFace(e,t,n,r){const i=r+1;const s=[];for(let r=0;r<=i;r++){s[r]=[];const a=e.clone().lerp(n,r/i);const o=t.clone().lerp(n,r/i);const l=i-r;for(let e=0;e<=l;e++)s[r][e]=0===e&&r===i?a:a.clone().lerp(o,e/l)}for(let e=0;e<i;e++)for(let t=0;t<2*(i-e)-1;t++){const n=Math.floor(t/2);if(t%2===0){pushVertex(s[e][n+1]);pushVertex(s[e+1][n]);pushVertex(s[e][n])}else{pushVertex(s[e][n+1]);pushVertex(s[e+1][n+1]);pushVertex(s[e+1][n])}}}function applyRadius(e){const t=new Vector3;for(let n=0;n<i.length;n+=3){t.x=i[n+0];t.y=i[n+1];t.z=i[n+2];t.normalize().multiplyScalar(e);i[n+0]=t.x;i[n+1]=t.y;i[n+2]=t.z}}function generateUVs(){const e=new Vector3;for(let t=0;t<i.length;t+=3){e.x=i[t+0];e.y=i[t+1];e.z=i[t+2];const n=azimuth(e)/2/Math.PI+.5;const r=inclination(e)/Math.PI+.5;s.push(n,1-r)}correctUVs();correctSeam()}function correctSeam(){for(let e=0;e<s.length;e+=6){const t=s[e+0];const n=s[e+2];const r=s[e+4];const i=Math.max(t,n,r);const a=Math.min(t,n,r);if(i>.9&&a<.1){t<.2&&(s[e+0]+=1);n<.2&&(s[e+2]+=1);r<.2&&(s[e+4]+=1)}}}function pushVertex(e){i.push(e.x,e.y,e.z)}function getVertexByIndex(t,n){const r=3*t;n.x=e[r+0];n.y=e[r+1];n.z=e[r+2]}function correctUVs(){const e=new Vector3;const t=new Vector3;const n=new Vector3;const r=new Vector3;const a=new Vector2;const o=new Vector2;const l=new Vector2;for(let c=0,u=0;c<i.length;c+=9,u+=6){e.set(i[c+0],i[c+1],i[c+2]);t.set(i[c+3],i[c+4],i[c+5]);n.set(i[c+6],i[c+7],i[c+8]);a.set(s[u+0],s[u+1]);o.set(s[u+2],s[u+3]);l.set(s[u+4],s[u+5]);r.copy(e).add(t).add(n).divideScalar(3);const h=azimuth(r);correctUV(a,u+0,e,h);correctUV(o,u+2,t,h);correctUV(l,u+4,n,h)}}function correctUV(e,t,n,r){r<0&&1===e.x&&(s[t]=e.x-1);0===n.x&&0===n.z&&(s[t]=r/2/Math.PI+.5)}function azimuth(e){return Math.atan2(e.z,-e.x)}function inclination(e){return Math.atan2(-e.y,Math.sqrt(e.x*e.x+e.z*e.z))}}static fromJSON(e){return new PolyhedronGeometry(e.vertices,e.indices,e.radius,e.details)}}class DodecahedronGeometry extends PolyhedronGeometry{constructor(e=1,t=0){const n=(1+Math.sqrt(5))/2;const r=1/n;const i=[-1,-1,-1,-1,-1,1,-1,1,-1,-1,1,1,1,-1,-1,1,-1,1,1,1,-1,1,1,1,0,-r,-n,0,-r,n,0,r,-n,0,r,n,-r,-n,0,-r,n,0,r,-n,0,r,n,0,-n,0,-r,n,0,-r,-n,0,r,n,0,r];const s=[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(i,s,e,t);this.type=\"DodecahedronGeometry\";this.parameters={radius:e,detail:t}}static fromJSON(e){return new DodecahedronGeometry(e.radius,e.detail)}}const bl=new Vector3;const _l=new Vector3;const Ml=new Vector3;const wl=new Triangle;class EdgesGeometry extends BufferGeometry{constructor(e=null,t=1){super();this.type=\"EdgesGeometry\";this.parameters={geometry:e,thresholdAngle:t};if(null!==e){const n=4;const r=Math.pow(10,n);const i=Math.cos(Cn*t);const s=e.getIndex();const a=e.getAttribute(\"position\");const o=s?s.count:a.count;const l=[0,0,0];const c=[\"a\",\"b\",\"c\"];const u=new Array(3);const h={};const d=[];for(let e=0;e<o;e+=3){if(s){l[0]=s.getX(e);l[1]=s.getX(e+1);l[2]=s.getX(e+2)}else{l[0]=e;l[1]=e+1;l[2]=e+2}const{a:t,b:n,c:o}=wl;t.fromBufferAttribute(a,l[0]);n.fromBufferAttribute(a,l[1]);o.fromBufferAttribute(a,l[2]);wl.getNormal(Ml);u[0]=`${Math.round(t.x*r)},${Math.round(t.y*r)},${Math.round(t.z*r)}`;u[1]=`${Math.round(n.x*r)},${Math.round(n.y*r)},${Math.round(n.z*r)}`;u[2]=`${Math.round(o.x*r)},${Math.round(o.y*r)},${Math.round(o.z*r)}`;if(u[0]!==u[1]&&u[1]!==u[2]&&u[2]!==u[0])for(let e=0;e<3;e++){const t=(e+1)%3;const n=u[e];const r=u[t];const s=wl[c[e]];const a=wl[c[t]];const o=`${n}_${r}`;const p=`${r}_${n}`;if(p in h&&h[p]){if(Ml.dot(h[p].normal)<=i){d.push(s.x,s.y,s.z);d.push(a.x,a.y,a.z)}h[p]=null}else o in h||(h[o]={index0:l[e],index1:l[t],normal:Ml.clone()})}}for(const e in h)if(h[e]){const{index0:t,index1:n}=h[e];bl.fromBufferAttribute(a,t);_l.fromBufferAttribute(a,n);d.push(bl.x,bl.y,bl.z);d.push(_l.x,_l.y,_l.z)}this.setAttribute(\"position\",new Float32BufferAttribute(d,3))}}}class Curve{constructor(){this.type=\"Curve\";this.arcLengthDivisions=200}getPoint(){console.warn(\"THREE.Curve: .getPoint() not implemented.\");return null}getPointAt(e,t){const n=this.getUtoTmapping(e);return this.getPoint(n,t)}getPoints(e=5){const t=[];for(let n=0;n<=e;n++)t.push(this.getPoint(n/e));return t}getSpacedPoints(e=5){const t=[];for(let n=0;n<=e;n++)t.push(this.getPointAt(n/e));return t}getLength(){const e=this.getLengths();return e[e.length-1]}getLengths(e=this.arcLengthDivisions){if(this.cacheArcLengths&&this.cacheArcLengths.length===e+1&&!this.needsUpdate)return this.cacheArcLengths;this.needsUpdate=false;const t=[];let n,r=this.getPoint(0);let i=0;t.push(0);for(let s=1;s<=e;s++){n=this.getPoint(s/e);i+=n.distanceTo(r);t.push(i);r=n}this.cacheArcLengths=t;return t}updateArcLengths(){this.needsUpdate=true;this.getLengths()}getUtoTmapping(e,t){const n=this.getLengths();let r=0;const i=n.length;let s;s=t||e*n[i-1];let a,o=0,l=i-1;while(o<=l){r=Math.floor(o+(l-o)/2);a=n[r]-s;if(a<0)o=r+1;else{if(!(a>0)){l=r;break}l=r-1}}r=l;if(n[r]===s)return r/(i-1);const c=n[r];const u=n[r+1];const h=u-c;const d=(s-c)/h;const p=(r+d)/(i-1);return p}getTangent(e,t){const n=1e-4;let r=e-n;let i=e+n;r<0&&(r=0);i>1&&(i=1);const s=this.getPoint(r);const a=this.getPoint(i);const o=t||(s.isVector2?new Vector2:new Vector3);o.copy(a).sub(s).normalize();return o}getTangentAt(e,t){const n=this.getUtoTmapping(e);return this.getTangent(n,t)}computeFrenetFrames(e,t){const n=new Vector3;const r=[];const i=[];const s=[];const a=new Vector3;const o=new Matrix4;for(let t=0;t<=e;t++){const n=t/e;r[t]=this.getTangentAt(n,new Vector3)}i[0]=new Vector3;s[0]=new Vector3;let l=Number.MAX_VALUE;const c=Math.abs(r[0].x);const u=Math.abs(r[0].y);const h=Math.abs(r[0].z);if(c<=l){l=c;n.set(1,0,0)}if(u<=l){l=u;n.set(0,1,0)}h<=l&&n.set(0,0,1);a.crossVectors(r[0],n).normalize();i[0].crossVectors(r[0],a);s[0].crossVectors(r[0],i[0]);for(let t=1;t<=e;t++){i[t]=i[t-1].clone();s[t]=s[t-1].clone();a.crossVectors(r[t-1],r[t]);if(a.length()>Number.EPSILON){a.normalize();const e=Math.acos(clamp(r[t-1].dot(r[t]),-1,1));i[t].applyMatrix4(o.makeRotationAxis(a,e))}s[t].crossVectors(r[t],i[t])}if(true===t){let t=Math.acos(clamp(i[0].dot(i[e]),-1,1));t/=e;r[0].dot(a.crossVectors(i[0],i[e]))>0&&(t=-t);for(let n=1;n<=e;n++){i[n].applyMatrix4(o.makeRotationAxis(r[n],t*n));s[n].crossVectors(r[n],i[n])}}return{tangents:r,normals:i,binormals:s}}clone(){return(new this.constructor).copy(this)}copy(e){this.arcLengthDivisions=e.arcLengthDivisions;return this}toJSON(){const e={metadata:{version:4.5,type:\"Curve\",generator:\"Curve.toJSON\"}};e.arcLengthDivisions=this.arcLengthDivisions;e.type=this.type;return e}fromJSON(e){this.arcLengthDivisions=e.arcLengthDivisions;return this}}class EllipseCurve extends Curve{constructor(e=0,t=0,n=1,r=1,i=0,s=2*Math.PI,a=false,o=0){super();this.type=\"EllipseCurve\";this.aX=e;this.aY=t;this.xRadius=n;this.yRadius=r;this.aStartAngle=i;this.aEndAngle=s;this.aClockwise=a;this.aRotation=o}getPoint(e,t){const n=t||new Vector2;const r=2*Math.PI;let i=this.aEndAngle-this.aStartAngle;const s=Math.abs(i)<Number.EPSILON;while(i<0)i+=r;while(i>r)i-=r;i<Number.EPSILON&&(i=s?0:r);true!==this.aClockwise||s||(i===r?i=-r:i-=r);const a=this.aStartAngle+e*i;let o=this.aX+this.xRadius*Math.cos(a);let l=this.aY+this.yRadius*Math.sin(a);if(0!==this.aRotation){const e=Math.cos(this.aRotation);const t=Math.sin(this.aRotation);const n=o-this.aX;const r=l-this.aY;o=n*e-r*t+this.aX;l=n*t+r*e+this.aY}return n.set(o,l)}copy(e){super.copy(e);this.aX=e.aX;this.aY=e.aY;this.xRadius=e.xRadius;this.yRadius=e.yRadius;this.aStartAngle=e.aStartAngle;this.aEndAngle=e.aEndAngle;this.aClockwise=e.aClockwise;this.aRotation=e.aRotation;return this}toJSON(){const e=super.toJSON();e.aX=this.aX;e.aY=this.aY;e.xRadius=this.xRadius;e.yRadius=this.yRadius;e.aStartAngle=this.aStartAngle;e.aEndAngle=this.aEndAngle;e.aClockwise=this.aClockwise;e.aRotation=this.aRotation;return e}fromJSON(e){super.fromJSON(e);this.aX=e.aX;this.aY=e.aY;this.xRadius=e.xRadius;this.yRadius=e.yRadius;this.aStartAngle=e.aStartAngle;this.aEndAngle=e.aEndAngle;this.aClockwise=e.aClockwise;this.aRotation=e.aRotation;return this}}EllipseCurve.prototype.isEllipseCurve=true;class ArcCurve extends EllipseCurve{constructor(e,t,n,r,i,s){super(e,t,n,n,r,i,s);this.type=\"ArcCurve\"}}ArcCurve.prototype.isArcCurve=true;function CubicPoly(){let e=0,t=0,n=0,r=0;function init(i,s,a,o){e=i;t=a;n=-3*i+3*s-2*a-o;r=2*i-2*s+a+o}return{initCatmullRom:function(e,t,n,r,i){init(t,n,i*(n-e),i*(r-t))},initNonuniformCatmullRom:function(e,t,n,r,i,s,a){let o=(t-e)/i-(n-e)/(i+s)+(n-t)/s;let l=(n-t)/s-(r-t)/(s+a)+(r-n)/a;o*=s;l*=s;init(t,n,o,l)},calc:function(i){const s=i*i;const a=s*i;return e+t*i+n*s+r*a}}}const Sl=new Vector3;const Tl=new CubicPoly,El=new CubicPoly,Al=new CubicPoly;class CatmullRomCurve3 extends Curve{constructor(e=[],t=false,n=\"centripetal\",r=.5){super();this.type=\"CatmullRomCurve3\";this.points=e;this.closed=t;this.curveType=n;this.tension=r}getPoint(e,t=new Vector3){const n=t;const r=this.points;const i=r.length;const s=(i-(this.closed?0:1))*e;let a=Math.floor(s);let o=s-a;if(this.closed)a+=a>0?0:(Math.floor(Math.abs(a)/i)+1)*i;else if(0===o&&a===i-1){a=i-2;o=1}let l,c;if(this.closed||a>0)l=r[(a-1)%i];else{Sl.subVectors(r[0],r[1]).add(r[0]);l=Sl}const u=r[a%i];const h=r[(a+1)%i];if(this.closed||a+2<i)c=r[(a+2)%i];else{Sl.subVectors(r[i-1],r[i-2]).add(r[i-1]);c=Sl}if(\"centripetal\"===this.curveType||\"chordal\"===this.curveType){const e=\"chordal\"===this.curveType?.5:.25;let t=Math.pow(l.distanceToSquared(u),e);let n=Math.pow(u.distanceToSquared(h),e);let r=Math.pow(h.distanceToSquared(c),e);n<1e-4&&(n=1);t<1e-4&&(t=n);r<1e-4&&(r=n);Tl.initNonuniformCatmullRom(l.x,u.x,h.x,c.x,t,n,r);El.initNonuniformCatmullRom(l.y,u.y,h.y,c.y,t,n,r);Al.initNonuniformCatmullRom(l.z,u.z,h.z,c.z,t,n,r)}else if(\"catmullrom\"===this.curveType){Tl.initCatmullRom(l.x,u.x,h.x,c.x,this.tension);El.initCatmullRom(l.y,u.y,h.y,c.y,this.tension);Al.initCatmullRom(l.z,u.z,h.z,c.z,this.tension)}n.set(Tl.calc(o),El.calc(o),Al.calc(o));return n}copy(e){super.copy(e);this.points=[];for(let t=0,n=e.points.length;t<n;t++){const n=e.points[t];this.points.push(n.clone())}this.closed=e.closed;this.curveType=e.curveType;this.tension=e.tension;return this}toJSON(){const e=super.toJSON();e.points=[];for(let t=0,n=this.points.length;t<n;t++){const n=this.points[t];e.points.push(n.toArray())}e.closed=this.closed;e.curveType=this.curveType;e.tension=this.tension;return e}fromJSON(e){super.fromJSON(e);this.points=[];for(let t=0,n=e.points.length;t<n;t++){const n=e.points[t];this.points.push((new Vector3).fromArray(n))}this.closed=e.closed;this.curveType=e.curveType;this.tension=e.tension;return this}}CatmullRomCurve3.prototype.isCatmullRomCurve3=true;function CatmullRom(e,t,n,r,i){const s=.5*(r-t);const a=.5*(i-n);const o=e*e;const l=e*o;return(2*n-2*r+s+a)*l+(-3*n+3*r-2*s-a)*o+s*e+n}function QuadraticBezierP0(e,t){const n=1-e;return n*n*t}function QuadraticBezierP1(e,t){return 2*(1-e)*e*t}function QuadraticBezierP2(e,t){return e*e*t}function QuadraticBezier(e,t,n,r){return QuadraticBezierP0(e,t)+QuadraticBezierP1(e,n)+QuadraticBezierP2(e,r)}function CubicBezierP0(e,t){const n=1-e;return n*n*n*t}function CubicBezierP1(e,t){const n=1-e;return 3*n*n*e*t}function CubicBezierP2(e,t){return 3*(1-e)*e*e*t}function CubicBezierP3(e,t){return e*e*e*t}function CubicBezier(e,t,n,r,i){return CubicBezierP0(e,t)+CubicBezierP1(e,n)+CubicBezierP2(e,r)+CubicBezierP3(e,i)}class CubicBezierCurve extends Curve{constructor(e=new Vector2,t=new Vector2,n=new Vector2,r=new Vector2){super();this.type=\"CubicBezierCurve\";this.v0=e;this.v1=t;this.v2=n;this.v3=r}getPoint(e,t=new Vector2){const n=t;const r=this.v0,i=this.v1,s=this.v2,a=this.v3;n.set(CubicBezier(e,r.x,i.x,s.x,a.x),CubicBezier(e,r.y,i.y,s.y,a.y));return n}copy(e){super.copy(e);this.v0.copy(e.v0);this.v1.copy(e.v1);this.v2.copy(e.v2);this.v3.copy(e.v3);return this}toJSON(){const e=super.toJSON();e.v0=this.v0.toArray();e.v1=this.v1.toArray();e.v2=this.v2.toArray();e.v3=this.v3.toArray();return e}fromJSON(e){super.fromJSON(e);this.v0.fromArray(e.v0);this.v1.fromArray(e.v1);this.v2.fromArray(e.v2);this.v3.fromArray(e.v3);return this}}CubicBezierCurve.prototype.isCubicBezierCurve=true;class CubicBezierCurve3 extends Curve{constructor(e=new Vector3,t=new Vector3,n=new Vector3,r=new Vector3){super();this.type=\"CubicBezierCurve3\";this.v0=e;this.v1=t;this.v2=n;this.v3=r}getPoint(e,t=new Vector3){const n=t;const r=this.v0,i=this.v1,s=this.v2,a=this.v3;n.set(CubicBezier(e,r.x,i.x,s.x,a.x),CubicBezier(e,r.y,i.y,s.y,a.y),CubicBezier(e,r.z,i.z,s.z,a.z));return n}copy(e){super.copy(e);this.v0.copy(e.v0);this.v1.copy(e.v1);this.v2.copy(e.v2);this.v3.copy(e.v3);return this}toJSON(){const e=super.toJSON();e.v0=this.v0.toArray();e.v1=this.v1.toArray();e.v2=this.v2.toArray();e.v3=this.v3.toArray();return e}fromJSON(e){super.fromJSON(e);this.v0.fromArray(e.v0);this.v1.fromArray(e.v1);this.v2.fromArray(e.v2);this.v3.fromArray(e.v3);return this}}CubicBezierCurve3.prototype.isCubicBezierCurve3=true;class LineCurve extends Curve{constructor(e=new Vector2,t=new Vector2){super();this.type=\"LineCurve\";this.v1=e;this.v2=t}getPoint(e,t=new Vector2){const n=t;if(1===e)n.copy(this.v2);else{n.copy(this.v2).sub(this.v1);n.multiplyScalar(e).add(this.v1)}return n}getPointAt(e,t){return this.getPoint(e,t)}getTangent(e,t){const n=t||new Vector2;n.copy(this.v2).sub(this.v1).normalize();return n}copy(e){super.copy(e);this.v1.copy(e.v1);this.v2.copy(e.v2);return this}toJSON(){const e=super.toJSON();e.v1=this.v1.toArray();e.v2=this.v2.toArray();return e}fromJSON(e){super.fromJSON(e);this.v1.fromArray(e.v1);this.v2.fromArray(e.v2);return this}}LineCurve.prototype.isLineCurve=true;class LineCurve3 extends Curve{constructor(e=new Vector3,t=new Vector3){super();this.type=\"LineCurve3\";this.isLineCurve3=true;this.v1=e;this.v2=t}getPoint(e,t=new Vector3){const n=t;if(1===e)n.copy(this.v2);else{n.copy(this.v2).sub(this.v1);n.multiplyScalar(e).add(this.v1)}return n}getPointAt(e,t){return this.getPoint(e,t)}copy(e){super.copy(e);this.v1.copy(e.v1);this.v2.copy(e.v2);return this}toJSON(){const e=super.toJSON();e.v1=this.v1.toArray();e.v2=this.v2.toArray();return e}fromJSON(e){super.fromJSON(e);this.v1.fromArray(e.v1);this.v2.fromArray(e.v2);return this}}class QuadraticBezierCurve extends Curve{constructor(e=new Vector2,t=new Vector2,n=new Vector2){super();this.type=\"QuadraticBezierCurve\";this.v0=e;this.v1=t;this.v2=n}getPoint(e,t=new Vector2){const n=t;const r=this.v0,i=this.v1,s=this.v2;n.set(QuadraticBezier(e,r.x,i.x,s.x),QuadraticBezier(e,r.y,i.y,s.y));return n}copy(e){super.copy(e);this.v0.copy(e.v0);this.v1.copy(e.v1);this.v2.copy(e.v2);return this}toJSON(){const e=super.toJSON();e.v0=this.v0.toArray();e.v1=this.v1.toArray();e.v2=this.v2.toArray();return e}fromJSON(e){super.fromJSON(e);this.v0.fromArray(e.v0);this.v1.fromArray(e.v1);this.v2.fromArray(e.v2);return this}}QuadraticBezierCurve.prototype.isQuadraticBezierCurve=true;class QuadraticBezierCurve3 extends Curve{constructor(e=new Vector3,t=new Vector3,n=new Vector3){super();this.type=\"QuadraticBezierCurve3\";this.v0=e;this.v1=t;this.v2=n}getPoint(e,t=new Vector3){const n=t;const r=this.v0,i=this.v1,s=this.v2;n.set(QuadraticBezier(e,r.x,i.x,s.x),QuadraticBezier(e,r.y,i.y,s.y),QuadraticBezier(e,r.z,i.z,s.z));return n}copy(e){super.copy(e);this.v0.copy(e.v0);this.v1.copy(e.v1);this.v2.copy(e.v2);return this}toJSON(){const e=super.toJSON();e.v0=this.v0.toArray();e.v1=this.v1.toArray();e.v2=this.v2.toArray();return e}fromJSON(e){super.fromJSON(e);this.v0.fromArray(e.v0);this.v1.fromArray(e.v1);this.v2.fromArray(e.v2);return this}}QuadraticBezierCurve3.prototype.isQuadraticBezierCurve3=true;class SplineCurve extends Curve{constructor(e=[]){super();this.type=\"SplineCurve\";this.points=e}getPoint(e,t=new Vector2){const n=t;const r=this.points;const i=(r.length-1)*e;const s=Math.floor(i);const a=i-s;const o=r[0===s?s:s-1];const l=r[s];const c=r[s>r.length-2?r.length-1:s+1];const u=r[s>r.length-3?r.length-1:s+2];n.set(CatmullRom(a,o.x,l.x,c.x,u.x),CatmullRom(a,o.y,l.y,c.y,u.y));return n}copy(e){super.copy(e);this.points=[];for(let t=0,n=e.points.length;t<n;t++){const n=e.points[t];this.points.push(n.clone())}return this}toJSON(){const e=super.toJSON();e.points=[];for(let t=0,n=this.points.length;t<n;t++){const n=this.points[t];e.points.push(n.toArray())}return e}fromJSON(e){super.fromJSON(e);this.points=[];for(let t=0,n=e.points.length;t<n;t++){const n=e.points[t];this.points.push((new Vector2).fromArray(n))}return this}}SplineCurve.prototype.isSplineCurve=true;var Ll=Object.freeze({__proto__:null,ArcCurve:ArcCurve,CatmullRomCurve3:CatmullRomCurve3,CubicBezierCurve:CubicBezierCurve,CubicBezierCurve3:CubicBezierCurve3,EllipseCurve:EllipseCurve,LineCurve:LineCurve,LineCurve3:LineCurve3,QuadraticBezierCurve:QuadraticBezierCurve,QuadraticBezierCurve3:QuadraticBezierCurve3,SplineCurve:SplineCurve});class CurvePath extends Curve{constructor(){super();this.type=\"CurvePath\";this.curves=[];this.autoClose=false}add(e){this.curves.push(e)}closePath(){const e=this.curves[0].getPoint(0);const t=this.curves[this.curves.length-1].getPoint(1);e.equals(t)||this.curves.push(new LineCurve(t,e))}getPoint(e,t){const n=e*this.getLength();const r=this.getCurveLengths();let i=0;while(i<r.length){if(r[i]>=n){const e=r[i]-n;const s=this.curves[i];const a=s.getLength();const o=0===a?0:1-e/a;return s.getPointAt(o,t)}i++}return null}getLength(){const e=this.getCurveLengths();return e[e.length-1]}updateArcLengths(){this.needsUpdate=true;this.cacheLengths=null;this.getCurveLengths()}getCurveLengths(){if(this.cacheLengths&&this.cacheLengths.length===this.curves.length)return this.cacheLengths;const e=[];let t=0;for(let n=0,r=this.curves.length;n<r;n++){t+=this.curves[n].getLength();e.push(t)}this.cacheLengths=e;return e}getSpacedPoints(e=40){const t=[];for(let n=0;n<=e;n++)t.push(this.getPoint(n/e));this.autoClose&&t.push(t[0]);return t}getPoints(e=12){const t=[];let n;for(let r=0,i=this.curves;r<i.length;r++){const s=i[r];const a=s&&s.isEllipseCurve?2*e:s&&(s.isLineCurve||s.isLineCurve3)?1:s&&s.isSplineCurve?e*s.points.length:e;const o=s.getPoints(a);for(let e=0;e<o.length;e++){const r=o[e];if(!n||!n.equals(r)){t.push(r);n=r}}}this.autoClose&&t.length>1&&!t[t.length-1].equals(t[0])&&t.push(t[0]);return t}copy(e){super.copy(e);this.curves=[];for(let t=0,n=e.curves.length;t<n;t++){const n=e.curves[t];this.curves.push(n.clone())}this.autoClose=e.autoClose;return this}toJSON(){const e=super.toJSON();e.autoClose=this.autoClose;e.curves=[];for(let t=0,n=this.curves.length;t<n;t++){const n=this.curves[t];e.curves.push(n.toJSON())}return e}fromJSON(e){super.fromJSON(e);this.autoClose=e.autoClose;this.curves=[];for(let t=0,n=e.curves.length;t<n;t++){const n=e.curves[t];this.curves.push((new Ll[n.type]).fromJSON(n))}return this}}class Path extends CurvePath{constructor(e){super();this.type=\"Path\";this.currentPoint=new Vector2;e&&this.setFromPoints(e)}setFromPoints(e){this.moveTo(e[0].x,e[0].y);for(let t=1,n=e.length;t<n;t++)this.lineTo(e[t].x,e[t].y);return this}moveTo(e,t){this.currentPoint.set(e,t);return this}lineTo(e,t){const n=new LineCurve(this.currentPoint.clone(),new Vector2(e,t));this.curves.push(n);this.currentPoint.set(e,t);return this}quadraticCurveTo(e,t,n,r){const i=new QuadraticBezierCurve(this.currentPoint.clone(),new Vector2(e,t),new Vector2(n,r));this.curves.push(i);this.currentPoint.set(n,r);return this}bezierCurveTo(e,t,n,r,i,s){const a=new CubicBezierCurve(this.currentPoint.clone(),new Vector2(e,t),new Vector2(n,r),new Vector2(i,s));this.curves.push(a);this.currentPoint.set(i,s);return this}splineThru(e){const t=[this.currentPoint.clone()].concat(e);const n=new SplineCurve(t);this.curves.push(n);this.currentPoint.copy(e[e.length-1]);return this}arc(e,t,n,r,i,s){const a=this.currentPoint.x;const o=this.currentPoint.y;this.absarc(e+a,t+o,n,r,i,s);return this}absarc(e,t,n,r,i,s){this.absellipse(e,t,n,n,r,i,s);return this}ellipse(e,t,n,r,i,s,a,o){const l=this.currentPoint.x;const c=this.currentPoint.y;this.absellipse(e+l,t+c,n,r,i,s,a,o);return this}absellipse(e,t,n,r,i,s,a,o){const l=new EllipseCurve(e,t,n,r,i,s,a,o);if(this.curves.length>0){const e=l.getPoint(0);e.equals(this.currentPoint)||this.lineTo(e.x,e.y)}this.curves.push(l);const c=l.getPoint(1);this.currentPoint.copy(c);return this}copy(e){super.copy(e);this.currentPoint.copy(e.currentPoint);return this}toJSON(){const e=super.toJSON();e.currentPoint=this.currentPoint.toArray();return e}fromJSON(e){super.fromJSON(e);this.currentPoint.fromArray(e.currentPoint);return this}}class Shape extends Path{constructor(e){super(e);this.uuid=generateUUID();this.type=\"Shape\";this.holes=[]}getPointsHoles(e){const t=[];for(let n=0,r=this.holes.length;n<r;n++)t[n]=this.holes[n].getPoints(e);return t}extractPoints(e){return{shape:this.getPoints(e),holes:this.getPointsHoles(e)}}copy(e){super.copy(e);this.holes=[];for(let t=0,n=e.holes.length;t<n;t++){const n=e.holes[t];this.holes.push(n.clone())}return this}toJSON(){const e=super.toJSON();e.uuid=this.uuid;e.holes=[];for(let t=0,n=this.holes.length;t<n;t++){const n=this.holes[t];e.holes.push(n.toJSON())}return e}fromJSON(e){super.fromJSON(e);this.uuid=e.uuid;this.holes=[];for(let t=0,n=e.holes.length;t<n;t++){const n=e.holes[t];this.holes.push((new Path).fromJSON(n))}return this}}const Cl={triangulate:function(e,t,n=2){const r=t&&t.length;const i=r?t[0]*n:e.length;let s=linkedList(e,0,i,n,true);const a=[];if(!s||s.next===s.prev)return a;let o,l,c,u,h,d,p;r&&(s=eliminateHoles(e,t,s,n));if(e.length>80*n){o=c=e[0];l=u=e[1];for(let t=n;t<i;t+=n){h=e[t];d=e[t+1];h<o&&(o=h);d<l&&(l=d);h>c&&(c=h);d>u&&(u=d)}p=Math.max(c-o,u-l);p=0!==p?1/p:0}earcutLinked(s,a,n,o,l,p);return a}};function linkedList(e,t,n,r,i){let s,a;if(i===signedArea(e,t,n,r)>0)for(s=t;s<n;s+=r)a=insertNode(s,e[s],e[s+1],a);else for(s=n-r;s>=t;s-=r)a=insertNode(s,e[s],e[s+1],a);if(a&&equals(a,a.next)){removeNode(a);a=a.next}return a}function filterPoints(e,t){if(!e)return e;t||(t=e);let n,r=e;do{n=false;if(r.steiner||!equals(r,r.next)&&0!==area(r.prev,r,r.next))r=r.next;else{removeNode(r);r=t=r.prev;if(r===r.next)break;n=true}}while(n||r!==t);return t}function earcutLinked(e,t,n,r,i,s,a){if(!e)return;!a&&s&&indexCurve(e,r,i,s);let o,l,c=e;while(e.prev!==e.next){o=e.prev;l=e.next;if(s?isEarHashed(e,r,i,s):isEar(e)){t.push(o.i/n);t.push(e.i/n);t.push(l.i/n);removeNode(e);e=l.next;c=l.next}else{e=l;if(e===c){if(a)if(1===a){e=cureLocalIntersections(filterPoints(e),t,n);earcutLinked(e,t,n,r,i,s,2)}else 2===a&&splitEarcut(e,t,n,r,i,s);else earcutLinked(filterPoints(e),t,n,r,i,s,1);break}}}}function isEar(e){const t=e.prev,n=e,r=e.next;if(area(t,n,r)>=0)return false;let i=e.next.next;while(i!==e.prev){if(pointInTriangle(t.x,t.y,n.x,n.y,r.x,r.y,i.x,i.y)&&area(i.prev,i,i.next)>=0)return false;i=i.next}return true}function isEarHashed(e,t,n,r){const i=e.prev,s=e,a=e.next;if(area(i,s,a)>=0)return false;const o=i.x<s.x?i.x<a.x?i.x:a.x:s.x<a.x?s.x:a.x,l=i.y<s.y?i.y<a.y?i.y:a.y:s.y<a.y?s.y:a.y,c=i.x>s.x?i.x>a.x?i.x:a.x:s.x>a.x?s.x:a.x,u=i.y>s.y?i.y>a.y?i.y:a.y:s.y>a.y?s.y:a.y;const h=zOrder(o,l,t,n,r),d=zOrder(c,u,t,n,r);let p=e.prevZ,f=e.nextZ;while(p&&p.z>=h&&f&&f.z<=d){if(p!==e.prev&&p!==e.next&&pointInTriangle(i.x,i.y,s.x,s.y,a.x,a.y,p.x,p.y)&&area(p.prev,p,p.next)>=0)return false;p=p.prevZ;if(f!==e.prev&&f!==e.next&&pointInTriangle(i.x,i.y,s.x,s.y,a.x,a.y,f.x,f.y)&&area(f.prev,f,f.next)>=0)return false;f=f.nextZ}while(p&&p.z>=h){if(p!==e.prev&&p!==e.next&&pointInTriangle(i.x,i.y,s.x,s.y,a.x,a.y,p.x,p.y)&&area(p.prev,p,p.next)>=0)return false;p=p.prevZ}while(f&&f.z<=d){if(f!==e.prev&&f!==e.next&&pointInTriangle(i.x,i.y,s.x,s.y,a.x,a.y,f.x,f.y)&&area(f.prev,f,f.next)>=0)return false;f=f.nextZ}return true}function cureLocalIntersections(e,t,n){let r=e;do{const i=r.prev,s=r.next.next;if(!equals(i,s)&&intersects(i,r,r.next,s)&&locallyInside(i,s)&&locallyInside(s,i)){t.push(i.i/n);t.push(r.i/n);t.push(s.i/n);removeNode(r);removeNode(r.next);r=e=s}r=r.next}while(r!==e);return filterPoints(r)}function splitEarcut(e,t,n,r,i,s){let a=e;do{let e=a.next.next;while(e!==a.prev){if(a.i!==e.i&&isValidDiagonal(a,e)){let o=splitPolygon(a,e);a=filterPoints(a,a.next);o=filterPoints(o,o.next);earcutLinked(a,t,n,r,i,s);earcutLinked(o,t,n,r,i,s);return}e=e.next}a=a.next}while(a!==e)}function eliminateHoles(e,t,n,r){const i=[];let s,a,o,l,c;for(s=0,a=t.length;s<a;s++){o=t[s]*r;l=s<a-1?t[s+1]*r:e.length;c=linkedList(e,o,l,r,false);c===c.next&&(c.steiner=true);i.push(getLeftmost(c))}i.sort(compareX);for(s=0;s<i.length;s++){eliminateHole(i[s],n);n=filterPoints(n,n.next)}return n}function compareX(e,t){return e.x-t.x}function eliminateHole(e,t){t=findHoleBridge(e,t);if(t){const n=splitPolygon(t,e);filterPoints(t,t.next);filterPoints(n,n.next)}}function findHoleBridge(e,t){let n=t;const r=e.x;const i=e.y;let s,a=-Infinity;do{if(i<=n.y&&i>=n.next.y&&n.next.y!==n.y){const e=n.x+(i-n.y)*(n.next.x-n.x)/(n.next.y-n.y);if(e<=r&&e>a){a=e;if(e===r){if(i===n.y)return n;if(i===n.next.y)return n.next}s=n.x<n.next.x?n:n.next}}n=n.next}while(n!==t);if(!s)return null;if(r===a)return s;const o=s,l=s.x,c=s.y;let u,h=Infinity;n=s;do{if(r>=n.x&&n.x>=l&&r!==n.x&&pointInTriangle(i<c?r:a,i,l,c,i<c?a:r,i,n.x,n.y)){u=Math.abs(i-n.y)/(r-n.x);if(locallyInside(n,e)&&(u<h||u===h&&(n.x>s.x||n.x===s.x&&sectorContainsSector(s,n)))){s=n;h=u}}n=n.next}while(n!==o);return s}function sectorContainsSector(e,t){return area(e.prev,e,t.prev)<0&&area(t.next,e,e.next)<0}function indexCurve(e,t,n,r){let i=e;do{null===i.z&&(i.z=zOrder(i.x,i.y,t,n,r));i.prevZ=i.prev;i.nextZ=i.next;i=i.next}while(i!==e);i.prevZ.nextZ=null;i.prevZ=null;sortLinked(i)}function sortLinked(e){let t,n,r,i,s,a,o,l,c=1;do{n=e;e=null;s=null;a=0;while(n){a++;r=n;o=0;for(t=0;t<c;t++){o++;r=r.nextZ;if(!r)break}l=c;while(o>0||l>0&&r){if(0!==o&&(0===l||!r||n.z<=r.z)){i=n;n=n.nextZ;o--}else{i=r;r=r.nextZ;l--}s?s.nextZ=i:e=i;i.prevZ=s;s=i}n=r}s.nextZ=null;c*=2}while(a>1);return e}function zOrder(e,t,n,r,i){e=32767*(e-n)*i;t=32767*(t-r)*i;e=16711935&(e|e<<8);e=252645135&(e|e<<4);e=858993459&(e|e<<2);e=1431655765&(e|e<<1);t=16711935&(t|t<<8);t=252645135&(t|t<<4);t=858993459&(t|t<<2);t=1431655765&(t|t<<1);return e|t<<1}function getLeftmost(e){let t=e,n=e;do{(t.x<n.x||t.x===n.x&&t.y<n.y)&&(n=t);t=t.next}while(t!==e);return n}function pointInTriangle(e,t,n,r,i,s,a,o){return(i-a)*(t-o)-(e-a)*(s-o)>=0&&(e-a)*(r-o)-(n-a)*(t-o)>=0&&(n-a)*(s-o)-(i-a)*(r-o)>=0}function isValidDiagonal(e,t){return e.next.i!==t.i&&e.prev.i!==t.i&&!intersectsPolygon(e,t)&&(locallyInside(e,t)&&locallyInside(t,e)&&middleInside(e,t)&&(area(e.prev,e,t.prev)||area(e,t.prev,t))||equals(e,t)&&area(e.prev,e,e.next)>0&&area(t.prev,t,t.next)>0)}function area(e,t,n){return(t.y-e.y)*(n.x-t.x)-(t.x-e.x)*(n.y-t.y)}function equals(e,t){return e.x===t.x&&e.y===t.y}function intersects(e,t,n,r){const i=sign(area(e,t,n));const s=sign(area(e,t,r));const a=sign(area(n,r,e));const o=sign(area(n,r,t));return i!==s&&a!==o||(!(0!==i||!onSegment(e,n,t))||(!(0!==s||!onSegment(e,r,t))||(!(0!==a||!onSegment(n,e,r))||!(0!==o||!onSegment(n,t,r)))))}function onSegment(e,t,n){return t.x<=Math.max(e.x,n.x)&&t.x>=Math.min(e.x,n.x)&&t.y<=Math.max(e.y,n.y)&&t.y>=Math.min(e.y,n.y)}function sign(e){return e>0?1:e<0?-1:0}function intersectsPolygon(e,t){let n=e;do{if(n.i!==e.i&&n.next.i!==e.i&&n.i!==t.i&&n.next.i!==t.i&&intersects(n,n.next,e,t))return true;n=n.next}while(n!==e);return false}function locallyInside(e,t){return area(e.prev,e,e.next)<0?area(e,t,e.next)>=0&&area(e,e.prev,t)>=0:area(e,t,e.prev)<0||area(e,e.next,t)<0}function middleInside(e,t){let n=e,r=false;const i=(e.x+t.x)/2,s=(e.y+t.y)/2;do{n.y>s!==n.next.y>s&&n.next.y!==n.y&&i<(n.next.x-n.x)*(s-n.y)/(n.next.y-n.y)+n.x&&(r=!r);n=n.next}while(n!==e);return r}function splitPolygon(e,t){const n=new Node(e.i,e.x,e.y),r=new Node(t.i,t.x,t.y),i=e.next,s=t.prev;e.next=t;t.prev=e;n.next=i;i.prev=n;r.next=n;n.prev=r;s.next=r;r.prev=s;return r}function insertNode(e,t,n,r){const i=new Node(e,t,n);if(r){i.next=r.next;i.prev=r;r.next.prev=i;r.next=i}else{i.prev=i;i.next=i}return i}function removeNode(e){e.next.prev=e.prev;e.prev.next=e.next;e.prevZ&&(e.prevZ.nextZ=e.nextZ);e.nextZ&&(e.nextZ.prevZ=e.prevZ)}function Node(e,t,n){this.i=e;this.x=t;this.y=n;this.prev=null;this.next=null;this.z=null;this.prevZ=null;this.nextZ=null;this.steiner=false}function signedArea(e,t,n,r){let i=0;for(let s=t,a=n-r;s<n;s+=r){i+=(e[a]-e[s])*(e[s+1]+e[a+1]);a=s}return i}class ShapeUtils{static area(e){const t=e.length;let n=0;for(let r=t-1,i=0;i<t;r=i++)n+=e[r].x*e[i].y-e[i].x*e[r].y;return.5*n}static isClockWise(e){return ShapeUtils.area(e)<0}static triangulateShape(e,t){const n=[];const r=[];const i=[];removeDupEndPts(e);addContour(n,e);let s=e.length;t.forEach(removeDupEndPts);for(let e=0;e<t.length;e++){r.push(s);s+=t[e].length;addContour(n,t[e])}const a=Cl.triangulate(n,r);for(let e=0;e<a.length;e+=3)i.push(a.slice(e,e+3));return i}}function removeDupEndPts(e){const t=e.length;t>2&&e[t-1].equals(e[0])&&e.pop()}function addContour(e,t){for(let n=0;n<t.length;n++){e.push(t[n].x);e.push(t[n].y)}}class ExtrudeGeometry extends BufferGeometry{constructor(e=new Shape([new Vector2(.5,.5),new Vector2(-.5,.5),new Vector2(-.5,-.5),new Vector2(.5,-.5)]),t={}){super();this.type=\"ExtrudeGeometry\";this.parameters={shapes:e,options:t};e=Array.isArray(e)?e:[e];const n=this;const r=[];const i=[];for(let t=0,n=e.length;t<n;t++){const n=e[t];addShape(n)}this.setAttribute(\"position\",new Float32BufferAttribute(r,3));this.setAttribute(\"uv\",new Float32BufferAttribute(i,2));this.computeVertexNormals();function addShape(e){const s=[];const a=void 0!==t.curveSegments?t.curveSegments:12;const o=void 0!==t.steps?t.steps:1;let l=void 0!==t.depth?t.depth:1;let c=void 0===t.bevelEnabled||t.bevelEnabled;let u=void 0!==t.bevelThickness?t.bevelThickness:.2;let h=void 0!==t.bevelSize?t.bevelSize:u-.1;let d=void 0!==t.bevelOffset?t.bevelOffset:0;let p=void 0!==t.bevelSegments?t.bevelSegments:3;const f=t.extrudePath;const m=void 0!==t.UVGenerator?t.UVGenerator:Rl;if(void 0!==t.amount){console.warn(\"THREE.ExtrudeBufferGeometry: amount has been renamed to depth.\");l=t.amount}let g,y=false;let x,b,_,M;if(f){g=f.getSpacedPoints(o);y=true;c=false;x=f.computeFrenetFrames(o,false);b=new Vector3;_=new Vector3;M=new Vector3}if(!c){p=0;u=0;h=0;d=0}const w=e.extractPoints(a);let S=w.shape;const T=w.holes;const E=!ShapeUtils.isClockWise(S);if(E){S=S.reverse();for(let e=0,t=T.length;e<t;e++){const t=T[e];ShapeUtils.isClockWise(t)&&(T[e]=t.reverse())}}const A=ShapeUtils.triangulateShape(S,T);const L=S;for(let e=0,t=T.length;e<t;e++){const t=T[e];S=S.concat(t)}function scalePt2(e,t,n){t||console.error(\"THREE.ExtrudeGeometry: vec does not exist\");return t.clone().multiplyScalar(n).add(e)}const C=S.length,R=A.length;function getBevelVec(e,t,n){let r,i,s;const a=e.x-t.x,o=e.y-t.y;const l=n.x-e.x,c=n.y-e.y;const u=a*a+o*o;const h=a*c-o*l;if(Math.abs(h)>Number.EPSILON){const h=Math.sqrt(u);const d=Math.sqrt(l*l+c*c);const p=t.x-o/h;const f=t.y+a/h;const m=n.x-c/d;const g=n.y+l/d;const y=((m-p)*c-(g-f)*l)/(a*c-o*l);r=p+a*y-e.x;i=f+o*y-e.y;const x=r*r+i*i;if(x<=2)return new Vector2(r,i);s=Math.sqrt(x/2)}else{let e=false;a>Number.EPSILON?l>Number.EPSILON&&(e=true):a<-Number.EPSILON?l<-Number.EPSILON&&(e=true):Math.sign(o)===Math.sign(c)&&(e=true);if(e){r=-o;i=a;s=Math.sqrt(u)}else{r=a;i=o;s=Math.sqrt(u/2)}}return new Vector2(r/s,i/s)}const P=[];for(let e=0,t=L.length,n=t-1,r=e+1;e<t;e++,n++,r++){n===t&&(n=0);r===t&&(r=0);P[e]=getBevelVec(L[e],L[n],L[r])}const I=[];let D,B=P.concat();for(let e=0,t=T.length;e<t;e++){const t=T[e];D=[];for(let e=0,n=t.length,r=n-1,i=e+1;e<n;e++,r++,i++){r===n&&(r=0);i===n&&(i=0);D[e]=getBevelVec(t[e],t[r],t[i])}I.push(D);B=B.concat(D)}for(let e=0;e<p;e++){const t=e/p;const n=u*Math.cos(t*Math.PI/2);const r=h*Math.sin(t*Math.PI/2)+d;for(let e=0,t=L.length;e<t;e++){const t=scalePt2(L[e],P[e],r);v(t.x,t.y,-n)}for(let e=0,t=T.length;e<t;e++){const t=T[e];D=I[e];for(let e=0,i=t.length;e<i;e++){const i=scalePt2(t[e],D[e],r);v(i.x,i.y,-n)}}}const V=h+d;for(let e=0;e<C;e++){const t=c?scalePt2(S[e],B[e],V):S[e];if(y){_.copy(x.normals[0]).multiplyScalar(t.x);b.copy(x.binormals[0]).multiplyScalar(t.y);M.copy(g[0]).add(_).add(b);v(M.x,M.y,M.z)}else v(t.x,t.y,0)}for(let e=1;e<=o;e++)for(let t=0;t<C;t++){const n=c?scalePt2(S[t],B[t],V):S[t];if(y){_.copy(x.normals[e]).multiplyScalar(n.x);b.copy(x.binormals[e]).multiplyScalar(n.y);M.copy(g[e]).add(_).add(b);v(M.x,M.y,M.z)}else v(n.x,n.y,l/o*e)}for(let e=p-1;e>=0;e--){const t=e/p;const n=u*Math.cos(t*Math.PI/2);const r=h*Math.sin(t*Math.PI/2)+d;for(let e=0,t=L.length;e<t;e++){const t=scalePt2(L[e],P[e],r);v(t.x,t.y,l+n)}for(let e=0,t=T.length;e<t;e++){const t=T[e];D=I[e];for(let e=0,i=t.length;e<i;e++){const i=scalePt2(t[e],D[e],r);y?v(i.x,i.y+g[o-1].y,g[o-1].x+n):v(i.x,i.y,l+n)}}}buildLidFaces();buildSideFaces();function buildLidFaces(){const e=r.length/3;if(c){let e=0;let t=C*e;for(let e=0;e<R;e++){const n=A[e];f3(n[2]+t,n[1]+t,n[0]+t)}e=o+2*p;t=C*e;for(let e=0;e<R;e++){const n=A[e];f3(n[0]+t,n[1]+t,n[2]+t)}}else{for(let e=0;e<R;e++){const t=A[e];f3(t[2],t[1],t[0])}for(let e=0;e<R;e++){const t=A[e];f3(t[0]+C*o,t[1]+C*o,t[2]+C*o)}}n.addGroup(e,r.length/3-e,0)}function buildSideFaces(){const e=r.length/3;let t=0;sidewalls(L,t);t+=L.length;for(let e=0,n=T.length;e<n;e++){const n=T[e];sidewalls(n,t);t+=n.length}n.addGroup(e,r.length/3-e,1)}function sidewalls(e,t){let n=e.length;while(--n>=0){const r=n;let i=n-1;i<0&&(i=e.length-1);for(let e=0,n=o+2*p;e<n;e++){const n=C*e;const s=C*(e+1);const a=t+r+n,o=t+i+n,l=t+i+s,c=t+r+s;f4(a,o,l,c)}}}function v(e,t,n){s.push(e);s.push(t);s.push(n)}function f3(e,t,i){addVertex(e);addVertex(t);addVertex(i);const s=r.length/3;const a=m.generateTopUV(n,r,s-3,s-2,s-1);addUV(a[0]);addUV(a[1]);addUV(a[2])}function f4(e,t,i,s){addVertex(e);addVertex(t);addVertex(s);addVertex(t);addVertex(i);addVertex(s);const a=r.length/3;const o=m.generateSideWallUV(n,r,a-6,a-3,a-2,a-1);addUV(o[0]);addUV(o[1]);addUV(o[3]);addUV(o[1]);addUV(o[2]);addUV(o[3])}function addVertex(e){r.push(s[3*e+0]);r.push(s[3*e+1]);r.push(s[3*e+2])}function addUV(e){i.push(e.x);i.push(e.y)}}}toJSON(){const e=super.toJSON();const t=this.parameters.shapes;const n=this.parameters.options;return toJSON$1(t,n,e)}static fromJSON(e,t){const n=[];for(let r=0,i=e.shapes.length;r<i;r++){const i=t[e.shapes[r]];n.push(i)}const r=e.options.extrudePath;void 0!==r&&(e.options.extrudePath=(new Ll[r.type]).fromJSON(r));return new ExtrudeGeometry(n,e.options)}}const Rl={generateTopUV:function(e,t,n,r,i){const s=t[3*n];const a=t[3*n+1];const o=t[3*r];const l=t[3*r+1];const c=t[3*i];const u=t[3*i+1];return[new Vector2(s,a),new Vector2(o,l),new Vector2(c,u)]},generateSideWallUV:function(e,t,n,r,i,s){const a=t[3*n];const o=t[3*n+1];const l=t[3*n+2];const c=t[3*r];const u=t[3*r+1];const h=t[3*r+2];const d=t[3*i];const p=t[3*i+1];const f=t[3*i+2];const m=t[3*s];const g=t[3*s+1];const y=t[3*s+2];return Math.abs(o-u)<Math.abs(a-c)?[new Vector2(a,1-l),new Vector2(c,1-h),new Vector2(d,1-f),new Vector2(m,1-y)]:[new Vector2(o,1-l),new Vector2(u,1-h),new Vector2(p,1-f),new Vector2(g,1-y)]}};function toJSON$1(e,t,n){n.shapes=[];if(Array.isArray(e))for(let t=0,r=e.length;t<r;t++){const r=e[t];n.shapes.push(r.uuid)}else n.shapes.push(e.uuid);void 0!==t.extrudePath&&(n.options.extrudePath=t.extrudePath.toJSON());return n}class IcosahedronGeometry extends PolyhedronGeometry{constructor(e=1,t=0){const n=(1+Math.sqrt(5))/2;const r=[-1,n,0,1,n,0,-1,-n,0,1,-n,0,0,-1,n,0,1,n,0,-1,-n,0,1,-n,n,0,-1,n,0,1,-n,0,-1,-n,0,1];const i=[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(r,i,e,t);this.type=\"IcosahedronGeometry\";this.parameters={radius:e,detail:t}}static fromJSON(e){return new IcosahedronGeometry(e.radius,e.detail)}}class LatheGeometry extends BufferGeometry{constructor(e=[new Vector2(0,.5),new Vector2(.5,0),new Vector2(0,-.5)],t=12,n=0,r=2*Math.PI){super();this.type=\"LatheGeometry\";this.parameters={points:e,segments:t,phiStart:n,phiLength:r};t=Math.floor(t);r=clamp(r,0,2*Math.PI);const i=[];const s=[];const a=[];const o=[];const l=[];const c=1/t;const u=new Vector3;const h=new Vector2;const d=new Vector3;const p=new Vector3;const f=new Vector3;let m=0;let g=0;for(let t=0;t<=e.length-1;t++)switch(t){case 0:m=e[t+1].x-e[t].x;g=e[t+1].y-e[t].y;d.x=1*g;d.y=-m;d.z=0*g;f.copy(d);d.normalize();o.push(d.x,d.y,d.z);break;case e.length-1:o.push(f.x,f.y,f.z);break;default:m=e[t+1].x-e[t].x;g=e[t+1].y-e[t].y;d.x=1*g;d.y=-m;d.z=0*g;p.copy(d);d.x+=f.x;d.y+=f.y;d.z+=f.z;d.normalize();o.push(d.x,d.y,d.z);f.copy(p)}for(let i=0;i<=t;i++){const d=n+i*c*r;const p=Math.sin(d);const f=Math.cos(d);for(let n=0;n<=e.length-1;n++){u.x=e[n].x*p;u.y=e[n].y;u.z=e[n].x*f;s.push(u.x,u.y,u.z);h.x=i/t;h.y=n/(e.length-1);a.push(h.x,h.y);const r=o[3*n+0]*p;const c=o[3*n+1];const d=o[3*n+0]*f;l.push(r,c,d)}}for(let n=0;n<t;n++)for(let t=0;t<e.length-1;t++){const r=t+n*e.length;const s=r;const a=r+e.length;const o=r+e.length+1;const l=r+1;i.push(s,a,l);i.push(a,o,l)}this.setIndex(i);this.setAttribute(\"position\",new Float32BufferAttribute(s,3));this.setAttribute(\"uv\",new Float32BufferAttribute(a,2));this.setAttribute(\"normal\",new Float32BufferAttribute(l,3))}static fromJSON(e){return new LatheGeometry(e.points,e.segments,e.phiStart,e.phiLength)}}class OctahedronGeometry extends PolyhedronGeometry{constructor(e=1,t=0){const n=[1,0,0,-1,0,0,0,1,0,0,-1,0,0,0,1,0,0,-1];const r=[0,2,4,0,4,3,0,3,5,0,5,2,1,2,5,1,5,3,1,3,4,1,4,2];super(n,r,e,t);this.type=\"OctahedronGeometry\";this.parameters={radius:e,detail:t}}static fromJSON(e){return new OctahedronGeometry(e.radius,e.detail)}}class RingGeometry extends BufferGeometry{constructor(e=.5,t=1,n=8,r=1,i=0,s=2*Math.PI){super();this.type=\"RingGeometry\";this.parameters={innerRadius:e,outerRadius:t,thetaSegments:n,phiSegments:r,thetaStart:i,thetaLength:s};n=Math.max(3,n);r=Math.max(1,r);const a=[];const o=[];const l=[];const c=[];let u=e;const h=(t-e)/r;const d=new Vector3;const p=new Vector2;for(let e=0;e<=r;e++){for(let e=0;e<=n;e++){const r=i+e/n*s;d.x=u*Math.cos(r);d.y=u*Math.sin(r);o.push(d.x,d.y,d.z);l.push(0,0,1);p.x=(d.x/t+1)/2;p.y=(d.y/t+1)/2;c.push(p.x,p.y)}u+=h}for(let e=0;e<r;e++){const t=e*(n+1);for(let e=0;e<n;e++){const r=e+t;const i=r;const s=r+n+1;const o=r+n+2;const l=r+1;a.push(i,s,l);a.push(s,o,l)}}this.setIndex(a);this.setAttribute(\"position\",new Float32BufferAttribute(o,3));this.setAttribute(\"normal\",new Float32BufferAttribute(l,3));this.setAttribute(\"uv\",new Float32BufferAttribute(c,2))}static fromJSON(e){return new RingGeometry(e.innerRadius,e.outerRadius,e.thetaSegments,e.phiSegments,e.thetaStart,e.thetaLength)}}class ShapeGeometry extends BufferGeometry{constructor(e=new Shape([new Vector2(0,.5),new Vector2(-.5,-.5),new Vector2(.5,-.5)]),t=12){super();this.type=\"ShapeGeometry\";this.parameters={shapes:e,curveSegments:t};const n=[];const r=[];const i=[];const s=[];let a=0;let o=0;if(false===Array.isArray(e))addShape(e);else for(let t=0;t<e.length;t++){addShape(e[t]);this.addGroup(a,o,t);a+=o;o=0}this.setIndex(n);this.setAttribute(\"position\",new Float32BufferAttribute(r,3));this.setAttribute(\"normal\",new Float32BufferAttribute(i,3));this.setAttribute(\"uv\",new Float32BufferAttribute(s,2));function addShape(e){const a=r.length/3;const l=e.extractPoints(t);let c=l.shape;const u=l.holes;false===ShapeUtils.isClockWise(c)&&(c=c.reverse());for(let e=0,t=u.length;e<t;e++){const t=u[e];true===ShapeUtils.isClockWise(t)&&(u[e]=t.reverse())}const h=ShapeUtils.triangulateShape(c,u);for(let e=0,t=u.length;e<t;e++){const t=u[e];c=c.concat(t)}for(let e=0,t=c.length;e<t;e++){const t=c[e];r.push(t.x,t.y,0);i.push(0,0,1);s.push(t.x,t.y)}for(let e=0,t=h.length;e<t;e++){const t=h[e];const r=t[0]+a;const i=t[1]+a;const s=t[2]+a;n.push(r,i,s);o+=3}}}toJSON(){const e=super.toJSON();const t=this.parameters.shapes;return toJSON(t,e)}static fromJSON(e,t){const n=[];for(let r=0,i=e.shapes.length;r<i;r++){const i=t[e.shapes[r]];n.push(i)}return new ShapeGeometry(n,e.curveSegments)}}function toJSON(e,t){t.shapes=[];if(Array.isArray(e))for(let n=0,r=e.length;n<r;n++){const r=e[n];t.shapes.push(r.uuid)}else t.shapes.push(e.uuid);return t}class SphereGeometry extends BufferGeometry{constructor(e=1,t=32,n=16,r=0,i=2*Math.PI,s=0,a=Math.PI){super();this.type=\"SphereGeometry\";this.parameters={radius:e,widthSegments:t,heightSegments:n,phiStart:r,phiLength:i,thetaStart:s,thetaLength:a};t=Math.max(3,Math.floor(t));n=Math.max(2,Math.floor(n));const o=Math.min(s+a,Math.PI);let l=0;const c=[];const u=new Vector3;const h=new Vector3;const d=[];const p=[];const f=[];const m=[];for(let d=0;d<=n;d++){const g=[];const y=d/n;let x=0;0==d&&0==s?x=.5/t:d==n&&o==Math.PI&&(x=-.5/t);for(let n=0;n<=t;n++){const o=n/t;u.x=-e*Math.cos(r+o*i)*Math.sin(s+y*a);u.y=e*Math.cos(s+y*a);u.z=e*Math.sin(r+o*i)*Math.sin(s+y*a);p.push(u.x,u.y,u.z);h.copy(u).normalize();f.push(h.x,h.y,h.z);m.push(o+x,1-y);g.push(l++)}c.push(g)}for(let e=0;e<n;e++)for(let r=0;r<t;r++){const t=c[e][r+1];const i=c[e][r];const a=c[e+1][r];const l=c[e+1][r+1];(0!==e||s>0)&&d.push(t,i,l);(e!==n-1||o<Math.PI)&&d.push(i,a,l)}this.setIndex(d);this.setAttribute(\"position\",new Float32BufferAttribute(p,3));this.setAttribute(\"normal\",new Float32BufferAttribute(f,3));this.setAttribute(\"uv\",new Float32BufferAttribute(m,2))}static fromJSON(e){return new SphereGeometry(e.radius,e.widthSegments,e.heightSegments,e.phiStart,e.phiLength,e.thetaStart,e.thetaLength)}}class TetrahedronGeometry extends PolyhedronGeometry{constructor(e=1,t=0){const n=[1,1,1,-1,-1,1,-1,1,-1,1,-1,-1];const r=[2,1,0,0,3,2,1,3,0,2,3,1];super(n,r,e,t);this.type=\"TetrahedronGeometry\";this.parameters={radius:e,detail:t}}static fromJSON(e){return new TetrahedronGeometry(e.radius,e.detail)}}class TorusGeometry extends BufferGeometry{constructor(e=1,t=.4,n=8,r=6,i=2*Math.PI){super();this.type=\"TorusGeometry\";this.parameters={radius:e,tube:t,radialSegments:n,tubularSegments:r,arc:i};n=Math.floor(n);r=Math.floor(r);const s=[];const a=[];const o=[];const l=[];const c=new Vector3;const u=new Vector3;const h=new Vector3;for(let s=0;s<=n;s++)for(let d=0;d<=r;d++){const p=d/r*i;const f=s/n*Math.PI*2;u.x=(e+t*Math.cos(f))*Math.cos(p);u.y=(e+t*Math.cos(f))*Math.sin(p);u.z=t*Math.sin(f);a.push(u.x,u.y,u.z);c.x=e*Math.cos(p);c.y=e*Math.sin(p);h.subVectors(u,c).normalize();o.push(h.x,h.y,h.z);l.push(d/r);l.push(s/n)}for(let e=1;e<=n;e++)for(let t=1;t<=r;t++){const n=(r+1)*e+t-1;const i=(r+1)*(e-1)+t-1;const a=(r+1)*(e-1)+t;const o=(r+1)*e+t;s.push(n,i,o);s.push(i,a,o)}this.setIndex(s);this.setAttribute(\"position\",new Float32BufferAttribute(a,3));this.setAttribute(\"normal\",new Float32BufferAttribute(o,3));this.setAttribute(\"uv\",new Float32BufferAttribute(l,2))}static fromJSON(e){return new TorusGeometry(e.radius,e.tube,e.radialSegments,e.tubularSegments,e.arc)}}class TorusKnotGeometry extends BufferGeometry{constructor(e=1,t=.4,n=64,r=8,i=2,s=3){super();this.type=\"TorusKnotGeometry\";this.parameters={radius:e,tube:t,tubularSegments:n,radialSegments:r,p:i,q:s};n=Math.floor(n);r=Math.floor(r);const a=[];const o=[];const l=[];const c=[];const u=new Vector3;const h=new Vector3;const d=new Vector3;const p=new Vector3;const f=new Vector3;const m=new Vector3;const g=new Vector3;for(let a=0;a<=n;++a){const y=a/n*i*Math.PI*2;calculatePositionOnCurve(y,i,s,e,d);calculatePositionOnCurve(y+.01,i,s,e,p);m.subVectors(p,d);g.addVectors(p,d);f.crossVectors(m,g);g.crossVectors(f,m);f.normalize();g.normalize();for(let e=0;e<=r;++e){const i=e/r*Math.PI*2;const s=-t*Math.cos(i);const p=t*Math.sin(i);u.x=d.x+(s*g.x+p*f.x);u.y=d.y+(s*g.y+p*f.y);u.z=d.z+(s*g.z+p*f.z);o.push(u.x,u.y,u.z);h.subVectors(u,d).normalize();l.push(h.x,h.y,h.z);c.push(a/n);c.push(e/r)}}for(let e=1;e<=n;e++)for(let t=1;t<=r;t++){const n=(r+1)*(e-1)+(t-1);const i=(r+1)*e+(t-1);const s=(r+1)*e+t;const o=(r+1)*(e-1)+t;a.push(n,i,o);a.push(i,s,o)}this.setIndex(a);this.setAttribute(\"position\",new Float32BufferAttribute(o,3));this.setAttribute(\"normal\",new Float32BufferAttribute(l,3));this.setAttribute(\"uv\",new Float32BufferAttribute(c,2));function calculatePositionOnCurve(e,t,n,r,i){const s=Math.cos(e);const a=Math.sin(e);const o=n/t*e;const l=Math.cos(o);i.x=r*(2+l)*.5*s;i.y=r*(2+l)*a*.5;i.z=r*Math.sin(o)*.5}}static fromJSON(e){return new TorusKnotGeometry(e.radius,e.tube,e.tubularSegments,e.radialSegments,e.p,e.q)}}class TubeGeometry extends BufferGeometry{constructor(e=new QuadraticBezierCurve3(new Vector3(-1,-1,0),new Vector3(-1,1,0),new Vector3(1,1,0)),t=64,n=1,r=8,i=false){super();this.type=\"TubeGeometry\";this.parameters={path:e,tubularSegments:t,radius:n,radialSegments:r,closed:i};const s=e.computeFrenetFrames(t,i);this.tangents=s.tangents;this.normals=s.normals;this.binormals=s.binormals;const a=new Vector3;const o=new Vector3;const l=new Vector2;let c=new Vector3;const u=[];const h=[];const d=[];const p=[];generateBufferData();this.setIndex(p);this.setAttribute(\"position\",new Float32BufferAttribute(u,3));this.setAttribute(\"normal\",new Float32BufferAttribute(h,3));this.setAttribute(\"uv\",new Float32BufferAttribute(d,2));function generateBufferData(){for(let e=0;e<t;e++)generateSegment(e);generateSegment(false===i?t:0);generateUVs();generateIndices()}function generateSegment(i){c=e.getPointAt(i/t,c);const l=s.normals[i];const d=s.binormals[i];for(let e=0;e<=r;e++){const t=e/r*Math.PI*2;const i=Math.sin(t);const s=-Math.cos(t);o.x=s*l.x+i*d.x;o.y=s*l.y+i*d.y;o.z=s*l.z+i*d.z;o.normalize();h.push(o.x,o.y,o.z);a.x=c.x+n*o.x;a.y=c.y+n*o.y;a.z=c.z+n*o.z;u.push(a.x,a.y,a.z)}}function generateIndices(){for(let e=1;e<=t;e++)for(let t=1;t<=r;t++){const n=(r+1)*(e-1)+(t-1);const i=(r+1)*e+(t-1);const s=(r+1)*e+t;const a=(r+1)*(e-1)+t;p.push(n,i,a);p.push(i,s,a)}}function generateUVs(){for(let e=0;e<=t;e++)for(let n=0;n<=r;n++){l.x=e/t;l.y=n/r;d.push(l.x,l.y)}}}toJSON(){const e=super.toJSON();e.path=this.parameters.path.toJSON();return e}static fromJSON(e){return new TubeGeometry((new Ll[e.path.type]).fromJSON(e.path),e.tubularSegments,e.radius,e.radialSegments,e.closed)}}class WireframeGeometry extends BufferGeometry{constructor(e=null){super();this.type=\"WireframeGeometry\";this.parameters={geometry:e};if(null!==e){const t=[];const n=new Set;const r=new Vector3;const i=new Vector3;if(null!==e.index){const s=e.attributes.position;const a=e.index;let o=e.groups;0===o.length&&(o=[{start:0,count:a.count,materialIndex:0}]);for(let e=0,l=o.length;e<l;++e){const l=o[e];const c=l.start;const u=l.count;for(let e=c,o=c+u;e<o;e+=3)for(let o=0;o<3;o++){const l=a.getX(e+o);const c=a.getX(e+(o+1)%3);r.fromBufferAttribute(s,l);i.fromBufferAttribute(s,c);if(true===isUniqueEdge(r,i,n)){t.push(r.x,r.y,r.z);t.push(i.x,i.y,i.z)}}}}else{const s=e.attributes.position;for(let e=0,a=s.count/3;e<a;e++)for(let a=0;a<3;a++){const o=3*e+a;const l=3*e+(a+1)%3;r.fromBufferAttribute(s,o);i.fromBufferAttribute(s,l);if(true===isUniqueEdge(r,i,n)){t.push(r.x,r.y,r.z);t.push(i.x,i.y,i.z)}}}this.setAttribute(\"position\",new Float32BufferAttribute(t,3))}}}function isUniqueEdge(e,t,n){const r=`${e.x},${e.y},${e.z}-${t.x},${t.y},${t.z}`;const i=`${t.x},${t.y},${t.z}-${e.x},${e.y},${e.z}`;if(true===n.has(r)||true===n.has(i))return false;n.add(r,i);return true}var Pl=Object.freeze({__proto__:null,BoxGeometry:BoxGeometry,BoxBufferGeometry:BoxGeometry,CircleGeometry:CircleGeometry,CircleBufferGeometry:CircleGeometry,ConeGeometry:ConeGeometry,ConeBufferGeometry:ConeGeometry,CylinderGeometry:CylinderGeometry,CylinderBufferGeometry:CylinderGeometry,DodecahedronGeometry:DodecahedronGeometry,DodecahedronBufferGeometry:DodecahedronGeometry,EdgesGeometry:EdgesGeometry,ExtrudeGeometry:ExtrudeGeometry,ExtrudeBufferGeometry:ExtrudeGeometry,IcosahedronGeometry:IcosahedronGeometry,IcosahedronBufferGeometry:IcosahedronGeometry,LatheGeometry:LatheGeometry,LatheBufferGeometry:LatheGeometry,OctahedronGeometry:OctahedronGeometry,OctahedronBufferGeometry:OctahedronGeometry,PlaneGeometry:PlaneGeometry,PlaneBufferGeometry:PlaneGeometry,PolyhedronGeometry:PolyhedronGeometry,PolyhedronBufferGeometry:PolyhedronGeometry,RingGeometry:RingGeometry,RingBufferGeometry:RingGeometry,ShapeGeometry:ShapeGeometry,ShapeBufferGeometry:ShapeGeometry,SphereGeometry:SphereGeometry,SphereBufferGeometry:SphereGeometry,TetrahedronGeometry:TetrahedronGeometry,TetrahedronBufferGeometry:TetrahedronGeometry,TorusGeometry:TorusGeometry,TorusBufferGeometry:TorusGeometry,TorusKnotGeometry:TorusKnotGeometry,TorusKnotBufferGeometry:TorusKnotGeometry,TubeGeometry:TubeGeometry,TubeBufferGeometry:TubeGeometry,WireframeGeometry:WireframeGeometry});class ShadowMaterial extends Material{constructor(e){super();this.type=\"ShadowMaterial\";this.color=new Color(0);this.transparent=true;this.setValues(e)}copy(e){super.copy(e);this.color.copy(e.color);return this}}ShadowMaterial.prototype.isShadowMaterial=true;class MeshStandardMaterial extends Material{constructor(e){super();this.defines={STANDARD:\"\"};this.type=\"MeshStandardMaterial\";this.color=new Color(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 Color(0);this.emissiveIntensity=1;this.emissiveMap=null;this.bumpMap=null;this.bumpScale=1;this.normalMap=null;this.normalMapType=Qt;this.normalScale=new Vector2(1,1);this.displacementMap=null;this.displacementScale=1;this.displacementBias=0;this.roughnessMap=null;this.metalnessMap=null;this.alphaMap=null;this.envMap=null;this.envMapIntensity=1;this.refractionRatio=.98;this.wireframe=false;this.wireframeLinewidth=1;this.wireframeLinecap=\"round\";this.wireframeLinejoin=\"round\";this.flatShading=false;this.setValues(e)}copy(e){super.copy(e);this.defines={STANDARD:\"\"};this.color.copy(e.color);this.roughness=e.roughness;this.metalness=e.metalness;this.map=e.map;this.lightMap=e.lightMap;this.lightMapIntensity=e.lightMapIntensity;this.aoMap=e.aoMap;this.aoMapIntensity=e.aoMapIntensity;this.emissive.copy(e.emissive);this.emissiveMap=e.emissiveMap;this.emissiveIntensity=e.emissiveIntensity;this.bumpMap=e.bumpMap;this.bumpScale=e.bumpScale;this.normalMap=e.normalMap;this.normalMapType=e.normalMapType;this.normalScale.copy(e.normalScale);this.displacementMap=e.displacementMap;this.displacementScale=e.displacementScale;this.displacementBias=e.displacementBias;this.roughnessMap=e.roughnessMap;this.metalnessMap=e.metalnessMap;this.alphaMap=e.alphaMap;this.envMap=e.envMap;this.envMapIntensity=e.envMapIntensity;this.refractionRatio=e.refractionRatio;this.wireframe=e.wireframe;this.wireframeLinewidth=e.wireframeLinewidth;this.wireframeLinecap=e.wireframeLinecap;this.wireframeLinejoin=e.wireframeLinejoin;this.flatShading=e.flatShading;return this}}MeshStandardMaterial.prototype.isMeshStandardMaterial=true;class MeshPhysicalMaterial extends MeshStandardMaterial{constructor(e){super();this.defines={STANDARD:\"\",PHYSICAL:\"\"};this.type=\"MeshPhysicalMaterial\";this.clearcoatMap=null;this.clearcoatRoughness=0;this.clearcoatRoughnessMap=null;this.clearcoatNormalScale=new Vector2(1,1);this.clearcoatNormalMap=null;this.ior=1.5;Object.defineProperty(this,\"reflectivity\",{get:function(){return clamp(2.5*(this.ior-1)/(this.ior+1),0,1)},set:function(e){this.ior=(1+.4*e)/(1-.4*e)}});this.sheenColor=new Color(0);this.sheenColorMap=null;this.sheenRoughness=1;this.sheenRoughnessMap=null;this.transmissionMap=null;this.thickness=0;this.thicknessMap=null;this.attenuationDistance=0;this.attenuationColor=new Color(1,1,1);this.specularIntensity=1;this.specularIntensityMap=null;this.specularColor=new Color(1,1,1);this.specularColorMap=null;this._sheen=0;this._clearcoat=0;this._transmission=0;this.setValues(e)}get sheen(){return this._sheen}set sheen(e){this._sheen>0!==e>0&&this.version++;this._sheen=e}get clearcoat(){return this._clearcoat}set clearcoat(e){this._clearcoat>0!==e>0&&this.version++;this._clearcoat=e}get transmission(){return this._transmission}set transmission(e){this._transmission>0!==e>0&&this.version++;this._transmission=e}copy(e){super.copy(e);this.defines={STANDARD:\"\",PHYSICAL:\"\"};this.clearcoat=e.clearcoat;this.clearcoatMap=e.clearcoatMap;this.clearcoatRoughness=e.clearcoatRoughness;this.clearcoatRoughnessMap=e.clearcoatRoughnessMap;this.clearcoatNormalMap=e.clearcoatNormalMap;this.clearcoatNormalScale.copy(e.clearcoatNormalScale);this.ior=e.ior;this.sheen=e.sheen;this.sheenColor.copy(e.sheenColor);this.sheenColorMap=e.sheenColorMap;this.sheenRoughness=e.sheenRoughness;this.sheenRoughnessMap=e.sheenRoughnessMap;this.transmission=e.transmission;this.transmissionMap=e.transmissionMap;this.thickness=e.thickness;this.thicknessMap=e.thicknessMap;this.attenuationDistance=e.attenuationDistance;this.attenuationColor.copy(e.attenuationColor);this.specularIntensity=e.specularIntensity;this.specularIntensityMap=e.specularIntensityMap;this.specularColor.copy(e.specularColor);this.specularColorMap=e.specularColorMap;return this}}MeshPhysicalMaterial.prototype.isMeshPhysicalMaterial=true;class MeshPhongMaterial extends Material{constructor(e){super();this.type=\"MeshPhongMaterial\";this.color=new Color(16777215);this.specular=new Color(1118481);this.shininess=30;this.map=null;this.lightMap=null;this.lightMapIntensity=1;this.aoMap=null;this.aoMapIntensity=1;this.emissive=new Color(0);this.emissiveIntensity=1;this.emissiveMap=null;this.bumpMap=null;this.bumpScale=1;this.normalMap=null;this.normalMapType=Qt;this.normalScale=new Vector2(1,1);this.displacementMap=null;this.displacementScale=1;this.displacementBias=0;this.specularMap=null;this.alphaMap=null;this.envMap=null;this.combine=X;this.reflectivity=1;this.refractionRatio=.98;this.wireframe=false;this.wireframeLinewidth=1;this.wireframeLinecap=\"round\";this.wireframeLinejoin=\"round\";this.flatShading=false;this.setValues(e)}copy(e){super.copy(e);this.color.copy(e.color);this.specular.copy(e.specular);this.shininess=e.shininess;this.map=e.map;this.lightMap=e.lightMap;this.lightMapIntensity=e.lightMapIntensity;this.aoMap=e.aoMap;this.aoMapIntensity=e.aoMapIntensity;this.emissive.copy(e.emissive);this.emissiveMap=e.emissiveMap;this.emissiveIntensity=e.emissiveIntensity;this.bumpMap=e.bumpMap;this.bumpScale=e.bumpScale;this.normalMap=e.normalMap;this.normalMapType=e.normalMapType;this.normalScale.copy(e.normalScale);this.displacementMap=e.displacementMap;this.displacementScale=e.displacementScale;this.displacementBias=e.displacementBias;this.specularMap=e.specularMap;this.alphaMap=e.alphaMap;this.envMap=e.envMap;this.combine=e.combine;this.reflectivity=e.reflectivity;this.refractionRatio=e.refractionRatio;this.wireframe=e.wireframe;this.wireframeLinewidth=e.wireframeLinewidth;this.wireframeLinecap=e.wireframeLinecap;this.wireframeLinejoin=e.wireframeLinejoin;this.flatShading=e.flatShading;return this}}MeshPhongMaterial.prototype.isMeshPhongMaterial=true;class MeshToonMaterial extends Material{constructor(e){super();this.defines={TOON:\"\"};this.type=\"MeshToonMaterial\";this.color=new Color(16777215);this.map=null;this.gradientMap=null;this.lightMap=null;this.lightMapIntensity=1;this.aoMap=null;this.aoMapIntensity=1;this.emissive=new Color(0);this.emissiveIntensity=1;this.emissiveMap=null;this.bumpMap=null;this.bumpScale=1;this.normalMap=null;this.normalMapType=Qt;this.normalScale=new Vector2(1,1);this.displacementMap=null;this.displacementScale=1;this.displacementBias=0;this.alphaMap=null;this.wireframe=false;this.wireframeLinewidth=1;this.wireframeLinecap=\"round\";this.wireframeLinejoin=\"round\";this.setValues(e)}copy(e){super.copy(e);this.color.copy(e.color);this.map=e.map;this.gradientMap=e.gradientMap;this.lightMap=e.lightMap;this.lightMapIntensity=e.lightMapIntensity;this.aoMap=e.aoMap;this.aoMapIntensity=e.aoMapIntensity;this.emissive.copy(e.emissive);this.emissiveMap=e.emissiveMap;this.emissiveIntensity=e.emissiveIntensity;this.bumpMap=e.bumpMap;this.bumpScale=e.bumpScale;this.normalMap=e.normalMap;this.normalMapType=e.normalMapType;this.normalScale.copy(e.normalScale);this.displacementMap=e.displacementMap;this.displacementScale=e.displacementScale;this.displacementBias=e.displacementBias;this.alphaMap=e.alphaMap;this.wireframe=e.wireframe;this.wireframeLinewidth=e.wireframeLinewidth;this.wireframeLinecap=e.wireframeLinecap;this.wireframeLinejoin=e.wireframeLinejoin;return this}}MeshToonMaterial.prototype.isMeshToonMaterial=true;class MeshNormalMaterial extends Material{constructor(e){super();this.type=\"MeshNormalMaterial\";this.bumpMap=null;this.bumpScale=1;this.normalMap=null;this.normalMapType=Qt;this.normalScale=new Vector2(1,1);this.displacementMap=null;this.displacementScale=1;this.displacementBias=0;this.wireframe=false;this.wireframeLinewidth=1;this.fog=false;this.flatShading=false;this.setValues(e)}copy(e){super.copy(e);this.bumpMap=e.bumpMap;this.bumpScale=e.bumpScale;this.normalMap=e.normalMap;this.normalMapType=e.normalMapType;this.normalScale.copy(e.normalScale);this.displacementMap=e.displacementMap;this.displacementScale=e.displacementScale;this.displacementBias=e.displacementBias;this.wireframe=e.wireframe;this.wireframeLinewidth=e.wireframeLinewidth;this.flatShading=e.flatShading;return this}}MeshNormalMaterial.prototype.isMeshNormalMaterial=true;class MeshLambertMaterial extends Material{constructor(e){super();this.type=\"MeshLambertMaterial\";this.color=new Color(16777215);this.map=null;this.lightMap=null;this.lightMapIntensity=1;this.aoMap=null;this.aoMapIntensity=1;this.emissive=new Color(0);this.emissiveIntensity=1;this.emissiveMap=null;this.specularMap=null;this.alphaMap=null;this.envMap=null;this.combine=X;this.reflectivity=1;this.refractionRatio=.98;this.wireframe=false;this.wireframeLinewidth=1;this.wireframeLinecap=\"round\";this.wireframeLinejoin=\"round\";this.setValues(e)}copy(e){super.copy(e);this.color.copy(e.color);this.map=e.map;this.lightMap=e.lightMap;this.lightMapIntensity=e.lightMapIntensity;this.aoMap=e.aoMap;this.aoMapIntensity=e.aoMapIntensity;this.emissive.copy(e.emissive);this.emissiveMap=e.emissiveMap;this.emissiveIntensity=e.emissiveIntensity;this.specularMap=e.specularMap;this.alphaMap=e.alphaMap;this.envMap=e.envMap;this.combine=e.combine;this.reflectivity=e.reflectivity;this.refractionRatio=e.refractionRatio;this.wireframe=e.wireframe;this.wireframeLinewidth=e.wireframeLinewidth;this.wireframeLinecap=e.wireframeLinecap;this.wireframeLinejoin=e.wireframeLinejoin;return this}}MeshLambertMaterial.prototype.isMeshLambertMaterial=true;class MeshMatcapMaterial extends Material{constructor(e){super();this.defines={MATCAP:\"\"};this.type=\"MeshMatcapMaterial\";this.color=new Color(16777215);this.matcap=null;this.map=null;this.bumpMap=null;this.bumpScale=1;this.normalMap=null;this.normalMapType=Qt;this.normalScale=new Vector2(1,1);this.displacementMap=null;this.displacementScale=1;this.displacementBias=0;this.alphaMap=null;this.flatShading=false;this.setValues(e)}copy(e){super.copy(e);this.defines={MATCAP:\"\"};this.color.copy(e.color);this.matcap=e.matcap;this.map=e.map;this.bumpMap=e.bumpMap;this.bumpScale=e.bumpScale;this.normalMap=e.normalMap;this.normalMapType=e.normalMapType;this.normalScale.copy(e.normalScale);this.displacementMap=e.displacementMap;this.displacementScale=e.displacementScale;this.displacementBias=e.displacementBias;this.alphaMap=e.alphaMap;this.flatShading=e.flatShading;return this}}MeshMatcapMaterial.prototype.isMeshMatcapMaterial=true;class LineDashedMaterial extends LineBasicMaterial{constructor(e){super();this.type=\"LineDashedMaterial\";this.scale=1;this.dashSize=3;this.gapSize=1;this.setValues(e)}copy(e){super.copy(e);this.scale=e.scale;this.dashSize=e.dashSize;this.gapSize=e.gapSize;return this}}LineDashedMaterial.prototype.isLineDashedMaterial=true;var Il=Object.freeze({__proto__:null,ShadowMaterial:ShadowMaterial,SpriteMaterial:SpriteMaterial,RawShaderMaterial:RawShaderMaterial,ShaderMaterial:ShaderMaterial,PointsMaterial:PointsMaterial,MeshPhysicalMaterial:MeshPhysicalMaterial,MeshStandardMaterial:MeshStandardMaterial,MeshPhongMaterial:MeshPhongMaterial,MeshToonMaterial:MeshToonMaterial,MeshNormalMaterial:MeshNormalMaterial,MeshLambertMaterial:MeshLambertMaterial,MeshDepthMaterial:MeshDepthMaterial,MeshDistanceMaterial:MeshDistanceMaterial,MeshBasicMaterial:MeshBasicMaterial,MeshMatcapMaterial:MeshMatcapMaterial,LineDashedMaterial:LineDashedMaterial,LineBasicMaterial:LineBasicMaterial,Material:Material});const Dl={arraySlice:function(e,t,n){return Dl.isTypedArray(e)?new e.constructor(e.subarray(t,void 0!==n?n:e.length)):e.slice(t,n)},convertArray:function(e,t,n){return!e||!n&&e.constructor===t?e:\"number\"===typeof t.BYTES_PER_ELEMENT?new t(e):Array.prototype.slice.call(e)},isTypedArray:function(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)},getKeyframeOrder:function(e){function compareTime(t,n){return e[t]-e[n]}const t=e.length;const n=new Array(t);for(let e=0;e!==t;++e)n[e]=e;n.sort(compareTime);return n},sortedArray:function(e,t,n){const r=e.length;const i=new e.constructor(r);for(let s=0,a=0;a!==r;++s){const r=n[s]*t;for(let n=0;n!==t;++n)i[a++]=e[r+n]}return i},flattenJSON:function(e,t,n,r){let i=1,s=e[0];while(void 0!==s&&void 0===s[r])s=e[i++];if(void 0===s)return;let a=s[r];if(void 0!==a)if(Array.isArray(a))do{a=s[r];if(void 0!==a){t.push(s.time);n.push.apply(n,a)}s=e[i++]}while(void 0!==s);else if(void 0!==a.toArray)do{a=s[r];if(void 0!==a){t.push(s.time);a.toArray(n,n.length)}s=e[i++]}while(void 0!==s);else do{a=s[r];if(void 0!==a){t.push(s.time);n.push(a)}s=e[i++]}while(void 0!==s)},subclip:function(e,t,n,r,i=30){const s=e.clone();s.name=t;const a=[];for(let e=0;e<s.tracks.length;++e){const t=s.tracks[e];const o=t.getValueSize();const l=[];const c=[];for(let e=0;e<t.times.length;++e){const s=t.times[e]*i;if(!(s<n||s>=r)){l.push(t.times[e]);for(let n=0;n<o;++n)c.push(t.values[e*o+n])}}if(0!==l.length){t.times=Dl.convertArray(l,t.times.constructor);t.values=Dl.convertArray(c,t.values.constructor);a.push(t)}}s.tracks=a;let o=Infinity;for(let e=0;e<s.tracks.length;++e)o>s.tracks[e].times[0]&&(o=s.tracks[e].times[0]);for(let e=0;e<s.tracks.length;++e)s.tracks[e].shift(-1*o);s.resetDuration();return s},makeClipAdditive:function(e,t=0,n=e,r=30){r<=0&&(r=30);const i=n.tracks.length;const s=t/r;for(let t=0;t<i;++t){const r=n.tracks[t];const i=r.ValueTypeName;if(\"bool\"===i||\"string\"===i)continue;const a=e.tracks.find((function(e){return e.name===r.name&&e.ValueTypeName===i}));if(void 0===a)continue;let o=0;const l=r.getValueSize();r.createInterpolant.isInterpolantFactoryMethodGLTFCubicSpline&&(o=l/3);let c=0;const u=a.getValueSize();a.createInterpolant.isInterpolantFactoryMethodGLTFCubicSpline&&(c=u/3);const h=r.times.length-1;let d;if(s<=r.times[0]){const e=o;const t=l-o;d=Dl.arraySlice(r.values,e,t)}else if(s>=r.times[h]){const e=h*l+o;const t=e+l-o;d=Dl.arraySlice(r.values,e,t)}else{const e=r.createInterpolant();const t=o;const n=l-o;e.evaluate(s);d=Dl.arraySlice(e.resultBuffer,t,n)}if(\"quaternion\"===i){const e=(new Quaternion).fromArray(d).normalize().conjugate();e.toArray(d)}const p=a.times.length;for(let e=0;e<p;++e){const t=e*u+c;if(\"quaternion\"===i)Quaternion.multiplyQuaternionsFlat(a.values,t,d,0,a.values,t);else{const e=u-2*c;for(let n=0;n<e;++n)a.values[t+n]-=d[n]}}}e.blendMode=kt;return e}};class Interpolant{constructor(e,t,n,r){this.parameterPositions=e;this._cachedIndex=0;this.resultBuffer=void 0!==r?r:new t.constructor(n);this.sampleValues=t;this.valueSize=n;this.settings=null;this.DefaultSettings_={}}evaluate(e){const t=this.parameterPositions;let n=this._cachedIndex,r=t[n],i=t[n-1];e:{t:{let s;n:{r:if(!(e<r)){for(let s=n+2;;){if(void 0===r){if(e<i)break r;n=t.length;this._cachedIndex=n;return this.afterEnd_(n-1,e,i)}if(n===s)break;i=r;r=t[++n];if(e<r)break t}s=t.length;break n}if(e>=i)break e;{const a=t[1];if(e<a){n=2;i=a}for(let s=n-2;;){if(void 0===i){this._cachedIndex=0;return this.beforeStart_(0,e,r)}if(n===s)break;r=i;i=t[--n-1];if(e>=i)break t}s=n;n=0}}while(n<s){const r=n+s>>>1;e<t[r]?s=r:n=r+1}r=t[n];i=t[n-1];if(void 0===i){this._cachedIndex=0;return this.beforeStart_(0,e,r)}if(void 0===r){n=t.length;this._cachedIndex=n;return this.afterEnd_(n-1,i,e)}}this._cachedIndex=n;this.intervalChanged_(n,i,r)}return this.interpolate_(n,i,e,r)}getSettings_(){return this.settings||this.DefaultSettings_}copySampleValue_(e){const t=this.resultBuffer,n=this.sampleValues,r=this.valueSize,i=e*r;for(let e=0;e!==r;++e)t[e]=n[i+e];return t}interpolate_(){throw new Error(\"call to abstract method\")}intervalChanged_(){}}Interpolant.prototype.beforeStart_=Interpolant.prototype.copySampleValue_;Interpolant.prototype.afterEnd_=Interpolant.prototype.copySampleValue_;class CubicInterpolant extends Interpolant{constructor(e,t,n,r){super(e,t,n,r);this._weightPrev=-0;this._offsetPrev=-0;this._weightNext=-0;this._offsetNext=-0;this.DefaultSettings_={endingStart:Gt,endingEnd:Gt}}intervalChanged_(e,t,n){const r=this.parameterPositions;let i=e-2,s=e+1,a=r[i],o=r[s];if(void 0===a)switch(this.getSettings_().endingStart){case Ft:i=e;a=2*t-n;break;case Ot:i=r.length-2;a=t+r[i]-r[i+1];break;default:i=e;a=n}if(void 0===o)switch(this.getSettings_().endingEnd){case Ft:s=e;o=2*n-t;break;case Ot:s=1;o=n+r[1]-r[0];break;default:s=e-1;o=t}const l=.5*(n-t),c=this.valueSize;this._weightPrev=l/(t-a);this._weightNext=l/(o-n);this._offsetPrev=i*c;this._offsetNext=s*c}interpolate_(e,t,n,r){const i=this.resultBuffer,s=this.sampleValues,a=this.valueSize,o=e*a,l=o-a,c=this._offsetPrev,u=this._offsetNext,h=this._weightPrev,d=this._weightNext,p=(n-t)/(r-t),f=p*p,m=f*p;const g=-h*m+2*h*f-h*p;const y=(1+h)*m+(-1.5-2*h)*f+(-.5+h)*p+1;const x=(-1-d)*m+(1.5+d)*f+.5*p;const b=d*m-d*f;for(let e=0;e!==a;++e)i[e]=g*s[c+e]+y*s[l+e]+x*s[o+e]+b*s[u+e];return i}}class LinearInterpolant extends Interpolant{constructor(e,t,n,r){super(e,t,n,r)}interpolate_(e,t,n,r){const i=this.resultBuffer,s=this.sampleValues,a=this.valueSize,o=e*a,l=o-a,c=(n-t)/(r-t),u=1-c;for(let e=0;e!==a;++e)i[e]=s[l+e]*u+s[o+e]*c;return i}}class DiscreteInterpolant extends Interpolant{constructor(e,t,n,r){super(e,t,n,r)}interpolate_(e){return this.copySampleValue_(e-1)}}class KeyframeTrack{constructor(e,t,n,r){if(void 0===e)throw new Error(\"THREE.KeyframeTrack: track name is undefined\");if(void 0===t||0===t.length)throw new Error(\"THREE.KeyframeTrack: no keyframes in track named \"+e);this.name=e;this.times=Dl.convertArray(t,this.TimeBufferType);this.values=Dl.convertArray(n,this.ValueBufferType);this.setInterpolation(r||this.DefaultInterpolation)}static toJSON(e){const t=e.constructor;let n;if(t.toJSON!==this.toJSON)n=t.toJSON(e);else{n={name:e.name,times:Dl.convertArray(e.times,Array),values:Dl.convertArray(e.values,Array)};const t=e.getInterpolation();t!==e.DefaultInterpolation&&(n.interpolation=t)}n.type=e.ValueTypeName;return n}InterpolantFactoryMethodDiscrete(e){return new DiscreteInterpolant(this.times,this.values,this.getValueSize(),e)}InterpolantFactoryMethodLinear(e){return new LinearInterpolant(this.times,this.values,this.getValueSize(),e)}InterpolantFactoryMethodSmooth(e){return new CubicInterpolant(this.times,this.values,this.getValueSize(),e)}setInterpolation(e){let t;switch(e){case Nt:t=this.InterpolantFactoryMethodDiscrete;break;case Ut:t=this.InterpolantFactoryMethodLinear;break;case zt:t=this.InterpolantFactoryMethodSmooth;break}if(void 0===t){const t=\"unsupported interpolation for \"+this.ValueTypeName+\" keyframe track named \"+this.name;if(void 0===this.createInterpolant){if(e===this.DefaultInterpolation)throw new Error(t);this.setInterpolation(this.DefaultInterpolation)}console.warn(\"THREE.KeyframeTrack:\",t);return this}this.createInterpolant=t;return this}getInterpolation(){switch(this.createInterpolant){case this.InterpolantFactoryMethodDiscrete:return Nt;case this.InterpolantFactoryMethodLinear:return Ut;case this.InterpolantFactoryMethodSmooth:return zt}}getValueSize(){return this.values.length/this.times.length}shift(e){if(0!==e){const t=this.times;for(let n=0,r=t.length;n!==r;++n)t[n]+=e}return this}scale(e){if(1!==e){const t=this.times;for(let n=0,r=t.length;n!==r;++n)t[n]*=e}return this}trim(e,t){const n=this.times,r=n.length;let i=0,s=r-1;while(i!==r&&n[i]<e)++i;while(-1!==s&&n[s]>t)--s;++s;if(0!==i||s!==r){if(i>=s){s=Math.max(s,1);i=s-1}const e=this.getValueSize();this.times=Dl.arraySlice(n,i,s);this.values=Dl.arraySlice(this.values,i*e,s*e)}return this}validate(){let e=true;const t=this.getValueSize();if(t-Math.floor(t)!==0){console.error(\"THREE.KeyframeTrack: Invalid value size in track.\",this);e=false}const n=this.times,r=this.values,i=n.length;if(0===i){console.error(\"THREE.KeyframeTrack: Track is empty.\",this);e=false}let s=null;for(let t=0;t!==i;t++){const r=n[t];if(\"number\"===typeof r&&isNaN(r)){console.error(\"THREE.KeyframeTrack: Time is not a valid number.\",this,t,r);e=false;break}if(null!==s&&s>r){console.error(\"THREE.KeyframeTrack: Out of order keys.\",this,t,r,s);e=false;break}s=r}if(void 0!==r&&Dl.isTypedArray(r))for(let t=0,n=r.length;t!==n;++t){const n=r[t];if(isNaN(n)){console.error(\"THREE.KeyframeTrack: Value is not a valid number.\",this,t,n);e=false;break}}return e}optimize(){const e=Dl.arraySlice(this.times),t=Dl.arraySlice(this.values),n=this.getValueSize(),r=this.getInterpolation()===zt,i=e.length-1;let s=1;for(let a=1;a<i;++a){let i=false;const o=e[a];const l=e[a+1];if(o!==l&&(1!==a||o!==e[0]))if(r)i=true;else{const e=a*n,r=e-n,s=e+n;for(let a=0;a!==n;++a){const n=t[e+a];if(n!==t[r+a]||n!==t[s+a]){i=true;break}}}if(i){if(a!==s){e[s]=e[a];const r=a*n,i=s*n;for(let e=0;e!==n;++e)t[i+e]=t[r+e]}++s}}if(i>0){e[s]=e[i];for(let e=i*n,r=s*n,a=0;a!==n;++a)t[r+a]=t[e+a];++s}if(s!==e.length){this.times=Dl.arraySlice(e,0,s);this.values=Dl.arraySlice(t,0,s*n)}else{this.times=e;this.values=t}return this}clone(){const e=Dl.arraySlice(this.times,0);const t=Dl.arraySlice(this.values,0);const n=this.constructor;const r=new n(this.name,e,t);r.createInterpolant=this.createInterpolant;return r}}KeyframeTrack.prototype.TimeBufferType=Float32Array;KeyframeTrack.prototype.ValueBufferType=Float32Array;KeyframeTrack.prototype.DefaultInterpolation=Ut;class BooleanKeyframeTrack extends KeyframeTrack{}BooleanKeyframeTrack.prototype.ValueTypeName=\"bool\";BooleanKeyframeTrack.prototype.ValueBufferType=Array;BooleanKeyframeTrack.prototype.DefaultInterpolation=Nt;BooleanKeyframeTrack.prototype.InterpolantFactoryMethodLinear=void 0;BooleanKeyframeTrack.prototype.InterpolantFactoryMethodSmooth=void 0;class ColorKeyframeTrack extends KeyframeTrack{}ColorKeyframeTrack.prototype.ValueTypeName=\"color\";class NumberKeyframeTrack extends KeyframeTrack{}NumberKeyframeTrack.prototype.ValueTypeName=\"number\";class QuaternionLinearInterpolant extends Interpolant{constructor(e,t,n,r){super(e,t,n,r)}interpolate_(e,t,n,r){const i=this.resultBuffer,s=this.sampleValues,a=this.valueSize,o=(n-t)/(r-t);let l=e*a;for(let e=l+a;l!==e;l+=4)Quaternion.slerpFlat(i,0,s,l-a,s,l,o);return i}}class QuaternionKeyframeTrack extends KeyframeTrack{InterpolantFactoryMethodLinear(e){return new QuaternionLinearInterpolant(this.times,this.values,this.getValueSize(),e)}}QuaternionKeyframeTrack.prototype.ValueTypeName=\"quaternion\";QuaternionKeyframeTrack.prototype.DefaultInterpolation=Ut;QuaternionKeyframeTrack.prototype.InterpolantFactoryMethodSmooth=void 0;class StringKeyframeTrack extends KeyframeTrack{}StringKeyframeTrack.prototype.ValueTypeName=\"string\";StringKeyframeTrack.prototype.ValueBufferType=Array;StringKeyframeTrack.prototype.DefaultInterpolation=Nt;StringKeyframeTrack.prototype.InterpolantFactoryMethodLinear=void 0;StringKeyframeTrack.prototype.InterpolantFactoryMethodSmooth=void 0;class VectorKeyframeTrack extends KeyframeTrack{}VectorKeyframeTrack.prototype.ValueTypeName=\"vector\";class AnimationClip{constructor(e,t=-1,n,r=Ht){this.name=e;this.tracks=n;this.duration=t;this.blendMode=r;this.uuid=generateUUID();this.duration<0&&this.resetDuration()}static parse(e){const t=[],n=e.tracks,r=1/(e.fps||1);for(let e=0,i=n.length;e!==i;++e)t.push(parseKeyframeTrack(n[e]).scale(r));const i=new this(e.name,e.duration,t,e.blendMode);i.uuid=e.uuid;return i}static toJSON(e){const t=[],n=e.tracks;const r={name:e.name,duration:e.duration,tracks:t,uuid:e.uuid,blendMode:e.blendMode};for(let e=0,r=n.length;e!==r;++e)t.push(KeyframeTrack.toJSON(n[e]));return r}static CreateFromMorphTargetSequence(e,t,n,r){const i=t.length;const s=[];for(let e=0;e<i;e++){let a=[];let o=[];a.push((e+i-1)%i,e,(e+1)%i);o.push(0,1,0);const l=Dl.getKeyframeOrder(a);a=Dl.sortedArray(a,1,l);o=Dl.sortedArray(o,1,l);if(!r&&0===a[0]){a.push(i);o.push(o[0])}s.push(new NumberKeyframeTrack(\".morphTargetInfluences[\"+t[e].name+\"]\",a,o).scale(1/n))}return new this(e,-1,s)}static findByName(e,t){let n=e;if(!Array.isArray(e)){const t=e;n=t.geometry&&t.geometry.animations||t.animations}for(let e=0;e<n.length;e++)if(n[e].name===t)return n[e];return null}static CreateClipsFromMorphTargetSequences(e,t,n){const r={};const i=/^([\\w-]*?)([\\d]+)$/;for(let t=0,n=e.length;t<n;t++){const n=e[t];const s=n.name.match(i);if(s&&s.length>1){const e=s[1];let t=r[e];t||(r[e]=t=[]);t.push(n)}}const s=[];for(const e in r)s.push(this.CreateFromMorphTargetSequence(e,r[e],t,n));return s}static parseAnimation(e,t){if(!e){console.error(\"THREE.AnimationClip: No animation in JSONLoader data.\");return null}const addNonemptyTrack=function(e,t,n,r,i){if(0!==n.length){const s=[];const a=[];Dl.flattenJSON(n,s,a,r);0!==s.length&&i.push(new e(t,s,a))}};const n=[];const r=e.name||\"default\";const i=e.fps||30;const s=e.blendMode;let a=e.length||-1;const o=e.hierarchy||[];for(let e=0;e<o.length;e++){const r=o[e].keys;if(r&&0!==r.length)if(r[0].morphTargets){const e={};let t;for(t=0;t<r.length;t++)if(r[t].morphTargets)for(let n=0;n<r[t].morphTargets.length;n++)e[r[t].morphTargets[n]]=-1;for(const i in e){const e=[];const s=[];for(let n=0;n!==r[t].morphTargets.length;++n){const n=r[t];e.push(n.time);s.push(n.morphTarget===i?1:0)}n.push(new NumberKeyframeTrack(\".morphTargetInfluence[\"+i+\"]\",e,s))}a=e.length*(i||1)}else{const i=\".bones[\"+t[e].name+\"]\";addNonemptyTrack(VectorKeyframeTrack,i+\".position\",r,\"pos\",n);addNonemptyTrack(QuaternionKeyframeTrack,i+\".quaternion\",r,\"rot\",n);addNonemptyTrack(VectorKeyframeTrack,i+\".scale\",r,\"scl\",n)}}if(0===n.length)return null;const l=new this(r,a,n,s);return l}resetDuration(){const e=this.tracks;let t=0;for(let n=0,r=e.length;n!==r;++n){const e=this.tracks[n];t=Math.max(t,e.times[e.times.length-1])}this.duration=t;return this}trim(){for(let e=0;e<this.tracks.length;e++)this.tracks[e].trim(0,this.duration);return this}validate(){let e=true;for(let t=0;t<this.tracks.length;t++)e=e&&this.tracks[t].validate();return e}optimize(){for(let e=0;e<this.tracks.length;e++)this.tracks[e].optimize();return this}clone(){const e=[];for(let t=0;t<this.tracks.length;t++)e.push(this.tracks[t].clone());return new this.constructor(this.name,this.duration,e,this.blendMode)}toJSON(){return this.constructor.toJSON(this)}}function getTrackTypeForValueTypeName(e){switch(e.toLowerCase()){case\"scalar\":case\"double\":case\"float\":case\"number\":case\"integer\":return NumberKeyframeTrack;case\"vector\":case\"vector2\":case\"vector3\":case\"vector4\":return VectorKeyframeTrack;case\"color\":return ColorKeyframeTrack;case\"quaternion\":return QuaternionKeyframeTrack;case\"bool\":case\"boolean\":return BooleanKeyframeTrack;case\"string\":return StringKeyframeTrack}throw new Error(\"THREE.KeyframeTrack: Unsupported typeName: \"+e)}function parseKeyframeTrack(e){if(void 0===e.type)throw new Error(\"THREE.KeyframeTrack: track type undefined, can not parse\");const t=getTrackTypeForValueTypeName(e.type);if(void 0===e.times){const t=[],n=[];Dl.flattenJSON(e.keys,t,n,\"value\");e.times=t;e.values=n}return void 0!==t.parse?t.parse(e):new t(e.name,e.times,e.values,e.interpolation)}const Bl={enabled:false,files:{},add:function(e,t){false!==this.enabled&&(this.files[e]=t)},get:function(e){if(false!==this.enabled)return this.files[e]},remove:function(e){delete this.files[e]},clear:function(){this.files={}}};class LoadingManager{constructor(e,t,n){const r=this;let i=false;let s=0;let a=0;let o;const l=[];this.onStart=void 0;this.onLoad=e;this.onProgress=t;this.onError=n;this.itemStart=function(e){a++;false===i&&void 0!==r.onStart&&r.onStart(e,s,a);i=true};this.itemEnd=function(e){s++;void 0!==r.onProgress&&r.onProgress(e,s,a);if(s===a){i=false;void 0!==r.onLoad&&r.onLoad()}};this.itemError=function(e){void 0!==r.onError&&r.onError(e)};this.resolveURL=function(e){return o?o(e):e};this.setURLModifier=function(e){o=e;return this};this.addHandler=function(e,t){l.push(e,t);return this};this.removeHandler=function(e){const t=l.indexOf(e);-1!==t&&l.splice(t,2);return this};this.getHandler=function(e){for(let t=0,n=l.length;t<n;t+=2){const n=l[t];const r=l[t+1];n.global&&(n.lastIndex=0);if(n.test(e))return r}return null}}}const Vl=new LoadingManager;class Loader{constructor(e){this.manager=void 0!==e?e:Vl;this.crossOrigin=\"anonymous\";this.withCredentials=false;this.path=\"\";this.resourcePath=\"\";this.requestHeader={}}load(){}loadAsync(e,t){const n=this;return new Promise((function(r,i){n.load(e,r,t,i)}))}parse(){}setCrossOrigin(e){this.crossOrigin=e;return this}setWithCredentials(e){this.withCredentials=e;return this}setPath(e){this.path=e;return this}setResourcePath(e){this.resourcePath=e;return this}setRequestHeader(e){this.requestHeader=e;return this}}const Nl={};class FileLoader extends Loader{constructor(e){super(e)}load(e,t,n,r){void 0===e&&(e=\"\");void 0!==this.path&&(e=this.path+e);e=this.manager.resolveURL(e);const i=Bl.get(e);if(void 0!==i){this.manager.itemStart(e);setTimeout((()=>{t&&t(i);this.manager.itemEnd(e)}),0);return i}if(void 0!==Nl[e]){Nl[e].push({onLoad:t,onProgress:n,onError:r});return}Nl[e]=[];Nl[e].push({onLoad:t,onProgress:n,onError:r});const s=new Request(e,{headers:new Headers(this.requestHeader),credentials:this.withCredentials?\"include\":\"same-origin\"});fetch(s).then((t=>{if(200===t.status||0===t.status){0===t.status&&console.warn(\"THREE.FileLoader: HTTP Status 0 received.\");if(\"undefined\"===typeof ReadableStream||void 0===t.body.getReader)return t;const n=Nl[e];const r=t.body.getReader();const i=t.headers.get(\"Content-Length\");const s=i?parseInt(i):0;const a=0!==s;let o=0;const l=new ReadableStream({start(e){readData();function readData(){r.read().then((({done:t,value:r})=>{if(t)e.close();else{o+=r.byteLength;const t=new ProgressEvent(\"progress\",{lengthComputable:a,loaded:o,total:s});for(let e=0,r=n.length;e<r;e++){const r=n[e];r.onProgress&&r.onProgress(t)}e.enqueue(r);readData()}}))}}});return new Response(l)}throw Error(`fetch for \"${t.url}\" responded with ${t.status}: ${t.statusText}`)})).then((e=>{switch(this.responseType){case\"arraybuffer\":return e.arrayBuffer();case\"blob\":return e.blob();case\"document\":return e.text().then((e=>{const t=new DOMParser;return t.parseFromString(e,this.mimeType)}));case\"json\":return e.json();default:return e.text()}})).then((t=>{Bl.add(e,t);const n=Nl[e];delete Nl[e];for(let e=0,r=n.length;e<r;e++){const r=n[e];r.onLoad&&r.onLoad(t)}})).catch((t=>{const n=Nl[e];if(void 0===n){this.manager.itemError(e);throw t}delete Nl[e];for(let e=0,r=n.length;e<r;e++){const r=n[e];r.onError&&r.onError(t)}this.manager.itemError(e)})).finally((()=>{this.manager.itemEnd(e)}));this.manager.itemStart(e)}setResponseType(e){this.responseType=e;return this}setMimeType(e){this.mimeType=e;return this}}class AnimationLoader extends Loader{constructor(e){super(e)}load(e,t,n,r){const i=this;const s=new FileLoader(this.manager);s.setPath(this.path);s.setRequestHeader(this.requestHeader);s.setWithCredentials(this.withCredentials);s.load(e,(function(n){try{t(i.parse(JSON.parse(n)))}catch(t){r?r(t):console.error(t);i.manager.itemError(e)}}),n,r)}parse(e){const t=[];for(let n=0;n<e.length;n++){const r=AnimationClip.parse(e[n]);t.push(r)}return t}}class CompressedTextureLoader extends Loader{constructor(e){super(e)}load(e,t,n,r){const i=this;const s=[];const a=new CompressedTexture;const o=new FileLoader(this.manager);o.setPath(this.path);o.setResponseType(\"arraybuffer\");o.setRequestHeader(this.requestHeader);o.setWithCredentials(i.withCredentials);let l=0;function loadTexture(c){o.load(e[c],(function(e){const n=i.parse(e,true);s[c]={width:n.width,height:n.height,format:n.format,mipmaps:n.mipmaps};l+=1;if(6===l){1===n.mipmapCount&&(a.minFilter=ye);a.image=s;a.format=n.format;a.needsUpdate=true;t&&t(a)}}),n,r)}if(Array.isArray(e))for(let t=0,n=e.length;t<n;++t)loadTexture(t);else o.load(e,(function(e){const n=i.parse(e,true);if(n.isCubemap){const e=n.mipmaps.length/n.mipmapCount;for(let t=0;t<e;t++){s[t]={mipmaps:[]};for(let e=0;e<n.mipmapCount;e++){s[t].mipmaps.push(n.mipmaps[t*n.mipmapCount+e]);s[t].format=n.format;s[t].width=n.width;s[t].height=n.height}}a.image=s}else{a.image.width=n.width;a.image.height=n.height;a.mipmaps=n.mipmaps}1===n.mipmapCount&&(a.minFilter=ye);a.format=n.format;a.needsUpdate=true;t&&t(a)}),n,r);return a}}class ImageLoader extends Loader{constructor(e){super(e)}load(e,t,n,r){void 0!==this.path&&(e=this.path+e);e=this.manager.resolveURL(e);const i=this;const s=Bl.get(e);if(void 0!==s){i.manager.itemStart(e);setTimeout((function(){t&&t(s);i.manager.itemEnd(e)}),0);return s}const a=createElementNS(\"img\");function onImageLoad(){removeEventListeners();Bl.add(e,this);t&&t(this);i.manager.itemEnd(e)}function onImageError(t){removeEventListeners();r&&r(t);i.manager.itemError(e);i.manager.itemEnd(e)}function removeEventListeners(){a.removeEventListener(\"load\",onImageLoad,false);a.removeEventListener(\"error\",onImageError,false)}a.addEventListener(\"load\",onImageLoad,false);a.addEventListener(\"error\",onImageError,false);\"data:\"!==e.substr(0,5)&&void 0!==this.crossOrigin&&(a.crossOrigin=this.crossOrigin);i.manager.itemStart(e);a.src=e;return a}}class CubeTextureLoader extends Loader{constructor(e){super(e)}load(e,t,n,r){const i=new CubeTexture;const s=new ImageLoader(this.manager);s.setCrossOrigin(this.crossOrigin);s.setPath(this.path);let a=0;function loadTexture(n){s.load(e[n],(function(e){i.images[n]=e;a++;if(6===a){i.needsUpdate=true;t&&t(i)}}),void 0,r)}for(let t=0;t<e.length;++t)loadTexture(t);return i}}class DataTextureLoader extends Loader{constructor(e){super(e)}load(e,t,n,r){const i=this;const s=new DataTexture;const a=new FileLoader(this.manager);a.setResponseType(\"arraybuffer\");a.setRequestHeader(this.requestHeader);a.setPath(this.path);a.setWithCredentials(i.withCredentials);a.load(e,(function(e){const n=i.parse(e);if(n){if(void 0!==n.image)s.image=n.image;else if(void 0!==n.data){s.image.width=n.width;s.image.height=n.height;s.image.data=n.data}s.wrapS=void 0!==n.wrapS?n.wrapS:ue;s.wrapT=void 0!==n.wrapT?n.wrapT:ue;s.magFilter=void 0!==n.magFilter?n.magFilter:ye;s.minFilter=void 0!==n.minFilter?n.minFilter:ye;s.anisotropy=void 0!==n.anisotropy?n.anisotropy:1;void 0!==n.encoding&&(s.encoding=n.encoding);void 0!==n.flipY&&(s.flipY=n.flipY);void 0!==n.format&&(s.format=n.format);void 0!==n.type&&(s.type=n.type);if(void 0!==n.mipmaps){s.mipmaps=n.mipmaps;s.minFilter=be}1===n.mipmapCount&&(s.minFilter=ye);void 0!==n.generateMipmaps&&(s.generateMipmaps=n.generateMipmaps);s.needsUpdate=true;t&&t(s,n)}}),n,r);return s}}class TextureLoader extends Loader{constructor(e){super(e)}load(e,t,n,r){const i=new Texture;const s=new ImageLoader(this.manager);s.setCrossOrigin(this.crossOrigin);s.setPath(this.path);s.load(e,(function(e){i.image=e;i.needsUpdate=true;void 0!==t&&t(i)}),n,r);return i}}class Light extends Object3D{constructor(e,t=1){super();this.type=\"Light\";this.color=new Color(e);this.intensity=t}dispose(){}copy(e){super.copy(e);this.color.copy(e.color);this.intensity=e.intensity;return this}toJSON(e){const t=super.toJSON(e);t.object.color=this.color.getHex();t.object.intensity=this.intensity;void 0!==this.groundColor&&(t.object.groundColor=this.groundColor.getHex());void 0!==this.distance&&(t.object.distance=this.distance);void 0!==this.angle&&(t.object.angle=this.angle);void 0!==this.decay&&(t.object.decay=this.decay);void 0!==this.penumbra&&(t.object.penumbra=this.penumbra);void 0!==this.shadow&&(t.object.shadow=this.shadow.toJSON());return t}}Light.prototype.isLight=true;class HemisphereLight extends Light{constructor(e,t,n){super(e,n);this.type=\"HemisphereLight\";this.position.copy(Object3D.DefaultUp);this.updateMatrix();this.groundColor=new Color(t)}copy(e){Light.prototype.copy.call(this,e);this.groundColor.copy(e.groundColor);return this}}HemisphereLight.prototype.isHemisphereLight=true;const Ul=new Matrix4;const zl=new Vector3;const Gl=new Vector3;class LightShadow{constructor(e){this.camera=e;this.bias=0;this.normalBias=0;this.radius=1;this.blurSamples=8;this.mapSize=new Vector2(512,512);this.map=null;this.mapPass=null;this.matrix=new Matrix4;this.autoUpdate=true;this.needsUpdate=false;this._frustum=new Frustum;this._frameExtents=new Vector2(1,1);this._viewportCount=1;this._viewports=[new Vector4(0,0,1,1)]}getViewportCount(){return this._viewportCount}getFrustum(){return this._frustum}updateMatrices(e){const t=this.camera;const n=this.matrix;zl.setFromMatrixPosition(e.matrixWorld);t.position.copy(zl);Gl.setFromMatrixPosition(e.target.matrixWorld);t.lookAt(Gl);t.updateMatrixWorld();Ul.multiplyMatrices(t.projectionMatrix,t.matrixWorldInverse);this._frustum.setFromProjectionMatrix(Ul);n.set(.5,0,0,.5,0,.5,0,.5,0,0,.5,.5,0,0,0,1);n.multiply(t.projectionMatrix);n.multiply(t.matrixWorldInverse)}getViewport(e){return this._viewports[e]}getFrameExtents(){return this._frameExtents}dispose(){this.map&&this.map.dispose();this.mapPass&&this.mapPass.dispose()}copy(e){this.camera=e.camera.clone();this.bias=e.bias;this.radius=e.radius;this.mapSize.copy(e.mapSize);return this}clone(){return(new this.constructor).copy(this)}toJSON(){const e={};0!==this.bias&&(e.bias=this.bias);0!==this.normalBias&&(e.normalBias=this.normalBias);1!==this.radius&&(e.radius=this.radius);512===this.mapSize.x&&512===this.mapSize.y||(e.mapSize=this.mapSize.toArray());e.camera=this.camera.toJSON(false).object;delete e.camera.matrix;return e}}class SpotLightShadow extends LightShadow{constructor(){super(new PerspectiveCamera(50,1,.5,500));this.focus=1}updateMatrices(e){const t=this.camera;const n=2*Rn*e.angle*this.focus;const r=this.mapSize.width/this.mapSize.height;const i=e.distance||t.far;if(n!==t.fov||r!==t.aspect||i!==t.far){t.fov=n;t.aspect=r;t.far=i;t.updateProjectionMatrix()}super.updateMatrices(e)}copy(e){super.copy(e);this.focus=e.focus;return this}}SpotLightShadow.prototype.isSpotLightShadow=true;class SpotLight extends Light{constructor(e,t,n=0,r=Math.PI/3,i=0,s=1){super(e,t);this.type=\"SpotLight\";this.position.copy(Object3D.DefaultUp);this.updateMatrix();this.target=new Object3D;this.distance=n;this.angle=r;this.penumbra=i;this.decay=s;this.shadow=new SpotLightShadow}get power(){return this.intensity*Math.PI}set power(e){this.intensity=e/Math.PI}dispose(){this.shadow.dispose()}copy(e){super.copy(e);this.distance=e.distance;this.angle=e.angle;this.penumbra=e.penumbra;this.decay=e.decay;this.target=e.target.clone();this.shadow=e.shadow.clone();return this}}SpotLight.prototype.isSpotLight=true;const Fl=new Matrix4;const Ol=new Vector3;const Hl=new Vector3;class PointLightShadow extends LightShadow{constructor(){super(new PerspectiveCamera(90,1,.5,500));this._frameExtents=new Vector2(4,2);this._viewportCount=6;this._viewports=[new Vector4(2,1,1,1),new Vector4(0,1,1,1),new Vector4(3,1,1,1),new Vector4(1,1,1,1),new Vector4(3,0,1,1),new Vector4(1,0,1,1)];this._cubeDirections=[new Vector3(1,0,0),new Vector3(-1,0,0),new Vector3(0,0,1),new Vector3(0,0,-1),new Vector3(0,1,0),new Vector3(0,-1,0)];this._cubeUps=[new Vector3(0,1,0),new Vector3(0,1,0),new Vector3(0,1,0),new Vector3(0,1,0),new Vector3(0,0,1),new Vector3(0,0,-1)]}updateMatrices(e,t=0){const n=this.camera;const r=this.matrix;const i=e.distance||n.far;if(i!==n.far){n.far=i;n.updateProjectionMatrix()}Ol.setFromMatrixPosition(e.matrixWorld);n.position.copy(Ol);Hl.copy(n.position);Hl.add(this._cubeDirections[t]);n.up.copy(this._cubeUps[t]);n.lookAt(Hl);n.updateMatrixWorld();r.makeTranslation(-Ol.x,-Ol.y,-Ol.z);Fl.multiplyMatrices(n.projectionMatrix,n.matrixWorldInverse);this._frustum.setFromProjectionMatrix(Fl)}}PointLightShadow.prototype.isPointLightShadow=true;class PointLight extends Light{constructor(e,t,n=0,r=1){super(e,t);this.type=\"PointLight\";this.distance=n;this.decay=r;this.shadow=new PointLightShadow}get power(){return 4*this.intensity*Math.PI}set power(e){this.intensity=e/(4*Math.PI)}dispose(){this.shadow.dispose()}copy(e){super.copy(e);this.distance=e.distance;this.decay=e.decay;this.shadow=e.shadow.clone();return this}}PointLight.prototype.isPointLight=true;class DirectionalLightShadow extends LightShadow{constructor(){super(new OrthographicCamera(-5,5,5,-5,.5,500))}}DirectionalLightShadow.prototype.isDirectionalLightShadow=true;class DirectionalLight extends Light{constructor(e,t){super(e,t);this.type=\"DirectionalLight\";this.position.copy(Object3D.DefaultUp);this.updateMatrix();this.target=new Object3D;this.shadow=new DirectionalLightShadow}dispose(){this.shadow.dispose()}copy(e){super.copy(e);this.target=e.target.clone();this.shadow=e.shadow.clone();return this}}DirectionalLight.prototype.isDirectionalLight=true;class AmbientLight extends Light{constructor(e,t){super(e,t);this.type=\"AmbientLight\"}}AmbientLight.prototype.isAmbientLight=true;class RectAreaLight extends Light{constructor(e,t,n=10,r=10){super(e,t);this.type=\"RectAreaLight\";this.width=n;this.height=r}get power(){return this.intensity*this.width*this.height*Math.PI}set power(e){this.intensity=e/(this.width*this.height*Math.PI)}copy(e){super.copy(e);this.width=e.width;this.height=e.height;return this}toJSON(e){const t=super.toJSON(e);t.object.width=this.width;t.object.height=this.height;return t}}RectAreaLight.prototype.isRectAreaLight=true;class SphericalHarmonics3{constructor(){this.coefficients=[];for(let e=0;e<9;e++)this.coefficients.push(new Vector3)}set(e){for(let t=0;t<9;t++)this.coefficients[t].copy(e[t]);return this}zero(){for(let e=0;e<9;e++)this.coefficients[e].set(0,0,0);return this}getAt(e,t){const n=e.x,r=e.y,i=e.z;const s=this.coefficients;t.copy(s[0]).multiplyScalar(.282095);t.addScaledVector(s[1],.488603*r);t.addScaledVector(s[2],.488603*i);t.addScaledVector(s[3],.488603*n);t.addScaledVector(s[4],n*r*1.092548);t.addScaledVector(s[5],r*i*1.092548);t.addScaledVector(s[6],.315392*(3*i*i-1));t.addScaledVector(s[7],n*i*1.092548);t.addScaledVector(s[8],.546274*(n*n-r*r));return t}getIrradianceAt(e,t){const n=e.x,r=e.y,i=e.z;const s=this.coefficients;t.copy(s[0]).multiplyScalar(.886227);t.addScaledVector(s[1],1.023328*r);t.addScaledVector(s[2],1.023328*i);t.addScaledVector(s[3],1.023328*n);t.addScaledVector(s[4],.858086*n*r);t.addScaledVector(s[5],.858086*r*i);t.addScaledVector(s[6],.743125*i*i-.247708);t.addScaledVector(s[7],.858086*n*i);t.addScaledVector(s[8],.429043*(n*n-r*r));return t}add(e){for(let t=0;t<9;t++)this.coefficients[t].add(e.coefficients[t]);return this}addScaledSH(e,t){for(let n=0;n<9;n++)this.coefficients[n].addScaledVector(e.coefficients[n],t);return this}scale(e){for(let t=0;t<9;t++)this.coefficients[t].multiplyScalar(e);return this}lerp(e,t){for(let n=0;n<9;n++)this.coefficients[n].lerp(e.coefficients[n],t);return this}equals(e){for(let t=0;t<9;t++)if(!this.coefficients[t].equals(e.coefficients[t]))return false;return true}copy(e){return this.set(e.coefficients)}clone(){return(new this.constructor).copy(this)}fromArray(e,t=0){const n=this.coefficients;for(let r=0;r<9;r++)n[r].fromArray(e,t+3*r);return this}toArray(e=[],t=0){const n=this.coefficients;for(let r=0;r<9;r++)n[r].toArray(e,t+3*r);return e}static getBasisAt(e,t){const n=e.x,r=e.y,i=e.z;t[0]=.282095;t[1]=.488603*r;t[2]=.488603*i;t[3]=.488603*n;t[4]=1.092548*n*r;t[5]=1.092548*r*i;t[6]=.315392*(3*i*i-1);t[7]=1.092548*n*i;t[8]=.546274*(n*n-r*r)}}SphericalHarmonics3.prototype.isSphericalHarmonics3=true;class LightProbe extends Light{constructor(e=new SphericalHarmonics3,t=1){super(void 0,t);this.sh=e}copy(e){super.copy(e);this.sh.copy(e.sh);return this}fromJSON(e){this.intensity=e.intensity;this.sh.fromArray(e.sh);return this}toJSON(e){const t=super.toJSON(e);t.object.sh=this.sh.toArray();return t}}LightProbe.prototype.isLightProbe=true;class MaterialLoader extends Loader{constructor(e){super(e);this.textures={}}load(e,t,n,r){const i=this;const s=new FileLoader(i.manager);s.setPath(i.path);s.setRequestHeader(i.requestHeader);s.setWithCredentials(i.withCredentials);s.load(e,(function(n){try{t(i.parse(JSON.parse(n)))}catch(t){r?r(t):console.error(t);i.manager.itemError(e)}}),n,r)}parse(e){const t=this.textures;function getTexture(e){void 0===t[e]&&console.warn(\"THREE.MaterialLoader: Undefined texture\",e);return t[e]}const n=new Il[e.type];void 0!==e.uuid&&(n.uuid=e.uuid);void 0!==e.name&&(n.name=e.name);void 0!==e.color&&void 0!==n.color&&n.color.setHex(e.color);void 0!==e.roughness&&(n.roughness=e.roughness);void 0!==e.metalness&&(n.metalness=e.metalness);void 0!==e.sheen&&(n.sheen=e.sheen);void 0!==e.sheenColor&&(n.sheenColor=(new Color).setHex(e.sheenColor));void 0!==e.sheenRoughness&&(n.sheenRoughness=e.sheenRoughness);void 0!==e.emissive&&void 0!==n.emissive&&n.emissive.setHex(e.emissive);void 0!==e.specular&&void 0!==n.specular&&n.specular.setHex(e.specular);void 0!==e.specularIntensity&&(n.specularIntensity=e.specularIntensity);void 0!==e.specularColor&&void 0!==n.specularColor&&n.specularColor.setHex(e.specularColor);void 0!==e.shininess&&(n.shininess=e.shininess);void 0!==e.clearcoat&&(n.clearcoat=e.clearcoat);void 0!==e.clearcoatRoughness&&(n.clearcoatRoughness=e.clearcoatRoughness);void 0!==e.transmission&&(n.transmission=e.transmission);void 0!==e.thickness&&(n.thickness=e.thickness);void 0!==e.attenuationDistance&&(n.attenuationDistance=e.attenuationDistance);void 0!==e.attenuationColor&&void 0!==n.attenuationColor&&n.attenuationColor.setHex(e.attenuationColor);void 0!==e.fog&&(n.fog=e.fog);void 0!==e.flatShading&&(n.flatShading=e.flatShading);void 0!==e.blending&&(n.blending=e.blending);void 0!==e.combine&&(n.combine=e.combine);void 0!==e.side&&(n.side=e.side);void 0!==e.shadowSide&&(n.shadowSide=e.shadowSide);void 0!==e.opacity&&(n.opacity=e.opacity);void 0!==e.format&&(n.format=e.format);void 0!==e.transparent&&(n.transparent=e.transparent);void 0!==e.alphaTest&&(n.alphaTest=e.alphaTest);void 0!==e.depthTest&&(n.depthTest=e.depthTest);void 0!==e.depthWrite&&(n.depthWrite=e.depthWrite);void 0!==e.colorWrite&&(n.colorWrite=e.colorWrite);void 0!==e.stencilWrite&&(n.stencilWrite=e.stencilWrite);void 0!==e.stencilWriteMask&&(n.stencilWriteMask=e.stencilWriteMask);void 0!==e.stencilFunc&&(n.stencilFunc=e.stencilFunc);void 0!==e.stencilRef&&(n.stencilRef=e.stencilRef);void 0!==e.stencilFuncMask&&(n.stencilFuncMask=e.stencilFuncMask);void 0!==e.stencilFail&&(n.stencilFail=e.stencilFail);void 0!==e.stencilZFail&&(n.stencilZFail=e.stencilZFail);void 0!==e.stencilZPass&&(n.stencilZPass=e.stencilZPass);void 0!==e.wireframe&&(n.wireframe=e.wireframe);void 0!==e.wireframeLinewidth&&(n.wireframeLinewidth=e.wireframeLinewidth);void 0!==e.wireframeLinecap&&(n.wireframeLinecap=e.wireframeLinecap);void 0!==e.wireframeLinejoin&&(n.wireframeLinejoin=e.wireframeLinejoin);void 0!==e.rotation&&(n.rotation=e.rotation);1!==e.linewidth&&(n.linewidth=e.linewidth);void 0!==e.dashSize&&(n.dashSize=e.dashSize);void 0!==e.gapSize&&(n.gapSize=e.gapSize);void 0!==e.scale&&(n.scale=e.scale);void 0!==e.polygonOffset&&(n.polygonOffset=e.polygonOffset);void 0!==e.polygonOffsetFactor&&(n.polygonOffsetFactor=e.polygonOffsetFactor);void 0!==e.polygonOffsetUnits&&(n.polygonOffsetUnits=e.polygonOffsetUnits);void 0!==e.dithering&&(n.dithering=e.dithering);void 0!==e.alphaToCoverage&&(n.alphaToCoverage=e.alphaToCoverage);void 0!==e.premultipliedAlpha&&(n.premultipliedAlpha=e.premultipliedAlpha);void 0!==e.visible&&(n.visible=e.visible);void 0!==e.toneMapped&&(n.toneMapped=e.toneMapped);void 0!==e.userData&&(n.userData=e.userData);void 0!==e.vertexColors&&(\"number\"===typeof e.vertexColors?n.vertexColors=e.vertexColors>0:n.vertexColors=e.vertexColors);if(void 0!==e.uniforms)for(const t in e.uniforms){const r=e.uniforms[t];n.uniforms[t]={};switch(r.type){case\"t\":n.uniforms[t].value=getTexture(r.value);break;case\"c\":n.uniforms[t].value=(new Color).setHex(r.value);break;case\"v2\":n.uniforms[t].value=(new Vector2).fromArray(r.value);break;case\"v3\":n.uniforms[t].value=(new Vector3).fromArray(r.value);break;case\"v4\":n.uniforms[t].value=(new Vector4).fromArray(r.value);break;case\"m3\":n.uniforms[t].value=(new Matrix3).fromArray(r.value);break;case\"m4\":n.uniforms[t].value=(new Matrix4).fromArray(r.value);break;default:n.uniforms[t].value=r.value}}void 0!==e.defines&&(n.defines=e.defines);void 0!==e.vertexShader&&(n.vertexShader=e.vertexShader);void 0!==e.fragmentShader&&(n.fragmentShader=e.fragmentShader);if(void 0!==e.extensions)for(const t in e.extensions)n.extensions[t]=e.extensions[t];void 0!==e.shading&&(n.flatShading=1===e.shading);void 0!==e.size&&(n.size=e.size);void 0!==e.sizeAttenuation&&(n.sizeAttenuation=e.sizeAttenuation);void 0!==e.map&&(n.map=getTexture(e.map));void 0!==e.matcap&&(n.matcap=getTexture(e.matcap));void 0!==e.alphaMap&&(n.alphaMap=getTexture(e.alphaMap));void 0!==e.bumpMap&&(n.bumpMap=getTexture(e.bumpMap));void 0!==e.bumpScale&&(n.bumpScale=e.bumpScale);void 0!==e.normalMap&&(n.normalMap=getTexture(e.normalMap));void 0!==e.normalMapType&&(n.normalMapType=e.normalMapType);if(void 0!==e.normalScale){let t=e.normalScale;false===Array.isArray(t)&&(t=[t,t]);n.normalScale=(new Vector2).fromArray(t)}void 0!==e.displacementMap&&(n.displacementMap=getTexture(e.displacementMap));void 0!==e.displacementScale&&(n.displacementScale=e.displacementScale);void 0!==e.displacementBias&&(n.displacementBias=e.displacementBias);void 0!==e.roughnessMap&&(n.roughnessMap=getTexture(e.roughnessMap));void 0!==e.metalnessMap&&(n.metalnessMap=getTexture(e.metalnessMap));void 0!==e.emissiveMap&&(n.emissiveMap=getTexture(e.emissiveMap));void 0!==e.emissiveIntensity&&(n.emissiveIntensity=e.emissiveIntensity);void 0!==e.specularMap&&(n.specularMap=getTexture(e.specularMap));void 0!==e.specularIntensityMap&&(n.specularIntensityMap=getTexture(e.specularIntensityMap));void 0!==e.specularColorMap&&(n.specularColorMap=getTexture(e.specularColorMap));void 0!==e.envMap&&(n.envMap=getTexture(e.envMap));void 0!==e.envMapIntensity&&(n.envMapIntensity=e.envMapIntensity);void 0!==e.reflectivity&&(n.reflectivity=e.reflectivity);void 0!==e.refractionRatio&&(n.refractionRatio=e.refractionRatio);void 0!==e.lightMap&&(n.lightMap=getTexture(e.lightMap));void 0!==e.lightMapIntensity&&(n.lightMapIntensity=e.lightMapIntensity);void 0!==e.aoMap&&(n.aoMap=getTexture(e.aoMap));void 0!==e.aoMapIntensity&&(n.aoMapIntensity=e.aoMapIntensity);void 0!==e.gradientMap&&(n.gradientMap=getTexture(e.gradientMap));void 0!==e.clearcoatMap&&(n.clearcoatMap=getTexture(e.clearcoatMap));void 0!==e.clearcoatRoughnessMap&&(n.clearcoatRoughnessMap=getTexture(e.clearcoatRoughnessMap));void 0!==e.clearcoatNormalMap&&(n.clearcoatNormalMap=getTexture(e.clearcoatNormalMap));void 0!==e.clearcoatNormalScale&&(n.clearcoatNormalScale=(new Vector2).fromArray(e.clearcoatNormalScale));void 0!==e.transmissionMap&&(n.transmissionMap=getTexture(e.transmissionMap));void 0!==e.thicknessMap&&(n.thicknessMap=getTexture(e.thicknessMap));void 0!==e.sheenColorMap&&(n.sheenColorMap=getTexture(e.sheenColorMap));void 0!==e.sheenRoughnessMap&&(n.sheenRoughnessMap=getTexture(e.sheenRoughnessMap));return n}setTextures(e){this.textures=e;return this}}class LoaderUtils{static decodeText(e){if(\"undefined\"!==typeof TextDecoder)return(new TextDecoder).decode(e);let t=\"\";for(let n=0,r=e.length;n<r;n++)t+=String.fromCharCode(e[n]);try{return decodeURIComponent(escape(t))}catch(e){return t}}static extractUrlBase(e){const t=e.lastIndexOf(\"/\");return-1===t?\"./\":e.substr(0,t+1)}static resolveURL(e,t){if(\"string\"!==typeof e||\"\"===e)return\"\";/^https?:\\/\\//i.test(t)&&/^\\//.test(e)&&(t=t.replace(/(^https?:\\/\\/[^\\/]+).*/i,\"$1\"));return/^(https?:)?\\/\\//i.test(e)||/^data:.*,.*$/i.test(e)||/^blob:.*$/i.test(e)?e:t+e}}class InstancedBufferGeometry extends BufferGeometry{constructor(){super();this.type=\"InstancedBufferGeometry\";this.instanceCount=Infinity}copy(e){super.copy(e);this.instanceCount=e.instanceCount;return this}clone(){return(new this.constructor).copy(this)}toJSON(){const e=super.toJSON(this);e.instanceCount=this.instanceCount;e.isInstancedBufferGeometry=true;return e}}InstancedBufferGeometry.prototype.isInstancedBufferGeometry=true;class BufferGeometryLoader extends Loader{constructor(e){super(e)}load(e,t,n,r){const i=this;const s=new FileLoader(i.manager);s.setPath(i.path);s.setRequestHeader(i.requestHeader);s.setWithCredentials(i.withCredentials);s.load(e,(function(n){try{t(i.parse(JSON.parse(n)))}catch(t){r?r(t):console.error(t);i.manager.itemError(e)}}),n,r)}parse(e){const t={};const n={};function getInterleavedBuffer(e,n){if(void 0!==t[n])return t[n];const r=e.interleavedBuffers;const i=r[n];const s=getArrayBuffer(e,i.buffer);const a=getTypedArray(i.type,s);const o=new InterleavedBuffer(a,i.stride);o.uuid=i.uuid;t[n]=o;return o}function getArrayBuffer(e,t){if(void 0!==n[t])return n[t];const r=e.arrayBuffers;const i=r[t];const s=new Uint32Array(i).buffer;n[t]=s;return s}const r=e.isInstancedBufferGeometry?new InstancedBufferGeometry:new BufferGeometry;const i=e.data.index;if(void 0!==i){const e=getTypedArray(i.type,i.array);r.setIndex(new BufferAttribute(e,1))}const s=e.data.attributes;for(const t in s){const n=s[t];let i;if(n.isInterleavedBufferAttribute){const t=getInterleavedBuffer(e.data,n.data);i=new InterleavedBufferAttribute(t,n.itemSize,n.offset,n.normalized)}else{const e=getTypedArray(n.type,n.array);const t=n.isInstancedBufferAttribute?InstancedBufferAttribute:BufferAttribute;i=new t(e,n.itemSize,n.normalized)}void 0!==n.name&&(i.name=n.name);void 0!==n.usage&&i.setUsage(n.usage);if(void 0!==n.updateRange){i.updateRange.offset=n.updateRange.offset;i.updateRange.count=n.updateRange.count}r.setAttribute(t,i)}const a=e.data.morphAttributes;if(a)for(const t in a){const n=a[t];const i=[];for(let t=0,r=n.length;t<r;t++){const r=n[t];let s;if(r.isInterleavedBufferAttribute){const t=getInterleavedBuffer(e.data,r.data);s=new InterleavedBufferAttribute(t,r.itemSize,r.offset,r.normalized)}else{const e=getTypedArray(r.type,r.array);s=new BufferAttribute(e,r.itemSize,r.normalized)}void 0!==r.name&&(s.name=r.name);i.push(s)}r.morphAttributes[t]=i}const o=e.data.morphTargetsRelative;o&&(r.morphTargetsRelative=true);const l=e.data.groups||e.data.drawcalls||e.data.offsets;if(void 0!==l)for(let e=0,t=l.length;e!==t;++e){const t=l[e];r.addGroup(t.start,t.count,t.materialIndex)}const c=e.data.boundingSphere;if(void 0!==c){const e=new Vector3;void 0!==c.center&&e.fromArray(c.center);r.boundingSphere=new Sphere(e,c.radius)}e.name&&(r.name=e.name);e.userData&&(r.userData=e.userData);return r}}class ObjectLoader extends Loader{constructor(e){super(e)}load(e,t,n,r){const i=this;const s=\"\"===this.path?LoaderUtils.extractUrlBase(e):this.path;this.resourcePath=this.resourcePath||s;const a=new FileLoader(this.manager);a.setPath(this.path);a.setRequestHeader(this.requestHeader);a.setWithCredentials(this.withCredentials);a.load(e,(function(n){let s=null;try{s=JSON.parse(n)}catch(t){void 0!==r&&r(t);console.error(\"THREE:ObjectLoader: Can't parse \"+e+\".\",t.message);return}const a=s.metadata;void 0!==a&&void 0!==a.type&&\"geometry\"!==a.type.toLowerCase()?i.parse(s,t):console.error(\"THREE.ObjectLoader: Can't load \"+e)}),n,r)}async loadAsync(e,t){const n=this;const r=\"\"===this.path?LoaderUtils.extractUrlBase(e):this.path;this.resourcePath=this.resourcePath||r;const i=new FileLoader(this.manager);i.setPath(this.path);i.setRequestHeader(this.requestHeader);i.setWithCredentials(this.withCredentials);const s=await i.loadAsync(e,t);const a=JSON.parse(s);const o=a.metadata;if(void 0===o||void 0===o.type||\"geometry\"===o.type.toLowerCase())throw new Error(\"THREE.ObjectLoader: Can't load \"+e);return await n.parseAsync(a)}parse(e,t){const n=this.parseAnimations(e.animations);const r=this.parseShapes(e.shapes);const i=this.parseGeometries(e.geometries,r);const s=this.parseImages(e.images,(function(){void 0!==t&&t(l)}));const a=this.parseTextures(e.textures,s);const o=this.parseMaterials(e.materials,a);const l=this.parseObject(e.object,i,o,a,n);const c=this.parseSkeletons(e.skeletons,l);this.bindSkeletons(l,c);if(void 0!==t){let e=false;for(const t in s)if(s[t]instanceof HTMLImageElement){e=true;break}false===e&&t(l)}return l}async parseAsync(e){const t=this.parseAnimations(e.animations);const n=this.parseShapes(e.shapes);const r=this.parseGeometries(e.geometries,n);const i=await this.parseImagesAsync(e.images);const s=this.parseTextures(e.textures,i);const a=this.parseMaterials(e.materials,s);const o=this.parseObject(e.object,r,a,s,t);const l=this.parseSkeletons(e.skeletons,o);this.bindSkeletons(o,l);return o}parseShapes(e){const t={};if(void 0!==e)for(let n=0,r=e.length;n<r;n++){const r=(new Shape).fromJSON(e[n]);t[r.uuid]=r}return t}parseSkeletons(e,t){const n={};const r={};t.traverse((function(e){e.isBone&&(r[e.uuid]=e)}));if(void 0!==e)for(let t=0,i=e.length;t<i;t++){const i=(new Skeleton).fromJSON(e[t],r);n[i.uuid]=i}return n}parseGeometries(e,t){const n={};if(void 0!==e){const r=new BufferGeometryLoader;for(let i=0,s=e.length;i<s;i++){let s;const a=e[i];switch(a.type){case\"BufferGeometry\":case\"InstancedBufferGeometry\":s=r.parse(a);break;case\"Geometry\":console.error(\"THREE.ObjectLoader: The legacy Geometry type is no longer supported.\");break;default:a.type in Pl?s=Pl[a.type].fromJSON(a,t):console.warn(`THREE.ObjectLoader: Unsupported geometry type \"${a.type}\"`)}s.uuid=a.uuid;void 0!==a.name&&(s.name=a.name);true===s.isBufferGeometry&&void 0!==a.userData&&(s.userData=a.userData);n[a.uuid]=s}}return n}parseMaterials(e,t){const n={};const r={};if(void 0!==e){const i=new MaterialLoader;i.setTextures(t);for(let t=0,s=e.length;t<s;t++){const s=e[t];if(\"MultiMaterial\"===s.type){const e=[];for(let t=0;t<s.materials.length;t++){const r=s.materials[t];void 0===n[r.uuid]&&(n[r.uuid]=i.parse(r));e.push(n[r.uuid])}r[s.uuid]=e}else{void 0===n[s.uuid]&&(n[s.uuid]=i.parse(s));r[s.uuid]=n[s.uuid]}}}return r}parseAnimations(e){const t={};if(void 0!==e)for(let n=0;n<e.length;n++){const r=e[n];const i=AnimationClip.parse(r);t[i.uuid]=i}return t}parseImages(e,t){const n=this;const r={};let i;function loadImage(e){n.manager.itemStart(e);return i.load(e,(function(){n.manager.itemEnd(e)}),void 0,(function(){n.manager.itemError(e);n.manager.itemEnd(e)}))}function deserializeImage(e){if(\"string\"===typeof e){const t=e;const r=/^(\\/\\/)|([a-z]+:(\\/\\/)?)/i.test(t)?t:n.resourcePath+t;return loadImage(r)}return e.data?{data:getTypedArray(e.type,e.data),width:e.width,height:e.height}:null}if(void 0!==e&&e.length>0){const n=new LoadingManager(t);i=new ImageLoader(n);i.setCrossOrigin(this.crossOrigin);for(let t=0,n=e.length;t<n;t++){const n=e[t];const i=n.url;if(Array.isArray(i)){r[n.uuid]=[];for(let e=0,t=i.length;e<t;e++){const t=i[e];const s=deserializeImage(t);null!==s&&(s instanceof HTMLImageElement?r[n.uuid].push(s):r[n.uuid].push(new DataTexture(s.data,s.width,s.height)))}}else{const e=deserializeImage(n.url);null!==e&&(r[n.uuid]=e)}}}return r}async parseImagesAsync(e){const t=this;const n={};let r;async function deserializeImage(e){if(\"string\"===typeof e){const n=e;const i=/^(\\/\\/)|([a-z]+:(\\/\\/)?)/i.test(n)?n:t.resourcePath+n;return await r.loadAsync(i)}return e.data?{data:getTypedArray(e.type,e.data),width:e.width,height:e.height}:null}if(void 0!==e&&e.length>0){r=new ImageLoader(this.manager);r.setCrossOrigin(this.crossOrigin);for(let t=0,r=e.length;t<r;t++){const r=e[t];const i=r.url;if(Array.isArray(i)){n[r.uuid]=[];for(let e=0,t=i.length;e<t;e++){const t=i[e];const s=await deserializeImage(t);null!==s&&(s instanceof HTMLImageElement?n[r.uuid].push(s):n[r.uuid].push(new DataTexture(s.data,s.width,s.height)))}}else{const e=await deserializeImage(r.url);null!==e&&(n[r.uuid]=e)}}}return n}parseTextures(e,t){function parseConstant(e,t){if(\"number\"===typeof e)return e;console.warn(\"THREE.ObjectLoader.parseTexture: Constant should be in numeric form.\",e);return t[e]}const n={};if(void 0!==e)for(let r=0,i=e.length;r<i;r++){const i=e[r];void 0===i.image&&console.warn('THREE.ObjectLoader: No \"image\" specified for',i.uuid);void 0===t[i.image]&&console.warn(\"THREE.ObjectLoader: Undefined image\",i.image);let s;const a=t[i.image];if(Array.isArray(a)){s=new CubeTexture(a);6===a.length&&(s.needsUpdate=true)}else{s=a&&a.data?new DataTexture(a.data,a.width,a.height):new Texture(a);a&&(s.needsUpdate=true)}s.uuid=i.uuid;void 0!==i.name&&(s.name=i.name);void 0!==i.mapping&&(s.mapping=parseConstant(i.mapping,kl));void 0!==i.offset&&s.offset.fromArray(i.offset);void 0!==i.repeat&&s.repeat.fromArray(i.repeat);void 0!==i.center&&s.center.fromArray(i.center);void 0!==i.rotation&&(s.rotation=i.rotation);if(void 0!==i.wrap){s.wrapS=parseConstant(i.wrap[0],Wl);s.wrapT=parseConstant(i.wrap[1],Wl)}void 0!==i.format&&(s.format=i.format);void 0!==i.type&&(s.type=i.type);void 0!==i.encoding&&(s.encoding=i.encoding);void 0!==i.minFilter&&(s.minFilter=parseConstant(i.minFilter,jl));void 0!==i.magFilter&&(s.magFilter=parseConstant(i.magFilter,jl));void 0!==i.anisotropy&&(s.anisotropy=i.anisotropy);void 0!==i.flipY&&(s.flipY=i.flipY);void 0!==i.premultiplyAlpha&&(s.premultiplyAlpha=i.premultiplyAlpha);void 0!==i.unpackAlignment&&(s.unpackAlignment=i.unpackAlignment);void 0!==i.userData&&(s.userData=i.userData);n[i.uuid]=s}return n}parseObject(e,t,n,r,i){let s;function getGeometry(e){void 0===t[e]&&console.warn(\"THREE.ObjectLoader: Undefined geometry\",e);return t[e]}function getMaterial(e){if(void 0!==e){if(Array.isArray(e)){const t=[];for(let r=0,i=e.length;r<i;r++){const i=e[r];void 0===n[i]&&console.warn(\"THREE.ObjectLoader: Undefined material\",i);t.push(n[i])}return t}void 0===n[e]&&console.warn(\"THREE.ObjectLoader: Undefined material\",e);return n[e]}}function getTexture(e){void 0===r[e]&&console.warn(\"THREE.ObjectLoader: Undefined texture\",e);return r[e]}let a,o;switch(e.type){case\"Scene\":s=new Scene;void 0!==e.background&&(Number.isInteger(e.background)?s.background=new Color(e.background):s.background=getTexture(e.background));void 0!==e.environment&&(s.environment=getTexture(e.environment));void 0!==e.fog&&(\"Fog\"===e.fog.type?s.fog=new Fog(e.fog.color,e.fog.near,e.fog.far):\"FogExp2\"===e.fog.type&&(s.fog=new FogExp2(e.fog.color,e.fog.density)));break;case\"PerspectiveCamera\":s=new PerspectiveCamera(e.fov,e.aspect,e.near,e.far);void 0!==e.focus&&(s.focus=e.focus);void 0!==e.zoom&&(s.zoom=e.zoom);void 0!==e.filmGauge&&(s.filmGauge=e.filmGauge);void 0!==e.filmOffset&&(s.filmOffset=e.filmOffset);void 0!==e.view&&(s.view=Object.assign({},e.view));break;case\"OrthographicCamera\":s=new OrthographicCamera(e.left,e.right,e.top,e.bottom,e.near,e.far);void 0!==e.zoom&&(s.zoom=e.zoom);void 0!==e.view&&(s.view=Object.assign({},e.view));break;case\"AmbientLight\":s=new AmbientLight(e.color,e.intensity);break;case\"DirectionalLight\":s=new DirectionalLight(e.color,e.intensity);break;case\"PointLight\":s=new PointLight(e.color,e.intensity,e.distance,e.decay);break;case\"RectAreaLight\":s=new RectAreaLight(e.color,e.intensity,e.width,e.height);break;case\"SpotLight\":s=new SpotLight(e.color,e.intensity,e.distance,e.angle,e.penumbra,e.decay);break;case\"HemisphereLight\":s=new HemisphereLight(e.color,e.groundColor,e.intensity);break;case\"LightProbe\":s=(new LightProbe).fromJSON(e);break;case\"SkinnedMesh\":a=getGeometry(e.geometry);o=getMaterial(e.material);s=new SkinnedMesh(a,o);void 0!==e.bindMode&&(s.bindMode=e.bindMode);void 0!==e.bindMatrix&&s.bindMatrix.fromArray(e.bindMatrix);void 0!==e.skeleton&&(s.skeleton=e.skeleton);break;case\"Mesh\":a=getGeometry(e.geometry);o=getMaterial(e.material);s=new Mesh(a,o);break;case\"InstancedMesh\":a=getGeometry(e.geometry);o=getMaterial(e.material);const t=e.count;const n=e.instanceMatrix;const r=e.instanceColor;s=new InstancedMesh(a,o,t);s.instanceMatrix=new InstancedBufferAttribute(new Float32Array(n.array),16);void 0!==r&&(s.instanceColor=new InstancedBufferAttribute(new Float32Array(r.array),r.itemSize));break;case\"LOD\":s=new LOD;break;case\"Line\":s=new Line(getGeometry(e.geometry),getMaterial(e.material));break;case\"LineLoop\":s=new LineLoop(getGeometry(e.geometry),getMaterial(e.material));break;case\"LineSegments\":s=new LineSegments(getGeometry(e.geometry),getMaterial(e.material));break;case\"PointCloud\":case\"Points\":s=new Points(getGeometry(e.geometry),getMaterial(e.material));break;case\"Sprite\":s=new Sprite(getMaterial(e.material));break;case\"Group\":s=new Group;break;case\"Bone\":s=new Bone;break;default:s=new Object3D}s.uuid=e.uuid;void 0!==e.name&&(s.name=e.name);if(void 0!==e.matrix){s.matrix.fromArray(e.matrix);void 0!==e.matrixAutoUpdate&&(s.matrixAutoUpdate=e.matrixAutoUpdate);s.matrixAutoUpdate&&s.matrix.decompose(s.position,s.quaternion,s.scale)}else{void 0!==e.position&&s.position.fromArray(e.position);void 0!==e.rotation&&s.rotation.fromArray(e.rotation);void 0!==e.quaternion&&s.quaternion.fromArray(e.quaternion);void 0!==e.scale&&s.scale.fromArray(e.scale)}void 0!==e.castShadow&&(s.castShadow=e.castShadow);void 0!==e.receiveShadow&&(s.receiveShadow=e.receiveShadow);if(e.shadow){void 0!==e.shadow.bias&&(s.shadow.bias=e.shadow.bias);void 0!==e.shadow.normalBias&&(s.shadow.normalBias=e.shadow.normalBias);void 0!==e.shadow.radius&&(s.shadow.radius=e.shadow.radius);void 0!==e.shadow.mapSize&&s.shadow.mapSize.fromArray(e.shadow.mapSize);void 0!==e.shadow.camera&&(s.shadow.camera=this.parseObject(e.shadow.camera))}void 0!==e.visible&&(s.visible=e.visible);void 0!==e.frustumCulled&&(s.frustumCulled=e.frustumCulled);void 0!==e.renderOrder&&(s.renderOrder=e.renderOrder);void 0!==e.userData&&(s.userData=e.userData);void 0!==e.layers&&(s.layers.mask=e.layers);if(void 0!==e.children){const a=e.children;for(let e=0;e<a.length;e++)s.add(this.parseObject(a[e],t,n,r,i))}if(void 0!==e.animations){const t=e.animations;for(let e=0;e<t.length;e++){const n=t[e];s.animations.push(i[n])}}if(\"LOD\"===e.type){void 0!==e.autoUpdate&&(s.autoUpdate=e.autoUpdate);const t=e.levels;for(let e=0;e<t.length;e++){const n=t[e];const r=s.getObjectByProperty(\"uuid\",n.object);void 0!==r&&s.addLevel(r,n.distance)}}return s}bindSkeletons(e,t){0!==Object.keys(t).length&&e.traverse((function(e){if(true===e.isSkinnedMesh&&void 0!==e.skeleton){const n=t[e.skeleton];void 0===n?console.warn(\"THREE.ObjectLoader: No skeleton found with UUID:\",e.skeleton):e.bind(n,e.bindMatrix)}}))}setTexturePath(e){console.warn(\"THREE.ObjectLoader: .setTexturePath() has been renamed to .setResourcePath().\");return this.setResourcePath(e)}}const kl={UVMapping:ne,CubeReflectionMapping:re,CubeRefractionMapping:ie,EquirectangularReflectionMapping:se,EquirectangularRefractionMapping:ae,CubeUVReflectionMapping:oe,CubeUVRefractionMapping:le};const Wl={RepeatWrapping:ce,ClampToEdgeWrapping:ue,MirroredRepeatWrapping:he};const jl={NearestFilter:de,NearestMipmapNearestFilter:pe,NearestMipmapLinearFilter:me,LinearFilter:ye,LinearMipmapNearestFilter:ve,LinearMipmapLinearFilter:be};class ImageBitmapLoader extends Loader{constructor(e){super(e);\"undefined\"===typeof createImageBitmap&&console.warn(\"THREE.ImageBitmapLoader: createImageBitmap() not supported.\");\"undefined\"===typeof fetch&&console.warn(\"THREE.ImageBitmapLoader: fetch() not supported.\");this.options={premultiplyAlpha:\"none\"}}setOptions(e){this.options=e;return this}load(e,t,n,r){void 0===e&&(e=\"\");void 0!==this.path&&(e=this.path+e);e=this.manager.resolveURL(e);const i=this;const s=Bl.get(e);if(void 0!==s){i.manager.itemStart(e);setTimeout((function(){t&&t(s);i.manager.itemEnd(e)}),0);return s}const a={};a.credentials=\"anonymous\"===this.crossOrigin?\"same-origin\":\"include\";a.headers=this.requestHeader;fetch(e,a).then((function(e){return e.blob()})).then((function(e){return createImageBitmap(e,Object.assign(i.options,{colorSpaceConversion:\"none\"}))})).then((function(n){Bl.add(e,n);t&&t(n);i.manager.itemEnd(e)})).catch((function(t){r&&r(t);i.manager.itemError(e);i.manager.itemEnd(e)}));i.manager.itemStart(e)}}ImageBitmapLoader.prototype.isImageBitmapLoader=true;let ql;const Xl={getContext:function(){void 0===ql&&(ql=new(window.AudioContext||window.webkitAudioContext));return ql},setContext:function(e){ql=e}};class AudioLoader extends Loader{constructor(e){super(e)}load(e,t,n,r){const i=this;const s=new FileLoader(this.manager);s.setResponseType(\"arraybuffer\");s.setPath(this.path);s.setRequestHeader(this.requestHeader);s.setWithCredentials(this.withCredentials);s.load(e,(function(n){try{const e=n.slice(0);const r=Xl.getContext();r.decodeAudioData(e,(function(e){t(e)}))}catch(t){r?r(t):console.error(t);i.manager.itemError(e)}}),n,r)}}class HemisphereLightProbe extends LightProbe{constructor(e,t,n=1){super(void 0,n);const r=(new Color).set(e);const i=(new Color).set(t);const s=new Vector3(r.r,r.g,r.b);const a=new Vector3(i.r,i.g,i.b);const o=Math.sqrt(Math.PI);const l=o*Math.sqrt(.75);this.sh.coefficients[0].copy(s).add(a).multiplyScalar(o);this.sh.coefficients[1].copy(s).sub(a).multiplyScalar(l)}}HemisphereLightProbe.prototype.isHemisphereLightProbe=true;class AmbientLightProbe extends LightProbe{constructor(e,t=1){super(void 0,t);const n=(new Color).set(e);this.sh.coefficients[0].set(n.r,n.g,n.b).multiplyScalar(2*Math.sqrt(Math.PI))}}AmbientLightProbe.prototype.isAmbientLightProbe=true;const Jl=new Matrix4;const Yl=new Matrix4;const Zl=new Matrix4;class StereoCamera{constructor(){this.type=\"StereoCamera\";this.aspect=1;this.eyeSep=.064;this.cameraL=new PerspectiveCamera;this.cameraL.layers.enable(1);this.cameraL.matrixAutoUpdate=false;this.cameraR=new PerspectiveCamera;this.cameraR.layers.enable(2);this.cameraR.matrixAutoUpdate=false;this._cache={focus:null,fov:null,aspect:null,near:null,far:null,zoom:null,eyeSep:null}}update(e){const t=this._cache;const n=t.focus!==e.focus||t.fov!==e.fov||t.aspect!==e.aspect*this.aspect||t.near!==e.near||t.far!==e.far||t.zoom!==e.zoom||t.eyeSep!==this.eyeSep;if(n){t.focus=e.focus;t.fov=e.fov;t.aspect=e.aspect*this.aspect;t.near=e.near;t.far=e.far;t.zoom=e.zoom;t.eyeSep=this.eyeSep;Zl.copy(e.projectionMatrix);const n=t.eyeSep/2;const r=n*t.near/t.focus;const i=t.near*Math.tan(Cn*t.fov*.5)/t.zoom;let s,a;Yl.elements[12]=-n;Jl.elements[12]=n;s=-i*t.aspect+r;a=i*t.aspect+r;Zl.elements[0]=2*t.near/(a-s);Zl.elements[8]=(a+s)/(a-s);this.cameraL.projectionMatrix.copy(Zl);s=-i*t.aspect-r;a=i*t.aspect-r;Zl.elements[0]=2*t.near/(a-s);Zl.elements[8]=(a+s)/(a-s);this.cameraR.projectionMatrix.copy(Zl)}this.cameraL.matrixWorld.copy(e.matrixWorld).multiply(Yl);this.cameraR.matrixWorld.copy(e.matrixWorld).multiply(Jl)}}class Clock{constructor(e=true){this.autoStart=e;this.startTime=0;this.oldTime=0;this.elapsedTime=0;this.running=false}start(){this.startTime=now();this.oldTime=this.startTime;this.elapsedTime=0;this.running=true}stop(){this.getElapsedTime();this.running=false;this.autoStart=false}getElapsedTime(){this.getDelta();return this.elapsedTime}getDelta(){let e=0;if(this.autoStart&&!this.running){this.start();return 0}if(this.running){const t=now();e=(t-this.oldTime)/1e3;this.oldTime=t;this.elapsedTime+=e}return e}}function now(){return(\"undefined\"===typeof performance?Date:performance).now()}const Ql=new Vector3;const Kl=new Quaternion;const $l=new Vector3;const ec=new Vector3;class AudioListener extends Object3D{constructor(){super();this.type=\"AudioListener\";this.context=Xl.getContext();this.gain=this.context.createGain();this.gain.connect(this.context.destination);this.filter=null;this.timeDelta=0;this._clock=new Clock}getInput(){return this.gain}removeFilter(){if(null!==this.filter){this.gain.disconnect(this.filter);this.filter.disconnect(this.context.destination);this.gain.connect(this.context.destination);this.filter=null}return this}getFilter(){return this.filter}setFilter(e){if(null!==this.filter){this.gain.disconnect(this.filter);this.filter.disconnect(this.context.destination)}else this.gain.disconnect(this.context.destination);this.filter=e;this.gain.connect(this.filter);this.filter.connect(this.context.destination);return this}getMasterVolume(){return this.gain.gain.value}setMasterVolume(e){this.gain.gain.setTargetAtTime(e,this.context.currentTime,.01);return this}updateMatrixWorld(e){super.updateMatrixWorld(e);const t=this.context.listener;const n=this.up;this.timeDelta=this._clock.getDelta();this.matrixWorld.decompose(Ql,Kl,$l);ec.set(0,0,-1).applyQuaternion(Kl);if(t.positionX){const e=this.context.currentTime+this.timeDelta;t.positionX.linearRampToValueAtTime(Ql.x,e);t.positionY.linearRampToValueAtTime(Ql.y,e);t.positionZ.linearRampToValueAtTime(Ql.z,e);t.forwardX.linearRampToValueAtTime(ec.x,e);t.forwardY.linearRampToValueAtTime(ec.y,e);t.forwardZ.linearRampToValueAtTime(ec.z,e);t.upX.linearRampToValueAtTime(n.x,e);t.upY.linearRampToValueAtTime(n.y,e);t.upZ.linearRampToValueAtTime(n.z,e)}else{t.setPosition(Ql.x,Ql.y,Ql.z);t.setOrientation(ec.x,ec.y,ec.z,n.x,n.y,n.z)}}}class Audio extends Object3D{constructor(e){super();this.type=\"Audio\";this.listener=e;this.context=e.context;this.gain=this.context.createGain();this.gain.connect(e.getInput());this.autoplay=false;this.buffer=null;this.detune=0;this.loop=false;this.loopStart=0;this.loopEnd=0;this.offset=0;this.duration=void 0;this.playbackRate=1;this.isPlaying=false;this.hasPlaybackControl=true;this.source=null;this.sourceType=\"empty\";this._startedAt=0;this._progress=0;this._connected=false;this.filters=[]}getOutput(){return this.gain}setNodeSource(e){this.hasPlaybackControl=false;this.sourceType=\"audioNode\";this.source=e;this.connect();return this}setMediaElementSource(e){this.hasPlaybackControl=false;this.sourceType=\"mediaNode\";this.source=this.context.createMediaElementSource(e);this.connect();return this}setMediaStreamSource(e){this.hasPlaybackControl=false;this.sourceType=\"mediaStreamNode\";this.source=this.context.createMediaStreamSource(e);this.connect();return this}setBuffer(e){this.buffer=e;this.sourceType=\"buffer\";this.autoplay&&this.play();return this}play(e=0){if(true===this.isPlaying){console.warn(\"THREE.Audio: Audio is already playing.\");return}if(false===this.hasPlaybackControl){console.warn(\"THREE.Audio: this Audio has no playback control.\");return}this._startedAt=this.context.currentTime+e;const t=this.context.createBufferSource();t.buffer=this.buffer;t.loop=this.loop;t.loopStart=this.loopStart;t.loopEnd=this.loopEnd;t.onended=this.onEnded.bind(this);t.start(this._startedAt,this._progress+this.offset,this.duration);this.isPlaying=true;this.source=t;this.setDetune(this.detune);this.setPlaybackRate(this.playbackRate);return this.connect()}pause(){if(false!==this.hasPlaybackControl){if(true===this.isPlaying){this._progress+=Math.max(this.context.currentTime-this._startedAt,0)*this.playbackRate;true===this.loop&&(this._progress=this._progress%(this.duration||this.buffer.duration));this.source.stop();this.source.onended=null;this.isPlaying=false}return this}console.warn(\"THREE.Audio: this Audio has no playback control.\")}stop(){if(false!==this.hasPlaybackControl){this._progress=0;this.source.stop();this.source.onended=null;this.isPlaying=false;return this}console.warn(\"THREE.Audio: this Audio has no playback control.\")}connect(){if(this.filters.length>0){this.source.connect(this.filters[0]);for(let e=1,t=this.filters.length;e<t;e++)this.filters[e-1].connect(this.filters[e]);this.filters[this.filters.length-1].connect(this.getOutput())}else this.source.connect(this.getOutput());this._connected=true;return this}disconnect(){if(this.filters.length>0){this.source.disconnect(this.filters[0]);for(let e=1,t=this.filters.length;e<t;e++)this.filters[e-1].disconnect(this.filters[e]);this.filters[this.filters.length-1].disconnect(this.getOutput())}else this.source.disconnect(this.getOutput());this._connected=false;return this}getFilters(){return this.filters}setFilters(e){e||(e=[]);if(true===this._connected){this.disconnect();this.filters=e.slice();this.connect()}else this.filters=e.slice();return this}setDetune(e){this.detune=e;if(void 0!==this.source.detune){true===this.isPlaying&&this.source.detune.setTargetAtTime(this.detune,this.context.currentTime,.01);return this}}getDetune(){return this.detune}getFilter(){return this.getFilters()[0]}setFilter(e){return this.setFilters(e?[e]:[])}setPlaybackRate(e){if(false!==this.hasPlaybackControl){this.playbackRate=e;true===this.isPlaying&&this.source.playbackRate.setTargetAtTime(this.playbackRate,this.context.currentTime,.01);return this}console.warn(\"THREE.Audio: this Audio has no playback control.\")}getPlaybackRate(){return this.playbackRate}onEnded(){this.isPlaying=false}getLoop(){if(false===this.hasPlaybackControl){console.warn(\"THREE.Audio: this Audio has no playback control.\");return false}return this.loop}setLoop(e){if(false!==this.hasPlaybackControl){this.loop=e;true===this.isPlaying&&(this.source.loop=this.loop);return this}console.warn(\"THREE.Audio: this Audio has no playback control.\")}setLoopStart(e){this.loopStart=e;return this}setLoopEnd(e){this.loopEnd=e;return this}getVolume(){return this.gain.gain.value}setVolume(e){this.gain.gain.setTargetAtTime(e,this.context.currentTime,.01);return this}}const tc=new Vector3;const nc=new Quaternion;const rc=new Vector3;const ic=new Vector3;class PositionalAudio extends Audio{constructor(e){super(e);this.panner=this.context.createPanner();this.panner.panningModel=\"HRTF\";this.panner.connect(this.gain)}getOutput(){return this.panner}getRefDistance(){return this.panner.refDistance}setRefDistance(e){this.panner.refDistance=e;return this}getRolloffFactor(){return this.panner.rolloffFactor}setRolloffFactor(e){this.panner.rolloffFactor=e;return this}getDistanceModel(){return this.panner.distanceModel}setDistanceModel(e){this.panner.distanceModel=e;return this}getMaxDistance(){return this.panner.maxDistance}setMaxDistance(e){this.panner.maxDistance=e;return this}setDirectionalCone(e,t,n){this.panner.coneInnerAngle=e;this.panner.coneOuterAngle=t;this.panner.coneOuterGain=n;return this}updateMatrixWorld(e){super.updateMatrixWorld(e);if(true===this.hasPlaybackControl&&false===this.isPlaying)return;this.matrixWorld.decompose(tc,nc,rc);ic.set(0,0,1).applyQuaternion(nc);const t=this.panner;if(t.positionX){const e=this.context.currentTime+this.listener.timeDelta;t.positionX.linearRampToValueAtTime(tc.x,e);t.positionY.linearRampToValueAtTime(tc.y,e);t.positionZ.linearRampToValueAtTime(tc.z,e);t.orientationX.linearRampToValueAtTime(ic.x,e);t.orientationY.linearRampToValueAtTime(ic.y,e);t.orientationZ.linearRampToValueAtTime(ic.z,e)}else{t.setPosition(tc.x,tc.y,tc.z);t.setOrientation(ic.x,ic.y,ic.z)}}}class AudioAnalyser{constructor(e,t=2048){this.analyser=e.context.createAnalyser();this.analyser.fftSize=t;this.data=new Uint8Array(this.analyser.frequencyBinCount);e.getOutput().connect(this.analyser)}getFrequencyData(){this.analyser.getByteFrequencyData(this.data);return this.data}getAverageFrequency(){let e=0;const t=this.getFrequencyData();for(let n=0;n<t.length;n++)e+=t[n];return e/t.length}}class PropertyMixer{constructor(e,t,n){this.binding=e;this.valueSize=n;let r,i,s;switch(t){case\"quaternion\":r=this._slerp;i=this._slerpAdditive;s=this._setAdditiveIdentityQuaternion;this.buffer=new Float64Array(6*n);this._workIndex=5;break;case\"string\":case\"bool\":r=this._select;i=this._select;s=this._setAdditiveIdentityOther;this.buffer=new Array(5*n);break;default:r=this._lerp;i=this._lerpAdditive;s=this._setAdditiveIdentityNumeric;this.buffer=new Float64Array(5*n)}this._mixBufferRegion=r;this._mixBufferRegionAdditive=i;this._setIdentity=s;this._origIndex=3;this._addIndex=4;this.cumulativeWeight=0;this.cumulativeWeightAdditive=0;this.useCount=0;this.referenceCount=0}accumulate(e,t){const n=this.buffer,r=this.valueSize,i=e*r+r;let s=this.cumulativeWeight;if(0===s){for(let e=0;e!==r;++e)n[i+e]=n[e];s=t}else{s+=t;const e=t/s;this._mixBufferRegion(n,i,0,e,r)}this.cumulativeWeight=s}accumulateAdditive(e){const t=this.buffer,n=this.valueSize,r=n*this._addIndex;0===this.cumulativeWeightAdditive&&this._setIdentity();this._mixBufferRegionAdditive(t,r,0,e,n);this.cumulativeWeightAdditive+=e}apply(e){const t=this.valueSize,n=this.buffer,r=e*t+t,i=this.cumulativeWeight,s=this.cumulativeWeightAdditive,a=this.binding;this.cumulativeWeight=0;this.cumulativeWeightAdditive=0;if(i<1){const e=t*this._origIndex;this._mixBufferRegion(n,r,e,1-i,t)}s>0&&this._mixBufferRegionAdditive(n,r,this._addIndex*t,1,t);for(let e=t,i=t+t;e!==i;++e)if(n[e]!==n[e+t]){a.setValue(n,r);break}}saveOriginalState(){const e=this.binding;const t=this.buffer,n=this.valueSize,r=n*this._origIndex;e.getValue(t,r);for(let e=n,i=r;e!==i;++e)t[e]=t[r+e%n];this._setIdentity();this.cumulativeWeight=0;this.cumulativeWeightAdditive=0}restoreOriginalState(){const e=3*this.valueSize;this.binding.setValue(this.buffer,e)}_setAdditiveIdentityNumeric(){const e=this._addIndex*this.valueSize;const t=e+this.valueSize;for(let n=e;n<t;n++)this.buffer[n]=0}_setAdditiveIdentityQuaternion(){this._setAdditiveIdentityNumeric();this.buffer[this._addIndex*this.valueSize+3]=1}_setAdditiveIdentityOther(){const e=this._origIndex*this.valueSize;const t=this._addIndex*this.valueSize;for(let n=0;n<this.valueSize;n++)this.buffer[t+n]=this.buffer[e+n]}_select(e,t,n,r,i){if(r>=.5)for(let r=0;r!==i;++r)e[t+r]=e[n+r]}_slerp(e,t,n,r){Quaternion.slerpFlat(e,t,e,t,e,n,r)}_slerpAdditive(e,t,n,r,i){const s=this._workIndex*i;Quaternion.multiplyQuaternionsFlat(e,s,e,t,e,n);Quaternion.slerpFlat(e,t,e,t,e,s,r)}_lerp(e,t,n,r,i){const s=1-r;for(let a=0;a!==i;++a){const i=t+a;e[i]=e[i]*s+e[n+a]*r}}_lerpAdditive(e,t,n,r,i){for(let s=0;s!==i;++s){const i=t+s;e[i]=e[i]+e[n+s]*r}}}const sc=\"\\\\[\\\\]\\\\.:\\\\/\";const ac=new RegExp(\"[\"+sc+\"]\",\"g\");const oc=\"[^\"+sc+\"]\";const lc=\"[^\"+sc.replace(\"\\\\.\",\"\")+\"]\";const cc=/((?:WC+[\\/:])*)/.source.replace(\"WC\",oc);const uc=/(WCOD+)?/.source.replace(\"WCOD\",lc);const hc=/(?:\\.(WC+)(?:\\[(.+)\\])?)?/.source.replace(\"WC\",oc);const dc=/\\.(WC+)(?:\\[(.+)\\])?/.source.replace(\"WC\",oc);const pc=new RegExp(\"^\"+cc+uc+hc+dc+\"$\");const fc=[\"material\",\"materials\",\"bones\"];class Composite{constructor(e,t,n){const r=n||PropertyBinding.parseTrackName(t);this._targetGroup=e;this._bindings=e.subscribe_(t,r)}getValue(e,t){this.bind();const n=this._targetGroup.nCachedObjects_,r=this._bindings[n];void 0!==r&&r.getValue(e,t)}setValue(e,t){const n=this._bindings;for(let r=this._targetGroup.nCachedObjects_,i=n.length;r!==i;++r)n[r].setValue(e,t)}bind(){const e=this._bindings;for(let t=this._targetGroup.nCachedObjects_,n=e.length;t!==n;++t)e[t].bind()}unbind(){const e=this._bindings;for(let t=this._targetGroup.nCachedObjects_,n=e.length;t!==n;++t)e[t].unbind()}}class PropertyBinding{constructor(e,t,n){this.path=t;this.parsedPath=n||PropertyBinding.parseTrackName(t);this.node=PropertyBinding.findNode(e,this.parsedPath.nodeName)||e;this.rootNode=e;this.getValue=this._getValue_unbound;this.setValue=this._setValue_unbound}static create(e,t,n){return e&&e.isAnimationObjectGroup?new PropertyBinding.Composite(e,t,n):new PropertyBinding(e,t,n)}\n/**\n\t * Replaces spaces with underscores and removes unsupported characters from\n\t * node names, to ensure compatibility with parseTrackName().\n\t *\n\t * @param {string} name Node name to be sanitized.\n\t * @return {string}\n\t */static sanitizeNodeName(e){return e.replace(/\\s/g,\"_\").replace(ac,\"\")}static parseTrackName(e){const t=pc.exec(e);if(!t)throw new Error(\"PropertyBinding: Cannot parse trackName: \"+e);const n={nodeName:t[2],objectName:t[3],objectIndex:t[4],propertyName:t[5],propertyIndex:t[6]};const r=n.nodeName&&n.nodeName.lastIndexOf(\".\");if(void 0!==r&&-1!==r){const e=n.nodeName.substring(r+1);if(-1!==fc.indexOf(e)){n.nodeName=n.nodeName.substring(0,r);n.objectName=e}}if(null===n.propertyName||0===n.propertyName.length)throw new Error(\"PropertyBinding: can not parse propertyName from trackName: \"+e);return n}static findNode(e,t){if(!t||\"\"===t||\".\"===t||-1===t||t===e.name||t===e.uuid)return e;if(e.skeleton){const n=e.skeleton.getBoneByName(t);if(void 0!==n)return n}if(e.children){const searchNodeSubtree=function(e){for(let n=0;n<e.length;n++){const r=e[n];if(r.name===t||r.uuid===t)return r;const i=searchNodeSubtree(r.children);if(i)return i}return null};const n=searchNodeSubtree(e.children);if(n)return n}return null}_getValue_unavailable(){}_setValue_unavailable(){}_getValue_direct(e,t){e[t]=this.targetObject[this.propertyName]}_getValue_array(e,t){const n=this.resolvedProperty;for(let r=0,i=n.length;r!==i;++r)e[t++]=n[r]}_getValue_arrayElement(e,t){e[t]=this.resolvedProperty[this.propertyIndex]}_getValue_toArray(e,t){this.resolvedProperty.toArray(e,t)}_setValue_direct(e,t){this.targetObject[this.propertyName]=e[t]}_setValue_direct_setNeedsUpdate(e,t){this.targetObject[this.propertyName]=e[t];this.targetObject.needsUpdate=true}_setValue_direct_setMatrixWorldNeedsUpdate(e,t){this.targetObject[this.propertyName]=e[t];this.targetObject.matrixWorldNeedsUpdate=true}_setValue_array(e,t){const n=this.resolvedProperty;for(let r=0,i=n.length;r!==i;++r)n[r]=e[t++]}_setValue_array_setNeedsUpdate(e,t){const n=this.resolvedProperty;for(let r=0,i=n.length;r!==i;++r)n[r]=e[t++];this.targetObject.needsUpdate=true}_setValue_array_setMatrixWorldNeedsUpdate(e,t){const n=this.resolvedProperty;for(let r=0,i=n.length;r!==i;++r)n[r]=e[t++];this.targetObject.matrixWorldNeedsUpdate=true}_setValue_arrayElement(e,t){this.resolvedProperty[this.propertyIndex]=e[t]}_setValue_arrayElement_setNeedsUpdate(e,t){this.resolvedProperty[this.propertyIndex]=e[t];this.targetObject.needsUpdate=true}_setValue_arrayElement_setMatrixWorldNeedsUpdate(e,t){this.resolvedProperty[this.propertyIndex]=e[t];this.targetObject.matrixWorldNeedsUpdate=true}_setValue_fromArray(e,t){this.resolvedProperty.fromArray(e,t)}_setValue_fromArray_setNeedsUpdate(e,t){this.resolvedProperty.fromArray(e,t);this.targetObject.needsUpdate=true}_setValue_fromArray_setMatrixWorldNeedsUpdate(e,t){this.resolvedProperty.fromArray(e,t);this.targetObject.matrixWorldNeedsUpdate=true}_getValue_unbound(e,t){this.bind();this.getValue(e,t)}_setValue_unbound(e,t){this.bind();this.setValue(e,t)}bind(){let e=this.node;const t=this.parsedPath;const n=t.objectName;const r=t.propertyName;let i=t.propertyIndex;if(!e){e=PropertyBinding.findNode(this.rootNode,t.nodeName)||this.rootNode;this.node=e}this.getValue=this._getValue_unavailable;this.setValue=this._setValue_unavailable;if(!e){console.error(\"THREE.PropertyBinding: Trying to update node for track: \"+this.path+\" but it wasn't found.\");return}if(n){let r=t.objectIndex;switch(n){case\"materials\":if(!e.material){console.error(\"THREE.PropertyBinding: Can not bind to material as node does not have a material.\",this);return}if(!e.material.materials){console.error(\"THREE.PropertyBinding: Can not bind to material.materials as node.material does not have a materials array.\",this);return}e=e.material.materials;break;case\"bones\":if(!e.skeleton){console.error(\"THREE.PropertyBinding: Can not bind to bones as node does not have a skeleton.\",this);return}e=e.skeleton.bones;for(let t=0;t<e.length;t++)if(e[t].name===r){r=t;break}break;default:if(void 0===e[n]){console.error(\"THREE.PropertyBinding: Can not bind to objectName of node undefined.\",this);return}e=e[n]}if(void 0!==r){if(void 0===e[r]){console.error(\"THREE.PropertyBinding: Trying to bind to objectIndex of objectName, but is undefined.\",this,e);return}e=e[r]}}const s=e[r];if(void 0===s){const n=t.nodeName;console.error(\"THREE.PropertyBinding: Trying to update property for track: \"+n+\".\"+r+\" but it wasn't found.\",e);return}let a=this.Versioning.None;this.targetObject=e;void 0!==e.needsUpdate?a=this.Versioning.NeedsUpdate:void 0!==e.matrixWorldNeedsUpdate&&(a=this.Versioning.MatrixWorldNeedsUpdate);let o=this.BindingType.Direct;if(void 0!==i){if(\"morphTargetInfluences\"===r){if(!e.geometry){console.error(\"THREE.PropertyBinding: Can not bind to morphTargetInfluences because node does not have a geometry.\",this);return}if(!e.geometry.isBufferGeometry){console.error(\"THREE.PropertyBinding: Can not bind to morphTargetInfluences on THREE.Geometry. Use THREE.BufferGeometry instead.\",this);return}if(!e.geometry.morphAttributes){console.error(\"THREE.PropertyBinding: Can not bind to morphTargetInfluences because node does not have a geometry.morphAttributes.\",this);return}void 0!==e.morphTargetDictionary[i]&&(i=e.morphTargetDictionary[i])}o=this.BindingType.ArrayElement;this.resolvedProperty=s;this.propertyIndex=i}else if(void 0!==s.fromArray&&void 0!==s.toArray){o=this.BindingType.HasFromToArray;this.resolvedProperty=s}else if(Array.isArray(s)){o=this.BindingType.EntireArray;this.resolvedProperty=s}else this.propertyName=r;this.getValue=this.GetterByBindingType[o];this.setValue=this.SetterByBindingTypeAndVersioning[o][a]}unbind(){this.node=null;this.getValue=this._getValue_unbound;this.setValue=this._setValue_unbound}}PropertyBinding.Composite=Composite;PropertyBinding.prototype.BindingType={Direct:0,EntireArray:1,ArrayElement:2,HasFromToArray:3};PropertyBinding.prototype.Versioning={None:0,NeedsUpdate:1,MatrixWorldNeedsUpdate:2};PropertyBinding.prototype.GetterByBindingType=[PropertyBinding.prototype._getValue_direct,PropertyBinding.prototype._getValue_array,PropertyBinding.prototype._getValue_arrayElement,PropertyBinding.prototype._getValue_toArray];PropertyBinding.prototype.SetterByBindingTypeAndVersioning=[[PropertyBinding.prototype._setValue_direct,PropertyBinding.prototype._setValue_direct_setNeedsUpdate,PropertyBinding.prototype._setValue_direct_setMatrixWorldNeedsUpdate],[PropertyBinding.prototype._setValue_array,PropertyBinding.prototype._setValue_array_setNeedsUpdate,PropertyBinding.prototype._setValue_array_setMatrixWorldNeedsUpdate],[PropertyBinding.prototype._setValue_arrayElement,PropertyBinding.prototype._setValue_arrayElement_setNeedsUpdate,PropertyBinding.prototype._setValue_arrayElement_setMatrixWorldNeedsUpdate],[PropertyBinding.prototype._setValue_fromArray,PropertyBinding.prototype._setValue_fromArray_setNeedsUpdate,PropertyBinding.prototype._setValue_fromArray_setMatrixWorldNeedsUpdate]];class AnimationObjectGroup{constructor(){this.uuid=generateUUID();this._objects=Array.prototype.slice.call(arguments);this.nCachedObjects_=0;const e={};this._indicesByUUID=e;for(let t=0,n=arguments.length;t!==n;++t)e[arguments[t].uuid]=t;this._paths=[];this._parsedPaths=[];this._bindings=[];this._bindingsIndicesByPath={};const t=this;this.stats={objects:{get total(){return t._objects.length},get inUse(){return this.total-t.nCachedObjects_}},get bindingsPerObject(){return t._bindings.length}}}add(){const e=this._objects,t=this._indicesByUUID,n=this._paths,r=this._parsedPaths,i=this._bindings,s=i.length;let a,o=e.length,l=this.nCachedObjects_;for(let c=0,u=arguments.length;c!==u;++c){const u=arguments[c],h=u.uuid;let d=t[h];if(void 0===d){d=o++;t[h]=d;e.push(u);for(let e=0,t=s;e!==t;++e)i[e].push(new PropertyBinding(u,n[e],r[e]))}else if(d<l){a=e[d];const o=--l,c=e[o];t[c.uuid]=d;e[d]=c;t[h]=o;e[o]=u;for(let e=0,t=s;e!==t;++e){const t=i[e],s=t[o];let a=t[d];t[d]=s;void 0===a&&(a=new PropertyBinding(u,n[e],r[e]));t[o]=a}}else e[d]!==a&&console.error(\"THREE.AnimationObjectGroup: Different objects with the same UUID detected. Clean the caches or recreate your infrastructure when reloading scenes.\")}this.nCachedObjects_=l}remove(){const e=this._objects,t=this._indicesByUUID,n=this._bindings,r=n.length;let i=this.nCachedObjects_;for(let s=0,a=arguments.length;s!==a;++s){const a=arguments[s],o=a.uuid,l=t[o];if(void 0!==l&&l>=i){const s=i++,c=e[s];t[c.uuid]=l;e[l]=c;t[o]=s;e[s]=a;for(let e=0,t=r;e!==t;++e){const t=n[e],r=t[s],i=t[l];t[l]=r;t[s]=i}}}this.nCachedObjects_=i}uncache(){const e=this._objects,t=this._indicesByUUID,n=this._bindings,r=n.length;let i=this.nCachedObjects_,s=e.length;for(let a=0,o=arguments.length;a!==o;++a){const o=arguments[a],l=o.uuid,c=t[l];if(void 0!==c){delete t[l];if(c<i){const a=--i,o=e[a],l=--s,u=e[l];t[o.uuid]=c;e[c]=o;t[u.uuid]=a;e[a]=u;e.pop();for(let e=0,t=r;e!==t;++e){const t=n[e],r=t[a],i=t[l];t[c]=r;t[a]=i;t.pop()}}else{const i=--s,a=e[i];i>0&&(t[a.uuid]=c);e[c]=a;e.pop();for(let e=0,t=r;e!==t;++e){const t=n[e];t[c]=t[i];t.pop()}}}}this.nCachedObjects_=i}subscribe_(e,t){const n=this._bindingsIndicesByPath;let r=n[e];const i=this._bindings;if(void 0!==r)return i[r];const s=this._paths,a=this._parsedPaths,o=this._objects,l=o.length,c=this.nCachedObjects_,u=new Array(l);r=i.length;n[e]=r;s.push(e);a.push(t);i.push(u);for(let n=c,r=o.length;n!==r;++n){const r=o[n];u[n]=new PropertyBinding(r,e,t)}return u}unsubscribe_(e){const t=this._bindingsIndicesByPath,n=t[e];if(void 0!==n){const r=this._paths,i=this._parsedPaths,s=this._bindings,a=s.length-1,o=s[a],l=e[a];t[l]=n;s[n]=o;s.pop();i[n]=i[a];i.pop();r[n]=r[a];r.pop()}}}AnimationObjectGroup.prototype.isAnimationObjectGroup=true;class AnimationAction{constructor(e,t,n=null,r=t.blendMode){this._mixer=e;this._clip=t;this._localRoot=n;this.blendMode=r;const i=t.tracks,s=i.length,a=new Array(s);const o={endingStart:Gt,endingEnd:Gt};for(let e=0;e!==s;++e){const t=i[e].createInterpolant(null);a[e]=t;t.settings=o}this._interpolantSettings=o;this._interpolants=a;this._propertyBindings=new Array(s);this._cacheIndex=null;this._byClipCacheIndex=null;this._timeScaleInterpolant=null;this._weightInterpolant=null;this.loop=Bt;this._loopCount=-1;this._startTime=null;this.time=0;this.timeScale=1;this._effectiveTimeScale=1;this.weight=1;this._effectiveWeight=1;this.repetitions=Infinity;this.paused=false;this.enabled=true;this.clampWhenFinished=false;this.zeroSlopeAtStart=true;this.zeroSlopeAtEnd=true}play(){this._mixer._activateAction(this);return this}stop(){this._mixer._deactivateAction(this);return this.reset()}reset(){this.paused=false;this.enabled=true;this.time=0;this._loopCount=-1;this._startTime=null;return this.stopFading().stopWarping()}isRunning(){return this.enabled&&!this.paused&&0!==this.timeScale&&null===this._startTime&&this._mixer._isActiveAction(this)}isScheduled(){return this._mixer._isActiveAction(this)}startAt(e){this._startTime=e;return this}setLoop(e,t){this.loop=e;this.repetitions=t;return this}setEffectiveWeight(e){this.weight=e;this._effectiveWeight=this.enabled?e:0;return this.stopFading()}getEffectiveWeight(){return this._effectiveWeight}fadeIn(e){return this._scheduleFading(e,0,1)}fadeOut(e){return this._scheduleFading(e,1,0)}crossFadeFrom(e,t,n){e.fadeOut(t);this.fadeIn(t);if(n){const n=this._clip.duration,r=e._clip.duration,i=r/n,s=n/r;e.warp(1,i,t);this.warp(s,1,t)}return this}crossFadeTo(e,t,n){return e.crossFadeFrom(this,t,n)}stopFading(){const e=this._weightInterpolant;if(null!==e){this._weightInterpolant=null;this._mixer._takeBackControlInterpolant(e)}return this}setEffectiveTimeScale(e){this.timeScale=e;this._effectiveTimeScale=this.paused?0:e;return this.stopWarping()}getEffectiveTimeScale(){return this._effectiveTimeScale}setDuration(e){this.timeScale=this._clip.duration/e;return this.stopWarping()}syncWith(e){this.time=e.time;this.timeScale=e.timeScale;return this.stopWarping()}halt(e){return this.warp(this._effectiveTimeScale,0,e)}warp(e,t,n){const r=this._mixer,i=r.time,s=this.timeScale;let a=this._timeScaleInterpolant;if(null===a){a=r._lendControlInterpolant();this._timeScaleInterpolant=a}const o=a.parameterPositions,l=a.sampleValues;o[0]=i;o[1]=i+n;l[0]=e/s;l[1]=t/s;return this}stopWarping(){const e=this._timeScaleInterpolant;if(null!==e){this._timeScaleInterpolant=null;this._mixer._takeBackControlInterpolant(e)}return this}getMixer(){return this._mixer}getClip(){return this._clip}getRoot(){return this._localRoot||this._mixer._root}_update(e,t,n,r){if(!this.enabled){this._updateWeight(e);return}const i=this._startTime;if(null!==i){const r=(e-i)*n;if(r<0||0===n)return;this._startTime=null;t=n*r}t*=this._updateTimeScale(e);const s=this._updateTime(t);const a=this._updateWeight(e);if(a>0){const e=this._interpolants;const t=this._propertyBindings;switch(this.blendMode){case kt:for(let n=0,r=e.length;n!==r;++n){e[n].evaluate(s);t[n].accumulateAdditive(a)}break;case Ht:default:for(let n=0,i=e.length;n!==i;++n){e[n].evaluate(s);t[n].accumulate(r,a)}}}}_updateWeight(e){let t=0;if(this.enabled){t=this.weight;const n=this._weightInterpolant;if(null!==n){const r=n.evaluate(e)[0];t*=r;if(e>n.parameterPositions[1]){this.stopFading();0===r&&(this.enabled=false)}}}this._effectiveWeight=t;return t}_updateTimeScale(e){let t=0;if(!this.paused){t=this.timeScale;const n=this._timeScaleInterpolant;if(null!==n){const r=n.evaluate(e)[0];t*=r;if(e>n.parameterPositions[1]){this.stopWarping();0===t?this.paused=true:this.timeScale=t}}}this._effectiveTimeScale=t;return t}_updateTime(e){const t=this._clip.duration;const n=this.loop;let r=this.time+e;let i=this._loopCount;const s=n===Vt;if(0===e)return-1===i?r:s&&1===(1&i)?t-r:r;if(n===Dt){if(-1===i){this._loopCount=0;this._setEndings(true,true,false)}e:{if(r>=t)r=t;else{if(!(r<0)){this.time=r;break e}r=0}this.clampWhenFinished?this.paused=true:this.enabled=false;this.time=r;this._mixer.dispatchEvent({type:\"finished\",action:this,direction:e<0?-1:1})}}else{if(-1===i)if(e>=0){i=0;this._setEndings(true,0===this.repetitions,s)}else this._setEndings(0===this.repetitions,true,s);if(r>=t||r<0){const n=Math.floor(r/t);r-=t*n;i+=Math.abs(n);const a=this.repetitions-i;if(a<=0){this.clampWhenFinished?this.paused=true:this.enabled=false;r=e>0?t:0;this.time=r;this._mixer.dispatchEvent({type:\"finished\",action:this,direction:e>0?1:-1})}else{if(1===a){const t=e<0;this._setEndings(t,!t,s)}else this._setEndings(false,false,s);this._loopCount=i;this.time=r;this._mixer.dispatchEvent({type:\"loop\",action:this,loopDelta:n})}}else this.time=r;if(s&&1===(1&i))return t-r}return r}_setEndings(e,t,n){const r=this._interpolantSettings;if(n){r.endingStart=Ft;r.endingEnd=Ft}else{r.endingStart=e?this.zeroSlopeAtStart?Ft:Gt:Ot;r.endingEnd=t?this.zeroSlopeAtEnd?Ft:Gt:Ot}}_scheduleFading(e,t,n){const r=this._mixer,i=r.time;let s=this._weightInterpolant;if(null===s){s=r._lendControlInterpolant();this._weightInterpolant=s}const a=s.parameterPositions,o=s.sampleValues;a[0]=i;o[0]=t;a[1]=i+e;o[1]=n;return this}}class AnimationMixer extends EventDispatcher{constructor(e){super();this._root=e;this._initMemoryManager();this._accuIndex=0;this.time=0;this.timeScale=1}_bindAction(e,t){const n=e._localRoot||this._root,r=e._clip.tracks,i=r.length,s=e._propertyBindings,a=e._interpolants,o=n.uuid,l=this._bindingsByRootAndName;let c=l[o];if(void 0===c){c={};l[o]=c}for(let e=0;e!==i;++e){const i=r[e],l=i.name;let u=c[l];if(void 0!==u)s[e]=u;else{u=s[e];if(void 0!==u){if(null===u._cacheIndex){++u.referenceCount;this._addInactiveBinding(u,o,l)}continue}const r=t&&t._propertyBindings[e].binding.parsedPath;u=new PropertyMixer(PropertyBinding.create(n,l,r),i.ValueTypeName,i.getValueSize());++u.referenceCount;this._addInactiveBinding(u,o,l);s[e]=u}a[e].resultBuffer=u.buffer}}_activateAction(e){if(!this._isActiveAction(e)){if(null===e._cacheIndex){const t=(e._localRoot||this._root).uuid,n=e._clip.uuid,r=this._actionsByClip[n];this._bindAction(e,r&&r.knownActions[0]);this._addInactiveAction(e,n,t)}const t=e._propertyBindings;for(let e=0,n=t.length;e!==n;++e){const n=t[e];if(0===n.useCount++){this._lendBinding(n);n.saveOriginalState()}}this._lendAction(e)}}_deactivateAction(e){if(this._isActiveAction(e)){const t=e._propertyBindings;for(let e=0,n=t.length;e!==n;++e){const n=t[e];if(0===--n.useCount){n.restoreOriginalState();this._takeBackBinding(n)}}this._takeBackAction(e)}}_initMemoryManager(){this._actions=[];this._nActiveActions=0;this._actionsByClip={};this._bindings=[];this._nActiveBindings=0;this._bindingsByRootAndName={};this._controlInterpolants=[];this._nActiveControlInterpolants=0;const e=this;this.stats={actions:{get total(){return e._actions.length},get inUse(){return e._nActiveActions}},bindings:{get total(){return e._bindings.length},get inUse(){return e._nActiveBindings}},controlInterpolants:{get total(){return e._controlInterpolants.length},get inUse(){return e._nActiveControlInterpolants}}}}_isActiveAction(e){const t=e._cacheIndex;return null!==t&&t<this._nActiveActions}_addInactiveAction(e,t,n){const r=this._actions,i=this._actionsByClip;let s=i[t];if(void 0===s){s={knownActions:[e],actionByRoot:{}};e._byClipCacheIndex=0;i[t]=s}else{const t=s.knownActions;e._byClipCacheIndex=t.length;t.push(e)}e._cacheIndex=r.length;r.push(e);s.actionByRoot[n]=e}_removeInactiveAction(e){const t=this._actions,n=t[t.length-1],r=e._cacheIndex;n._cacheIndex=r;t[r]=n;t.pop();e._cacheIndex=null;const i=e._clip.uuid,s=this._actionsByClip,a=s[i],o=a.knownActions,l=o[o.length-1],c=e._byClipCacheIndex;l._byClipCacheIndex=c;o[c]=l;o.pop();e._byClipCacheIndex=null;const u=a.actionByRoot,h=(e._localRoot||this._root).uuid;delete u[h];0===o.length&&delete s[i];this._removeInactiveBindingsForAction(e)}_removeInactiveBindingsForAction(e){const t=e._propertyBindings;for(let e=0,n=t.length;e!==n;++e){const n=t[e];0===--n.referenceCount&&this._removeInactiveBinding(n)}}_lendAction(e){const t=this._actions,n=e._cacheIndex,r=this._nActiveActions++,i=t[r];e._cacheIndex=r;t[r]=e;i._cacheIndex=n;t[n]=i}_takeBackAction(e){const t=this._actions,n=e._cacheIndex,r=--this._nActiveActions,i=t[r];e._cacheIndex=r;t[r]=e;i._cacheIndex=n;t[n]=i}_addInactiveBinding(e,t,n){const r=this._bindingsByRootAndName,i=this._bindings;let s=r[t];if(void 0===s){s={};r[t]=s}s[n]=e;e._cacheIndex=i.length;i.push(e)}_removeInactiveBinding(e){const t=this._bindings,n=e.binding,r=n.rootNode.uuid,i=n.path,s=this._bindingsByRootAndName,a=s[r],o=t[t.length-1],l=e._cacheIndex;o._cacheIndex=l;t[l]=o;t.pop();delete a[i];0===Object.keys(a).length&&delete s[r]}_lendBinding(e){const t=this._bindings,n=e._cacheIndex,r=this._nActiveBindings++,i=t[r];e._cacheIndex=r;t[r]=e;i._cacheIndex=n;t[n]=i}_takeBackBinding(e){const t=this._bindings,n=e._cacheIndex,r=--this._nActiveBindings,i=t[r];e._cacheIndex=r;t[r]=e;i._cacheIndex=n;t[n]=i}_lendControlInterpolant(){const e=this._controlInterpolants,t=this._nActiveControlInterpolants++;let n=e[t];if(void 0===n){n=new LinearInterpolant(new Float32Array(2),new Float32Array(2),1,this._controlInterpolantsResultBuffer);n.__cacheIndex=t;e[t]=n}return n}_takeBackControlInterpolant(e){const t=this._controlInterpolants,n=e.__cacheIndex,r=--this._nActiveControlInterpolants,i=t[r];e.__cacheIndex=r;t[r]=e;i.__cacheIndex=n;t[n]=i}clipAction(e,t,n){const r=t||this._root,i=r.uuid;let s=\"string\"===typeof e?AnimationClip.findByName(r,e):e;const a=null!==s?s.uuid:e;const o=this._actionsByClip[a];let l=null;void 0===n&&(n=null!==s?s.blendMode:Ht);if(void 0!==o){const e=o.actionByRoot[i];if(void 0!==e&&e.blendMode===n)return e;l=o.knownActions[0];null===s&&(s=l._clip)}if(null===s)return null;const c=new AnimationAction(this,s,t,n);this._bindAction(c,l);this._addInactiveAction(c,a,i);return c}existingAction(e,t){const n=t||this._root,r=n.uuid,i=\"string\"===typeof e?AnimationClip.findByName(n,e):e,s=i?i.uuid:e,a=this._actionsByClip[s];return void 0!==a&&a.actionByRoot[r]||null}stopAllAction(){const e=this._actions,t=this._nActiveActions;for(let n=t-1;n>=0;--n)e[n].stop();return this}update(e){e*=this.timeScale;const t=this._actions,n=this._nActiveActions,r=this.time+=e,i=Math.sign(e),s=this._accuIndex^=1;for(let a=0;a!==n;++a){const n=t[a];n._update(r,e,i,s)}const a=this._bindings,o=this._nActiveBindings;for(let e=0;e!==o;++e)a[e].apply(s);return this}setTime(e){this.time=0;for(let e=0;e<this._actions.length;e++)this._actions[e].time=0;return this.update(e)}getRoot(){return this._root}uncacheClip(e){const t=this._actions,n=e.uuid,r=this._actionsByClip,i=r[n];if(void 0!==i){const e=i.knownActions;for(let n=0,r=e.length;n!==r;++n){const r=e[n];this._deactivateAction(r);const i=r._cacheIndex,s=t[t.length-1];r._cacheIndex=null;r._byClipCacheIndex=null;s._cacheIndex=i;t[i]=s;t.pop();this._removeInactiveBindingsForAction(r)}delete r[n]}}uncacheRoot(e){const t=e.uuid,n=this._actionsByClip;for(const e in n){const r=n[e].actionByRoot,i=r[t];if(void 0!==i){this._deactivateAction(i);this._removeInactiveAction(i)}}const r=this._bindingsByRootAndName,i=r[t];if(void 0!==i)for(const e in i){const t=i[e];t.restoreOriginalState();this._removeInactiveBinding(t)}}uncacheAction(e,t){const n=this.existingAction(e,t);if(null!==n){this._deactivateAction(n);this._removeInactiveAction(n)}}}AnimationMixer.prototype._controlInterpolantsResultBuffer=new Float32Array(1);class Uniform{constructor(e){if(\"string\"===typeof e){console.warn(\"THREE.Uniform: Type parameter is no longer needed.\");e=arguments[1]}this.value=e}clone(){return new Uniform(void 0===this.value.clone?this.value:this.value.clone())}}class InstancedInterleavedBuffer extends InterleavedBuffer{constructor(e,t,n=1){super(e,t);this.meshPerAttribute=n}copy(e){super.copy(e);this.meshPerAttribute=e.meshPerAttribute;return this}clone(e){const t=super.clone(e);t.meshPerAttribute=this.meshPerAttribute;return t}toJSON(e){const t=super.toJSON(e);t.isInstancedInterleavedBuffer=true;t.meshPerAttribute=this.meshPerAttribute;return t}}InstancedInterleavedBuffer.prototype.isInstancedInterleavedBuffer=true;class GLBufferAttribute{constructor(e,t,n,r,i){this.buffer=e;this.type=t;this.itemSize=n;this.elementSize=r;this.count=i;this.version=0}set needsUpdate(e){true===e&&this.version++}setBuffer(e){this.buffer=e;return this}setType(e,t){this.type=e;this.elementSize=t;return this}setItemSize(e){this.itemSize=e;return this}setCount(e){this.count=e;return this}}GLBufferAttribute.prototype.isGLBufferAttribute=true;class Raycaster{constructor(e,t,n=0,r=Infinity){this.ray=new Ray(e,t);this.near=n;this.far=r;this.camera=null;this.layers=new Layers;this.params={Mesh:{},Line:{threshold:1},LOD:{},Points:{threshold:1},Sprite:{}}}set(e,t){this.ray.set(e,t)}setFromCamera(e,t){if(t&&t.isPerspectiveCamera){this.ray.origin.setFromMatrixPosition(t.matrixWorld);this.ray.direction.set(e.x,e.y,.5).unproject(t).sub(this.ray.origin).normalize();this.camera=t}else if(t&&t.isOrthographicCamera){this.ray.origin.set(e.x,e.y,(t.near+t.far)/(t.near-t.far)).unproject(t);this.ray.direction.set(0,0,-1).transformDirection(t.matrixWorld);this.camera=t}else console.error(\"THREE.Raycaster: Unsupported camera type: \"+t.type)}intersectObject(e,t=true,n=[]){intersectObject(e,this,n,t);n.sort(ascSort);return n}intersectObjects(e,t=true,n=[]){for(let r=0,i=e.length;r<i;r++)intersectObject(e[r],this,n,t);n.sort(ascSort);return n}}function ascSort(e,t){return e.distance-t.distance}function intersectObject(e,t,n,r){e.layers.test(t.layers)&&e.raycast(t,n);if(true===r){const r=e.children;for(let e=0,i=r.length;e<i;e++)intersectObject(r[e],t,n,true)}}class Spherical{constructor(e=1,t=0,n=0){this.radius=e;this.phi=t;this.theta=n;return this}set(e,t,n){this.radius=e;this.phi=t;this.theta=n;return this}copy(e){this.radius=e.radius;this.phi=e.phi;this.theta=e.theta;return this}makeSafe(){const e=1e-6;this.phi=Math.max(e,Math.min(Math.PI-e,this.phi));return this}setFromVector3(e){return this.setFromCartesianCoords(e.x,e.y,e.z)}setFromCartesianCoords(e,t,n){this.radius=Math.sqrt(e*e+t*t+n*n);if(0===this.radius){this.theta=0;this.phi=0}else{this.theta=Math.atan2(e,n);this.phi=Math.acos(clamp(t/this.radius,-1,1))}return this}clone(){return(new this.constructor).copy(this)}}class Cylindrical{constructor(e=1,t=0,n=0){this.radius=e;this.theta=t;this.y=n;return this}set(e,t,n){this.radius=e;this.theta=t;this.y=n;return this}copy(e){this.radius=e.radius;this.theta=e.theta;this.y=e.y;return this}setFromVector3(e){return this.setFromCartesianCoords(e.x,e.y,e.z)}setFromCartesianCoords(e,t,n){this.radius=Math.sqrt(e*e+n*n);this.theta=Math.atan2(e,n);this.y=t;return this}clone(){return(new this.constructor).copy(this)}}const mc=new Vector2;class Box2{constructor(e=new Vector2(Infinity,Infinity),t=new Vector2(-Infinity,-Infinity)){this.min=e;this.max=t}set(e,t){this.min.copy(e);this.max.copy(t);return this}setFromPoints(e){this.makeEmpty();for(let t=0,n=e.length;t<n;t++)this.expandByPoint(e[t]);return this}setFromCenterAndSize(e,t){const n=mc.copy(t).multiplyScalar(.5);this.min.copy(e).sub(n);this.max.copy(e).add(n);return this}clone(){return(new this.constructor).copy(this)}copy(e){this.min.copy(e.min);this.max.copy(e.max);return this}makeEmpty(){this.min.x=this.min.y=Infinity;this.max.x=this.max.y=-Infinity;return this}isEmpty(){return this.max.x<this.min.x||this.max.y<this.min.y}getCenter(e){return this.isEmpty()?e.set(0,0):e.addVectors(this.min,this.max).multiplyScalar(.5)}getSize(e){return this.isEmpty()?e.set(0,0):e.subVectors(this.max,this.min)}expandByPoint(e){this.min.min(e);this.max.max(e);return this}expandByVector(e){this.min.sub(e);this.max.add(e);return this}expandByScalar(e){this.min.addScalar(-e);this.max.addScalar(e);return this}containsPoint(e){return!(e.x<this.min.x||e.x>this.max.x||e.y<this.min.y||e.y>this.max.y)}containsBox(e){return this.min.x<=e.min.x&&e.max.x<=this.max.x&&this.min.y<=e.min.y&&e.max.y<=this.max.y}getParameter(e,t){return t.set((e.x-this.min.x)/(this.max.x-this.min.x),(e.y-this.min.y)/(this.max.y-this.min.y))}intersectsBox(e){return!(e.max.x<this.min.x||e.min.x>this.max.x||e.max.y<this.min.y||e.min.y>this.max.y)}clampPoint(e,t){return t.copy(e).clamp(this.min,this.max)}distanceToPoint(e){const t=mc.copy(e).clamp(this.min,this.max);return t.sub(e).length()}intersect(e){this.min.max(e.min);this.max.min(e.max);return this}union(e){this.min.min(e.min);this.max.max(e.max);return this}translate(e){this.min.add(e);this.max.add(e);return this}equals(e){return e.min.equals(this.min)&&e.max.equals(this.max)}}Box2.prototype.isBox2=true;const gc=new Vector3;const yc=new Vector3;class Line3{constructor(e=new Vector3,t=new Vector3){this.start=e;this.end=t}set(e,t){this.start.copy(e);this.end.copy(t);return this}copy(e){this.start.copy(e.start);this.end.copy(e.end);return this}getCenter(e){return e.addVectors(this.start,this.end).multiplyScalar(.5)}delta(e){return e.subVectors(this.end,this.start)}distanceSq(){return this.start.distanceToSquared(this.end)}distance(){return this.start.distanceTo(this.end)}at(e,t){return this.delta(t).multiplyScalar(e).add(this.start)}closestPointToPointParameter(e,t){gc.subVectors(e,this.start);yc.subVectors(this.end,this.start);const n=yc.dot(yc);const r=yc.dot(gc);let i=r/n;t&&(i=clamp(i,0,1));return i}closestPointToPoint(e,t,n){const r=this.closestPointToPointParameter(e,t);return this.delta(n).multiplyScalar(r).add(this.start)}applyMatrix4(e){this.start.applyMatrix4(e);this.end.applyMatrix4(e);return this}equals(e){return e.start.equals(this.start)&&e.end.equals(this.end)}clone(){return(new this.constructor).copy(this)}}const vc=new Vector3;class SpotLightHelper extends Object3D{constructor(e,t){super();this.light=e;this.light.updateMatrixWorld();this.matrix=e.matrixWorld;this.matrixAutoUpdate=false;this.color=t;const n=new BufferGeometry;const r=[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 e=0,t=1,n=32;e<n;e++,t++){const i=e/n*Math.PI*2;const s=t/n*Math.PI*2;r.push(Math.cos(i),Math.sin(i),1,Math.cos(s),Math.sin(s),1)}n.setAttribute(\"position\",new Float32BufferAttribute(r,3));const i=new LineBasicMaterial({fog:false,toneMapped:false});this.cone=new LineSegments(n,i);this.add(this.cone);this.update()}dispose(){this.cone.geometry.dispose();this.cone.material.dispose()}update(){this.light.updateMatrixWorld();const e=this.light.distance?this.light.distance:1e3;const t=e*Math.tan(this.light.angle);this.cone.scale.set(t,t,e);vc.setFromMatrixPosition(this.light.target.matrixWorld);this.cone.lookAt(vc);void 0!==this.color?this.cone.material.color.set(this.color):this.cone.material.color.copy(this.light.color)}}const xc=new Vector3;const bc=new Matrix4;const _c=new Matrix4;class SkeletonHelper extends LineSegments{constructor(e){const t=getBoneList(e);const n=new BufferGeometry;const r=[];const i=[];const s=new Color(0,0,1);const a=new Color(0,1,0);for(let e=0;e<t.length;e++){const n=t[e];if(n.parent&&n.parent.isBone){r.push(0,0,0);r.push(0,0,0);i.push(s.r,s.g,s.b);i.push(a.r,a.g,a.b)}}n.setAttribute(\"position\",new Float32BufferAttribute(r,3));n.setAttribute(\"color\",new Float32BufferAttribute(i,3));const o=new LineBasicMaterial({vertexColors:true,depthTest:false,depthWrite:false,toneMapped:false,transparent:true});super(n,o);this.type=\"SkeletonHelper\";this.isSkeletonHelper=true;this.root=e;this.bones=t;this.matrix=e.matrixWorld;this.matrixAutoUpdate=false}updateMatrixWorld(e){const t=this.bones;const n=this.geometry;const r=n.getAttribute(\"position\");_c.copy(this.root.matrixWorld).invert();for(let e=0,n=0;e<t.length;e++){const i=t[e];if(i.parent&&i.parent.isBone){bc.multiplyMatrices(_c,i.matrixWorld);xc.setFromMatrixPosition(bc);r.setXYZ(n,xc.x,xc.y,xc.z);bc.multiplyMatrices(_c,i.parent.matrixWorld);xc.setFromMatrixPosition(bc);r.setXYZ(n+1,xc.x,xc.y,xc.z);n+=2}}n.getAttribute(\"position\").needsUpdate=true;super.updateMatrixWorld(e)}}function getBoneList(e){const t=[];e&&e.isBone&&t.push(e);for(let n=0;n<e.children.length;n++)t.push.apply(t,getBoneList(e.children[n]));return t}class PointLightHelper extends Mesh{constructor(e,t,n){const r=new SphereGeometry(t,4,2);const i=new MeshBasicMaterial({wireframe:true,fog:false,toneMapped:false});super(r,i);this.light=e;this.light.updateMatrixWorld();this.color=n;this.type=\"PointLightHelper\";this.matrix=this.light.matrixWorld;this.matrixAutoUpdate=false;this.update()}dispose(){this.geometry.dispose();this.material.dispose()}update(){void 0!==this.color?this.material.color.set(this.color):this.material.color.copy(this.light.color)}}const Mc=new Vector3;const wc=new Color;const Sc=new Color;class HemisphereLightHelper extends Object3D{constructor(e,t,n){super();this.light=e;this.light.updateMatrixWorld();this.matrix=e.matrixWorld;this.matrixAutoUpdate=false;this.color=n;const r=new OctahedronGeometry(t);r.rotateY(.5*Math.PI);this.material=new MeshBasicMaterial({wireframe:true,fog:false,toneMapped:false});void 0===this.color&&(this.material.vertexColors=true);const i=r.getAttribute(\"position\");const s=new Float32Array(3*i.count);r.setAttribute(\"color\",new BufferAttribute(s,3));this.add(new Mesh(r,this.material));this.update()}dispose(){this.children[0].geometry.dispose();this.children[0].material.dispose()}update(){const e=this.children[0];if(void 0!==this.color)this.material.color.set(this.color);else{const t=e.geometry.getAttribute(\"color\");wc.copy(this.light.color);Sc.copy(this.light.groundColor);for(let e=0,n=t.count;e<n;e++){const r=e<n/2?wc:Sc;t.setXYZ(e,r.r,r.g,r.b)}t.needsUpdate=true}e.lookAt(Mc.setFromMatrixPosition(this.light.matrixWorld).negate())}}class GridHelper extends LineSegments{constructor(e=10,t=10,n=4473924,r=8947848){n=new Color(n);r=new Color(r);const i=t/2;const s=e/t;const a=e/2;const o=[],l=[];for(let e=0,c=0,u=-a;e<=t;e++,u+=s){o.push(-a,0,u,a,0,u);o.push(u,0,-a,u,0,a);const t=e===i?n:r;t.toArray(l,c);c+=3;t.toArray(l,c);c+=3;t.toArray(l,c);c+=3;t.toArray(l,c);c+=3}const c=new BufferGeometry;c.setAttribute(\"position\",new Float32BufferAttribute(o,3));c.setAttribute(\"color\",new Float32BufferAttribute(l,3));const u=new LineBasicMaterial({vertexColors:true,toneMapped:false});super(c,u);this.type=\"GridHelper\"}}class PolarGridHelper extends LineSegments{constructor(e=10,t=16,n=8,r=64,i=4473924,s=8947848){i=new Color(i);s=new Color(s);const a=[];const o=[];for(let n=0;n<=t;n++){const r=n/t*(2*Math.PI);const l=Math.sin(r)*e;const c=Math.cos(r)*e;a.push(0,0,0);a.push(l,0,c);const u=1&n?i:s;o.push(u.r,u.g,u.b);o.push(u.r,u.g,u.b)}for(let t=0;t<=n;t++){const l=1&t?i:s;const c=e-e/n*t;for(let e=0;e<r;e++){let t=e/r*(2*Math.PI);let n=Math.sin(t)*c;let i=Math.cos(t)*c;a.push(n,0,i);o.push(l.r,l.g,l.b);t=(e+1)/r*(2*Math.PI);n=Math.sin(t)*c;i=Math.cos(t)*c;a.push(n,0,i);o.push(l.r,l.g,l.b)}}const l=new BufferGeometry;l.setAttribute(\"position\",new Float32BufferAttribute(a,3));l.setAttribute(\"color\",new Float32BufferAttribute(o,3));const c=new LineBasicMaterial({vertexColors:true,toneMapped:false});super(l,c);this.type=\"PolarGridHelper\"}}const Tc=new Vector3;const Ec=new Vector3;const Ac=new Vector3;class DirectionalLightHelper extends Object3D{constructor(e,t,n){super();this.light=e;this.light.updateMatrixWorld();this.matrix=e.matrixWorld;this.matrixAutoUpdate=false;this.color=n;void 0===t&&(t=1);let r=new BufferGeometry;r.setAttribute(\"position\",new Float32BufferAttribute([-t,t,0,t,t,0,t,-t,0,-t,-t,0,-t,t,0],3));const i=new LineBasicMaterial({fog:false,toneMapped:false});this.lightPlane=new Line(r,i);this.add(this.lightPlane);r=new BufferGeometry;r.setAttribute(\"position\",new Float32BufferAttribute([0,0,0,0,0,1],3));this.targetLine=new Line(r,i);this.add(this.targetLine);this.update()}dispose(){this.lightPlane.geometry.dispose();this.lightPlane.material.dispose();this.targetLine.geometry.dispose();this.targetLine.material.dispose()}update(){Tc.setFromMatrixPosition(this.light.matrixWorld);Ec.setFromMatrixPosition(this.light.target.matrixWorld);Ac.subVectors(Ec,Tc);this.lightPlane.lookAt(Ec);if(void 0!==this.color){this.lightPlane.material.color.set(this.color);this.targetLine.material.color.set(this.color)}else{this.lightPlane.material.color.copy(this.light.color);this.targetLine.material.color.copy(this.light.color)}this.targetLine.lookAt(Ec);this.targetLine.scale.z=Ac.length()}}const Lc=new Vector3;const Cc=new Camera;class CameraHelper extends LineSegments{constructor(e){const t=new BufferGeometry;const n=new LineBasicMaterial({color:16777215,vertexColors:true,toneMapped:false});const r=[];const i=[];const s={};const a=new Color(16755200);const o=new Color(16711680);const l=new Color(43775);const c=new Color(16777215);const u=new Color(3355443);addLine(\"n1\",\"n2\",a);addLine(\"n2\",\"n4\",a);addLine(\"n4\",\"n3\",a);addLine(\"n3\",\"n1\",a);addLine(\"f1\",\"f2\",a);addLine(\"f2\",\"f4\",a);addLine(\"f4\",\"f3\",a);addLine(\"f3\",\"f1\",a);addLine(\"n1\",\"f1\",a);addLine(\"n2\",\"f2\",a);addLine(\"n3\",\"f3\",a);addLine(\"n4\",\"f4\",a);addLine(\"p\",\"n1\",o);addLine(\"p\",\"n2\",o);addLine(\"p\",\"n3\",o);addLine(\"p\",\"n4\",o);addLine(\"u1\",\"u2\",l);addLine(\"u2\",\"u3\",l);addLine(\"u3\",\"u1\",l);addLine(\"c\",\"t\",c);addLine(\"p\",\"c\",u);addLine(\"cn1\",\"cn2\",u);addLine(\"cn3\",\"cn4\",u);addLine(\"cf1\",\"cf2\",u);addLine(\"cf3\",\"cf4\",u);function addLine(e,t,n){addPoint(e,n);addPoint(t,n)}function addPoint(e,t){r.push(0,0,0);i.push(t.r,t.g,t.b);void 0===s[e]&&(s[e]=[]);s[e].push(r.length/3-1)}t.setAttribute(\"position\",new Float32BufferAttribute(r,3));t.setAttribute(\"color\",new Float32BufferAttribute(i,3));super(t,n);this.type=\"CameraHelper\";this.camera=e;this.camera.updateProjectionMatrix&&this.camera.updateProjectionMatrix();this.matrix=e.matrixWorld;this.matrixAutoUpdate=false;this.pointMap=s;this.update()}update(){const e=this.geometry;const t=this.pointMap;const n=1,r=1;Cc.projectionMatrixInverse.copy(this.camera.projectionMatrixInverse);setPoint(\"c\",t,e,Cc,0,0,-1);setPoint(\"t\",t,e,Cc,0,0,1);setPoint(\"n1\",t,e,Cc,-n,-r,-1);setPoint(\"n2\",t,e,Cc,n,-r,-1);setPoint(\"n3\",t,e,Cc,-n,r,-1);setPoint(\"n4\",t,e,Cc,n,r,-1);setPoint(\"f1\",t,e,Cc,-n,-r,1);setPoint(\"f2\",t,e,Cc,n,-r,1);setPoint(\"f3\",t,e,Cc,-n,r,1);setPoint(\"f4\",t,e,Cc,n,r,1);setPoint(\"u1\",t,e,Cc,.7*n,1.1*r,-1);setPoint(\"u2\",t,e,Cc,.7*-n,1.1*r,-1);setPoint(\"u3\",t,e,Cc,0,2*r,-1);setPoint(\"cf1\",t,e,Cc,-n,0,1);setPoint(\"cf2\",t,e,Cc,n,0,1);setPoint(\"cf3\",t,e,Cc,0,-r,1);setPoint(\"cf4\",t,e,Cc,0,r,1);setPoint(\"cn1\",t,e,Cc,-n,0,-1);setPoint(\"cn2\",t,e,Cc,n,0,-1);setPoint(\"cn3\",t,e,Cc,0,-r,-1);setPoint(\"cn4\",t,e,Cc,0,r,-1);e.getAttribute(\"position\").needsUpdate=true}dispose(){this.geometry.dispose();this.material.dispose()}}function setPoint(e,t,n,r,i,s,a){Lc.set(i,s,a).unproject(r);const o=t[e];if(void 0!==o){const e=n.getAttribute(\"position\");for(let t=0,n=o.length;t<n;t++)e.setXYZ(o[t],Lc.x,Lc.y,Lc.z)}}const Rc=new Box3;class BoxHelper extends LineSegments{constructor(e,t=16776960){const n=new Uint16Array([0,1,1,2,2,3,3,0,4,5,5,6,6,7,7,4,0,4,1,5,2,6,3,7]);const r=new Float32Array(24);const i=new BufferGeometry;i.setIndex(new BufferAttribute(n,1));i.setAttribute(\"position\",new BufferAttribute(r,3));super(i,new LineBasicMaterial({color:t,toneMapped:false}));this.object=e;this.type=\"BoxHelper\";this.matrixAutoUpdate=false;this.update()}update(e){void 0!==e&&console.warn(\"THREE.BoxHelper: .update() has no longer arguments.\");void 0!==this.object&&Rc.setFromObject(this.object);if(Rc.isEmpty())return;const t=Rc.min;const n=Rc.max;const r=this.geometry.attributes.position;const i=r.array;i[0]=n.x;i[1]=n.y;i[2]=n.z;i[3]=t.x;i[4]=n.y;i[5]=n.z;i[6]=t.x;i[7]=t.y;i[8]=n.z;i[9]=n.x;i[10]=t.y;i[11]=n.z;i[12]=n.x;i[13]=n.y;i[14]=t.z;i[15]=t.x;i[16]=n.y;i[17]=t.z;i[18]=t.x;i[19]=t.y;i[20]=t.z;i[21]=n.x;i[22]=t.y;i[23]=t.z;r.needsUpdate=true;this.geometry.computeBoundingSphere()}setFromObject(e){this.object=e;this.update();return this}copy(e){LineSegments.prototype.copy.call(this,e);this.object=e.object;return this}}class Box3Helper extends LineSegments{constructor(e,t=16776960){const n=new Uint16Array([0,1,1,2,2,3,3,0,4,5,5,6,6,7,7,4,0,4,1,5,2,6,3,7]);const r=[1,1,1,-1,1,1,-1,-1,1,1,-1,1,1,1,-1,-1,1,-1,-1,-1,-1,1,-1,-1];const i=new BufferGeometry;i.setIndex(new BufferAttribute(n,1));i.setAttribute(\"position\",new Float32BufferAttribute(r,3));super(i,new LineBasicMaterial({color:t,toneMapped:false}));this.box=e;this.type=\"Box3Helper\";this.geometry.computeBoundingSphere()}updateMatrixWorld(e){const t=this.box;if(!t.isEmpty()){t.getCenter(this.position);t.getSize(this.scale);this.scale.multiplyScalar(.5);super.updateMatrixWorld(e)}}}class PlaneHelper extends Line{constructor(e,t=1,n=16776960){const r=n;const i=[1,-1,1,-1,1,1,-1,-1,1,1,1,1,-1,1,1,-1,-1,1,1,-1,1,1,1,1,0,0,1,0,0,0];const s=new BufferGeometry;s.setAttribute(\"position\",new Float32BufferAttribute(i,3));s.computeBoundingSphere();super(s,new LineBasicMaterial({color:r,toneMapped:false}));this.type=\"PlaneHelper\";this.plane=e;this.size=t;const a=[1,1,1,-1,1,1,-1,-1,1,1,1,1,-1,-1,1,1,-1,1];const o=new BufferGeometry;o.setAttribute(\"position\",new Float32BufferAttribute(a,3));o.computeBoundingSphere();this.add(new Mesh(o,new MeshBasicMaterial({color:r,opacity:.2,transparent:true,depthWrite:false,toneMapped:false})))}updateMatrixWorld(e){let t=-this.plane.constant;Math.abs(t)<1e-8&&(t=1e-8);this.scale.set(.5*this.size,.5*this.size,t);this.children[0].material.side=t<0?d:h;this.lookAt(this.plane.normal);super.updateMatrixWorld(e)}}const Pc=new Vector3;let Ic,Dc;class ArrowHelper extends Object3D{constructor(e=new Vector3(0,0,1),t=new Vector3(0,0,0),n=1,r=16776960,i=.2*n,s=.2*i){super();this.type=\"ArrowHelper\";if(void 0===Ic){Ic=new BufferGeometry;Ic.setAttribute(\"position\",new Float32BufferAttribute([0,0,0,0,1,0],3));Dc=new CylinderGeometry(0,.5,1,5,1);Dc.translate(0,-.5,0)}this.position.copy(t);this.line=new Line(Ic,new LineBasicMaterial({color:r,toneMapped:false}));this.line.matrixAutoUpdate=false;this.add(this.line);this.cone=new Mesh(Dc,new MeshBasicMaterial({color:r,toneMapped:false}));this.cone.matrixAutoUpdate=false;this.add(this.cone);this.setDirection(e);this.setLength(n,i,s)}setDirection(e){if(e.y>.99999)this.quaternion.set(0,0,0,1);else if(e.y<-.99999)this.quaternion.set(1,0,0,0);else{Pc.set(e.z,0,-e.x).normalize();const t=Math.acos(e.y);this.quaternion.setFromAxisAngle(Pc,t)}}setLength(e,t=.2*e,n=.2*t){this.line.scale.set(1,Math.max(1e-4,e-t),1);this.line.updateMatrix();this.cone.scale.set(n,t,n);this.cone.position.y=e;this.cone.updateMatrix()}setColor(e){this.line.material.color.set(e);this.cone.material.color.set(e)}copy(e){super.copy(e,false);this.line.copy(e.line);this.cone.copy(e.cone);return this}}class AxesHelper extends LineSegments{constructor(e=1){const t=[0,0,0,e,0,0,0,0,0,0,e,0,0,0,0,0,0,e];const n=[1,0,0,1,.6,0,0,1,0,.6,1,0,0,0,1,0,.6,1];const r=new BufferGeometry;r.setAttribute(\"position\",new Float32BufferAttribute(t,3));r.setAttribute(\"color\",new Float32BufferAttribute(n,3));const i=new LineBasicMaterial({vertexColors:true,toneMapped:false});super(r,i);this.type=\"AxesHelper\"}setColors(e,t,n){const r=new Color;const i=this.geometry.attributes.color.array;r.set(e);r.toArray(i,0);r.toArray(i,3);r.set(t);r.toArray(i,6);r.toArray(i,9);r.set(n);r.toArray(i,12);r.toArray(i,15);this.geometry.attributes.color.needsUpdate=true;return this}dispose(){this.geometry.dispose();this.material.dispose()}}class ShapePath{constructor(){this.type=\"ShapePath\";this.color=new Color;this.subPaths=[];this.currentPath=null}moveTo(e,t){this.currentPath=new Path;this.subPaths.push(this.currentPath);this.currentPath.moveTo(e,t);return this}lineTo(e,t){this.currentPath.lineTo(e,t);return this}quadraticCurveTo(e,t,n,r){this.currentPath.quadraticCurveTo(e,t,n,r);return this}bezierCurveTo(e,t,n,r,i,s){this.currentPath.bezierCurveTo(e,t,n,r,i,s);return this}splineThru(e){this.currentPath.splineThru(e);return this}toShapes(e,t){function toShapesNoHoles(e){const t=[];for(let n=0,r=e.length;n<r;n++){const r=e[n];const i=new Shape;i.curves=r.curves;t.push(i)}return t}function isPointInsidePolygon(e,t){const n=t.length;let r=false;for(let i=n-1,s=0;s<n;i=s++){let n=t[i];let a=t[s];let o=a.x-n.x;let l=a.y-n.y;if(Math.abs(l)>Number.EPSILON){if(l<0){n=t[s];o=-o;a=t[i];l=-l}if(e.y<n.y||e.y>a.y)continue;if(e.y===n.y){if(e.x===n.x)return true}else{const t=l*(e.x-n.x)-o*(e.y-n.y);if(0===t)return true;if(t<0)continue;r=!r}}else{if(e.y!==n.y)continue;if(a.x<=e.x&&e.x<=n.x||n.x<=e.x&&e.x<=a.x)return true}}return r}const n=ShapeUtils.isClockWise;const r=this.subPaths;if(0===r.length)return[];if(true===t)return toShapesNoHoles(r);let i,s,a;const o=[];if(1===r.length){s=r[0];a=new Shape;a.curves=s.curves;o.push(a);return o}let l=!n(r[0].getPoints());l=e?!l:l;const c=[];const u=[];let h=[];let d=0;let p;u[d]=void 0;h[d]=[];for(let t=0,a=r.length;t<a;t++){s=r[t];p=s.getPoints();i=n(p);i=e?!i:i;if(i){!l&&u[d]&&d++;u[d]={s:new Shape,p:p};u[d].s.curves=s.curves;l&&d++;h[d]=[]}else h[d].push({h:s,p:p[0]})}if(!u[0])return toShapesNoHoles(r);if(u.length>1){let e=false;const t=[];for(let e=0,t=u.length;e<t;e++)c[e]=[];for(let n=0,r=u.length;n<r;n++){const r=h[n];for(let i=0;i<r.length;i++){const s=r[i];let a=true;for(let r=0;r<u.length;r++)if(isPointInsidePolygon(s.p,u[r].p)){n!==r&&t.push({froms:n,tos:r,hole:i});if(a){a=false;c[r].push(s)}else e=true}a&&c[n].push(s)}}t.length>0&&(e||(h=c))}let f;for(let e=0,t=u.length;e<t;e++){a=u[e].s;o.push(a);f=h[e];for(let e=0,t=f.length;e<t;e++)a.holes.push(f[e].h)}return o}}const Bc=new Float32Array(1);const Vc=new Int32Array(Bc.buffer);class DataUtils{static toHalfFloat(e){if(e>65504){console.warn(\"THREE.DataUtils.toHalfFloat(): value exceeds 65504.\");e=65504}Bc[0]=e;const t=Vc[0];let n=t>>16&32768;let r=t>>12&2047;const i=t>>23&255;if(i<103)return n;if(i>142){n|=31744;n|=(255==i?0:1)&&8388607&t;return n}if(i<113){r|=2048;n|=(r>>114-i)+(r>>113-i&1);return n}n|=i-112<<10|r>>1;n+=1&r;return n}}const Nc=0;const Uc=1;const zc=0;const Gc=1;const Fc=2;function MeshFaceMaterial(e){console.warn(\"THREE.MeshFaceMaterial has been removed. Use an Array instead.\");return e}function MultiMaterial(e=[]){console.warn(\"THREE.MultiMaterial has been removed. Use an Array instead.\");e.isMultiMaterial=true;e.materials=e;e.clone=function(){return e.slice()};return e}function PointCloud(e,t){console.warn(\"THREE.PointCloud has been renamed to THREE.Points.\");return new Points(e,t)}function Particle(e){console.warn(\"THREE.Particle has been renamed to THREE.Sprite.\");return new Sprite(e)}function ParticleSystem(e,t){console.warn(\"THREE.ParticleSystem has been renamed to THREE.Points.\");return new Points(e,t)}function PointCloudMaterial(e){console.warn(\"THREE.PointCloudMaterial has been renamed to THREE.PointsMaterial.\");return new PointsMaterial(e)}function ParticleBasicMaterial(e){console.warn(\"THREE.ParticleBasicMaterial has been renamed to THREE.PointsMaterial.\");return new PointsMaterial(e)}function ParticleSystemMaterial(e){console.warn(\"THREE.ParticleSystemMaterial has been renamed to THREE.PointsMaterial.\");return new PointsMaterial(e)}function Vertex(e,t,n){console.warn(\"THREE.Vertex has been removed. Use THREE.Vector3 instead.\");return new Vector3(e,t,n)}function DynamicBufferAttribute(e,t){console.warn(\"THREE.DynamicBufferAttribute has been removed. Use new THREE.BufferAttribute().setUsage( THREE.DynamicDrawUsage ) instead.\");return new BufferAttribute(e,t).setUsage(yn)}function Int8Attribute(e,t){console.warn(\"THREE.Int8Attribute has been removed. Use new THREE.Int8BufferAttribute() instead.\");return new Int8BufferAttribute(e,t)}function Uint8Attribute(e,t){console.warn(\"THREE.Uint8Attribute has been removed. Use new THREE.Uint8BufferAttribute() instead.\");return new Uint8BufferAttribute(e,t)}function Uint8ClampedAttribute(e,t){console.warn(\"THREE.Uint8ClampedAttribute has been removed. Use new THREE.Uint8ClampedBufferAttribute() instead.\");return new Uint8ClampedBufferAttribute(e,t)}function Int16Attribute(e,t){console.warn(\"THREE.Int16Attribute has been removed. Use new THREE.Int16BufferAttribute() instead.\");return new Int16BufferAttribute(e,t)}function Uint16Attribute(e,t){console.warn(\"THREE.Uint16Attribute has been removed. Use new THREE.Uint16BufferAttribute() instead.\");return new Uint16BufferAttribute(e,t)}function Int32Attribute(e,t){console.warn(\"THREE.Int32Attribute has been removed. Use new THREE.Int32BufferAttribute() instead.\");return new Int32BufferAttribute(e,t)}function Uint32Attribute(e,t){console.warn(\"THREE.Uint32Attribute has been removed. Use new THREE.Uint32BufferAttribute() instead.\");return new Uint32BufferAttribute(e,t)}function Float32Attribute(e,t){console.warn(\"THREE.Float32Attribute has been removed. Use new THREE.Float32BufferAttribute() instead.\");return new Float32BufferAttribute(e,t)}function Float64Attribute(e,t){console.warn(\"THREE.Float64Attribute has been removed. Use new THREE.Float64BufferAttribute() instead.\");return new Float64BufferAttribute(e,t)}Curve.create=function(e,t){console.log(\"THREE.Curve.create() has been deprecated\");e.prototype=Object.create(Curve.prototype);e.prototype.constructor=e;e.prototype.getPoint=t;return e};Path.prototype.fromPoints=function(e){console.warn(\"THREE.Path: .fromPoints() has been renamed to .setFromPoints().\");return this.setFromPoints(e)};function AxisHelper(e){console.warn(\"THREE.AxisHelper has been renamed to THREE.AxesHelper.\");return new AxesHelper(e)}function BoundingBoxHelper(e,t){console.warn(\"THREE.BoundingBoxHelper has been deprecated. Creating a THREE.BoxHelper instead.\");return new BoxHelper(e,t)}function EdgesHelper(e,t){console.warn(\"THREE.EdgesHelper has been removed. Use THREE.EdgesGeometry instead.\");return new LineSegments(new EdgesGeometry(e.geometry),new LineBasicMaterial({color:void 0!==t?t:16777215}))}GridHelper.prototype.setColors=function(){console.error(\"THREE.GridHelper: setColors() has been deprecated, pass them in the constructor instead.\")};SkeletonHelper.prototype.update=function(){console.error(\"THREE.SkeletonHelper: update() no longer needs to be called.\")};function WireframeHelper(e,t){console.warn(\"THREE.WireframeHelper has been removed. Use THREE.WireframeGeometry instead.\");return new LineSegments(new WireframeGeometry(e.geometry),new LineBasicMaterial({color:void 0!==t?t:16777215}))}Loader.prototype.extractUrlBase=function(e){console.warn(\"THREE.Loader: .extractUrlBase() has been deprecated. Use THREE.LoaderUtils.extractUrlBase() instead.\");return LoaderUtils.extractUrlBase(e)};Loader.Handlers={add:function(){console.error(\"THREE.Loader: Handlers.add() has been removed. Use LoadingManager.addHandler() instead.\")},get:function(){console.error(\"THREE.Loader: Handlers.get() has been removed. Use LoadingManager.getHandler() instead.\")}};function XHRLoader(e){console.warn(\"THREE.XHRLoader has been renamed to THREE.FileLoader.\");return new FileLoader(e)}function BinaryTextureLoader(e){console.warn(\"THREE.BinaryTextureLoader has been renamed to THREE.DataTextureLoader.\");return new DataTextureLoader(e)}Box2.prototype.center=function(e){console.warn(\"THREE.Box2: .center() has been renamed to .getCenter().\");return this.getCenter(e)};Box2.prototype.empty=function(){console.warn(\"THREE.Box2: .empty() has been renamed to .isEmpty().\");return this.isEmpty()};Box2.prototype.isIntersectionBox=function(e){console.warn(\"THREE.Box2: .isIntersectionBox() has been renamed to .intersectsBox().\");return this.intersectsBox(e)};Box2.prototype.size=function(e){console.warn(\"THREE.Box2: .size() has been renamed to .getSize().\");return this.getSize(e)};Box3.prototype.center=function(e){console.warn(\"THREE.Box3: .center() has been renamed to .getCenter().\");return this.getCenter(e)};Box3.prototype.empty=function(){console.warn(\"THREE.Box3: .empty() has been renamed to .isEmpty().\");return this.isEmpty()};Box3.prototype.isIntersectionBox=function(e){console.warn(\"THREE.Box3: .isIntersectionBox() has been renamed to .intersectsBox().\");return this.intersectsBox(e)};Box3.prototype.isIntersectionSphere=function(e){console.warn(\"THREE.Box3: .isIntersectionSphere() has been renamed to .intersectsSphere().\");return this.intersectsSphere(e)};Box3.prototype.size=function(e){console.warn(\"THREE.Box3: .size() has been renamed to .getSize().\");return this.getSize(e)};Sphere.prototype.empty=function(){console.warn(\"THREE.Sphere: .empty() has been renamed to .isEmpty().\");return this.isEmpty()};Frustum.prototype.setFromMatrix=function(e){console.warn(\"THREE.Frustum: .setFromMatrix() has been renamed to .setFromProjectionMatrix().\");return this.setFromProjectionMatrix(e)};Line3.prototype.center=function(e){console.warn(\"THREE.Line3: .center() has been renamed to .getCenter().\");return this.getCenter(e)};Matrix3.prototype.flattenToArrayOffset=function(e,t){console.warn(\"THREE.Matrix3: .flattenToArrayOffset() has been deprecated. Use .toArray() instead.\");return this.toArray(e,t)};Matrix3.prototype.multiplyVector3=function(e){console.warn(\"THREE.Matrix3: .multiplyVector3() has been removed. Use vector.applyMatrix3( matrix ) instead.\");return e.applyMatrix3(this)};Matrix3.prototype.multiplyVector3Array=function(){console.error(\"THREE.Matrix3: .multiplyVector3Array() has been removed.\")};Matrix3.prototype.applyToBufferAttribute=function(e){console.warn(\"THREE.Matrix3: .applyToBufferAttribute() has been removed. Use attribute.applyMatrix3( matrix ) instead.\");return e.applyMatrix3(this)};Matrix3.prototype.applyToVector3Array=function(){console.error(\"THREE.Matrix3: .applyToVector3Array() has been removed.\")};Matrix3.prototype.getInverse=function(e){console.warn(\"THREE.Matrix3: .getInverse() has been removed. Use matrixInv.copy( matrix ).invert(); instead.\");return this.copy(e).invert()};Matrix4.prototype.extractPosition=function(e){console.warn(\"THREE.Matrix4: .extractPosition() has been renamed to .copyPosition().\");return this.copyPosition(e)};Matrix4.prototype.flattenToArrayOffset=function(e,t){console.warn(\"THREE.Matrix4: .flattenToArrayOffset() has been deprecated. Use .toArray() instead.\");return this.toArray(e,t)};Matrix4.prototype.getPosition=function(){console.warn(\"THREE.Matrix4: .getPosition() has been removed. Use Vector3.setFromMatrixPosition( matrix ) instead.\");return(new Vector3).setFromMatrixColumn(this,3)};Matrix4.prototype.setRotationFromQuaternion=function(e){console.warn(\"THREE.Matrix4: .setRotationFromQuaternion() has been renamed to .makeRotationFromQuaternion().\");return this.makeRotationFromQuaternion(e)};Matrix4.prototype.multiplyToArray=function(){console.warn(\"THREE.Matrix4: .multiplyToArray() has been removed.\")};Matrix4.prototype.multiplyVector3=function(e){console.warn(\"THREE.Matrix4: .multiplyVector3() has been removed. Use vector.applyMatrix4( matrix ) instead.\");return e.applyMatrix4(this)};Matrix4.prototype.multiplyVector4=function(e){console.warn(\"THREE.Matrix4: .multiplyVector4() has been removed. Use vector.applyMatrix4( matrix ) instead.\");return e.applyMatrix4(this)};Matrix4.prototype.multiplyVector3Array=function(){console.error(\"THREE.Matrix4: .multiplyVector3Array() has been removed.\")};Matrix4.prototype.rotateAxis=function(e){console.warn(\"THREE.Matrix4: .rotateAxis() has been removed. Use Vector3.transformDirection( matrix ) instead.\");e.transformDirection(this)};Matrix4.prototype.crossVector=function(e){console.warn(\"THREE.Matrix4: .crossVector() has been removed. Use vector.applyMatrix4( matrix ) instead.\");return e.applyMatrix4(this)};Matrix4.prototype.translate=function(){console.error(\"THREE.Matrix4: .translate() has been removed.\")};Matrix4.prototype.rotateX=function(){console.error(\"THREE.Matrix4: .rotateX() has been removed.\")};Matrix4.prototype.rotateY=function(){console.error(\"THREE.Matrix4: .rotateY() has been removed.\")};Matrix4.prototype.rotateZ=function(){console.error(\"THREE.Matrix4: .rotateZ() has been removed.\")};Matrix4.prototype.rotateByAxis=function(){console.error(\"THREE.Matrix4: .rotateByAxis() has been removed.\")};Matrix4.prototype.applyToBufferAttribute=function(e){console.warn(\"THREE.Matrix4: .applyToBufferAttribute() has been removed. Use attribute.applyMatrix4( matrix ) instead.\");return e.applyMatrix4(this)};Matrix4.prototype.applyToVector3Array=function(){console.error(\"THREE.Matrix4: .applyToVector3Array() has been removed.\")};Matrix4.prototype.makeFrustum=function(e,t,n,r,i,s){console.warn(\"THREE.Matrix4: .makeFrustum() has been removed. Use .makePerspective( left, right, top, bottom, near, far ) instead.\");return this.makePerspective(e,t,r,n,i,s)};Matrix4.prototype.getInverse=function(e){console.warn(\"THREE.Matrix4: .getInverse() has been removed. Use matrixInv.copy( matrix ).invert(); instead.\");return this.copy(e).invert()};Plane.prototype.isIntersectionLine=function(e){console.warn(\"THREE.Plane: .isIntersectionLine() has been renamed to .intersectsLine().\");return this.intersectsLine(e)};Quaternion.prototype.multiplyVector3=function(e){console.warn(\"THREE.Quaternion: .multiplyVector3() has been removed. Use is now vector.applyQuaternion( quaternion ) instead.\");return e.applyQuaternion(this)};Quaternion.prototype.inverse=function(){console.warn(\"THREE.Quaternion: .inverse() has been renamed to invert().\");return this.invert()};Ray.prototype.isIntersectionBox=function(e){console.warn(\"THREE.Ray: .isIntersectionBox() has been renamed to .intersectsBox().\");return this.intersectsBox(e)};Ray.prototype.isIntersectionPlane=function(e){console.warn(\"THREE.Ray: .isIntersectionPlane() has been renamed to .intersectsPlane().\");return this.intersectsPlane(e)};Ray.prototype.isIntersectionSphere=function(e){console.warn(\"THREE.Ray: .isIntersectionSphere() has been renamed to .intersectsSphere().\");return this.intersectsSphere(e)};Triangle.prototype.area=function(){console.warn(\"THREE.Triangle: .area() has been renamed to .getArea().\");return this.getArea()};Triangle.prototype.barycoordFromPoint=function(e,t){console.warn(\"THREE.Triangle: .barycoordFromPoint() has been renamed to .getBarycoord().\");return this.getBarycoord(e,t)};Triangle.prototype.midpoint=function(e){console.warn(\"THREE.Triangle: .midpoint() has been renamed to .getMidpoint().\");return this.getMidpoint(e)};Triangle.prototypenormal=function(e){console.warn(\"THREE.Triangle: .normal() has been renamed to .getNormal().\");return this.getNormal(e)};Triangle.prototype.plane=function(e){console.warn(\"THREE.Triangle: .plane() has been renamed to .getPlane().\");return this.getPlane(e)};Triangle.barycoordFromPoint=function(e,t,n,r,i){console.warn(\"THREE.Triangle: .barycoordFromPoint() has been renamed to .getBarycoord().\");return Triangle.getBarycoord(e,t,n,r,i)};Triangle.normal=function(e,t,n,r){console.warn(\"THREE.Triangle: .normal() has been renamed to .getNormal().\");return Triangle.getNormal(e,t,n,r)};Shape.prototype.extractAllPoints=function(e){console.warn(\"THREE.Shape: .extractAllPoints() has been removed. Use .extractPoints() instead.\");return this.extractPoints(e)};Shape.prototype.extrude=function(e){console.warn(\"THREE.Shape: .extrude() has been removed. Use ExtrudeGeometry() instead.\");return new ExtrudeGeometry(this,e)};Shape.prototype.makeGeometry=function(e){console.warn(\"THREE.Shape: .makeGeometry() has been removed. Use ShapeGeometry() instead.\");return new ShapeGeometry(this,e)};Vector2.prototype.fromAttribute=function(e,t,n){console.warn(\"THREE.Vector2: .fromAttribute() has been renamed to .fromBufferAttribute().\");return this.fromBufferAttribute(e,t,n)};Vector2.prototype.distanceToManhattan=function(e){console.warn(\"THREE.Vector2: .distanceToManhattan() has been renamed to .manhattanDistanceTo().\");return this.manhattanDistanceTo(e)};Vector2.prototype.lengthManhattan=function(){console.warn(\"THREE.Vector2: .lengthManhattan() has been renamed to .manhattanLength().\");return this.manhattanLength()};Vector3.prototype.setEulerFromRotationMatrix=function(){console.error(\"THREE.Vector3: .setEulerFromRotationMatrix() has been removed. Use Euler.setFromRotationMatrix() instead.\")};Vector3.prototype.setEulerFromQuaternion=function(){console.error(\"THREE.Vector3: .setEulerFromQuaternion() has been removed. Use Euler.setFromQuaternion() instead.\")};Vector3.prototype.getPositionFromMatrix=function(e){console.warn(\"THREE.Vector3: .getPositionFromMatrix() has been renamed to .setFromMatrixPosition().\");return this.setFromMatrixPosition(e)};Vector3.prototype.getScaleFromMatrix=function(e){console.warn(\"THREE.Vector3: .getScaleFromMatrix() has been renamed to .setFromMatrixScale().\");return this.setFromMatrixScale(e)};Vector3.prototype.getColumnFromMatrix=function(e,t){console.warn(\"THREE.Vector3: .getColumnFromMatrix() has been renamed to .setFromMatrixColumn().\");return this.setFromMatrixColumn(t,e)};Vector3.prototype.applyProjection=function(e){console.warn(\"THREE.Vector3: .applyProjection() has been removed. Use .applyMatrix4( m ) instead.\");return this.applyMatrix4(e)};Vector3.prototype.fromAttribute=function(e,t,n){console.warn(\"THREE.Vector3: .fromAttribute() has been renamed to .fromBufferAttribute().\");return this.fromBufferAttribute(e,t,n)};Vector3.prototype.distanceToManhattan=function(e){console.warn(\"THREE.Vector3: .distanceToManhattan() has been renamed to .manhattanDistanceTo().\");return this.manhattanDistanceTo(e)};Vector3.prototype.lengthManhattan=function(){console.warn(\"THREE.Vector3: .lengthManhattan() has been renamed to .manhattanLength().\");return this.manhattanLength()};Vector4.prototype.fromAttribute=function(e,t,n){console.warn(\"THREE.Vector4: .fromAttribute() has been renamed to .fromBufferAttribute().\");return this.fromBufferAttribute(e,t,n)};Vector4.prototype.lengthManhattan=function(){console.warn(\"THREE.Vector4: .lengthManhattan() has been renamed to .manhattanLength().\");return this.manhattanLength()};Object3D.prototype.getChildByName=function(e){console.warn(\"THREE.Object3D: .getChildByName() has been renamed to .getObjectByName().\");return this.getObjectByName(e)};Object3D.prototype.renderDepth=function(){console.warn(\"THREE.Object3D: .renderDepth has been removed. Use .renderOrder, instead.\")};Object3D.prototype.translate=function(e,t){console.warn(\"THREE.Object3D: .translate() has been removed. Use .translateOnAxis( axis, distance ) instead.\");return this.translateOnAxis(t,e)};Object3D.prototype.getWorldRotation=function(){console.error(\"THREE.Object3D: .getWorldRotation() has been removed. Use THREE.Object3D.getWorldQuaternion( target ) instead.\")};Object3D.prototype.applyMatrix=function(e){console.warn(\"THREE.Object3D: .applyMatrix() has been renamed to .applyMatrix4().\");return this.applyMatrix4(e)};Object.defineProperties(Object3D.prototype,{eulerOrder:{get:function(){console.warn(\"THREE.Object3D: .eulerOrder is now .rotation.order.\");return this.rotation.order},set:function(e){console.warn(\"THREE.Object3D: .eulerOrder is now .rotation.order.\");this.rotation.order=e}},useQuaternion:{get:function(){console.warn(\"THREE.Object3D: .useQuaternion has been removed. The library now uses quaternions by default.\")},set:function(){console.warn(\"THREE.Object3D: .useQuaternion has been removed. The library now uses quaternions by default.\")}}});Mesh.prototype.setDrawMode=function(){console.error(\"THREE.Mesh: .setDrawMode() has been removed. The renderer now always assumes THREE.TrianglesDrawMode. Transform your geometry via BufferGeometryUtils.toTrianglesDrawMode() if necessary.\")};Object.defineProperties(Mesh.prototype,{drawMode:{get:function(){console.error(\"THREE.Mesh: .drawMode has been removed. The renderer now always assumes THREE.TrianglesDrawMode.\");return Wt},set:function(){console.error(\"THREE.Mesh: .drawMode has been removed. The renderer now always assumes THREE.TrianglesDrawMode. Transform your geometry via BufferGeometryUtils.toTrianglesDrawMode() if necessary.\")}}});SkinnedMesh.prototype.initBones=function(){console.error(\"THREE.SkinnedMesh: initBones() has been removed.\")};PerspectiveCamera.prototype.setLens=function(e,t){console.warn(\"THREE.PerspectiveCamera.setLens is deprecated. Use .setFocalLength and .filmGauge for a photographic setup.\");void 0!==t&&(this.filmGauge=t);this.setFocalLength(e)};Object.defineProperties(Light.prototype,{onlyShadow:{set:function(){console.warn(\"THREE.Light: .onlyShadow has been removed.\")}},shadowCameraFov:{set:function(e){console.warn(\"THREE.Light: .shadowCameraFov is now .shadow.camera.fov.\");this.shadow.camera.fov=e}},shadowCameraLeft:{set:function(e){console.warn(\"THREE.Light: .shadowCameraLeft is now .shadow.camera.left.\");this.shadow.camera.left=e}},shadowCameraRight:{set:function(e){console.warn(\"THREE.Light: .shadowCameraRight is now .shadow.camera.right.\");this.shadow.camera.right=e}},shadowCameraTop:{set:function(e){console.warn(\"THREE.Light: .shadowCameraTop is now .shadow.camera.top.\");this.shadow.camera.top=e}},shadowCameraBottom:{set:function(e){console.warn(\"THREE.Light: .shadowCameraBottom is now .shadow.camera.bottom.\");this.shadow.camera.bottom=e}},shadowCameraNear:{set:function(e){console.warn(\"THREE.Light: .shadowCameraNear is now .shadow.camera.near.\");this.shadow.camera.near=e}},shadowCameraFar:{set:function(e){console.warn(\"THREE.Light: .shadowCameraFar is now .shadow.camera.far.\");this.shadow.camera.far=e}},shadowCameraVisible:{set:function(){console.warn(\"THREE.Light: .shadowCameraVisible has been removed. Use new THREE.CameraHelper( light.shadow.camera ) instead.\")}},shadowBias:{set:function(e){console.warn(\"THREE.Light: .shadowBias is now .shadow.bias.\");this.shadow.bias=e}},shadowDarkness:{set:function(){console.warn(\"THREE.Light: .shadowDarkness has been removed.\")}},shadowMapWidth:{set:function(e){console.warn(\"THREE.Light: .shadowMapWidth is now .shadow.mapSize.width.\");this.shadow.mapSize.width=e}},shadowMapHeight:{set:function(e){console.warn(\"THREE.Light: .shadowMapHeight is now .shadow.mapSize.height.\");this.shadow.mapSize.height=e}}});Object.defineProperties(BufferAttribute.prototype,{length:{get:function(){console.warn(\"THREE.BufferAttribute: .length has been deprecated. Use .count instead.\");return this.array.length}},dynamic:{get:function(){console.warn(\"THREE.BufferAttribute: .dynamic has been deprecated. Use .usage instead.\");return this.usage===yn},set:function(){console.warn(\"THREE.BufferAttribute: .dynamic has been deprecated. Use .usage instead.\");this.setUsage(yn)}}});BufferAttribute.prototype.setDynamic=function(e){console.warn(\"THREE.BufferAttribute: .setDynamic() has been deprecated. Use .setUsage() instead.\");this.setUsage(true===e?yn:gn);return this};BufferAttribute.prototype.copyIndicesArray=function(){console.error(\"THREE.BufferAttribute: .copyIndicesArray() has been removed.\")},BufferAttribute.prototype.setArray=function(){console.error(\"THREE.BufferAttribute: .setArray has been removed. Use BufferGeometry .setAttribute to replace/resize attribute buffers\")};BufferGeometry.prototype.addIndex=function(e){console.warn(\"THREE.BufferGeometry: .addIndex() has been renamed to .setIndex().\");this.setIndex(e)};BufferGeometry.prototype.addAttribute=function(e,t){console.warn(\"THREE.BufferGeometry: .addAttribute() has been renamed to .setAttribute().\");if(!(t&&t.isBufferAttribute)&&!(t&&t.isInterleavedBufferAttribute)){console.warn(\"THREE.BufferGeometry: .addAttribute() now expects ( name, attribute ).\");return this.setAttribute(e,new BufferAttribute(arguments[1],arguments[2]))}if(\"index\"===e){console.warn(\"THREE.BufferGeometry.addAttribute: Use .setIndex() for index attribute.\");this.setIndex(t);return this}return this.setAttribute(e,t)};BufferGeometry.prototype.addDrawCall=function(e,t,n){void 0!==n&&console.warn(\"THREE.BufferGeometry: .addDrawCall() no longer supports indexOffset.\");console.warn(\"THREE.BufferGeometry: .addDrawCall() is now .addGroup().\");this.addGroup(e,t)};BufferGeometry.prototype.clearDrawCalls=function(){console.warn(\"THREE.BufferGeometry: .clearDrawCalls() is now .clearGroups().\");this.clearGroups()};BufferGeometry.prototype.computeOffsets=function(){console.warn(\"THREE.BufferGeometry: .computeOffsets() has been removed.\")};BufferGeometry.prototype.removeAttribute=function(e){console.warn(\"THREE.BufferGeometry: .removeAttribute() has been renamed to .deleteAttribute().\");return this.deleteAttribute(e)};BufferGeometry.prototype.applyMatrix=function(e){console.warn(\"THREE.BufferGeometry: .applyMatrix() has been renamed to .applyMatrix4().\");return this.applyMatrix4(e)};Object.defineProperties(BufferGeometry.prototype,{drawcalls:{get:function(){console.error(\"THREE.BufferGeometry: .drawcalls has been renamed to .groups.\");return this.groups}},offsets:{get:function(){console.warn(\"THREE.BufferGeometry: .offsets has been renamed to .groups.\");return this.groups}}});InterleavedBuffer.prototype.setDynamic=function(e){console.warn(\"THREE.InterleavedBuffer: .setDynamic() has been deprecated. Use .setUsage() instead.\");this.setUsage(true===e?yn:gn);return this};InterleavedBuffer.prototype.setArray=function(){console.error(\"THREE.InterleavedBuffer: .setArray has been removed. Use BufferGeometry .setAttribute to replace/resize attribute buffers\")};ExtrudeGeometry.prototype.getArrays=function(){console.error(\"THREE.ExtrudeGeometry: .getArrays() has been removed.\")};ExtrudeGeometry.prototype.addShapeList=function(){console.error(\"THREE.ExtrudeGeometry: .addShapeList() has been removed.\")};ExtrudeGeometry.prototype.addShape=function(){console.error(\"THREE.ExtrudeGeometry: .addShape() has been removed.\")};Scene.prototype.dispose=function(){console.error(\"THREE.Scene: .dispose() has been removed.\")};Uniform.prototype.onUpdate=function(){console.warn(\"THREE.Uniform: .onUpdate() has been removed. Use object.onBeforeRender() instead.\");return this};Object.defineProperties(Material.prototype,{wrapAround:{get:function(){console.warn(\"THREE.Material: .wrapAround has been removed.\")},set:function(){console.warn(\"THREE.Material: .wrapAround has been removed.\")}},overdraw:{get:function(){console.warn(\"THREE.Material: .overdraw has been removed.\")},set:function(){console.warn(\"THREE.Material: .overdraw has been removed.\")}},wrapRGB:{get:function(){console.warn(\"THREE.Material: .wrapRGB has been removed.\");return new Color}},shading:{get:function(){console.error(\"THREE.\"+this.type+\": .shading has been removed. Use the boolean .flatShading instead.\")},set:function(e){console.warn(\"THREE.\"+this.type+\": .shading has been removed. Use the boolean .flatShading instead.\");this.flatShading=e===f}},stencilMask:{get:function(){console.warn(\"THREE.\"+this.type+\": .stencilMask has been removed. Use .stencilFuncMask instead.\");return this.stencilFuncMask},set:function(e){console.warn(\"THREE.\"+this.type+\": .stencilMask has been removed. Use .stencilFuncMask instead.\");this.stencilFuncMask=e}},vertexTangents:{get:function(){console.warn(\"THREE.\"+this.type+\": .vertexTangents has been removed.\")},set:function(){console.warn(\"THREE.\"+this.type+\": .vertexTangents has been removed.\")}}});Object.defineProperties(ShaderMaterial.prototype,{derivatives:{get:function(){console.warn(\"THREE.ShaderMaterial: .derivatives has been moved to .extensions.derivatives.\");return this.extensions.derivatives},set:function(e){console.warn(\"THREE. ShaderMaterial: .derivatives has been moved to .extensions.derivatives.\");this.extensions.derivatives=e}}});WebGLRenderer.prototype.clearTarget=function(e,t,n,r){console.warn(\"THREE.WebGLRenderer: .clearTarget() has been deprecated. Use .setRenderTarget() and .clear() instead.\");this.setRenderTarget(e);this.clear(t,n,r)};WebGLRenderer.prototype.animate=function(e){console.warn(\"THREE.WebGLRenderer: .animate() is now .setAnimationLoop().\");this.setAnimationLoop(e)};WebGLRenderer.prototype.getCurrentRenderTarget=function(){console.warn(\"THREE.WebGLRenderer: .getCurrentRenderTarget() is now .getRenderTarget().\");return this.getRenderTarget()};WebGLRenderer.prototype.getMaxAnisotropy=function(){console.warn(\"THREE.WebGLRenderer: .getMaxAnisotropy() is now .capabilities.getMaxAnisotropy().\");return this.capabilities.getMaxAnisotropy()};WebGLRenderer.prototype.getPrecision=function(){console.warn(\"THREE.WebGLRenderer: .getPrecision() is now .capabilities.precision.\");return this.capabilities.precision};WebGLRenderer.prototype.resetGLState=function(){console.warn(\"THREE.WebGLRenderer: .resetGLState() is now .state.reset().\");return this.state.reset()};WebGLRenderer.prototype.supportsFloatTextures=function(){console.warn(\"THREE.WebGLRenderer: .supportsFloatTextures() is now .extensions.get( 'OES_texture_float' ).\");return this.extensions.get(\"OES_texture_float\")};WebGLRenderer.prototype.supportsHalfFloatTextures=function(){console.warn(\"THREE.WebGLRenderer: .supportsHalfFloatTextures() is now .extensions.get( 'OES_texture_half_float' ).\");return this.extensions.get(\"OES_texture_half_float\")};WebGLRenderer.prototype.supportsStandardDerivatives=function(){console.warn(\"THREE.WebGLRenderer: .supportsStandardDerivatives() is now .extensions.get( 'OES_standard_derivatives' ).\");return this.extensions.get(\"OES_standard_derivatives\")};WebGLRenderer.prototype.supportsCompressedTextureS3TC=function(){console.warn(\"THREE.WebGLRenderer: .supportsCompressedTextureS3TC() is now .extensions.get( 'WEBGL_compressed_texture_s3tc' ).\");return this.extensions.get(\"WEBGL_compressed_texture_s3tc\")};WebGLRenderer.prototype.supportsCompressedTexturePVRTC=function(){console.warn(\"THREE.WebGLRenderer: .supportsCompressedTexturePVRTC() is now .extensions.get( 'WEBGL_compressed_texture_pvrtc' ).\");return this.extensions.get(\"WEBGL_compressed_texture_pvrtc\")};WebGLRenderer.prototype.supportsBlendMinMax=function(){console.warn(\"THREE.WebGLRenderer: .supportsBlendMinMax() is now .extensions.get( 'EXT_blend_minmax' ).\");return this.extensions.get(\"EXT_blend_minmax\")};WebGLRenderer.prototype.supportsVertexTextures=function(){console.warn(\"THREE.WebGLRenderer: .supportsVertexTextures() is now .capabilities.vertexTextures.\");return this.capabilities.vertexTextures};WebGLRenderer.prototype.supportsInstancedArrays=function(){console.warn(\"THREE.WebGLRenderer: .supportsInstancedArrays() is now .extensions.get( 'ANGLE_instanced_arrays' ).\");return this.extensions.get(\"ANGLE_instanced_arrays\")};WebGLRenderer.prototype.enableScissorTest=function(e){console.warn(\"THREE.WebGLRenderer: .enableScissorTest() is now .setScissorTest().\");this.setScissorTest(e)};WebGLRenderer.prototype.initMaterial=function(){console.warn(\"THREE.WebGLRenderer: .initMaterial() has been removed.\")};WebGLRenderer.prototype.addPrePlugin=function(){console.warn(\"THREE.WebGLRenderer: .addPrePlugin() has been removed.\")};WebGLRenderer.prototype.addPostPlugin=function(){console.warn(\"THREE.WebGLRenderer: .addPostPlugin() has been removed.\")};WebGLRenderer.prototype.updateShadowMap=function(){console.warn(\"THREE.WebGLRenderer: .updateShadowMap() has been removed.\")};WebGLRenderer.prototype.setFaceCulling=function(){console.warn(\"THREE.WebGLRenderer: .setFaceCulling() has been removed.\")};WebGLRenderer.prototype.allocTextureUnit=function(){console.warn(\"THREE.WebGLRenderer: .allocTextureUnit() has been removed.\")};WebGLRenderer.prototype.setTexture=function(){console.warn(\"THREE.WebGLRenderer: .setTexture() has been removed.\")};WebGLRenderer.prototype.setTexture2D=function(){console.warn(\"THREE.WebGLRenderer: .setTexture2D() has been removed.\")};WebGLRenderer.prototype.setTextureCube=function(){console.warn(\"THREE.WebGLRenderer: .setTextureCube() has been removed.\")};WebGLRenderer.prototype.getActiveMipMapLevel=function(){console.warn(\"THREE.WebGLRenderer: .getActiveMipMapLevel() is now .getActiveMipmapLevel().\");return this.getActiveMipmapLevel()};Object.defineProperties(WebGLRenderer.prototype,{shadowMapEnabled:{get:function(){return this.shadowMap.enabled},set:function(e){console.warn(\"THREE.WebGLRenderer: .shadowMapEnabled is now .shadowMap.enabled.\");this.shadowMap.enabled=e}},shadowMapType:{get:function(){return this.shadowMap.type},set:function(e){console.warn(\"THREE.WebGLRenderer: .shadowMapType is now .shadowMap.type.\");this.shadowMap.type=e}},shadowMapCullFace:{get:function(){console.warn(\"THREE.WebGLRenderer: .shadowMapCullFace has been removed. Set Material.shadowSide instead.\")},set:function(){console.warn(\"THREE.WebGLRenderer: .shadowMapCullFace has been removed. Set Material.shadowSide instead.\")}},context:{get:function(){console.warn(\"THREE.WebGLRenderer: .context has been removed. Use .getContext() instead.\");return this.getContext()}},vr:{get:function(){console.warn(\"THREE.WebGLRenderer: .vr has been renamed to .xr\");return this.xr}},gammaInput:{get:function(){console.warn(\"THREE.WebGLRenderer: .gammaInput has been removed. Set the encoding for textures via Texture.encoding instead.\");return false},set:function(){console.warn(\"THREE.WebGLRenderer: .gammaInput has been removed. Set the encoding for textures via Texture.encoding instead.\")}},gammaOutput:{get:function(){console.warn(\"THREE.WebGLRenderer: .gammaOutput has been removed. Set WebGLRenderer.outputEncoding instead.\");return false},set:function(e){console.warn(\"THREE.WebGLRenderer: .gammaOutput has been removed. Set WebGLRenderer.outputEncoding instead.\");this.outputEncoding=true===e?Jt:Xt}},toneMappingWhitePoint:{get:function(){console.warn(\"THREE.WebGLRenderer: .toneMappingWhitePoint has been removed.\");return 1},set:function(){console.warn(\"THREE.WebGLRenderer: .toneMappingWhitePoint has been removed.\")}},gammaFactor:{get:function(){console.warn(\"THREE.WebGLRenderer: .gammaFactor has been removed.\");return 2},set:function(){console.warn(\"THREE.WebGLRenderer: .gammaFactor has been removed.\")}}});Object.defineProperties(WebGLShadowMap.prototype,{cullFace:{get:function(){console.warn(\"THREE.WebGLRenderer: .shadowMap.cullFace has been removed. Set Material.shadowSide instead.\")},set:function(){console.warn(\"THREE.WebGLRenderer: .shadowMap.cullFace has been removed. Set Material.shadowSide instead.\")}},renderReverseSided:{get:function(){console.warn(\"THREE.WebGLRenderer: .shadowMap.renderReverseSided has been removed. Set Material.shadowSide instead.\")},set:function(){console.warn(\"THREE.WebGLRenderer: .shadowMap.renderReverseSided has been removed. Set Material.shadowSide instead.\")}},renderSingleSided:{get:function(){console.warn(\"THREE.WebGLRenderer: .shadowMap.renderSingleSided has been removed. Set Material.shadowSide instead.\")},set:function(){console.warn(\"THREE.WebGLRenderer: .shadowMap.renderSingleSided has been removed. Set Material.shadowSide instead.\")}}});function WebGLRenderTargetCube(e,t,n){console.warn(\"THREE.WebGLRenderTargetCube( width, height, options ) is now WebGLCubeRenderTarget( size, options ).\");return new WebGLCubeRenderTarget(e,n)}Object.defineProperties(WebGLRenderTarget.prototype,{wrapS:{get:function(){console.warn(\"THREE.WebGLRenderTarget: .wrapS is now .texture.wrapS.\");return this.texture.wrapS},set:function(e){console.warn(\"THREE.WebGLRenderTarget: .wrapS is now .texture.wrapS.\");this.texture.wrapS=e}},wrapT:{get:function(){console.warn(\"THREE.WebGLRenderTarget: .wrapT is now .texture.wrapT.\");return this.texture.wrapT},set:function(e){console.warn(\"THREE.WebGLRenderTarget: .wrapT is now .texture.wrapT.\");this.texture.wrapT=e}},magFilter:{get:function(){console.warn(\"THREE.WebGLRenderTarget: .magFilter is now .texture.magFilter.\");return this.texture.magFilter},set:function(e){console.warn(\"THREE.WebGLRenderTarget: .magFilter is now .texture.magFilter.\");this.texture.magFilter=e}},minFilter:{get:function(){console.warn(\"THREE.WebGLRenderTarget: .minFilter is now .texture.minFilter.\");return this.texture.minFilter},set:function(e){console.warn(\"THREE.WebGLRenderTarget: .minFilter is now .texture.minFilter.\");this.texture.minFilter=e}},anisotropy:{get:function(){console.warn(\"THREE.WebGLRenderTarget: .anisotropy is now .texture.anisotropy.\");return this.texture.anisotropy},set:function(e){console.warn(\"THREE.WebGLRenderTarget: .anisotropy is now .texture.anisotropy.\");this.texture.anisotropy=e}},offset:{get:function(){console.warn(\"THREE.WebGLRenderTarget: .offset is now .texture.offset.\");return this.texture.offset},set:function(e){console.warn(\"THREE.WebGLRenderTarget: .offset is now .texture.offset.\");this.texture.offset=e}},repeat:{get:function(){console.warn(\"THREE.WebGLRenderTarget: .repeat is now .texture.repeat.\");return this.texture.repeat},set:function(e){console.warn(\"THREE.WebGLRenderTarget: .repeat is now .texture.repeat.\");this.texture.repeat=e}},format:{get:function(){console.warn(\"THREE.WebGLRenderTarget: .format is now .texture.format.\");return this.texture.format},set:function(e){console.warn(\"THREE.WebGLRenderTarget: .format is now .texture.format.\");this.texture.format=e}},type:{get:function(){console.warn(\"THREE.WebGLRenderTarget: .type is now .texture.type.\");return this.texture.type},set:function(e){console.warn(\"THREE.WebGLRenderTarget: .type is now .texture.type.\");this.texture.type=e}},generateMipmaps:{get:function(){console.warn(\"THREE.WebGLRenderTarget: .generateMipmaps is now .texture.generateMipmaps.\");return this.texture.generateMipmaps},set:function(e){console.warn(\"THREE.WebGLRenderTarget: .generateMipmaps is now .texture.generateMipmaps.\");this.texture.generateMipmaps=e}}});Audio.prototype.load=function(e){console.warn(\"THREE.Audio: .load has been deprecated. Use THREE.AudioLoader instead.\");const t=this;const n=new AudioLoader;n.load(e,(function(e){t.setBuffer(e)}));return this};AudioAnalyser.prototype.getData=function(){console.warn(\"THREE.AudioAnalyser: .getData() is now .getFrequencyData().\");return this.getFrequencyData()};CubeCamera.prototype.updateCubeMap=function(e,t){console.warn(\"THREE.CubeCamera: .updateCubeMap() is now .update().\");return this.update(e,t)};CubeCamera.prototype.clear=function(e,t,n,r){console.warn(\"THREE.CubeCamera: .clear() is now .renderTarget.clear().\");return this.renderTarget.clear(e,t,n,r)};ImageUtils.crossOrigin=void 0;ImageUtils.loadTexture=function(e,t,n,r){console.warn(\"THREE.ImageUtils.loadTexture has been deprecated. Use THREE.TextureLoader() instead.\");const i=new TextureLoader;i.setCrossOrigin(this.crossOrigin);const s=i.load(e,n,void 0,r);t&&(s.mapping=t);return s};ImageUtils.loadTextureCube=function(e,t,n,r){console.warn(\"THREE.ImageUtils.loadTextureCube has been deprecated. Use THREE.CubeTextureLoader() instead.\");const i=new CubeTextureLoader;i.setCrossOrigin(this.crossOrigin);const s=i.load(e,n,void 0,r);t&&(s.mapping=t);return s};ImageUtils.loadCompressedTexture=function(){console.error(\"THREE.ImageUtils.loadCompressedTexture has been removed. Use THREE.DDSLoader instead.\")};ImageUtils.loadCompressedTextureCube=function(){console.error(\"THREE.ImageUtils.loadCompressedTextureCube has been removed. Use THREE.DDSLoader instead.\")};function CanvasRenderer(){console.error(\"THREE.CanvasRenderer has been removed\")}function JSONLoader(){console.error(\"THREE.JSONLoader has been removed.\")}const Oc={createMultiMaterialObject:function(){console.error(\"THREE.SceneUtils has been moved to /examples/jsm/utils/SceneUtils.js\")},detach:function(){console.error(\"THREE.SceneUtils has been moved to /examples/jsm/utils/SceneUtils.js\")},attach:function(){console.error(\"THREE.SceneUtils has been moved to /examples/jsm/utils/SceneUtils.js\")}};function LensFlare(){console.error(\"THREE.LensFlare has been moved to /examples/jsm/objects/Lensflare.js\")}function ParametricGeometry(){console.error(\"THREE.ParametricGeometry has been moved to /examples/jsm/geometries/ParametricGeometry.js\");return new BufferGeometry}function TextGeometry(){console.error(\"THREE.TextGeometry has been moved to /examples/jsm/geometries/TextGeometry.js\");return new BufferGeometry}function FontLoader(){console.error(\"THREE.FontLoader has been moved to /examples/jsm/loaders/FontLoader.js\")}function Font(){console.error(\"THREE.Font has been moved to /examples/jsm/loaders/FontLoader.js\")}function ImmediateRenderObject(){console.error(\"THREE.ImmediateRenderObject has been removed.\")}\"undefined\"!==typeof __THREE_DEVTOOLS__&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent(\"register\",{detail:{revision:e}}));\"undefined\"!==typeof window&&(window.__THREE__?console.warn(\"WARNING: Multiple instances of Three.js being imported.\"):window.__THREE__=e);export{ee as ACESFilmicToneMapping,w as AddEquation,Y as AddOperation,kt as AdditiveAnimationBlendMode,x as AdditiveBlending,Be as AlphaFormat,F as AlwaysDepth,mn as AlwaysStencilFunc,AmbientLight,AmbientLightProbe,AnimationClip,AnimationLoader,AnimationMixer,AnimationObjectGroup,Dl as AnimationUtils,ArcCurve,ArrayCamera,ArrowHelper,Audio,AudioAnalyser,Xl as AudioContext,AudioListener,AudioLoader,AxesHelper,AxisHelper,d as BackSide,Yt as BasicDepthPacking,o as BasicShadowMap,BinaryTextureLoader,Bone,BooleanKeyframeTrack,BoundingBoxHelper,Box2,Box3,Box3Helper,BoxGeometry as BoxBufferGeometry,BoxGeometry,BoxHelper,BufferAttribute,BufferGeometry,BufferGeometryLoader,we as ByteType,Bl as Cache,Camera,CameraHelper,CanvasRenderer,CanvasTexture,CatmullRomCurve3,$ as CineonToneMapping,CircleGeometry as CircleBufferGeometry,CircleGeometry,ue as ClampToEdgeWrapping,Clock,Color,ColorKeyframeTrack,CompressedTexture,CompressedTextureLoader,ConeGeometry as ConeBufferGeometry,ConeGeometry,CubeCamera,re as CubeReflectionMapping,ie as CubeRefractionMapping,CubeTexture,CubeTextureLoader,oe as CubeUVReflectionMapping,le as CubeUVRefractionMapping,CubicBezierCurve,CubicBezierCurve3,CubicInterpolant,i as CullFaceBack,s as CullFaceFront,a as CullFaceFrontBack,r as CullFaceNone,Curve,CurvePath,M as CustomBlending,te as CustomToneMapping,CylinderGeometry as CylinderBufferGeometry,CylinderGeometry,Cylindrical,DataTexture,DataTexture2DArray,DataTexture3D,DataTextureLoader,DataUtils,rn as DecrementStencilOp,an as DecrementWrapStencilOp,Vl as DefaultLoadingManager,Ge as DepthFormat,Fe as DepthStencilFormat,DepthTexture,DirectionalLight,DirectionalLightHelper,DiscreteInterpolant,DodecahedronGeometry as DodecahedronBufferGeometry,DodecahedronGeometry,p as DoubleSide,B as DstAlphaFactor,N as DstColorFactor,DynamicBufferAttribute,wn as DynamicCopyUsage,yn as DynamicDrawUsage,bn as DynamicReadUsage,EdgesGeometry,EdgesHelper,EllipseCurve,k as EqualDepth,un as EqualStencilFunc,se as EquirectangularReflectionMapping,ae as EquirectangularRefractionMapping,Euler,EventDispatcher,ExtrudeGeometry as ExtrudeBufferGeometry,ExtrudeGeometry,Gc as FaceColors,FileLoader,f as FlatShading,Float16BufferAttribute,Float32Attribute,Float32BufferAttribute,Float64Attribute,Float64BufferAttribute,Le as FloatType,Fog,FogExp2,Font,FontLoader,FramebufferTexture,h as FrontSide,Frustum,GLBufferAttribute,Tn as GLSL1,En as GLSL3,j as GreaterDepth,W as GreaterEqualDepth,fn as GreaterEqualStencilFunc,dn as GreaterStencilFunc,GridHelper,Group,Ce as HalfFloatType,HemisphereLight,HemisphereLightHelper,HemisphereLightProbe,IcosahedronGeometry as IcosahedronBufferGeometry,IcosahedronGeometry,ImageBitmapLoader,ImageLoader,ImageUtils,ImmediateRenderObject,nn as IncrementStencilOp,sn as IncrementWrapStencilOp,InstancedBufferAttribute,InstancedBufferGeometry,InstancedInterleavedBuffer,InstancedMesh,Int16Attribute,Int16BufferAttribute,Int32Attribute,Int32BufferAttribute,Int8Attribute,Int8BufferAttribute,Ee as IntType,InterleavedBuffer,InterleavedBufferAttribute,Interpolant,Nt as InterpolateDiscrete,Ut as InterpolateLinear,zt as InterpolateSmooth,on as InvertStencilOp,JSONLoader,en as KeepStencilOp,KeyframeTrack,LOD,LatheGeometry as LatheBufferGeometry,LatheGeometry,Layers,LensFlare,O as LessDepth,H as LessEqualDepth,hn as LessEqualStencilFunc,cn as LessStencilFunc,Light,LightProbe,Line,Line3,LineBasicMaterial,LineCurve,LineCurve3,LineDashedMaterial,LineLoop,Uc as LinePieces,LineSegments,Nc as LineStrip,Xt as LinearEncoding,ye as LinearFilter,LinearInterpolant,_e as LinearMipMapLinearFilter,xe as LinearMipMapNearestFilter,be as LinearMipmapLinearFilter,ve as LinearMipmapNearestFilter,Q as LinearToneMapping,Loader,LoaderUtils,LoadingManager,Dt as LoopOnce,Vt as LoopPingPong,Bt as LoopRepeat,ze as LuminanceAlphaFormat,Ue as LuminanceFormat,t as MOUSE,Material,MaterialLoader,Pn as Math,Pn as MathUtils,Matrix3,Matrix4,A as MaxEquation,Mesh,MeshBasicMaterial,MeshDepthMaterial,MeshDistanceMaterial,MeshFaceMaterial,MeshLambertMaterial,MeshMatcapMaterial,MeshNormalMaterial,MeshPhongMaterial,MeshPhysicalMaterial,MeshStandardMaterial,MeshToonMaterial,E as MinEquation,he as MirroredRepeatWrapping,J as MixOperation,MultiMaterial,_ as MultiplyBlending,X as MultiplyOperation,de as NearestFilter,ge as NearestMipMapLinearFilter,fe as NearestMipMapNearestFilter,me as NearestMipmapLinearFilter,pe as NearestMipmapNearestFilter,G as NeverDepth,ln as NeverStencilFunc,g as NoBlending,zc as NoColors,Z as NoToneMapping,Ht as NormalAnimationBlendMode,y as NormalBlending,q as NotEqualDepth,pn as NotEqualStencilFunc,NumberKeyframeTrack,Object3D,ObjectLoader,Kt as ObjectSpaceNormalMap,OctahedronGeometry as OctahedronBufferGeometry,OctahedronGeometry,C as OneFactor,V as OneMinusDstAlphaFactor,U as OneMinusDstColorFactor,D as OneMinusSrcAlphaFactor,P as OneMinusSrcColorFactor,OrthographicCamera,l as PCFShadowMap,c as PCFSoftShadowMap,PMREMGenerator,ParametricGeometry,Particle,ParticleBasicMaterial,ParticleSystem,ParticleSystemMaterial,Path,PerspectiveCamera,Plane,PlaneGeometry as PlaneBufferGeometry,PlaneGeometry,PlaneHelper,PointCloud,PointCloudMaterial,PointLight,PointLightHelper,Points,PointsMaterial,PolarGridHelper,PolyhedronGeometry as PolyhedronBufferGeometry,PolyhedronGeometry,PositionalAudio,PropertyBinding,PropertyMixer,QuadraticBezierCurve,QuadraticBezierCurve3,Quaternion,QuaternionKeyframeTrack,QuaternionLinearInterpolant,e as REVISION,Zt as RGBADepthPacking,Ne as RGBAFormat,qe as RGBAIntegerFormat,mt as RGBA_ASTC_10x10_Format,dt as RGBA_ASTC_10x5_Format,pt as RGBA_ASTC_10x6_Format,ft as RGBA_ASTC_10x8_Format,gt as RGBA_ASTC_12x10_Format,yt as RGBA_ASTC_12x12_Format,it as RGBA_ASTC_4x4_Format,st as RGBA_ASTC_5x4_Format,at as RGBA_ASTC_5x5_Format,ot as RGBA_ASTC_6x5_Format,lt as RGBA_ASTC_6x6_Format,ct as RGBA_ASTC_8x5_Format,ut as RGBA_ASTC_8x6_Format,ht as RGBA_ASTC_8x8_Format,vt as RGBA_BPTC_Format,rt as RGBA_ETC2_EAC_Format,et as RGBA_PVRTC_2BPPV1_Format,$e as RGBA_PVRTC_4BPPV1_Format,Je as RGBA_S3TC_DXT1_Format,Ye as RGBA_S3TC_DXT3_Format,Ze as RGBA_S3TC_DXT5_Format,Ve as RGBFormat,je as RGBIntegerFormat,tt as RGB_ETC1_Format,nt as RGB_ETC2_Format,Ke as RGB_PVRTC_2BPPV1_Format,Qe as RGB_PVRTC_4BPPV1_Format,Xe as RGB_S3TC_DXT1_Format,ke as RGFormat,We as RGIntegerFormat,RawShaderMaterial,Ray,Raycaster,RectAreaLight,Oe as RedFormat,He as RedIntegerFormat,K as ReinhardToneMapping,ce as RepeatWrapping,tn as ReplaceStencilOp,T as ReverseSubtractEquation,RingGeometry as RingBufferGeometry,RingGeometry,Rt as SRGB8_ALPHA8_ASTC_10x10_Format,At as SRGB8_ALPHA8_ASTC_10x5_Format,Lt as SRGB8_ALPHA8_ASTC_10x6_Format,Ct as SRGB8_ALPHA8_ASTC_10x8_Format,Pt as SRGB8_ALPHA8_ASTC_12x10_Format,It as SRGB8_ALPHA8_ASTC_12x12_Format,xt as SRGB8_ALPHA8_ASTC_4x4_Format,bt as SRGB8_ALPHA8_ASTC_5x4_Format,_t as SRGB8_ALPHA8_ASTC_5x5_Format,Mt as SRGB8_ALPHA8_ASTC_6x5_Format,wt as SRGB8_ALPHA8_ASTC_6x6_Format,St as SRGB8_ALPHA8_ASTC_8x5_Format,Tt as SRGB8_ALPHA8_ASTC_8x6_Format,Et as SRGB8_ALPHA8_ASTC_8x8_Format,Scene,Oc as SceneUtils,Qa as ShaderChunk,$a as ShaderLib,ShaderMaterial,ShadowMaterial,Shape,ShapeGeometry as ShapeBufferGeometry,ShapeGeometry,ShapePath,ShapeUtils,Se as ShortType,Skeleton,SkeletonHelper,SkinnedMesh,m as SmoothShading,Sphere,SphereGeometry as SphereBufferGeometry,SphereGeometry,Spherical,SphericalHarmonics3,SplineCurve,SpotLight,SpotLightHelper,Sprite,SpriteMaterial,I as SrcAlphaFactor,z as SrcAlphaSaturateFactor,R as SrcColorFactor,Mn as StaticCopyUsage,gn as StaticDrawUsage,xn as StaticReadUsage,StereoCamera,Sn as StreamCopyUsage,vn as StreamDrawUsage,_n as StreamReadUsage,StringKeyframeTrack,S as SubtractEquation,b as SubtractiveBlending,n as TOUCH,Qt as TangentSpaceNormalMap,TetrahedronGeometry as TetrahedronBufferGeometry,TetrahedronGeometry,TextGeometry,Texture,TextureLoader,TorusGeometry as TorusBufferGeometry,TorusGeometry,TorusKnotGeometry as TorusKnotBufferGeometry,TorusKnotGeometry,Triangle,qt as TriangleFanDrawMode,jt as TriangleStripDrawMode,Wt as TrianglesDrawMode,TubeGeometry as TubeBufferGeometry,TubeGeometry,ne as UVMapping,Uint16Attribute,Uint16BufferAttribute,Uint32Attribute,Uint32BufferAttribute,Uint8Attribute,Uint8BufferAttribute,Uint8ClampedAttribute,Uint8ClampedBufferAttribute,Uniform,Ka as UniformsLib,mi as UniformsUtils,Me as UnsignedByteType,De as UnsignedInt248Type,Ae as UnsignedIntType,Re as UnsignedShort4444Type,Pe as UnsignedShort5551Type,Ie as UnsignedShort565Type,Te as UnsignedShortType,u as VSMShadowMap,Vector2,Vector3,Vector4,VectorKeyframeTrack,Vertex,Fc as VertexColors,VideoTexture,WebGL1Renderer,WebGLCubeRenderTarget,WebGLMultipleRenderTargets,WebGLMultisampleRenderTarget,WebGLRenderTarget,WebGLRenderTargetCube,WebGLRenderer,WebGLUtils,WireframeGeometry,WireframeHelper,Ot as WrapAroundEnding,XHRLoader,Gt as ZeroCurvatureEnding,L as ZeroFactor,Ft as ZeroSlopeEnding,$t as ZeroStencilOp,Jt as sRGBEncoding};\n\n//# sourceMappingURL=three.module.js.map","export const shaderInputs=`\nuniform float iTime;\nuniform vec3 iResolution;\nvarying vec2 vUv;\nuniform float iTimeDelta;\nuniform vec4 iMouse;\nuniform sampler2D iChannel0;\n`;export const mainFunction=`\nvoid main() {\n    mainImage(gl_FragColor, vUv * iResolution.xy);\n}\n`;export const vertexShaderSource=`\nvarying vec2 vUv;\nvoid main() {\n    vUv = uv;\n    gl_Position = vec4(position, 1.0);\n}\n`;export const fragmentShaderSource=[{title:\"Warped Mandelbrot Set\",author:\"Stephane Cuillerdier - Aiekick/2024 (twitter:@aiekick)\",originalURL:\"https://www.shadertoy.com/view/MflBzj\",value:`\n\n#define AA 2\n#define PETALS_COUNT 4.0\n#define WARP_FACTOR 5.0\n#define BUMP_FACTOR 0.03\n#define FRACTAL_POWER 2\n\nvec2 zmul(vec2 a, vec2 b){return mat2(a,-a.y,a.x)*b;} // z * z \nvec2 zinv(vec2 a){return vec2(a.x, -a.y) / dot(a,a);} // 1 / z\nvec2 zpow(vec2 a, int p) {vec2 r=a;for(int i=1;i<p;++i) r=zmul(r, r);return r;} // z ^ p\n\nvec3 sdf(vec2 p, float t) {\n    // position\n    if (FRACTAL_POWER < 3) p.y += 0.15; \n    else if (FRACTAL_POWER < 4) p.y -= 0.35;  \n    else p.y -= 0.5;  \n    \n     // 90\\xb0 rotation\n    const float a = 1.57;\n    p *= mat2(cos(a),-sin(a),sin(a),cos(a));\n    \n    // mandelbrot\n    vec2 z = vec2(0);\n    for (float i=0.;i<15.0;i++){\n        z = zpow(z,FRACTAL_POWER) + p - vec2(0.5,0.);\n        if (dot(z,z) > 4.0) {\n            break;\n        }\n    }\n    \n    // sdf\n    float d = dot(z,z);\n    float sdf = 1.0 - sqrt(d) * log(d);\n    \n    // warped flower\n    z = vec2(atan(z.x,z.y), length(z * 5.0));\n    float warpFactor = 5.0;\n    for (int i=0; i<3; i++) {\n        z.y += cos(z.x * PETALS_COUNT - t) / 3.0;\n        z.x += sin(z.y * WARP_FACTOR - t * 2.0) / 3.0;\n    }\n    z = vec2(cos(z.x), sin(z.x)) * z.y;\n    z = abs(fract(z) - 0.5);\n    return smoothstep(0.0, 1.0, sdf + 1.0) * vec3(length(z), z);\n}\n\nvec4 render(in vec2 v, in vec2 o) {\n    // time\n    float t = iTime * 0.5;\n    \n    // point\n    vec2 uv = (v+v+o - iResolution.xy)/min(iResolution.x, iResolution.y) * 1.2;\n    \n    // ray dir\n    vec3 rd = normalize(vec3(uv, 1.0));\n    \n    // light point\n    vec3 lp = vec3(0.0, 0.0, -2.);\n    \n    // normal\n    vec2 eps = vec2(7.5/iResolution.y, 0.0);\n    vec3 f = sdf(uv, t);\n    float fx = (sdf(uv-eps.xy, t).x-f.x)/eps.x;\n    float fy = (sdf(uv-eps.yx, t).x-f.x)/eps.x;\n    vec3 n = normalize(vec3(vec2(fx, fy) * BUMP_FACTOR, -1.0));\n    \n    // light attenuation\n    vec3 ld = lp - vec3(uv, 0.0);\n    float lDist = max(length(ld), 0.001);\n    ld /= lDist;\n    float atten = (f.x * 0.9 + 0.1)/(1.0 + lDist * lDist * 0.15);\n    \n    // diffuse\n    float diff = max(dot(n, ld), 0.0);\n    diff = pow(diff, 4.0) * 0.7 + pow(diff, 8.0) * 0.3;\n    \n    // specular\n    float spec = pow(max(dot( reflect(-ld, n), -rd), 0.0), 32.0);\n    \n    // final color\n    vec3 col = clamp(sin(vec3(8,12,10) + iTime) * 0.5 + 1.0, 0.0, 1.0);\n    col = (col * (diff * pow(col, vec3(4.0)) * 2.0 + 0.5) + vec3(1.0) * spec * 2.0)*atten;\n    \n    // gamma corection\n    col = clamp(sqrt(col), 0.0, 1.0);\n    return vec4(col, 1.0);\n}\n\nvoid mainImage(out vec4 fragColor, in vec2 fragCoord) {\n    fragColor = vec4(0);\n    \n    // anti aliasing\n    const float AAf = float(AA);\n    for(int i=0;i<AA;i++) {\n        for(int j=0;j<AA;j++) {\n            fragColor += render(gl_FragCoord.xy, vec2(i,j) / AAf);\n        }\n    }\n    fragColor /= AAf * AAf;\n     fragColor.a = 1.0;\n}\n`},{title:\"UI noise halo\",author:\"magician0809\",originalURL:\"https://www.shadertoy.com/view/3tBGRm\",value:`\n  \nvec3 hash33(vec3 p3)\n{\n\tp3 = fract(p3 * vec3(.1031,.11369,.13787));\n    p3 += dot(p3, p3.yxz+19.19);\n    return -1.0 + 2.0 * fract(vec3(p3.x+p3.y, p3.x+p3.z, p3.y+p3.z)*p3.zyx);\n}\n\nfloat snoise3(vec3 p)\n{\n    const float K1 = 0.333333333;\n    const float K2 = 0.166666667;\n    vec3 i = floor(p + (p.x + p.y + p.z) * K1);\n    vec3 d0 = p - (i - (i.x + i.y + i.z) * K2);\n    vec3 e = step(vec3(0.0), d0 - d0.yzx);\n    vec3 i1 = e * (1.0 - e.zxy);\n    vec3 i2 = 1.0 - e.zxy * (1.0 - e);\n    vec3 d1 = d0 - (i1 - K2);\n    vec3 d2 = d0 - (i2 - K1);\n    vec3 d3 = d0 - 0.5;\n    vec4 h = max(0.6 - vec4(dot(d0, d0), dot(d1, d1), dot(d2, d2), dot(d3, d3)), 0.0);\n    vec4 n = h * h * h * h * vec4(dot(d0, hash33(i)), dot(d1, hash33(i + i1)), dot(d2, hash33(i + i2)), dot(d3, hash33(i + 1.0)));\n    return dot(vec4(31.316), n);\n}\n\nvec4 extractAlpha(vec3 colorIn)\n{\n    vec4 colorOut;\n    float maxValue = min(max(max(colorIn.r, colorIn.g), colorIn.b), 1.0);\n    if (maxValue > 1e-5)\n    {\n        colorOut.rgb = colorIn.rgb * (1.0 / maxValue);\n        colorOut.a = maxValue;\n    }\n    else\n    {\n        colorOut = vec4(0.0);\n    }\n    return colorOut;\n}\n\n  #define BG_COLOR (vec3(sin(iTime)*0.5+0.5) * 0.0 + vec3(0.0))\n  #define time iTime\n  const vec3 color1 = vec3(0.611765, 0.262745, 0.996078);\n  const vec3 color2 = vec3(0.298039, 0.760784, 0.913725);\n  const vec3 color3 = vec3(0.062745, 0.078431, 0.600000);\n  const float innerRadius = 0.6;\n  const float noiseScale = 0.65;\n  float light1(float intensity, float attenuation, float dist)\n  {\n      return intensity / (1.0 + dist * attenuation);\n  }\n  float light2(float intensity, float attenuation, float dist)\n  {\n      return intensity / (1.0 + dist * dist * attenuation);\n  }\n\n  void draw( out vec4 _FragColor, in vec2 vUv )\n  {\n      vec2 uv = vUv;\n      float ang = atan(uv.y, uv.x);\n      float len = length(uv);\n      float v0, v1, v2, v3, cl;\n      float r0, d0, n0;\n      float r, d;\n      \n      // ring\n      n0 = snoise3( vec3(uv * noiseScale, time * 0.5) ) * 0.5 + 0.5;\n      r0 = mix(mix(innerRadius, 1.0, 0.4), mix(innerRadius, 1.0, 0.6), n0);\n      d0 = distance(uv, r0 / len * uv);\n      v0 = light1(1.0, 10.0, d0);\n      v0 *= smoothstep(r0 * 1.05, r0, len);\n      cl = cos(ang + time * 2.0) * 0.5 + 0.5;\n      \n      // high light\n      float a = time * -1.0;\n      vec2 pos = vec2(cos(a), sin(a)) * r0;\n      d = distance(uv, pos);\n      v1 = light2(1.5, 5.0, d);\n      v1 *= light1(1.0, 50.0 , d0);\n      \n      // back decay\n      v2 = smoothstep(1.0, mix(innerRadius, 1.0, n0 * 0.5), len);\n      \n      // hole\n      v3 = smoothstep(innerRadius, mix(innerRadius, 1.0, 0.5), len);\n      \n      // color\n      vec3 c = mix(color1, color2, cl);\n      vec3 col = mix(color1, color2, cl);\n      col = mix(color3, col, v0);\n      col = (col + v1) * v2 * v3;\n      col.rgb = clamp(col.rgb, 0.0, 1.0);\n      \n      //gl_FragColor = extractAlpha(col);\n      _FragColor = extractAlpha(col);\n  }\n\n  void mainImage( out vec4 fragColor, in vec2 fragCoord )\n  {\n      vec2 uv = (fragCoord*2.-iResolution.xy)/iResolution.y;\n      vec4 col;\n      draw(col, uv);\n      vec3 bg = BG_COLOR;\n      fragColor.rgb = mix(bg, col.rgb, col.a); //normal blend\n          fragColor.a = 1.0;\n  }\n\n`},{title:\"Realm\",author:\"kishimisu\",originalURL:\"https://www.shadertoy.com/view/mtyGWy\",value:`\n  \nvec3 palette( float t ) {\n    vec3 a = vec3(0.5, 0.5, 0.5);\n    vec3 b = vec3(0.5, 0.5, 0.5);\n    vec3 c = vec3(1.0, 1.0, 1.0);\n    vec3 d = vec3(0.263,0.416,0.557);\n\n    return a + b*cos( 6.28318*(c*t+d) );\n}\nvoid mainImage( out vec4 fragColor, in vec2 fragCoord ) {\n    vec2 uv = (fragCoord * 2.0 - iResolution.xy) / iResolution.y;\n    vec2 uv0 = uv;\n    vec3 finalColor = vec3(0.0);\n    for (float i = 0.0; i < 4.0; i++) {\n        uv = fract(uv * 1.5) - 0.5;\n        float d = length(uv) * exp(-length(uv0));\n        vec3 col = palette(length(uv0) + i*.4 + iTime*.4);\n        d = sin(d*8. + iTime)/8.;\n        d = abs(d);\n        d = pow(0.01 / d, 1.2);\n        finalColor += col * d;\n    }\n    fragColor = vec4(finalColor, 1.0);\n}\n`},{title:\"Fractal Pyramid\",author:\"bradjamesgrant\",originalURL:\"https://www.shadertoy.com/view/tsXBzS\",value:`\n\nvec3 palette(float d){\n\treturn mix(vec3(0.2,0.7,0.9),vec3(1.,0.,1.),d);\n}\n\nvec2 rotate(vec2 p,float a){\n\tfloat c = cos(a);\n    float s = sin(a);\n    return p*mat2(c,s,-s,c);\n}\n\nfloat map(vec3 p){\n    for( int i = 0; i<8; ++i){\n        float t = iTime*0.2;\n        p.xz =rotate(p.xz,t);\n        p.xy =rotate(p.xy,t*1.89);\n        p.xz = abs(p.xz);\n        p.xz-=.5;\n\t}\n\treturn dot(sign(p),p)/5.;\n}\n\nvec4 rm (vec3 ro, vec3 rd){\n    float t = 0.;\n    vec3 col = vec3(0.);\n    float d;\n    for(float i =0.; i<64.; i++){\n\t\tvec3 p = ro + rd*t;\n        d = map(p)*.5;\n        if(d<0.02){\n            break;\n        }\n        if(d>100.){\n        \tbreak;\n        }\n        //col+=vec3(0.6,0.8,0.8)/(400.*(d));\n        col+=palette(length(p)*.1)/(400.*(d));\n        t+=d;\n    }\n    return vec4(col,1./(d*100.));\n}\n\nvoid mainImage( out vec4 fragColor, in vec2 fragCoord )\n{\n    vec2 uv = (fragCoord-(iResolution.xy/2.))/iResolution.x;\n\t  vec3 ro = vec3(0.,0.,-50.);\n    ro.xz = rotate(ro.xz,iTime);\n    vec3 cf = normalize(-ro);\n    vec3 cs = normalize(cross(cf,vec3(0.,1.,0.)));\n    vec3 cu = normalize(cross(cf,cs));\n    vec3 uuv = ro+cf*3. + uv.x*cs + uv.y*cu;\n    vec3 rd = normalize(uuv-ro);\n    vec4 col = rm(ro,rd);\n    fragColor = col;\n    fragColor.a = 1.0;\n}\n\n`},{title:\"Octagrams\",author:\"whisky_shusuky\",originalURL:\"https://www.shadertoy.com/view/tlVGDt\",value:`\n\nprecision highp float;\n\nfloat gTime = 0.;\nconst float REPEAT = 5.0;\n\nmat2 rot(float a) {\n\tfloat c = cos(a), s = sin(a);\n\treturn mat2(c,s,-s,c);\n}\n\nfloat sdBox( vec3 p, vec3 b )\n{\n\tvec3 q = abs(p) - b;\n\treturn length(max(q,0.0)) + min(max(q.x,max(q.y,q.z)),0.0);\n}\n\nfloat box(vec3 pos, float scale) {\n\tpos *= scale;\n\tfloat base = sdBox(pos, vec3(.4,.4,.1)) /1.5;\n\tpos.xy *= 5.;\n\tpos.y -= 3.5;\n\tpos.xy *= rot(.75);\n\tfloat result = -base;\n\treturn result;\n}\n\nfloat box_set(vec3 pos, float iTime) {\n\tvec3 pos_origin = pos;\n\tpos = pos_origin;\n\tpos .y += sin(gTime * 0.4) * 2.5;\n\tpos.xy *=   rot(.8);\n\tfloat box1 = box(pos,2. - abs(sin(gTime * 0.4)) * 1.5);\n\tpos = pos_origin;\n\tpos .y -=sin(gTime * 0.4) * 2.5;\n\tpos.xy *=   rot(.8);\n\tfloat box2 = box(pos,2. - abs(sin(gTime * 0.4)) * 1.5);\n\tpos = pos_origin;\n\tpos .x +=sin(gTime * 0.4) * 2.5;\n\tpos.xy *=   rot(.8);\n\tfloat box3 = box(pos,2. - abs(sin(gTime * 0.4)) * 1.5);\t\n\tpos = pos_origin;\n\tpos .x -=sin(gTime * 0.4) * 2.5;\n\tpos.xy *=   rot(.8);\n\tfloat box4 = box(pos,2. - abs(sin(gTime * 0.4)) * 1.5);\t\n\tpos = pos_origin;\n\tpos.xy *=   rot(.8);\n\tfloat box5 = box(pos,.5) * 6.;\t\n\tpos = pos_origin;\n\tfloat box6 = box(pos,.5) * 6.;\t\n\tfloat result = max(max(max(max(max(box1,box2),box3),box4),box5),box6);\n\treturn result;\n}\n\nfloat map(vec3 pos, float iTime) {\n\tvec3 pos_origin = pos;\n\tfloat box_set1 = box_set(pos, iTime);\n\treturn box_set1;\n}\n\nvoid mainImage( out vec4 fragColor, in vec2 fragCoord ) {\n\tvec2 p = (fragCoord.xy * 2. - iResolution.xy) / min(iResolution.x, iResolution.y);\n\tvec3 ro = vec3(0., -0.2 ,iTime * 4.);\n\tvec3 ray = normalize(vec3(p, 1.5));\n\tray.xy = ray.xy * rot(sin(iTime * .03) * 5.);\n\tray.yz = ray.yz * rot(sin(iTime * .05) * .2);\n\tfloat t = 0.1;\n\tvec3 col = vec3(0.);\n\tfloat ac = 0.0;\n\tfor (int i = 0; i < 99; i++){\n\t\tvec3 pos = ro + ray * t;\n\t\tpos = mod(pos-2., 4.) -2.;\n\t\tgTime = iTime -float(i) * 0.01;\n\t\tfloat d = map(pos, iTime);\n\t\td = max(abs(d), 0.01);\n\t\tac += exp(-d*23.);\n\t\tt += d* 0.55;\n\t}\n\tcol = vec3(ac * 0.02);\n\tcol +=vec3(0.,0.2 * abs(sin(iTime)),0.5 + sin(iTime) * 0.2);\n\tfragColor = vec4(col ,1.0 - t * (0.02 + 0.02 * sin (iTime)));\n}\n\n`},{title:\"Let's self reflect\",author:\"mrange\",originalURL:\"https://www.shadertoy.com/view/XfyXRV\",value:`\n\n// Tinker with these parameters to create different solids\n// -------------------------------------------------------\nconst float rotation_speed= 0.25;\nconst float poly_U        = 1.;   // [0, inf]\nconst float poly_V        = 0.5;  // [0, inf]\nconst float poly_W        = 1.0;  // [0, inf]\nconst int   poly_type     = 3;    // [2, 5]\nconst float poly_zoom     = 2.0;\nconst float inner_sphere  = 1.;\nconst float refr_index    = 0.9;\n#define MAX_BOUNCES2        6\n// -------------------------------------------------------\n#define TIME        iTime\n#define RESOLUTION  iResolution\n#define PI          3.141592654\n#define TAU         (2.0*PI)\n\n// License: WTFPL, author: sam hocevar, found: https://stackoverflow.com/a/17897228/418488\nconst vec4 hsv2rgb_K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0);\nvec3 hsv2rgb(vec3 c) {\n  vec3 p = abs(fract(c.xxx + hsv2rgb_K.xyz) * 6.0 - hsv2rgb_K.www);\n  return c.z * mix(hsv2rgb_K.xxx, clamp(p - hsv2rgb_K.xxx, 0.0, 1.0), c.y);\n}\n\n// License: WTFPL, author: sam hocevar, found: https://stackoverflow.com/a/17897228/418488\n//  Macro version of above to enable compile-time constants\n#define HSV2RGB(c)  (c.z * mix(hsv2rgb_K.xxx, clamp(abs(fract(c.xxx + hsv2rgb_K.xyz) * 6.0 - hsv2rgb_K.www) - hsv2rgb_K.xxx, 0.0, 1.0), c.y))\n\n#define TOLERANCE2          0.0005\n//#define MAX_RAY_LENGTH2   10.0\n#define MAX_RAY_MARCHES2    50\n#define NORM_OFF2           0.005\n#define BACKSTEP2\n#define TOLERANCE3          0.0005\n#define MAX_RAY_LENGTH3     10.0\n#define MAX_RAY_MARCHES3    90\n#define NORM_OFF3           0.005\nconst vec3 rayOrigin    = vec3(0.0, 1., -5.);\nconst vec3 sunDir       = normalize(-rayOrigin);\nconst vec3 sunCol       = HSV2RGB(vec3(0.06 , 0.90, 1E-2))*1.;\nconst vec3 bottomBoxCol = HSV2RGB(vec3(0.66, 0.80, 0.5))*1.;\nconst vec3 topBoxCol    = HSV2RGB(vec3(0.60, 0.90, 1.))*1.;\nconst vec3 glowCol0     = HSV2RGB(vec3(0.05 , 0.7, 1E-3))*1.;\nconst vec3 glowCol1     = HSV2RGB(vec3(0.95, 0.7, 1E-3))*1.;\nconst vec3 beerCol      = -HSV2RGB(vec3(0.15+0.5, 0.7, 2.)); \nconst float rrefr_index = 1./refr_index;\n\n// License: Unknown, author: knighty, found: https://www.shadertoy.com/view/MsKGzw\nconst float poly_cospin   = cos(PI/float(poly_type));\nconst float poly_scospin  = sqrt(0.75-poly_cospin*poly_cospin);\nconst vec3  poly_nc       = vec3(-0.5, -poly_cospin, poly_scospin);\nconst vec3  poly_pab      = vec3(0., 0., 1.);\nconst vec3  poly_pbc_     = vec3(poly_scospin, 0., 0.5);\nconst vec3  poly_pca_     = vec3(0., poly_scospin, poly_cospin);\nconst vec3  poly_p        = normalize((poly_U*poly_pab+poly_V*poly_pbc_+poly_W*poly_pca_));\nconst vec3  poly_pbc      = normalize(poly_pbc_);\nconst vec3  poly_pca      = normalize(poly_pca_);\nmat3 g_rot;\nvec2 g_gd;\n\n// License: MIT, author: Inigo Quilez, found: https://iquilezles.org/articles/noacos/\nmat3 rot(vec3 d, vec3 z) {\n  vec3  v = cross( z, d );\n  float c = dot( z, d );\n  float k = 1.0/(1.0+c);\n  return mat3( v.x*v.x*k + c,     v.y*v.x*k - v.z,    v.z*v.x*k + v.y,\n               v.x*v.y*k + v.z,   v.y*v.y*k + c,      v.z*v.y*k - v.x,\n               v.x*v.z*k - v.y,   v.y*v.z*k + v.x,    v.z*v.z*k + c    );\n}\n\n// License: Unknown, author: Matt Taylor (https://github.com/64), found: https://64.github.io/tonemapping/\nvec3 aces_approx(vec3 v) {\n  v = max(v, 0.0);\n  v *= 0.6;\n  float a = 2.51;\n  float b = 0.03;\n  float c = 2.43;\n  float d = 0.59;\n  float e = 0.14;\n  return clamp((v*(a*v+b))/(v*(c*v+d)+e), 0.0, 1.0);\n}\n\nfloat sphere(vec3 p, float r) {\n  return length(p) - r;\n}\n\n// License: MIT, author: Inigo Quilez, found: https://iquilezles.org/articles/distfunctions/\nfloat box(vec2 p, vec2 b) {\n  vec2 d = abs(p)-b;\n  return length(max(d,0.0)) + min(max(d.x,d.y),0.0);\n}\n\n// License: Unknown, author: knighty, found: https://www.shadertoy.com/view/MsKGzw\nvoid poly_fold(inout vec3 pos) {\n  vec3 p = pos;\n  for(int i = 0; i < poly_type; ++i){\n    p.xy  = abs(p.xy);\n    p    -= 2.*min(0., dot(p,poly_nc)) * poly_nc;\n  }\n  pos = p;\n}\n\nfloat poly_plane(vec3 pos) {\n  float d0 = dot(pos, poly_pab);\n  float d1 = dot(pos, poly_pbc);\n  float d2 = dot(pos, poly_pca);\n  float d = d0;\n  d = max(d, d1);\n  d = max(d, d2);\n  return d;\n}\n\nfloat poly_corner(vec3 pos) {\n  float d = length(pos) - .0125;\n  return d;\n}\n\nfloat dot2(vec3 p) {\n  return dot(p, p);\n}\n\nfloat poly_edge(vec3 pos) {\n  float dla = dot2(pos-min(0., pos.x)*vec3(1., 0., 0.));\n  float dlb = dot2(pos-min(0., pos.y)*vec3(0., 1., 0.));\n  float dlc = dot2(pos-min(0., dot(pos, poly_nc))*poly_nc);\n  return sqrt(min(min(dla, dlb), dlc))-2E-3;\n}\n\nvec3 shape(vec3 pos) {\n  pos *= g_rot;\n  pos /= poly_zoom;\n  poly_fold(pos);\n  pos -= poly_p;\n  return vec3(poly_plane(pos), poly_edge(pos), poly_corner(pos))*poly_zoom;\n}\n\nvec3 render0(vec3 ro, vec3 rd) {\n  vec3 col = vec3(0.0);\n  float srd  = sign(rd.y);\n  float tp   = -(ro.y-6.)/abs(rd.y);\n  if (srd < 0.) {\n    col += bottomBoxCol*exp(-0.5*(length((ro + tp*rd).xz)));\n  }\n  if (srd > 0.0) {\n    vec3 pos  = ro + tp*rd;\n    vec2 pp = pos.xz;\n    float db = box(pp, vec2(5.0, 9.0))-3.0;\n    col += topBoxCol*rd.y*rd.y*smoothstep(0.25, 0.0, db);\n    col += 0.2*topBoxCol*exp(-0.5*max(db, 0.0));\n    col += 0.05*sqrt(topBoxCol)*max(-db, 0.0);\n  }\n  col += sunCol/(1.001-dot(sunDir, rd));\n  return col; \n}\n\nfloat df2(vec3 p) {\n  vec3 ds = shape(p);\n  float d2 = ds.y-5E-3;\n  float d0 = min(-ds.x, d2);\n  float d1 = sphere(p, inner_sphere);\n  g_gd = min(g_gd, vec2(d2, d1));\n  float d = (min(d0, d1));\n  return d;\n}\n\nfloat rayMarch2(vec3 ro, vec3 rd, float tinit) {\n  float t = tinit;\n#if defined(BACKSTEP2)\n  vec2 dti = vec2(1e10,0.0);\n#endif\n  int i;\n  for (i = 0; i < MAX_RAY_MARCHES2; ++i) {\n    float d = df2(ro + rd*t);\n#if defined(BACKSTEP2)\n    if (d<dti.x) { dti=vec2(d,t); }\n#endif  \n    // Bouncing in a closed shell, will never miss\n    if (d < TOLERANCE2/* || t > MAX_RAY_LENGTH3 */) {\n      break;\n    }\n    t += d;\n  }\n#if defined(BACKSTEP2)\n  if(i==MAX_RAY_MARCHES2) { t=dti.y; };\n#endif  \n  return t;\n}\n\nvec3 normal2(vec3 pos) {\n  vec2  eps = vec2(NORM_OFF2,0.0);\n  vec3 nor;\n  nor.x = df2(pos+eps.xyy) - df2(pos-eps.xyy);\n  nor.y = df2(pos+eps.yxy) - df2(pos-eps.yxy);\n  nor.z = df2(pos+eps.yyx) - df2(pos-eps.yyx);\n  return normalize(nor);\n}\n\nvec3 render2(vec3 ro, vec3 rd, float db) {\n  vec3 agg = vec3(0.0);\n  float ragg = 1.;\n  float tagg = 0.;\n  for (int bounce = 0; bounce < MAX_BOUNCES2; ++bounce) {\n    if (ragg < 0.1) break;\n    g_gd      = vec2(1E3);\n    float t2  = rayMarch2(ro, rd, min(db+0.05, 0.3));\n    vec2 gd2  = g_gd;\n    tagg      += t2;\n    vec3 p2   = ro+rd*t2;\n    vec3 n2   = normal2(p2);\n    vec3 r2   = reflect(rd, n2);\n    vec3 rr2  = refract(rd, n2, rrefr_index);\n    float fre2= 1.+dot(n2,rd);\n    vec3 beer = ragg*exp(0.2*beerCol*tagg);\n    agg += glowCol1*beer*((1.+tagg*tagg*4E-2)*6./max(gd2.x, 5E-4+tagg*tagg*2E-4/ragg));\n    vec3 ocol = 0.2*beer*render0(p2, rr2);\n    if (gd2.y <= TOLERANCE2) {\n      ragg *= 1.-0.9*fre2;\n    } else {\n      agg     += ocol;\n      ragg    *= 0.8;\n    }\n    ro        = p2;\n    rd        = r2;\n    db        = gd2.x; \n  }\n  return agg;\n}\n\nfloat df3(vec3 p) {\n  vec3 ds = shape(p);\n  g_gd = min(g_gd, ds.yz);\n  const float sw = 0.02;\n  float d1 = min(ds.y, ds.z)-sw;\n  float d0 = ds.x;\n  d0 = min(d0, ds.y);\n  d0 = min(d0, ds.z);\n  return d0;\n}\n\nfloat rayMarch3(vec3 ro, vec3 rd, float tinit, out int iter) {\n  float t = tinit;\n  int i;\n  for (i = 0; i < MAX_RAY_MARCHES3; ++i) {\n    float d = df3(ro + rd*t);\n    if (d < TOLERANCE3 || t > MAX_RAY_LENGTH3) {\n      break;\n    }\n    t += d;\n  }\n  iter = i;\n  return t;\n}\n\nvec3 normal3(vec3 pos) {\n  vec2  eps = vec2(NORM_OFF3,0.0);\n  vec3 nor;\n  nor.x = df3(pos+eps.xyy) - df3(pos-eps.xyy);\n  nor.y = df3(pos+eps.yxy) - df3(pos-eps.yxy);\n  nor.z = df3(pos+eps.yyx) - df3(pos-eps.yyx);\n  return normalize(nor);\n}\n\nvec3 render3(vec3 ro, vec3 rd) {\n  int iter;\n  vec3 skyCol = render0(ro, rd);\n  vec3 col  = skyCol;\n  g_gd      = vec2(1E3);\n  float t1  = rayMarch3(ro, rd, 0.1, iter);\n  vec2 gd1  = g_gd;\n  vec3 p1   = ro+t1*rd;\n  vec3 n1   = normal3(p1);\n  vec3 r1   = reflect(rd, n1);\n  vec3 rr1  = refract(rd, n1, refr_index);\n  float fre1= 1.+dot(rd, n1);\n  fre1 *= fre1;\n  float ifo = mix(0.5, 1., smoothstep(1.0, 0.9, float(iter)/float(MAX_RAY_MARCHES3)));\n  if (t1 < MAX_RAY_LENGTH3) {\n    col = render0(p1, r1)*(0.5+0.5*fre1)*ifo;\n    vec3 icol = render2(p1, rr1, gd1.x); \n    if (gd1.x > TOLERANCE3 && gd1.y > TOLERANCE3 && rr1 != vec3(0.)) {\n      col += icol*(1.-0.75*fre1)*ifo;\n    }\n  }\n  col += (glowCol0+1.*fre1*(glowCol0))/max(gd1.x, 3E-4);\n  return col;\n}\n\nvec3 effect(vec2 p, vec2 pp) {\n  const float fov = 2.0;\n  const vec3 up = vec3(0., 1., 0.);\n  const vec3 la   = vec3(0.0);\n  const vec3 ww = normalize(normalize(la-rayOrigin));\n  const vec3 uu = normalize(cross(up, ww));\n  const vec3 vv = cross(ww, uu);\n  vec3 rd = normalize(-p.x*uu + p.y*vv + fov*ww);\n  vec3 col = vec3(0.0);\n  col = render3(rayOrigin, rd);\n  col -= 2E-2*vec3(2.,3.,1.)*(length(p)+0.25);\n  col = aces_approx(col);\n  col = sqrt(col);\n  return col;\n}\n\nvoid mainImage( out vec4 fragColor, in vec2 fragCoord ) {\n  vec2 q = fragCoord/RESOLUTION.xy;\n  vec2 p = -1. + 2. * q;\n  vec2 pp = p;\n  p.x *= RESOLUTION.x/RESOLUTION.y;\n  float a = TIME*rotation_speed;\n  vec3 r0 = vec3(1.0, sin(vec2(sqrt(0.5), 1.0)*a));\n  vec3 r1 = vec3(cos(vec2(sqrt(0.5), 1.0)*0.913*a), 1.0);\n  mat3 rot = rot(normalize(r0), normalize(r1));\n  g_rot = rot;\n  vec3 col = effect(p, pp);\n  fragColor = vec4(col, 1.0);\n}\n\n`},{title:\"Seascape\",author:\"Alexander Alekseev aka TDM - 2014\",originalURL:\"https://www.shadertoy.com/view/Ms2SD1\",value:`\n\nconst int NUM_STEPS = 8;\nconst float PI\t \t= 3.141592;\nconst float EPSILON\t= 1e-3;\n#define EPSILON_NRM (0.1 / iResolution.x)\n\n// sea\nconst int ITER_GEOMETRY = 3;\nconst int ITER_FRAGMENT = 5;\nconst float SEA_HEIGHT = 0.6;\nconst float SEA_CHOPPY = 4.0;\nconst float SEA_SPEED = 0.8;\nconst float SEA_FREQ = 0.16;\nconst vec3 SEA_BASE = vec3(0.0,0.09,0.18);\nconst vec3 SEA_WATER_COLOR = vec3(0.8,0.9,0.6)*0.6;\n#define SEA_TIME (1.0 + iTime * SEA_SPEED)\nconst mat2 octave_m = mat2(1.6,1.2,-1.2,1.6);\n\n// math\nmat3 fromEuler(vec3 ang) {\n\tvec2 a1 = vec2(sin(ang.x),cos(ang.x));\n    vec2 a2 = vec2(sin(ang.y),cos(ang.y));\n    vec2 a3 = vec2(sin(ang.z),cos(ang.z));\n    mat3 m;\n    m[0] = vec3(a1.y*a3.y+a1.x*a2.x*a3.x,a1.y*a2.x*a3.x+a3.y*a1.x,-a2.y*a3.x);\n\tm[1] = vec3(-a2.y*a1.x,a1.y*a2.y,a2.x);\n\tm[2] = vec3(a3.y*a1.x*a2.x+a1.y*a3.x,a1.x*a3.x-a1.y*a3.y*a2.x,a2.y*a3.y);\n\treturn m;\n}\nfloat hash( vec2 p ) {\n\tfloat h = dot(p,vec2(127.1,311.7));\t\n    return fract(sin(h)*43758.5453123);\n}\nfloat noise( in vec2 p ) {\n    vec2 i = floor( p );\n    vec2 f = fract( p );\t\n\tvec2 u = f*f*(3.0-2.0*f);\n    return -1.0+2.0*mix( mix( hash( i + vec2(0.0,0.0) ), \n                     hash( i + vec2(1.0,0.0) ), u.x),\n                mix( hash( i + vec2(0.0,1.0) ), \n                     hash( i + vec2(1.0,1.0) ), u.x), u.y);\n}\n\n// lighting\nfloat diffuse(vec3 n,vec3 l,float p) {\n    return pow(dot(n,l) * 0.4 + 0.6,p);\n}\nfloat specular(vec3 n,vec3 l,vec3 e,float s) {    \n    float nrm = (s + 8.0) / (PI * 8.0);\n    return pow(max(dot(reflect(e,n),l),0.0),s) * nrm;\n}\n\n// sky\nvec3 getSkyColor(vec3 e) {\n    e.y = (max(e.y,0.0)*0.8+0.2)*0.8;\n    return vec3(pow(1.0-e.y,2.0), 1.0-e.y, 0.6+(1.0-e.y)*0.4) * 1.1;\n}\n\n// sea\nfloat sea_octave(vec2 uv, float choppy) {\n    uv += noise(uv);        \n    vec2 wv = 1.0-abs(sin(uv));\n    vec2 swv = abs(cos(uv));    \n    wv = mix(wv,swv,wv);\n    return pow(1.0-pow(wv.x * wv.y,0.65),choppy);\n}\n\nfloat map(vec3 p) {\n    float freq = SEA_FREQ;\n    float amp = SEA_HEIGHT;\n    float choppy = SEA_CHOPPY;\n    vec2 uv = p.xz; uv.x *= 0.75;\n    \n    float d, h = 0.0;    \n    for(int i = 0; i < ITER_GEOMETRY; i++) {        \n    \td = sea_octave((uv+SEA_TIME)*freq,choppy);\n    \td += sea_octave((uv-SEA_TIME)*freq,choppy);\n        h += d * amp;        \n    \tuv *= octave_m; freq *= 1.9; amp *= 0.22;\n        choppy = mix(choppy,1.0,0.2);\n    }\n    return p.y - h;\n}\n\nfloat map_detailed(vec3 p) {\n    float freq = SEA_FREQ;\n    float amp = SEA_HEIGHT;\n    float choppy = SEA_CHOPPY;\n    vec2 uv = p.xz; uv.x *= 0.75;\n    float d, h = 0.0;    \n    for(int i = 0; i < ITER_FRAGMENT; i++) {        \n    \td = sea_octave((uv+SEA_TIME)*freq,choppy);\n    \td += sea_octave((uv-SEA_TIME)*freq,choppy);\n        h += d * amp;        \n    \tuv *= octave_m; freq *= 1.9; amp *= 0.22;\n        choppy = mix(choppy,1.0,0.2);\n    }\n    return p.y - h;\n}\n\nvec3 getSeaColor(vec3 p, vec3 n, vec3 l, vec3 eye, vec3 dist) {  \n    float fresnel = clamp(1.0 - dot(n,-eye), 0.0, 1.0);\n    fresnel = min(pow(fresnel,3.0), 0.5);\n    vec3 reflected = getSkyColor(reflect(eye,n));    \n    vec3 refracted = SEA_BASE + diffuse(n,l,80.0) * SEA_WATER_COLOR * 0.12; \n    vec3 color = mix(refracted,reflected,fresnel);\n    float atten = max(1.0 - dot(dist,dist) * 0.001, 0.0);\n    color += SEA_WATER_COLOR * (p.y - SEA_HEIGHT) * 0.18 * atten;\n    color += vec3(specular(n,l,eye,60.0));\n    return color;\n}\n\n// tracing\nvec3 getNormal(vec3 p, float eps) {\n    vec3 n;\n    n.y = map_detailed(p);    \n    n.x = map_detailed(vec3(p.x+eps,p.y,p.z)) - n.y;\n    n.z = map_detailed(vec3(p.x,p.y,p.z+eps)) - n.y;\n    n.y = eps;\n    return normalize(n);\n}\n\nfloat heightMapTracing(vec3 ori, vec3 dir, out vec3 p) {  \n    float tm = 0.0;\n    float tx = 1000.0;    \n    float hx = map(ori + dir * tx);\n    if(hx > 0.0) {\n        p = ori + dir * tx;\n        return tx;   \n    }\n    float hm = map(ori + dir * tm);    \n    float tmid = 0.0;\n    for(int i = 0; i < NUM_STEPS; i++) {\n        tmid = mix(tm,tx, hm/(hm-hx));                   \n        p = ori + dir * tmid;                   \n    \tfloat hmid = map(p);\n\t\tif(hmid < 0.0) {\n        \ttx = tmid;\n            hx = hmid;\n        } else {\n            tm = tmid;\n            hm = hmid;\n        }\n    }\n    return tmid;\n}\n\nvec3 getPixel(in vec2 coord, float time) {    \n    vec2 uv = coord / iResolution.xy;\n    uv = uv * 2.0 - 1.0;\n    uv.x *= iResolution.x / iResolution.y;    \n        \n    // ray\n    vec3 ang = vec3(sin(time*3.0)*0.1,sin(time)*0.2+0.3,time);    \n    vec3 ori = vec3(0.0,3.5,time*5.0);\n    vec3 dir = normalize(vec3(uv.xy,-2.0)); dir.z += length(uv) * 0.14;\n    dir = normalize(dir) * fromEuler(ang);\n    \n    // tracing\n    vec3 p;\n    heightMapTracing(ori,dir,p);\n    vec3 dist = p - ori;\n    vec3 n = getNormal(p, dot(dist,dist) * EPSILON_NRM);\n    vec3 light = normalize(vec3(0.0,1.0,0.8)); \n             \n    // color\n    return mix(\n        getSkyColor(dir),\n        getSeaColor(p,n,light,dir,dist),\n    \tpow(smoothstep(0.0,-0.02,dir.y),0.2));\n}\n\n// main\nvoid mainImage( out vec4 fragColor, in vec2 fragCoord ) {\n    float time = iTime * 0.3 + iMouse.x*0.01;\n\t\n#ifdef AA\n    vec3 color = vec3(0.0);\n    for(int i = -1; i <= 1; i++) {\n        for(int j = -1; j <= 1; j++) {\n        \tvec2 uv = fragCoord+vec2(i,j)/3.0;\n    \t\tcolor += getPixel(uv, time);\n        }\n    }\n    color /= 9.0;\n#else\n    vec3 color = getPixel(fragCoord, time);\n#endif\n    \n    // post\n\tfragColor = vec4(pow(color,vec3(0.65)), 1.0);\n}\n`},{title:\"Protean clouds\",author:\"nimitz (twitter: @stormoid)\",originalURL:\"https://www.shadertoy.com/view/3l23Rh\",value:`\n \n\nmat2 rot(in float a){float c = cos(a), s = sin(a);return mat2(c,s,-s,c);}\nconst mat3 m3 = mat3(0.33338, 0.56034, -0.71817, -0.87887, 0.32651, -0.15323, 0.15162, 0.69596, 0.61339)*1.93;\nfloat mag2(vec2 p){return dot(p,p);}\nfloat linstep(in float mn, in float mx, in float x){ return clamp((x - mn)/(mx - mn), 0., 1.); }\nfloat prm1 = 0.;\nvec2 bsMo = vec2(0);\nvec2 disp(float t){ return vec2(sin(t*0.22)*1., cos(t*0.175)*1.)*2.; }\nvec2 map(vec3 p)\n{\n    vec3 p2 = p;\n    p2.xy -= disp(p.z).xy;\n    p.xy *= rot(sin(p.z+iTime)*(0.1 + prm1*0.05) + iTime*0.09);\n    float cl = mag2(p2.xy);\n    float d = 0.;\n    p *= .61;\n    float z = 1.;\n    float trk = 1.;\n    float dspAmp = 0.1 + prm1*0.2;\n    for(int i = 0; i < 5; i++)\n    {\n\t\tp += sin(p.zxy*0.75*trk + iTime*trk*.8)*dspAmp;\n        d -= abs(dot(cos(p), sin(p.yzx))*z);\n        z *= 0.57;\n        trk *= 1.4;\n        p = p*m3;\n    }\n    d = abs(d + prm1*3.)+ prm1*.3 - 2.5 + bsMo.y;\n    return vec2(d + cl*.2 + 0.25, cl);\n}\n\nvec4 render( in vec3 ro, in vec3 rd, float time )\n{\n\tvec4 rez = vec4(0);\n  const float ldst = 8.;\n\tvec3 lpos = vec3(disp(time + ldst)*0.5, time + ldst);\n\tfloat t = 1.5;\n\tfloat fogT = 0.;\n\tfor(int i=0; i<130; i++)\n\t{\n\t\tif(rez.a > 0.99)break;\n\t\tvec3 pos = ro + t*rd;\n    vec2 mpv = map(pos);\n\t\tfloat den = clamp(mpv.x-0.3,0.,1.)*1.12;\n\t\tfloat dn = clamp((mpv.x + 2.),0.,3.);\n\t\tvec4 col = vec4(0);\n    if (mpv.x > 0.6)\n    {\n    \n        col = vec4(sin(vec3(5.,0.4,0.2) + mpv.y*0.1 +sin(pos.z*0.4)*0.5 + 1.8)*0.5 + 0.5,0.08);\n        col *= den*den*den;\n        col.rgb *= linstep(4.,-2.5, mpv.x)*2.3;\n        float dif =  clamp((den - map(pos+.8).x)/9., 0.001, 1. );\n        dif += clamp((den - map(pos+.35).x)/2.5, 0.001, 1. );\n        col.xyz *= den*(vec3(0.005,.045,.075) + 1.5*vec3(0.033,0.07,0.03)*dif);\n    }\n\t\t\n\t\tfloat fogC = exp(t*0.2 - 2.2);\n\t\tcol.rgba += vec4(0.06,0.11,0.11, 0.1)*clamp(fogC-fogT, 0., 1.);\n\t\tfogT = fogC;\n\t\trez = rez + col*(1. - rez.a);\n\t\tt += clamp(0.5 - dn*dn*.05, 0.09, 0.3);\n\t}\n\treturn clamp(rez, 0.0, 1.0);\n}\n\nfloat getsat(vec3 c)\n{\n    float mi = min(min(c.x, c.y), c.z);\n    float ma = max(max(c.x, c.y), c.z);\n    return (ma - mi)/(ma+ 1e-7);\n}\n\n//from my \"Will it blend\" shader (https://www.shadertoy.com/view/lsdGzN)\nvec3 iLerp(in vec3 a, in vec3 b, in float x)\n{\n    vec3 ic = mix(a, b, x) + vec3(1e-6,0.,0.);\n    float sd = abs(getsat(ic) - mix(getsat(a), getsat(b), x));\n    vec3 dir = normalize(vec3(2.*ic.x - ic.y - ic.z, 2.*ic.y - ic.x - ic.z, 2.*ic.z - ic.y - ic.x));\n    float lgt = dot(vec3(1.0), ic);\n    float ff = dot(dir, normalize(ic));\n    ic += 1.5*dir*sd*ff*lgt;\n    return clamp(ic,0.,1.);\n}\n\nvoid mainImage( out vec4 fragColor, in vec2 fragCoord )\n{\t\n\tvec2 q = fragCoord.xy/iResolution.xy;\n    vec2 p = (gl_FragCoord.xy - 0.5*iResolution.xy)/iResolution.y;\n    bsMo = (iMouse.xy - 0.5*iResolution.xy)/iResolution.y;\n    float time = iTime*3.;\n    vec3 ro = vec3(0,0,time);\n    ro += vec3(sin(iTime)*0.5,sin(iTime*1.)*0.,0);\n    float dspAmp = .85;\n    ro.xy += disp(ro.z)*dspAmp;\n    float tgtDst = 3.5;\n    vec3 target = normalize(ro - vec3(disp(time + tgtDst)*dspAmp, time + tgtDst));\n    ro.x -= bsMo.x*2.;\n    vec3 rightdir = normalize(cross(target, vec3(0,1,0)));\n    vec3 updir = normalize(cross(rightdir, target));\n    rightdir = normalize(cross(updir, target));\n\t  vec3 rd=normalize((p.x*rightdir + p.y*updir)*1. - target);\n    rd.xy *= rot(-disp(time + 3.5).x*0.2 + bsMo.x);\n    prm1 = smoothstep(-0.4, 0.4,sin(iTime*0.3));\n\t  vec4 scn = render(ro, rd, time);\n    vec3 col = scn.rgb;\n    col = iLerp(col.bgr, col.rgb, clamp(1.-prm1,0.05,1.));\n    col = pow(col, vec3(.55,0.65,0.6))*vec3(1.,.97,.9);\n    col *= pow( 16.0*q.x*q.y*(1.0-q.x)*(1.0-q.y), 0.12)*0.7+0.3; //Vign\n\t  fragColor = vec4( col, 1.0 );\n}\n\n`},{title:\"Silk Fabric\",author:\"Giorgi Azmaipharashvili\",originalURL:\"https://www.shadertoy.com/view/X3yXRd\",value:`\n \n  #define INVERT 1\n\n  float noise(vec2 p) {\n      return smoothstep(-0.5, 0.9, sin((p.x - p.y) * 555.0) * sin(p.y * 1444.0)) - 0.4;\n  }\n\n  float fabric(vec2 p) {\n      const mat2 m = mat2(1.6, 1.2, -1.2, 1.6);\n      float f = 0.4 * noise(p);\n      f += 0.3 * noise(p = m * p);\n      f += 0.2 * noise(p = m * p);\n      return f + 0.1 * noise(m * p);\n  }\n\n  float silk(vec2 uv, float t) {\n      float s = sin(5.0 * (uv.x + uv.y + cos(2.0 * uv.x + 5.0 * uv.y)) + sin(12.0 * (uv.x + uv.y)) - t);\n      s = 0.7 + 0.3 * (s * s * 0.5 + s);\n      s *= 0.9 + 0.6 * fabric(uv * min(iResolution.x, iResolution.y) * 0.0006);\n      return s * 0.9 + 0.1;\n  }\n\n  float silkd(vec2 uv, float t) {\n      float xy = uv.x + uv.y;\n      float d = (5.0 * (1.0 - 2.0 * sin(2.0 * uv.x + 5.0 * uv.y)) + 12.0 * cos(12.0 * xy)) * cos(5.0 * (cos(2.0 * uv.x + 5.0 * uv.y) + xy) + sin(12.0 * xy) - t);\n      return 0.005 * d * (sign(d) + 3.0);\n  }\n\n  void mainImage(out vec4 fragColor, vec2 fragCoord) {\n      float mr = min(iResolution.x, iResolution.y);\n      vec2 uv = fragCoord / mr;\n      \n      float t = iTime;\n      uv.y += 0.03 * sin(8.0 * uv.x - t);\n      \n      if (iMouse.z > 1.0)\n          uv += smoothstep(0.5, 0.0, distance(iMouse.xy / mr, uv)) * 0.08;\n      // uv -= normalize(iMouse.xy / iResolution.xy * 2.0 - 1.0) * t * 0.05; // Wind, requires state\n      \n      float s = sqrt(silk(uv, t));\n      float d = silkd(uv, t);\n      vec3 c = vec3(s);\n      c += 0.7 * vec3(1, 0.83, 0.6) * d;\n      c *= 1.0 - max(0.0, 0.8 * d);\n  #if INVERT\n      c = pow(c, 0.3 / vec3(0.52, 0.5, 0.4));\n      c = 1.0 - c;\n  #else\n      c = pow(c, vec3(0.52, 0.5, 0.4));\n  #endif\n      fragColor = vec4(c, 1);\n  }\n\n`},{title:\"CineShader Lava\",author:\"edankwan\",originalURL:\"https://www.shadertoy.com/view/3sySRK\",value:`\n\nfloat opSmoothUnion( float d1, float d2, float k )\n{\n    float h = clamp( 0.5 + 0.5*(d2-d1)/k, 0.0, 1.0 );\n    return mix( d2, d1, h ) - k*h*(1.0-h);\n}\n\nfloat sdSphere( vec3 p, float s )\n{\n  return length(p)-s;\n} \n\nfloat map(vec3 p)\n{\n\tfloat d = 2.0;\n\tfor (int i = 0; i < 16; i++) {\n\t\tfloat fi = float(i);\n\t\tfloat time = iTime * (fract(fi * 412.531 + 0.513) - 0.5) * 2.0;\n\t\td = opSmoothUnion(\n            sdSphere(p + sin(time + fi * vec3(52.5126, 64.62744, 632.25)) * vec3(2.0, 2.0, 0.8), mix(0.5, 1.0, fract(fi * 412.531 + 0.5124))),\n\t\t\td,\n\t\t\t0.4\n\t\t);\n\t}\n\treturn d;\n}\n\nvec3 calcNormal( in vec3 p )\n{\n    const float h = 1e-5; // or some other value\n    const vec2 k = vec2(1,-1);\n    return normalize( k.xyy*map( p + k.xyy*h ) + \n                      k.yyx*map( p + k.yyx*h ) + \n                      k.yxy*map( p + k.yxy*h ) + \n                      k.xxx*map( p + k.xxx*h ) );\n}\n\nvoid mainImage( out vec4 fragColor, in vec2 fragCoord )\n{\n  vec2 uv = fragCoord/iResolution.xy;\n    \n  // screen size is 6m x 6m\n\tvec3 rayOri = vec3((uv - 0.5) * vec2(iResolution.x/iResolution.y, 1.0) * 6.0, 3.0);\n\tvec3 rayDir = vec3(0.0, 0.0, -1.0);\n\tfloat depth = 0.0;\n\tvec3 p;\n\tfor(int i = 0; i < 64; i++) {\n\t\tp = rayOri + rayDir * depth;\n\t\tfloat dist = map(p);\n        depth += dist;\n\t\tif (dist < 1e-6) {\n\t\t\tbreak;\n\t\t}\n\t}\n  depth = min(6.0, depth);\n\tvec3 n = calcNormal(p);\n  float b = max(0.0, dot(n, vec3(0.577)));\n  vec3 col = (0.5 + 0.5 * cos((b + iTime * 3.0) + uv.xyx * 2.0 + vec3(0,2,4))) * (0.85 + b * 0.35);\n  col *= exp( -depth * 0.15 );\n\t\n  // maximum thickness is 2m in alpha channel\n  fragColor = vec4(col, 1.0 - (depth - 0.5) / 2.0);\n  fragColor.a = 1.0;\n}\n\n`},{title:\"TV Noise\",author:\"arthurstammet\",originalURL:\"https://www.shadertoy.com/view/tdXXRM\",value:`\n\nfloat Noise21 (vec2 p, float ta, float tb) {\n    return fract(sin(p.x*ta+p.y*tb)*5678.);\n}\n\nvoid mainImage(out vec4 fragColor, in vec2 fragCoord)\n{\n    vec2 uv = fragCoord/iResolution.xy;\n    float t = iTime+123.; // tweak the start moment\n    float ta = t*.654321;\n    float tb = t*(ta*.123456);\n    float c = Noise21(uv, ta, tb);\n    vec3 col = vec3(c);\n    fragColor = vec4(col,1.);\n}\n\n`},{title:\"MONSTER\",author:\"butadiene\",originalURL:\"https://www.shadertoy.com/view/WtKSzt\",value:`\n  float TK = 1.;\n  float PI = 3.1415926535;\n\nvec2 rot(vec2 p,float r){\n\tmat2 m = mat2(cos(r),sin(r),-sin(r),cos(r));\n\treturn m*p;\n}\n\nvec2 pmod(vec2 p,float n){\n\tfloat np = 2.0*PI/n;\n\tfloat r = atan(p.x,p.y)-0.5*np;\n\tr = mod(r,np)-0.5*np;\n\treturn length(p)*vec2(cos(r),sin(r));\n}\n\nfloat cube(vec3 p,vec3 s){\n\tvec3 q = abs(p);\n\tvec3 m = max(s-q,0.0);\n\treturn length(max(q-s,0.0))-min(min(m.x,m.y),m.z);\n}\n\nfloat dist(vec3 p){\n\tp.z -= 1.*TK*iTime;\n\tp.xy = rot(p.xy,1.0*p.z);\n\tp.xy = pmod(p.xy,6.0);\n\tfloat k = 0.7;\n\tfloat zid = floor(p.z*k);\n\tp = mod(p,k)-0.5*k;\n\tfor(int i = 0;i<4;i++){\n\t\tp = abs(p)-0.3;\n\t\tp.xy = rot(p.xy,1.0+zid+0.1*TK*iTime);\n\t\tp.xz = rot(p.xz,1.0+4.7*zid+0.3*TK*iTime);\n\t}\n\treturn min(cube(p,vec3(0.3)),length(p)-0.4);\n}\n\nvoid mainImage( out vec4 fragColor, in vec2 fragCoord )\n{\n  vec2 uv = fragCoord/iResolution.xy;\n\tuv = 2.0*(uv-0.5);\n\tuv.y *= iResolution.y/iResolution.x;\n\tuv = rot(uv,TK*iTime);\n\tvec3 ro = vec3(0.0,0.0,0.1);\n\tvec3 rd = normalize(vec3(uv,0.0)-ro);\n\tfloat t  =2.0;\n\tfloat d = 0.0;\n\tfloat ac = 0.0;\n\tfor(int i = 0;i<66;i++){\n  d = dist(ro+rd*t)*0.2;\n  d = max(0.0000,abs(d));\n  t += d;\n  if(d<0.001)ac += 0.1;//exp(-15.0*d);\n\t}\n\tvec3 col = vec3(0.0);\n\tcol = vec3(0.1,0.7,0.7)*0.2*vec3(ac);//vec3(exp(-1.0*t));\n\tvec3 pn = ro+rd*t;\n\tfloat kn = 0.5;\n\tpn.z += -1.5*iTime*TK;\n\tpn.z = mod(pn.z,kn)-0.5*kn;\n\tfloat em = clamp(0.01/pn.z,0.0,100.0);\n\tcol += 3.0*em*vec3(0.1,1.0,0.1);\n\tcol = clamp(col,0.0,1.0);\n\n  // Output to screen\n  fragColor = vec4(col,0.1);\n  fragColor.a = 1.0;\n}\n\n`},{title:\"2D Clouds\",author:\"drift\",originalURL:\"https://www.shadertoy.com/view/4tdSWr\",value:`\nconst float cloudscale = 1.1;\nconst float speed = 0.03;\nconst float clouddark = 0.5;\nconst float cloudlight = 0.3;\nconst float cloudcover = 0.2;\nconst float cloudalpha = 8.0;\nconst float skytint = 0.5;\nconst vec3 skycolour1 = vec3(0.2, 0.4, 0.6);\nconst vec3 skycolour2 = vec3(0.4, 0.7, 1.0);\n\nconst mat2 m = mat2( 1.6,  1.2, -1.2,  1.6 );\n\nvec2 hash( vec2 p ) {\n\tp = vec2(dot(p,vec2(127.1,311.7)), dot(p,vec2(269.5,183.3)));\n\treturn -1.0 + 2.0*fract(sin(p)*43758.5453123);\n}\n\nfloat noise( in vec2 p ) {\n    const float K1 = 0.366025404; // (sqrt(3)-1)/2;\n    const float K2 = 0.211324865; // (3-sqrt(3))/6;\n\tvec2 i = floor(p + (p.x+p.y)*K1);\t\n    vec2 a = p - i + (i.x+i.y)*K2;\n    vec2 o = (a.x>a.y) ? vec2(1.0,0.0) : vec2(0.0,1.0); //vec2 of = 0.5 + 0.5*vec2(sign(a.x-a.y), sign(a.y-a.x));\n    vec2 b = a - o + K2;\n\tvec2 c = a - 1.0 + 2.0*K2;\n    vec3 h = max(0.5-vec3(dot(a,a), dot(b,b), dot(c,c) ), 0.0 );\n\tvec3 n = h*h*h*h*vec3( dot(a,hash(i+0.0)), dot(b,hash(i+o)), dot(c,hash(i+1.0)));\n    return dot(n, vec3(70.0));\t\n}\n\nfloat fbm(vec2 n) {\n\tfloat total = 0.0, amplitude = 0.1;\n\tfor (int i = 0; i < 7; i++) {\n\t\ttotal += noise(n) * amplitude;\n\t\tn = m * n;\n\t\tamplitude *= 0.4;\n\t}\n\treturn total;\n}\n\n// -----------------------------------------------\n\nvoid mainImage( out vec4 fragColor, in vec2 fragCoord ) {\n    vec2 p = fragCoord.xy / iResolution.xy;\n\t  vec2 uv = p*vec2(iResolution.x/iResolution.y,1.0);    \n    float time = iTime * speed;\n    float q = fbm(uv * cloudscale * 0.5);\n    \n    //ridged noise shape\n\t  float r = 0.0;\n\t  uv *= cloudscale;\n    uv -= q - time;\n    float weight = 0.8;\n    for (int i=0; i<8; i++){\n\t\tr += abs(weight*noise( uv ));\n    uv = m*uv + time;\n\t\tweight *= 0.7;\n    }\n    \n    //noise shape\n\t  float f = 0.0;\n    uv = p*vec2(iResolution.x/iResolution.y,1.0);\n\t  uv *= cloudscale;\n    uv -= q - time;\n    weight = 0.7;\n    for (int i=0; i<8; i++){\n\t\tf += weight*noise( uv );\n        uv = m*uv + time;\n\t\tweight *= 0.6;\n    }\n    \n    f *= r + f;\n    \n    //noise colour\n    float c = 0.0;\n    time = iTime * speed * 2.0;\n    uv = p*vec2(iResolution.x/iResolution.y,1.0);\n\t  uv *= cloudscale*2.0;\n    uv -= q - time;\n    weight = 0.4;\n    for (int i=0; i<7; i++){\n\t\tc += weight*noise( uv );\n    uv = m*uv + time;\n\t\tweight *= 0.6;\n    }\n    \n    //noise ridge colour\n    float c1 = 0.0;\n    time = iTime * speed * 3.0;\n    uv = p*vec2(iResolution.x/iResolution.y,1.0);\n\t  uv *= cloudscale*3.0;\n    uv -= q - time;\n    weight = 0.4;\n    for (int i=0; i<7; i++){\n\t\tc1 += abs(weight*noise( uv ));\n    uv = m*uv + time;\n\t\tweight *= 0.6;\n    }\n    c += c1;\n    vec3 skycolour = mix(skycolour2, skycolour1, p.y);\n    vec3 cloudcolour = vec3(1.1, 1.1, 0.9) * clamp((clouddark + cloudlight*c), 0.0, 1.0);\n    f = cloudcover + cloudalpha*f*r;\n    vec3 result = mix(skycolour, clamp(skytint * skycolour + cloudcolour, 0.0, 1.0), clamp(f + c, 0.0, 1.0));\n\t  fragColor = vec4( result, 1.0 );\n}\n\n`},{title:\"Tileable Water Caustic\",author:\"Dave_Hoskins\",originalURL:\"https://www.shadertoy.com/view/MdlXz8\",value:`\n\n#define TAU 6.28318530718\n#define MAX_ITER 5\n\nvoid mainImage( out vec4 fragColor, in vec2 fragCoord ) \n{\n\tfloat time = iTime * .5+23.0;\n  // uv should be the 0-1 uv of texture...\n\tvec2 uv = fragCoord.xy / iResolution.xy;\n\n#ifdef SHOW_TILING\n\tvec2 p = mod(uv*TAU*2.0, TAU)-250.0;\n#else\n    vec2 p = mod(uv*TAU, TAU)-250.0;\n#endif\n\tvec2 i = vec2(p);\n\tfloat c = 1.0;\n\tfloat inten = .005;\n\tfor (int n = 0; n < MAX_ITER; n++) \n\t{\n\t\tfloat t = time * (1.0 - (3.5 / float(n+1)));\n\t\ti = p + vec2(cos(t - i.x) + sin(t + i.y), sin(t - i.y) + cos(t + i.x));\n\t\tc += 1.0/length(vec2(p.x / (sin(i.x+t)/inten),p.y / (cos(i.y+t)/inten)));\n\t}\n\tc /= float(MAX_ITER);\n\tc = 1.17-pow(c, 1.4);\n\tvec3 colour = vec3(pow(abs(c), 8.0));\n  colour = clamp(colour + vec3(0.0, 0.35, 0.5), 0.0, 1.0);\n\n\t#ifdef SHOW_TILING\n\t// Flash tile borders...\n\tvec2 pixel = 2.0 / iResolution.xy;\n\tuv *= 2.0;\n\tfloat f = floor(mod(iTime*.5, 2.0)); \t// Flash value.\n\tvec2 first = step(pixel, uv) * f;\t\t   \t// Rule out first screen pixels and flash.\n\tuv  = step(fract(uv), pixel);\t\t\t\t// Add one line of pixels per tile.\n\tcolour = mix(colour, vec3(1.0, 1.0, 0.0), (uv.x + uv.y) * first.x * first.y); // Yellow line\n\t#endif\n\n\tfragColor = vec4(colour, 1.0);\n}\n\n`},{title:\"Auroras\",author:\"nimitz\",originalURL:\"https://www.shadertoy.com/view/XtGGRt\",value:` \n\n#define time iTime\nmat2 mm2(in float a){float c = cos(a), s = sin(a);return mat2(c,s,-s,c);}\nmat2 m2 = mat2(0.95534, 0.29552, -0.29552, 0.95534);\nfloat tri(in float x){return clamp(abs(fract(x)-.5),0.01,0.49);}\nvec2 tri2(in vec2 p){return vec2(tri(p.x)+tri(p.y),tri(p.y+tri(p.x)));}\nfloat triNoise2d(in vec2 p, float spd)\n{\n    float z=1.8;\n    float z2=2.5;\n\t  float rz = 0.;\n    p *= mm2(p.x*0.06);\n    vec2 bp = p;\n    for (float i=0.; i<5.; i++ )\n    {\n          vec2 dg = tri2(bp*1.85)*.75;\n          dg *= mm2(time*spd);\n          p -= dg/z2;\n          bp *= 1.3;\n          z2 *= .45;\n          z *= .42;\n          p *= 1.21 + (rz-1.0)*.02;\n          rz += tri(p.x+tri(p.y))*z;\n          p*= -m2;\n    }\n    return clamp(1./pow(rz*29., 1.3),0.,.55);\n}\n\nfloat hash21(in vec2 n){ return fract(sin(dot(n, vec2(12.9898, 4.1414))) * 43758.5453); }\nvec4 aurora(vec3 ro, vec3 rd)\n{\n    vec4 col = vec4(0);\n    vec4 avgCol = vec4(0);\n    for(float i=0.;i<50.;i++)\n    {\n        float of = 0.006*hash21(gl_FragCoord.xy)*smoothstep(0.,15., i);\n        float pt = ((.8+pow(i,1.4)*.002)-ro.y)/(rd.y*2.+0.4);\n        pt -= of;\n    \t  vec3 bpos = ro + pt*rd;\n        vec2 p = bpos.zx;\n        float rzt = triNoise2d(p, 0.06);\n        vec4 col2 = vec4(0,0,0, rzt);\n        col2.rgb = (sin(1.-vec3(2.15,-.5, 1.2)+i*0.043)*0.5+0.5)*rzt;\n        avgCol =  mix(avgCol, col2, .5);\n        col += avgCol*exp2(-i*0.065 - 2.5)*smoothstep(0.,5., i);\n        \n    }\n    \n    col *= (clamp(rd.y*15.+.4,0.,1.));\n    \n    //return clamp(pow(col,vec4(1.3))*1.5,0.,1.);\n    //return clamp(pow(col,vec4(1.7))*2.,0.,1.);\n    //return clamp(pow(col,vec4(1.5))*2.5,0.,1.);\n    //return clamp(pow(col,vec4(1.8))*1.5,0.,1.);\n    //return smoothstep(0.,1.1,pow(col,vec4(1.))*1.5);\n    return col*1.8;\n    //return pow(col,vec4(1.))*2.\n}\n\n//-------------------Background and Stars--------------------\nvec3 nmzHash33(vec3 q)\n{\n    uvec3 p = uvec3(ivec3(q));\n    p = p*uvec3(374761393U, 1103515245U, 668265263U) + p.zxy + p.yzx;\n    p = p.yzx*(p.zxy^(p >> 3U));\n    return vec3(p^(p >> 16U))*(1.0/vec3(0xffffffffU));\n}\n\nvec3 stars(in vec3 p)\n{\n    vec3 c = vec3(0.);\n    float res = iResolution.x*1.;\n    \n\tfor (float i=0.;i<4.;i++)\n    {\n        vec3 q = fract(p*(.15*res))-0.5;\n        vec3 id = floor(p*(.15*res));\n        vec2 rn = nmzHash33(id).xy;\n        float c2 = 1.-smoothstep(0.,.6,length(q));\n        c2 *= step(rn.x,.0005+i*i*0.001);\n        c += c2*(mix(vec3(1.0,0.49,0.1),vec3(0.75,0.9,1.),rn.y)*0.1+0.9);\n        p *= 1.3;\n    }\n    return c*c*.8;\n}\n\nvec3 bg(in vec3 rd)\n{\n    float sd = dot(normalize(vec3(-0.5, -0.6, 0.9)), rd)*0.5+0.5;\n    sd = pow(sd, 5.);\n    vec3 col = mix(vec3(0.05,0.1,0.2), vec3(0.1,0.05,0.2), sd);\n    return col*.63;\n}\n\n//-----------------------------------------------------------\n\nvoid mainImage( out vec4 fragColor, in vec2 fragCoord )\n{\n\t  vec2 q = fragCoord.xy / iResolution.xy;\n    vec2 p = q - 0.5;\n\t  p.x*=iResolution.x/iResolution.y;\n    vec3 ro = vec3(0,0,-6.7);\n    vec3 rd = normalize(vec3(p,1.3));\n    vec2 mo = iMouse.xy / iResolution.xy-.5;\n    mo = (mo==vec2(-.5))?mo=vec2(-0.1,0.1):mo;\n\t  mo.x *= iResolution.x/iResolution.y;\n    rd.yz *= mm2(mo.y);\n    rd.xz *= mm2(mo.x + sin(time*0.05)*0.2);\n    vec3 col = vec3(0.);\n    vec3 brd = rd;\n    float fade = smoothstep(0.,0.01,abs(brd.y))*0.1+0.9;\n    col = bg(rd)*fade;\n    if (rd.y > 0.){\n        vec4 aur = smoothstep(0.,1.5,aurora(ro,rd))*fade;\n        col += stars(rd);\n        col = col*(1.-aur.a) + aur.rgb;\n    }\n    else //Reflections\n    {\n        rd.y = abs(rd.y);\n        col = bg(rd)*fade*0.6;\n        vec4 aur = smoothstep(0.0,2.5,aurora(ro,rd));\n        col += stars(rd)*0.1;\n        col = col*(1.-aur.a) + aur.rgb;\n        vec3 pos = ro + ((0.5-ro.y)/rd.y)*rd;\n        float nz2 = triNoise2d(pos.xz*vec2(.5,.7), 0.);\n        col += mix(vec3(0.2,0.25,0.5)*0.08,vec3(0.3,0.3,0.5)*0.7, nz2*0.4);\n    }\n\tfragColor = vec4(col, 1.);\n}\n\n`},{title:\"Cellular\",author:\"vug\",originalURL:\"https://www.shadertoy.com/view/Xs2GDd\",value:`\n\n#define PI 3.14159265359\nvec3 col1 = vec3(0.216, 0.471, 0.698); // blue\nvec3 col2 = vec3(1.00, 0.329, 0.298); // yellow\nvec3 col3 = vec3(0.867, 0.910, 0.247); // red\n\nfloat disk(vec2 r, vec2 center, float radius) {\n\treturn 1.0 - smoothstep( radius-0.008, radius+0.008, length(r-center));\n}\n\nvoid mainImage( out vec4 fragColor, in vec2 fragCoord )\n{\n\tfloat t = iTime*2.;\n\tvec2 r = (2.0*fragCoord.xy - iResolution.xy) / iResolution.y;\n\tr *= 1.0 + 0.05*sin(r.x*5.+iTime) + 0.05*sin(r.y*3.+iTime);\n\tr *= 1.0 + 0.2*length(r);\n\tfloat side = 0.5;\n\tvec2 r2 = mod(r, side);\n\tvec2 r3 = r2-side/2.;\n\tfloat i = floor(r.x/side)+2.;\n\tfloat j = floor(r.y/side)+4.;\n\tfloat ii = r.x/side+2.;\n\tfloat jj = r.y/side+4.;\t\n\tvec3 pix = vec3(1.0);\n\tfloat rad, disks;\n\trad = 0.15 + 0.05*sin(t+ii*jj);\n\tdisks = disk(r3, vec2(0.,0.), rad);\n\tpix = mix(pix, col2, disks);\n\tfloat speed = 2.0;\n\tfloat tt = iTime*speed+0.1*i+0.08*j;\n\tfloat stopEveryAngle = PI/2.0;\n\tfloat stopRatio = 0.7;\n\tfloat t1 = (floor(tt) + smoothstep(0.0, 1.0-stopRatio, fract(tt)) )*stopEveryAngle;\n\tfloat x = -0.07*cos(t1+i);\n\tfloat y = 0.055*(sin(t1+j)+cos(t1+i));\n\trad = 0.1 + 0.05*sin(t+i+j);\n\tdisks = disk(r3, vec2(x,y), rad);\n\tpix = mix(pix, col1, disks);\n\trad = 0.2 + 0.05*sin(t*(1.0+0.01*i));\n\tdisks = disk(r3, vec2(0.,0.), rad);\n\tpix += 0.2*col3*disks * sin(t+i*j+i);\n\tpix -= smoothstep(0.3, 5.5, length(r));\t\n\tfragColor = vec4(pix,1.0);\n}\n\n`},{title:\"DrawCircle\",author:\"haquxx\",originalURL:\"https://www.shadertoy.com/view/3tdSRn\",value:`\n\nvec3 drawCircle(vec2 pos, float radius, float width, float power, vec4 color)\n{\n    vec2 mousePos = iMouse.xy - vec2(0.5);\n    float dist1 = length(pos);\n    dist1 = fract((dist1 * 5.0) - fract(iTime));\n    float dist2 = dist1 - radius;\n    float intensity = pow(radius / abs(dist2), width); \n    vec3 col = color.rgb * intensity * power * max((0.8- abs(dist2)), 0.0);\n    return col;\n}\n\nvec3 hsv2rgb(float h, float s, float v)\n{\n    vec4 t = vec4(1.0, 2.0/3.0, 1.0/3.0, 3.0);\n    vec3 p = abs(fract(vec3(h) + t.xyz) * 6.0 - vec3(t.w));\n    return v * mix(vec3(t.x), clamp(p - vec3(t.x), 0.0, 1.0), s);\n}\n\nvoid mainImage( out vec4 fragColor, in vec2 fragCoord )\n{\n    // // -1.0 ~ 1.0\n    vec2 pos = (fragCoord.xy * 2.0 - iResolution.xy) / min(iResolution.x, iResolution.y);\n    float h = mix(0.5, 0.65, length(pos));\n    vec4 color = vec4(hsv2rgb(h, 1.0, 1.0), 1.0);\n    float radius = 0.5;\n    float width = 0.8;\n    float power = 0.1;\n    vec3 finalColor = drawCircle(pos, radius, width, power, color);\n    pos = abs(pos);\n    // vec3 finalColor = vec3(pos.x, 0.0, pos.y);\n    fragColor = vec4(finalColor, 1.0);\n}\n\n`},{title:\"PsychedelicSakura\",author:\"Author Reva - 2020-02-21\",originalURL:\"https://www.shadertoy.com/view/wlGXRD\",value:`\n\nfloat plot(float r, float pct){\n\treturn  smoothstep( pct-0.2, pct, r) -smoothstep( pct, pct+0.2, r);\n}\n\nvec3 pal( in float t, in vec3 a, in vec3 b, in vec3 c, in vec3 d ){\n        return a + b*cos( 6.28318*(c*t+d) );\n}\n\nvoid mainImage( out vec4 fragColor, in vec2 fragCoord )\n{\n    vec2 uv = fragCoord/iResolution.xy;\n    vec3 col = vec3(1.0);\n    vec2 pos = vec2(0.5) - uv;\n    pos.x *= iResolution.x/iResolution.y;\n    pos *= cos(iTime)*1.0+1.5;\n    float r = length(pos)*2.0;\n    float a = atan(pos.y,pos.x);\n    float f = abs(cos(a*2.5+iTime*0.5))*sin(iTime*2.0)*0.698+cos(iTime)-4.0;\n    float d = f-r;\n    col = (vec3(smoothstep(fract(d),fract(d)+-0.200,0.160))-vec3(smoothstep(fract(d),fract(d)+-1.184,0.160)) ) \n\t* pal( f, vec3(0.725,0.475,0.440),vec3(0.605,0.587,0.007),vec3(1.0,1.0,1.0),vec3(0.310,0.410,0.154) );\n    float pct = plot(r*0.272,fract(d*(sin(iTime)*0.45+0.5)));\n    col += pct*pal( r, vec3(0.750,0.360,0.352),vec3(0.450,0.372,0.271),vec3(0.540,0.442,0.264),vec3(0.038,0.350,0.107) );\n\n    // Output to screen\n    fragColor = vec4(col,pct*0.3);\n    fragColor.a = 1.0;\n}\n\n`},{title:\"Fractal\",author:\"gaetanThiesson\",originalURL:\"https://www.shadertoy.com/view/WlcXR4\",value:`\n\nvec2 f(vec2 x, vec2 c) {\n    return mat2(x,-x.y,x.x)*x + c;\n}\n\nvec3 palette(float t, vec3 a, vec3 b, vec3 c, vec3 d) {\n    return a + b*cos( 6.28318*(c*t+d) );\n}\n\nvoid mainImage( out vec4 fragColor, in vec2 fragCoord )\n{\n    vec2 uv = fragCoord/iResolution.xy;\n    uv -= 0.5;uv *= 1.3;uv += 0.5;\n    vec4 col = vec4(1.0);\n    float time = iTime;\n    int u_maxIterations = 75;\n    float r = 0.7885*(sin((time/3.) - 1.57)*0.2+0.85);\n\t  vec2 c = vec2(r*cos((time/3.)), r*sin((time/3.)));\n    vec2 z = vec2(0.);\n    z.x = 3.0 * (uv.x - 0.5);\n    z.y = 2.0 * (uv.y - 0.5);\n    bool escaped = false;\n    int iterations;\n    for (int i = 0; i < 10000; i++) {\n        if (i > u_maxIterations) break;\n        iterations = i;\n        z = f(z, c);\n        if (dot(z,z) > 4.0) {\n            escaped = true;\n            break;\n        }\n    }\n\t\t\t\n    vec3 iterationCol = vec3(palette(float(iterations)/ float(u_maxIterations),\n                                     vec3(0.5),\n                                     vec3(0.5),\n                                     vec3(1.0, 1.0, 0.0),\n                                     vec3(0.3 + 0.3 * sin(time),\n                                          0.2 + 0.2 * sin(1. + time),\n                                          0.2  + 0.2 * sin(1.5 + time))));\n\t\t\n\t  vec3 coreCol = vec3(0.);\n    float f_ite = float(iterations);\n    float f_maxIte = float(u_maxIterations);\n    fragColor = vec4(escaped ? iterationCol : coreCol, f_ite/f_maxIte );\n    fragColor.a = 1.0;\n}\n\n`},{title:\"CoordSys - intersection\",author:\"Inigo Quilez\",originalURL:\"https://www.shadertoy.com/view/lsfGDB\",value:`\n\n#if 1\n\n//Elegant way to intersect a planar coordinate system (3x3 linear system)\nvec3 intersectCoordSys( in vec3 ro, in vec3 rd, vec3 dc, vec3 du, vec3 dv )\n{\n\tvec3 oc = ro - dc;\n\treturn vec3(\n        dot( cross(du,dv), oc ),\n\t\tdot( cross(oc,du), rd ),\n\t\tdot( cross(dv,oc), rd ) ) / \n        dot( cross(dv,du), rd );\n}\n\n#else\n\n// Ugly (but faster) way to intersect a planar coordinate system: plane + projection\nvec3 intersectCoordSys( in vec3 ro, in vec3 rd, vec3 dc, vec3 du, vec3 dv )\n{\n\tvec3  oc = ro - dc;\n\tvec3  no = cross(du,dv);\n    float t  = -dot(no,oc)/dot(rd,no);\n    float r  =  dot(du,oc + rd*t);\n    float s  =  dot(dv,oc + rd*t);\n    return vec3(t,s,r);\n}\n\n#endif\t\n\nvec3 hash3( float n )\n{\n    return fract(sin(vec3(n,n+1.0,n+2.0))*vec3(43758.5453123,12578.1459123,19642.3490423));\n}\n\nvec3 shade( in vec4 res )\n{\n    float ra = length(res.yz);\n    float an = atan(res.y,res.z) + 2.0*iTime;\n    float pa = sin(3.0*an);\n\n    vec3 cola = 0.5 + 0.5*sin( (res.w/32.0)*3.5 + vec3(0.0,1.0,2.0) );\n\t\n\tvec3 col = vec3(0.0);\n\tcol += cola*0.4*(1.0-smoothstep( 0.90, 1.00, ra) );\n  col += cola*1.0*(1.0-smoothstep( 0.00, 0.03, abs(ra-0.8)))*(0.5+0.5*pa);\n  col += cola*1.0*(1.0-smoothstep( 0.00, 0.20, abs(ra-0.8)))*(0.5+0.5*pa);\n  col += cola*0.5*(1.0-smoothstep( 0.05, 0.10, abs(ra-0.5)))*(0.5+0.5*pa);\n  col += cola*0.7*(1.0-smoothstep( 0.00, 0.30, abs(ra-0.5)))*(0.5+0.5*pa);\n\treturn col*0.3;\n}\n\nvec3 render( in vec3 ro, in vec3 rd )\n{\n  // raytrace\n  vec3 col = vec3( 0.0 );\n\tfor( int i=0; i<32; i++ )\n\t{\n\t\t  // position disk\n\t    vec3 r = 1.5*(-1.0 + 2.0*hash3( float(i) ));\n\t\t\n      // orientate disk\n      vec3 u = normalize( r.zxy );\n      vec3 v = normalize( cross( u, vec3(0.0,1.0,0.0 ) ) );\t\t\t\t\t\t   \n  \n      // intersect coord sys\n      vec3 tmp = intersectCoordSys( ro, rd, r, u, v );\n\t\n\t    if( dot(tmp.yz,tmp.yz)<1.0 && tmp.x>0.0 ) \n\t    {\n        // shade\t\t\t\n\t\t    col += shade( vec4(tmp,float(i)) );\n\t    }\n\t}\n\n    return col;\n}\n\nvoid mainImage( out vec4 fragColor, in vec2 fragCoord )\n{\n    vec2 p = (2.0*fragCoord-iResolution.xy)/iResolution.y;\n    // camera\n\t  vec3 ro = 1.5*vec3(cos(0.05*iTime),0.0,sin(0.05*iTime));\n    vec3 ta = vec3(0.0,0.0,0.0);\n    // camera matrix\n    vec3 ww = normalize( ta - ro );\n    vec3 uu = normalize( cross(ww,vec3(0.0,1.0,0.0) ) );\n    vec3 vv = normalize( cross(uu,ww));\n\t  // create view ray\n\t  vec3 rd = normalize( p.x*uu + p.y*vv + 1.0*ww );\n    vec3 col = render( ro, rd );\n    fragColor = vec4( col, 1.0 );\n}\n\n`},{title:\"Waves Remix\",author:\"ADOB\",originalURL:\"https://www.shadertoy.com/view/4ljGD1\",value:`\n\n  float squared(float value) { return value * value; }\n  float getAmp(float frequency) { return texture(iChannel0, vec2(frequency / 512.0, 0)).x; }\n  float getWeight(float f) {\n  return (+ getAmp(f-2.0) + getAmp(f-1.0) + getAmp(f+2.0) + getAmp(f+1.0) + getAmp(f)) / 5.0; }\n\n  void mainImage( out vec4 fragColor, in vec2 fragCoord )\n  {    \n    vec2 uvTrue = fragCoord.xy / iResolution.xy;\n    vec2 uv = -1.0 + 2.0 * uvTrue;\n    float lineIntensity;\n    float glowWidth;\n    vec3 color = vec3(0.0);\n    for(float i = 0.0; i < 5.0; i++) {     \n    uv.y += (0.2 * sin(uv.x + i/7.0 - iTime * 0.6));\n    float Y = uv.y + getWeight(squared(i) * 20.0) *\n    (texture(iChannel0, vec2(uvTrue.x, 1)).x - 0.5);\n    lineIntensity = 0.4 + squared(1.6 * abs(mod(uvTrue.x + i / 1.3 + iTime,2.0) - 1.0));\n    glowWidth = abs(lineIntensity / (150.0 * Y));\n    color += vec3(glowWidth * (2.0 + sin(iTime * 0.13)),\n                      glowWidth * (2.0 - sin(iTime * 0.23)),\n                      glowWidth * (2.0 - cos(iTime * 0.19)));\n  }\t\n\t\n\tfragColor = vec4(color, 1.0);\n}\n\n`},{title:\"Kaleidoscope Tunnel\",author:\"kaneta\",originalURL:\"https://www.shadertoy.com/view/WsSGWG\",value:`\n\n#define PI 3.141592654\n\nmat2 rot(float x)\n{\n    return mat2(cos(x), sin(x), -sin(x), cos(x));\n}\n\nvec2 foldRotate(in vec2 p, in float s) {\n    float a = PI / s - atan(p.x, p.y);\n    float n = PI * 2. / s;\n    a = floor(a / n) * n;\n    p *= rot(a);\n    return p;\n}\n\nfloat sdRect( vec2 p, vec2 b )\n{\n  vec2 d = abs(p) - b;\n  return min(max(d.x, d.y),0.0) + length(max(d,0.0));\n}\n\n// TheGrid by dila\n// https://www.shadertoy.com/view/llcXWr\nfloat tex(vec2 p, float z)\n{\n    p = foldRotate(p, 8.0);\n    vec2 q = (fract(p / 10.0) - 0.5) * 10.0;\n    for (int i = 0; i < 3; ++i) {\n        for(int j = 0; j < 2; j++) {\n        \tq = abs(q) - .25;\n        \tq *= rot(PI * .25);\n        }\n        q = abs(q) - vec2(1.0, 1.5);\n        q *= rot(PI * .25 * z);\n\t\tq = foldRotate(q, 3.0);  \n    }\n\tfloat d = sdRect(q, vec2(1., 1.));\n  float f = 1.0 / (1.0 + abs(d));\n  return smoothstep(.9, 1., f);\n}\n\n// The Drive Home by BigWings\n// https://www.shadertoy.com/view/MdfBRX\nfloat Bokeh(vec2 p, vec2 sp, float size, float mi, float blur)\n{\n    float d = length(p - sp);\n    float c = smoothstep(size, size*(1.-blur), d);\n    c *= mix(mi, 1., smoothstep(size*.8, size, d));\n    return c;\n}\n\nvec2 hash( vec2 p ){\n\tp = vec2( dot(p,vec2(127.1,311.7)),dot(p,vec2(269.5,183.3)));\n\treturn fract(sin(p)*43758.5453) * 2.0 - 1.0;\n}\n\nfloat dirt(vec2 uv, float n)\n{\n    vec2 p = fract(uv * n);\n    vec2 st = (floor(uv * n) + 0.5) / n;\n    vec2 rnd = hash(st);\n    return Bokeh(p, vec2(0.5, 0.5) + vec2(0.2) * rnd, 0.05, abs(rnd.y * 0.4) + 0.3, 0.25 + rnd.x * rnd.y * 0.2);\n}\n\nfloat sm(float start, float end, float t, float smo)\n{\n    return smoothstep(start, start + smo, t) - smoothstep(end - smo, end, t);\n}\n\nvoid mainImage( out vec4 fragColor, in vec2 fragCoord )\n{\n\tvec2 uv = fragCoord.xy / iResolution.xy;\n    uv = uv * 2.0 - 1.0;\n    uv.x *= iResolution.x / iResolution.y;\n    uv *= 2.0;\n    vec3 col = vec3(0.0);\n    #define N 6\n    #define NN float(N)\n    #define INTERVAL 3.0\n    #define INTENSITY vec3((NN * INTERVAL - t) / (NN * INTERVAL))\n    float time = iTime;\n    for(int i = 0; i < N; i++) {\n        float t;\n        float ii = float(N - i);\n        t = ii * INTERVAL - mod(time - INTERVAL * 0.75, INTERVAL);\n        col = mix(col, INTENSITY, dirt(mod(uv * max(0.0, t) * 0.1 + vec2(.2, -.2) * time, 1.2), 3.5));\n        t = ii * INTERVAL - mod(time + INTERVAL * 0.5, INTERVAL);\n        col = mix(col, INTENSITY * vec3(0.7, 0.8, 1.0) * 1.3,tex(uv * max(0.0, t), 4.45));\n        t = ii * INTERVAL - mod(time - INTERVAL * 0.25, INTERVAL);\n        col = mix(col, INTENSITY * vec3(1.), dirt(mod(uv * max(0.0, t) * 0.1 + vec2(-.2, -.2) *  time, 1.2), 3.5));    \n        t = ii * INTERVAL - mod(time, INTERVAL);\n        float r = length(uv * 2.0 * max(0.0, t));\n        float rr = sm(-24.0, -0.0, (r - mod(time * 30.0, 90.0)), 10.0);\n        col = mix(col, mix(INTENSITY * vec3(1.), INTENSITY * vec3(0.7, 0.5, 1.0) * 3.0, rr),tex(uv * 2.0 * max(0.0, t), 0.27 + (2.0 * rr)));\n    }\n\n\tfragColor = vec4(col, 0.0);\n  fragColor.a = 1.0;\n}\n\n`},{title:\"Topologica\",author:\"Otavio Good\",originalURL:\"https://www.shadertoy.com/view/4djXzz\",value:`\n        \nuniform int iFrame;\n\n// various noise functions\nfloat Hash3d(vec3 uv)\n{\n    float f = uv.x + uv.y * 37.0 + uv.z * 521.0;\n    return fract(cos(f*3.333)*100003.9);\n}\nfloat mixP(float f0, float f1, float a)\n{\n    return mix(f0, f1, a*a*(3.0-2.0*a));\n}\nconst vec2 zeroOne = vec2(0.0, 1.0);\nfloat noise(vec3 uv)\n{\n    vec3 fr = fract(uv.xyz);\n    vec3 fl = floor(uv.xyz);\n    float h000 = Hash3d(fl);\n    float h100 = Hash3d(fl + zeroOne.yxx);\n    float h010 = Hash3d(fl + zeroOne.xyx);\n    float h110 = Hash3d(fl + zeroOne.yyx);\n    float h001 = Hash3d(fl + zeroOne.xxy);\n    float h101 = Hash3d(fl + zeroOne.yxy);\n    float h011 = Hash3d(fl + zeroOne.xyy);\n    float h111 = Hash3d(fl + zeroOne.yyy);\n    return mixP(\n        mixP(mixP(h000, h100, fr.x), mixP(h010, h110, fr.x), fr.y),\n        mixP(mixP(h001, h101, fr.x), mixP(h011, h111, fr.x), fr.y)\n        , fr.z);\n}\n\nfloat PI=3.14159265;\n#define saturate(a) clamp(a, 0.0, 1.0)\n// Weird for loop trick so compiler doesn't unroll loop\n// By making the zero a variable instead of a constant, the compiler can't unroll the loop and\n// that speeds up compile times by a lot.\n#define ZERO_TRICK max(0, -iFrame)\n\nfloat Density(vec3 p)\n{\n    float final = noise(p*0.06125);\n    float other = noise(p*0.06125 + 1234.567);\n    other -= 0.5;\n    final -= 0.5;\n    final = 0.1/(abs(final*final*other));\n    final += 0.5;\n    return final*0.0001;\n}\n\nvoid mainImage( out vec4 fragColor, in vec2 fragCoord )\n{\n\t// ---------------- First, set up the camera rays for ray marching ----------------\n\tvec2 uv = fragCoord.xy/iResolution.xy * 2.0 - 1.0;\n\n\t// Camera up vector.\n\tvec3 camUp=vec3(0,1,0); // vuv\n\n\t// Camera lookat.\n\tvec3 camLookat=vec3(0,0.0,0);\t// vrp\n\n\tfloat mx=iMouse.x/iResolution.x*PI*2.0 + iTime * 0.01;\n\tfloat my=-iMouse.y/iResolution.y*10.0 + sin(iTime * 0.03)*0.2+0.2;//*PI/2.01;\n\tvec3 camPos=vec3(cos(my)*cos(mx),sin(my),cos(my)*sin(mx))*(200.2); \t// prp\n\n\t// Camera setup.\n\tvec3 camVec=normalize(camLookat - camPos);//vpn\n\tvec3 sideNorm=normalize(cross(camUp, camVec));\t// u\n\tvec3 upNorm=cross(camVec, sideNorm);//v\n\tvec3 worldFacing=(camPos + camVec);//vcv\n\tvec3 worldPix = worldFacing + uv.x * sideNorm * (iResolution.x/iResolution.y) + uv.y * upNorm;//scrCoord\n\tvec3 relVec = normalize(worldPix - camPos);//scp\n\n\t// --------------------------------------------------------------------------------\n\tfloat t = 0.0;\n\tfloat inc = 0.02;\n\tfloat maxDepth = 70.0;\n\tvec3 pos = vec3(0,0,0);\n  float density = 0.0;\n\t// ray marching time\n    for (int i = ZERO_TRICK; i < 37; i++)\t// This is the count of how many times the ray actually marches.\n    {\n        if ((t > maxDepth)) break;\n        pos = camPos + relVec * t;\n        float temp = Density(pos);\n        inc = 1.9 + temp*0.05;\t// add temp because this makes it look extra crazy!\n        density += temp * inc;\n        t += inc;\n    }\n\n\t// --------------------------------------------------------------------------------\n\t// Now that we have done our ray marching, let's put some color on this.\n\tvec3 finalColor = vec3(0.01,0.1,1.0)* density*0.2;\n\n\t// output the final color with sqrt for \"gamma correction\"\n\tfragColor = vec4(sqrt(clamp(finalColor, 0.0, 1.0)),1.0); fragColor.a = 1.0;\n}\n\n`},{title:\"Rainbow Showoff\",author:\"akufishi\",originalURL:\"https://www.shadertoy.com/view/lscBRf\",value:`\n\n#define FALLING_SPEED  0.25\n#define STRIPES_FACTOR 5.0\n\n//get sphere\nfloat sphere(vec2 coord, vec2 pos, float r) {\n    vec2 d = pos - coord; \n    return smoothstep(60.0, 0.0, dot(d, d) - r * r);\n}\n\n//main\nvoid mainImage( out vec4 fragColor, in vec2 fragCoord )\n{\n    //normalize pixel coordinates\n    vec2 uv         = fragCoord / iResolution.xy;\n    //pixellize uv\n    vec2 clamped_uv = (round(fragCoord / STRIPES_FACTOR) * STRIPES_FACTOR) / iResolution.xy;\n    //get pseudo-random value for stripe height\n    float value\t\t= fract(sin(clamped_uv.x) * 43758.5453123);\n    //create stripes\n    vec3 col        = vec3(1.0 - mod(uv.y * 0.5 + (iTime * (FALLING_SPEED + value / 5.0)) + value, 0.5));\n    //add color\n         col       *= clamp(cos(iTime * 2.0 + uv.xyx + vec3(0, 2, 4)), 0.0, 1.0);\n    //add glowing ends\n    \t col \t   += vec3(sphere(fragCoord, \n                                  vec2(clamped_uv.x, (1.0 - 2.0 * mod((iTime * (FALLING_SPEED + value / 5.0)) + value, 0.5))) * iResolution.xy, \n                                  0.9)) / 2.0; \n    //add screen fade\n         col       *= vec3(exp(-pow(abs(uv.y - 0.5), 6.0) / pow(2.0 * 0.05, 2.0)));\n    // Output to screen\n    fragColor       = vec4(col,1.0);\n}\n\n`},{title:\"Creation by Silexars\",author:\"Danguafer\",originalURL:\"https://www.shadertoy.com/view/XsXXDn\",value:`\n        // If you intend to reuse this shader, please add credits to 'Danilo Guanabara'\n  #define t iTime\n  #define r iResolution.xy\n\n  void mainImage( out vec4 fragColor, in vec2 fragCoord ){\n    vec3 c;\n    float l,z=t;\n    for(int i=0;i<3;i++) {\n      vec2 uv,p=fragCoord.xy/r;\n      uv=p;\n      p-=.5;\n      p.x*=r.x/r.y;\n      z+=.07;\n      l=length(p);\n      uv+=p/l*(sin(z)+1.)*abs(sin(l*9.-z-z));\n      c[i]=.01/length(mod(uv,1.)-.5);\n    }\n    fragColor=vec4(c/l,t);\n  }\n`},{title:\"Cyber Fuji 2020\",author:\"kaiware007\",originalURL:\"https://www.shadertoy.com/view/Wt33Wf\",value:`\nfloat sun(vec2 uv, float battery)\n{\n \tfloat val = smoothstep(0.3, 0.29, length(uv));\n \tfloat bloom = smoothstep(0.7, 0.0, length(uv));\n  float cut = 3.0 * sin((uv.y + iTime * 0.2 * (battery + 0.02)) * 100.0) \n\t\t\t\t+ clamp(uv.y * 14.0 + 1.0, -6.0, 6.0);\n  cut = clamp(cut, 0.0, 1.0);\n  return clamp(val * cut, 0.0, 1.0) + bloom * 0.6;\n}\n\nfloat grid(vec2 uv, float battery)\n{\n    vec2 size = vec2(uv.y, uv.y * uv.y * 0.2) * 0.01;\n    uv += vec2(0.0, iTime * 4.0 * (battery + 0.05));\n    uv = abs(fract(uv) - 0.5);\n    vec2 lines = smoothstep(size, vec2(0.0), uv);\n    lines += smoothstep(size * 5.0, vec2(0.0), uv) * 0.4 * battery;\n    return clamp(lines.x + lines.y, 0.0, 3.0);\n}\n\nfloat dot2(in vec2 v ) { return dot(v,v); }\n\nfloat sdTrapezoid( in vec2 p, in float r1, float r2, float he )\n{\n    vec2 k1 = vec2(r2,he);\n    vec2 k2 = vec2(r2-r1,2.0*he);\n    p.x = abs(p.x);\n    vec2 ca = vec2(p.x-min(p.x,(p.y<0.0)?r1:r2), abs(p.y)-he);\n    vec2 cb = p - k1 + k2*clamp( dot(k1-p,k2)/dot2(k2), 0.0, 1.0 );\n    float s = (cb.x<0.0 && ca.y<0.0) ? -1.0 : 1.0;\n    return s*sqrt( min(dot2(ca),dot2(cb)) );\n}\n\nfloat sdLine( in vec2 p, in vec2 a, in vec2 b )\n{\n    vec2 pa = p-a, ba = b-a;\n    float h = clamp( dot(pa,ba)/dot(ba,ba), 0.0, 1.0 );\n    return length( pa - ba*h );\n}\n\nfloat sdBox( in vec2 p, in vec2 b )\n{\n    vec2 d = abs(p)-b;\n    return length(max(d,vec2(0))) + min(max(d.x,d.y),0.0);\n}\n\nfloat opSmoothUnion(float d1, float d2, float k){\n\tfloat h = clamp(0.5 + 0.5 * (d2 - d1) /k,0.0,1.0);\n    return mix(d2, d1 , h) - k * h * ( 1.0 - h);\n}\n\nfloat sdCloud(in vec2 p, in vec2 a1, in vec2 b1, in vec2 a2, in vec2 b2, float w)\n{\n\t//float lineVal1 = smoothstep(w - 0.0001, w, sdLine(p, a1, b1));\n    float lineVal1 = sdLine(p, a1, b1);\n    float lineVal2 = sdLine(p, a2, b2);\n    vec2 ww = vec2(w*1.5, 0.0);\n    vec2 left = max(a1 + ww, a2 + ww);\n    vec2 right = min(b1 - ww, b2 - ww);\n    vec2 boxCenter = (left + right) * 0.5;\n    //float boxW = right.x - left.x;\n    float boxH = abs(a2.y - a1.y) * 0.5;\n    //float boxVal = sdBox(p - boxCenter, vec2(boxW, boxH)) + w;\n    float boxVal = sdBox(p - boxCenter, vec2(0.04, boxH)) + w;\n    float uniVal1 = opSmoothUnion(lineVal1, boxVal, 0.05);\n    float uniVal2 = opSmoothUnion(lineVal2, boxVal, 0.05);\n    return min(uniVal1, uniVal2);\n}\n\nvoid mainImage( out vec4 fragColor, in vec2 fragCoord )\n{\n    vec2 uv = (2.0 * fragCoord.xy - iResolution.xy)/iResolution.y;\n    float battery = 1.0;\n    //if (iMouse.x > 1.0 && iMouse.y > 1.0) battery = iMouse.y / iResolution.y;\n    //else battery = 0.8;\n    //if (abs(uv.x) < (9.0 / 16.0))\n    {\n        // Grid\n        float fog = smoothstep(0.1, -0.02, abs(uv.y + 0.2));\n        vec3 col = vec3(0.0, 0.1, 0.2);\n        if (uv.y < -0.2)\n        {\n            uv.y = 3.0 / (abs(uv.y + 0.2) + 0.05);\n            uv.x *= uv.y * 1.0;\n            float gridVal = grid(uv, battery);\n            col = mix(col, vec3(1.0, 0.5, 1.0), gridVal);\n        }\n        else\n        {\n            float fujiD = min(uv.y * 4.5 - 0.5, 1.0);\n            uv.y -= battery * 1.1 - 0.51;\n            vec2 sunUV = uv;\n            vec2 fujiUV = uv;\n            \n            // Sun\n            sunUV += vec2(0.75, 0.2);\n            //uv.y -= 1.1 - 0.51;\n            col = vec3(1.0, 0.2, 1.0);\n            float sunVal = sun(sunUV, battery);\n            \n            col = mix(col, vec3(1.0, 0.4, 0.1), sunUV.y * 2.0 + 0.2);\n            col = mix(vec3(0.0, 0.0, 0.0), col, sunVal);\n            \n            // fuji\n            float fujiVal = sdTrapezoid( uv  + vec2(-0.75+sunUV.y * 0.0, 0.5), 1.75 + pow(uv.y * uv.y, 2.1), 0.2, 0.5);\n            float waveVal = uv.y + sin(uv.x * 20.0 + iTime * 2.0) * 0.05 + 0.2;\n            float wave_width = smoothstep(0.0,0.01,(waveVal));\n            \n            // fuji color\n            col = mix( col, mix(vec3(0.0, 0.0, 0.25), vec3(1.0, 0.0, 0.5), fujiD), step(fujiVal, 0.0));\n            // fuji top snow\n            col = mix( col, vec3(1.0, 0.5, 1.0), wave_width * step(fujiVal, 0.0));\n            // fuji outline\n            col = mix( col, vec3(1.0, 0.5, 1.0), 1.0-smoothstep(0.0,0.01,abs(fujiVal)) );\n            //col = mix( col, vec3(1.0, 1.0, 1.0), 1.0-smoothstep(0.03,0.04,abs(fujiVal)) );\n            //col = vec3(1.0, 1.0, 1.0) *(1.0-smoothstep(0.03,0.04,abs(fujiVal)));\n            \n            // horizon color\n            col += mix( col, mix(vec3(1.0, 0.12, 0.8), vec3(0.0, 0.0, 0.2), clamp(uv.y * 3.5 + 3.0, 0.0, 1.0)), step(0.0, fujiVal) );\n            \n            // cloud\n            vec2 cloudUV = uv;\n            cloudUV.x = mod(cloudUV.x + iTime * 0.1, 4.0) - 2.0;\n            float cloudTime = iTime * 0.5;\n            float cloudY = -0.5;\n            float cloudVal1 = sdCloud(cloudUV, \n                                     vec2(0.1 + sin(cloudTime + 140.5)*0.1,cloudY), \n                                     vec2(1.05 + cos(cloudTime * 0.9 - 36.56) * 0.1, cloudY), \n                                     vec2(0.2 + cos(cloudTime * 0.867 + 387.165) * 0.1,0.25+cloudY), \n                                     vec2(0.5 + cos(cloudTime * 0.9675 - 15.162) * 0.09, 0.25+cloudY), 0.075);\n            cloudY = -0.6;\n            float cloudVal2 = sdCloud(cloudUV, \n                                     vec2(-0.9 + cos(cloudTime * 1.02 + 541.75) * 0.1,cloudY), \n                                     vec2(-0.5 + sin(cloudTime * 0.9 - 316.56) * 0.1, cloudY), \n                                     vec2(-1.5 + cos(cloudTime * 0.867 + 37.165) * 0.1,0.25+cloudY), \n                                     vec2(-0.6 + sin(cloudTime * 0.9675 + 665.162) * 0.09, 0.25+cloudY), 0.075);\n            \n            float cloudVal = min(cloudVal1, cloudVal2);\n            //col = mix(col, vec3(1.0,1.0,0.0), smoothstep(0.0751, 0.075, cloudVal));\n            col = mix(col, vec3(0.0, 0.0, 0.2), 1.0 - smoothstep(0.075 - 0.0001, 0.075, cloudVal));\n            col += vec3(1.0, 1.0, 1.0)*(1.0 - smoothstep(0.0,0.01,abs(cloudVal - 0.075)));\n        }\n        col += fog * fog * fog;\n        col = mix(vec3(col.r, col.r, col.r) * 0.5, col, battery * 0.7);\n        fragColor = vec4(col,1.0);\n    }\n\n}\n\n        `},{title:\"Synthwave\",author:\"stduhpf\",originalURL:\"https://www.shadertoy.com/view/tsScRK\",value:`\n\n//#define AA 2\n//#define VAPORWAVE\n//#define stereo 1. // -1. for cross-eyed (defaults to parallel view)\n#define speed 10. \n#define wave_thing\n//#define city\n\n//you can add any sound texture in iChannel0 to turn it into a cool audio visualizer \n// (it looks better with lower speeds though)\n//you should commment out or remove the following line to enable it (it's disabled mainly for performance reasons):\n#define disable_sound_texture_sampling\n\n#ifndef disable_sound_texture_sampling\n    #undef speed \n    // lower value of speed when using as audio visualizer\n    #define speed 5.\n#endif\n\n//self-explainatory\n#define audio_vibration_amplitude .125\nfloat jTime;\n#ifdef disable_sound_texture_sampling\n#define textureMirror(a, b) vec4(0)\n#else\nvec4 textureMirror(sampler2D tex, vec2 c){\n    vec2 cf = fract(c);\n    return texture(tex,mix(cf,1.-cf,mod(floor(c),2.)));\n}\n#endif\n\nfloat amp(vec2 p){\n    return smoothstep(1.,8.,abs(p.x));   \n}\n\nfloat pow512(float a){\n    a*=a;//^2\n    a*=a;//^4\n    a*=a;//^8\n    a*=a;//^16\n    a*=a;//^32\n    a*=a;//^64\n    a*=a;//^128\n    a*=a;//^256\n    return a*a;\n}\n\nfloat pow1d5(float a){\n    return a*sqrt(a);\n}\n\nfloat hash21(vec2 co){\n    return fract(sin(dot(co.xy,vec2(1.9898,7.233)))*45758.5433);\n}\n\nfloat hash(vec2 uv){\n    float a = amp(uv);\n    #ifdef wave_thing\n    float w = a>0.?(1.-.4*pow512(.51+.49*sin((.02*(uv.y+.5*uv.x)-jTime)*2.))):0.;\n    #else\n    float w=1.;\n    #endif\n    return (a>0.?\n        a*pow1d5(\n        //texture(iChannel0,uv/iChannelResolution[0].xy).r\n        hash21(uv)\n        )*w\n        :0.)-(textureMirror(iChannel0,vec2((uv.x*29.+uv.y)*.03125,1.)).x)*audio_vibration_amplitude;\n}\n\nfloat edgeMin(float dx,vec2 da, vec2 db,vec2 uv){\n    uv.x+=5.;\n    vec3 c = fract((round(vec3(uv,uv.x+uv.y)))*(vec3(0,1,2)+0.61803398875));\n    float a1 = textureMirror(iChannel0,vec2(c.y,0.)).x>.6?.15:1.;\n    float a2 = textureMirror(iChannel0,vec2(c.x,0.)).x>.6?.15:1.;\n    float a3 = textureMirror(iChannel0,vec2(c.z,0.)).x>.6?.15:1.;\n    return min(min((1.-dx)*db.y*a3,da.x*a2),da.y*a1);\n}\n\nvec2 trinoise(vec2 uv){\n    const float sq = sqrt(3./2.);\n    uv.x *= sq;\n    uv.y -= .5*uv.x;\n    vec2 d = fract(uv);\n    uv -= d;\n    bool c = dot(d,vec2(1))>1.;\n    vec2 dd = 1.-d;\n    vec2 da = c?dd:d,db = c?d:dd;\n    float nn = hash(uv+float(c));\n    float n2 = hash(uv+vec2(1,0));\n    float n3 = hash(uv+vec2(0,1));\n    float nmid = mix(n2,n3,d.y);\n    float ns = mix(nn,c?n2:n3,da.y);\n    float dx = da.x/db.y;\n    return vec2(mix(ns,nmid,dx),edgeMin(dx,da, db,uv+d));\n}\n\nvec2 map(vec3 p){\n    vec2 n = trinoise(p.xz);\n    return vec2(p.y-2.*n.x,n.y);\n}\n\nvec3 grad(vec3 p){\n    const vec2 e = vec2(.005,0);\n    float a =map(p).x;\n    return vec3(map(p+e.xyy).x-a\n                ,map(p+e.yxy).x-a\n                ,map(p+e.yyx).x-a)/e.x;\n}\n\nvec2 intersect(vec3 ro,vec3 rd){\n    float d =0.,h=0.;\n    for(int i = 0;i<500;i++){ //look nice with 50 iterations\n        vec3 p = ro+d*rd;\n        vec2 s = map(p);\n        h = s.x;\n        d+= h*.5;\n        if(abs(h)<.003*d)\n            return vec2(d,s.y);\n        if(d>150.|| p.y>2.) break;\n    }\n    return vec2(-1);\n}\n\nvoid addsun(vec3 rd,vec3 ld,inout vec3 col){\n\tfloat sun = smoothstep(.21,.2,distance(rd,ld));\n    if(sun>0.){\n        float yd = (rd.y-ld.y);\n        float a =sin(3.1*exp(-(yd)*14.)); \n        sun*=smoothstep(-.8,0.,a);\n        col = mix(col,vec3(1.,.8,.4)*.75,sun);\n    }\n}\n\n\nfloat starnoise(vec3 rd){\n  float c = 0.;\n  vec3 p = normalize(rd)*300.;\n\tfor (float i=0.;i<4.;i++)\n    {\n        vec3 q = fract(p)-.5;\n        vec3 id = floor(p);\n        float c2 = smoothstep(.5,0.,length(q));\n        c2 *= step(hash21(id.xz/id.y),.06-i*i*0.005);\n        c += c2;\n        p = p*.6+.5*p*mat3(3./5.,0,4./5.,0,1,0,-4./5.,0,3./5.);\n    }\n    c*=c;\n    float g = dot(sin(rd*10.512),cos(rd.yzx*10.512));\n    c*=smoothstep(-3.14,-.9,g)*.5+.5*smoothstep(-.3,1.,g);\n    return c*c;\n}\n\nvec3 gsky(vec3 rd,vec3 ld,bool mask){\n    float haze = exp2(-5.*(abs(rd.y)-.2*dot(rd,ld)));\n    //float st = mask?pow512(texture(iChannel0,(rd.xy+vec2(300.1,100)*rd.z)*10.).r)*(1.-min(haze,1.)):0.;\n    //float st = mask?pow512(hash21((rd.xy+vec2(300.1,100)*rd.z)*10.))*(1.-min(haze,1.)):0.;\n    float st = mask?(starnoise(rd))*(1.-min(haze,1.)):0.;\n    vec3 back = vec3(.4,.1,.7)*(1.-.5*textureMirror(iChannel0,vec2(.5+.05*rd.x/rd.y,0.)).x\n    *exp2(-.1*abs(length(rd.xz)/rd.y))\n    *max(sign(rd.y),0.));\n    #ifdef city\n    float x = round(rd.x*30.);\n    float h = hash21(vec2(x-166.));\n    bool building = (h*h*.125*exp2(-x*x*x*x*.0025)>rd.y);\n    if(mask && building)\n        back*=0.,haze=.8, mask=mask && !building;\n    #endif\n    vec3 col=clamp(mix(back,vec3(.7,.1,.4),haze)+st,0.,1.);\n    if(mask)addsun(rd,ld,col);\n    return col;  \n}\n\nvoid mainImage( out vec4 fragColor, in vec2 fragCoord )\n{\n    fragColor=vec4(0);\n    #ifdef AA\n    for(float x = 0.;x<1.;x+=1./float(AA)){\n    for(float y = 0.;y<1.;y+=1./float(AA)){\n    #else\n        const float AA=1.,x=0.,y=0.;\n    #endif\n    vec2 uv = (2.*(fragCoord+vec2(x,y))-iResolution.xy)/iResolution.y;\n    \n    const float shutter_speed = .25; // for motion blur\n\t//float dt = fract(texture(iChannel0,float(AA)*(fragCoord+vec2(x,y))/iChannelResolution[0].xy).r+iTime)*shutter_speed;\n    float dt = fract(hash21(float(AA)*(fragCoord+vec2(x,y)))+iTime)*shutter_speed;\n    jTime = mod(iTime-dt*iTimeDelta,4000.);\n    vec3 ro = vec3(0.,1,(-20000.+jTime*speed));\n    \n        #ifdef stereo\n            ro+=stereo*vec3(.2*(float(uv.x>0.)-.5),0.,0.); \n            const float de = .9;\n            uv.x=uv.x+.5*(uv.x>0.?-de:de);\n            uv*=2.;\n\t\t#endif\n        \n    vec3 rd = normalize(vec3(uv,4./3.));//vec3(uv,sqrt(1.-dot(uv,uv)));\n    vec2 i = intersect(ro,rd);\n    float d = i.x;\n    vec3 ld = normalize(vec3(0,.125+.05*sin(.1*jTime),1));\n    vec3 fog = d>0.?exp2(-d*vec3(.14,.1,.28)):vec3(0.);\n    vec3 sky = gsky(rd,ld,d<0.);\n    vec3 p = ro+d*rd;\n    vec3 n = normalize(grad(p));\n    float diff = dot(n,ld)+.1*n.y;\n    vec3 col = vec3(.1,.11,.18)*diff;\n    vec3 rfd = reflect(rd,n); \n    vec3 rfcol = gsky(rfd,ld,true);\n    col = mix(col,rfcol,.05+.95*pow(max(1.+dot(rd,n),0.),5.));\n    #ifdef VAPORWAVE\n    col = mix(col,vec3(.4,.5,1.),smoothstep(.05,.0,i.y));\n    col = mix(sky,col,fog);\n    col = sqrt(col);\n    #else\n    col = mix(col,vec3(.8,.1,.92),smoothstep(.05,.0,i.y));\n    col = mix(sky,col,fog);\n    //no gamma for that old cg look\n    #endif\n    if(d<0.)\n        d=1e6;\n    d=min(d,10.);\n    fragColor += vec4(clamp(col,0.,1.),d<0.?0.:.1+exp2(-d));\n     #ifdef AA\n    }\n    }\n    fragColor/=float(AA*AA);\n    #endif\n    fragColor = vec4(col,1.0);\n}\n`},{title:\"Disco tunnel\",author:\"WAHa_06x36\",originalURL:\"https://www.shadertoy.com/view/XstfzB\",value:` \n\nvec2 position(float z) {\n\treturn vec2(\n\t\t0.0 + sin(z * 0.1) * 1.0 + sin(cos(z * 0.031) * 4.0) * 1.0 + sin(sin(z * 0.0091) * 3.0) * 3.0,\n\t\t0.0 + cos(z * 0.1) * 1.0 + cos(cos(z * 0.031) * 4.0) * 1.0 + cos(sin(z * 0.0091) * 3.0) * 3.0\n\t) * 1.0;\n}\n\nvoid mainImage( out vec4 fragColor, in vec2 fragCoord )\n{\n\tvec2 p = (fragCoord.xy * 2.0 - iResolution.xy) / min(iResolution.x, iResolution.y);\n\tfloat camZ = 25.0 * iTime;\n\tvec2 cam = position(camZ);\n\tfloat dt = 0.5;\n\tfloat camZ2 = 25.0 * (iTime + dt);\n \tvec2 cam2 = position(camZ2);\n\tvec2 dcamdt = (cam2 - cam) / dt;\n\tvec3 f = vec3(0.0);\n \tfor(int j = 1; j < 300; j++) {\n\t\tfloat i = float(j);\n\t\tfloat realZ = floor(camZ) + i;\n\t\tfloat screenZ = realZ - camZ;\n\t\tfloat r = 1.0 / screenZ;\n \t\tvec2 c = (position(realZ) - cam) * 10.0 / screenZ - dcamdt * 0.4;\n\t \tvec3 color = (vec3(sin(realZ * 0.07), sin(realZ * 0.1), sin(realZ * 0.08)) + vec3(1.0)) / 2.0;\n \t\tf += color * 0.06 / screenZ / (abs(length(p - c) - r) + 0.01);\n\t}\n\tfragColor = vec4(f, 1.0);\n}\n\n  `},{title:\"Ball Of Fire\",author:\"Trisomie21\",originalURL:\"https://www.shadertoy.com/view/lsf3RH\",value:` \n\nfloat snoise(vec3 uv, float res)\n{\n\tconst vec3 s = vec3(1e0, 1e2, 1e3);\n\tuv *= res;\n\tvec3 uv0 = floor(mod(uv, res))*s;\n\tvec3 uv1 = floor(mod(uv+vec3(1.), res))*s;\n\tvec3 f = fract(uv); f = f*f*(3.0-2.0*f);\n\tvec4 v = vec4(uv0.x+uv0.y+uv0.z, uv1.x+uv0.y+uv0.z,\n\t\t      \t  uv0.x+uv1.y+uv0.z, uv1.x+uv1.y+uv0.z);\n\tvec4 r = fract(sin(v*1e-1)*1e3);\n\tfloat r0 = mix(mix(r.x, r.y, f.x), mix(r.z, r.w, f.x), f.y);\n\tr = fract(sin((v + uv1.z - uv0.z)*1e-1)*1e3);\n\tfloat r1 = mix(mix(r.x, r.y, f.x), mix(r.z, r.w, f.x), f.y);\n\treturn mix(r0, r1, f.z)*2.-1.;\n}\n\nvoid mainImage( out vec4 fragColor, in vec2 fragCoord ) \n{\n\tvec2 p = -.5 + fragCoord.xy / iResolution.xy;\n\tp.x *= iResolution.x/iResolution.y;\n\tfloat color = 3.0 - (3.*length(2.*p));\n\tvec3 coord = vec3(atan(p.x,p.y)/6.2832+.5, length(p)*.4, .5);\n\tfor(int i = 1; i <= 7; i++)\n\t{\n\t\tfloat power = pow(2.0, float(i));\n\t\tcolor += (1.5 / power) * snoise(coord + vec3(0.,-iTime*.05, iTime*.01), power*16.);\n\t}\n\tfragColor = vec4( color, pow(max(color,0.),2.)*0.4, pow(max(color,0.),3.)*0.15 , 1.0);\n}\n\n  `},{title:\"Star Nest\",author:\"Kali\",originalURL:\"https://www.shadertoy.com/view/XlfGRj\",value:` \n \n // Star Nest by Pablo Roman Andrioli\n// License: MIT\n\n#define iterations 17\n#define formuparam 0.53\n#define volsteps 20\n#define stepsize 0.1\n#define zoom   0.800\n#define tile   0.850\n#define speed  0.010 \n#define brightness 0.0015\n#define darkmatter 0.300\n#define distfading 0.730\n#define saturation 0.850\n\nvoid mainImage( out vec4 fragColor, in vec2 fragCoord )\n{\n\t//get coords and direction\n\tvec2 uv=fragCoord.xy/iResolution.xy-.5;\n\tuv.y*=iResolution.y/iResolution.x;\n\tvec3 dir=vec3(uv*zoom,1.);\n\tfloat time=iTime*speed+.25;\n\n\t//mouse rotation\n\tfloat a1=.5+iMouse.x/iResolution.x*2.;\n\tfloat a2=.8+iMouse.y/iResolution.y*2.;\n\tmat2 rot1=mat2(cos(a1),sin(a1),-sin(a1),cos(a1));\n\tmat2 rot2=mat2(cos(a2),sin(a2),-sin(a2),cos(a2));\n\tdir.xz*=rot1;\n\tdir.xy*=rot2;\n\tvec3 from=vec3(1.,.5,0.5);\n\tfrom+=vec3(time*2.,time,-2.);\n\tfrom.xz*=rot1;\n\tfrom.xy*=rot2;\n\t\n\t//volumetric rendering\n\tfloat s=0.1,fade=1.;\n\tvec3 v=vec3(0.);\n\tfor (int r=0; r<volsteps; r++) {\n\t\tvec3 p=from+s*dir*.5;\n\t\tp = abs(vec3(tile)-mod(p,vec3(tile*2.))); // tiling fold\n\t\tfloat pa,a=pa=0.;\n\t\tfor (int i=0; i<iterations; i++) { \n\t\t\tp=abs(p)/dot(p,p)-formuparam; // the magic formula\n\t\t\ta+=abs(length(p)-pa); // absolute sum of average change\n\t\t\tpa=length(p);\n\t\t}\n\t\tfloat dm=max(0.,darkmatter-a*a*.001); //dark matter\n\t\ta*=a*a; // add contrast\n\t\tif (r>6) fade*=1.-dm; // dark matter, don't render near\n\t\t//v+=vec3(dm,dm*.5,0.);\n\t\tv+=fade;\n\t\tv+=vec3(s,s*s,s*s*s*s)*a*brightness*fade; // coloring based on distance\n\t\tfade*=distfading; // distance fading\n\t\ts+=stepsize;\n\t}\n\tv=mix(vec3(length(v)),v,saturation); //color adjust\n\tfragColor = vec4(v*.01,1.);\t\n}\n  `},{title:\"Starleidoscope\",author:\"DanielXMoore\",originalURL:\"https://www.shadertoy.com/view/ftt3R7\",value:` \n\n#define NUM_LAYERS 10.\n\nmat2 Rot(float a) {\n  float c = cos(a), s = sin(a);\n  return mat2(c, -s, s, c);\n}\n\nfloat Star(vec2 uv, float flare) {\n    float col = 0.;\n    float d = length(uv);\n    float m = .02/d;\n    float rays = max(0., 1. - abs(uv.x * uv.y * 1000.));\n    m += rays * flare;\n    uv *= Rot(3.1415/4.);\n    rays = max(0., 1. - abs(uv.x * uv.y * 1000.));\n    m += rays * .3 * flare;\n    m *= smoothstep(1., .2, d);\n    return m;\n}\n\nfloat Hash21(vec2 p) {\n  p = fract(p * vec2(123.34, 456.21));\n  p += dot(p, p+45.32);\n  return fract(p.x*p.y);\n}\n\nvec3 StarLayer(vec2 uv) {\n    vec3 col = vec3(0.);\n    vec2 gv = fract(uv) - 0.5;\n    vec2 id = floor(uv);\n    for(int y = -1; y <= 1; y++ ) {\n        for(int x = -1; x <= 1; x++) {\n            vec2 offs = vec2(x, y);\n            float n = Hash21(id + offs);\n            float size = fract(n*345.32);            \n            vec2 p = vec2(n, fract(n*34.));\n            float star = Star(gv - offs - p + .5, smoothstep(.8, 1., size) * .6);\n            vec3 hueShift = fract(n*2345.2 + dot(uv /420.,texture(iChannel0, vec2(0.25, 0.)).rg))*vec3(.2, .3, .9)*123.2;\n            vec3 color = sin(hueShift) * .5 + .5;\n            color = color * vec3(1., .25, 1.+size);\n            star *= sin(iTime*3.+n*6.2831)*.4+1.;\n            col += star * size * color;\n        }\n    }\n    return col;\n}\n\nvec2 N(float angle) {\n  return vec2(sin(angle), cos(angle));\n}\n\nvoid mainImage( out vec4 fragColor, in vec2 fragCoord )\n{\n    vec2 uv = (fragCoord - 0.5*iResolution.xy)/iResolution.y;\n    vec2 M = (iMouse.xy - iResolution.xy*.5)/iResolution.y;\n    float t = iTime * .01;\n    uv.x = abs(uv.x);\n    uv.y += tan((5./6.) * 3.1415) * .5;\n    vec2 n = N((5./6.) * 3.1415);\n    float d = dot(uv - vec2(.5, 0.), n);\n    uv -= n * max(0., d) * 2.;\n    // col += smoothstep(.01, .0, abs(d));\n    n = N((2./3.) * 3.1415);\n    float scale = 1.;\n    uv.x += 1.5 / 1.25;\n    for(int i=0; i<5; i++) {\n        scale *= 1.25;\n        uv *= 1.25;\n        uv.x -= 1.5;\n        uv.x = abs(uv.x);\n        uv.x -= 0.5;\n        uv -= n * min(0., dot(uv, n)) * 2.;\n    }\n \n    uv += M * 4.;\n    uv *= Rot(t);\n    vec3 col = vec3(0.);\n    float layers = 10.;\n\n    for(float i=0.; i < 1.; i+=1./NUM_LAYERS) {\n        float depth = fract(i+t);\n        float scale = mix(20., .5, depth);\n        float fade = depth * smoothstep(1., .9, depth);\n        col += StarLayer(uv * scale + i * 453.2) * fade;\n    }\n\n    fragColor = vec4(col,1.0);\n}\n  `},{title:\"Phantom Star\",author:\"kasari39\",originalURL:\"https://www.shadertoy.com/view/ttKGDt\",value:` \nprecision highp float;\n\nmat2 rot(float a) {\n    float c = cos(a), s = sin(a);\n    return mat2(c,s,-s,c);\n}\n\nconst float pi = acos(-1.0);\nconst float pi2 = pi*2.0;\nvec2 pmod(vec2 p, float r) {\n    float a = atan(p.x, p.y) + pi/r;\n    float n = pi2 / r;\n    a = floor(a/n)*n;\n    return p*rot(-a);\n}\n\nfloat box( vec3 p, vec3 b ) {\n    vec3 d = abs(p) - b;\n    return min(max(d.x,max(d.y,d.z)),0.0) + length(max(d,0.0));\n}\n\nfloat ifsBox(vec3 p) {\n    for (int i=0; i<5; i++) {\n        p = abs(p) - 1.0;\n        p.xy *= rot(iTime*0.3);\n        p.xz *= rot(iTime*0.1);\n    }\n    p.xz *= rot(iTime);\n    return box(p, vec3(0.4,0.8,0.3));\n}\n\nfloat map(vec3 p, vec3 cPos) {\n    vec3 p1 = p;\n    p1.x = mod(p1.x-5., 10.) - 5.;\n    p1.y = mod(p1.y-5., 10.) - 5.;\n    p1.z = mod(p1.z, 16.)-8.;\n    p1.xy = pmod(p1.xy, 5.0);\n    return ifsBox(p1);\n}\n\nvoid mainImage( out vec4 fragColor, in vec2 fragCoord ) {\n    vec2 p = (fragCoord.xy * 2.0 - iResolution.xy) / min(iResolution.x, iResolution.y);\n    vec3 cPos = vec3(0.0,0.0, -3.0 * iTime);\n    // vec3 cPos = vec3(0.3*sin(iTime*0.8), 0.4*cos(iTime*0.3), -6.0 * iTime);\n    vec3 cDir = normalize(vec3(0.0, 0.0, -1.0));\n    vec3 cUp  = vec3(sin(iTime), 1.0, 0.0);\n    vec3 cSide = cross(cDir, cUp);\n    vec3 ray = normalize(cSide * p.x + cUp * p.y + cDir);\n\n    // Phantom Mode https://www.shadertoy.com/view/MtScWW by aiekick\n    float acc = 0.0;\n    float acc2 = 0.0;\n    float t = 0.0;\n    for (int i = 0; i < 99; i++) {\n        vec3 pos = cPos + ray * t;\n        float dist = map(pos, cPos);\n        dist = max(abs(dist), 0.02);\n        float a = exp(-dist*3.0);\n        if (mod(length(pos)+24.0*iTime, 30.0) < 3.0) {\n            a *= 2.0;\n            acc2 += a;\n        }\n        acc += a;\n        t += dist * 0.5;\n    }\n\n    vec3 col = vec3(acc * 0.01, acc * 0.011 + acc2*0.002, acc * 0.012+ acc2*0.005);\n    fragColor = vec4(col, 1.0 - t * 0.03);\n    fragColor.a = 1.0;\n}\n  `},{title:\"Shooting Stars\",author:\"Xor\",originalURL:\"https://www.shadertoy.com/view/ctXGRn\",value:` \nvoid mainImage(out vec4 O, vec2 I)\n{\n    //Clear fragcolor\n    O *= 0.;\n    \n    //Line dimensions (box) and position relative to line\n    vec2 b = vec2(0,.2), p;\n    //Rotation matrix\n    mat2 R;\n    //Iterate 20 times\n    for(float i=.9; i++<20.;\n        //Add attenuation\n        O += 1e-3/length(clamp(p=R\n        //Using rotated boxes\n        *(fract((I/iResolution.y*i*.1+iTime*b)*R)-.5),-b,b)-p)\n        //My favorite color palette\n        *(cos(p.y/.1+vec4(0,1,2,3))+1.) )\n        //Rotate for each iteration\n        R=mat2(cos(i+vec4(0,33,11,0)));\n          O.a = 1.0;\n}\n  `},{title:\"Zippy Zaps\",author:\"SnoopethDuckDuck\",originalURL:\"https://www.shadertoy.com/view/XXyGzh\",value:` \n  void mainImage( out vec4 o, vec2 u )\n{\n    vec2 v = iResolution.xy;\n         u = .2*(u+u-v)/v.y;    \n         \n    vec4 z = o = vec4(1,2,3,0);\n     \n    for (float a = .5, t = iTime, i; \n         ++i < 19.; \n         o += (1. + cos(z+t)) \n            / length((1.+i*dot(v,v)) \n                   * sin(1.5*u/(.5-dot(u,u)) - 9.*u.yx + t))\n         )  \n        v = cos(++t - 7.*u*pow(a += .03, i)) - 5.*u,                 \n        u += tanh(40. * dot(u *= mat2(cos(i + .02*t - vec4(0,11,33,0)))\n                           ,u)\n                      * cos(1e2*u.yx + t)) / 2e2\n           + .2 * a * u\n           + cos(4./exp(dot(o,o)/1e2) + t) / 3e2;\n              \n     o = 25.6 / (min(o, 13.) + 164. / o) \n       - dot(u, u) / 250.;\n            o*=1.0;\n}\n  `},{title:\"Inside the Matrix\",author:\"And390\",originalURL:\"https://www.shadertoy.com/view/4t3BWl\",value:` \n\n\nconst int ITERATIONS = 40;   //use less value if you need more performance\nconst float SPEED = 1.;\nconst float STRIP_CHARS_MIN =  7.;\nconst float STRIP_CHARS_MAX = 40.;\nconst float STRIP_CHAR_HEIGHT = 0.15;\nconst float STRIP_CHAR_WIDTH = 0.10;\nconst float ZCELL_SIZE = 1. * (STRIP_CHAR_HEIGHT * STRIP_CHARS_MAX);  //the multiplier can't be less than 1.\nconst float XYCELL_SIZE = 12. * STRIP_CHAR_WIDTH;  //the multiplier can't be less than 1.\nconst int BLOCK_SIZE = 10;  //in cells\nconst int BLOCK_GAP = 2;    //in cells\nconst float WALK_SPEED = 1. * XYCELL_SIZE;\nconst float BLOCKS_BEFORE_TURN = 3.;\nconst float PI = 3.14159265359;\n\n//----  random  ----\nfloat hash(float v) {\n    return fract(sin(v)*43758.5453123);\n}\n\nfloat hash(vec2 v) {\n    return hash(dot(v, vec2(5.3983, 5.4427)));\n}\n\nvec2 hash2(vec2 v)\n{\n    v = vec2(v * mat2(127.1, 311.7,  269.5, 183.3));\n\treturn fract(sin(v)*43758.5453123);\n}\n\nvec4 hash4(vec2 v)\n{\n    vec4 p = vec4(v * mat4x2( 127.1, 311.7,\n                              269.5, 183.3,\n                              113.5, 271.9,\n                              246.1, 124.6 ));\n    return fract(sin(p)*43758.5453123);\n}\n\nvec4 hash4(vec3 v)\n{\n    vec4 p = vec4(v * mat4x3( 127.1, 311.7, 74.7,\n                              269.5, 183.3, 246.1,\n                              113.5, 271.9, 124.6,\n                              271.9, 269.5, 311.7 ) );\n    return fract(sin(p)*43758.5453123);\n}\n\n\n//  ----  symbols  ----\n//  Slightly modified version of \"runes\" by FabriceNeyret2 -  https://www.shadertoy.com/view/4ltyDM\n//  Which is based on \"runes\" by otaviogood -  https://shadertoy.com/view/MsXSRn\n\nfloat rune_line(vec2 p, vec2 a, vec2 b) {   // from https://www.shadertoy.com/view/4dcfW8\n    p -= a, b -= a;\n\tfloat h = clamp(dot(p, b) / dot(b, b), 0., 1.);   // proj coord on line\n\treturn length(p - b * h);                         // dist to segment\n}\n\nfloat rune(vec2 U, vec2 seed, float highlight)\n{\n\tfloat d = 1e5;\n\tfor (int i = 0; i < 4; i++)\t// number of strokes\n\t{\n    vec4 pos = hash4(seed);\n\t\tseed += 1.;\n\n\t\t// each rune touches the edge of its box on all 4 sides\n\t\tif (i == 0) pos.y = .0;\n\t\tif (i == 1) pos.x = .999;\n\t\tif (i == 2) pos.x = .0;\n\t\tif (i == 3) pos.y = .999;\n\t\t// snap the random line endpoints to a grid 2x3\n\t\tvec4 snaps = vec4(2, 3, 2, 3);\n\t\tpos = ( floor(pos * snaps) + .5) / snaps;\n\t\tif (pos.xy != pos.zw)  //filter out single points (when start and end are the same)\n\t\t    d = min(d, rune_line(U, pos.xy, pos.zw + .001) ); // closest line\n\t}\n\treturn smoothstep(0.1, 0., d) + highlight*smoothstep(0.4, 0., d);\n}\n\nfloat random_char(vec2 outer, vec2 inner, float highlight) {\n    vec2 seed = vec2(dot(outer, vec2(269.5, 183.3)), dot(outer, vec2(113.5, 271.9)));\n    return rune(inner, seed, highlight);\n}\n\n//----  digital rain  ----\n// xy - horizontal, z - vertical\nvec3 rain(vec3 ro3, vec3 rd3, float time) {\n    vec4 result = vec4(0.);\n\n    // normalized 2d projection\n    vec2 ro2 = vec2(ro3);\n    vec2 rd2 = normalize(vec2(rd3));\n\n    // we use formulas \"ro3 + rd3 * t3\" and \"ro2 + rd2 * t2\", \"t3_to_t2\" is a multiplier to convert t3 to t2\n    bool prefer_dx = abs(rd2.x) > abs(rd2.y);\n    float t3_to_t2 = prefer_dx ? rd3.x / rd2.x : rd3.y / rd2.y;\n\n    // at first, horizontal space (xy) is divided into cells (which are columns in 3D)\n    // then each xy-cell is divided into vertical cells (along z) - each of these cells contains one raindrop\n\n    ivec3 cell_side = ivec3(step(0., rd3));      //for positive rd.x use cell side with higher x (1) as the next side, for negative - with lower x (0), the same for y and z\n    ivec3 cell_shift = ivec3(sign(rd3));         //shift to move to the next cell\n\n    //  move through xy-cells in the ray direction\n    float t2 = 0.;  // the ray formula is: ro2 + rd2 * t2, where t2 is positive as the ray has a direction.\n    ivec2 next_cell = ivec2(floor(ro2/XYCELL_SIZE));  //first cell index where ray origin is located\n    for (int i=0; i<ITERATIONS; i++) {\n        ivec2 cell = next_cell;  //save cell value before changing\n        float t2s = t2;          //and t\n\n        //  find the intersection with the nearest side of the current xy-cell (since we know the direction, we only need to check one vertical side and one horizontal side)\n        vec2 side = vec2(next_cell + cell_side.xy) * XYCELL_SIZE;  //side.x is x coord of the y-axis side, side.y - y of the x-axis side\n        vec2 t2_side = (side - ro2) / rd2;  // t2_side.x and t2_side.y are two candidates for the next value of t2, we need the nearest\n        if (t2_side.x < t2_side.y) {\n            t2 = t2_side.x;\n            next_cell.x += cell_shift.x;  //cross through the y-axis side\n        } else {\n            t2 = t2_side.y;\n            next_cell.y += cell_shift.y;  //cross through the x-axis side\n        }\n        //now t2 is the value of the end point in the current cell (and the same point is the start value in the next cell)\n\n        //  gap cells\n        vec2 cell_in_block = fract(vec2(cell) / float(BLOCK_SIZE));\n        float gap = float(BLOCK_GAP) / float(BLOCK_SIZE);\n        if (cell_in_block.x < gap || cell_in_block.y < gap || (cell_in_block.x < (gap+0.1) && cell_in_block.y < (gap+0.1))) {\n            continue;\n        }\n\n        //  return to 3d - we have start and end points of the ray segment inside the column (t3s and t3e)\n        float t3s = t2s / t3_to_t2;\n\n        //  move through z-cells of the current column in the ray direction (don't need much to check, two nearest cells are enough)\n        float pos_z = ro3.z + rd3.z * t3s;\n        float xycell_hash = hash(vec2(cell));\n        float z_shift = xycell_hash*11. - time * (0.5 + xycell_hash * 1.0 + xycell_hash * xycell_hash * 1.0 + pow(xycell_hash, 16.) * 3.0);  //a different z shift for each xy column\n        float char_z_shift = floor(z_shift / STRIP_CHAR_HEIGHT);\n        z_shift = char_z_shift * STRIP_CHAR_HEIGHT;\n        int zcell = int(floor((pos_z - z_shift)/ZCELL_SIZE));  //z-cell index\n        for (int j=0; j<2; j++) {  //2 iterations is enough if camera doesn't look much up or down\n            //  calcaulate coordinates of the target (raindrop)\n            vec4 cell_hash = hash4(vec3(ivec3(cell, zcell)));\n            vec4 cell_hash2 = fract(cell_hash * vec4(127.1, 311.7, 271.9, 124.6));\n\n            float chars_count = cell_hash.w * (STRIP_CHARS_MAX - STRIP_CHARS_MIN) + STRIP_CHARS_MIN;\n            float target_length = chars_count * STRIP_CHAR_HEIGHT;\n            float target_rad = STRIP_CHAR_WIDTH / 2.;\n            float target_z = (float(zcell)*ZCELL_SIZE + z_shift) + cell_hash.z * (ZCELL_SIZE - target_length);\n            vec2 target = vec2(cell) * XYCELL_SIZE + target_rad + cell_hash.xy * (XYCELL_SIZE - target_rad*2.);\n\n            //  We have a line segment (t0,t). Now calculate the distance between line segment and cell target (it's easier in 2d)\n            vec2 s = target - ro2;\n            float tmin = dot(s, rd2);  //tmin - point with minimal distance to target\n            if (tmin >= t2s && tmin <= t2) {\n                float u = s.x * rd2.y - s.y * rd2.x;  //horizontal coord in the matrix strip\n                if (abs(u) < target_rad) {\n                    u = (u/target_rad + 1.) / 2.;\n                    float z = ro3.z + rd3.z * tmin/t3_to_t2;\n                    float v = (z - target_z) / target_length;  //vertical coord in the matrix strip\n                    if (v >= 0.0 && v < 1.0) {\n                        float c = floor(v * chars_count);  //symbol index relative to the start of the strip, with addition of char_z_shift it becomes an index relative to the whole cell\n                        float q = fract(v * chars_count);\n                        vec2 char_hash = hash2(vec2(c+char_z_shift, cell_hash2.x));\n                        if (char_hash.x >= 0.1 || c == 0.) {  //10% of missed symbols\n                            float time_factor = floor(c == 0. ? time*5.0 :  //first symbol is changed fast\n                                    time*(1.0*cell_hash2.z +   //strips are changed sometime with different speed\n                                            cell_hash2.w*cell_hash2.w*4.*pow(char_hash.y, 4.)));  //some symbols in some strips are changed relatively often\n                            float a = random_char(vec2(char_hash.x, time_factor), vec2(u,q), max(1., 3. - c/2.)*0.2);  //alpha\n                            a *= clamp((chars_count - 0.5 - c) / 2., 0., 1.);  //tail fade\n                            if (a > 0.) {\n                                float attenuation = 1. + pow(0.06*tmin/t3_to_t2, 2.);\n                                vec3 col = (c == 0. ? vec3(0.67, 1.0, 0.82) : vec3(0.25, 0.80, 0.40)) / attenuation;\n                                float a1 = result.a;\n                                result.a = a1 + (1. - a1) * a;\n                                result.xyz = (result.xyz * a1 + col * (1. - a1) * a) / result.a;\n                                if (result.a > 0.98)  return result.xyz;\n                            }\n                        }\n                    }\n                }\n            }\n            // not found in this cell - go to next vertical cell\n            zcell += cell_shift.z;\n        }\n        // go to next horizontal cell\n    }\n    return result.xyz * result.a;\n}\n\n//  ----  main, camera  ----\n\nvec2 rotate(vec2 v, float a) {\n    float s = sin(a);\n\tfloat c = cos(a);\n    mat2 m = mat2(c, -s, s, c);\n    return m * v;\n}\n\nvec3 rotateX(vec3 v, float a) {\n    float s = sin(a);\n    float c = cos(a);\n    return mat3(1.,0.,0.,0.,c,-s,0.,s,c) * v;\n}\n\nvec3 rotateY(vec3 v, float a) {\n    float s = sin(a);\n    float c = cos(a);\n    return mat3(c,0.,-s,0.,1.,0.,s,0.,c) * v;\n}\n\nvec3 rotateZ(vec3 v, float a) {\n    float s = sin(a);\n    float c = cos(a);\n    return mat3(c,-s,0.,s,c,0.,0.,0.,1.) * v;\n}\n\nfloat smoothstep1(float x) {\n    return smoothstep(0., 1., x);\n}\n\nvoid mainImage( out vec4 fragColor, in vec2 fragCoord )\n{\n    if (STRIP_CHAR_WIDTH > XYCELL_SIZE || STRIP_CHAR_HEIGHT * STRIP_CHARS_MAX > ZCELL_SIZE) {\n        // error\n        fragColor = vec4(1., 0., 0., 1.);\n        return;\n    }\n\n\t  vec2 uv = (fragCoord.xy * 2. - iResolution.xy) / iResolution.y;\n    float time = iTime * SPEED;\n    const float turn_rad = 0.25 / BLOCKS_BEFORE_TURN;   //0 .. 0.5\n    const float turn_abs_time = (PI/2.*turn_rad) * 1.5;  //multiplier different than 1 means a slow down on turns\n    const float turn_time = turn_abs_time / (1. - 2.*turn_rad + turn_abs_time);  //0..1, but should be <= 0.5\n    float level1_size = float(BLOCK_SIZE) * BLOCKS_BEFORE_TURN * XYCELL_SIZE;\n    float level2_size = 4. * level1_size;\n    float gap_size = float(BLOCK_GAP) * XYCELL_SIZE;\n    vec3 ro = vec3(gap_size/2., gap_size/2., 0.);\n    vec3 rd = vec3(uv.x, 2.0, uv.y);\n    float tq = fract(time / (level2_size*4.) * WALK_SPEED);  //the whole cycle time counter\n    float t8 = fract(tq*4.);  //time counter while walking on one of the four big sides\n    float t1 = fract(t8*8.);  //time counter while walking on one of the eight sides of the big side\n    vec2 prev;\n    vec2 dir;\n    if (tq < 0.25) {\n        prev = vec2(0.,0.);\n        dir = vec2(0.,1.);\n    } else if (tq < 0.5) {\n        prev = vec2(0.,1.);\n        dir = vec2(1.,0.);\n    } else if (tq < 0.75) {\n        prev = vec2(1.,1.);\n        dir = vec2(0.,-1.);\n    } else {\n        prev = vec2(1.,0.);\n        dir = vec2(-1.,0.);\n    }\n    float angle = floor(tq * 4.);  //0..4 wich means 0..2*PI\n    prev *= 4.;\n    const float first_turn_look_angle = 0.4;\n    const float second_turn_drift_angle = 0.5;\n    const float fifth_turn_drift_angle = 0.25;\n    vec2 turn;\n    float turn_sign = 0.;\n    vec2 dirL = rotate(dir, -PI/2.);\n    vec2 dirR = -dirL;\n    float up_down = 0.;\n    float rotate_on_turns = 1.;\n    float roll_on_turns = 1.;\n    float add_angel = 0.;\n    if (t8 < 0.125) {\n        turn = dirL;\n        //dir = dir;\n        turn_sign = -1.;\n        angle -= first_turn_look_angle * (max(0., t1 - (1. - turn_time*2.)) / turn_time - max(0., t1 - (1. - turn_time)) / turn_time * 2.5);\n        roll_on_turns = 0.;\n    } else if (t8 < 0.250) {\n        prev += dir;\n        turn = dir;\n        dir = dirL;\n        angle -= 1.;\n        turn_sign = 1.;\n        add_angel += first_turn_look_angle*0.5 + (-first_turn_look_angle*0.5+1.0+second_turn_drift_angle)*t1;\n        rotate_on_turns = 0.;\n        roll_on_turns = 0.;\n    } else if (t8 < 0.375) {\n        prev += dir + dirL;\n        turn = dirR;\n        //dir = dir;\n        turn_sign = 1.;\n        add_angel += second_turn_drift_angle*sqrt(1.-t1);\n        //roll_on_turns = 0.;\n    } else if (t8 < 0.5) {\n        prev += dir + dir + dirL;\n        turn = dirR;\n        dir = dirR;\n        angle += 1.;\n        turn_sign = 0.;\n        up_down = sin(t1*PI) * 0.37;\n    } else if (t8 < 0.625) {\n        prev += dir + dir;\n        turn = dir;\n        dir = dirR;\n        angle += 1.;\n        turn_sign = -1.;\n        up_down = sin(-min(1., t1/(1.-turn_time))*PI) * 0.37;\n    } else if (t8 < 0.750) {\n        prev += dir + dir + dirR;\n        turn = dirL;\n        //dir = dir;\n        turn_sign = -1.;\n        add_angel -= (fifth_turn_drift_angle + 1.) * smoothstep1(t1);\n        rotate_on_turns = 0.;\n        roll_on_turns = 0.;\n    } else if (t8 < 0.875) {\n        prev += dir + dir + dir + dirR;\n        turn = dir;\n        dir = dirL;\n        angle -= 1.;\n        turn_sign = 1.;\n        add_angel -= fifth_turn_drift_angle - smoothstep1(t1) * (fifth_turn_drift_angle * 2. + 1.);\n        rotate_on_turns = 0.;\n        roll_on_turns = 0.;\n    } else {\n        prev += dir + dir + dir;\n        turn = dirR;\n        //dir = dir;\n        turn_sign = 1.;\n        angle += fifth_turn_drift_angle * (1.5*min(1., (1.-t1)/turn_time) - 0.5*smoothstep1(1. - min(1.,t1/(1.-turn_time))));\n    }\n\n    if (iMouse.x > 10. || iMouse.y > 10.) {\n        vec2 mouse = iMouse.xy / iResolution.xy * 2. - 1.;\n        up_down = -0.7 * mouse.y;\n        angle += mouse.x;\n        rotate_on_turns = 1.;\n        roll_on_turns = 0.;\n    } else {\n        angle += add_angel;\n    }\n    rd = rotateX(rd, up_down);\n    vec2 p;\n    if (turn_sign == 0.) {\n        //  move forward\n        p = prev + dir * (turn_rad + 1. * t1);\n    }\n    else if (t1 > (1. - turn_time)) {\n        //  turn\n        float tr = (t1 - (1. - turn_time)) / turn_time;\n        vec2 c = prev + dir * (1. - turn_rad) + turn * turn_rad;\n        p = c + turn_rad * rotate(dir, (tr - 1.) * turn_sign * PI/2.);\n        angle += tr * turn_sign * rotate_on_turns;\n        rd = rotateY(rd, sin(tr*turn_sign*PI) * 0.2 * roll_on_turns);  //roll\n    }  else  {\n        //  move forward\n        t1 /= (1. - turn_time);\n        p = prev + dir * (turn_rad + (1. - turn_rad*2.) * t1);\n    }\n    rd = rotateZ(rd, angle * PI/2.);\n    ro.xy += level1_size * p;\n    ro += rd * 0.2;\n    rd = normalize(rd);\n    vec3 col = rain(ro, rd, time);\n    fragColor = vec4(col, 1.);\n}\n        `},{title:\"Tiles\",author:\"Johnrobmiller\",originalURL:\"https://www.shadertoy.com/view/mdBSRt\",value:` \n\nvoid mainImage( out vec4 fragColor, in vec2 fragCoord )\n{\n    float aspect_ratio = iResolution.y/iResolution.x;\n\t  vec2 uv = fragCoord.xy / iResolution.x;\n    uv -= vec2(0.5, 0.5 * aspect_ratio);\n    float rot = radians(-30. -iTime); // radians(45.0*sin(iTime));\n    mat2 rotation_matrix = mat2(cos(rot), -sin(rot), sin(rot), cos(rot));\n   \tuv = rotation_matrix * uv;\n    vec2 scaled_uv = 20.0 * uv; \n    vec2 tile = fract(scaled_uv);\n    float tile_dist = min(min(tile.x, 1.0-tile.x), min(tile.y, 1.0-tile.y));\n    float square_dist = length(floor(scaled_uv));\n    float edge = sin(iTime-square_dist*20.);\n    edge = mod(edge * edge, edge / edge);\n    float value = mix(tile_dist, 1.0-tile_dist, step(1.0, edge));\n    edge = pow(abs(1.0-edge), 2.2) * 0.5;\n    value = smoothstep( edge-0.05, edge, 0.95*value);\n    value += square_dist*.1;\n    value *= 0.8 - 0.2;\n    fragColor = vec4(pow(value, 2.), pow(value, 1.5), pow(value, 1.2), 1.);\n}\n  `},{title:\"Dance floor\",author:\"Nrx\",originalURL:\"https://www.shadertoy.com/view/lsBXDW\",value:` \n  \nvec3 hsv2rgb (in vec3 hsv) {\n\thsv.yz = clamp (hsv.yz, 0.0, 1.0);\n\treturn hsv.z * (1.0 + 0.5 * hsv.y * (cos (2.0 * 3.14159 * (hsv.x + vec3 (0.0, 2.0 / 3.0, 1.0 / 3.0))) - 1.0));\n}\n\nfloat rand (in vec2 seed) {\n\treturn fract (sin (dot (seed, vec2 (12.9898, 78.233))) * 137.5453);\n}\n\nvoid mainImage (out vec4 fragColor, in vec2 fragCoord) {\n\tvec2 frag = (2.0 * fragCoord.xy - iResolution.xy) / iResolution.y;\n\tfrag *= 1.0 - 0.2 * cos (frag.yx) * sin (3.14159 * 0.5 * texture (iChannel0, vec2 (0.0)).x);\n\tfrag *= 5.0;\n\tfloat random = rand (floor (frag));\n\tvec2 black = smoothstep (1.0, 0.8, cos (frag * 3.14159 * 2.0));\n\tvec3 color = hsv2rgb (vec3 (random, 1.0, 1.0));\n\tcolor *= black.x * black.y * smoothstep (1.0, 0.0, length (fract (frag) - 0.5));\n\tcolor *= 0.5 + 0.5 * cos (random + random * iTime + iTime + 3.14159 * 0.5 * texture (iChannel0, vec2 (0.7)).x);\n\tfragColor = vec4 (color, 1.0);\n}\n  `},{title:\"Sincos 3d\",author:\"ChunderFPV\",originalURL:\"https://www.shadertoy.com/view/XfXGz4\",value:` \n\n\n#define A(v) mat2(cos(m.v+radians(vec4(0, -90, 90, 0))))  // rotate\n#define W(v) length(vec3(p.yz-v(p.x+vec2(0, pi_2)+t), 0))-lt  // wave\n//#define W(v) length(p-vec3(round(p.x*pi)/pi, v(t+p.x), v(t+pi_2+p.x)))-lt  // alt wave\n#define P(v) length(p-vec3(0, v(t), v(t+pi_2)))-pt  // point\n\nvoid mainImage( out vec4 C, in vec2 U )\n{\n    float lt = .1, // line thickness\n          pt = .3, // point thickness\n          pi = 3.1416,\n          pi2 = pi*2.,\n          pi_2 = pi/2.,\n          t = iTime*pi,\n          s = 1., d = 0., i = d;\n    \n    vec2 R = iResolution.xy,\n         m = (iMouse.xy-.5*R)/R.y*4.;\n    \n    vec3 o = vec3(0, 0, -7), // cam\n         u = normalize(vec3((U-.5*R)/R.y, 1)),\n         c = vec3(0), k = c, p;\n    \n    if (iMouse.z < 1.) m = -vec2(t/20.-pi_2, 0); // move when not clicking\n    mat2 v = A(y), h = A(x); // pitch & yaw\n    \n    for (; i++<50.;) // raymarch\n    {\n        p = o+u*d;\n        p.yz *= v;\n        p.xz *= h;\n        p.x -= 3.; // slide objects to the right a bit\n        if (p.y < -1.5) p.y = 2./p.y; // reflect into neg y\n        k.x = min( max(p.x+lt, W(sin)), P(sin) ); // sine wave\n        k.y = min( max(p.x+lt, W(cos)), P(cos) ); // cosine wave\n        s = min(s, min(k.x, k.y)); // blend\n        if (s < .001 || d > 100.) break; // limits\n        d += s*.5;\n    }\n    \n    // add and color scene\n    c = max(cos(d*pi2) - s*sqrt(d) - k, 0.);\n    c.gb += .1;\n    C = vec4(c*.4 + c.brg*.6 + c*c, 1);\n}\n  `},{title:\"Fireworks\",author:\"ilyaev\",originalURL:\"https://www.shadertoy.com/view/wslcWN\",value:` \n\n#define SPARKS 30\n#define FIREWORKS 8.\n#define BASE_PAUSE FIREWORKS / 30.\n#define PI 3.14\n#define PI2 6.28\n\nfloat n21(vec2 n) {\n    return fract(sin(dot(n, vec2(12.9898, 4.1414))) * 43758.5453);\n}\n\nvec2 randomSpark(float noise) {\n    vec2 v0 = vec2((noise - .5) * 13., (fract(noise * 123.) - .5) * 15.);\n    return v0;\n}\n\nvec2 circularSpark(float i, float noiseId, float noiseSpark) {\n    noiseId = fract(noiseId * 7897654.45);\n    float a = (PI2 / float(SPARKS)) * i;\n    float speed = 10.*clamp(noiseId, .7, 1.);\n    float x = sin(a + iTime*((noiseId-.5)*3.));\n    float y = cos(a + iTime*(fract(noiseId*4567.332) - .5)*2.);\n    vec2 v0 = vec2(x, y) * speed;\n    return v0;\n}\n\nvec2 rocket(vec2 start, float t) {\n    float y = t;\n    float x = sin(y*10.+cos(t*3.))*.1;\n    vec2 p = start + vec2(x, y * 8.);\n    return p;\n}\nvec3 firework(vec2 uv, float index, float pauseTime) {\n    vec3 col = vec3(0.);\n    float timeScale = 1.;\n    vec2 gravity = vec2(0., -9.8);\n    float explodeTime = .9;\n    float rocketTime = 1.1;\n    float episodeTime = rocketTime + explodeTime + pauseTime;\n    float ratio = iResolution.x / iResolution.y;\n    float timeScaled = (iTime - pauseTime) / timeScale;\n    float id = floor(timeScaled / episodeTime);\n    float et = mod(timeScaled, episodeTime);\n    float noiseId = n21(vec2(id+1., index+1.));\n    float scale = clamp(fract(noiseId*567.53)*30., 10., 30.);\n    uv *= scale;\n    rocketTime -= (fract(noiseId*1234.543) * .5);\n    vec2 pRocket = rocket(vec2(0. + ((noiseId - .5)*scale*ratio), 0. - scale/2.), clamp(et, 0., rocketTime));\n    if (et < rocketTime) {\n        float rd = length(uv - pRocket);\n        col += pow(.05/rd , 1.9) * vec3(0.9, .3, .0);\n    }\n\n    if (et > rocketTime && et < (rocketTime + explodeTime)) {\n        float burst = sign(fract(noiseId*44432.22) - .6);\n        for(int i = 0 ; i < SPARKS ; i++) {\n                vec2 center = pRocket;\n                float fi = float(i);\n                float noiseSpark = fract(n21(vec2(id*10.+index*20., float(i+1))) * 332.44);\n                float t = et - rocketTime;\n                vec2 v0;\n                if (fract(noiseId*3532.33) > .5) {\n                    v0 = randomSpark(noiseSpark);\n                    t -= noiseSpark * (fract(noiseId*543.) * .2);\n                } else {\n                    v0 = circularSpark(fi, noiseId, noiseSpark);\n                    if ( (fract(noiseId*973.22) - .5) > 0.) {\n                        float re = mod(fi, 4. + 10. * noiseId);\n                        t -= floor(re/2.) * burst * .1;\n                    } else {\n                        t -= mod(fi, 2.) == 0. ? 0. : burst * .5*clamp(noiseId, .3, 1.);\n                    }\n                }\n                vec2 s = v0*t + (gravity * t * t) / 2.;\n                vec2 p = center + s;\n                float d = length(uv - p);\n                if (t > 0.) {\n                    float fade = clamp((1. - t/explodeTime), 0., 1.);\n                    vec3 sparkColor = vec3(noiseId*.9, .5*fract(noiseId *456.33), .5*fract(noiseId *1456.33));\n                    vec3 c = (.05 / d) * sparkColor;\n                    col += c * fade;\n                }\n            }\n    }\n    return col;\n}\n\nvoid mainImage(out vec4 fragColor, in vec2 fragCoords) {\n    vec2 uv = fragCoords.xy / iResolution.xy;\n    uv -= .5;\n    uv.x *= iResolution.x / iResolution.y;\n    vec3 col = vec3(0.);\n    for (float i = 0. ; i < FIREWORKS ; i += 1.) {\n        col += firework(uv, i + 1., (i * BASE_PAUSE));\n    }\n    fragColor = vec4(col, 1.);\n}\n  `},{title:\"Party Concert Visuals\",author:\"Blackle Mori\",originalURL:\"https://www.shadertoy.com/view/WtscW4\",value:` \n\nfloat comp (vec3 p) {\n    p = asin(sin(p)*.9);\n    return length(p)-1.;\n}\n\nvec3 erot(vec3 p, vec3 ax, float ro) {\n    return mix(dot(p,ax)*ax,p,cos(ro))+sin(ro)*cross(ax,p);\n}\n\nfloat smin(float a, float b, float k) {\n    float h = max(0.,k-abs(b-a))/k;\n    return min(a,b)-h*h*h*k/6.;\n}\n\nvec4 wrot(vec4 p) {\n    return vec4(dot(p,vec4(1)), p.yzw + p.zwy - p.wyz - p.xxx)/2.;\n}\n\nfloat d1, d2, d3;\nfloat t;\nfloat lazors, doodad;\nvec3 p2;\nfloat bpm = 125.;\nfloat scene(vec3 p) {\n    p2 = erot(p, vec3(0,1,0), t);\n    p2 = erot(p2, vec3(0,0,1), t/3.);\n    p2 = erot(p2, vec3(1,0,0), t/5.);\n    float bpt = iTime/60.*bpm;\n        vec4 p4 = vec4(p2,0);\n        p4=mix(p4,wrot(p4),smoothstep(-.5,.5,sin(bpt/4.)));\n        p4 =abs(p4);\n        p4=mix(p4,wrot(p4),smoothstep(-.5,.5,sin(bpt)));\n    float fctr = smoothstep(-.5,.5,sin(bpt/2.));\n    float fctr2 = smoothstep(.9,1.,sin(bpt/16.));\n    doodad = length(max(abs(p4)-mix(0.05,0.07,fctr),0.)+mix(-0.1,.2,fctr))-mix(.15,.55,fctr*fctr)+fctr2;\n    /*\n        vec4 p4 = vec4(p2,0);\n        p4=wrot(p4);\n        p4 = abs(p4);\n        p4=mix(p4,wrot(p4),smoothstep(-.5,.5,sin(t)));\n        doodad = length(max(abs(p4)-0.07,0)+0.2)-.55;\n    }*/\n    p.x += asin(sin(t/80.)*.99)*80.;\n    lazors = length(asin(sin(erot(p,vec3(1,0,0),t*.2).yz*.5+1.))/.5)-.1;\n    d1 = comp(p);\n    d2 = comp(erot(p+5., normalize(vec3(1,3,4)),0.4));\n    d3 = comp(erot(p+10., normalize(vec3(3,2,1)),1.));\n    return min(doodad,min(lazors,.3-smin(smin(d1,d2,0.05),d3,0.05)));\n}\n\nvec3 norm(vec3 p) {\n    float precis = length(p) < 1. ? 0.005 : 0.01;\n    mat3 k = mat3(p,p,p)-mat3(precis);\n    return normalize(scene(p)-vec3(scene(k[0]),scene(k[1]),scene(k[2])));\n}\n\nvoid mainImage( out vec4 fragColor, in vec2 fragCoord )\n{\n    vec2 uv = (fragCoord-.5*iResolution.xy)/iResolution.y;\n    float bpt = iTime/60.*bpm;\n    float bp = mix(pow(sin(fract(bpt)*3.14/2.),20.)+floor(bpt), bpt,0.4);\n    t = bp;\n\t  vec3 cam = normalize(vec3(.8+sin(bp*3.14/4.)*.3,uv));\n    vec3 init = vec3(-1.5+sin(bp*3.14)*.2,0,0)+cam*.2;\n    init = erot(init,vec3(0,1,0),sin(bp*.2)*.4);\n    init = erot(init,vec3(0,0,1),cos(bp*.2)*.4);\n    cam = erot(cam,vec3(0,1,0),sin(bp*.2)*.4);\n    cam = erot(cam,vec3(0,0,1),cos(bp*.2)*.4);\n    vec3 p = init;\n    bool hit = false;\n    float atten = 1.;\n    float tlen = 0.;\n    float glo = 0.;\n    float dist;\n    float fog = 0.;\n    float dlglo = 0.;\n    bool trg = false;\n    for (int i = 0; i <80 && !hit; i++) {\n        dist = scene(p);\n        hit = dist*dist < 1e-6;\n        glo += .2/(1.+lazors*lazors*20.)*atten;\n        dlglo += .2/(1.+doodad*doodad*20.)*atten;\n        if (hit && ((sin(d3*45.)<-0.4 && (dist!=doodad )) || (dist==doodad && sin(pow(length(p2*p2*p2),.3)*120.)>.4 )) && dist != lazors) {\n            trg = trg || dist==doodad;\n            hit = false;\n            vec3 n = norm(p);\n            atten *= 1.-abs(dot(cam,n))*.98;\n            cam = reflect(cam,n);\n            dist = .1;\n        }\n        p += cam*dist;\n        tlen += dist;\n        fog += dist*atten/30.;\n    }\n    fog = smoothstep(0.,1.,fog);\n    bool lz = lazors == dist;\n    bool dl = doodad == dist;\n    vec3 fogcol = mix(vec3(0.5,0.8,1.2), vec3(0.4,0.6,0.9), length(uv));\n    vec3 n = norm(p);\n    vec3 r = reflect(cam,n);\n    float ss = smoothstep(-.3,0.3,scene(p+vec3(.3)))+.5;\n    float fact = length(sin(r*(dl?4.:3.))*.5+.5)/sqrt(3.)*.7+.3;\n    vec3 matcol = mix(vec3(0.9,0.4,0.3), vec3(0.3,0.4,0.8), smoothstep(-1.,1.,sin(d1*5.+iTime*2.)));\n    matcol = mix(matcol, vec3(0.5,0.4,1.0), smoothstep(0.,1.,sin(d2*5.+iTime*2.)));\n    if (dl) matcol = mix(vec3(1),matcol,0.1)*.2+0.1;\n    vec3 col = matcol*fact*ss + pow(fact,10.);\n    if (lz) col = vec3(4);\n    fragColor.xyz = col*atten + glo*glo + fogcol*glo;\n    fragColor.xyz = mix(fragColor.xyz, fogcol, fog);\n    if(!dl)fragColor.xyz = abs(erot(fragColor.xyz, normalize(sin(p*2.)),0.2*(1.-fog)));\n    if(!trg&&!dl)fragColor.xyz+=dlglo*dlglo*.1*vec3(0.4,0.6,0.9);\n    fragColor.xyz = sqrt(fragColor.xyz);\n    fragColor.xyz = smoothstep(vec3(0),vec3(1.2),fragColor.xyz);\n    fragColor.a = 1.0;\n}\n\n  `}];\nexport const __FramerMetadata__ = {\"exports\":{\"mainFunction\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"vertexShaderSource\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"shaderInputs\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fragmentShaderSource\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./ShaderSource.map","// Welcome to Code in Framer\n// Get Started: https://www.framer.com/developers/\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{useEffect,useRef}from\"react\";import{addPropertyControls,ControlType}from\"framer\";import*as THREE from\"three\";import{shaderInputs,mainFunction,fragmentShaderSource,vertexShaderSource}from\"https://framer.com/m/ShaderSource-3JJF.js\";/**\n * These annotations control how your component sizes\n * Learn more: https://www.framer.com/developers/#code-components-auto-sizing\n *\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerIntrinsicWidth 700\n * @framerIntrinsicHeight 400\n */const fragmentShadersTitle=()=>{return fragmentShaderSource.map(e=>e.title).sort();};export default function Webgl_Shader_Component(props){const{shaderChoose,selectShader,customShader,speed,mouseInteraction,mouseOption,limitFPS}=props;const containerRef=useRef(null);const getFragmentSelectedData=shaderChoose===\"List\"?fragmentShaderSource.find(x=>x.title===selectShader):{title:customShader.title,value:customShader.fragment};useEffect(()=>{const container=containerRef?.current;if(!container)return;const scene=new THREE.Scene;const camera=new THREE.OrthographicCamera(-1,1,1,-1,-1,1);const renderer=new THREE.WebGLRenderer({alpha:true});renderer.domElement.setAttribute(\"role\",\"img\");renderer.domElement.setAttribute(\"aria-label\",`${getFragmentSelectedData.title||\"Untitled\"}`);renderer.domElement.setAttribute(\"aria-labelledby\",`${getFragmentSelectedData?.author||\"Unknown\"}`);container.appendChild(renderer.domElement);const geometry=new THREE.PlaneGeometry(2,2);const textureLoader=new THREE.TextureLoader;const material=new THREE.ShaderMaterial({uniforms:{iTime:{value:0},iResolution:{value:new THREE.Vector3},iMouse:{value:new THREE.Vector4},iChannel0:{value:shaderChoose===\"List\"&&customShader.textureUpload?null:textureLoader.load(customShader.textureUpload?.src)}},vertexShader:shaderChoose===\"List\"?vertexShaderSource:customShader.vertex,fragmentShader:shaderChoose===\"List\"?shaderInputs.concat(getFragmentSelectedData.value,mainFunction):customShader.inputs.concat(customShader.fragment,customShader.mainFunc),transparent:true});const mesh=new THREE.Mesh(geometry,material);scene.add(mesh);const resizeObserver=new ResizeObserver(entries=>{for(let entry of entries){const{width,height}=entry.contentRect;renderer.setSize(width,height);material.uniforms.iResolution.value.set(width,height);}});resizeObserver.observe(container);//mousemove interaction\nconst getCoords=obj=>{let x=0;let y=0;do{x+=obj.offsetLeft;y+=obj.offsetTop;}while(obj=obj.offsetParent)return{mX:x,mY:y};};const iMouseControl=e=>{const pos=getCoords(renderer.domElement);const mcx=(e.pageX-pos.mX)*renderer.domElement.width/renderer.domElement.offsetWidth;const mcy=renderer.domElement.height-(e.pageY-pos.mY)*renderer.domElement.height/renderer.domElement.offsetHeight;const x=mcx*mouseOption.mouseSpeed*.1;const y=mcy*mouseOption.mouseSpeed*.1;material.uniforms.iMouse.value.set(x,y,1.1,0);};const dragStart=ev=>{ev.preventDefault();renderer.domElement.setPointerCapture(ev.pointerId);};const dragEnd=ev=>{ev.preventDefault();renderer.domElement.releasePointerCapture(ev.pointerId);};const drag=ev=>{ev.preventDefault();renderer.domElement.hasPointerCapture(ev.pointerId)&&iMouseControl(ev);};const mouseMove=e=>{e.preventDefault();iMouseControl(e);};if(mouseInteraction){if(mouseOption.mouseDrag===\"Drag\"){renderer.domElement.addEventListener(\"pointerdown\",dragStart);renderer.domElement.addEventListener(\"pointerup\",dragEnd);renderer.domElement.addEventListener(\"pointermove\",drag);renderer.domElement.addEventListener(\"click\",mouseMove);}else{renderer.domElement.addEventListener(\"mousemove\",mouseMove);renderer.domElement.addEventListener(\"click\",mouseMove);}}// fps limit\nlet clock=new THREE.Clock;let delta=0;let interval=1/limitFPS;const animate=time=>{delta+=clock.getDelta();material.uniforms.iTime.value=time*.001*speed;if(delta>interval){renderer.render(scene,camera);delta=delta%interval;}requestAnimationFrame(animate);};requestAnimationFrame(animate);return()=>{while(scene.children.length>0){scene.remove(scene.children[0]);renderer.forceContextLoss();resizeObserver.disconnect();renderer.dispose();if(mouseInteraction){if(mouseOption.mouseDrag===\"Drag\"){renderer.domElement.removeEventListener(\"pointerdown\",dragStart);renderer.domElement.removeEventListener(\"pointerup\",dragEnd);renderer.domElement.removeEventListener(\"pointermove\",drag);}else{renderer.domElement.removeEventListener(\"mousemove\",mouseMove);}}container.removeChild(renderer.domElement);}};},[shaderChoose,customShader,selectShader,speed,mouseInteraction,mouseOption,limitFPS]);return /*#__PURE__*/_jsx(\"div\",{ref:containerRef,style:{width:\"100%\",height:\"100%\",overflow:\"hidden\"}});}Webgl_Shader_Component.displayName=\"Shaders\";addPropertyControls(Webgl_Shader_Component,{shaderChoose:{type:ControlType.Enum,title:\"Choose\",options:[\"List\",\"Custom\"],defaultValue:\"List\",displaySegmentedControl:true},selectShader:{type:ControlType.Enum,title:\" \",options:fragmentShadersTitle(),defaultValue:\"2D Clouds\",description:`Totally *${fragmentShaderSource.length}* Shaders from [Shadertoy](https://www.shadertoy.com/). Free to use.`,hidden:props=>props.shaderChoose!=\"List\"},customShader:{type:ControlType.Object,title:\" \",controls:{title:{type:ControlType.String,title:\"Title\",defaultValue:fragmentShaderSource[2].title},inputs:{type:ControlType.String,title:\"Inputs\",defaultValue:shaderInputs},vertex:{type:ControlType.String,title:\"Vertex\",defaultValue:vertexShaderSource},fragment:{type:ControlType.String,title:\"Fragment\",defaultValue:fragmentShaderSource[2].value,displayTextArea:true},textureUpload:{type:ControlType.ResponsiveImage,title:\"Texture\",description:\"Only in iChannel0 supported\"},mainFunc:{type:ControlType.String,title:\"Main Funtion\",defaultValue:mainFunction}},hidden:props=>props.shaderChoose!=\"Custom\"},speed:{type:ControlType.Number,defaultValue:1,min:.1,max:10,step:.1,title:\"Speed\",unit:\"s\"},mouseInteraction:{type:ControlType.Boolean,defaultValue:false,title:\"Mouse Interaction\",description:`Works only on supported Shaders`},mouseOption:{type:ControlType.Object,title:\"Mouse Option\",controls:{mouseDrag:{type:ControlType.Enum,title:\"Type\",options:[\"Drag\",\"Free\"],defaultValue:\"Drag\",displaySegmentedControl:true},mouseSpeed:{type:ControlType.Number,defaultValue:10,min:.1,max:10,step:.1,title:\"Mouse Speed\"}},hidden:props=>!props.mouseInteraction},limitFPS:{type:ControlType.Enum,title:\"FPS Limit\",options:[30,60,120,160],defaultValue:120,displaySegmentedControl:true,description:\"Limit FPS if there is any performance issue\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Webgl_Shader_Component\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Webgl_Shader_Component.map","// Generated by Framer (3e5217b)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"FS;Satoshi-regular\",\"FS;Satoshi-bold\",\"FS;Satoshi-bold italic\",\"FS;Satoshi-italic\"]);export const fonts=[{explicitInter:true,fonts:[{family:\"Satoshi\",source:\"fontshare\",style:\"normal\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/TTX2Z3BF3P6Y5BQT3IV2VNOK6FL22KUT/7QYRJOI3JIMYHGY6CH7SOIFRQLZOLNJ6/KFIAZD4RUMEZIYV6FQ3T3GP5PDBDB6JY.woff2\",weight:\"400\"},{family:\"Satoshi\",source:\"fontshare\",style:\"normal\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/LAFFD4SDUCDVQEXFPDC7C53EQ4ZELWQI/PXCT3G6LO6ICM5I3NTYENYPWJAECAWDD/GHM6WVH6MILNYOOCXHXB5GTSGNTMGXZR.woff2\",weight:\"700\"},{family:\"Satoshi\",source:\"fontshare\",style:\"italic\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/CDEBEFT2R7XKNGXSBBLZGMY4MMHZG75P/HEVKDGQCYDZ7Z6CDVR2ZQGBCTUD6ZARH/BKWEE3VKGTFABE37K2DTH625VUSN2N35.woff2\",weight:\"700\"},{family:\"Satoshi\",source:\"fontshare\",style:\"italic\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/MPIFA4B3XXRNY2MJDGP6GOOOAF6EOCLO/W5E4ZFYPJ3V6JKMBGHB6YMITK6EWS2XA/QOMBWPST76ICDYF6WOBS7SQ7RBT67QW2.woff2\",weight:\"400\"}]}];export const css=['.framer-QcOgi .framer-styles-preset-of0r53:not(.rich-text-wrapper), .framer-QcOgi .framer-styles-preset-of0r53.rich-text-wrapper p { --framer-font-family: \"Satoshi\", \"Satoshi Placeholder\", sans-serif; --framer-font-family-bold: \"Satoshi\", \"Satoshi Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Satoshi\", \"Satoshi Placeholder\", sans-serif; --framer-font-family-italic: \"Satoshi\", \"Satoshi Placeholder\", sans-serif; --framer-font-open-type-features: \\'blwf\\' on, \\'cv09\\' on, \\'cv03\\' on, \\'cv04\\' on, \\'cv11\\' on; --framer-font-size: 22px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-font-weight-bold: 700; --framer-font-weight-bold-italic: 700; --framer-font-weight-italic: 400; --framer-letter-spacing: -0.02em; --framer-line-height: 1.4em; --framer-paragraph-spacing: 18px; --framer-text-alignment: start; --framer-text-color: var(--token-c5e7540f-fd3a-4db4-af5b-9f8aab4b1ed8, #ffffff); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }','@media (max-width: 1199px) and (min-width: 768px) { .framer-QcOgi .framer-styles-preset-of0r53:not(.rich-text-wrapper), .framer-QcOgi .framer-styles-preset-of0r53.rich-text-wrapper p { --framer-font-family: \"Satoshi\", \"Satoshi Placeholder\", sans-serif; --framer-font-family-bold: \"Satoshi\", \"Satoshi Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Satoshi\", \"Satoshi Placeholder\", sans-serif; --framer-font-family-italic: \"Satoshi\", \"Satoshi Placeholder\", sans-serif; --framer-font-open-type-features: \\'blwf\\' on, \\'cv09\\' on, \\'cv03\\' on, \\'cv04\\' on, \\'cv11\\' on; --framer-font-size: 18px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-font-weight-bold: 700; --framer-font-weight-bold-italic: 700; --framer-font-weight-italic: 400; --framer-letter-spacing: -0.02em; --framer-line-height: 1.4em; --framer-paragraph-spacing: 18px; --framer-text-alignment: start; --framer-text-color: var(--token-c5e7540f-fd3a-4db4-af5b-9f8aab4b1ed8, #ffffff); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; } }','@media (max-width: 767px) and (min-width: 0px) { .framer-QcOgi .framer-styles-preset-of0r53:not(.rich-text-wrapper), .framer-QcOgi .framer-styles-preset-of0r53.rich-text-wrapper p { --framer-font-family: \"Satoshi\", \"Satoshi Placeholder\", sans-serif; --framer-font-family-bold: \"Satoshi\", \"Satoshi Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Satoshi\", \"Satoshi Placeholder\", sans-serif; --framer-font-family-italic: \"Satoshi\", \"Satoshi Placeholder\", sans-serif; --framer-font-open-type-features: \\'blwf\\' on, \\'cv09\\' on, \\'cv03\\' on, \\'cv04\\' on, \\'cv11\\' on; --framer-font-size: 14px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-font-weight-bold: 700; --framer-font-weight-bold-italic: 700; --framer-font-weight-italic: 400; --framer-letter-spacing: -0.02em; --framer-line-height: 1.4em; --framer-paragraph-spacing: 18px; --framer-text-alignment: start; --framer-text-color: var(--token-c5e7540f-fd3a-4db4-af5b-9f8aab4b1ed8, #ffffff); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; } }'];export const className=\"framer-QcOgi\";\nexport const __FramerMetadata__ = {\"exports\":{\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (fb365c6)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,getLoadingLazyAtYPosition,Image,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";const cycleOrder=[\"z9YVdi44h\",\"gHx5JpWeo\"];const serializationHash=\"framer-mFuk0\";const variantClassNames={gHx5JpWeo:\"framer-v-ktunyk\",z9YVdi44h:\"framer-v-8hi2k5\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={damping:60,delay:0,mass:1,stiffness:500,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const humanReadableVariantMap={\"Hope (Neural)\":\"gHx5JpWeo\",Hope:\"z9YVdi44h\"};const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"z9YVdi44h\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"z9YVdi44h\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsxs(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-8hi2k5\",className,classNames),\"data-framer-name\":\"Hope\",layoutDependency:layoutDependency,layoutId:\"z9YVdi44h\",ref:refBinding,style:{backgroundColor:\"var(--token-33dc5e09-8448-4170-b77c-6ad228a5732b, rgb(18, 13, 38))\",...style},variants:{gHx5JpWeo:{backgroundColor:\"rgb(5, 5, 5)\"}},...addPropertyOverrides({gHx5JpWeo:{\"data-framer-name\":\"Hope (Neural)\"}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(Image,{background:{alt:\"\",backgroundSize:1,fit:\"tile\",intrinsicHeight:256,intrinsicWidth:256,loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+0),pixelHeight:256,pixelWidth:256,positionX:\"center\",positionY:\"top\",src:\"https://framerusercontent.com/images/6mcf62RlDfRfU61Yg5vb2pefpi4.png?width=256&height=256\"},className:\"framer-5dnjln\",\"data-framer-name\":\"Image\",layoutDependency:layoutDependency,layoutId:\"ubFK47BQI\",style:{opacity:.095}}),/*#__PURE__*/_jsx(motion.figure,{className:\"framer-1ktkebc\",\"data-framer-name\":\"Background\",layoutDependency:layoutDependency,layoutId:\"p7G8FWNzi\",children:/*#__PURE__*/_jsx(Image,{as:\"figure\",background:{alt:\"\",fit:\"fill\",intrinsicHeight:1085,intrinsicWidth:1920,loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+0+(0+(((componentViewport?.height||984)-0)*1-0-(((componentViewport?.height||984)-0)*1-0)*1)/2)),pixelHeight:1085,pixelWidth:1920,sizes:`calc(${componentViewport?.width||\"100vw\"} * 1.0008)`,src:\"https://framerusercontent.com/images/SX0MfuQzEVAaYZT5KjxGOEjvjLY.png?width=1920&height=1085\",srcSet:\"https://framerusercontent.com/images/SX0MfuQzEVAaYZT5KjxGOEjvjLY.png?scale-down-to=512&width=1920&height=1085 512w,https://framerusercontent.com/images/SX0MfuQzEVAaYZT5KjxGOEjvjLY.png?scale-down-to=1024&width=1920&height=1085 1024w,https://framerusercontent.com/images/SX0MfuQzEVAaYZT5KjxGOEjvjLY.png?width=1920&height=1085 1920w\"},className:\"framer-1bnf13v\",\"data-framer-name\":\"Gradients\",layoutDependency:layoutDependency,layoutId:\"xnEkGeEKI\",style:{opacity:.9}})}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-135b5s7\",\"data-framer-name\":\"Cover\",layoutDependency:layoutDependency,layoutId:\"UKJKKvtYG\",style:{background:\"linear-gradient(180deg, rgba(18, 13, 38, 0) 0%, var(--token-0d1455ba-a295-466e-93de-5c81f4a7b4cf, rgb(18, 13, 38)) 84.009009009009%)\"}})]})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-mFuk0.framer-1vim12x, .framer-mFuk0 .framer-1vim12x { display: block; }\",\".framer-mFuk0.framer-8hi2k5 { height: 984px; overflow: var(--overflow-clip-fallback, clip); position: relative; width: 1326px; }\",\".framer-mFuk0 .framer-5dnjln { bottom: 0px; flex: none; left: 0px; overflow: visible; position: absolute; right: 0px; top: 0px; }\",\".framer-mFuk0 .framer-1ktkebc { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: 100%; justify-content: center; left: 0px; overflow: hidden; padding: 0px; position: absolute; top: 0px; width: 100%; z-index: 0; }\",\".framer-mFuk0 .framer-1bnf13v { flex: none; height: 100%; overflow: visible; position: relative; width: 100%; }\",\".framer-mFuk0 .framer-135b5s7 { bottom: 0px; flex: none; left: 0px; position: absolute; right: 0px; top: 0px; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 984\n * @framerIntrinsicWidth 1326\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"gHx5JpWeo\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerEUvxkoVxm=withCSS(Component,css,\"framer-mFuk0\");export default FramerEUvxkoVxm;FramerEUvxkoVxm.displayName=\"Background\";FramerEUvxkoVxm.defaultProps={height:984,width:1326};addPropertyControls(FramerEUvxkoVxm,{variant:{options:[\"z9YVdi44h\",\"gHx5JpWeo\"],optionTitles:[\"Hope\",\"Hope (Neural)\"],title:\"Variant\",type:ControlType.Enum}});addFonts(FramerEUvxkoVxm,[{explicitInter:true,fonts:[]}],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerEUvxkoVxm\",\"slots\":[],\"annotations\":{\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"gHx5JpWeo\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerColorSyntax\":\"true\",\"framerComponentViewportWidth\":\"true\",\"framerAutoSizeImages\":\"true\",\"framerIntrinsicHeight\":\"984\",\"framerIntrinsicWidth\":\"1326\",\"framerDisplayContentsDiv\":\"false\",\"framerImmutableVariables\":\"true\",\"framerContractVersion\":\"1\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./EUvxkoVxm.map","// Generated by Framer (3e5217b)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,getLoadingLazyAtYPosition,Image,Link,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";const enabledGestures={cXvFOtR1F:{hover:true}};const cycleOrder=[\"a2F_eIzqL\",\"vIEd4UYw8\",\"UKN6dFhoY\",\"i6ZdaRP3t\",\"cXvFOtR1F\",\"SOrehS6LH\"];const serializationHash=\"framer-DjBtB\";const variantClassNames={a2F_eIzqL:\"framer-v-zs4szm\",cXvFOtR1F:\"framer-v-1uunfza\",i6ZdaRP3t:\"framer-v-5zwpuo\",SOrehS6LH:\"framer-v-nwcsf5\",UKN6dFhoY:\"framer-v-1qxytg9\",vIEd4UYw8:\"framer-v-wq3ttn\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const toResponsiveImage=value=>{if(typeof value===\"object\"&&value!==null&&typeof value.src===\"string\"){return value;}return typeof value===\"string\"?{src:value}:undefined;};const transition2={damping:30,delay:0,mass:1,stiffness:400,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const humanReadableVariantMap={\"Dark (Icon)\":\"i6ZdaRP3t\",\"Light - Hoverable\":\"cXvFOtR1F\",\"Light (Icon)\":\"UKN6dFhoY\",Custom:\"SOrehS6LH\",Dark:\"vIEd4UYw8\",Light:\"a2F_eIzqL\"};const getProps=({click,custom,height,id,link,newTab,width,...props})=>{return{...props,c9lp336Nn:newTab??props.c9lp336Nn,CD0sNjf9a:link??props.CD0sNjf9a,N7TlmLtG9:click??props.N7TlmLtG9,variant:humanReadableVariantMap[props.variant]??props.variant??\"a2F_eIzqL\",vPQR0p4ls:custom??props.vPQR0p4ls??{pixelHeight:1008,pixelWidth:1484,src:\"https://framerusercontent.com/images/TizDK9IlzoiD2fe2q3JqUf8HZoc.svg?scale-down-to=512&width=1484&height=1008\",srcSet:\"https://framerusercontent.com/images/TizDK9IlzoiD2fe2q3JqUf8HZoc.svg?scale-down-to=512&width=1484&height=1008 512w,https://framerusercontent.com/images/TizDK9IlzoiD2fe2q3JqUf8HZoc.svg?scale-down-to=1024&width=1484&height=1008 1024w,https://framerusercontent.com/images/TizDK9IlzoiD2fe2q3JqUf8HZoc.svg?width=1484&height=1008 1484w\"}};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,CD0sNjf9a,N7TlmLtG9,c9lp336Nn,vPQR0p4ls,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"a2F_eIzqL\",enabledGestures,ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const onTap194epg4=activeVariantCallback(async(...args)=>{setGestureState({isPressed:false});if(N7TlmLtG9){const res=await N7TlmLtG9(...args);if(res===false)return false;}});const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(Link,{href:CD0sNjf9a,motionChild:true,nodeId:\"a2F_eIzqL\",openInNewTab:c9lp336Nn,scopeId:\"wZpHBWjxP\",smoothScroll:true,children:/*#__PURE__*/_jsx(Image,{...restProps,...gestureHandlers,as:\"a\",background:{alt:\"Agent.so Light Logo\",fit:\"fit\",intrinsicHeight:1008,intrinsicWidth:1484,loading:getLoadingLazyAtYPosition(componentViewport?.y||0),pixelHeight:1008,pixelWidth:1484,positionX:\"center\",positionY:\"center\",sizes:componentViewport?.width||\"100vw\",src:\"https://framerusercontent.com/images/TizDK9IlzoiD2fe2q3JqUf8HZoc.svg?width=1484&height=1008\",srcSet:\"https://framerusercontent.com/images/TizDK9IlzoiD2fe2q3JqUf8HZoc.svg?scale-down-to=512&width=1484&height=1008 512w,https://framerusercontent.com/images/TizDK9IlzoiD2fe2q3JqUf8HZoc.svg?scale-down-to=1024&width=1484&height=1008 1024w,https://framerusercontent.com/images/TizDK9IlzoiD2fe2q3JqUf8HZoc.svg?width=1484&height=1008 1484w\"},className:`${cx(scopingClassNames,\"framer-zs4szm\",className,classNames)} framer-1eue2rs`,\"data-framer-name\":\"Light\",\"data-highlight\":true,layoutDependency:layoutDependency,layoutId:\"a2F_eIzqL\",onTap:onTap194epg4,ref:refBinding,style:{...style},...addPropertyOverrides({\"cXvFOtR1F-hover\":{\"data-framer-name\":undefined},cXvFOtR1F:{\"data-framer-name\":\"Light - Hoverable\"},i6ZdaRP3t:{\"data-framer-name\":\"Dark (Icon)\",background:{alt:\"Agent.so Light Logo\",fit:\"fit\",intrinsicHeight:1008,intrinsicWidth:1484,loading:getLoadingLazyAtYPosition(componentViewport?.y||0),pixelHeight:631,pixelWidth:921,positionX:\"center\",positionY:\"center\",sizes:componentViewport?.width||\"100vw\",src:\"https://framerusercontent.com/images/wygbyOmf9KGrmB5jsK85AYsv3o.svg?width=921&height=631\",srcSet:\"https://framerusercontent.com/images/wygbyOmf9KGrmB5jsK85AYsv3o.svg?scale-down-to=512&width=921&height=631 512w,https://framerusercontent.com/images/wygbyOmf9KGrmB5jsK85AYsv3o.svg?width=921&height=631 921w\"}},SOrehS6LH:{\"data-framer-name\":\"Custom\",background:{alt:\"Agent.so Light Logo\",fit:\"fit\",intrinsicHeight:1008,intrinsicWidth:1484,loading:getLoadingLazyAtYPosition(componentViewport?.y||0),pixelHeight:1008,pixelWidth:1484,sizes:componentViewport?.width||\"100vw\",...toResponsiveImage(vPQR0p4ls),...{positionX:\"center\",positionY:\"center\"}}},UKN6dFhoY:{\"data-framer-name\":\"Light (Icon)\",background:{alt:\"Agent.so Light Logo\",fit:\"fit\",intrinsicHeight:1008,intrinsicWidth:1484,loading:getLoadingLazyAtYPosition(componentViewport?.y||0),pixelHeight:631,pixelWidth:921,positionX:\"center\",positionY:\"center\",sizes:componentViewport?.width||\"100vw\",src:\"https://framerusercontent.com/images/0ex9tFpsbkWYWhbWt1x2XXQ4Y.svg?width=921&height=631\",srcSet:\"https://framerusercontent.com/images/0ex9tFpsbkWYWhbWt1x2XXQ4Y.svg?scale-down-to=512&width=921&height=631 512w,https://framerusercontent.com/images/0ex9tFpsbkWYWhbWt1x2XXQ4Y.svg?width=921&height=631 921w\"}},vIEd4UYw8:{\"data-framer-name\":\"Dark\",background:{alt:\"Agent.so Light Logo\",fit:\"fit\",intrinsicHeight:1008,intrinsicWidth:1484,loading:getLoadingLazyAtYPosition(componentViewport?.y||0),pixelHeight:1008,pixelWidth:1484,positionX:\"center\",positionY:\"center\",sizes:componentViewport?.width||\"100vw\",src:\"https://framerusercontent.com/images/GNYbASM9IWvlwldj3hCfQ9gVQqI.svg?width=1484&height=1008\",srcSet:\"https://framerusercontent.com/images/GNYbASM9IWvlwldj3hCfQ9gVQqI.svg?scale-down-to=512&width=1484&height=1008 512w,https://framerusercontent.com/images/GNYbASM9IWvlwldj3hCfQ9gVQqI.svg?scale-down-to=1024&width=1484&height=1008 1024w,https://framerusercontent.com/images/GNYbASM9IWvlwldj3hCfQ9gVQqI.svg?width=1484&height=1008 1484w\"}}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(Transition,{value:transition2,children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-n8c621\",\"data-border\":true,\"data-framer-name\":\"Overlay\",layoutDependency:layoutDependency,layoutId:\"ft8uf9jlR\",style:{\"--border-bottom-width\":\"1px\",\"--border-color\":\"rgb(58, 47, 95)\",\"--border-left-width\":\"1px\",\"--border-right-width\":\"1px\",\"--border-style\":\"dashed\",\"--border-top-width\":\"1px\",background:\"linear-gradient(120deg, rgba(255, 255, 255, 0.05) 0%, rgba(171, 171, 171, 0) 100%)\",borderBottomLeftRadius:4,borderBottomRightRadius:4,borderTopLeftRadius:4,borderTopRightRadius:4,opacity:0},variants:{\"cXvFOtR1F-hover\":{opacity:1}}})})})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-DjBtB.framer-1eue2rs, .framer-DjBtB .framer-1eue2rs { display: block; }\",\".framer-DjBtB.framer-zs4szm { cursor: pointer; height: 58px; position: relative; text-decoration: none; width: 85px; }\",\".framer-DjBtB .framer-n8c621 { bottom: -3px; flex: none; left: -4px; overflow: visible; pointer-events: none; position: absolute; right: -4px; top: -3px; }\",\".framer-DjBtB.framer-v-wq3ttn.framer-zs4szm, .framer-DjBtB.framer-v-1uunfza.framer-zs4szm, .framer-DjBtB.framer-v-nwcsf5.framer-zs4szm { aspect-ratio: 1.4722222222222223 / 1; height: var(--framer-aspect-ratio-supported, 58px); }\",\".framer-DjBtB.framer-v-1qxytg9.framer-zs4szm, .framer-DjBtB.framer-v-5zwpuo.framer-zs4szm { aspect-ratio: 1.4722222222222223 / 1; height: var(--framer-aspect-ratio-supported, 34px); width: 49px; }\",'.framer-DjBtB[data-border=\"true\"]::after, .framer-DjBtB [data-border=\"true\"]::after { content: \"\"; border-width: var(--border-top-width, 0) var(--border-right-width, 0) var(--border-bottom-width, 0) var(--border-left-width, 0); border-color: var(--border-color, none); border-style: var(--border-style, none); width: 100%; height: 100%; position: absolute; box-sizing: border-box; left: 0; top: 0; border-radius: inherit; pointer-events: none; }'];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 58\n * @framerIntrinsicWidth 85\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"vIEd4UYw8\":{\"layout\":[\"fixed\",\"fixed\"]},\"UKN6dFhoY\":{\"layout\":[\"fixed\",\"fixed\"]},\"i6ZdaRP3t\":{\"layout\":[\"fixed\",\"fixed\"]},\"cXvFOtR1F\":{\"layout\":[\"fixed\",\"fixed\"]},\"SOrehS6LH\":{\"layout\":[\"fixed\",\"fixed\"]},\"peW093SMd\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerVariables {\"CD0sNjf9a\":\"link\",\"N7TlmLtG9\":\"click\",\"c9lp336Nn\":\"newTab\",\"vPQR0p4ls\":\"custom\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerwZpHBWjxP=withCSS(Component,css,\"framer-DjBtB\");export default FramerwZpHBWjxP;FramerwZpHBWjxP.displayName=\"Logo\";FramerwZpHBWjxP.defaultProps={height:58,width:85};addPropertyControls(FramerwZpHBWjxP,{variant:{options:[\"a2F_eIzqL\",\"vIEd4UYw8\",\"UKN6dFhoY\",\"i6ZdaRP3t\",\"cXvFOtR1F\",\"SOrehS6LH\"],optionTitles:[\"Light\",\"Dark\",\"Light (Icon)\",\"Dark (Icon)\",\"Light - Hoverable\",\"Custom\"],title:\"Variant\",type:ControlType.Enum},CD0sNjf9a:{title:\"Link\",type:ControlType.Link},N7TlmLtG9:{title:\"Click\",type:ControlType.EventHandler},c9lp336Nn:{defaultValue:false,title:\"New Tab\",type:ControlType.Boolean},vPQR0p4ls:{__defaultAssetReference:\"data:framer/asset-reference,TizDK9IlzoiD2fe2q3JqUf8HZoc.svg?originalFilename=logo-light-tm.svg&preferredSize=auto\",title:\"Custom\",type:ControlType.ResponsiveImage}});addFonts(FramerwZpHBWjxP,[{explicitInter:true,fonts:[]}],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerwZpHBWjxP\",\"slots\":[],\"annotations\":{\"framerColorSyntax\":\"true\",\"framerIntrinsicWidth\":\"85\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"vIEd4UYw8\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"UKN6dFhoY\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"i6ZdaRP3t\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"cXvFOtR1F\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"SOrehS6LH\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"peW093SMd\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerVariables\":\"{\\\"CD0sNjf9a\\\":\\\"link\\\",\\\"N7TlmLtG9\\\":\\\"click\\\",\\\"c9lp336Nn\\\":\\\"newTab\\\",\\\"vPQR0p4ls\\\":\\\"custom\\\"}\",\"framerComponentViewportWidth\":\"true\",\"framerImmutableVariables\":\"true\",\"framerContractVersion\":\"1\",\"framerDisplayContentsDiv\":\"false\",\"framerAutoSizeImages\":\"true\",\"framerIntrinsicHeight\":\"58\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./wZpHBWjxP.map","// Generated by Framer (84a2f33)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,getFontsFromSharedStyle,RichText,SmartComponentScopedContainer,useComponentViewport,useLocaleInfo,useVariantState,withCSS,withFX,withOptimizedAppearEffect}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import Ellipsis from\"https://framerusercontent.com/modules/cngvAw0w9C1Wv7G3Ze5w/r0j9ptfVncyEjLxyKH31/Ellipsis.js\";import Shaders from\"https://framerusercontent.com/modules/rtgc5gNwjSdkuKpOf8h6/ygUwfJdEOMiDct48NPI6/Webgl_Shader_Component.js\";import*as sharedStyle from\"https://framerusercontent.com/modules/teGXcopezj7wLHWPCN4k/5GkZSeaSyzIk6y9y2V7W/UoF26bCkV.js\";import Background from\"https://framerusercontent.com/modules/SlWX8OWpCDslEsiaClGY/nnYBUR4ZPqdjrizgp0up/EUvxkoVxm.js\";import Logo from\"https://framerusercontent.com/modules/lkoVix78ObHSq79wCy0h/nFBO9Xn4krB3xuIL7EyX/wZpHBWjxP.js\";const LogoFonts=getFonts(Logo);const EllipsisFonts=getFonts(Ellipsis);const SmartComponentScopedContainerWithFXWithOptimizedAppearEffect=withOptimizedAppearEffect(withFX(SmartComponentScopedContainer));const ShadersFonts=getFonts(Shaders);const BackgroundFonts=getFonts(Background);const serializationHash=\"framer-uee9W\";const variantClassNames={Kaxt49V6Q:\"framer-v-rptshp\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const transition2={bounce:.2,delay:.5,duration:.4,type:\"spring\"};const animation={opacity:.75,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transition:transition2,x:0,y:0};const animation1={opacity:.001,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:150};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const getProps=({height,id,status,width,...props})=>{return{...props,gGjc_qDei:status??props.gGjc_qDei??\"Entering Realm\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,gGjc_qDei,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({defaultVariant:\"Kaxt49V6Q\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[sharedStyle.className];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsxs(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-rptshp\",className,classNames),\"data-framer-name\":\"Default\",layoutDependency:layoutDependency,layoutId:\"Kaxt49V6Q\",ref:refBinding,style:{backgroundColor:\"var(--token-56c871dd-80bc-4031-b41d-333705d1391c, rgb(9, 4, 18))\",...style},children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-8b9pju\",\"data-framer-name\":\"Center\",layoutDependency:layoutDependency,layoutId:\"jdyPbFMsI\",children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{height:188,width:`min(200px, ${componentViewport?.width||\"100vw\"} - 60px)`,y:(componentViewport?.y||0)+30+(((componentViewport?.height||1080)-90-(Math.max(0,((componentViewport?.height||1080)-90-60.8)/1)*1+30.8+30))/2+0+0)+0+((Math.max(0,((componentViewport?.height||1080)-90-60.8)/1)*1-0-228.8)/2+0+0),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-wu6617-container\",layoutDependency:layoutDependency,layoutId:\"r5SWieLWS-container\",nodeId:\"r5SWieLWS\",rendersWithMotion:true,scopeId:\"JtZq_49E2\",children:/*#__PURE__*/_jsx(Logo,{c9lp336Nn:false,height:\"100%\",id:\"r5SWieLWS\",layoutId:\"r5SWieLWS\",style:{height:\"100%\",maxWidth:\"100%\",width:\"100%\"},variant:\"a2F_eIzqL\",width:\"100%\"})})}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-of0r53\",\"data-styles-preset\":\"UoF26bCkV\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-0a4f1509-ff06-48e1-89b7-b63338bae98d, rgb(225, 217, 255)))\"},children:/*#__PURE__*/_jsx(motion.strong,{children:\"Your Portal to AI\"})})}),className:\"framer-1hath4i\",\"data-framer-name\":\"Text\",fonts:[\"Inter\",\"Inter-Bold\"],layoutDependency:layoutDependency,layoutId:\"C9n37saoX\",style:{\"--extracted-r6o4lv\":\"var(--token-0a4f1509-ff06-48e1-89b7-b63338bae98d, rgb(225, 217, 255))\"},verticalAlignment:\"top\",withExternalLayout:true})]}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-1py5z5s\",\"data-framer-name\":\"Footer\",layoutDependency:layoutDependency,layoutId:\"TaflIDyvY\",children:/*#__PURE__*/_jsxs(motion.div,{className:\"framer-176zjee\",\"data-framer-name\":\"Label\",layoutDependency:layoutDependency,layoutId:\"e862yIGgM\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-of0r53\",\"data-styles-preset\":\"UoF26bCkV\",children:/*#__PURE__*/_jsx(motion.strong,{children:\"Entering Realm\"})})}),className:\"framer-1rlwg4y\",\"data-framer-name\":\"Text\",fonts:[\"Inter\",\"Inter-Bold\"],layoutDependency:layoutDependency,layoutId:\"vkaANfxdO\",text:gGjc_qDei,verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainerWithFXWithOptimizedAppearEffect,{__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:.75,animate:animation,className:\"framer-sfwesc-container\",\"data-framer-appear-id\":\"sfwesc\",initial:animation1,isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"xbPC27d1K-container\",nodeId:\"xbPC27d1K\",optimized:true,rendersWithMotion:true,scopeId:\"JtZq_49E2\",style:{opacity:.75},children:/*#__PURE__*/_jsx(Ellipsis,{height:\"100%\",id:\"xbPC27d1K\",layoutId:\"xbPC27d1K\",style:{height:\"100%\"},width:\"100%\"})})})]})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1w20cez\",\"data-framer-name\":\"Background\",layoutDependency:layoutDependency,layoutId:\"xp6QgMYos\",children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-d6li1i-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"V4qpNcTBn-container\",nodeId:\"V4qpNcTBn\",rendersWithMotion:true,scopeId:\"JtZq_49E2\",style:{filter:\"hue-rotate(100deg)\",mask:\"radial-gradient(50% 50% at 50% 50%, rgba(0,0,0,1) 0%, rgba(0, 0, 0, 0.00164) 99.99%, rgba(0,0,0,0) 100%) add\",WebkitFilter:\"hue-rotate(100deg)\",WebkitMask:\"radial-gradient(50% 50% at 50% 50%, rgba(0,0,0,1) 0%, rgba(0, 0, 0, 0.00164) 99.99%, rgba(0,0,0,0) 100%) add\"},children:/*#__PURE__*/_jsx(Shaders,{customShader:{fragment:\"float random (in vec2 _st) {\\n        return fract(sin(dot(_st.xy,\\n                             vec2(12.9898,78.233)))*\\n            43758.5453123);\\n    }\\n\\n// Based on Morgan McGuire @morgan3d\\n// https://www.shadertoy.com/view/4dS3Wd\\nfloat noise (in vec2 _st) {\\n    vec2 i = floor(_st);\\n    vec2 f = fract(_st);\\n\\n    // Four corners in 2D of a tile\\n    float a = random(i);\\n    float b = random(i + vec2(1.0, 0.0));\\n    float c = random(i + vec2(0.0, 1.0));\\n    float d = random(i + vec2(1.0, 1.0));\\n\\n    vec2 u = f * f * (3.0 - 2.0 * f);\\n\\n    return mix(a, b, u.x) +\\n            (c - a)* u.y * (1.0 - u.x) +\\n            (d - b) * u.x * u.y;\\n}\\n\\n#define NUM_OCTAVES 5\\n\\nfloat fbm ( in vec2 _st) {\\n    float v = 0.0;\\n    float a = 0.65;\\n    vec2 shift = vec2(100.0);\\n    // Rotate to reduce axial bias\\n    mat2 rot = mat2(cos(0.5), sin(0.5),\\n                    -sin(0.5), cos(0.50));\\n    for (int i = 0; i < NUM_OCTAVES; ++i) {\\n        v += a * noise(_st);\\n        _st = rot * _st * 2.0 + shift;\\n        a *= 0.5;\\n    }\\n    return v;\\n}\\n\\n    \\n    \\n\\nvoid mainImage( out vec4 fragColor, in vec2 fragCoord )\\n{\\n    // Normalized pixel coordinates (from 0 to 1)\\n    //vec2 vUv = fragCoord/iResolution.xy;\\n    vec2 uResolution = iResolution.xy;\\n    uResolution.y *= 1.5;\\n    vec2 vUv = fragCoord/uResolution.xy;\\n    vec3 color = vec3(0.);\\n        \\n    vec2 uv2 = vUv;\\n    uv2 -= .5;\\n    uv2.y += 0.125;\\n    \\n    float an = -iTime * 0.15;\\n    uv2 = mat2(cos(an),-sin(an),sin(an),cos(an)) * uv2;\\n    // uv3 = mat2(cos(an),-sin(an),sin(an),cos(an)) * uv3;\\n    float r1 = length(uv2) ;\\n    r1 = abs(r1);\\n    float a = atan(uv2.y, uv2.x);\\n    a = abs(a);\\n    uv2 = vec2(0.3/r1 + .95 * iTime , a);\\n\\n    vec2 q = vec2(0.);\\n    q.x = fbm( uv2 + 0.00*iTime);\\n    q.y = fbm( uv2 + vec2(1.0));\\n\\n    vec2 r = vec2(0.);\\n    r.x = fbm( uv2 + 1.0*q + vec2(1.7,9.2)+ 0.15*iTime );\\n    r.y = fbm( uv2 + 1.0*q + vec2(8.3,2.8)+ 0.126*iTime);\\n\\n    float f = fbm(uv2+r * fbm(uv2 + r * 2.));\\n\\n    vec3 c = vec3(0.);\\n    c = mix(vec3(0.101961,0.619608,0.666667),\\n                vec3(0.666667,0.666667,0.498039),\\n                clamp((f*f)*4.0,0.0,1.0));\\n\\n    c = mix(color,\\n                vec3(0,0,0.164706),\\n                clamp(length(q),0.0,1.0));\\n\\n    c = mix(color,\\n                vec3(0.666667,1,1),\\n            clamp(length(r.x),0.0,1.0));\\n\\n    c *= f*f*f+.6*f *f + .25 *f * c* f * c;\\n\\n\\n    color += c;\\n\\n    // Output to screen\\n    fragColor = vec4(color,1.0);\\n}\",inputs:\"\\nuniform float iTime;\\nuniform vec3 iResolution;\\nvarying vec2 vUv;\\nuniform float iTimeDelta;\\nuniform vec4 iMouse;\\nuniform sampler2D iChannel0;\\n\",mainFunc:\"\\nvoid main() {\\n    mainImage(gl_FragColor, vUv * iResolution.xy);\\n}\\n\",title:\"Realm\",vertex:\"varying vec2 vUv;void main() {    vUv = uv;    gl_Position = vec4(position, 1.0);}\"},height:\"100%\",id:\"V4qpNcTBn\",layoutId:\"V4qpNcTBn\",limitFPS:30,mouseInteraction:false,mouseOption:{mouseDrag:\"Drag\",mouseSpeed:10},selectShader:\"Cellular\",shaderChoose:\"Custom\",speed:.5,style:{height:\"100%\",width:\"100%\"},width:\"100%\"})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:Math.max(0,((componentViewport?.height||1080)-0-0-0)/1)*1,width:componentViewport?.width||\"100vw\",y:(componentViewport?.y||0)+0+0+(((componentViewport?.height||1080)-0-0-(Math.max(0,((componentViewport?.height||1080)-0-0-0)/1)*1+0))/2+0+0),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1f4x1i2-container\",\"data-framer-name\":\"Space\",layoutDependency:layoutDependency,layoutId:\"fMOXEHx9C-container\",name:\"Space\",nodeId:\"fMOXEHx9C\",rendersWithMotion:true,scopeId:\"JtZq_49E2\",children:/*#__PURE__*/_jsx(Background,{height:\"100%\",id:\"fMOXEHx9C\",layoutId:\"fMOXEHx9C\",name:\"Space\",style:{height:\"100%\",width:\"100%\"},variant:\"z9YVdi44h\",width:\"100%\"})})}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-opmfxd\",\"data-framer-name\":\"Shader\",layoutDependency:layoutDependency,layoutId:\"m5VvO06hN\",style:{background:\"linear-gradient(60deg, var(--token-56c871dd-80bc-4031-b41d-333705d1391c, rgb(9, 4, 18)) 0%, rgba(40, 31, 77, 0) 50%)\"}})]})]})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-uee9W.framer-11shhhl, .framer-uee9W .framer-11shhhl { display: block; }\",\".framer-uee9W.framer-rptshp { align-content: center; align-items: center; display: flex; flex-direction: column; flex-wrap: nowrap; gap: 30px; height: 1080px; justify-content: center; overflow: hidden; padding: 30px 30px 60px 30px; position: relative; width: 1920px; }\",\".framer-uee9W .framer-8b9pju { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 10px; height: 1px; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: 100%; z-index: 10; }\",\".framer-uee9W .framer-wu6617-container { aspect-ratio: 1.4680851063829787 / 1; flex: none; height: var(--framer-aspect-ratio-supported, 136px); max-width: 100%; pointer-events: none; position: relative; width: 200px; }\",\".framer-uee9W .framer-1hath4i, .framer-uee9W .framer-1rlwg4y { -webkit-user-select: none; flex: none; height: auto; pointer-events: auto; position: relative; user-select: none; white-space: pre; width: auto; }\",\".framer-uee9W .framer-1py5z5s { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 5px; height: min-content; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: 100%; z-index: 10; }\",\".framer-uee9W .framer-176zjee { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 5px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-uee9W .framer-sfwesc-container { flex: none; height: 6px; position: relative; width: auto; }\",\".framer-uee9W .framer-1w20cez { align-content: center; align-items: center; bottom: 0px; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 10px; justify-content: center; left: 0px; overflow: hidden; padding: 0px; position: absolute; right: 0px; top: 0px; z-index: 9; }\",\".framer-uee9W .framer-d6li1i-container { flex: none; height: 1080px; left: calc(50.00000000000002% - max(1920px, 1920px) / 2); min-width: 1920px; mix-blend-mode: soft-light; position: absolute; top: calc(50.00000000000002% - 1080px / 2); width: 1920px; z-index: 10; }\",\".framer-uee9W .framer-1f4x1i2-container { flex: 1 0 0px; height: 1px; position: relative; width: 100%; z-index: 8; }\",\".framer-uee9W .framer-opmfxd { bottom: 0px; flex: none; left: 0px; overflow: visible; position: absolute; right: 0px; top: 0px; z-index: 9; }\",...sharedStyle.css];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 1080\n * @framerIntrinsicWidth 1920\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerVariables {\"gGjc_qDei\":\"status\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerJtZq_49E2=withCSS(Component,css,\"framer-uee9W\");export default FramerJtZq_49E2;FramerJtZq_49E2.displayName=\"Loader\";FramerJtZq_49E2.defaultProps={height:1080,width:1920};addPropertyControls(FramerJtZq_49E2,{gGjc_qDei:{defaultValue:\"Entering Realm\",displayTextArea:false,title:\"Status\",type:ControlType.String}});addFonts(FramerJtZq_49E2,[{explicitInter:true,fonts:[{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/GrgcKwrN6d3Uz8EwcLHZxwEfC4.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/DpPBYI0sL4fYLgAkX8KXOPVt7c.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/4RAEQdEOrcnDkhHiiCbJOw92Lk.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/1K3W8DizY3v4emK8Mb08YHxTbs.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/tUSCtfYVM1I1IchuyCwz9gDdQ.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/VgYFWiwsAC5OYxAycRXXvhze58.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/VgYFWiwsAC5OYxAycRXXvhze58.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/GIryZETIX4IFypco5pYZONKhJIo.woff2\",weight:\"700\"}]},...LogoFonts,...EllipsisFonts,...ShadersFonts,...BackgroundFonts,...getFontsFromSharedStyle(sharedStyle.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerJtZq_49E2\",\"slots\":[],\"annotations\":{\"framerDisplayContentsDiv\":\"false\",\"framerAutoSizeImages\":\"true\",\"framerComponentViewportWidth\":\"true\",\"framerImmutableVariables\":\"true\",\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"1920\",\"framerVariables\":\"{\\\"gGjc_qDei\\\":\\\"status\\\"}\",\"framerColorSyntax\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerIntrinsicHeight\":\"1080\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","/**\n * --------------------------------------------------------------------\n * Interface\n * --------------------------------------------------------------------\n * Distributed under the VIAL License:\n * https://www.abruptive.com/policies/vial\n *\n * Unauthorized access or use of this code will result in prosecution\n * according to the furthest extent of the law.\n *\n * © Abruptive LLC · All Rights Reserved\n * --------------------------------------------------------------------\n */import{jsx as _jsx}from\"react/jsx-runtime\";import{useEffect}from\"react\";import*as DSInterfaceInteractions from\"https://framer.com/m/Interactions-aK2Z.js\";import*as DSInterfaceLinks from\"https://framer.com/m/Links-r6Zf.js\";import*as DSInterfaceSearchable from\"https://framer.com/m/Searchable-2VXN.js\";import*as DSInterfaceStyles from\"https://framer.com/m/Styles-dHmw.js\";import{default as LoaderComponent}from\"https://framer.com/m/Loader-2mfM.js\";/**\n * --------------------------------------------------------------------\n * Interface » Links\n * --------------------------------------------------------------------\n */export const Active=Component=>DSInterfaceLinks.Active(Component);export const AppendEmail=Component=>DSInterfaceLinks.AppendEmail(Component);export const AppendRedirect=Component=>DSInterfaceLinks.AppendRedirect(Component);/**\n * --------------------------------------------------------------------\n * Interface » Interactions\n * --------------------------------------------------------------------\n */export const Scrollable=Component=>DSInterfaceInteractions.Scrollable(Component);export const Indicators=Component=>DSInterfaceInteractions.Indicators(Component);/**\n * --------------------------------------------------------------------\n * Interface » Styles\n * --------------------------------------------------------------------\n */export const Fixed=Component=>DSInterfaceStyles.Fixed(Component);/**\n * --------------------------------------------------------------------\n * Interface » Searchable\n * --------------------------------------------------------------------\n */export const SearchableArea=Component=>DSInterfaceSearchable.SearchableArea(Component);/**\n * --------------------------------------------------------------------\n * Interface » Loader\n * --------------------------------------------------------------------\n */export const Loader=Fixed(props=>{/**\n     * Timeout refresh in case authentication failed.\n     *\n     * @TODO Get rid of this by solidifying the session system.\n     */useEffect(()=>{const timer=setTimeout(()=>{window.location.reload();},5e3);// Cleanup the timeout if the component unmounts\nreturn()=>clearTimeout(timer);},[]);/**\n     * Render the component.\n     */return /*#__PURE__*/_jsx(LoaderComponent,{...props});});\nexport const __FramerMetadata__ = {\"exports\":{\"Indicators\":{\"type\":\"reactHoc\",\"name\":\"Indicators\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Loader\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Fixed\":{\"type\":\"reactHoc\",\"name\":\"Fixed\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Active\":{\"type\":\"reactHoc\",\"name\":\"Active\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"AppendRedirect\":{\"type\":\"reactHoc\",\"name\":\"AppendRedirect\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"AppendEmail\":{\"type\":\"reactHoc\",\"name\":\"AppendEmail\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Scrollable\":{\"type\":\"reactHoc\",\"name\":\"Scrollable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchableArea\":{\"type\":\"reactHoc\",\"name\":\"SearchableArea\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./interface.map","// Generated by Framer (3e5217b)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"FS;Satoshi-bold\",\"FS;Satoshi-black\",\"FS;Satoshi-black italic\",\"FS;Satoshi-bold italic\"]);export const fonts=[{explicitInter:true,fonts:[{family:\"Satoshi\",source:\"fontshare\",style:\"normal\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/LAFFD4SDUCDVQEXFPDC7C53EQ4ZELWQI/PXCT3G6LO6ICM5I3NTYENYPWJAECAWDD/GHM6WVH6MILNYOOCXHXB5GTSGNTMGXZR.woff2\",weight:\"700\"},{family:\"Satoshi\",source:\"fontshare\",style:\"normal\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/NHPGVFYUXYXE33DZ75OIT4JFGHITX5PE/PSUTMASCDJTVPERDYJZPN23BVUFUCQIF/J64QX5IPOHK56I2KYUNBQ5M2XWZEYKYX.woff2\",weight:\"900\"},{family:\"Satoshi\",source:\"fontshare\",style:\"italic\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/5ICO57VJIN252OT5L2KLEIPW754DTLAO/ZU64SLR2IEO66N27IVY5Z6JJJRTJECJK/TCTRLNEXANFIGSFCZTGQL7PZ5362GYK6.woff2\",weight:\"900\"},{family:\"Satoshi\",source:\"fontshare\",style:\"italic\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/CDEBEFT2R7XKNGXSBBLZGMY4MMHZG75P/HEVKDGQCYDZ7Z6CDVR2ZQGBCTUD6ZARH/BKWEE3VKGTFABE37K2DTH625VUSN2N35.woff2\",weight:\"700\"}]}];export const css=['.framer-V4gbo .framer-styles-preset-n8i0ih:not(.rich-text-wrapper), .framer-V4gbo .framer-styles-preset-n8i0ih.rich-text-wrapper h6 { --framer-font-family: \"Satoshi\", \"Satoshi Placeholder\", sans-serif; --framer-font-family-bold: \"Satoshi\", sans-serif; --framer-font-family-bold-italic: \"Satoshi\", sans-serif; --framer-font-family-italic: \"Satoshi\", \"Satoshi Placeholder\", sans-serif; --framer-font-open-type-features: \\'blwf\\' on, \\'cv09\\' on, \\'cv03\\' on, \\'cv04\\' on, \\'cv11\\' on; --framer-font-size: 12px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 700; --framer-font-weight-bold: 900; --framer-font-weight-bold-italic: 900; --framer-font-weight-italic: 700; --framer-letter-spacing: 1.5px; --framer-line-height: 1.2em; --framer-paragraph-spacing: 40px; --framer-text-alignment: start; --framer-text-color: var(--token-887a062b-1950-4b53-8345-97084bbfd553, #8666ff); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: uppercase; }','@media (max-width: 1199px) and (min-width: 768px) { .framer-V4gbo .framer-styles-preset-n8i0ih:not(.rich-text-wrapper), .framer-V4gbo .framer-styles-preset-n8i0ih.rich-text-wrapper h6 { --framer-font-family: \"Satoshi\", \"Satoshi Placeholder\", sans-serif; --framer-font-family-bold: \"Satoshi\", sans-serif; --framer-font-family-bold-italic: \"Satoshi\", sans-serif; --framer-font-family-italic: \"Satoshi\", \"Satoshi Placeholder\", sans-serif; --framer-font-open-type-features: \\'blwf\\' on, \\'cv09\\' on, \\'cv03\\' on, \\'cv04\\' on, \\'cv11\\' on; --framer-font-size: 12px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 700; --framer-font-weight-bold: 900; --framer-font-weight-bold-italic: 900; --framer-font-weight-italic: 700; --framer-letter-spacing: 1.5px; --framer-line-height: 1.2em; --framer-paragraph-spacing: 40px; --framer-text-alignment: start; --framer-text-color: var(--token-887a062b-1950-4b53-8345-97084bbfd553, #8666ff); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: uppercase; } }','@media (max-width: 767px) and (min-width: 0px) { .framer-V4gbo .framer-styles-preset-n8i0ih:not(.rich-text-wrapper), .framer-V4gbo .framer-styles-preset-n8i0ih.rich-text-wrapper h6 { --framer-font-family: \"Satoshi\", \"Satoshi Placeholder\", sans-serif; --framer-font-family-bold: \"Satoshi\", sans-serif; --framer-font-family-bold-italic: \"Satoshi\", sans-serif; --framer-font-family-italic: \"Satoshi\", \"Satoshi Placeholder\", sans-serif; --framer-font-open-type-features: \\'blwf\\' on, \\'cv09\\' on, \\'cv03\\' on, \\'cv04\\' on, \\'cv11\\' on; --framer-font-size: 12px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 700; --framer-font-weight-bold: 900; --framer-font-weight-bold-italic: 900; --framer-font-weight-italic: 700; --framer-letter-spacing: 1.5px; --framer-line-height: 1.2em; --framer-paragraph-spacing: 40px; --framer-text-alignment: start; --framer-text-color: var(--token-887a062b-1950-4b53-8345-97084bbfd553, #8666ff); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: uppercase; } }'];export const className=\"framer-V4gbo\";\nexport const __FramerMetadata__ = {\"exports\":{\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","/**\n * --------------------------------------------------------------------\n * Skeleton\n * --------------------------------------------------------------------\n * Distributed under the VIAL License:\n * https://www.abruptive.com/policies/vial\n *\n * Unauthorized access or use of this code will result in prosecution\n * according to the furthest extent of the law.\n *\n * © Abruptive LLC · All Rights Reserved\n * --------------------------------------------------------------------\n */import{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";import{motion}from\"framer-motion\";/**\n * --------------------------------------------------------------------\n * Component\n * --------------------------------------------------------------------\n * @framerDisableUnlink\n */export default function Skeleton({width=\"100%\",height=50,borderRadius,background,highlight,duration,border}){return /*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:\"100%\",borderRadius,backgroundColor:background,overflow:\"hidden\",position:\"relative\",borderWidth:border.borderWidth,borderStyle:border.borderStyle,borderColor:border.borderColor},children:/*#__PURE__*/_jsx(motion.div,{style:{width:\"100%\",height:\"100%\",background:`linear-gradient(90deg, ${highlight} 0%, ${background} 50%, ${highlight} 100%)`,backgroundSize:\"200% 100%\",position:\"absolute\",top:0,left:0},animate:{backgroundPosition:[\"200% 0\",\"-200% 0\"]},transition:{duration,repeat:Infinity,ease:\"linear\"}})});}/**\n * --------------------------------------------------------------------\n * Controls\n * --------------------------------------------------------------------\n */addPropertyControls(Skeleton,{background:{type:ControlType.Color,title:\"Background\",defaultValue:\"#f0f0f0\"},highlight:{type:ControlType.Color,title:\"Highlight\",defaultValue:\"#e0e0e0\"},border:{type:ControlType.Border,title:\"Border\",defaultValue:{borderWidth:1,borderStyle:\"solid\",borderColor:\"rgba(0, 0, 0, 0.5)\"},optional:true},borderRadius:{type:ControlType.BorderRadius,defaultValue:\"6px\",title:\"Radius\"},duration:{type:ControlType.Number,title:\"Duration\",defaultValue:1.5,min:.5,max:5,step:.25}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Skeleton\",\"slots\":[],\"annotations\":{\"framerDisableUnlink\":\"\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Skeleton.map","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport * as React from \"react\";\nexport const containerStyles = {\n    width: \"100%\",\n    height: \"100%\",\n    display: \"flex\",\n    justifyContent: \"center\",\n    alignItems: \"center\"\n};\nconst nullIconStyle = {\n    minWidth: \"10px\",\n    minHeight: \"10px\",\n    maxWidth: \"20px\",\n    maxHeight: \"20px\",\n    width: \"60%\",\n    height: \"60%\"\n};\nconst emptyStateStyle = {\n    ...containerStyles,\n    borderRadius: 6,\n    background: \"rgba(149, 149, 149, 0.1)\",\n    border: \"1px dashed rgba(149, 149, 149, 0.15)\",\n    color: \"#a5a5a5\",\n    flexDirection: \"column\"\n};\nexport const NullState = /*#__PURE__*/ React.forwardRef((_, ref)=>{\n    return(/*#__PURE__*/ _jsx(\"div\", {\n        style: emptyStateStyle,\n        ref: ref\n    }));\n}) /*\n\n<svg\n                xmlns=\"http://www.w3.org/2000/svg\"\n                viewBox=\"0 0 30 30\"\n                style={nullIconStyle}\n            >\n                <path\n                    d=\"M 12.857 0 C 19.958 0 25.714 5.756 25.714 12.857 C 25.714 19.958 19.958 25.714 12.857 25.714 C 5.756 25.714 0 19.958 0 12.857 C 0 5.756 5.756 0 12.857 0 Z\"\n                    fill=\"#FFFFFF\"\n                ></path>\n                <path\n                    d=\"M 20.357 20.357 L 27.857 27.857\"\n                    fill=\"transparent\"\n                    strokeWidth=\"4.28\"\n                    stroke=\"#FFFFFF\"\n                    strokeLinecap=\"round\"\n                ></path>\n                <g transform=\"translate(9.643 6.429)\">\n                    <path\n                        d=\"M 3.214 12.857 L 3.214 12.857\"\n                        fill=\"transparent\"\n                        strokeWidth=\"3.75\"\n                        stroke=\"currentColor\"\n                        strokeLinecap=\"round\"\n                    ></path>\n                    <path\n                        d=\"M 0 3.214 C 0 1.004 1.843 0 3.214 0 C 4.586 0 6.429 0.603 6.429 3.214 C 6.429 5.826 3.214 5.913 3.214 7.232 C 3.214 8.552 3.214 8.571 3.214 8.571\"\n                        fill=\"transparent\"\n                        strokeWidth=\"3.22\"\n                        stroke=\"currentColor\"\n                        strokeLinecap=\"round\"\n                        strokeLinejoin=\"round\"\n                    ></path>\n                </g>\n            </svg>\n            */ ;\n\nexport const __FramerMetadata__ = {\"exports\":{\"containerStyles\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"NullState\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./nullstate.map","let Component;\nlet IconInner;\nvar Icon = (React) => {\n  if (!Component) {\n    Component = /* @__PURE__ */ new Map([\n      [\n        \"bold\",\n        /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(\"path\", { d: \"M222.14,105.85l-80-80a20,20,0,0,0-28.28,0l-80,80A19.86,19.86,0,0,0,28,120v96a12,12,0,0,0,12,12h64a12,12,0,0,0,12-12V164h24v52a12,12,0,0,0,12,12h64a12,12,0,0,0,12-12V120A19.86,19.86,0,0,0,222.14,105.85ZM204,204H164V152a12,12,0,0,0-12-12H104a12,12,0,0,0-12,12v52H52V121.65l76-76,76,76Z\" }))\n      ],\n      [\n        \"duotone\",\n        /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(\n          \"path\",\n          {\n            d: \"M216,120v96H152V152H104v64H40V120a8,8,0,0,1,2.34-5.66l80-80a8,8,0,0,1,11.32,0l80,80A8,8,0,0,1,216,120Z\",\n            opacity: \"0.2\"\n          }\n        ), /* @__PURE__ */ React.createElement(\"path\", { d: \"M219.31,108.68l-80-80a16,16,0,0,0-22.62,0l-80,80A15.87,15.87,0,0,0,32,120v96a8,8,0,0,0,8,8h64a8,8,0,0,0,8-8V160h32v56a8,8,0,0,0,8,8h64a8,8,0,0,0,8-8V120A15.87,15.87,0,0,0,219.31,108.68ZM208,208H160V152a8,8,0,0,0-8-8H104a8,8,0,0,0-8,8v56H48V120l80-80,80,80Z\" }))\n      ],\n      [\n        \"fill\",\n        /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(\"path\", { d: \"M224,120v96a8,8,0,0,1-8,8H160a8,8,0,0,1-8-8V164a4,4,0,0,0-4-4H108a4,4,0,0,0-4,4v52a8,8,0,0,1-8,8H40a8,8,0,0,1-8-8V120a16,16,0,0,1,4.69-11.31l80-80a16,16,0,0,1,22.62,0l80,80A16,16,0,0,1,224,120Z\" }))\n      ],\n      [\n        \"light\",\n        /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(\"path\", { d: \"M217.9,110.1l-80-80a14,14,0,0,0-19.8,0l-80,80A13.92,13.92,0,0,0,34,120v96a6,6,0,0,0,6,6h64a6,6,0,0,0,6-6V158h36v58a6,6,0,0,0,6,6h64a6,6,0,0,0,6-6V120A13.92,13.92,0,0,0,217.9,110.1ZM210,210H158V152a6,6,0,0,0-6-6H104a6,6,0,0,0-6,6v58H46V120a2,2,0,0,1,.58-1.42l80-80a2,2,0,0,1,2.84,0l80,80A2,2,0,0,1,210,120Z\" }))\n      ],\n      [\n        \"regular\",\n        /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(\"path\", { d: \"M219.31,108.68l-80-80a16,16,0,0,0-22.62,0l-80,80A15.87,15.87,0,0,0,32,120v96a8,8,0,0,0,8,8h64a8,8,0,0,0,8-8V160h32v56a8,8,0,0,0,8,8h64a8,8,0,0,0,8-8V120A15.87,15.87,0,0,0,219.31,108.68ZM208,208H160V152a8,8,0,0,0-8-8H104a8,8,0,0,0-8,8v56H48V120l80-80,80,80Z\" }))\n      ],\n      [\n        \"thin\",\n        /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(\"path\", { d: \"M216.49,111.51l-80-80a12,12,0,0,0-17,0l-80,80A12,12,0,0,0,36,120v96a4,4,0,0,0,4,4h64a4,4,0,0,0,4-4V156h40v60a4,4,0,0,0,4,4h64a4,4,0,0,0,4-4V120A12,12,0,0,0,216.49,111.51ZM212,212H156V152a4,4,0,0,0-4-4H104a4,4,0,0,0-4,4v60H44V120a4,4,0,0,1,1.17-2.83l80-80a4,4,0,0,1,5.66,0l80,80A4,4,0,0,1,212,120Z\" }))\n      ]\n    ]);\n    IconInner = React.forwardRef((props, ref) => /* @__PURE__ */ React.createElement(\"g\", { ref, ...props }, Component.get(props.weight)));\n  }\n  return IconInner;\n};\nconst __FramerMetadata__ = {\n  exports: {\n    default: {\n      type: \"reactComponent\",\n      slots: [],\n      annotations: { framerContractVersion: \"1\" }\n    },\n    __FramerMetadata__: { type: \"variable\" }\n  }\n};\nvar House_default = Icon;\nexport {\n  __FramerMetadata__,\n  House_default as default\n};\n","import{useMemo}from\"react\";import{ControlType}from\"framer\";/*\n ** ICON UTILS\n ** Pull as much re-usable logic into here as possible\n ** This will make it easier to replace in all icon components\n */ export const containerStyles={width:\"100%\",height:\"100%\",display:\"flex\",justifyContent:\"center\",alignItems:\"center\"};export const defaultEvents={onClick:{type:ControlType.EventHandler},onMouseDown:{type:ControlType.EventHandler},onMouseUp:{type:ControlType.EventHandler},onMouseEnter:{type:ControlType.EventHandler},onMouseLeave:{type:ControlType.EventHandler}};const findByArray=(arr,search)=>arr.find(a=>a.toLowerCase().includes(search));export function getIconSelection(iconKeys,selectByList,iconSearch=\"\",iconSelection,lowercaseIconKeyPairs){// gotta get the exact match first THEN find\n// have a set and try to access ?\nif(selectByList)return iconSelection;if(iconSearch==null||(iconSearch===null||iconSearch===void 0?void 0:iconSearch.length)===0)return null;const iconSearchTerm=iconSearch.toLowerCase().replace(/-|\\s/g,\"\");var _iconSearchTerm;// check for exact match, otherwise use .find\nconst searchResult=(_iconSearchTerm=lowercaseIconKeyPairs[iconSearchTerm])!==null&&_iconSearchTerm!==void 0?_iconSearchTerm:findByArray(iconKeys,iconSearchTerm);return searchResult;}export function useIconSelection(iconKeys,selectByList,iconSearch=\"\",iconSelection,lowercaseIconKeyPairs){// Clean search term\nconst iconSearchResult=useMemo(()=>{if(iconSearch==null||(iconSearch===null||iconSearch===void 0?void 0:iconSearch.length)===0)return null;const iconSearchTerm=iconSearch.toLowerCase().replace(/-|\\s/g,\"\");var _iconSearchTerm;// check for exact match, otherwise use .find\nconst searchResult=(_iconSearchTerm=lowercaseIconKeyPairs[iconSearchTerm])!==null&&_iconSearchTerm!==void 0?_iconSearchTerm:findByArray(iconKeys,iconSearchTerm);return searchResult;},[iconSelection,iconSearch]);const name=selectByList?iconSelection:iconSearchResult;return name;}\nexport const __FramerMetadata__ = {\"exports\":{\"getIconSelection\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"containerStyles\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIconSelection\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"defaultEvents\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./utils.map","import{jsx as _jsx}from\"react/jsx-runtime\";import*as React from\"react\";import{useState,useEffect,useRef}from\"react\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{motion}from\"framer-motion\";import{NullState}from\"https://framer.com/m/framer/icon-nullstate.js@0.7.0\";import HouseFactory from\"https://framer.com/m/phosphor-icons/House.js@0.0.57\";import{defaultEvents,useIconSelection}from\"https://framerusercontent.com/modules/Ma20hU0GGRxLxZphbywl/OSpwWF91FHPVFyQJjMHt/utils.js\";const iconKeys=[\"Acorn\",\"AddressBook\",\"AddressBookTabs\",\"AirTrafficControl\",\"Airplane\",\"AirplaneInFlight\",\"AirplaneLanding\",\"AirplaneTakeoff\",\"AirplaneTaxiing\",\"AirplaneTilt\",\"Airplay\",\"Alarm\",\"Alien\",\"AlignBottom\",\"AlignBottomSimple\",\"AlignCenterVertical\",\"AlignLeft\",\"AlignLeftSimple\",\"AlignRight\",\"AlignRightSimple\",\"AlignTop\",\"AlignTopSimple\",\"AmazonLogo\",\"Ambulance\",\"Anchor\",\"AnchorSimple\",\"AndroidLogo\",\"Angle\",\"AngularLogo\",\"Aperture\",\"AppStoreLogo\",\"AppWindow\",\"AppleLogo\",\"ApplePodcastsLogo\",\"ApproximateEquals\",\"Archive\",\"ArchiveBox\",\"ArchiveTray\",\"Armchair\",\"ArrowArcLeft\",\"ArrowArcRight\",\"ArrowBendDownLeft\",\"ArrowBendDownRight\",\"ArrowBendLeftDown\",\"ArrowBendLeftUp\",\"ArrowBendRightDown\",\"ArrowBendRightUp\",\"ArrowBendUpLeft\",\"ArrowBendUpRight\",\"ArrowCircleDown\",\"ArrowCircleDownLeft\",\"ArrowCircleDownRight\",\"ArrowCircleLeft\",\"ArrowCircleRight\",\"ArrowCircleUp\",\"ArrowCircleUpLeft\",\"ArrowCircleUpRight\",\"ArrowClockwise\",\"ArrowDown\",\"ArrowDownLeft\",\"ArrowDownRight\",\"ArrowElbowDownLeft\",\"ArrowElbowDownRight\",\"ArrowElbowLeft\",\"ArrowElbowLeftDown\",\"ArrowElbowLeftUp\",\"ArrowElbowRight\",\"ArrowElbowRightDown\",\"ArrowElbowRightUp\",\"ArrowElbowUpLeft\",\"ArrowElbowUpRight\",\"ArrowFatDown\",\"ArrowFatLeft\",\"ArrowFatLineDown\",\"ArrowFatLineLeft\",\"ArrowFatLineRight\",\"ArrowFatLineUp\",\"ArrowFatLinesDown\",\"ArrowFatLinesLeft\",\"ArrowFatLinesRight\",\"ArrowFatLinesUp\",\"ArrowFatRight\",\"ArrowFatUp\",\"ArrowLeft\",\"ArrowLineDown\",\"ArrowLineDownLeft\",\"ArrowLineDownRight\",\"ArrowLineLeft\",\"ArrowLineRight\",\"ArrowLineUp\",\"ArrowLineUpLeft\",\"ArrowLineUpRight\",\"ArrowRight\",\"ArrowSquareDown\",\"ArrowSquareDownLeft\",\"ArrowSquareDownRight\",\"ArrowSquareIn\",\"ArrowSquareLeft\",\"ArrowSquareOut\",\"ArrowSquareRight\",\"ArrowSquareUp\",\"ArrowSquareUpLeft\",\"ArrowSquareUpRight\",\"ArrowUDownLeft\",\"ArrowUDownRight\",\"ArrowULeftDown\",\"ArrowULeftUp\",\"ArrowURightDown\",\"ArrowURightUp\",\"ArrowUUpLeft\",\"ArrowUUpRight\",\"ArrowUp\",\"ArrowUpLeft\",\"ArrowUpRight\",\"ArrowsClockwise\",\"ArrowsDownUp\",\"ArrowsHorizontal\",\"ArrowsIn\",\"ArrowsInCardinal\",\"ArrowsInLineVertical\",\"ArrowsInSimple\",\"ArrowsLeftRight\",\"ArrowsMerge\",\"ArrowsOut\",\"ArrowsOutCardinal\",\"ArrowsOutSimple\",\"ArrowsSplit\",\"ArrowsVertical\",\"Article\",\"ArticleMedium\",\"ArticleNyTimes\",\"Asclepius\",\"Asterisk\",\"AsteriskSimple\",\"At\",\"Atom\",\"Avocado\",\"Axe\",\"Baby\",\"BabyCarriage\",\"Backpack\",\"Backspace\",\"Bag\",\"BagSimple\",\"Balloon\",\"Bandaids\",\"Bank\",\"Barbell\",\"Barcode\",\"Barn\",\"Barricade\",\"Baseball\",\"BaseballCap\",\"BaseballHelmet\",\"Basket\",\"Basketball\",\"Bathtub\",\"BatteryCharging\",\"BatteryEmpty\",\"BatteryFull\",\"BatteryHigh\",\"BatteryLow\",\"BatteryMedium\",\"BatteryPlus\",\"BatteryPlusVertical\",\"BatteryVerticalEmpty\",\"BatteryVerticalFull\",\"BatteryVerticalHigh\",\"BatteryVerticalLow\",\"BatteryWarning\",\"BeachBall\",\"Beanie\",\"Bed\",\"BeerBottle\",\"BeerStein\",\"BehanceLogo\",\"Bell\",\"BellRinging\",\"BellSimple\",\"BellSimpleRinging\",\"BellSimpleSlash\",\"BellSimpleZ\",\"BellSlash\",\"BellZ\",\"Belt\",\"BezierCurve\",\"Bicycle\",\"Binary\",\"Binoculars\",\"Biohazard\",\"Bird\",\"Blueprint\",\"Bluetooth\",\"BluetoothConnected\",\"BluetoothSlash\",\"BluetoothX\",\"Boat\",\"Bomb\",\"Bone\",\"Book\",\"BookBookmark\",\"BookOpen\",\"BookOpenText\",\"BookOpenUser\",\"BookUser\",\"Bookmark\",\"BookmarkSimple\",\"Bookmarks\",\"BookmarksSimple\",\"Books\",\"Boot\",\"Boules\",\"BoundingBox\",\"BowlFood\",\"BowlSteam\",\"BowlingBall\",\"BoxArrowDown\",\"BoxArrowUp\",\"BoxingGlove\",\"BracketsAngle\",\"BracketsCurly\",\"BracketsRound\",\"BracketsSquare\",\"Brain\",\"Brandy\",\"Bread\",\"Bridge\",\"Briefcase\",\"BriefcaseMetal\",\"Broadcast\",\"Broom\",\"Browser\",\"Browsers\",\"Bug\",\"BugBeetle\",\"BugDroid\",\"Building\",\"BuildingApartment\",\"BuildingOffice\",\"Buildings\",\"Bulldozer\",\"Bus\",\"Butterfly\",\"CableCar\",\"Cactus\",\"Cake\",\"Calculator\",\"Calendar\",\"CalendarBlank\",\"CalendarCheck\",\"CalendarDot\",\"CalendarDots\",\"CalendarHeart\",\"CalendarMinus\",\"CalendarPlus\",\"CalendarSlash\",\"CalendarStar\",\"CalendarX\",\"CallBell\",\"Camera\",\"CameraPlus\",\"CameraRotate\",\"CameraSlash\",\"Campfire\",\"Car\",\"CarBattery\",\"CarProfile\",\"CarSimple\",\"Cardholder\",\"Cards\",\"CardsThree\",\"CaretCircleDoubleUp\",\"CaretCircleDown\",\"CaretCircleLeft\",\"CaretCircleRight\",\"CaretCircleUp\",\"CaretCircleUpDown\",\"CaretDoubleDown\",\"CaretDoubleLeft\",\"CaretDoubleRight\",\"CaretDoubleUp\",\"CaretDown\",\"CaretLeft\",\"CaretLineDown\",\"CaretLineLeft\",\"CaretLineRight\",\"CaretLineUp\",\"CaretRight\",\"CaretUp\",\"CaretUpDown\",\"Carrot\",\"CashRegister\",\"CassetteTape\",\"CastleTurret\",\"Cat\",\"CellSignalFull\",\"CellSignalHigh\",\"CellSignalLow\",\"CellSignalMedium\",\"CellSignalNone\",\"CellSignalSlash\",\"CellSignalX\",\"CellTower\",\"Certificate\",\"Chair\",\"Chalkboard\",\"ChalkboardSimple\",\"ChalkboardTeacher\",\"Champagne\",\"ChargingStation\",\"ChartBar\",\"ChartBarHorizontal\",\"ChartDonut\",\"ChartLine\",\"ChartLineDown\",\"ChartLineUp\",\"ChartPie\",\"ChartPieSlice\",\"ChartPolar\",\"ChartScatter\",\"Chat\",\"ChatCentered\",\"ChatCenteredDots\",\"ChatCenteredSlash\",\"ChatCenteredText\",\"ChatCircle\",\"ChatCircleDots\",\"ChatCircleSlash\",\"ChatCircleText\",\"ChatDots\",\"ChatSlash\",\"ChatTeardrop\",\"ChatTeardropDots\",\"ChatTeardropSlash\",\"ChatTeardropText\",\"ChatText\",\"Chats\",\"ChatsCircle\",\"ChatsTeardrop\",\"Check\",\"CheckCircle\",\"CheckFat\",\"CheckSquare\",\"CheckSquareOffset\",\"Checkerboard\",\"Checks\",\"Cheers\",\"Cheese\",\"ChefHat\",\"Cherries\",\"Church\",\"Cigarette\",\"CigaretteSlash\",\"Circle\",\"CircleDashed\",\"CircleHalf\",\"CircleHalfTilt\",\"CircleNotch\",\"CirclesFour\",\"CirclesThree\",\"CirclesThreePlus\",\"Circuitry\",\"City\",\"Clipboard\",\"ClipboardText\",\"Clock\",\"ClockAfternoon\",\"ClockClockwise\",\"ClockCountdown\",\"ClockUser\",\"ClosedCaptioning\",\"Cloud\",\"CloudArrowDown\",\"CloudArrowUp\",\"CloudCheck\",\"CloudFog\",\"CloudLightning\",\"CloudMoon\",\"CloudRain\",\"CloudSlash\",\"CloudSnow\",\"CloudSun\",\"CloudWarning\",\"CloudX\",\"Clover\",\"Club\",\"CoatHanger\",\"CodaLogo\",\"Code\",\"CodeBlock\",\"CodeSimple\",\"CodepenLogo\",\"CodesandboxLogo\",\"Coffee\",\"CoffeeBean\",\"Coin\",\"CoinVertical\",\"Coins\",\"Columns\",\"ColumnsPlusLeft\",\"ColumnsPlusRight\",\"Command\",\"Compass\",\"CompassRose\",\"CompassTool\",\"ComputerTower\",\"Confetti\",\"ContactlessPayment\",\"Control\",\"Cookie\",\"CookingPot\",\"Copy\",\"CopySimple\",\"Copyleft\",\"Copyright\",\"CornersIn\",\"CornersOut\",\"Couch\",\"CourtBasketball\",\"Cow\",\"CowboyHat\",\"Cpu\",\"Crane\",\"CraneTower\",\"CreditCard\",\"Cricket\",\"Crop\",\"Cross\",\"Crosshair\",\"CrosshairSimple\",\"Crown\",\"CrownCross\",\"CrownSimple\",\"Cube\",\"CubeFocus\",\"CubeTransparent\",\"CurrencyBtc\",\"CurrencyCircleDollar\",\"CurrencyCny\",\"CurrencyDollar\",\"CurrencyDollarSimple\",\"CurrencyEth\",\"CurrencyEur\",\"CurrencyGbp\",\"CurrencyInr\",\"CurrencyJpy\",\"CurrencyKrw\",\"CurrencyKzt\",\"CurrencyNgn\",\"CurrencyRub\",\"Cursor\",\"CursorClick\",\"CursorText\",\"Cylinder\",\"Database\",\"Desk\",\"Desktop\",\"DesktopTower\",\"Detective\",\"DevToLogo\",\"DeviceMobile\",\"DeviceMobileCamera\",\"DeviceMobileSlash\",\"DeviceMobileSpeaker\",\"DeviceRotate\",\"DeviceTablet\",\"DeviceTabletCamera\",\"DeviceTabletSpeaker\",\"Devices\",\"Diamond\",\"DiamondsFour\",\"DiceFive\",\"DiceFour\",\"DiceOne\",\"DiceSix\",\"DiceThree\",\"DiceTwo\",\"Disc\",\"DiscoBall\",\"DiscordLogo\",\"Divide\",\"Dna\",\"Dog\",\"Door\",\"DoorOpen\",\"Dot\",\"DotOutline\",\"DotsNine\",\"DotsSix\",\"DotsSixVertical\",\"DotsThree\",\"DotsThreeCircle\",\"DotsThreeOutline\",\"DotsThreeVertical\",\"Download\",\"DownloadSimple\",\"Dress\",\"Dresser\",\"DribbbleLogo\",\"Drone\",\"Drop\",\"DropHalf\",\"DropHalfBottom\",\"DropSimple\",\"DropSlash\",\"DropboxLogo\",\"Ear\",\"EarSlash\",\"Egg\",\"EggCrack\",\"Eject\",\"EjectSimple\",\"Elevator\",\"Empty\",\"Engine\",\"Envelope\",\"EnvelopeOpen\",\"EnvelopeSimple\",\"EnvelopeSimpleOpen\",\"Equalizer\",\"Equals\",\"Eraser\",\"EscalatorDown\",\"EscalatorUp\",\"Exam\",\"ExclamationMark\",\"Exclude\",\"ExcludeSquare\",\"Export\",\"Eye\",\"EyeClosed\",\"EyeSlash\",\"Eyedropper\",\"EyedropperSample\",\"Eyeglasses\",\"Eyes\",\"FaceMask\",\"FacebookLogo\",\"Factory\",\"Faders\",\"FadersHorizontal\",\"FalloutShelter\",\"Fan\",\"Farm\",\"FastForward\",\"FastForwardCircle\",\"Feather\",\"FediverseLogo\",\"FigmaLogo\",\"File\",\"FileArchive\",\"FileArrowDown\",\"FileArrowUp\",\"FileAudio\",\"FileC\",\"FileCloud\",\"FileCode\",\"FileCpp\",\"FileCss\",\"FileCsv\",\"FileDashed\",\"FileDoc\",\"FileHtml\",\"FileImage\",\"FileIni\",\"FileJpg\",\"FileJs\",\"FileJsx\",\"FileLock\",\"FileMagnifyingGlass\",\"FileMd\",\"FileMinus\",\"FilePdf\",\"FilePlus\",\"FilePng\",\"FilePpt\",\"FilePy\",\"FileRs\",\"FileSql\",\"FileSvg\",\"FileText\",\"FileTs\",\"FileTsx\",\"FileTxt\",\"FileVideo\",\"FileVue\",\"FileX\",\"FileXls\",\"FileZip\",\"Files\",\"FilmReel\",\"FilmScript\",\"FilmSlate\",\"FilmStrip\",\"Fingerprint\",\"FingerprintSimple\",\"FinnTheHuman\",\"Fire\",\"FireExtinguisher\",\"FireSimple\",\"FireTruck\",\"FirstAid\",\"FirstAidKit\",\"Fish\",\"FishSimple\",\"Flag\",\"FlagBanner\",\"FlagBannerFold\",\"FlagCheckered\",\"FlagPennant\",\"Flame\",\"Flashlight\",\"Flask\",\"FlipHorizontal\",\"FlipVertical\",\"FloppyDisk\",\"FloppyDiskBack\",\"FlowArrow\",\"Flower\",\"FlowerLotus\",\"FlowerTulip\",\"FlyingSaucer\",\"Folder\",\"FolderDashed\",\"FolderLock\",\"FolderMinus\",\"FolderNotch\",\"FolderNotchMinus\",\"FolderNotchOpen\",\"FolderNotchPlus\",\"FolderOpen\",\"FolderPlus\",\"FolderSimple\",\"FolderSimpleDashed\",\"FolderSimpleLock\",\"FolderSimpleMinus\",\"FolderSimplePlus\",\"FolderSimpleStar\",\"FolderSimpleUser\",\"FolderStar\",\"FolderUser\",\"Folders\",\"Football\",\"FootballHelmet\",\"Footprints\",\"ForkKnife\",\"FourK\",\"FrameCorners\",\"FramerLogo\",\"Function\",\"Funnel\",\"FunnelSimple\",\"FunnelSimpleX\",\"FunnelX\",\"GameController\",\"Garage\",\"GasCan\",\"GasPump\",\"Gauge\",\"Gavel\",\"Gear\",\"GearFine\",\"GearSix\",\"GenderFemale\",\"GenderIntersex\",\"GenderMale\",\"GenderNeuter\",\"GenderNonbinary\",\"GenderTransgender\",\"Ghost\",\"Gif\",\"Gift\",\"GitBranch\",\"GitCommit\",\"GitDiff\",\"GitFork\",\"GitMerge\",\"GitPullRequest\",\"GithubLogo\",\"GitlabLogo\",\"GitlabLogoSimple\",\"Globe\",\"GlobeHemisphereEast\",\"GlobeHemisphereWest\",\"GlobeSimple\",\"GlobeSimpleX\",\"GlobeStand\",\"GlobeX\",\"Goggles\",\"Golf\",\"GoodreadsLogo\",\"GoogleCardboardLogo\",\"GoogleChromeLogo\",\"GoogleDriveLogo\",\"GoogleLogo\",\"GooglePhotosLogo\",\"GooglePlayLogo\",\"GooglePodcastsLogo\",\"Gps\",\"GpsFix\",\"GpsSlash\",\"Gradient\",\"GraduationCap\",\"Grains\",\"GrainsSlash\",\"Graph\",\"GraphicsCard\",\"GreaterThan\",\"GreaterThanOrEqual\",\"GridFour\",\"GridNine\",\"Guitar\",\"HairDryer\",\"Hamburger\",\"Hammer\",\"Hand\",\"HandArrowDown\",\"HandArrowUp\",\"HandCoins\",\"HandDeposit\",\"HandEye\",\"HandFist\",\"HandGrabbing\",\"HandHeart\",\"HandPalm\",\"HandPeace\",\"HandPointing\",\"HandSoap\",\"HandSwipeLeft\",\"HandSwipeRight\",\"HandTap\",\"HandWaving\",\"HandWithdraw\",\"Handbag\",\"HandbagSimple\",\"HandsClapping\",\"HandsPraying\",\"Handshake\",\"HardDrive\",\"HardDrives\",\"HardHat\",\"Hash\",\"HashStraight\",\"HeadCircuit\",\"Headlights\",\"Headphones\",\"Headset\",\"Heart\",\"HeartBreak\",\"HeartHalf\",\"HeartStraight\",\"HeartStraightBreak\",\"Heartbeat\",\"Hexagon\",\"HighDefinition\",\"HighHeel\",\"Highlighter\",\"HighlighterCircle\",\"Hockey\",\"Hoodie\",\"Horse\",\"Hospital\",\"Hourglass\",\"HourglassHigh\",\"HourglassLow\",\"HourglassMedium\",\"HourglassSimple\",\"HourglassSimpleHigh\",\"HourglassSimpleLow\",\"House\",\"HouseLine\",\"HouseSimple\",\"Hurricane\",\"IceCream\",\"IdentificationBadge\",\"IdentificationCard\",\"Image\",\"ImageBroken\",\"ImageSquare\",\"Images\",\"ImagesSquare\",\"Infinity\",\"Info\",\"InstagramLogo\",\"Intersect\",\"IntersectSquare\",\"IntersectThree\",\"Intersection\",\"Invoice\",\"Island\",\"Jar\",\"JarLabel\",\"Jeep\",\"Joystick\",\"Kanban\",\"Key\",\"KeyReturn\",\"Keyboard\",\"Keyhole\",\"Knife\",\"Ladder\",\"LadderSimple\",\"Lamp\",\"LampPendant\",\"Laptop\",\"Lasso\",\"LastfmLogo\",\"Layout\",\"Leaf\",\"Lectern\",\"Lego\",\"LegoSmiley\",\"LessThan\",\"LessThanOrEqual\",\"LetterCircleH\",\"LetterCircleP\",\"LetterCircleV\",\"Lifebuoy\",\"Lightbulb\",\"LightbulbFilament\",\"Lighthouse\",\"Lightning\",\"LightningA\",\"LightningSlash\",\"LineSegment\",\"LineSegments\",\"LineVertical\",\"Link\",\"LinkBreak\",\"LinkSimple\",\"LinkSimpleBreak\",\"LinkSimpleHorizontal\",\"LinkedinLogo\",\"LinktreeLogo\",\"LinuxLogo\",\"List\",\"ListBullets\",\"ListChecks\",\"ListDashes\",\"ListHeart\",\"ListMagnifyingGlass\",\"ListNumbers\",\"ListPlus\",\"ListStar\",\"Lock\",\"LockKey\",\"LockKeyOpen\",\"LockLaminated\",\"LockLaminatedOpen\",\"LockOpen\",\"LockSimple\",\"LockSimpleOpen\",\"Lockers\",\"Log\",\"MagicWand\",\"Magnet\",\"MagnetStraight\",\"MagnifyingGlass\",\"MagnifyingGlassMinus\",\"MagnifyingGlassPlus\",\"Mailbox\",\"MapPin\",\"MapPinArea\",\"MapPinLine\",\"MapPinPlus\",\"MapPinSimple\",\"MapPinSimpleArea\",\"MapPinSimpleLine\",\"MapTrifold\",\"MarkdownLogo\",\"MarkerCircle\",\"Martini\",\"MaskHappy\",\"MaskSad\",\"MastodonLogo\",\"MathOperations\",\"MatrixLogo\",\"Medal\",\"MedalMilitary\",\"MediumLogo\",\"Megaphone\",\"MegaphoneSimple\",\"MemberOf\",\"Memory\",\"MessengerLogo\",\"MetaLogo\",\"Meteor\",\"Metronome\",\"Microphone\",\"MicrophoneSlash\",\"MicrophoneStage\",\"Microscope\",\"MicrosoftExcelLogo\",\"MicrosoftOutlookLogo\",\"MicrosoftTeamsLogo\",\"MicrosoftWordLogo\",\"Minus\",\"MinusCircle\",\"MinusSquare\",\"Money\",\"MoneyWavy\",\"Monitor\",\"MonitorArrowUp\",\"MonitorPlay\",\"Moon\",\"MoonStars\",\"Moped\",\"MopedFront\",\"Mosque\",\"Motorcycle\",\"Mountains\",\"Mouse\",\"MouseLeftClick\",\"MouseMiddleClick\",\"MouseRightClick\",\"MouseScroll\",\"MouseSimple\",\"MusicNote\",\"MusicNoteSimple\",\"MusicNotes\",\"MusicNotesMinus\",\"MusicNotesPlus\",\"MusicNotesSimple\",\"NavigationArrow\",\"Needle\",\"Network\",\"NetworkSlash\",\"NetworkX\",\"Newspaper\",\"NewspaperClipping\",\"NotEquals\",\"NotMemberOf\",\"NotSubsetOf\",\"NotSupersetOf\",\"Notches\",\"Note\",\"NoteBlank\",\"NotePencil\",\"Notebook\",\"Notepad\",\"Notification\",\"NotionLogo\",\"NuclearPlant\",\"NumberCircleEight\",\"NumberCircleFive\",\"NumberCircleFour\",\"NumberCircleNine\",\"NumberCircleOne\",\"NumberCircleSeven\",\"NumberCircleSix\",\"NumberCircleThree\",\"NumberCircleTwo\",\"NumberCircleZero\",\"NumberEight\",\"NumberFive\",\"NumberFour\",\"NumberNine\",\"NumberOne\",\"NumberSeven\",\"NumberSix\",\"NumberSquareEight\",\"NumberSquareFive\",\"NumberSquareFour\",\"NumberSquareNine\",\"NumberSquareOne\",\"NumberSquareSeven\",\"NumberSquareSix\",\"NumberSquareThree\",\"NumberSquareTwo\",\"NumberSquareZero\",\"NumberThree\",\"NumberTwo\",\"NumberZero\",\"Numpad\",\"Nut\",\"NyTimesLogo\",\"Octagon\",\"OfficeChair\",\"Onigiri\",\"OpenAiLogo\",\"Option\",\"Orange\",\"OrangeSlice\",\"Oven\",\"Package\",\"PaintBrush\",\"PaintBrushBroad\",\"PaintBrushHousehold\",\"PaintBucket\",\"PaintRoller\",\"Palette\",\"Panorama\",\"Pants\",\"PaperPlane\",\"PaperPlaneRight\",\"PaperPlaneTilt\",\"Paperclip\",\"PaperclipHorizontal\",\"Parachute\",\"Paragraph\",\"Parallelogram\",\"Park\",\"Password\",\"Path\",\"PatreonLogo\",\"Pause\",\"PauseCircle\",\"PawPrint\",\"PaypalLogo\",\"Peace\",\"Pen\",\"PenNib\",\"PenNibStraight\",\"Pencil\",\"PencilCircle\",\"PencilLine\",\"PencilRuler\",\"PencilSimple\",\"PencilSimpleLine\",\"PencilSimpleSlash\",\"PencilSlash\",\"Pentagon\",\"Pentagram\",\"Pepper\",\"Percent\",\"Person\",\"PersonArmsSpread\",\"PersonSimple\",\"PersonSimpleBike\",\"PersonSimpleCircle\",\"PersonSimpleHike\",\"PersonSimpleRun\",\"PersonSimpleSki\",\"PersonSimpleSwim\",\"PersonSimpleTaiChi\",\"PersonSimpleThrow\",\"PersonSimpleWalk\",\"Perspective\",\"Phone\",\"PhoneCall\",\"PhoneDisconnect\",\"PhoneIncoming\",\"PhoneList\",\"PhoneOutgoing\",\"PhonePause\",\"PhonePlus\",\"PhoneSlash\",\"PhoneTransfer\",\"PhoneX\",\"PhosphorLogo\",\"Pi\",\"PianoKeys\",\"PicnicTable\",\"PictureInPicture\",\"PiggyBank\",\"Pill\",\"PingPong\",\"PintGlass\",\"PinterestLogo\",\"Pinwheel\",\"Pipe\",\"PipeWrench\",\"PixLogo\",\"Pizza\",\"Placeholder\",\"Planet\",\"Plant\",\"Play\",\"PlayCircle\",\"PlayPause\",\"Playlist\",\"Plug\",\"PlugCharging\",\"Plugs\",\"PlugsConnected\",\"Plus\",\"PlusCircle\",\"PlusMinus\",\"PlusSquare\",\"PokerChip\",\"PoliceCar\",\"Polygon\",\"Popcorn\",\"Popsicle\",\"PottedPlant\",\"Power\",\"Prescription\",\"Presentation\",\"PresentationChart\",\"Printer\",\"Prohibit\",\"ProhibitInset\",\"ProjectorScreen\",\"ProjectorScreenChart\",\"Pulse\",\"PushPin\",\"PushPinSimple\",\"PushPinSimpleSlash\",\"PushPinSlash\",\"PuzzlePiece\",\"QrCode\",\"Question\",\"QuestionMark\",\"Queue\",\"Quotes\",\"Rabbit\",\"Racquet\",\"Radical\",\"Radio\",\"RadioButton\",\"Radioactive\",\"Rainbow\",\"RainbowCloud\",\"Ranking\",\"ReadCvLogo\",\"Receipt\",\"ReceiptX\",\"Record\",\"Rectangle\",\"RectangleDashed\",\"Recycle\",\"RedditLogo\",\"Repeat\",\"RepeatOnce\",\"ReplitLogo\",\"Resize\",\"Rewind\",\"RewindCircle\",\"RoadHorizon\",\"Robot\",\"Rocket\",\"RocketLaunch\",\"Rows\",\"RowsPlusBottom\",\"RowsPlusTop\",\"Rss\",\"RssSimple\",\"Rug\",\"Ruler\",\"Sailboat\",\"Scales\",\"Scan\",\"ScanSmiley\",\"Scissors\",\"Scooter\",\"Screencast\",\"Screwdriver\",\"Scribble\",\"ScribbleLoop\",\"Scroll\",\"Seal\",\"SealCheck\",\"SealPercent\",\"SealQuestion\",\"SealWarning\",\"Seat\",\"Seatbelt\",\"SecurityCamera\",\"Selection\",\"SelectionAll\",\"SelectionBackground\",\"SelectionForeground\",\"SelectionInverse\",\"SelectionPlus\",\"SelectionSlash\",\"Shapes\",\"Share\",\"ShareFat\",\"ShareNetwork\",\"Shield\",\"ShieldCheck\",\"ShieldCheckered\",\"ShieldChevron\",\"ShieldPlus\",\"ShieldSlash\",\"ShieldStar\",\"ShieldWarning\",\"ShippingContainer\",\"ShirtFolded\",\"ShootingStar\",\"ShoppingBag\",\"ShoppingBagOpen\",\"ShoppingCart\",\"ShoppingCartSimple\",\"Shovel\",\"Shower\",\"Shrimp\",\"Shuffle\",\"ShuffleAngular\",\"ShuffleSimple\",\"Sidebar\",\"SidebarSimple\",\"Sigma\",\"SignIn\",\"SignOut\",\"Signature\",\"Signpost\",\"SimCard\",\"Siren\",\"SketchLogo\",\"SkipBack\",\"SkipBackCircle\",\"SkipForward\",\"SkipForwardCircle\",\"Skull\",\"SkypeLogo\",\"SlackLogo\",\"Sliders\",\"SlidersHorizontal\",\"Slideshow\",\"Smiley\",\"SmileyAngry\",\"SmileyBlank\",\"SmileyMeh\",\"SmileyMelting\",\"SmileyNervous\",\"SmileySad\",\"SmileySticker\",\"SmileyWink\",\"SmileyXEyes\",\"SnapchatLogo\",\"Sneaker\",\"SneakerMove\",\"Snowflake\",\"SoccerBall\",\"Sock\",\"SolarPanel\",\"SolarRoof\",\"SortAscending\",\"SortDescending\",\"SoundcloudLogo\",\"Spade\",\"Sparkle\",\"SpeakerHifi\",\"SpeakerHigh\",\"SpeakerLow\",\"SpeakerNone\",\"SpeakerSimpleHigh\",\"SpeakerSimpleLow\",\"SpeakerSimpleNone\",\"SpeakerSimpleSlash\",\"SpeakerSimpleX\",\"SpeakerSlash\",\"SpeakerX\",\"Speedometer\",\"Sphere\",\"Spinner\",\"SpinnerBall\",\"SpinnerGap\",\"Spiral\",\"SplitHorizontal\",\"SplitVertical\",\"SpotifyLogo\",\"SprayBottle\",\"Square\",\"SquareHalf\",\"SquareHalfBottom\",\"SquareLogo\",\"SquareSplitVertical\",\"SquaresFour\",\"Stack\",\"StackMinus\",\"StackOverflowLogo\",\"StackPlus\",\"StackSimple\",\"Stairs\",\"Stamp\",\"StandardDefinition\",\"Star\",\"StarAndCrescent\",\"StarFour\",\"StarHalf\",\"StarOfDavid\",\"SteamLogo\",\"SteeringWheel\",\"Steps\",\"Stethoscope\",\"Sticker\",\"Stool\",\"Stop\",\"StopCircle\",\"Storefront\",\"Strategy\",\"StripeLogo\",\"Student\",\"SubsetOf\",\"SubsetProperOf\",\"Subtitles\",\"SubtitlesSlash\",\"Subtract\",\"SubtractSquare\",\"Subway\",\"Suitcase\",\"SuitcaseRolling\",\"SuitcaseSimple\",\"Sun\",\"SunDim\",\"SunHorizon\",\"Sunglasses\",\"SupersetOf\",\"SupersetProperOf\",\"Swap\",\"Swatches\",\"SwimmingPool\",\"Sword\",\"Synagogue\",\"Syringe\",\"TShirt\",\"Table\",\"Tabs\",\"Tag\",\"TagChevron\",\"TagSimple\",\"Target\",\"Taxi\",\"TeaBag\",\"TelegramLogo\",\"Television\",\"TelevisionSimple\",\"TennisBall\",\"Tent\",\"Terminal\",\"TerminalWindow\",\"TestTube\",\"TextAUnderline\",\"TextAa\",\"TextAlignCenter\",\"TextAlignJustify\",\"TextAlignLeft\",\"TextAlignRight\",\"TextB\",\"TextColumns\",\"TextH\",\"TextHFive\",\"TextHFour\",\"TextHOne\",\"TextHSix\",\"TextHThree\",\"TextHTwo\",\"TextIndent\",\"TextItalic\",\"TextOutdent\",\"TextStrikethrough\",\"TextSubscript\",\"TextSuperscript\",\"TextT\",\"TextTSlash\",\"TextUnderline\",\"Textbox\",\"Thermometer\",\"ThermometerCold\",\"ThermometerHot\",\"ThermometerSimple\",\"ThreadsLogo\",\"ThreeD\",\"ThumbsDown\",\"ThumbsUp\",\"Ticket\",\"TidalLogo\",\"TiktokLogo\",\"Tilde\",\"Timer\",\"TipJar\",\"Tipi\",\"Tire\",\"ToggleLeft\",\"ToggleRight\",\"Toilet\",\"ToiletPaper\",\"Toolbox\",\"Tooth\",\"Tornado\",\"Tote\",\"ToteSimple\",\"Towel\",\"Tractor\",\"Trademark\",\"TrademarkRegistered\",\"TrafficCone\",\"TrafficSign\",\"TrafficSignal\",\"Train\",\"TrainRegional\",\"TrainSimple\",\"Tram\",\"Translate\",\"Trash\",\"TrashSimple\",\"Tray\",\"TrayArrowDown\",\"TrayArrowUp\",\"TreasureChest\",\"Tree\",\"TreeEvergreen\",\"TreePalm\",\"TreeStructure\",\"TreeView\",\"TrendDown\",\"TrendUp\",\"Triangle\",\"TriangleDashed\",\"Trolley\",\"TrolleySuitcase\",\"Trophy\",\"Truck\",\"TruckTrailer\",\"TumblrLogo\",\"TwitchLogo\",\"TwitterLogo\",\"Umbrella\",\"UmbrellaSimple\",\"Union\",\"Unite\",\"UniteSquare\",\"Upload\",\"UploadSimple\",\"Usb\",\"User\",\"UserCheck\",\"UserCircle\",\"UserCircleCheck\",\"UserCircleDashed\",\"UserCircleGear\",\"UserCircleMinus\",\"UserCirclePlus\",\"UserFocus\",\"UserGear\",\"UserList\",\"UserMinus\",\"UserPlus\",\"UserRectangle\",\"UserSound\",\"UserSquare\",\"UserSwitch\",\"Users\",\"UsersFour\",\"UsersThree\",\"Van\",\"Vault\",\"VectorThree\",\"VectorTwo\",\"Vibrate\",\"Video\",\"VideoCamera\",\"VideoCameraSlash\",\"VideoConference\",\"Vignette\",\"VinylRecord\",\"VirtualReality\",\"Virus\",\"Visor\",\"Voicemail\",\"Volleyball\",\"Wall\",\"Wallet\",\"Warehouse\",\"Warning\",\"WarningCircle\",\"WarningDiamond\",\"WarningOctagon\",\"WashingMachine\",\"Watch\",\"WaveSawtooth\",\"WaveSine\",\"WaveSquare\",\"WaveTriangle\",\"Waveform\",\"WaveformSlash\",\"Waves\",\"Webcam\",\"WebcamSlash\",\"WebhooksLogo\",\"WechatLogo\",\"WhatsappLogo\",\"Wheelchair\",\"WheelchairMotion\",\"WifiHigh\",\"WifiLow\",\"WifiMedium\",\"WifiNone\",\"WifiSlash\",\"WifiX\",\"Wind\",\"Windmill\",\"WindowsLogo\",\"Wine\",\"Wrench\",\"X\",\"XCircle\",\"XLogo\",\"XSquare\",\"Yarn\",\"YinYang\",\"YoutubeLogo\"];const moduleBaseUrl=\"https://framer.com/m/phosphor-icons/\";const weightOptions=[\"thin\",\"light\",\"regular\",\"bold\",\"fill\",\"duotone\"];const lowercaseIconKeyPairs=iconKeys.reduce((res,key)=>{res[key.toLowerCase()]=key;return res;},{});/**\n * PHOSPHOR\n *\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n *\n * @framerIntrinsicWidth 24\n * @framerIntrinsicHeight 24\n */export function Icon(props){const{color,selectByList,iconSearch,iconSelection,onClick,onMouseDown,onMouseUp,onMouseEnter,onMouseLeave,weight,mirrored}=props;const isMounted=useRef(false);const iconKey=useIconSelection(iconKeys,selectByList,iconSearch,iconSelection,lowercaseIconKeyPairs);const[SelectedIcon,setSelectedIcon]=useState(iconKey===\"Home\"?HouseFactory(React):null);async function importModule(){// Get the selected module\ntry{const version=\"0.0.57\";const iconModuleUrl=`${moduleBaseUrl}${iconKey}.js@${version}`;const module=await import(/* webpackIgnore: true */iconModuleUrl);if(isMounted.current)setSelectedIcon(module.default(React));}catch(err){if(isMounted.current)setSelectedIcon(null);}}useEffect(()=>{isMounted.current=true;importModule();return()=>{isMounted.current=false;};},[iconKey]);const isOnCanvas=RenderTarget.current()===RenderTarget.canvas;const emptyState=isOnCanvas?/*#__PURE__*/_jsx(NullState,{}):null;return /*#__PURE__*/_jsx(motion.div,{style:{display:\"contents\"},onClick,onMouseEnter,onMouseLeave,onMouseDown,onMouseUp,children:SelectedIcon?/*#__PURE__*/_jsx(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",viewBox:\"0 0 256 256\",style:{userSelect:\"none\",width:\"100%\",height:\"100%\",display:\"inline-block\",fill:color,color,flexShrink:0,transform:mirrored?\"scale(-1, 1)\":undefined},focusable:\"false\",color:color,children:/*#__PURE__*/_jsx(SelectedIcon,{color:color,weight:weight})}):emptyState});}Icon.displayName=\"Phosphor\";Icon.defaultProps={width:24,height:24,iconSelection:\"House\",iconSearch:\"House\",color:\"#66F\",selectByList:true,weight:\"regular\",mirrored:false};addPropertyControls(Icon,{selectByList:{type:ControlType.Boolean,title:\"Select\",enabledTitle:\"List\",disabledTitle:\"Search\",defaultValue:Icon.defaultProps.selectByList},iconSelection:{type:ControlType.Enum,options:iconKeys,defaultValue:Icon.defaultProps.iconSelection,title:\"Name\",hidden:({selectByList})=>!selectByList,description:\"Find every icon name on the [Phosphor site](https://phosphoricons.com/)\"},iconSearch:{type:ControlType.String,title:\"Name\",placeholder:\"Menu, Wifi, Box…\",hidden:({selectByList})=>selectByList},color:{type:ControlType.Color,title:\"Color\",defaultValue:Icon.defaultProps.color},weight:{type:ControlType.Enum,title:\"Weight\",optionTitles:weightOptions.map(piece=>piece.charAt(0).toUpperCase()+piece.slice(1)),options:weightOptions,defaultValue:Icon.defaultProps.weight},mirrored:{type:ControlType.Boolean,enabledTitle:\"Yes\",disabledTitle:\"No\",defaultValue:Icon.defaultProps.mirrored},...defaultEvents});\nexport const __FramerMetadata__ = {\"exports\":{\"IconProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Icon\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"24\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"fixed\",\"framerIntrinsicHeight\":\"24\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Phosphor.map","// Generated by Framer (fb365c6)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,useComponentViewport,useLocaleInfo,useVariantState,withCSS,withFX}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";const MotionDivWithFX=withFX(motion.div);const cycleOrder=[\"cKzvPWN7r\",\"PClCKJOwB\",\"Ty12YgNx8\",\"uIe_Wt4aW\",\"c5EUUcGJA\"];const serializationHash=\"framer-AmUoz\";const variantClassNames={c5EUUcGJA:\"framer-v-1wbsjyn\",cKzvPWN7r:\"framer-v-1iszwwj\",PClCKJOwB:\"framer-v-11wh26d\",Ty12YgNx8:\"framer-v-5ahfgg\",uIe_Wt4aW:\"framer-v-uq91qq\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={duration:0,type:\"tween\"};const animation={opacity:0,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:0};const transition2={delay:0,duration:.3,ease:[.44,0,.56,1],type:\"tween\"};const animation1={opacity:0,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transition:transition2,x:0,y:0};const transition3={delay:0,duration:1,ease:[0,0,1,1],type:\"tween\"};const animation2={opacity:1,rotate:360,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:0};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const humanReadableVariantMap={\"Thick (Primary)\":\"uIe_Wt4aW\",Default:\"cKzvPWN7r\",Hidden:\"c5EUUcGJA\",Primary:\"PClCKJOwB\",Thick:\"Ty12YgNx8\"};const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"cKzvPWN7r\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"cKzvPWN7r\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[];const isDisplayed=()=>{if(baseVariant===\"c5EUUcGJA\")return false;return true;};const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:isDisplayed()&&/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-1iszwwj\",className,classNames),\"data-framer-name\":\"Default\",layoutDependency:layoutDependency,layoutId:\"cKzvPWN7r\",ref:refBinding,style:{\"--border-bottom-width\":\"0px\",\"--border-color\":\"rgba(0, 0, 0, 0)\",\"--border-left-width\":\"0px\",\"--border-right-width\":\"0px\",\"--border-style\":\"solid\",\"--border-top-width\":\"0px\",borderBottomLeftRadius:0,borderBottomRightRadius:0,borderTopLeftRadius:0,borderTopRightRadius:0,...style},variants:{Ty12YgNx8:{\"--border-bottom-width\":\"2px\",\"--border-color\":\"var(--token-6a6d1399-e0d3-458b-9e29-96d27df1c9d2, rgba(255, 255, 255, 0.04))\",\"--border-left-width\":\"2px\",\"--border-right-width\":\"2px\",\"--border-style\":\"solid\",\"--border-top-width\":\"2px\",borderBottomLeftRadius:50,borderBottomRightRadius:50,borderTopLeftRadius:50,borderTopRightRadius:50},uIe_Wt4aW:{\"--border-bottom-width\":\"2px\",\"--border-color\":\"var(--token-6a6d1399-e0d3-458b-9e29-96d27df1c9d2, rgba(255, 255, 255, 0.04))\",\"--border-left-width\":\"2px\",\"--border-right-width\":\"2px\",\"--border-style\":\"solid\",\"--border-top-width\":\"2px\",borderBottomLeftRadius:50,borderBottomRightRadius:50,borderTopLeftRadius:50,borderTopRightRadius:50}},...addPropertyOverrides({PClCKJOwB:{\"data-framer-name\":\"Primary\"},Ty12YgNx8:{\"data-border\":true,\"data-framer-name\":\"Thick\"},uIe_Wt4aW:{\"data-border\":true,\"data-framer-name\":\"Thick (Primary)\"}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(MotionDivWithFX,{__framer__animate:{transition:transition2},__framer__animateOnce:false,__framer__enter:animation,__framer__exit:animation1,__framer__styleAppearEffectEnabled:true,__framer__threshold:.5,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-1g73syt\",\"data-framer-name\":\"Spinner\",layoutDependency:layoutDependency,layoutId:\"ydKSfbnzE\",style:{mask:\"url('https://framerusercontent.com/images/pGiXYozQ3mE4cilNOItfe2L2fUA.svg?width=20&height=20') alpha no-repeat center / cover add\",WebkitMask:\"url('https://framerusercontent.com/images/pGiXYozQ3mE4cilNOItfe2L2fUA.svg?width=20&height=20') alpha no-repeat center / cover add\"},variants:{Ty12YgNx8:{mask:\"linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 100%) add\",WebkitMask:\"linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 100%) add\"},uIe_Wt4aW:{mask:\"linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 100%) add\",WebkitMask:\"linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 100%) add\"}},children:/*#__PURE__*/_jsx(MotionDivWithFX,{__framer__loop:animation2,__framer__loopEffectEnabled:true,__framer__loopRepeatDelay:0,__framer__loopRepeatType:\"loop\",__framer__loopTransition:transition3,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-mvr1i\",\"data-framer-name\":\"Conic\",layoutDependency:layoutDependency,layoutId:\"hVnFnfHGv\",style:{background:\"conic-gradient(from 0deg at 50% 50%, rgba(255, 255, 255, 0) 0deg, rgb(153, 153, 153) 342deg)\"},variants:{PClCKJOwB:{background:\"conic-gradient(from 0deg at 50% 50%, rgba(255, 255, 255, 0) 0deg, var(--token-887a062b-1950-4b53-8345-97084bbfd553, rgb(134, 102, 255)) 342deg)\"},Ty12YgNx8:{background:\"conic-gradient(from 0deg at 50% 50%, rgba(255, 255, 255, 0) 0deg, var(--token-6a856be1-2d4b-4384-a169-6530cfae4f0f, rgba(18, 13, 38, 0.8)) 342deg)\"},uIe_Wt4aW:{background:\"conic-gradient(from 0deg at 50% 50%, var(--token-887a062b-1950-4b53-8345-97084bbfd553, rgb(134, 102, 255)) 0deg, var(--token-6a856be1-2d4b-4384-a169-6530cfae4f0f, rgba(18, 13, 38, 0.8)) 342deg)\"}},children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-13zps1l\",\"data-framer-name\":\"Round\",layoutDependency:layoutDependency,layoutId:\"w82FE6GOg\",style:{backgroundColor:\"rgb(153, 153, 153)\",borderBottomLeftRadius:1,borderBottomRightRadius:1,borderTopLeftRadius:1,borderTopRightRadius:1},variants:{PClCKJOwB:{backgroundColor:\"var(--token-887a062b-1950-4b53-8345-97084bbfd553, rgb(134, 102, 255))\"},Ty12YgNx8:{backgroundColor:\"var(--token-6a856be1-2d4b-4384-a169-6530cfae4f0f, rgba(18, 13, 38, 0.8))\"},uIe_Wt4aW:{backgroundColor:\"var(--token-887a062b-1950-4b53-8345-97084bbfd553, rgb(134, 102, 255))\"}}})})})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-AmUoz.framer-1p2hkgz, .framer-AmUoz .framer-1p2hkgz { display: block; }\",\".framer-AmUoz.framer-1iszwwj { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: 40px; justify-content: center; padding: 0px; position: relative; width: 40px; }\",\".framer-AmUoz .framer-1g73syt { aspect-ratio: 1 / 1; flex: 1 0 0px; gap: 10px; height: var(--framer-aspect-ratio-supported, 200px); overflow: visible; position: relative; width: 1px; }\",\".framer-AmUoz .framer-mvr1i { aspect-ratio: 1 / 1; flex: none; gap: 10px; height: var(--framer-aspect-ratio-supported, 20px); left: 0px; overflow: visible; position: absolute; right: 0px; top: 0px; }\",\".framer-AmUoz .framer-13zps1l { flex: none; height: 2px; left: calc(50.00000000000002% - 2px / 2); overflow: visible; position: absolute; top: 0px; width: 2px; }\",\".framer-AmUoz.framer-v-5ahfgg.framer-1iszwwj, .framer-AmUoz.framer-v-uq91qq.framer-1iszwwj { overflow: hidden; will-change: var(--framer-will-change-override, transform); }\",'.framer-AmUoz[data-border=\"true\"]::after, .framer-AmUoz [data-border=\"true\"]::after { content: \"\"; border-width: var(--border-top-width, 0) var(--border-right-width, 0) var(--border-bottom-width, 0) var(--border-left-width, 0); border-color: var(--border-color, none); border-style: var(--border-style, none); width: 100%; height: 100%; position: absolute; box-sizing: border-box; left: 0; top: 0; border-radius: inherit; pointer-events: none; }'];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 40\n * @framerIntrinsicWidth 40\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"PClCKJOwB\":{\"layout\":[\"fixed\",\"fixed\"]},\"Ty12YgNx8\":{\"layout\":[\"fixed\",\"fixed\"]},\"uIe_Wt4aW\":{\"layout\":[\"fixed\",\"fixed\"]},\"c5EUUcGJA\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerP_p9udK8V=withCSS(Component,css,\"framer-AmUoz\");export default FramerP_p9udK8V;FramerP_p9udK8V.displayName=\"Spinner\";FramerP_p9udK8V.defaultProps={height:40,width:40};addPropertyControls(FramerP_p9udK8V,{variant:{options:[\"cKzvPWN7r\",\"PClCKJOwB\",\"Ty12YgNx8\",\"uIe_Wt4aW\",\"c5EUUcGJA\"],optionTitles:[\"Default\",\"Primary\",\"Thick\",\"Thick (Primary)\",\"Hidden\"],title:\"Variant\",type:ControlType.Enum}});addFonts(FramerP_p9udK8V,[{explicitInter:true,fonts:[]}],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerP_p9udK8V\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"40\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"PClCKJOwB\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"Ty12YgNx8\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"uIe_Wt4aW\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"c5EUUcGJA\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerComponentViewportWidth\":\"true\",\"framerColorSyntax\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"40\",\"framerAutoSizeImages\":\"true\",\"framerImmutableVariables\":\"true\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./P_p9udK8V.map","// Generated by Framer (4e1e732)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,getFontsFromSharedStyle,RichText,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import*as sharedStyle from\"https://framerusercontent.com/modules/4L9XJhVUQFpw5WsuvoGY/Aa1FaVEmw2GKXVYxT9vm/gEpyVZImU.js\";const cycleOrder=[\"nm391OTP1\",\"F2RzSQc9W\",\"TYf0qV_i9\",\"p9sFwq2bm\",\"nYoU602uH\"];const serializationHash=\"framer-uJ5cq\";const variantClassNames={F2RzSQc9W:\"framer-v-4vggv3\",nm391OTP1:\"framer-v-1sa7r0l\",nYoU602uH:\"framer-v-1gkiznl\",p9sFwq2bm:\"framer-v-1nwtoj5\",TYf0qV_i9:\"framer-v-jcmi1z\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const humanReadableVariantMap={\"Horizontal (Labeled - Center)\":\"TYf0qV_i9\",\"Horizontal (Labeled)\":\"F2RzSQc9W\",\"Variant 4\":\"nYoU602uH\",Horizontal:\"nm391OTP1\",Vertical:\"p9sFwq2bm\"};const getProps=({height,id,label,width,...props})=>{return{...props,HmM_F049V:label??props.HmM_F049V??\"Divider\",variant:humanReadableVariantMap[props.variant]??props.variant??\"nm391OTP1\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,HmM_F049V,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"nm391OTP1\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[sharedStyle.className];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const isDisplayed=()=>{if([\"F2RzSQc9W\",\"TYf0qV_i9\"].includes(baseVariant))return true;return false;};const isDisplayed1=()=>{if(baseVariant===\"TYf0qV_i9\")return true;return false;};return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsxs(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-1sa7r0l\",className,classNames),\"data-border\":true,\"data-framer-name\":\"Horizontal\",layoutDependency:layoutDependency,layoutId:\"nm391OTP1\",ref:refBinding,style:{\"--border-bottom-width\":\"0px\",\"--border-color\":\"var(--token-4ee600e9-b261-4d58-ac71-46221076960e, rgba(255, 255, 255, 0.12))\",\"--border-left-width\":\"0px\",\"--border-right-width\":\"0px\",\"--border-style\":\"dashed\",\"--border-top-width\":\"1px\",...style},variants:{F2RzSQc9W:{\"--border-top-width\":\"0px\"},nYoU602uH:{\"--border-color\":\"var(--token-c2404f29-5d75-43ae-9091-9362defd9433, rgba(225, 217, 255, 0.6))\"},p9sFwq2bm:{\"--border-right-width\":\"1px\",\"--border-top-width\":\"0px\"},TYf0qV_i9:{\"--border-top-width\":\"0px\"}},...addPropertyOverrides({F2RzSQc9W:{\"data-framer-name\":\"Horizontal (Labeled)\"},nYoU602uH:{\"data-framer-name\":\"Variant 4\"},p9sFwq2bm:{\"data-framer-name\":\"Vertical\"},TYf0qV_i9:{\"data-framer-name\":\"Horizontal (Labeled - Center)\"}},baseVariant,gestureVariant),children:[isDisplayed()&&/*#__PURE__*/_jsx(motion.div,{className:\"framer-dw4kj5\",\"data-framer-name\":\"Label\",layoutDependency:layoutDependency,layoutId:\"LgpkHK6eK\",children:isDisplayed()&&/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-styles-preset-n8i0ih\",\"data-styles-preset\":\"gEpyVZImU\",style:{\"--framer-text-color\":\"var(--extracted-tcooor, var(--token-0a4f1509-ff06-48e1-89b7-b63338bae98d, rgb(225, 217, 255)))\"},children:\"Divider\"})}),className:\"framer-nmr11s\",\"data-framer-name\":\"Label\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"VMYc77c6t\",style:{\"--extracted-tcooor\":\"var(--token-0a4f1509-ff06-48e1-89b7-b63338bae98d, rgb(225, 217, 255))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:HmM_F049V,verticalAlignment:\"top\",withExternalLayout:true})}),isDisplayed()&&/*#__PURE__*/_jsx(Transition,{...addPropertyOverrides({F2RzSQc9W:{value:transition1},TYf0qV_i9:{value:transition1}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-eew66a\",\"data-framer-name\":\"Divider\",layoutDependency:layoutDependency,layoutId:\"nMGmTW1XG\",style:{\"--border-bottom-width\":\"0px\",\"--border-color\":\"rgba(0, 0, 0, 0)\",\"--border-left-width\":\"0px\",\"--border-right-width\":\"0px\",\"--border-style\":\"solid\",\"--border-top-width\":\"0px\",backgroundColor:\"rgb(255, 255, 255)\"},variants:{F2RzSQc9W:{\"--border-bottom-width\":\"0px\",\"--border-color\":\"var(--token-4ee600e9-b261-4d58-ac71-46221076960e, rgba(255, 255, 255, 0.12))\",\"--border-left-width\":\"0px\",\"--border-right-width\":\"0px\",\"--border-style\":\"dashed\",\"--border-top-width\":\"1px\",backgroundColor:\"rgba(0, 0, 0, 0)\"},TYf0qV_i9:{\"--border-bottom-width\":\"0px\",\"--border-color\":\"var(--token-4ee600e9-b261-4d58-ac71-46221076960e, rgba(255, 255, 255, 0.12))\",\"--border-left-width\":\"0px\",\"--border-right-width\":\"0px\",\"--border-style\":\"dashed\",\"--border-top-width\":\"1px\",backgroundColor:\"rgba(0, 0, 0, 0)\"}},...addPropertyOverrides({F2RzSQc9W:{\"data-border\":true},TYf0qV_i9:{\"data-border\":true}},baseVariant,gestureVariant)})}),isDisplayed1()&&/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-1j5qgwq\",\"data-border\":true,\"data-framer-name\":\"Divider\",layoutDependency:layoutDependency,layoutId:\"hhPZeTc6u\",style:{\"--border-bottom-width\":\"0px\",\"--border-color\":\"var(--token-4ee600e9-b261-4d58-ac71-46221076960e, rgba(255, 255, 255, 0.12))\",\"--border-left-width\":\"0px\",\"--border-right-width\":\"0px\",\"--border-style\":\"dashed\",\"--border-top-width\":\"1px\"}})})]})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-uJ5cq.framer-9e1nbz, .framer-uJ5cq .framer-9e1nbz { display: block; }\",\".framer-uJ5cq.framer-1sa7r0l { height: 1px; overflow: visible; position: relative; width: 500px; }\",\".framer-uJ5cq .framer-dw4kj5 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; left: 0px; min-height: 200px; min-width: 250px; overflow: visible; padding: 0px 15px 0px 0px; position: absolute; top: 1px; width: min-content; }\",\".framer-uJ5cq .framer-nmr11s { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-uJ5cq .framer-eew66a { flex: none; height: 1px; overflow: hidden; position: absolute; right: 0px; top: -2px; width: 1fr; }\",\".framer-uJ5cq .framer-1j5qgwq { bottom: 0px; flex: none; gap: 10px; overflow: visible; position: absolute; right: 0px; top: 0px; width: 1fr; }\",\".framer-uJ5cq.framer-v-4vggv3.framer-1sa7r0l, .framer-uJ5cq.framer-v-jcmi1z.framer-1sa7r0l { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; padding: 0px; }\",\".framer-uJ5cq.framer-v-4vggv3 .framer-dw4kj5 { left: unset; min-height: unset; min-width: unset; position: relative; top: unset; }\",\".framer-uJ5cq.framer-v-4vggv3 .framer-eew66a { flex: 1 0 0px; gap: 10px; overflow: visible; position: relative; right: unset; top: unset; width: 1px; }\",\".framer-uJ5cq.framer-v-jcmi1z .framer-dw4kj5 { left: unset; min-height: unset; min-width: unset; order: 1; padding: 0px 15px 0px 15px; position: relative; top: unset; }\",\".framer-uJ5cq.framer-v-jcmi1z .framer-eew66a { flex: 1 0 0px; gap: 10px; order: 0; overflow: visible; position: relative; right: unset; top: unset; width: 1px; }\",\".framer-uJ5cq.framer-v-jcmi1z .framer-1j5qgwq { bottom: unset; flex: 1 0 0px; height: 1px; order: 2; position: relative; right: unset; top: unset; width: 1px; }\",\".framer-uJ5cq.framer-v-1nwtoj5.framer-1sa7r0l { height: 500px; width: 1px; }\",...sharedStyle.css,'.framer-uJ5cq[data-border=\"true\"]::after, .framer-uJ5cq [data-border=\"true\"]::after { content: \"\"; border-width: var(--border-top-width, 0) var(--border-right-width, 0) var(--border-bottom-width, 0) var(--border-left-width, 0); border-color: var(--border-color, none); border-style: var(--border-style, none); width: 100%; height: 100%; position: absolute; box-sizing: border-box; left: 0; top: 0; border-radius: inherit; pointer-events: none; }'];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 1\n * @framerIntrinsicWidth 500\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"F2RzSQc9W\":{\"layout\":[\"fixed\",\"fixed\"]},\"TYf0qV_i9\":{\"layout\":[\"fixed\",\"fixed\"]},\"p9sFwq2bm\":{\"layout\":[\"fixed\",\"fixed\"]},\"nYoU602uH\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerVariables {\"HmM_F049V\":\"label\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const Framerw5exNccsr=withCSS(Component,css,\"framer-uJ5cq\");export default Framerw5exNccsr;Framerw5exNccsr.displayName=\"Divider\";Framerw5exNccsr.defaultProps={height:1,width:500};addPropertyControls(Framerw5exNccsr,{variant:{options:[\"nm391OTP1\",\"F2RzSQc9W\",\"TYf0qV_i9\",\"p9sFwq2bm\",\"nYoU602uH\"],optionTitles:[\"Horizontal\",\"Horizontal (Labeled)\",\"Horizontal (Labeled - Center)\",\"Vertical\",\"Variant 4\"],title:\"Variant\",type:ControlType.Enum},HmM_F049V:{defaultValue:\"Divider\",displayTextArea:false,title:\"Label\",type:ControlType.String}});addFonts(Framerw5exNccsr,[{explicitInter:true,fonts:[{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/GrgcKwrN6d3Uz8EwcLHZxwEfC4.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"}]},...getFontsFromSharedStyle(sharedStyle.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Framerw5exNccsr\",\"slots\":[],\"annotations\":{\"framerDisplayContentsDiv\":\"false\",\"framerImmutableVariables\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"F2RzSQc9W\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"TYf0qV_i9\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"p9sFwq2bm\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"nYoU602uH\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerVariables\":\"{\\\"HmM_F049V\\\":\\\"label\\\"}\",\"framerComponentViewportWidth\":\"true\",\"framerAutoSizeImages\":\"true\",\"framerIntrinsicHeight\":\"1\",\"framerColorSyntax\":\"true\",\"framerIntrinsicWidth\":\"500\",\"framerContractVersion\":\"1\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],"mappings":"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"}