PageSourceSearch

https://divyanshkathuria.netlify.app/assets/index-BQuzQ5KO.js

js divyanshkathuria.netlify.app collected 2026-10-03 10:39:30 UTC 1,444,298 bytes, 3,967 lines download raw bytes

vendor: 3,467 bytes, lines 1-9
1function EI(r,e){for(var t=0;t<e.length;t++){const n=e[t];if(typeof n!="string"&&!Array.isArray(n)){for(const i in n)if(i!=="default"&&!(i in r)){const s=Object.getOwnPropertyDescriptor(n,i);s&&Object.defineProperty(r,i,s.get?s:{enumerable:!0,get:()=>n[i]})}}}return Object.freeze(Object.defineProperty(r,Symbol.toStringTag,{value:"Module"}))}(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))n(i);new MutationObserver(i=>{for(const s of i)if(s.type==="childList")for(const o of s.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&n(o)}).observe(document,{childList:!0,subtree:!0});function t(i){const s={};return i.integrity&&(s.integrity=i.integrity),i.referrerPolicy&&(s.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?s.credentials="include":i.crossOrigin==="anonymous"?s.credentials="omit":s.credentials="same-origin",s}function n(i){if(i.ep)return;i.ep=!0;const s=t(i);fetch(i.href,s)}})();function oc(r){return r&&r.__esModule&&Object.prototype.hasOwnProperty.call(r,"default")?r.default:r}var Q1={exports:{}},Zf={},Z1={exports:{}},ln={};/**
2 * @license React
3 * react.production.min.js
4 *
5 * Copyright (c) Facebook, Inc. and its affiliates.
6 *
7 * This source code is licensed under the MIT license found in the
8 * LICENSE file in the root directory of this source tree.
9 */var XS;function bI(){if(XS)return ln;XS=1;var r=Symbol.for("react.element"),e=Symbol.for("react.portal"),t=Symbol.for("react.fragment"),n=Symbol.for("react.strict_mode"),i=Symbol.for("react.profiler"),s=Symbol.for("react.provider"),o=Symbol.for("react.context"),l=Symbol.for("react.forward_ref"),u=Symbol.for("react.suspense"),d=Symbol.for("react.memo"),p=Symbol.for("react.lazy"),m=Symbol.iterator;function y(X){return X===null||typeof X!="object"?null:(X=m&&X[m]||X["@@iterator"],typeof X=="function"?X:null)}var v={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},S=Object.assign,E={};function A(X,se,Le){this.props=X,this.context=se,this.refs=E,this.updater=Le||v}A.prototype.isReactComponent={},A.prototype.setState=function(X,se){if(typeof X!="object"&&typeof X!="function"&&X!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,X,se,"setState")},A.prototype.forceUpdate=function(X){this.updater.enqueueForceUpdate(this,X,"forceUpdate")};function M(){}M.prototype=A.prototype;function T(X,se,Le){this.props=X,this.context=se,this.refs=E,this.updater=Le||v}var I=T.prototype=new M;I.constructor=T,S(I,A.prototype),I.isPureReactComponent=!0;var P=Array.isArray,k=Object.prototype.hasOwnProperty,O={current:null},N={key:!0,ref:!0,__self:!0,__source:!0};function H(X,se,Le){var pe,Ae={},Re=null,Ie=null;if(se!=null)for(pe in se.ref!==void 0&&(Ie=se.ref),se.key!==void 0&&(Re=""+se.key),se)k.call(se,pe)&&!N.hasOwnProperty(pe)&&(Ae[pe]=se[pe]);var Ge=arguments.length-2;if(Ge===1)Ae.children=Le;else if(1<Ge){for(var qe=Array(Ge),lt=0;lt<Ge;lt++)qe[lt]=arguments[lt+2];Ae.children=qe}if(X&&X.defaultProps)for(pe in Ge=X.defaultProps,Ge)Ae[pe]===void 0&&(Ae[pe]=Ge[pe]);return{$$typeof:r,type:X,key:Re,ref:Ie,props:Ae,_owner:O.current}}function F(X,se){return{$$typeof:r,type:X.type,key:se,ref:X.ref,props:X.props,_owner:X._owner}}
vendor: 11,648 bytes, lines 9-33
9function L(X){return typeof X=="object"&&X!==null&&X.$$typeof===r}function V(X){var se={"=":"=0",":":"=2"};return"$"+X.replace(/[=:]/g,function(Le){return se[Le]})}var te=/\/+/g;function ne(X,se){return typeof X=="object"&&X!==null&&X.key!=null?V(""+X.key):se.toString(36)}function ce(X,se,Le,pe,Ae){var Re=typeof X;(Re==="undefined"||Re==="boolean")&&(X=null);var Ie=!1;if(X===null)Ie=!0;else switch(Re){case"string":case"number":Ie=!0;break;case"object":switch(X.$$typeof){case r:case e:Ie=!0}}if(Ie)return Ie=X,Ae=Ae(Ie),X=pe===""?"."+ne(Ie,0):pe,P(Ae)?(Le="",X!=null&&(Le=X.replace(te,"$&/")+"/"),ce(Ae,se,Le,"",function(lt){return lt})):Ae!=null&&(L(Ae)&&(Ae=F(Ae,Le+(!Ae.key||Ie&&Ie.key===Ae.key?"":(""+Ae.key).replace(te,"$&/")+"/")+X)),se.push(Ae)),1;if(Ie=0,pe=pe===""?".":pe+":",P(X))for(var Ge=0;Ge<X.length;Ge++){Re=X[Ge];var qe=pe+ne(Re,Ge);Ie+=ce(Re,se,Le,qe,Ae)}else if(qe=y(X),typeof qe=="function")for(X=qe.call(X),Ge=0;!(Re=X.next()).done;)Re=Re.value,qe=pe+ne(Re,Ge++),Ie+=ce(Re,se,Le,qe,Ae);else if(Re==="object")throw se=String(X),Error("Objects are not valid as a React child (found: "+(se==="[object Object]"?"object with keys {"+Object.keys(X).join(", ")+"}":se)+"). If you meant to render a collection of children, use an array instead.");return Ie}function me(X,se,Le){if(X==null)return X;var pe=[],Ae=0;return ce(X,pe,"","",function(Re){return se.call(Le,Re,Ae++)}),pe}function he(X){if(X._status===-1){var se=X._result;se=se(),se.then(function(Le){(X._status===0||X._status===-1)&&(X._status=1,X._result=Le)},function(Le){(X._status===0||X._status===-1)&&(X._status=2,X._result=Le)}),X._status===-1&&(X._status=0,X._result=se)}if(X._status===1)return X._result.default;throw X._result}var ge={current:null},U={transition:null},Z={ReactCurrentDispatcher:ge,ReactCurrentBatchConfig:U,ReactCurrentOwner:O};function q(){throw Error("act(...) is not supported in production builds of React.")}return ln.Children={map:me,forEach:function(X,se,Le){me(X,function(){se.apply(this,arguments)},Le)},count:function(X){var se=0;return me(X,function(){se++}),se},toArray:function(X){return me(X,function(se){return se})||[]},only:function(X){if(!L(X))throw Error("React.Children.only expected to receive a single React element child.");return X}},ln.Component=A,ln.Fragment=t,ln.Profiler=i,ln.PureComponent=T,ln.StrictMode=n,ln.Suspense=u,ln.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=Z,ln.act=q,ln.cloneElement=function(X,se,Le){if(X==null)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+X+".");var pe=S({},X.props),Ae=X.key,Re=X.ref,Ie=X._owner;if(se!=null){if(se.ref!==void 0&&(Re=se.ref,Ie=O.current),se.key!==void 0&&(Ae=""+se.key),X.type&&X.type.defaultProps)var Ge=X.type.defaultProps;for(qe in se)k.call(se,qe)&&!N.hasOwnProperty(qe)&&(pe[qe]=se[qe]===void 0&&Ge!==void 0?Ge[qe]:se[qe])}var qe=arguments.length-2;if(qe===1)pe.children=Le;else if(1<qe){Ge=Array(qe);for(var lt=0;lt<qe;lt++)Ge[lt]=arguments[lt+2];pe.children=Ge}return{$$typeof:r,type:X.type,key:Ae,ref:Re,props:pe,_owner:Ie}},ln.createContext=function(X){return X={$$typeof:o,_currentValue:X,_currentValue2:X,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null},X.Provider={$$typeof:s,_context:X},X.Consumer=X},ln.createElement=H,ln.createFactory=function(X){var se=H.bind(null,X);return se.type=X,se},ln.createRef=function(){return{current:null}},ln.forwardRef=function(X){return{$$typeof:l,render:X}},ln.isValidElement=L,ln.lazy=function(X){return{$$typeof:p,_payload:{_status:-1,_result:X},_init:he}},ln.memo=function(X,se){return{$$typeof:d,type:X,compare:se===void 0?null:se}},ln.startTransition=function(X){var se=U.transition;U.transition={};try{X()}finally{U.transition=se}},ln.unstable_act=q,ln.useCallback=function(X,se){return ge.current.useCallback(X,se)},ln.useContext=function(X){return ge.current.useContext(X)},ln.useDebugValue=function(){},ln.useDeferredValue=function(X){return ge.current.useDeferredValue(X)},ln.useEffect=function(X,se){return ge.current.useEffect(X,se)},ln.useId=function(){return ge.current.useId()},ln.useImperativeHandle=function(X,se,Le){return ge.current.useImperativeHandle(X,se,Le)},ln.useInsertionEffect=function(X,se){return ge.current.useInsertionEffect(X,se)},ln.useLayoutEffect=function(X,se){return ge.current.useLayoutEffect(X,se)},ln.useMemo=function(X,se){return ge.current.useMemo(X,se)},ln.useReducer=function(X,se,Le){return ge.current.useReducer(X,se,Le)},ln.useRef=function(X){return ge.current.useRef(X)},ln.useState=function(X){return ge.current.useState(X)},ln.useSyncExternalStore=function(X,se,Le){return ge.current.useSyncExternalStore(X,se,Le)},ln.useTransition=function(){return ge.current.useTransition()},ln.version="18.3.1",ln}var JS;function By(){return JS||(JS=1,Z1.exports=bI()),Z1.exports}/**
10 * @license React
11 * react-jsx-runtime.production.min.js
12 *
13 * Copyright (c) Facebook, Inc. and its affiliates.
14 *
15 * This source code is licensed under the MIT license found in the
16 * LICENSE file in the root directory of this source tree.
17 */var $S;function CI(){if($S)return Zf;$S=1;var r=By(),e=Symbol.for("react.element"),t=Symbol.for("react.fragment"),n=Object.prototype.hasOwnProperty,i=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,s={key:!0,ref:!0,__self:!0,__source:!0};function o(l,u,d){var p,m={},y=null,v=null;d!==void 0&&(y=""+d),u.key!==void 0&&(y=""+u.key),u.ref!==void 0&&(v=u.ref);for(p in u)n.call(u,p)&&!s.hasOwnProperty(p)&&(m[p]=u[p]);if(l&&l.defaultProps)for(p in u=l.defaultProps,u)m[p]===void 0&&(m[p]=u[p]);return{$$typeof:e,type:l,key:y,ref:v,props:m,_owner:i.current}}return Zf.Fragment=t,Zf.jsx=o,Zf.jsxs=o,Zf}var KS;function TI(){return KS||(KS=1,Q1.exports=CI()),Q1.exports}var _=TI(),z=By();const re=oc(z),II=EI({__proto__:null,default:re},[z]);var m0={},ev={exports:{}},Ki={},tv={exports:{}},nv={};/**
18 * @license React
19 * scheduler.production.min.js
20 *
21 * Copyright (c) Facebook, Inc. and its affiliates.
22 *
23 * This source code is licensed under the MIT license found in the
24 * LICENSE file in the root directory of this source tree.
25 */var YS;function PI(){return YS||(YS=1,function(r){function e(U,Z){var q=U.length;U.push(Z);e:for(;0<q;){var X=q-1>>>1,se=U[X];if(0<i(se,Z))U[X]=Z,U[q]=se,q=X;else break e}}function t(U){return U.length===0?null:U[0]}function n(U){if(U.length===0)return null;var Z=U[0],q=U.pop();if(q!==Z){U[0]=q;e:for(var X=0,se=U.length,Le=se>>>1;X<Le;){var pe=2*(X+1)-1,Ae=U[pe],Re=pe+1,Ie=U[Re];if(0>i(Ae,q))Re<se&&0>i(Ie,Ae)?(U[X]=Ie,U[Re]=q,X=Re):(U[X]=Ae,U[pe]=q,X=pe);else if(Re<se&&0>i(Ie,q))U[X]=Ie,U[Re]=q,X=Re;else break e}}return Z}function i(U,Z){var q=U.sortIndex-Z.sortIndex;return q!==0?q:U.id-Z.id}if(typeof performance=="object"&&typeof performance.now=="function"){var s=performance;r.unstable_now=function(){return s.now()}}else{var o=Date,l=o.now();r.unstable_now=function(){return o.now()-l}}var u=[],d=[],p=1,m=null,y=3,v=!1,S=!1,E=!1,A=typeof setTimeout=="function"?setTimeout:null,M=typeof clearTimeout=="function"?clearTimeout:null,T=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function I(U){for(var Z=t(d);Z!==null;){if(Z.callback===null)n(d);else if(Z.startTime<=U)n(d),Z.sortIndex=Z.expirationTime,e(u,Z);else break;Z=t(d)}}function P(U){if(E=!1,I(U),!S)if(t(u)!==null)S=!0,he(k);else{var Z=t(d);Z!==null&&ge(P,Z.startTime-U)}}function k(U,Z){S=!1,E&&(E=!1,M(H),H=-1),v=!0;var q=y;try{for(I(Z),m=t(u);m!==null&&(!(m.expirationTime>Z)||U&&!V());){var X=m.callback;if(typeof X=="function"){m.callback=null,y=m.priorityLevel;var se=X(m.expirationTime<=Z);Z=r.unstable_now(),typeof se=="function"?m.callback=se:m===t(u)&&n(u),I(Z)}else n(u);m=t(u)}if(m!==null)var Le=!0;else{var pe=t(d);pe!==null&&ge(P,pe.startTime-Z),Le=!1}return Le}finally{m=null,y=q,v=!1}}var O=!1,N=null,H=-1,F=5,L=-1;function V(){return!(r.unstable_now()-L<F)}function te(){if(N!==null){var U=r.unstable_now();L=U;var Z=!0;try{Z=N(!0,U)}finally{Z?ne():(O=!1,N=null)}}else O=!1}var ne;if(typeof T=="function")ne=function(){T(te)};else if(typeof MessageChannel<"u"){var ce=new MessageChannel,me=ce.port2;ce.port1.onmessage=te,ne=function(){me.postMessage(null)}}else ne=function(){A(te,0)};function he(U){N=U,O||(O=!0,ne())}function ge(U,Z){H=A(function(){U(r.unstable_now())},Z)}r.unstable_IdlePriority=5,r.unstable_ImmediatePriority=1,r.unstable_LowPriority=4,r.unstable_NormalPriority=3,r.unstable_Profiling=null,r.unstable_UserBlockingPriority=2,r.unstable_cancelCallback=function(U){U.callback=null},r.unstable_continueExecution=function(){S||v||(S=!0,he(k))},r.unstable_forceFrameRate=function(U){0>U||125<U?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):F=0<U?Math.floor(1e3/U):5},r.unstable_getCurrentPriorityLevel=function(){return y},r.unstable_getFirstCallbackNode=function(){return t(u)},r.unstable_next=function(U){switch(y){case 1:case 2:case 3:var Z=3;break;default:Z=y}var q=y;y=Z;try{return U()}finally{y=q}},r.unstable_pauseExecution=function(){},r.unstable_requestPaint=function(){},r.unstable_runWithPriority=function(U,Z){switch(U){case 1:case 2:case 3:case 4:case 5:break;default:U=3}var q=y;y=U;try{return Z()}finally{y=q}},r.unstable_scheduleCallback=function(U,Z,q){var X=r.unstable_now();switch(typeof q=="object"&&q!==null?(q=q.delay,q=typeof q=="number"&&0<q?X+q:X):q=X,U){case 1:var se=-1;break;case 2:se=250;break;case 5:se=1073741823;break;case 4:se=1e4;break;default:se=5e3}return se=q+se,U={id:p++,callback:Z,priorityLevel:U,startTime:q,expirationTime:se,sortIndex:-1},q>X?(U.sortIndex=q,e(d,U),t(u)===null&&U===t(d)&&(E?(M(H),H=-1):E=!0,ge(P,q-X))):(U.sortIndex=se,e(u,U),S||v||(S=!0,he(k))),U},r.unstable_shouldYield=V,r.unstable_wrapCallback=function(U){var Z=y;return function(){var q=y;y=Z;try{return U.apply(this,arguments)}finally{y=q}}}}(nv)),nv}var qS;function RI(){return qS||(qS=1,tv.exports=PI()),tv.exports}/**
26 * @license React
27 * react-dom.production.min.js
28 *
29 * Copyright (c) Facebook, Inc. and its affiliates.
30 *
31 * This source code is licensed under the MIT license found in the
32 * LICENSE file in the root directory of this source tree.
33 */var QS;function BI(){if(QS)return Ki;QS=1;var r=By(),e=RI();function t(a){for(var c="https://reactjs.org/docs/error-decoder.html?invariant="+a,g=1;g<arguments.length;g++)c+="&args[]="+encodeURIComponent(arguments[g]);return"Minified React error #"+a+"; visit "+c+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var n=new Set,i={};function s(a,c){o(a,c),o(a+"Capture",c)}function o(a,c){for(i[a]=c,a=0;a<c.length;a++)n.add(c[a])}var l=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),u=Object.prototype.hasOwnProperty,d=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,p={},m={};function y(a){return u.call(m,a)?!0:u.call(p,a)?!1:d.test(a)?m[a]=!0:(p[a]=!0,!1)}function v(a,c,g,w){if(g!==null&&g.type===0)return!1;switch(typeof c){case"function":case"symbol":return!0;case"boolean":return w?!1:g!==null?!g.acceptsBooleans:(a=a.toLowerCase().slice(0,5),a!=="data-"&&a!=="aria-");default:return!1}}
vendor: 9,409 bytes, lines 33-37
33function S(a,c,g,w){if(c===null||typeof c>"u"||v(a,c,g,w))return!0;if(w)return!1;if(g!==null)switch(g.type){case 3:return!c;case 4:return c===!1;case 5:return isNaN(c);case 6:return isNaN(c)||1>c}return!1}function E(a,c,g,w,C,B,j){this.acceptsBooleans=c===2||c===3||c===4,this.attributeName=w,this.attributeNamespace=C,this.mustUseProperty=g,this.propertyName=a,this.type=c,this.sanitizeURL=B,this.removeEmptyString=j}var A={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(a){A[a]=new E(a,0,!1,a,null,!1,!1)}),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(a){var c=a[0];A[c]=new E(c,1,!1,a[1],null,!1,!1)}),["contentEditable","draggable","spellCheck","value"].forEach(function(a){A[a]=new E(a,2,!1,a.toLowerCase(),null,!1,!1)}),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(a){A[a]=new E(a,2,!1,a,null,!1,!1)}),"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(a){A[a]=new E(a,3,!1,a.toLowerCase(),null,!1,!1)}),["checked","multiple","muted","selected"].forEach(function(a){A[a]=new E(a,3,!0,a,null,!1,!1)}),["capture","download"].forEach(function(a){A[a]=new E(a,4,!1,a,null,!1,!1)}),["cols","rows","size","span"].forEach(function(a){A[a]=new E(a,6,!1,a,null,!1,!1)}),["rowSpan","start"].forEach(function(a){A[a]=new E(a,5,!1,a.toLowerCase(),null,!1,!1)});var M=/[\-:]([a-z])/g;function T(a){return a[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(a){var c=a.replace(M,T);A[c]=new E(c,1,!1,a,null,!1,!1)}),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(a){var c=a.replace(M,T);A[c]=new E(c,1,!1,a,"http://www.w3.org/1999/xlink",!1,!1)}),["xml:base","xml:lang","xml:space"].forEach(function(a){var c=a.replace(M,T);A[c]=new E(c,1,!1,a,"http://www.w3.org/XML/1998/namespace",!1,!1)}),["tabIndex","crossOrigin"].forEach(function(a){A[a]=new E(a,1,!1,a.toLowerCase(),null,!1,!1)}),A.xlinkHref=new E("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach(function(a){A[a]=new E(a,1,!1,a.toLowerCase(),null,!0,!0)});function I(a,c,g,w){var C=A.hasOwnProperty(c)?A[c]:null;(C!==null?C.type!==0:w||!(2<c.length)||c[0]!=="o"&&c[0]!=="O"||c[1]!=="n"&&c[1]!=="N")&&(S(c,g,C,w)&&(g=null),w||C===null?y(c)&&(g===null?a.removeAttribute(c):a.setAttribute(c,""+g)):C.mustUseProperty?a[C.propertyName]=g===null?C.type===3?!1:"":g:(c=C.attributeName,w=C.attributeNamespace,g===null?a.removeAttribute(c):(C=C.type,g=C===3||C===4&&g===!0?"":""+g,w?a.setAttributeNS(w,c,g):a.setAttribute(c,g))))}var P=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,k=Symbol.for("react.element"),O=Symbol.for("react.portal"),N=Symbol.for("react.fragment"),H=Symbol.for("react.strict_mode"),F=Symbol.for("react.profiler"),L=Symbol.for("react.provider"),V=Symbol.for("react.context"),te=Symbol.for("react.forward_ref"),ne=Symbol.for("react.suspense"),ce=Symbol.for("react.suspense_list"),me=Symbol.for("react.memo"),he=Symbol.for("react.lazy"),ge=Symbol.for("react.offscreen"),U=Symbol.iterator;function Z(a){return a===null||typeof a!="object"?null:(a=U&&a[U]||a["@@iterator"],typeof a=="function"?a:null)}var q=Object.assign,X;function se(a){if(X===void 0)try{throw Error()}catch(g){var c=g.stack.trim().match(/\n( *(at )?)/);X=c&&c[1]||""}return`
34`+X+a}var Le=!1;function pe(a,c){if(!a||Le)return"";Le=!0;var g=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(c)if(c=function(){throw Error()},Object.defineProperty(c.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(c,[])}catch(Se){var w=Se}Reflect.construct(a,[],c)}else{try{c.call()}catch(Se){w=Se}a.call(c.prototype)}else{try{throw Error()}catch(Se){w=Se}a()}}catch(Se){if(Se&&w&&typeof Se.stack=="string"){for(var C=Se.stack.split(`
35`),B=w.stack.split(`
36`),j=C.length-1,Q=B.length-1;1<=j&&0<=Q&&C[j]!==B[Q];)Q--;for(;1<=j&&0<=Q;j--,Q--)if(C[j]!==B[Q]){if(j!==1||Q!==1)do if(j--,Q--,0>Q||C[j]!==B[Q]){var ie=`
37`+C[j].replace(" at new "," at ");return a.displayName&&ie.includes("<anonymous>")&&(ie=ie.replace("<anonymous>",a.displayName)),ie}while(1<=j&&0<=Q);break}}}finally{Le=!1,Error.prepareStackTrace=g}return(a=a?a.displayName||a.name:"")?se(a):""}function Ae(a){switch(a.tag){case 5:return se(a.type);case 16:return se("Lazy");case 13:return se("Suspense");case 19:return se("SuspenseList");case 0:case 2:case 15:return a=pe(a.type,!1),a;case 11:return a=pe(a.type.render,!1),a;case 1:return a=pe(a.type,!0),a;default:return""}}function Re(a){if(a==null)return null;if(typeof a=="function")return a.displayName||a.name||null;if(typeof a=="string")return a;switch(a){case N:return"Fragment";case O:return"Portal";case F:return"Profiler";case H:return"StrictMode";case ne:return"Suspense";case ce:return"SuspenseList"}if(typeof a=="object")switch(a.$$typeof){case V:return(a.displayName||"Context")+".Consumer";case L:return(a._context.displayName||"Context")+".Provider";case te:var c=a.render;return a=a.displayName,a||(a=c.displayName||c.name||"",a=a!==""?"ForwardRef("+a+")":"ForwardRef"),a;case me:return c=a.displayName||null,c!==null?c:Re(a.type)||"Memo";case he:c=a._payload,a=a._init;try{return Re(a(c))}catch{}}return null}function Ie(a){var c=a.type;switch(a.tag){case 24:return"Cache";case 9:return(c.displayName||"Context")+".Consumer";case 10:return(c._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return a=c.render,a=a.displayName||a.name||"",c.displayName||(a!==""?"ForwardRef("+a+")":"ForwardRef");case 7:return"Fragment";case 5:return c;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return Re(c);case 8:return c===H?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof c=="function")return c.displayName||c.name||null;if(typeof c=="string")return c}return null}function Ge(a){switch(typeof a){case"boolean":case"number":case"string":case"undefined":return a;case"object":return a;default:return""}}function qe(a){var c=a.type;return(a=a.nodeName)&&a.toLowerCase()==="input"&&(c==="checkbox"||c==="radio")}function lt(a){var c=qe(a)?"checked":"value",g=Object.getOwnPropertyDescriptor(a.constructor.prototype,c),w=""+a[c];if(!a.hasOwnProperty(c)&&typeof g<"u"&&typeof g.get=="function"&&typeof g.set=="function"){var C=g.get,B=g.set;return Object.defineProperty(a,c,{configurable:!0,get:function(){return C.call(this)},set:function(j){w=""+j,B.call(this,j)}}),Object.defineProperty(a,c,{enumerable:g.enumerable}),{getValue:function(){return w},setValue:function(j){w=""+j},stopTracking:function(){a._valueTracker=null,delete a[c]}}}}function Pt(a){a._valueTracker||(a._valueTracker=lt(a))}function Be(a){if(!a)return!1;var c=a._valueTracker;if(!c)return!0;var g=c.getValue(),w="";return a&&(w=qe(a)?a.checked?"true":"false":a.value),a=w,a!==g?(c.setValue(a),!0):!1}function Oe(a){if(a=a||(typeof document<"u"?document:void 0),typeof a>"u")return null;try{return a.activeElement||a.body}catch{return a.body}}function K(a,c){var g=c.checked;return q({},c,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:g??a._wrapperState.initialChecked})}function pt(a,c){var g=c.defaultValue==null?"":c.defaultValue,w=c.checked!=null?c.checked:c.defaultChecked;g=Ge(c.value!=null?c.value:g),a._wrapperState={initialChecked:w,initialValue:g,controlled:c.type==="checkbox"||c.type==="radio"?c.checked!=null:c.value!=null}}function Fe(a,c){c=c.checked,c!=null&&I(a,"checked",c,!1)}function st(a,c){Fe(a,c);var g=Ge(c.value),w=c.type;if(g!=null)w==="number"?(g===0&&a.value===""||a.value!=g)&&(a.value=""+g):a.value!==""+g&&(a.value=""+g);else if(w==="submit"||w==="reset"){a.removeAttribute("value");return}c.hasOwnProperty("value")?St(a,c.type,g):c.hasOwnProperty("defaultValue")&&St(a,c.type,Ge
vendor: 4,273 bytes, line 37
37(c.defaultValue)),c.checked==null&&c.defaultChecked!=null&&(a.defaultChecked=!!c.defaultChecked)}function Ve(a,c,g){if(c.hasOwnProperty("value")||c.hasOwnProperty("defaultValue")){var w=c.type;if(!(w!=="submit"&&w!=="reset"||c.value!==void 0&&c.value!==null))return;c=""+a._wrapperState.initialValue,g||c===a.value||(a.value=c),a.defaultValue=c}g=a.name,g!==""&&(a.name=""),a.defaultChecked=!!a._wrapperState.initialChecked,g!==""&&(a.name=g)}function St(a,c,g){(c!=="number"||Oe(a.ownerDocument)!==a)&&(g==null?a.defaultValue=""+a._wrapperState.initialValue:a.defaultValue!==""+g&&(a.defaultValue=""+g))}var $e=Array.isArray;function J(a,c,g,w){if(a=a.options,c){c={};for(var C=0;C<g.length;C++)c["$"+g[C]]=!0;for(g=0;g<a.length;g++)C=c.hasOwnProperty("$"+a[g].value),a[g].selected!==C&&(a[g].selected=C),C&&w&&(a[g].defaultSelected=!0)}else{for(g=""+Ge(g),c=null,C=0;C<a.length;C++){if(a[C].value===g){a[C].selected=!0,w&&(a[C].defaultSelected=!0);return}c!==null||a[C].disabled||(c=a[C])}c!==null&&(c.selected=!0)}}function G(a,c){if(c.dangerouslySetInnerHTML!=null)throw Error(t(91));return q({},c,{value:void 0,defaultValue:void 0,children:""+a._wrapperState.initialValue})}function ee(a,c){var g=c.value;if(g==null){if(g=c.children,c=c.defaultValue,g!=null){if(c!=null)throw Error(t(92));if($e(g)){if(1<g.length)throw Error(t(93));g=g[0]}c=g}c==null&&(c=""),g=c}a._wrapperState={initialValue:Ge(g)}}function ye(a,c){var g=Ge(c.value),w=Ge(c.defaultValue);g!=null&&(g=""+g,g!==a.value&&(a.value=g),c.defaultValue==null&&a.defaultValue!==g&&(a.defaultValue=g)),w!=null&&(a.defaultValue=""+w)}function Pe(a){var c=a.textContent;c===a._wrapperState.initialValue&&c!==""&&c!==null&&(a.value=c)}function be(a){switch(a){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function et(a,c){return a==null||a==="http://www.w3.org/1999/xhtml"?be(c):a==="http://www.w3.org/2000/svg"&&c==="foreignObject"?"http://www.w3.org/1999/xhtml":a}var Je,Qe=function(a){return typeof MSApp<"u"&&MSApp.execUnsafeLocalFunction?function(c,g,w,C){MSApp.execUnsafeLocalFunction(function(){return a(c,g,w,C)})}:a}(function(a,c){if(a.namespaceURI!=="http://www.w3.org/2000/svg"||"innerHTML"in a)a.innerHTML=c;else{for(Je=Je||document.createElement("div"),Je.innerHTML="<svg>"+c.valueOf().toString()+"</svg>",c=Je.firstChild;a.firstChild;)a.removeChild(a.firstChild);for(;c.firstChild;)a.appendChild(c.firstChild)}});function Ht(a,c){if(c){var g=a.firstChild;if(g&&g===a.lastChild&&g.nodeType===3){g.nodeValue=c;return}}a.textContent=c}var Ue={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},ut=["Webkit","ms","Moz","O"];Object.keys(Ue).forEach(function(a){ut.forEach(function(c){c=c+a.charAt(0).toUpperCase()+a.substring(1),Ue[c]=Ue[a]})});function Ct(a,c,g){return c==null||typeof c=="boolean"||c===""?"":g||typeof c!="number"||c===0||Ue.hasOwnProperty(a)&&Ue[a]?(""+c).trim():c+"px"}function Rt(a,c){a=a.style;for(var g in c)if(c.hasOwnProperty(g)){var w=g.indexOf("--")===0,C=Ct(g,c[g],w);g==="float"&&(g="cssFloat"),w?a.setProperty(g,C):a[g]=C}}var ht=q({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function $t(a,c){if(c){if(ht[a]&&(c.children!=null||c.dangerouslySetInnerHTML!=null))throw Error(t(137,a));if(c.dangerouslySetInnerHTML!=null){if(c.children!=null)throw Error(t(60));if(typeof c.dangerouslySetInnerHTML!="object"||!("__html"in c.dangerouslySetInnerHTML))throw Error(t(61))}if(c.style!=null&&typeof c.style!="object")throw Error(t(62))}}function kt(a,c){if(a.indexOf("-")===-1)return typeof c.is=="str
37ing";switch(a){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var pn=null;function ue(a){return a=a.target||a.srcElement||window,a.correspondingUseElement&&(a=a.correspondingUseElement),a.nodeType===3?a.parentNode:a}var Ze=null,Ce=null,De=null;function ot(a){if(a=Zs(a)){if(typeof Ze!="function")throw Error(t(280));var c=a.stateNode;c&&(c=Rh(c),Ze(a.stateNode,a.type,c))}}function nt(a){Ce?De?De.push(a):De=[a]:Ce=a}function Gt(){if(Ce){var a=Ce,c=De;if(De=Ce=null,ot(a),c)for(a=0;a<c.length;a++)ot(c[a])}}function Bn(a,c){return a(c)}function tr(){}var un=!1;function Hr(a,c,g){if(un)return a(c,g);un=!0;try{return Bn(a,c,g)}finally{un=!1,(Ce!==null||De!==null)&&(tr(),Gt())}}function Gr(a,c){var g=a.stateNode;if(g===null)return null;var w=Rh(g);if(w===null)return null;g=w[c];e:switch(c){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(w=!w.disabled)||(a=a.type,w=!(a==="button"||a==="input"||a==="select"||a==="textarea")),a=!w;break e;default:a=!1}if(a)return null;if(g&&typeof g!="function")throw Error(t(231,c,typeof g));return g}var al=!1;if(l)try{var Po={};Object.defineProperty(Po,"passive",{get:function(){al=!0}}),window.addEventListener("test",Po,Po),window.removeEventListener("test",Po,Po)}catch{al=!1}function ws(a,c,g,w,C,B,j,Q,ie){var Se=Array.prototype.slice.call(arguments,3);try{c.apply(g,Se)}catch(je){this.onError(je)}}var ns=!1,ra=null,rs=!1,Ro=null,Xu={onError:function(a){ns=!0,ra=a}};function ll(a,c,g,w,C,B,j,Q,ie){ns=!1,ra=null,ws.apply(Xu,arguments)}function Ju(a,c,g,w,C,B,j,Q,ie){if(ll.apply(this,arguments),ns){if(ns){var Se=ra;ns=!1,ra=null}else throw Error(t(198));rs||(rs=!0,Ro=Se)}}function As(a){var c=a,g=a;if(a.alternate)for(;c.return;)c=c.return;else{a=c;do c=a,c.flags&4098&&(g=c.return),a=c.return;while(a)}return c.tag===3?g:null}function $u(a){if(a.tag===13){var c=a.memoizedState;if(c===null&&(a=a.alternate,a!==null&&(c=a.memoizedState)),c!==null)return c.dehydrated}return null}function Ku(a){if(As(a)!==a)throw Error(t(188))}function Yu(a){var c=a.alternate;if(!c){if(c=As(a),c===null)throw Error(t(188));return c!==a?null:a}for(var g=a,w=c;;){var C=g.return;if(C===null)break;var B=C.alternate;if(B===null){if(w=C.return,w!==null){g=w;continue}break}if(C.child===B.child){for(B=C.child;B;){if(B===g)return Ku(C),a;if(B===w)return Ku(C),c;B=B.sibling}throw Error(t(188))}if(g.return!==w.return)g=C,w=B;else{for(var j=!1,Q=C.child;Q;){if(Q===g){j=!0,g=C,w=B;break}if(Q===w){j=!0,w=C,g=B;break}Q=Q.sibling}if(!j){for(Q=B.child;Q;){if(Q===g){j=!0,g=B,w=C;break}if(Q===w){j=!0,w=B,g=C;break}Q=Q.sibling}if(!j)throw Error(t(189))}}if(g.alternate!==w)throw Error(t(190))}if(g.tag!==3)throw Error(t(188));return g.stateNode.current===g?a:c}function qu(a){return a=Yu(a),a!==null?Qu(a):null}function Qu(a){if(a.tag===5||a.tag===6)return a;for(a=a.child;a!==null;){var c=Qu(a);if(c!==null)return c;a=a.sibling}return null}var W=e.unstable_scheduleCallback,de=e.unstable_cancelCallback,Me=e.unstable_shouldYield,we=e.unstable_requestPaint,oe=e.unstable_now,ze=e.unstable_getCurrentPriorityLevel,Ye=e.unstable_ImmediatePriority,ct=e.unstable_UserBlockingPriority,mt=e.unstable_NormalPriority,Ut=e.unstable_LowPriority,Bt=e.unstable_IdlePriority,yt=null,dt=null;function Tt(a){if(dt&&typeof dt.onCommitFiberRoot=="function")try{dt.onCommitFiberRoot(yt,a,void 0,(a.current.flags&128)===128)}catch{}}var rn=Math.clz32?Math.clz32:wt,sn=Math.log,zt=Math.LN2;function wt(a){return a>>>=0,a===0?32:31-(sn(a)/zt|0)|0}var En=64,jt=4194304;function nr(a){switch(a&-a){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return a&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return a&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return a}}function Fi(a,c){var g=a.pendingLanes;if(g===0)return 0;var w=0,C=a.suspendedLanes,B=a.pingedLanes,j=g&268435455;if(j!==0){var Q=j&~C;
vendor: 4,153 bytes, line 37
37Q!==0?w=nr(Q):(B&=j,B!==0&&(w=nr(B)))}else j=g&~C,j!==0?w=nr(j):B!==0&&(w=nr(B));if(w===0)return 0;if(c!==0&&c!==w&&!(c&C)&&(C=w&-w,B=c&-c,C>=B||C===16&&(B&4194240)!==0))return c;if(w&4&&(w|=g&16),c=a.entangledLanes,c!==0)for(a=a.entanglements,c&=w;0<c;)g=31-rn(c),C=1<<g,w|=a[g],c&=~C;return w}function Rr(a,c){switch(a){case 1:case 2:case 4:return c+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return c+5e3;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return-1;case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Es(a,c){for(var g=a.suspendedLanes,w=a.pingedLanes,C=a.expirationTimes,B=a.pendingLanes;0<B;){var j=31-rn(B),Q=1<<j,ie=C[j];ie===-1?(!(Q&g)||Q&w)&&(C[j]=Rr(Q,c)):ie<=c&&(a.expiredLanes|=Q),B&=~Q}}function Sn(a){return a=a.pendingLanes&-1073741825,a!==0?a:a&1073741824?1073741824:0}function On(){var a=En;return En<<=1,!(En&4194240)&&(En=64),a}function Br(a){for(var c=[],g=0;31>g;g++)c.push(a);return c}function Jn(a,c,g){a.pendingLanes|=c,c!==536870912&&(a.suspendedLanes=0,a.pingedLanes=0),a=a.eventTimes,c=31-rn(c),a[c]=g}function Or(a,c){var g=a.pendingLanes&~c;a.pendingLanes=c,a.suspendedLanes=0,a.pingedLanes=0,a.expiredLanes&=c,a.mutableReadLanes&=c,a.entangledLanes&=c,c=a.entanglements;var w=a.eventTimes;for(a=a.expirationTimes;0<g;){var C=31-rn(g),B=1<<C;c[C]=0,w[C]=-1,a[C]=-1,g&=~B}}function bs(a,c){var g=a.entangledLanes|=c;for(a=a.entanglements;g;){var w=31-rn(g),C=1<<w;C&c|a[w]&c&&(a[w]|=c),g&=~C}}var en=0;function cl(a){return a&=-a,1<a?4<a?a&268435455?16:536870912:4:1}var hc,sf,wm,Zu,eh,ia=!1,th=[],Cs=null,on=null,Ws=null,sa=new Map,ul=new Map,Bo=[],w1="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" ");function ar(a,c){switch(a){case"focusin":case"focusout":Cs=null;break;case"dragenter":case"dragleave":on=null;break;case"mouseover":case"mouseout":Ws=null;break;case"pointerover":case"pointerout":sa.delete(c.pointerId);break;case"gotpointercapture":case"lostpointercapture":ul.delete(c.pointerId)}}function oa(a,c,g,w,C,B){return a===null||a.nativeEvent!==B?(a={blockedOn:c,domEventName:g,eventSystemFlags:w,nativeEvent:B,targetContainers:[C]},c!==null&&(c=Zs(c),c!==null&&sf(c)),a):(a.eventSystemFlags|=w,c=a.targetContainers,C!==null&&c.indexOf(C)===-1&&c.push(C),a)}function A1(a,c,g,w,C){switch(c){case"focusin":return Cs=oa(Cs,a,c,g,w,C),!0;case"dragenter":return on=oa(on,a,c,g,w,C),!0;case"mouseover":return Ws=oa(Ws,a,c,g,w,C),!0;case"pointerover":var B=C.pointerId;return sa.set(B,oa(sa.get(B)||null,a,c,g,w,C)),!0;case"gotpointercapture":return B=C.pointerId,ul.set(B,oa(ul.get(B)||null,a,c,g,w,C)),!0}return!1}function nh(a){var c=Uo(a.target);if(c!==null){var g=As(c);if(g!==null){if(c=g.tag,c===13){if(c=$u(g),c!==null){a.blockedOn=c,eh(a.priority,function(){wm(g)});return}}else if(c===3&&g.stateNode.current.memoizedState.isDehydrated){a.blockedOn=g.tag===3?g.stateNode.containerInfo:null;return}}}a.blockedOn=null}function rh(a){if(a.blockedOn!==null)return!1;for(var c=a.targetContainers;0<c.length;){var g=Ui(a.domEventName,a.eventSystemFlags,c[0],a.nativeEvent);if(g===null){g=a.nativeEvent;var w=new g.constructor(g.type,g);pn=w,g.target.dispatchEvent(w),pn=null}else return c=Zs(g),c!==null&&sf(c),a.blockedOn=g,!1;c.shift()}return!0}function dc(a,c,g){rh(a)&&g.delete(c)}function Ts(){ia=!1,Cs!==null&&rh(Cs)&&(Cs=null),on!==null&&rh(on)&&(on=null),Ws!==null&&rh(Ws)&&(Ws=null),sa.forEach(dc),ul.forEach(dc)}function fc(a,c){a.blockedOn===c&&(a.blockedOn=null,ia||(ia=!0,e.unstable_scheduleCallback(e.unstable_NormalPriority,Ts)))}function pc(a){function c(C){return fc(C,a)}if(0<th.length){fc(th[0],a);for(var g=1;g<th.length;g++){var w=th[g];w.blockedOn===a&&(w.blockedOn=null)}}for(Cs!==null&&fc(Cs,a),on!==null&&fc(on,a),Ws!==null&&fc(Ws,a),sa.forEac
vendor: 15,248 bytes, line 37
37h(c),ul.forEach(c),g=0;g<Bo.length;g++)w=Bo[g],w.blockedOn===a&&(w.blockedOn=null);for(;0<Bo.length&&(g=Bo[0],g.blockedOn===null);)nh(g),g.blockedOn===null&&Bo.shift()}var Vr=P.ReactCurrentBatchConfig,ki=!0;function ih(a,c,g,w){var C=en,B=Vr.transition;Vr.transition=null;try{en=1,sh(a,c,g,w)}finally{en=C,Vr.transition=B}}function of(a,c,g,w){var C=en,B=Vr.transition;Vr.transition=null;try{en=4,sh(a,c,g,w)}finally{en=C,Vr.transition=B}}function sh(a,c,g,w){if(ki){var C=Ui(a,c,g,w);if(C===null)Eh(a,c,w,oh,g),ar(a,w);else if(A1(C,a,c,g,w))w.stopPropagation();else if(ar(a,w),c&4&&-1<w1.indexOf(a)){for(;C!==null;){var B=Zs(C);if(B!==null&&hc(B),B=Ui(a,c,g,w),B===null&&Eh(a,c,w,oh,g),B===C)break;C=B}C!==null&&w.stopPropagation()}else Eh(a,c,w,null,g)}}var oh=null;function Ui(a,c,g,w){if(oh=null,a=ue(w),a=Uo(a),a!==null)if(c=As(a),c===null)a=null;else if(g=c.tag,g===13){if(a=$u(c),a!==null)return a;a=null}else if(g===3){if(c.stateNode.current.memoizedState.isDehydrated)return c.tag===3?c.stateNode.containerInfo:null;a=null}else c!==a&&(a=null);return oh=a,null}function Am(a){switch(a){case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 1;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"toggle":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 4;case"message":switch(ze()){case Ye:return 1;case ct:return 4;case mt:case Ut:return 16;case Bt:return 536870912;default:return 16}default:return 16}}var is=null,af=null,ti=null;function mc(){if(ti)return ti;var a,c=af,g=c.length,w,C="value"in is?is.value:is.textContent,B=C.length;for(a=0;a<g&&c[a]===C[a];a++);var j=g-a;for(w=1;w<=j&&c[g-w]===C[B-w];w++);return ti=C.slice(a,1<w?1-w:void 0)}function aa(a){var c=a.keyCode;return"charCode"in a?(a=a.charCode,a===0&&c===13&&(a=13)):a=c,a===10&&(a=13),32<=a||a===13?a:0}function Xs(){return!0}function ah(){return!1}function Wr(a){function c(g,w,C,B,j){this._reactName=g,this._targetInst=C,this.type=w,this.nativeEvent=B,this.target=j,this.currentTarget=null;for(var Q in a)a.hasOwnProperty(Q)&&(g=a[Q],this[Q]=g?g(B):B[Q]);return this.isDefaultPrevented=(B.defaultPrevented!=null?B.defaultPrevented:B.returnValue===!1)?Xs:ah,this.isPropagationStopped=ah,this}return q(c.prototype,{preventDefault:function(){this.defaultPrevented=!0;var g=this.nativeEvent;g&&(g.preventDefault?g.preventDefault():typeof g.returnValue!="unknown"&&(g.returnValue=!1),this.isDefaultPrevented=Xs)},stopPropagation:function(){var g=this.nativeEvent;g&&(g.stopPropagation?g.stopPropagation():typeof g.cancelBubble!="unknown"&&(g.cancelBubble=!0),this.isPropagationStopped=Xs)},persist:function(){},isPersistent:Xs}),c}var la={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(a){return a.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},gc=Wr(la),ca=q({},la,{view:0,detail:0}),hl=Wr(ca),ni,ji,zi,dl=q({},ca,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Do,button:0,buttons:0,relatedTarget:function(a){return a.relatedTarget===void 0?a.fromElement===a.srcElement?a.toElement:a.fromElement:a.relatedTarget},movementX:function(a){return"movementX"in a?a.movementX:(a!==zi&&(zi&&a.type==="mousemove"?(ni=a.screenX-zi.screenX,ji=a.screenY-zi.screenY):ji=ni=0,zi=a),ni)},movementY:function(a){return"movementY"in a?a.movementY:ji}}),lf=Wr(dl),Js=q({},dl,{dataTransfer:0}),Oo=Wr(Js),lh=q({},ca,{relatedTarget:0}),ch=Wr(lh),uh=q({},la,{animationName:0,elapsedTime:0,pseudoElement:0}),Em=Wr(uh),bm=q({},la,{clipboardData:function(a){return"clipboardData"in a?a.clipboardData:window.clipboardData}}),cf=Wr(bm),hh=q({},la,{data:0}),uf=Wr(hh),Cm={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},Tm={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},hf={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function fl(a){var c=this.nativeEvent;return c.getModifierState?c.getModifierState(a):(a=hf[a])?!!c[a]:!1}function Do(){return fl}var dh=q({},ca,{key:function(a){if(a.key){var c=Cm[a.key]||a.key;if(c!=="Unidentified")return c}return a.type==="keypress"?(a=aa(a),a===13?"Enter":String.fromCharCode(a)):a.type==="keydown"||a.type==="keyup"?Tm[a.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Do,charCode:function(a){return a.type==="keypress"?aa(a):0},keyCode:function(a){return a.type==="keydown"||a.type==="keyup"?a.keyCode:0},which:function(a){return a.type==="keypress"?aa(a):a.type==="keydown"||a.type==="keyup"?a.keyCode:0}}),fh=Wr(dh),Hi=q({},dl,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),vi=Wr(Hi),ua=q({},ca,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Do}),$s=Wr(ua),Ks=q({},la,{propertyName:0,elapsedTime:0,pseudoElement:0}),ha=Wr(Ks),Im=q({},dl,{deltaX:function(a){return"deltaX"in a?a.deltaX:"wheelDeltaX"in a?-a.wheelDeltaX:0},deltaY:function(a){return"deltaY"in a?a.deltaY:"wheelDeltaY"in a?-a.wheelDeltaY:"wheelDelta"in a?-a.wheelDelta:0},deltaZ:0,deltaMode:0}),df=Wr(Im),ff=[9,13,27,32],Xr=l&&"CompositionEvent"in window,Sr=null;l&&"documentMode"in document&&(Sr=document.documentMode);var Nn=l&&"TextEvent"in window&&!Sr,pl=l&&(!Xr||Sr&&8<Sr&&11>=Sr),Gi=" ",pf=!1;function mf(a,c){switch(a){case"keyup":return ff.indexOf(c.keyCode)!==-1;case"keydown":return c.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function ph(a){return a=a.detail,typeof a=="object"&&"data"in a?a.data:null}var Lo=!1;function Pm(a,c){switch(a){case"compositionend":return ph(c);case"keypress":return c.which!==32?null:(pf=!0,Gi);case"textInput":return a=c.data,a===Gi&&pf?null:a;default:return null}}function yc(a,c){if(Lo)return a==="compositionend"||!Xr&&mf(a,c)?(a=mc(),ti=af=is=null,Lo=!1,a):null;switch(a){case"paste":return null;case"keypress":if(!(c.ctrlKey||c.altKey||c.metaKey)||c.ctrlKey&&c.altKey){if(c.char&&1<c.char.length)return c.char;if(c.which)return String.fromCharCode(c.which)}return null;case"compositionend":return pl&&c.locale!=="ko"?null:c.data;default:return null}}var ml={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function mh(a){var c=a&&a.nodeName&&a.nodeName.toLowerCase();return c==="input"?!!ml[a.type]:c==="textarea"}function gl(a,c,g,w){nt(w),c=bh(c,"onChange"),0<c.length&&(g=new gc("onChange","change",null,g,w),a.push({event:g,listeners:c}))}var No=null,yl=null;function Rm(a){Ml(a,0)}function Ys(a){var c=$n(a);if(Be(c))return a}function Bm(a,c){if(a==="change")return c}var vl=!1;if(l){var ri;if(l){var da="oninput"in document;if(!da){var fa=document.createElement("div");fa.setAttribute("oninput","return;"),da=typeof fa.oninput=="function"}ri=da}else ri=!1;vl=ri&&(!document.documentMode||9<document.documentMode)}function ss(){No&&(No.detachEvent("onpropertychange",gh),yl=No=null)}function gh(a){if(a.propertyName==="value"&&Ys(yl)){var c=[];gl(c,yl,a,ue(a)),Hr(Rm,c)}}function _l(a,c,g){a==="focusin"?(ss(),No=c,yl=g,No.attachEvent("onpropertychange",gh)):a==="focusout"&&ss()}function Om(a){if(a==="selectionchange"||a==="keyup"||a==="keydown")return Ys(yl)}function gf(a,c){if(a==="click")return Ys(c)}function jn(a,c){if(a==="input"||a==="change")return Ys(c)}function yh(a,c){return a===c&&(a!==0||1/a===1/c)||a!==a&&c!==c}var _i=typeof Object.is=="function"?Object.is:yh;function pa(a,c){if(_i(a,c))return!0;if(typeof a!="object"||a===null||typeof c!="object"||c===null)return!1;var g=Object.keys(a),w=Object.keys(c);if(g.length!==w.length)return!1;for(w=0;w<g.length;w++){var C=g[w];if(!u.call(c,C)||!_i(a[C],c[C]))return!1}return!0}function vc(a){for(;a&&a.firstChild;)a=a.firstChild;return a}function xi(a,c){var g=vc(a);a=0;for(var w;g;){if(g.nodeType===3){if(w=a+g.textContent.length,a<=c&&w>=c)return{node:g,offset:c-a};a=w}e:{for(;g;){if(g.nextSibling){g=g.nextSibling;break e}g=g.parentNode}g=void 0}g=vc(g)}}function ma(a,c){return a&&c?a===c?!0:a&&a.nodeType===3?!1:c&&c.nodeType===3?ma(a,c.parentNode):"contains"in a?a.contains(c):a.compareDocumentPosition?!!(a.compareDocumentPosition(c)&16):!1:!1}function zn(){for(var a=window,c=Oe();c instanceof a.HTMLIFrameElement;){try{var g=typeof c.contentWindow.location.href=="string"}catch{g=!1}if(g)a=c.contentWindow;else break;c=Oe(a.document)}return c}function dr(a){var c=a&&a.nodeName&&a.nodeName.toLowerCase();return c&&(c==="input"&&(a.type==="text"||a.type==="search"||a.type==="tel"||a.type==="url"||a.type==="password")||c==="textarea"||a.contentEditable==="true")}function fr(a){var c=zn(),g=a.focusedElem,w=a.selectionRange;if(c!==g&&g&&g.ownerDocument&&ma(g.ownerDocument.documentElement,g)){if(w!==null&&dr(g)){if(c=w.start,a=w.end,a===void 0&&(a=c),"selectionStart"in g)g.selectionStart=c,g.selectionEnd=Math.min(a,g.value.length);else if(a=(c=g.ownerDocument||document)&&c.defaultView||window,a.getSelection){a=a.getSelection();var C=g.textContent.length,B=Math.min(w.start,C);w=w.end===void 0?B:Math.min(w.end,C),!a.extend&&B>w&&(C=w,w=B,B=C),C=xi(g,B);var j=xi(g,w);C&&j&&(a.rangeCount!==1||a.anchorNode!==C.node||a.anchorOffset!==C.offset||a.focusNode!==j.node||a.focusOffset!==j.offset)&&(c=c.createRange(),c.setStart(C.node,C.offset),a.removeAllRanges(),B>w?(a.addRange(c),a.extend(j.node,j.offset)):(c.setEnd(j.node,j.offset),a.addRange(c)))}}for(c=[],a=g;a=a.parentNode;)a.nodeType===1&&c.push({element:a,left:a.scrollLeft,top:a.scrollTop});for(typeof g.focus=="function"&&g.focus(),g=0;g<c.length;g++)a=c[g],a.element.scrollLeft=a.left,a.element.scrollTop=a.top}}var vh=l&&"documentMode"in document&&11>=document.documentMode,Is=null,ga=null,_c=null,pr=!1;function _h(a,c,g){var w=g.window===g?g.document:g.nodeType===9?g:g.ownerDocument;pr||Is==null||Is!==Oe(w)||(w=Is,"selectionStart"in w&&dr(w)?w={start:w.selectionStart,end:w.selectionEnd}:(w=(w.ownerDocument&&w.ownerDocument.defaultView||window).getSelection(),w={anchorNode:w.anchorNode,anchorOffset:w.anchorOffset,focusNode:w.focusNode,focusOffset:w.focusOffset}),_c&&pa(_c,w)||(_c=w,w=bh(ga,"onSelect"),0<w.length&&(c=new gc("onSelect","select",null,c,g),a.push({event:c,listeners:w}),c.target=Is)))}function xl(a,c){var g={};return g[a.toLowerCase()]=c.toLowerCase(),g["Webkit"+a]="webkit"+c,g["Moz"+a]="moz"+c,g}var Fo={animationend:xl("Animation","AnimationEnd"),animationiteration:xl("Animation","AnimationIteration"),animationstart:xl("Animation","AnimationStart"),transitionend:xl("Transition","TransitionEnd")},os={},as={};l&&(as=document.createElement("div").style,"AnimationEvent"in window||(delete Fo.animationend.animation,delete Fo.animationiteration.animation,delete Fo.animationstart.animation),"TransitionEvent"in window||delete Fo.transitionend.transition);function Ps(a){if(os[a])return os[a];if(!Fo[a])return a;var c=Fo[a],g;for(g in c)if(c.hasOwnProperty(g)&&g in as)return os[a]=c[g];return a}var xc=Ps("animationend"),Mc=Ps("animationiteration"),yf=Ps("animationstart"),vf=Ps("transitionend"),_f=new Map,xf="abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");function qs(a,c){_f.set(a,c),s(c,[a])}for(var xh=0;xh<xf.length;xh++){var Sc=xf[xh],wc=Sc.toLowerCase(),Dm=Sc[0].toUpperCase()+Sc.slice(1);qs(wc,"on"+Dm)}qs(xc,"onAnimationEnd"),qs(Mc,"onAnimationIteration"),qs(yf,"onAnimationStart"),qs("dblclick","onDoubleClick"),qs("focusin","onFocus"),qs("focusout","onBlur"),qs(vf,"onTransitionEnd"),o("onMouseEnter",["mouseout","mouseover"]),o("onMouseLeave",["mouseout","mouseover"]),o("onPointerEnter",["pointerout","pointerover"]),o("onPointerLeave",["pointerout","pointerover"]),s("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),s("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),s("onBeforeInput",["compositionend","keypress","textInput","paste"]),s("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),s("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),s("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var ko="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),Mh=new Set("cancel close invalid load scroll toggle".split(" ").concat(ko));function Sh(a,c,g){var w=a.type||"unknown-event";a.currentTarget=g,Ju(w,c,void 0,a),a.currentTarget=null}function Ml(a,c){c=(c&4)!==0;for(var g=0;g<a.length;g++){var w=a[g],C=w.event;w=w.listeners;e:{var B=void 0;if(c)for(var j=w.length-1;0<=j;j--){var Q=w[j],ie=Q.instance,Se=Q.currentTarget;if(Q=Q.listener,ie!==B&&C.isPropagationStopped())break e;Sh(C,Q,Se),B=ie}else for(j=0;j<w.length;j++){if(Q=w[j],ie=Q.instance,Se=Q.currentTarget,Q=Q.listener,ie!==B&&C.isPropagationStopped())break e;Sh(C,Q,Se),B=ie}}}if(rs)throw a=Ro,rs=!1,Ro=null,a}function Tn(a,c){var g=c[_a];g===void 0&&(g=c[_a]=new Set);var w=a+"__bubble";g.has(w)||(Ah(c,a,2,!1),g.add(w))}function wh(a,c,g){var w=0;c&&(w|=4),Ah(g,a,w,c)}var Ac="_reactListening"+Math.random().toString(36).slice(2);
vendor: 5,646 bytes, line 37
37function Sl(a){if(!a[Ac]){a[Ac]=!0,n.forEach(function(g){g!=="selectionchange"&&(Mh.has(g)||wh(g,!1,a),wh(g,!0,a))});var c=a.nodeType===9?a:a.ownerDocument;c===null||c[Ac]||(c[Ac]=!0,wh("selectionchange",!1,c))}}function Ah(a,c,g,w){switch(Am(c)){case 1:var C=ih;break;case 4:C=of;break;default:C=sh}g=C.bind(null,c,g,a),C=void 0,!al||c!=="touchstart"&&c!=="touchmove"&&c!=="wheel"||(C=!0),w?C!==void 0?a.addEventListener(c,g,{capture:!0,passive:C}):a.addEventListener(c,g,!0):C!==void 0?a.addEventListener(c,g,{passive:C}):a.addEventListener(c,g,!1)}function Eh(a,c,g,w,C){var B=w;if(!(c&1)&&!(c&2)&&w!==null)e:for(;;){if(w===null)return;var j=w.tag;if(j===3||j===4){var Q=w.stateNode.containerInfo;if(Q===C||Q.nodeType===8&&Q.parentNode===C)break;if(j===4)for(j=w.return;j!==null;){var ie=j.tag;if((ie===3||ie===4)&&(ie=j.stateNode.containerInfo,ie===C||ie.nodeType===8&&ie.parentNode===C))return;j=j.return}for(;Q!==null;){if(j=Uo(Q),j===null)return;if(ie=j.tag,ie===5||ie===6){w=B=j;continue e}Q=Q.parentNode}}w=w.return}Hr(function(){var Se=B,je=ue(g),He=[];e:{var ke=_f.get(a);if(ke!==void 0){var ft=gc,xt=a;switch(a){case"keypress":if(aa(g)===0)break e;case"keydown":case"keyup":ft=fh;break;case"focusin":xt="focus",ft=ch;break;case"focusout":xt="blur",ft=ch;break;case"beforeblur":case"afterblur":ft=ch;break;case"click":if(g.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":ft=lf;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":ft=Oo;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":ft=$s;break;case xc:case Mc:case yf:ft=Em;break;case vf:ft=ha;break;case"scroll":ft=hl;break;case"wheel":ft=df;break;case"copy":case"cut":case"paste":ft=cf;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":ft=vi}var Mt=(c&4)!==0,cr=!Mt&&a==="scroll",ve=Mt?ke!==null?ke+"Capture":null:ke;Mt=[];for(var ae=Se,_e;ae!==null;){_e=ae;var Xe=_e.stateNode;if(_e.tag===5&&Xe!==null&&(_e=Xe,ve!==null&&(Xe=Gr(ae,ve),Xe!=null&&Mt.push(wl(ae,Xe,_e)))),cr)break;ae=ae.return}0<Mt.length&&(ke=new ft(ke,xt,null,g,je),He.push({event:ke,listeners:Mt}))}}if(!(c&7)){e:{if(ke=a==="mouseover"||a==="pointerover",ft=a==="mouseout"||a==="pointerout",ke&&g!==pn&&(xt=g.relatedTarget||g.fromElement)&&(Uo(xt)||xt[Mi]))break e;if((ft||ke)&&(ke=je.window===je?je:(ke=je.ownerDocument)?ke.defaultView||ke.parentWindow:window,ft?(xt=g.relatedTarget||g.toElement,ft=Se,xt=xt?Uo(xt):null,xt!==null&&(cr=As(xt),xt!==cr||xt.tag!==5&&xt.tag!==6)&&(xt=null)):(ft=null,xt=Se),ft!==xt)){if(Mt=lf,Xe="onMouseLeave",ve="onMouseEnter",ae="mouse",(a==="pointerout"||a==="pointerover")&&(Mt=vi,Xe="onPointerLeave",ve="onPointerEnter",ae="pointer"),cr=ft==null?ke:$n(ft),_e=xt==null?ke:$n(xt),ke=new Mt(Xe,ae+"leave",ft,g,je),ke.target=cr,ke.relatedTarget=_e,Xe=null,Uo(je)===Se&&(Mt=new Mt(ve,ae+"enter",xt,g,je),Mt.target=_e,Mt.relatedTarget=cr,Xe=Mt),cr=Xe,ft&&xt)t:{for(Mt=ft,ve=xt,ae=0,_e=Mt;_e;_e=ya(_e))ae++;for(_e=0,Xe=ve;Xe;Xe=ya(Xe))_e++;for(;0<ae-_e;)Mt=ya(Mt),ae--;for(;0<_e-ae;)ve=ya(ve),_e--;for(;ae--;){if(Mt===ve||ve!==null&&Mt===ve.alternate)break t;Mt=ya(Mt),ve=ya(ve)}Mt=null}else Mt=null;ft!==null&&Lm(He,ke,ft,Mt,!1),xt!==null&&cr!==null&&Lm(He,cr,xt,Mt,!0)}}e:{if(ke=Se?$n(Se):window,ft=ke.nodeName&&ke.nodeName.toLowerCase(),ft==="select"||ft==="input"&&ke.type==="file")var bt=Bm;else if(mh(ke))if(vl)bt=jn;else{bt=Om;var Dt=_l}else(ft=ke.nodeName)&&ft.toLowerCase()==="input"&&(ke.type==="checkbox"||ke.type==="radio")&&(bt=gf);if(bt&&(bt=bt(a,Se))){gl(He,bt,g,je);break e}Dt&&Dt(a,ke,Se),a==="focusout"&&(Dt=ke._wrapperState)&&Dt.controlled&&ke.type==="number"&&St(ke,"number",ke.value)}switch(Dt=Se?$n(Se):window,a){case"focusin":(mh(Dt)||Dt.contentEditable==="true")&&(Is=Dt,ga=Se,_c=null);break;case"focusout":_c=ga=Is=null;break;case"mousedown":pr=!0;break;case"contextmenu":case"mouseup":case"dragend":pr=!1,_h(He,g,je);break;case"selectionchange":if(vh)break;case"keydown":case"keyup":_h(He,g,je)}var Lt;if(Xr)e:{switch(a){case"compositionstart":var Vt="onCompositionStart";break e;case"compositionend":Vt="onCompositionEnd";break e;case"compositionupdate":Vt="onCompositionUpdate";break e}Vt=void 0}else Lo?mf(a,g)&&(Vt="onCompositionEnd"):a==="keydown"&&g.keyCode===229&&(Vt="onCompositionStart");Vt&&(pl&&g.locale!=="ko"&&(Lo||Vt!=="onCompositionStart"?Vt==="onCompositionEnd"&&Lo&&(Lt=mc()):(is=je,af="value"in is?is.value:is.textContent,Lo=!0)),Dt=bh(Se,Vt),0<Dt.length&&(Vt=new uf(Vt,a,null,g,je),He.push({event:Vt,listeners:Dt}),Lt?Vt.data=Lt:(Lt=ph(g),Lt!==null&&(Vt.data=Lt)))),(Lt=Nn?Pm(a,g):yc(a,g))&&(Se=bh(Se,"onBeforeInput"),0<Se.length&&(je=new uf("onBeforeInput","beforeinput",null,g,je),He.push({event:je,listeners:Se}),je.data=Lt))}Ml(He,c)})}function wl(a,c,g){return{instance:a,listener:c,currentTarget:g}}function bh(a,c){for(var g=c+"Capture",w=[];a!==null;){var C=a,B=C.stateNode;C.tag===5&&B!==null&&(C=B,B=Gr(a,g),B!=null&&w.unshift(wl(a,B,C)),B=Gr(a,c),B!=null&&w.push(wl(a,B,C))),a=a.return}return w}function ya(a){if(a===null)return null;do a=a.return;while(a&&a.tag!==5);return a||null}function Lm(a,c,g,w,C){for(var B=c._reactName,j=[];g!==null&&g!==w;){var Q=g,ie=Q.alternate,Se=Q.stateNode;if(ie!==null&&ie===w)break;Q.tag===5&&Se!==null&&(Q=Se,C?(ie=Gr(g,B),ie!=null&&j.unshift(wl(g,ie,Q))):C||(ie=Gr(g,B),ie!=null&&j.push(wl(g,ie,Q)))),g=g.return}j.length!==0&&a.push({event:c,listeners:j})}var E1=/\r\n?/g,Nm=/\u0000|\uFFFD/g;
vendor: 4,095 bytes, lines 37-38
37function Mf(a){return(typeof a=="string"?a:""+a).replace(E1,`
38`).replace(Nm,"")}function Ec(a,c,g){if(c=Mf(c),Mf(a)!==c&&g)throw Error(t(425))}function bc(){}var Al=null,Sf=null;function wf(a,c){return a==="textarea"||a==="noscript"||typeof c.children=="string"||typeof c.children=="number"||typeof c.dangerouslySetInnerHTML=="object"&&c.dangerouslySetInnerHTML!==null&&c.dangerouslySetInnerHTML.__html!=null}var Af=typeof setTimeout=="function"?setTimeout:void 0,Ef=typeof clearTimeout=="function"?clearTimeout:void 0,Ch=typeof Promise=="function"?Promise:void 0,b1=typeof queueMicrotask=="function"?queueMicrotask:typeof Ch<"u"?function(a){return Ch.resolve(null).then(a).catch(Fm)}:Af;function Fm(a){setTimeout(function(){throw a})}function Th(a,c){var g=c,w=0;do{var C=g.nextSibling;if(a.removeChild(g),C&&C.nodeType===8)if(g=C.data,g==="/$"){if(w===0){a.removeChild(C),pc(c);return}w--}else g!=="$"&&g!=="$?"&&g!=="$!"||w++;g=C}while(g);pc(c)}function Qs(a){for(;a!=null;a=a.nextSibling){var c=a.nodeType;if(c===1||c===3)break;if(c===8){if(c=a.data,c==="$"||c==="$!"||c==="$?")break;if(c==="/$")return null}}return a}function bf(a){a=a.previousSibling;for(var c=0;a;){if(a.nodeType===8){var g=a.data;if(g==="$"||g==="$!"||g==="$?"){if(c===0)return a;c--}else g==="/$"&&c++}a=a.previousSibling}return null}var va=Math.random().toString(36).slice(2),lr="__reactFiber$"+va,El="__reactProps$"+va,Mi="__reactContainer$"+va,_a="__reactEvents$"+va,Ih="__reactListeners$"+va,Ph="__reactHandles$"+va;function Uo(a){var c=a[lr];if(c)return c;for(var g=a.parentNode;g;){if(c=g[Mi]||g[lr]){if(g=c.alternate,c.child!==null||g!==null&&g.child!==null)for(a=bf(a);a!==null;){if(g=a[lr])return g;a=bf(a)}return c}a=g,g=a.parentNode}return null}function Zs(a){return a=a[lr]||a[Mi],!a||a.tag!==5&&a.tag!==6&&a.tag!==13&&a.tag!==3?null:a}function $n(a){if(a.tag===5||a.tag===6)return a.stateNode;throw Error(t(33))}function Rh(a){return a[El]||null}var Cf=[],mr=-1;function Vn(a){return{current:a}}function In(a){0>mr||(a.current=Cf[mr],Cf[mr]=null,mr--)}function bn(a,c){mr++,Cf[mr]=a.current,a.current=c}var eo={},wr=Vn(eo),Jr=Vn(!1),to=eo;function xa(a,c){var g=a.type.contextTypes;if(!g)return eo;var w=a.stateNode;if(w&&w.__reactInternalMemoizedUnmaskedChildContext===c)return w.__reactInternalMemoizedMaskedChildContext;var C={},B;for(B in g)C[B]=c[B];return w&&(a=a.stateNode,a.__reactInternalMemoizedUnmaskedChildContext=c,a.__reactInternalMemoizedMaskedChildContext=C),C}function Dr(a){return a=a.childContextTypes,a!=null}function Cc(){In(Jr),In(wr)}function Tf(a,c,g){if(wr.current!==eo)throw Error(t(168));bn(wr,c),bn(Jr,g)}function Tc(a,c,g){var w=a.stateNode;if(c=c.childContextTypes,typeof w.getChildContext!="function")return g;w=w.getChildContext();for(var C in w)if(!(C in c))throw Error(t(108,Ie(a)||"Unknown",C));return q({},g,w)}function Ma(a){return a=(a=a.stateNode)&&a.__reactInternalMemoizedMergedChildContext||eo,to=wr.current,bn(wr,a),bn(Jr,Jr.current),!0}function If(a,c,g){var w=a.stateNode;if(!w)throw Error(t(169));g?(a=Tc(a,c,to),w.__reactInternalMemoizedMergedChildContext=a,In(Jr),In(wr),bn(wr,a)):In(Jr),bn(Jr,g)}var ls=null,Ic=!1,Bh=!1;function Pc(a){ls===null?ls=[a]:ls.push(a)}function km(a){Ic=!0,Pc(a)}function Rs(){if(!Bh&&ls!==null){Bh=!0;var a=0,c=en;try{var g=ls;for(en=1;a<g.length;a++){var w=g[a];do w=w(!0);while(w!==null)}ls=null,Ic=!1}catch(C){throw ls!==null&&(ls=ls.slice(a+1)),W(Ye,Rs),C}finally{en=c,Bh=!1}}return null}var Sa=[],ii=0,Oh=null,Dh=0,$r=[],gr=0,wa=null,Ke=1,Vi="";function no(a,c){Sa[ii++]=Dh,Sa[ii++]=Oh,Oh=a,Dh=c}function Pf(a,c,g){$r[gr++]=Ke,$r[gr++]=Vi,$r[gr++]=wa,wa=a;var w=Ke;a=Vi;var C=32-rn(w)-1;w&=~(1<<C),g+=1;var B=32-rn(c)+C;if(30<B){var j=C-C%5;B=(w&(1<<j)-1).toString(32),w>>=j,C-=j,Ke=1<<32-rn(c)+C|g<<C|w,Vi=B+a}else Ke=1<<B|g<<C|w,Vi=a}function Rf(a){a.return!==null&&(no(a,1),Pf(a,1,0))}function ro(a){for(;a===Oh;)Oh=Sa[--ii],Sa[ii]=null,Dh=Sa[--ii],Sa[ii]=null;for(;a===wa;)wa=$r[--gr],$r[gr]=null,Vi=$r[--gr],$r[gr]=null,Ke=$r[--gr],$r[gr]=null}var Ar=null,Kr=null,Dn=!1,Wi=null;function Bf(a,c){var g=Ns(5,null,null,0);
vendor: 13,800 bytes, line 38
38g.elementType="DELETED",g.stateNode=c,g.return=a,c=a.deletions,c===null?(a.deletions=[g],a.flags|=16):c.push(g)}function Of(a,c){switch(a.tag){case 5:var g=a.type;return c=c.nodeType!==1||g.toLowerCase()!==c.nodeName.toLowerCase()?null:c,c!==null?(a.stateNode=c,Ar=a,Kr=Qs(c.firstChild),!0):!1;case 6:return c=a.pendingProps===""||c.nodeType!==3?null:c,c!==null?(a.stateNode=c,Ar=a,Kr=null,!0):!1;case 13:return c=c.nodeType!==8?null:c,c!==null?(g=wa!==null?{id:Ke,overflow:Vi}:null,a.memoizedState={dehydrated:c,treeContext:g,retryLane:1073741824},g=Ns(18,null,null,0),g.stateNode=c,g.return=a,a.child=g,Ar=a,Kr=null,!0):!1;default:return!1}}function Lh(a){return(a.mode&1)!==0&&(a.flags&128)===0}function Nh(a){if(Dn){var c=Kr;if(c){var g=c;if(!Of(a,c)){if(Lh(a))throw Error(t(418));c=Qs(g.nextSibling);var w=Ar;c&&Of(a,c)?Bf(w,g):(a.flags=a.flags&-4097|2,Dn=!1,Ar=a)}}else{if(Lh(a))throw Error(t(418));a.flags=a.flags&-4097|2,Dn=!1,Ar=a}}}function Fh(a){for(a=a.return;a!==null&&a.tag!==5&&a.tag!==3&&a.tag!==13;)a=a.return;Ar=a}function bl(a){if(a!==Ar)return!1;if(!Dn)return Fh(a),Dn=!0,!1;var c;if((c=a.tag!==3)&&!(c=a.tag!==5)&&(c=a.type,c=c!=="head"&&c!=="body"&&!wf(a.type,a.memoizedProps)),c&&(c=Kr)){if(Lh(a))throw Df(),Error(t(418));for(;c;)Bf(a,c),c=Qs(c.nextSibling)}if(Fh(a),a.tag===13){if(a=a.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(t(317));e:{for(a=a.nextSibling,c=0;a;){if(a.nodeType===8){var g=a.data;if(g==="/$"){if(c===0){Kr=Qs(a.nextSibling);break e}c--}else g!=="$"&&g!=="$!"&&g!=="$?"||c++}a=a.nextSibling}Kr=null}}else Kr=Ar?Qs(a.stateNode.nextSibling):null;return!0}function Df(){for(var a=Kr;a;)a=Qs(a.nextSibling)}function jo(){Kr=Ar=null,Dn=!1}function Cl(a){Wi===null?Wi=[a]:Wi.push(a)}var C1=P.ReactCurrentBatchConfig;function Rc(a,c,g){if(a=g.ref,a!==null&&typeof a!="function"&&typeof a!="object"){if(g._owner){if(g=g._owner,g){if(g.tag!==1)throw Error(t(309));var w=g.stateNode}if(!w)throw Error(t(147,a));var C=w,B=""+a;return c!==null&&c.ref!==null&&typeof c.ref=="function"&&c.ref._stringRef===B?c.ref:(c=function(j){var Q=C.refs;j===null?delete Q[B]:Q[B]=j},c._stringRef=B,c)}if(typeof a!="string")throw Error(t(284));if(!g._owner)throw Error(t(290,a))}return a}function Bc(a,c){throw a=Object.prototype.toString.call(c),Error(t(31,a==="[object Object]"?"object with keys {"+Object.keys(c).join(", ")+"}":a))}function Lf(a){var c=a._init;return c(a._payload)}function Nf(a){function c(ve,ae){if(a){var _e=ve.deletions;_e===null?(ve.deletions=[ae],ve.flags|=16):_e.push(ae)}}function g(ve,ae){if(!a)return null;for(;ae!==null;)c(ve,ae),ae=ae.sibling;return null}function w(ve,ae){for(ve=new Map;ae!==null;)ae.key!==null?ve.set(ae.key,ae):ve.set(ae.index,ae),ae=ae.sibling;return ve}function C(ve,ae){return ve=kl(ve,ae),ve.index=0,ve.sibling=null,ve}function B(ve,ae,_e){return ve.index=_e,a?(_e=ve.alternate,_e!==null?(_e=_e.index,_e<ae?(ve.flags|=2,ae):_e):(ve.flags|=2,ae)):(ve.flags|=1048576,ae)}function j(ve){return a&&ve.alternate===null&&(ve.flags|=2),ve}function Q(ve,ae,_e,Xe){return ae===null||ae.tag!==6?(ae=X1(_e,ve.mode,Xe),ae.return=ve,ae):(ae=C(ae,_e),ae.return=ve,ae)}function ie(ve,ae,_e,Xe){var bt=_e.type;return bt===N?je(ve,ae,_e.props.children,Xe,_e.key):ae!==null&&(ae.elementType===bt||typeof bt=="object"&&bt!==null&&bt.$$typeof===he&&Lf(bt)===ae.type)?(Xe=C(ae,_e.props),Xe.ref=Rc(ve,ae,_e),Xe.return=ve,Xe):(Xe=a0(_e.type,_e.key,_e.props,null,ve.mode,Xe),Xe.ref=Rc(ve,ae,_e),Xe.return=ve,Xe)}function Se(ve,ae,_e,Xe){return ae===null||ae.tag!==4||ae.stateNode.containerInfo!==_e.containerInfo||ae.stateNode.implementation!==_e.implementation?(ae=J1(_e,ve.mode,Xe),ae.return=ve,ae):(ae=C(ae,_e.children||[]),ae.return=ve,ae)}function je(ve,ae,_e,Xe,bt){return ae===null||ae.tag!==7?(ae=Kc(_e,ve.mode,Xe,bt),ae.return=ve,ae):(ae=C(ae,_e),ae.return=ve,ae)}function He(ve,ae,_e){if(typeof ae=="string"&&ae!==""||typeof ae=="number")return ae=X1(""+ae,ve.mode,_e),ae.return=ve,ae;if(typeof ae=="object"&&ae!==null){switch(ae.$$typeof){case k:return _e=a0(ae.type,ae.key,ae.props,null,ve.mode,_e),_e.ref=Rc(ve,null,ae),_e.return=ve,_e;case O:return ae=J1(ae,ve.mode,_e),ae.return=ve,ae;case he:var Xe=ae._init;return He(ve,Xe(ae._payload),_e)}if($e(ae)||Z(ae))return ae=Kc(ae,ve.mode,_e,null),ae.return=ve,ae;Bc(ve,ae)}return null}function ke(ve,ae,_e,Xe){var bt=ae!==null?ae.key:null;if(typeof _e=="string"&&_e!==""||typeof _e=="number")return bt!==null?null:Q(ve,ae,""+_e,Xe);if(typeof _e=="object"&&_e!==null){switch(_e.$$typeof){case k:return _e.key===bt?ie(ve,ae,_e,Xe):null;case O:return _e.key===bt?Se(ve,ae,_e,Xe):null;case he:return bt=_e._init,ke(ve,ae,bt(_e._payload),Xe)}if($e(_e)||Z(_e))return bt!==null?null:je(ve,ae,_e,Xe,null);Bc(ve,_e)}return null}function ft(ve,ae,_e,Xe,bt){if(typeof Xe=="string"&&Xe!==""||typeof Xe=="number")return ve=ve.get(_e)||null,Q(ae,ve,""+Xe,bt);if(typeof Xe=="object"&&Xe!==null){switch(Xe.$$typeof){case k:return ve=ve.get(Xe.key===null?_e:Xe.key)||null,ie(ae,ve,Xe,bt);case O:return ve=ve.get(Xe.key===null?_e:Xe.key)||null,Se(ae,ve,Xe,bt);case he:var Dt=Xe._init;return ft(ve,ae,_e,Dt(Xe._payload),bt)}if($e(Xe)||Z(Xe))return ve=ve.get(_e)||null,je(ae,ve,Xe,bt,null);Bc(ae,Xe)}return null}function xt(ve,ae,_e,Xe){for(var bt=null,Dt=null,Lt=ae,Vt=ae=0,kr=null;Lt!==null&&Vt<_e.length;Vt++){Lt.index>Vt?(kr=Lt,Lt=null):kr=Lt.sibling;var Mn=ke(ve,Lt,_e[Vt],Xe);if(Mn===null){Lt===null&&(Lt=kr);break}a&&Lt&&Mn.alternate===null&&c(ve,Lt),ae=B(Mn,ae,Vt),Dt===null?bt=Mn:Dt.sibling=Mn,Dt=Mn,Lt=kr}if(Vt===_e.length)return g(ve,Lt),Dn&&no(ve,Vt),bt;if(Lt===null){for(;Vt<_e.length;Vt++)Lt=He(ve,_e[Vt],Xe),Lt!==null&&(ae=B(Lt,ae,Vt),Dt===null?bt=Lt:Dt.sibling=Lt,Dt=Lt);return Dn&&no(ve,Vt),bt}for(Lt=w(ve,Lt);Vt<_e.length;Vt++)kr=ft(Lt,ve,Vt,_e[Vt],Xe),kr!==null&&(a&&kr.alternate!==null&&Lt.delete(kr.key===null?Vt:kr.key),ae=B(kr,ae,Vt),Dt===null?bt=kr:Dt.sibling=kr,Dt=kr);return a&&Lt.forEach(function(Ul){return c(ve,Ul)}),Dn&&no(ve,Vt),bt}function Mt(ve,ae,_e,Xe){var bt=Z(_e);if(typeof bt!="function")throw Error(t(150));if(_e=bt.call(_e),_e==null)throw Error(t(151));for(var Dt=bt=null,Lt=ae,Vt=ae=0,kr=null,Mn=_e.next();Lt!==null&&!Mn.done;Vt++,Mn=_e.next()){Lt.index>Vt?(kr=Lt,Lt=null):kr=Lt.sibling;var Ul=ke(ve,Lt,Mn.value,Xe);if(Ul===null){Lt===null&&(Lt=kr);break}a&&Lt&&Ul.alternate===null&&c(ve,Lt),ae=B(Ul,ae,Vt),Dt===null?bt=Ul:Dt.sibling=Ul,Dt=Ul,Lt=kr}if(Mn.done)return g(ve,Lt),Dn&&no(ve,Vt),bt;if(Lt===null){for(;!Mn.done;Vt++,Mn=_e.next())Mn=He(ve,Mn.value,Xe),Mn!==null&&(ae=B(Mn,ae,Vt),Dt===null?bt=Mn:Dt.sibling=Mn,Dt=Mn);return Dn&&no(ve,Vt),bt}for(Lt=w(ve,Lt);!Mn.done;Vt++,Mn=_e.next())Mn=ft(Lt,ve,Vt,Mn.value,Xe),Mn!==null&&(a&&Mn.alternate!==null&&Lt.delete(Mn.key===null?Vt:Mn.key),ae=B(Mn,ae,Vt),Dt===null?bt=Mn:Dt.sibling=Mn,Dt=Mn);return a&&Lt.forEach(function(AI){return c(ve,AI)}),Dn&&no(ve,Vt),bt}function cr(ve,ae,_e,Xe){if(typeof _e=="object"&&_e!==null&&_e.type===N&&_e.key===null&&(_e=_e.props.children),typeof _e=="object"&&_e!==null){switch(_e.$$typeof){case k:e:{for(var bt=_e.key,Dt=ae;Dt!==null;){if(Dt.key===bt){if(bt=_e.type,bt===N){if(Dt.tag===7){g(ve,Dt.sibling),ae=C(Dt,_e.props.children),ae.return=ve,ve=ae;break e}}else if(Dt.elementType===bt||typeof bt=="object"&&bt!==null&&bt.$$typeof===he&&Lf(bt)===Dt.type){g(ve,Dt.sibling),ae=C(Dt,_e.props),ae.ref=Rc(ve,Dt,_e),ae.return=ve,ve=ae;break e}g(ve,Dt);break}else c(ve,Dt);Dt=Dt.sibling}_e.type===N?(ae=Kc(_e.props.children,ve.mode,Xe,_e.key),ae.return=ve,ve=ae):(Xe=a0(_e.type,_e.key,_e.props,null,ve.mode,Xe),Xe.ref=Rc(ve,ae,_e),Xe.return=ve,ve=Xe)}return j(ve);case O:e:{for(Dt=_e.key;ae!==null;){if(ae.key===Dt)if(ae.tag===4&&ae.stateNode.containerInfo===_e.containerInfo&&ae.stateNode.implementation===_e.implementation){g(ve,ae.sibling),ae=C(ae,_e.children||[]),ae.return=ve,ve=ae;break e}else{g(ve,ae);break}else c(ve,ae);ae=ae.sibling}ae=J1(_e,ve.mode,Xe),ae.return=ve,ve=ae}return j(ve);case he:return Dt=_e._init,cr(ve,ae,Dt(_e._payload),Xe)}if($e(_e))return xt(ve,ae,_e,Xe);if(Z(_e))return Mt(ve,ae,_e,Xe);Bc(ve,_e)}return typeof _e=="string"&&_e!==""||typeof _e=="number"?(_e=""+_e,ae!==null&&ae.tag===6?(g(ve,ae.sibling),ae=C(ae,_e),ae.return=ve,ve=ae):(g(ve,ae),ae=X1(_e,ve.mode,Xe),ae.return=ve,ve=ae),j(ve)):g(ve,ae)}return cr}var Aa=Nf(!0),Oc=Nf(!1),Ea=Vn(null),ba=null,io=null,Tl=null;function Ca(){Tl=io=ba=null}function Dc(a){var c=Ea.current;In(Ea),a._currentValue=c}function Lc(a,c,g){for(;a!==null;){var w=a.alternate;if((a.childLanes&c)!==c?(a.childLanes|=c,w!==null&&(w.childLanes|=c)):w!==null&&(w.childLanes&c)!==c&&(w.childLanes|=c),a===g)break;a=a.return}}function zo(a,c){ba=a,Tl=io=null,a=a.dependencies,a!==null&&a.firstContext!==null&&(a.lanes&c&&(tn=!0),a.firstContext=null)}function Si(a){var c=a._currentValue;if(Tl!==a)if(a={context:a,memoizedValue:c,next:null},io===null){if(ba===null)throw Error(t(308));io=a,ba.dependencies={lanes:0,firstContext:a}}else io=io.next=a;return c}var so=null;function Ff(a){so===null?so=[a]:so.push(a)}function Nc(a,c,g,w){var C=c.interleaved;return C===null?(g.next=g,Ff(c)):(g.next=C.next,C.next=g),c.interleaved=g,cs(a,w)}function cs(a,c){a.lanes|=c;var g=a.alternate;for(g!==null&&(g.lanes|=c),g=a,a=a.return;a!==null;)a.childLanes|=c,g=a.alternate,g!==null&&(g.childLanes|=c),g=a,a=a.return;return g.tag===3?g.stateNode:null}var wn=!1;function qt(a){a.updateQueue={baseState:a.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function Kn(a,c){a=a.updateQueue,c.updateQueue===a&&(c.updateQueue={baseState:a.baseState,firstBaseUpdate:a.firstBaseUpdate,lastBaseUpdate:a.lastBaseUpdate,shared:a.shared,effects:a.effects})}function An(a,c){return{eventTime:a,lane:c,tag:0,payload:null,callback:null,next:null}}function Fn(a,c,g){var w=a.updateQueue;if(w===null)return null;if(w=w.shared,_n&2){var C=w.pending;return C===null?c.next=c:(c.next=C.next,C.next=c),w.pending=c,cs(a,g)}return C=w.interleaved,C===null?(c.next=c,Ff(w)):(c.next=C.next,C.next=c),w.interleaved=c,cs(a,g)}function Lr(a,c,g){if(c=c.updateQueue,c!==null&&(c=c.shared,(g&4194240)!==0)){var w=c.lanes;w&=a.pendingLanes,g|=w,c.lanes=g,bs(a,g)}}function Ta(a,c){var g=a.updateQueue,w=a.alternate;if(w!==null&&(w=w.updateQueue,g===w)){var C=null,B=null;if(g=g.firstBaseUpdate,g!==null){do{var j={eventTime:g.eventTime,lane:g.lane,tag:g.tag,payload:g.payload,callback:g.callback,next:null};B===null?C=B=j:B=B.next=j,g=g.next}while(g!==null);B===null?C=B=c:B=B.next=c}else C=B=c;g={baseState:w.baseState,firstBaseUpdate:C,lastBaseUpdate:B,shared:w.shared,effects:w.effects},a.updateQueue=g;return}a=g.lastBaseUpdate,a===null?g.firstBaseUpdate=c:a.next=c,g.lastBaseUpdate=c}function Wn(a,c,g,w){var C=a.updateQueue;wn=!1;var B=C.firstBaseUpdate,j=C.lastBaseUpdate,Q=C.shared.pending;if(Q!==null){C.shared.pending=null;var ie=Q,Se=ie.next;ie.next=null,j===null?B=Se:j.next=Se,j=ie;var je=a.alternate;je!==null&&(je=je.updateQueue,Q=je.lastBaseUpdate,Q!==j&&(Q===null?je.firstBaseUpdate=Se:Q.next=Se,je.lastBaseUpdate=ie))}if(B!==null){var He=C.baseState;j=0,je=Se=ie=null,Q=B;do{var ke=Q.lane,ft=Q.eventTime;if((w&ke)===ke){je!==null&&(je=je.next={eventTime:ft,lane:0,tag:Q.tag,payload:Q.payload,callback:Q.callback,next:null});e:{var xt=a,Mt=Q;switch(ke=c,ft=g,Mt.tag){case 1:if(xt=Mt.payload,typeof xt=="function"){He=xt.call(ft,He,ke);break e}He=xt;break e;case 3:xt.flags=xt.flags&-65537|128;case 0:if(xt=Mt.payload,ke=typeof xt=="function"?xt.call(ft,He,ke):xt,ke==null)break e;He=q({},He,ke);break e;case 2:wn=!0}}Q.callback!==null&&Q.lane!==0&&(a.flags|=64,ke=C.effects,ke===null?C.effects=[Q]:ke.push(Q))}else ft={eventTime:ft,lane:ke,tag:Q.tag,payload:Q.payload,callback:Q.callback,next:null},je===null?(Se=je=ft,ie=He):je=je.next=ft,j|=ke;if(Q=Q.next,Q===null){if(Q=C.shared.pending,Q===null)break;ke=Q,Q=ke.next,ke.next=null,C.lastBaseUpdate=ke,C.shared.pending=null}}while(!0);if(je===null&&(ie=He),C.baseState=ie,C.firstBaseUpdate=Se,C.lastBaseUpdate=je,c=C.shared.interleaved,c!==null){C=c;do j|=C.lane,C=C.next;while(C!==c)}else B===null&&(C.shared.lanes=0);Wc|=j,a.lanes=j,a.memoizedState=He}}function Il(a,c,g){if(a=c.effects,c.effects=null,a!==null)for(c=0;c<a.length;c++){var w=a[c],C=w.callback;if(C!==null){if(w.callback=null,w=g,typeof C!="function")throw Error(t(191,C));C.call(w)}}}var Bs={},wi=Vn(Bs),Ia=Vn(Bs),oo=Vn(Bs);function rr(a){if(a===Bs)throw Error(t(174));return a}function Fc(a,c){switch(bn(oo,c),bn(Ia,a),bn(wi,Bs),a=c.nodeType,a){case 9:case 11:c=(c=c.documentElement)?c.namespaceURI:et(null,"");break;default:a=a===8?c.parentNode:c,c=a.namespaceURI||null,a=a.tagName,c=et(c,a)}In(wi),bn(wi,c)}function Ho(){In(wi),In(Ia),In(oo)}function Pa(a){rr(oo.current);var c=rr(wi.current),g=et(c,a.type);c!==g&&(bn(Ia,a),bn(wi,g))}function Pl(a){Ia.current===a&&(In(wi),In(Ia))}var Ln=Vn(0);function us(a){for(var c=a;c!==null;){if(c.tag===13){var g=c.memoizedState;if(g!==null&&(g=g.dehydrated,g===null||g.data==="$?"||g.data==="$!"))return c}else if(c.tag===19&&c.memoizedProps.revealOrder!==void 0){if(c.flags&128)return c}else if(c.child!==null){c.child.return=c,c=c.child;continue}if(c===a)break;for(;c.sibling===null;){if(c.return===null||c.return===a)return null;c=c.return}c.sibling.return=c.return,c=c.sibling}return null}var Rl=[];function Os(){for(var a=0;a<Rl.length;a++)Rl[a]._workInProgressVersionPrimary=null;Rl.length=0}var Ra=P.ReactCurrentDispatcher,Ba=P.ReactCurrentBatchConfig,ao=0,Pn=null,Xn=null,mn=null,hs=!1,Nr=!1,Go=0,si=0;function Er(){throw Error(t(321))}function kc(a,c){if(c===null)return!1;for(var g=0;g<c.length&&g<a.length;g++)if(!_i(a[g],c[g]))return!1;return!0}function Uc(a,c,g,w,C,B){if(ao=B,Pn=c,c.memoizedState=null,c.updateQueue=null,c.lanes=0,Ra.current=a===null||a.memoizedState===null?Wm:Xm,a=g(w,C),Nr){B=0;
vendor: 6,631 bytes, line 38
38do{if(Nr=!1,Go=0,25<=B)throw Error(t(301));B+=1,mn=Xn=null,c.updateQueue=null,Ra.current=Jm,a=g(w,C)}while(Nr)}if(Ra.current=Vh,c=Xn!==null&&Xn.next!==null,ao=0,mn=Xn=Pn=null,hs=!1,c)throw Error(t(300));return a}function kf(){var a=Go!==0;return Go=0,a}function br(){var a={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return mn===null?Pn.memoizedState=mn=a:mn=mn.next=a,mn}function Ai(){if(Xn===null){var a=Pn.alternate;a=a!==null?a.memoizedState:null}else a=Xn.next;var c=mn===null?Pn.memoizedState:mn.next;if(c!==null)mn=c,Xn=a;else{if(a===null)throw Error(t(310));Xn=a,a={memoizedState:Xn.memoizedState,baseState:Xn.baseState,baseQueue:Xn.baseQueue,queue:Xn.queue,next:null},mn===null?Pn.memoizedState=mn=a:mn=mn.next=a}return mn}function Bl(a,c){return typeof c=="function"?c(a):c}function jc(a){var c=Ai(),g=c.queue;if(g===null)throw Error(t(311));g.lastRenderedReducer=a;var w=Xn,C=w.baseQueue,B=g.pending;if(B!==null){if(C!==null){var j=C.next;C.next=B.next,B.next=j}w.baseQueue=C=B,g.pending=null}if(C!==null){B=C.next,w=w.baseState;var Q=j=null,ie=null,Se=B;do{var je=Se.lane;if((ao&je)===je)ie!==null&&(ie=ie.next={lane:0,action:Se.action,hasEagerState:Se.hasEagerState,eagerState:Se.eagerState,next:null}),w=Se.hasEagerState?Se.eagerState:a(w,Se.action);else{var He={lane:je,action:Se.action,hasEagerState:Se.hasEagerState,eagerState:Se.eagerState,next:null};ie===null?(Q=ie=He,j=w):ie=ie.next=He,Pn.lanes|=je,Wc|=je}Se=Se.next}while(Se!==null&&Se!==B);ie===null?j=w:ie.next=Q,_i(w,c.memoizedState)||(tn=!0),c.memoizedState=w,c.baseState=j,c.baseQueue=ie,g.lastRenderedState=w}if(a=g.interleaved,a!==null){C=a;do B=C.lane,Pn.lanes|=B,Wc|=B,C=C.next;while(C!==a)}else C===null&&(g.lanes=0);return[c.memoizedState,g.dispatch]}function lo(a){var c=Ai(),g=c.queue;if(g===null)throw Error(t(311));g.lastRenderedReducer=a;var w=g.dispatch,C=g.pending,B=c.memoizedState;if(C!==null){g.pending=null;var j=C=C.next;do B=a(B,j.action),j=j.next;while(j!==C);_i(B,c.memoizedState)||(tn=!0),c.memoizedState=B,c.baseQueue===null&&(c.baseState=B),g.lastRenderedState=B}return[B,w]}function Uf(){}function jf(a,c){var g=Pn,w=Ai(),C=c(),B=!_i(w.memoizedState,C);if(B&&(w.memoizedState=C,tn=!0),w=w.queue,Gf(Um.bind(null,g,w,a),[a]),w.getSnapshot!==c||B||mn!==null&&mn.memoizedState.tag&1){if(g.flags|=2048,ds(9,zc.bind(null,g,w,C,c),void 0,null),Fr===null)throw Error(t(349));ao&30||kh(g,c,C)}return C}function kh(a,c,g){a.flags|=16384,a={getSnapshot:c,value:g},c=Pn.updateQueue,c===null?(c={lastEffect:null,stores:null},Pn.updateQueue=c,c.stores=[a]):(g=c.stores,g===null?c.stores=[a]:g.push(a))}function zc(a,c,g,w){c.value=g,c.getSnapshot=w,jm(c)&&zf(a)}function Um(a,c,g){return g(function(){jm(c)&&zf(a)})}function jm(a){var c=a.getSnapshot;a=a.value;try{var g=c();return!_i(a,g)}catch{return!0}}function zf(a){var c=cs(a,1);c!==null&&po(c,a,1,-1)}function Hf(a){var c=br();return typeof a=="function"&&(a=a()),c.memoizedState=c.baseState=a,a={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:Bl,lastRenderedState:a},c.queue=a,a=a.dispatch=Oa.bind(null,Pn,a),[c.memoizedState,a]}function ds(a,c,g,w){return a={tag:a,create:c,destroy:g,deps:w,next:null},c=Pn.updateQueue,c===null?(c={lastEffect:null,stores:null},Pn.updateQueue=c,c.lastEffect=a.next=a):(g=c.lastEffect,g===null?c.lastEffect=a.next=a:(w=g.next,g.next=a,a.next=w,c.lastEffect=a)),a}function zm(){return Ai().memoizedState}function Ds(a,c,g,w){var C=br();Pn.flags|=a,C.memoizedState=ds(1|c,g,void 0,w===void 0?null:w)}function Hc(a,c,g,w){var C=Ai();w=w===void 0?null:w;var B=void 0;if(Xn!==null){var j=Xn.memoizedState;if(B=j.destroy,w!==null&&kc(w,j.deps)){C.memoizedState=ds(c,g,B,w);return}}Pn.flags|=a,C.memoizedState=ds(1|c,g,B,w)}function Yr(a,c){return Ds(8390656,8,a,c)}function Gf(a,c){return Hc(2048,8,a,c)}function Vf(a,c){return Hc(4,2,a,c)}function Hm(a,c){return Hc(4,4,a,c)}function Gm(a,c){if(typeof c=="function")return a=a(),c(a),function(){c(null)};if(c!=null)return a=a(),c.current=a,function(){c.current=null}}function Wf(a,c,g){return g=g!=null?g.concat([a]):null,Hc(4,4,Gm.bind(null,c,a),g)}function Uh(){}function Vm(a,c){var g=Ai();c=c===void 0?null:c;var w=g.memoizedState;return w!==null&&c!==null&&kc(c,w[1])?w[0]:(g.memoizedState=[a,c],a)}function Ei(a,c){var g=Ai();c=c===void 0?null:c;var w=g.memoizedState;return w!==null&&c!==null&&kc(c,w[1])?w[0]:(a=a(),g.memoizedState=[a,c],a)}function jh(a,c,g){return ao&21?(_i(g,c)||(g=On(),Pn.lanes|=g,Wc|=g,a.baseState=!0),c):(a.baseState&&(a.baseState=!1,tn=!0),a.memoizedState=g)}function T1(a,c){var g=en;en=g!==0&&4>g?g:4,a(!0);var w=Ba.transition;Ba.transition={};try{a(!1),c()}finally{en=g,Ba.transition=w}}function co(){return Ai().memoizedState}function zh(a,c,g){var w=Nl(a);if(g={lane:w,action:g,hasEagerState:!1,eagerState:null,next:null},Gc(a))Hh(c,g);else if(g=Nc(a,c,g,w),g!==null){var C=Ci();po(g,a,w,C),Gh(g,c,w)}}function Oa(a,c,g){var w=Nl(a),C={lane:w,action:g,hasEagerState:!1,eagerState:null,next:null};if(Gc(a))Hh(c,C);else{var B=a.alternate;if(a.lanes===0&&(B===null||B.lanes===0)&&(B=c.lastRenderedReducer,B!==null))try{var j=c.lastRenderedState,Q=B(j,g);if(C.hasEagerState=!0,C.eagerState=Q,_i(Q,j)){var ie=c.interleaved;ie===null?(C.next=C,Ff(c)):(C.next=ie.next,ie.next=C),c.interleaved=C;return}}catch{}finally{}g=Nc(a,c,C,w),g!==null&&(C=Ci(),po(g,a,w,C),Gh(g,c,w))}}function Gc(a){var c=a.alternate;return a===Pn||c!==null&&c===Pn}function Hh(a,c){Nr=hs=!0;var g=a.pending;g===null?c.next=c:(c.next=g.next,g.next=c),a.pending=c}function Gh(a,c,g){if(g&4194240){var w=c.lanes;w&=a.pendingLanes,g|=w,c.lanes=g,bs(a,g)}}var Vh={readContext:Si,useCallback:Er,useContext:Er,useEffect:Er,useImperativeHandle:Er,useInsertionEffect:Er,useLayoutEffect:Er,useMemo:Er,useReducer:Er,useRef:Er,useState:Er,useDebugValue:Er,useDeferredValue:Er,useTransition:Er,useMutableSource:Er,useSyncExternalStore:Er,useId:Er,unstable_isNewReconciler:!1},Wm={readContext:Si,useCallback:function(a,c){return br().memoizedState=[a,c===void 0?null:c],a},useContext:Si,useEffect:Yr,useImperativeHandle:function(a,c,g){return g=g!=null?g.concat([a]):null,Ds(4194308,4,Gm.bind(null,c,a),g)},useLayoutEffect:function(a,c){return Ds(4194308,4,a,c)},useInsertionEffect:function(a,c){return Ds(4,2,a,c)},useMemo:function(a,c){var g=br();return c=c===void 0?null:c,a=a(),g.memoizedState=[a,c],a},useReducer:function(a,c,g){var w=br();return c=g!==void 0?g(c):c,w.memoizedState=w.baseState=c,a={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:a,lastRenderedState:c},w.queue=a,a=a.dispatch=zh.bind(null,Pn,a),[w.memoizedState,a]}
vendor: 7,417 bytes, lines 38-40
38,useRef:function(a){var c=br();return a={current:a},c.memoizedState=a},useState:Hf,useDebugValue:Uh,useDeferredValue:function(a){return br().memoizedState=a},useTransition:function(){var a=Hf(!1),c=a[0];return a=T1.bind(null,a[1]),br().memoizedState=a,[c,a]},useMutableSource:function(){},useSyncExternalStore:function(a,c,g){var w=Pn,C=br();if(Dn){if(g===void 0)throw Error(t(407));g=g()}else{if(g=c(),Fr===null)throw Error(t(349));ao&30||kh(w,c,g)}C.memoizedState=g;var B={value:g,getSnapshot:c};return C.queue=B,Yr(Um.bind(null,w,B,a),[a]),w.flags|=2048,ds(9,zc.bind(null,w,B,g,c),void 0,null),g},useId:function(){var a=br(),c=Fr.identifierPrefix;if(Dn){var g=Vi,w=Ke;g=(w&~(1<<32-rn(w)-1)).toString(32)+g,c=":"+c+"R"+g,g=Go++,0<g&&(c+="H"+g.toString(32)),c+=":"}else g=si++,c=":"+c+"r"+g.toString(32)+":";return a.memoizedState=c},unstable_isNewReconciler:!1},Xm={readContext:Si,useCallback:Vm,useContext:Si,useEffect:Gf,useImperativeHandle:Wf,useInsertionEffect:Vf,useLayoutEffect:Hm,useMemo:Ei,useReducer:jc,useRef:zm,useState:function(){return jc(Bl)},useDebugValue:Uh,useDeferredValue:function(a){var c=Ai();return jh(c,Xn.memoizedState,a)},useTransition:function(){var a=jc(Bl)[0],c=Ai().memoizedState;return[a,c]},useMutableSource:Uf,useSyncExternalStore:jf,useId:co,unstable_isNewReconciler:!1},Jm={readContext:Si,useCallback:Vm,useContext:Si,useEffect:Gf,useImperativeHandle:Wf,useInsertionEffect:Vf,useLayoutEffect:Hm,useMemo:Ei,useReducer:lo,useRef:zm,useState:function(){return lo(Bl)},useDebugValue:Uh,useDeferredValue:function(a){var c=Ai();return Xn===null?c.memoizedState=a:jh(c,Xn.memoizedState,a)},useTransition:function(){var a=lo(Bl)[0],c=Ai().memoizedState;return[a,c]},useMutableSource:Uf,useSyncExternalStore:jf,useId:co,unstable_isNewReconciler:!1};function Xi(a,c){if(a&&a.defaultProps){c=q({},c),a=a.defaultProps;for(var g in a)c[g]===void 0&&(c[g]=a[g]);return c}return c}function Vc(a,c,g,w){c=a.memoizedState,g=g(w,c),g=g==null?c:q({},c,g),a.memoizedState=g,a.lanes===0&&(a.updateQueue.baseState=g)}var Wh={isMounted:function(a){return(a=a._reactInternals)?As(a)===a:!1},enqueueSetState:function(a,c,g){a=a._reactInternals;var w=Ci(),C=Nl(a),B=An(w,C);B.payload=c,g!=null&&(B.callback=g),c=Fn(a,B,C),c!==null&&(po(c,a,C,w),Lr(c,a,C))},enqueueReplaceState:function(a,c,g){a=a._reactInternals;var w=Ci(),C=Nl(a),B=An(w,C);B.tag=1,B.payload=c,g!=null&&(B.callback=g),c=Fn(a,B,C),c!==null&&(po(c,a,C,w),Lr(c,a,C))},enqueueForceUpdate:function(a,c){a=a._reactInternals;var g=Ci(),w=Nl(a),C=An(g,w);C.tag=2,c!=null&&(C.callback=c),c=Fn(a,C,w),c!==null&&(po(c,a,w,g),Lr(c,a,w))}};function $m(a,c,g,w,C,B,j){return a=a.stateNode,typeof a.shouldComponentUpdate=="function"?a.shouldComponentUpdate(w,B,j):c.prototype&&c.prototype.isPureReactComponent?!pa(g,w)||!pa(C,B):!0}function h(a,c,g){var w=!1,C=eo,B=c.contextType;return typeof B=="object"&&B!==null?B=Si(B):(C=Dr(c)?to:wr.current,w=c.contextTypes,B=(w=w!=null)?xa(a,C):eo),c=new c(g,B),a.memoizedState=c.state!==null&&c.state!==void 0?c.state:null,c.updater=Wh,a.stateNode=c,c._reactInternals=a,w&&(a=a.stateNode,a.__reactInternalMemoizedUnmaskedChildContext=C,a.__reactInternalMemoizedMaskedChildContext=B),c}function f(a,c,g,w){a=c.state,typeof c.componentWillReceiveProps=="function"&&c.componentWillReceiveProps(g,w),typeof c.UNSAFE_componentWillReceiveProps=="function"&&c.UNSAFE_componentWillReceiveProps(g,w),c.state!==a&&Wh.enqueueReplaceState(c,c.state,null)}function x(a,c,g,w){var C=a.stateNode;C.props=g,C.state=a.memoizedState,C.refs={},qt(a);var B=c.contextType;typeof B=="object"&&B!==null?C.context=Si(B):(B=Dr(c)?to:wr.current,C.context=xa(a,B)),C.state=a.memoizedState,B=c.getDerivedStateFromProps,typeof B=="function"&&(Vc(a,c,B,g),C.state=a.memoizedState),typeof c.getDerivedStateFromProps=="function"||typeof C.getSnapshotBeforeUpdate=="function"||typeof C.UNSAFE_componentWillMount!="function"&&typeof C.componentWillMount!="function"||(c=C.state,typeof C.componentWillMount=="function"&&C.componentWillMount(),typeof C.UNSAFE_componentWillMount=="function"&&C.UNSAFE_componentWillMount(),c!==C.state&&Wh.enqueueReplaceState(C,C.state,null),Wn(a,g,C,w),C.state=a.memoizedState),typeof C.componentDidMount=="function"&&(a.flags|=4194308)}function b(a,c){try{var g="",w=c;do g+=Ae(w),w=w.return;while(w);var C=g}catch(B){C=`
39Error generating stack: `+B.message+`
40`+B.stack}return{value:a,source:c,stack:C,digest:null}}function R(a,c,g){return{value:a,source:null,stack:g??null,digest:c??null}}function D(a,c){try{console.error(c.value)}catch(g){setTimeout(function(){throw g})}}var Y=typeof WeakMap=="function"?WeakMap:Map;function le(a,c,g){g=An(-1,g),g.tag=3,g.payload={element:null};var w=c.value;return g.callback=function(){t0||(t0=!0,k1=w),D(a,c)},g}function Te(a,c,g){g=An(-1,g),g.tag=3;var w=a.type.getDerivedStateFromError;if(typeof w=="function"){var C=c.value;g.payload=function(){return w(C)},g.callback=function(){D(a,c)}}var B=a.stateNode;return B!==null&&typeof B.componentDidCatch=="function"&&(g.callback=function(){D(a,c),typeof w!="function"&&(Dl===null?Dl=new Set([this]):Dl.add(this));var j=c.stack;this.componentDidCatch(c.value,{componentStack:j!==null?j:""})}),g}function We(a,c,g){var w=a.pingCache;if(w===null){w=a.pingCache=new Y;var C=new Set;w.set(c,C)}else C=w.get(c),C===void 0&&(C=new Set,w.set(c,C));C.has(g)||(C.add(g),a=fI.bind(null,a,c,g),c.then(a,a))}function gt(a){do{var c;if((c=a.tag===13)&&(c=a.memoizedState,c=c!==null?c.dehydrated!==null:!0),c)return a;a=a.return}while(a!==null);return null}function Wt(a,c,g,w,C){return a.mode&1?(a.flags|=65536,a.lanes=C,a):(a===c?a.flags|=65536:(a.flags|=128,g.flags|=131072,g.flags&=-52805,g.tag===1&&(g.alternate===null?g.tag=17:(c=An(-1,1),c.tag=2,Fn(g,c,1))),g.lanes|=1),a)}var Ot=P.ReactCurrentOwner,tn=!1;function at(a,c,g,w){c.child=a===null?Oc(c,null,g,w):Aa(c,a.child,g,w)}function Cr(a,c,g,w,C){g=g.render;var B=c.ref;return zo(c,C),w=Uc(a,c,g,w,B,C),g=kf(),a!==null&&!tn?(c.updateQueue=a.updateQueue,c.flags&=-2053,a.lanes&=~C,Da(a,c,C)):(Dn&&g&&Rf(c),c.flags|=1,at(a,c,w,C),c.child)}function bi(a,c,g,w,C){if(a===null){var B=g.type;return typeof B=="function"&&!W1(B)&&B.defaultProps===void 0&&g.compare===null&&g.defaultProps===void 0?(c.tag=15,c.type=B,xe(a,c,B,w,C)):(a=a0(g.type,null,w,c,c.mode,C),a.ref=c.ref,a.return=c,c.child=a)}if(B=a.child,!(a.lanes&C)){var j=B.memoizedProps;if(g=g.compare,g=g!==null?g:pa,g(j,w)&&a.ref===c.ref)return Da(a,c,C)}return c.flags|=1,a=kl(B,w),a.ref=c.ref,a.return=c,c.child=a}function xe(a,c,g,w,C){if(a!==null){var B=a.memoizedProps;if(pa(B,w)&&a.ref===c.ref)if(tn=!1,c.pendingProps=w=B,(a.lanes&C)!==0)a.flags&131072&&(tn=!0);else return c.lanes=a.lanes,Da(a,c,C)}return rt(a,c,g,w,C)}function fe(a,c,g){var w=c.pendingProps,C=w.children,B=a!==null?a.memoizedState:null;if(w.mode==="hidden")if(!(c.mode&1))c.memoizedState={baseLanes:0,cachePool:null,transitions:null},bn(Jh,fs),fs|=g;else{if(!(g&1073741824))return a=B!==null?B.baseLanes|g:g,c.lanes=c.childLanes=1073741824,c.memoizedState={baseLanes:a,cachePool:null,transitions:null},c.updateQueue=null,bn(Jh,fs),fs|=a,null;c.memoizedState={baseLanes:0,cachePool:null,transitions:null},w=B!==null?B.baseLanes:g,bn(Jh,fs),fs|=w}else B!==null?(w=B.baseLanes|g,c.memoizedState=null):w=g,bn(Jh,fs),fs|=w;return at(a,c,C,g),c.child}function Ee(a,c){var g=c.ref;(a===null&&g!==null||a!==null&&a.ref!==g)&&(c.flags|=512,c.flags|=2097152)}
vendor: 13,745 bytes, line 40
40function rt(a,c,g,w,C){var B=Dr(g)?to:wr.current;return B=xa(c,B),zo(c,C),g=Uc(a,c,g,w,B,C),w=kf(),a!==null&&!tn?(c.updateQueue=a.updateQueue,c.flags&=-2053,a.lanes&=~C,Da(a,c,C)):(Dn&&w&&Rf(c),c.flags|=1,at(a,c,g,C),c.child)}function At(a,c,g,w,C){if(Dr(g)){var B=!0;Ma(c)}else B=!1;if(zo(c,C),c.stateNode===null)Ym(a,c),h(c,g,w),x(c,g,w,C),w=!0;else if(a===null){var j=c.stateNode,Q=c.memoizedProps;j.props=Q;var ie=j.context,Se=g.contextType;typeof Se=="object"&&Se!==null?Se=Si(Se):(Se=Dr(g)?to:wr.current,Se=xa(c,Se));var je=g.getDerivedStateFromProps,He=typeof je=="function"||typeof j.getSnapshotBeforeUpdate=="function";He||typeof j.UNSAFE_componentWillReceiveProps!="function"&&typeof j.componentWillReceiveProps!="function"||(Q!==w||ie!==Se)&&f(c,j,w,Se),wn=!1;var ke=c.memoizedState;j.state=ke,Wn(c,w,j,C),ie=c.memoizedState,Q!==w||ke!==ie||Jr.current||wn?(typeof je=="function"&&(Vc(c,g,je,w),ie=c.memoizedState),(Q=wn||$m(c,g,Q,w,ke,ie,Se))?(He||typeof j.UNSAFE_componentWillMount!="function"&&typeof j.componentWillMount!="function"||(typeof j.componentWillMount=="function"&&j.componentWillMount(),typeof j.UNSAFE_componentWillMount=="function"&&j.UNSAFE_componentWillMount()),typeof j.componentDidMount=="function"&&(c.flags|=4194308)):(typeof j.componentDidMount=="function"&&(c.flags|=4194308),c.memoizedProps=w,c.memoizedState=ie),j.props=w,j.state=ie,j.context=Se,w=Q):(typeof j.componentDidMount=="function"&&(c.flags|=4194308),w=!1)}else{j=c.stateNode,Kn(a,c),Q=c.memoizedProps,Se=c.type===c.elementType?Q:Xi(c.type,Q),j.props=Se,He=c.pendingProps,ke=j.context,ie=g.contextType,typeof ie=="object"&&ie!==null?ie=Si(ie):(ie=Dr(g)?to:wr.current,ie=xa(c,ie));var ft=g.getDerivedStateFromProps;(je=typeof ft=="function"||typeof j.getSnapshotBeforeUpdate=="function")||typeof j.UNSAFE_componentWillReceiveProps!="function"&&typeof j.componentWillReceiveProps!="function"||(Q!==He||ke!==ie)&&f(c,j,w,ie),wn=!1,ke=c.memoizedState,j.state=ke,Wn(c,w,j,C);var xt=c.memoizedState;Q!==He||ke!==xt||Jr.current||wn?(typeof ft=="function"&&(Vc(c,g,ft,w),xt=c.memoizedState),(Se=wn||$m(c,g,Se,w,ke,xt,ie)||!1)?(je||typeof j.UNSAFE_componentWillUpdate!="function"&&typeof j.componentWillUpdate!="function"||(typeof j.componentWillUpdate=="function"&&j.componentWillUpdate(w,xt,ie),typeof j.UNSAFE_componentWillUpdate=="function"&&j.UNSAFE_componentWillUpdate(w,xt,ie)),typeof j.componentDidUpdate=="function"&&(c.flags|=4),typeof j.getSnapshotBeforeUpdate=="function"&&(c.flags|=1024)):(typeof j.componentDidUpdate!="function"||Q===a.memoizedProps&&ke===a.memoizedState||(c.flags|=4),typeof j.getSnapshotBeforeUpdate!="function"||Q===a.memoizedProps&&ke===a.memoizedState||(c.flags|=1024),c.memoizedProps=w,c.memoizedState=xt),j.props=w,j.state=xt,j.context=ie,w=Se):(typeof j.componentDidUpdate!="function"||Q===a.memoizedProps&&ke===a.memoizedState||(c.flags|=4),typeof j.getSnapshotBeforeUpdate!="function"||Q===a.memoizedProps&&ke===a.memoizedState||(c.flags|=1024),w=!1)}return Kt(a,c,g,w,B,C)}function Kt(a,c,g,w,C,B){Ee(a,c);var j=(c.flags&128)!==0;if(!w&&!j)return C&&If(c,g,!1),Da(a,c,B);w=c.stateNode,Ot.current=c;var Q=j&&typeof g.getDerivedStateFromError!="function"?null:w.render();return c.flags|=1,a!==null&&j?(c.child=Aa(c,a.child,null,B),c.child=Aa(c,null,Q,B)):at(a,c,Q,B),c.memoizedState=w.state,C&&If(c,g,!0),c.child}function Xt(a){var c=a.stateNode;c.pendingContext?Tf(a,c.pendingContext,c.pendingContext!==c.context):c.context&&Tf(a,c.context,!1),Fc(a,c.containerInfo)}function dn(a,c,g,w,C){return jo(),Cl(C),c.flags|=256,at(a,c,g,w),c.child}var ir={dehydrated:null,treeContext:null,retryLane:0};function hn(a){return{baseLanes:a,cachePool:null,transitions:null}}function uo(a,c,g){var w=c.pendingProps,C=Ln.current,B=!1,j=(c.flags&128)!==0,Q;if((Q=j)||(Q=a!==null&&a.memoizedState===null?!1:(C&2)!==0),Q?(B=!0,c.flags&=-129):(a===null||a.memoizedState!==null)&&(C|=1),bn(Ln,C&1),a===null)return Nh(c),a=c.memoizedState,a!==null&&(a=a.dehydrated,a!==null)?(c.mode&1?a.data==="$!"?c.lanes=8:c.lanes=1073741824:c.lanes=1,null):(j=w.children,a=w.fallback,B?(w=c.mode,B=c.child,j={mode:"hidden",children:j},!(w&1)&&B!==null?(B.childLanes=0,B.pendingProps=j):B=l0(j,w,0,null),a=Kc(a,w,g,null),B.return=c,a.return=c,B.sibling=a,c.child=B,c.child.memoizedState=hn(g),c.memoizedState=ir,a):Xf(c,j));if(C=a.memoizedState,C!==null&&(Q=C.dehydrated,Q!==null))return tI(a,c,j,w,Q,C,g);if(B){B=w.fallback,j=c.mode,C=a.child,Q=C.sibling;var ie={mode:"hidden",children:w.children};return!(j&1)&&c.child!==C?(w=c.child,w.childLanes=0,w.pendingProps=ie,c.deletions=null):(w=kl(C,ie),w.subtreeFlags=C.subtreeFlags&14680064),Q!==null?B=kl(Q,B):(B=Kc(B,j,g,null),B.flags|=2),B.return=c,w.return=c,w.sibling=B,c.child=w,w=B,B=c.child,j=a.child.memoizedState,j=j===null?hn(g):{baseLanes:j.baseLanes|g,cachePool:null,transitions:j.transitions},B.memoizedState=j,B.childLanes=a.childLanes&~g,c.memoizedState=ir,w}return B=a.child,a=B.sibling,w=kl(B,{mode:"visible",children:w.children}),!(c.mode&1)&&(w.lanes=g),w.return=c,w.sibling=null,a!==null&&(g=c.deletions,g===null?(c.deletions=[a],c.flags|=16):g.push(a)),c.child=w,c.memoizedState=null,w}function Xf(a,c){return c=l0({mode:"visible",children:c},a.mode,0,null),c.return=a,a.child=c}function Km(a,c,g,w){return w!==null&&Cl(w),Aa(c,a.child,null,g),a=Xf(c,c.pendingProps.children),a.flags|=2,c.memoizedState=null,a}function tI(a,c,g,w,C,B,j){if(g)return c.flags&256?(c.flags&=-257,w=R(Error(t(422))),Km(a,c,j,w)):c.memoizedState!==null?(c.child=a.child,c.flags|=128,null):(B=w.fallback,C=c.mode,w=l0({mode:"visible",children:w.children},C,0,null),B=Kc(B,C,j,null),B.flags|=2,w.return=c,B.return=c,w.sibling=B,c.child=w,c.mode&1&&Aa(c,a.child,null,j),c.child.memoizedState=hn(j),c.memoizedState=ir,B);if(!(c.mode&1))return Km(a,c,j,null);if(C.data==="$!"){if(w=C.nextSibling&&C.nextSibling.dataset,w)var Q=w.dgst;return w=Q,B=Error(t(419)),w=R(B,w,void 0),Km(a,c,j,w)}if(Q=(j&a.childLanes)!==0,tn||Q){if(w=Fr,w!==null){switch(j&-j){case 4:C=2;break;case 16:C=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:C=32;break;case 536870912:C=268435456;break;default:C=0}C=C&(w.suspendedLanes|j)?0:C,C!==0&&C!==B.retryLane&&(B.retryLane=C,cs(a,C),po(w,a,C,-1))}return V1(),w=R(Error(t(421))),Km(a,c,j,w)}return C.data==="$?"?(c.flags|=128,c.child=a.child,c=pI.bind(null,a),C._reactRetry=c,null):(a=B.treeContext,Kr=Qs(C.nextSibling),Ar=c,Dn=!0,Wi=null,a!==null&&($r[gr++]=Ke,$r[gr++]=Vi,$r[gr++]=wa,Ke=a.id,Vi=a.overflow,wa=c),c=Xf(c,w.children),c.flags|=4096,c)}function mS(a,c,g){a.lanes|=c;var w=a.alternate;w!==null&&(w.lanes|=c),Lc(a.return,c,g)}function I1(a,c,g,w,C){var B=a.memoizedState;B===null?a.memoizedState={isBackwards:c,rendering:null,renderingStartTime:0,last:w,tail:g,tailMode:C}:(B.isBackwards=c,B.rendering=null,B.renderingStartTime=0,B.last=w,B.tail=g,B.tailMode=C)}function gS(a,c,g){var w=c.pendingProps,C=w.revealOrder,B=w.tail;if(at(a,c,w.children,g),w=Ln.current,w&2)w=w&1|2,c.flags|=128;else{if(a!==null&&a.flags&128)e:for(a=c.child;a!==null;){if(a.tag===13)a.memoizedState!==null&&mS(a,g,c);else if(a.tag===19)mS(a,g,c);else if(a.child!==null){a.child.return=a,a=a.child;continue}if(a===c)break e;for(;a.sibling===null;){if(a.return===null||a.return===c)break e;a=a.return}a.sibling.return=a.return,a=a.sibling}w&=1}if(bn(Ln,w),!(c.mode&1))c.memoizedState=null;else switch(C){case"forwards":for(g=c.child,C=null;g!==null;)a=g.alternate,a!==null&&us(a)===null&&(C=g),g=g.sibling;g=C,g===null?(C=c.child,c.child=null):(C=g.sibling,g.sibling=null),I1(c,!1,C,g,B);break;case"backwards":for(g=null,C=c.child,c.child=null;C!==null;){if(a=C.alternate,a!==null&&us(a)===null){c.child=C;break}a=C.sibling,C.sibling=g,g=C,C=a}I1(c,!0,g,null,B);break;case"together":I1(c,!1,null,null,void 0);break;default:c.memoizedState=null}return c.child}function Ym(a,c){!(c.mode&1)&&a!==null&&(a.alternate=null,c.alternate=null,c.flags|=2)}function Da(a,c,g){if(a!==null&&(c.dependencies=a.dependencies),Wc|=c.lanes,!(g&c.childLanes))return null;if(a!==null&&c.child!==a.child)throw Error(t(153));if(c.child!==null){for(a=c.child,g=kl(a,a.pendingProps),c.child=g,g.return=c;a.sibling!==null;)a=a.sibling,g=g.sibling=kl(a,a.pendingProps),g.return=c;g.sibling=null}return c.child}function nI(a,c,g){switch(c.tag){case 3:Xt(c),jo();break;case 5:Pa(c);break;case 1:Dr(c.type)&&Ma(c);break;case 4:Fc(c,c.stateNode.containerInfo);break;case 10:var w=c.type._context,C=c.memoizedProps.value;bn(Ea,w._currentValue),w._currentValue=C;break;case 13:if(w=c.memoizedState,w!==null)return w.dehydrated!==null?(bn(Ln,Ln.current&1),c.flags|=128,null):g&c.child.childLanes?uo(a,c,g):(bn(Ln,Ln.current&1),a=Da(a,c,g),a!==null?a.sibling:null);bn(Ln,Ln.current&1);break;case 19:if(w=(g&c.childLanes)!==0,a.flags&128){if(w)return gS(a,c,g);c.flags|=128}if(C=c.memoizedState,C!==null&&(C.rendering=null,C.tail=null,C.lastEffect=null),bn(Ln,Ln.current),w)break;return null;case 22:case 23:return c.lanes=0,fe(a,c,g)}return Da(a,c,g)}var yS,P1,vS,_S;yS=function(a,c){for(var g=c.child;g!==null;){if(g.tag===5||g.tag===6)a.appendChild(g.stateNode);else if(g.tag!==4&&g.child!==null){g.child.return=g,g=g.child;continue}if(g===c)break;for(;g.sibling===null;){if(g.return===null||g.return===c)return;g=g.return}g.sibling.return=g.return,g=g.sibling}},P1=function(){},vS=function(a,c,g,w){var C=a.memoizedProps;if(C!==w){a=c.stateNode,rr(wi.current);var B=null;switch(g){case"input":C=K(a,C),w=K(a,w),B=[];break;case"select":C=q({},C,{value:void 0}),w=q({},w,{value:void 0}),B=[];break;case"textarea":C=G(a,C),w=G(a,w),B=[];break;default:typeof C.onClick!="function"&&typeof w.onClick=="function"&&(a.onclick=bc)}$t(g,w);var j;g=null;for(Se in C)if(!w.hasOwnProperty(Se)&&C.hasOwnProperty(Se)&&C[Se]!=null)if(Se==="style"){var Q=C[Se];for(j in Q)Q.hasOwnProperty(j)&&(g||(g={}),g[j]="")}else Se!=="dangerouslySetInnerHTML"&&Se!=="children"&&Se!=="suppressContentEditableWarning"&&Se!=="suppressHydrationWarning"&&Se!=="autoFocus"&&(i.hasOwnProperty(Se)?B||(B=[]):(B=B||[]).push(Se,null));for(Se in w){var ie=w[Se];if(Q=C!=null?C[Se]:void 0,w.hasOwnProperty(Se)&&ie!==Q&&(ie!=null||Q!=null))if(Se==="style")if(Q){for(j in Q)!Q.hasOwnProperty(j)||ie&&ie.hasOwnProperty(j)||(g||(g={}),g[j]="");for(j in ie)ie.hasOwnProperty(j)&&Q[j]!==ie[j]&&(g||(g={}),g[j]=ie[j])}else g||(B||(B=[]),B.push(Se,g)),g=ie;else Se==="dangerouslySetInnerHTML"?(ie=ie?ie.__html:void 0,Q=Q?Q.__html:void 0,ie!=null&&Q!==ie&&(B=B||[]).push(Se,ie)):Se==="children"?typeof ie!="string"&&typeof ie!="number"||(B=B||[]).push(Se,""+ie):Se!=="suppressContentEditableWarning"&&Se!=="suppressHydrationWarning"&&(i.hasOwnProperty(Se)?(ie!=null&&Se==="onScroll"&&Tn("scroll",a),B||Q===ie||(B=[])):(B=B||[]).push(Se,ie))}g&&(B=B||[]).push("style",g);var Se=B;(c.updateQueue=Se)&&(c.flags|=4)}},_S=function(a,c,g,w){g!==w&&(c.flags|=4)};function Jf(a,c){if(!Dn)switch(a.tailMode){case"hidden":c=a.tail;for(var g=null;c!==null;)c.alternate!==null&&(g=c),c=c.sibling;g===null?a.tail=null:g.sibling=null;break;case"collapsed":g=a.tail;for(var w=null;g!==null;)g.alternate!==null&&(w=g),g=g.sibling;w===null?c||a.tail===null?a.tail=null:a.tail.sibling=null:w.sibling=null}}function oi(a){var c=a.alternate!==null&&a.alternate.child===a.child,g=0,w=0;if(c)for(var C=a.child;C!==null;)g|=C.lanes|C.childLanes,w|=C.subtreeFlags&14680064,w|=C.flags&14680064,C.return=a,C=C.sibling;else for(C=a.child;C!==null;)g|=C.lanes|C.childLanes,w|=C.subtreeFlags,w|=C.flags,C.return=a,C=C.sibling;return a.subtreeFlags|=w,a.childLanes=g,c}function rI(a,c,g){var w=c.pendingProps;switch(ro(c),c.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return oi(c),null;case 1:return Dr(c.type)&&Cc(),oi(c),null;case 3:return w=c.stateNode,Ho(),In(Jr),In(wr),Os(),w.pendingContext&&(w.context=w.pendingContext,w.pendingContext=null),(a===null||a.child===null)&&(bl(c)?c.flags|=4:a===null||a.memoizedState.isDehydrated&&!(c.flags&256)||(c.flags|=1024,Wi!==null&&(z1(Wi),Wi=null))),P1(a,c),oi(c),null;case 5:Pl(c);var C=rr(oo.current);if(g=c.type,a!==null&&c.stateNode!=null)vS(a,c,g,w,C),a.ref!==c.ref&&(c.flags|=512,c.flags|=2097152);else{if(!w){if(c.stateNode===null)throw Error(t(166));return oi(c),null}if(a=rr(wi.current),bl(c)){w=c.stateNode,g=c.type;var B=c.memoizedProps;switch(w[lr]=c,w[El]=B,a=(c.mode&1)!==0,g){case"dialog":Tn("cancel",w),Tn("close",w);break;case"iframe":case"object":case"embed":Tn("load",w);break;case"video":case"audio":for(C=0;C<ko.length;C++)Tn(ko[C],w);break;case"source":Tn("error",w);break;case"img":case"image":case"link":Tn("error",w),Tn("load",w);break;case"details":Tn("toggle",w);break;case"input":pt(w,B),Tn("invalid",w);break;case"select":w._wrapperState={wasMultiple:!!B.multiple},Tn("invalid",w);break;case"textarea":ee(w,B),Tn("invalid",w)}$t(g,B),C=null;for(var j in B)if(B.hasOwnProperty(j)){var Q=B[j];j==="children"?typeof Q=="string"?w.textContent!==Q&&(B.suppressHydrationWarning!==!0&&Ec(w.textContent,Q,a),C=["children",Q]):typeof Q=="number"&&w.textContent!==""+Q&&(B.suppressHydrationWarning!==!0&&Ec(w.textContent,Q,a),C=["children",""+Q]):i.hasOwnProperty(j)&&Q!=null&&j==="onScroll"&&Tn("scroll",w)}switch(g){case"input":Pt(w),Ve(w,B,!0);break;case"textarea":Pt(w),Pe(w);break;case"select":case"option":break;default:typeof B.onClick=="function"&&(w.onclick=bc)}w=C,c.updateQueue=w,w!==null&&(c.flags|=4)}else{j=C.nodeType===9?C:C.ownerDocument,a==="http://www.w3.org/1999/xhtml"&&(a=be(g)),a==="http://www.w3.org/1999/xhtml"?g==="script"?(a=j.createElement("div"),a.innerHTML="<script><\/script>
40",a=a.removeChild(a.firstChild)):typeof w.is=="string"?a=j.createElement(g,{is:w.is}):(a=j.createElement(g),g==="select"&&(j=a,w.multiple?j.multiple=!0:w.size&&(j.size=w.size))):a=j.createElementNS(a,g),a[lr]=c,a[El]=w,yS(a,c,!1,!1),c.stateNode=a;e:{switch(j=kt(g,w),g){case"dialog":Tn("cancel",a),Tn("close",a),C=w;break;case"iframe":case"object":case"embed":Tn("load",a),C=w;break;case"video":case"audio":for(C=0;C<ko.length;C++)Tn(ko[C],a);C=w;break;case"source":Tn("error",a),C=w;break;case"img":case"image":case"link":Tn("error",a),Tn("load",a),C=w;break;case"details":Tn("toggle",a),C=w;break;case"input":pt(a,w),C=K(a,w),Tn("invalid",a);break;case"option":C=w;break;case"select":a._wrapperState={wasMultiple:!!w.multiple},C=q({},w,{value:void 0}),Tn("invalid",a);break;case"textarea":ee(a,w),C=G(a,w),Tn("invalid",a);break;default:C=w}$t(g,C),Q=C;for(B in Q)if(Q.hasOwnProperty(B)){var ie=Q[B];B==="style"?Rt(a,ie):B==="dangerouslySetInnerHTML"?(ie=ie?ie.__html:void 0,ie!=null&&Qe(a,ie)):B==="children"?typeof ie=="string"?(g!=="textarea"||ie!=="")&&Ht(a,ie):typeof ie=="number"&&Ht(a,""+ie):B!=="suppressContentEditableWarning"&&B!=="suppressHydrationWarning"&&B!=="autoFocus"&&(i.hasOwnProperty(B)?ie!=null&&B==="onScroll"&&Tn("scroll",a):ie!=null&&I(a,B,ie,j))}switch(g){case"input":Pt(a),Ve(a,w,!1);break;case"textarea":Pt(a),Pe(a);break;case"option":w.value!=null&&a.setAttribute("value",""+Ge(w.value));break;case"select":a.multiple=!!w.multiple,B=w.value,B!=null?J(a,!!w.multiple,B,!1):w.defaultValue!=null&&J(a,!!w.multiple,w.defaultValue,!0);break;default:typeof C.onClick=="function"&&(a.onclick=bc)}switch(g){case"button":case"input":case"select":case"textarea":w=!!w.autoFocus;break e;case"img":w=!0;break e;default:w=!1}}w&&(c.flags|=4)}c.ref!==null&&(c.flags|=512,c.flags|=2097152)}return oi(c),null;case 6:if(a&&c.stateNode!=null)_S(a,c,a.memoizedProps,w);else{if(typeof w!="string"&&c.stateNode===null)throw Error(t(166));if(g=rr(oo.current),rr(wi.current),bl(c)){if(w=c.stateNode,g=c.memoizedProps,w[lr]=c,(B=w.nodeValue!==g)&&(a=Ar,a!==null))switch(a.tag){case 3:Ec(w.nodeValue,g,(a.mode&1)!==0);break;case 5:a.memoizedProps.suppressHydrationWarning!==!0&&Ec(w.nodeValue,g,(a.mode&1)!==0)}B&&(c.flags|=4)}else w=(g.nodeType===9?g:g.ownerDocument).createTextNode(w),w[lr]=c,c.stateNode=w}return oi(c),null;case 13:if(In(Ln),w=c.memoizedState,a===null||a.memoizedState!==null&&a.memoizedState.dehydrated!==null){if(Dn&&Kr!==null&&c.mode&1&&!(c.flags&128))Df(),jo(),c.flags|=98560,B=!1;else if(B=bl(c),w!==null&&w.dehydrated!==null){if(a===null){if(!B)throw Error(t(318));if(B=c.memoizedState,B=B!==null?B.dehydrated:null,!B)throw Error(t(317));B[lr]=c}else jo(),!(c.flags&128)&&(c.memoizedState=null),c.flags|=4;oi(c),B=!1}else Wi!==null&&(z1(Wi),Wi=null),B=!0;if(!B)return c.flags&65536?c:null}return c.flags&128?(c.lanes=g,c):(w=w!==null,w!==(a!==null&&a.memoizedState!==null)&&w&&(c.child.flags|=8192,c.mode&1&&(a===null||Ln.current&1?Tr===0&&(Tr=3):V1())),c.updateQueue!==null&&(c.flags|=4),oi(c),null);case 4:return Ho(),P1(a,c),a===null&&Sl(c.stateNode.containerInfo),oi(c),null;case 10:return Dc(c.type._context),oi(c),null;case 17:return Dr(c.type)&&Cc(),oi(c),null;case 19:if(In(Ln),B=c.memoizedState,B===null)return oi(c),null;if(w=(c.flags&128)!==0,j=B.rendering,j===null)if(w)Jf(B,!1);else{if(Tr!==0||a!==null&&a.flags&128)for(a=c.child;a!==null;){if(j=us(a),j!==null){for(c.flags|=128,Jf(B,!1),w=j.updateQueue,w!==null&&(c.updateQueue=w,c.flags|=4),c.subtreeFlags=0,w=g,g=c.child;g!==null;)B=g,a=w,B.flags&=14680066,j=B.alternate,j===null?(B.childLanes=0,B.lanes=a,B.child=null,B.subtreeFlags=0,B.memoizedProps=null,B.memoizedState=null,B.updateQueue=null,B.dependencies=null,B.stateNode=null):(B.childLanes=j.childLanes,B.lanes=j.lanes,B.child=j.child,B.subtreeFlags=0,B.deletions=null,B.memoizedProps=j.memoizedProps,B.memoizedState=j.memoizedState,B.updateQueue=j.updateQueue,B.type=j.type,a=j.dependencies,B.dependencies=a===null?null:{lanes:a.lanes,firstContext:a.firstContext}),g=g.sibling;return bn(Ln,Ln.current&1|2),c.child}a=a.sibling}B.tail!==null&&oe()>$h&&(c.flags|=128,w=!0,Jf(B,!1),c.lanes=4194304)}else{if(!w)if(a=us(j),a!==null){if(c.flags|=128,w=!0,g=a.updateQueue,g!==null&&(c.updateQueue=g,c.flags|=4),Jf(B,!0),B.tail===null&&B.tailMode==="hidden"&&!j.alternate&&!Dn)return oi(c),null}else 2*oe()-B.renderingStartTime>$h&&g!==1073741824&&(c.flags|=128,w=!0,Jf(B,!1),c.lanes=4194304);B.isBackwards?(j.sibling=c.child,c.child=j):(g=B.last,g!==null?g.sibling=j:c.child=j,B.last=j)}return B.tail!==null?(c=B.tail,B.rendering=c,B.tail=c.sibling,B.renderingStartTime=oe(),c.sibling=null,g=Ln.current,bn(Ln,w?g&1|2:g&1),c):(oi(c),null);case 22:case 23:return G1(),w=c.memoizedState!==null,a!==null&&a.memoizedState!==null!==w&&(c.flags|=8192),w&&c.mode&1?fs&1073741824&&(oi(c),c.subtreeFlags&6&&(c.flags|=8192)):oi(c),null;case 24:return null;case 25:return null}throw Error(t(156,c.tag))}function iI(a,c){switch(ro(c),c.tag){case 1:return Dr(c.type)&&Cc(),a=c.flags,a&65536?(c.flags=a&-65537|128,c):null;case 3:return Ho(),In(Jr),In(wr),Os(),a=c.flags,a&65536&&!(a&128)?(c.flags=a&-65537|128,c):null;case 5:return Pl(c),null;case 13:if(In(Ln),a=c.memoizedState,a!==null&&a.dehydrated!==null){if(c.alternate===null)throw Error(t(340));jo()}return a=c.flags,a&65536?(c.flags=a&-65537|128,c):null;case 19:return In(Ln),null;case 4:return Ho(),null;case 10:return Dc(c.type._context),null;case 22:case 23:return G1(),null;case 24:return null;default:return null}}var qm=!1,ai=!1,sI=typeof WeakSet=="function"?WeakSet:Set,vt=null;function Xh(a,c){var g=a.ref;if(g!==null)if(typeof g=="function")try{g(null)}catch(w){sr(a,c,w)}else g.current=null}function R1(a,c,g){try{g()}catch(w){sr(a,c,w)}}var xS=!1;function oI(a,c){if(Al=ki,a=zn(),dr(a)){if("selectionStart"in a)var g={start:a.selectionStart,end:a.selectionEnd};else e:{g=(g=a.ownerDocument)&&g.defaultView||window;var w=g.getSelection&&g.getSelection();if(w&&w.rangeCount!==0){g=w.anchorNode;var C=w.anchorOffset,B=w.focusNode;w=w.focusOffset;try{g.nodeType,B.nodeType}catch{g=null;break e}var j=0,Q=-1,ie=-1,Se=0,je=0,He=a,ke=null;t:for(;;){for(var ft;
vendor: 25,163 bytes, line 40
40He!==g||C!==0&&He.nodeType!==3||(Q=j+C),He!==B||w!==0&&He.nodeType!==3||(ie=j+w),He.nodeType===3&&(j+=He.nodeValue.length),(ft=He.firstChild)!==null;)ke=He,He=ft;for(;;){if(He===a)break t;if(ke===g&&++Se===C&&(Q=j),ke===B&&++je===w&&(ie=j),(ft=He.nextSibling)!==null)break;He=ke,ke=He.parentNode}He=ft}g=Q===-1||ie===-1?null:{start:Q,end:ie}}else g=null}g=g||{start:0,end:0}}else g=null;for(Sf={focusedElem:a,selectionRange:g},ki=!1,vt=c;vt!==null;)if(c=vt,a=c.child,(c.subtreeFlags&1028)!==0&&a!==null)a.return=c,vt=a;else for(;vt!==null;){c=vt;try{var xt=c.alternate;if(c.flags&1024)switch(c.tag){case 0:case 11:case 15:break;case 1:if(xt!==null){var Mt=xt.memoizedProps,cr=xt.memoizedState,ve=c.stateNode,ae=ve.getSnapshotBeforeUpdate(c.elementType===c.type?Mt:Xi(c.type,Mt),cr);ve.__reactInternalSnapshotBeforeUpdate=ae}break;case 3:var _e=c.stateNode.containerInfo;_e.nodeType===1?_e.textContent="":_e.nodeType===9&&_e.documentElement&&_e.removeChild(_e.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(t(163))}}catch(Xe){sr(c,c.return,Xe)}if(a=c.sibling,a!==null){a.return=c.return,vt=a;break}vt=c.return}return xt=xS,xS=!1,xt}function $f(a,c,g){var w=c.updateQueue;if(w=w!==null?w.lastEffect:null,w!==null){var C=w=w.next;do{if((C.tag&a)===a){var B=C.destroy;C.destroy=void 0,B!==void 0&&R1(c,g,B)}C=C.next}while(C!==w)}}function Qm(a,c){if(c=c.updateQueue,c=c!==null?c.lastEffect:null,c!==null){var g=c=c.next;do{if((g.tag&a)===a){var w=g.create;g.destroy=w()}g=g.next}while(g!==c)}}function B1(a){var c=a.ref;if(c!==null){var g=a.stateNode;switch(a.tag){case 5:a=g;break;default:a=g}typeof c=="function"?c(a):c.current=a}}function MS(a){var c=a.alternate;c!==null&&(a.alternate=null,MS(c)),a.child=null,a.deletions=null,a.sibling=null,a.tag===5&&(c=a.stateNode,c!==null&&(delete c[lr],delete c[El],delete c[_a],delete c[Ih],delete c[Ph])),a.stateNode=null,a.return=null,a.dependencies=null,a.memoizedProps=null,a.memoizedState=null,a.pendingProps=null,a.stateNode=null,a.updateQueue=null}function SS(a){return a.tag===5||a.tag===3||a.tag===4}function wS(a){e:for(;;){for(;a.sibling===null;){if(a.return===null||SS(a.return))return null;a=a.return}for(a.sibling.return=a.return,a=a.sibling;a.tag!==5&&a.tag!==6&&a.tag!==18;){if(a.flags&2||a.child===null||a.tag===4)continue e;a.child.return=a,a=a.child}if(!(a.flags&2))return a.stateNode}}function O1(a,c,g){var w=a.tag;if(w===5||w===6)a=a.stateNode,c?g.nodeType===8?g.parentNode.insertBefore(a,c):g.insertBefore(a,c):(g.nodeType===8?(c=g.parentNode,c.insertBefore(a,g)):(c=g,c.appendChild(a)),g=g._reactRootContainer,g!=null||c.onclick!==null||(c.onclick=bc));else if(w!==4&&(a=a.child,a!==null))for(O1(a,c,g),a=a.sibling;a!==null;)O1(a,c,g),a=a.sibling}function D1(a,c,g){var w=a.tag;if(w===5||w===6)a=a.stateNode,c?g.insertBefore(a,c):g.appendChild(a);else if(w!==4&&(a=a.child,a!==null))for(D1(a,c,g),a=a.sibling;a!==null;)D1(a,c,g),a=a.sibling}var qr=null,ho=!1;function Ol(a,c,g){for(g=g.child;g!==null;)AS(a,c,g),g=g.sibling}function AS(a,c,g){if(dt&&typeof dt.onCommitFiberUnmount=="function")try{dt.onCommitFiberUnmount(yt,g)}catch{}switch(g.tag){case 5:ai||Xh(g,c);case 6:var w=qr,C=ho;qr=null,Ol(a,c,g),qr=w,ho=C,qr!==null&&(ho?(a=qr,g=g.stateNode,a.nodeType===8?a.parentNode.removeChild(g):a.removeChild(g)):qr.removeChild(g.stateNode));break;case 18:qr!==null&&(ho?(a=qr,g=g.stateNode,a.nodeType===8?Th(a.parentNode,g):a.nodeType===1&&Th(a,g),pc(a)):Th(qr,g.stateNode));break;case 4:w=qr,C=ho,qr=g.stateNode.containerInfo,ho=!0,Ol(a,c,g),qr=w,ho=C;break;case 0:case 11:case 14:case 15:if(!ai&&(w=g.updateQueue,w!==null&&(w=w.lastEffect,w!==null))){C=w=w.next;do{var B=C,j=B.destroy;B=B.tag,j!==void 0&&(B&2||B&4)&&R1(g,c,j),C=C.next}while(C!==w)}Ol(a,c,g);break;case 1:if(!ai&&(Xh(g,c),w=g.stateNode,typeof w.componentWillUnmount=="function"))try{w.props=g.memoizedProps,w.state=g.memoizedState,w.componentWillUnmount()}catch(Q){sr(g,c,Q)}Ol(a,c,g);break;case 21:Ol(a,c,g);break;case 22:g.mode&1?(ai=(w=ai)||g.memoizedState!==null,Ol(a,c,g),ai=w):Ol(a,c,g);break;default:Ol(a,c,g)}}function ES(a){var c=a.updateQueue;if(c!==null){a.updateQueue=null;var g=a.stateNode;g===null&&(g=a.stateNode=new sI),c.forEach(function(w){var C=mI.bind(null,a,w);g.has(w)||(g.add(w),w.then(C,C))})}}function fo(a,c){var g=c.deletions;if(g!==null)for(var w=0;w<g.length;w++){var C=g[w];try{var B=a,j=c,Q=j;e:for(;Q!==null;){switch(Q.tag){case 5:qr=Q.stateNode,ho=!1;break e;case 3:qr=Q.stateNode.containerInfo,ho=!0;break e;case 4:qr=Q.stateNode.containerInfo,ho=!0;break e}Q=Q.return}if(qr===null)throw Error(t(160));AS(B,j,C),qr=null,ho=!1;var ie=C.alternate;ie!==null&&(ie.return=null),C.return=null}catch(Se){sr(C,c,Se)}}if(c.subtreeFlags&12854)for(c=c.child;c!==null;)bS(c,a),c=c.sibling}function bS(a,c){var g=a.alternate,w=a.flags;switch(a.tag){case 0:case 11:case 14:case 15:if(fo(c,a),Vo(a),w&4){try{$f(3,a,a.return),Qm(3,a)}catch(Mt){sr(a,a.return,Mt)}try{$f(5,a,a.return)}catch(Mt){sr(a,a.return,Mt)}}break;case 1:fo(c,a),Vo(a),w&512&&g!==null&&Xh(g,g.return);break;case 5:if(fo(c,a),Vo(a),w&512&&g!==null&&Xh(g,g.return),a.flags&32){var C=a.stateNode;try{Ht(C,"")}catch(Mt){sr(a,a.return,Mt)}}if(w&4&&(C=a.stateNode,C!=null)){var B=a.memoizedProps,j=g!==null?g.memoizedProps:B,Q=a.type,ie=a.updateQueue;if(a.updateQueue=null,ie!==null)try{Q==="input"&&B.type==="radio"&&B.name!=null&&Fe(C,B),kt(Q,j);var Se=kt(Q,B);for(j=0;j<ie.length;j+=2){var je=ie[j],He=ie[j+1];je==="style"?Rt(C,He):je==="dangerouslySetInnerHTML"?Qe(C,He):je==="children"?Ht(C,He):I(C,je,He,Se)}switch(Q){case"input":st(C,B);break;case"textarea":ye(C,B);break;case"select":var ke=C._wrapperState.wasMultiple;C._wrapperState.wasMultiple=!!B.multiple;var ft=B.value;ft!=null?J(C,!!B.multiple,ft,!1):ke!==!!B.multiple&&(B.defaultValue!=null?J(C,!!B.multiple,B.defaultValue,!0):J(C,!!B.multiple,B.multiple?[]:"",!1))}C[El]=B}catch(Mt){sr(a,a.return,Mt)}}break;case 6:if(fo(c,a),Vo(a),w&4){if(a.stateNode===null)throw Error(t(162));C=a.stateNode,B=a.memoizedProps;try{C.nodeValue=B}catch(Mt){sr(a,a.return,Mt)}}break;case 3:if(fo(c,a),Vo(a),w&4&&g!==null&&g.memoizedState.isDehydrated)try{pc(c.containerInfo)}catch(Mt){sr(a,a.return,Mt)}break;case 4:fo(c,a),Vo(a);break;case 13:fo(c,a),Vo(a),C=a.child,C.flags&8192&&(B=C.memoizedState!==null,C.stateNode.isHidden=B,!B||C.alternate!==null&&C.alternate.memoizedState!==null||(F1=oe())),w&4&&ES(a);break;case 22:if(je=g!==null&&g.memoizedState!==null,a.mode&1?(ai=(Se=ai)||je,fo(c,a),ai=Se):fo(c,a),Vo(a),w&8192){if(Se=a.memoizedState!==null,(a.stateNode.isHidden=Se)&&!je&&a.mode&1)for(vt=a,je=a.child;je!==null;){for(He=vt=je;vt!==null;){switch(ke=vt,ft=ke.child,ke.tag){case 0:case 11:case 14:case 15:$f(4,ke,ke.return);break;case 1:Xh(ke,ke.return);var xt=ke.stateNode;if(typeof xt.componentWillUnmount=="function"){w=ke,g=ke.return;try{c=w,xt.props=c.memoizedProps,xt.state=c.memoizedState,xt.componentWillUnmount()}catch(Mt){sr(w,g,Mt)}}break;case 5:Xh(ke,ke.return);break;case 22:if(ke.memoizedState!==null){IS(He);continue}}ft!==null?(ft.return=ke,vt=ft):IS(He)}je=je.sibling}e:for(je=null,He=a;;){if(He.tag===5){if(je===null){je=He;try{C=He.stateNode,Se?(B=C.style,typeof B.setProperty=="function"?B.setProperty("display","none","important"):B.display="none"):(Q=He.stateNode,ie=He.memoizedProps.style,j=ie!=null&&ie.hasOwnProperty("display")?ie.display:null,Q.style.display=Ct("display",j))}catch(Mt){sr(a,a.return,Mt)}}}else if(He.tag===6){if(je===null)try{He.stateNode.nodeValue=Se?"":He.memoizedProps}catch(Mt){sr(a,a.return,Mt)}}else if((He.tag!==22&&He.tag!==23||He.memoizedState===null||He===a)&&He.child!==null){He.child.return=He,He=He.child;continue}if(He===a)break e;for(;He.sibling===null;){if(He.return===null||He.return===a)break e;je===He&&(je=null),He=He.return}je===He&&(je=null),He.sibling.return=He.return,He=He.sibling}}break;case 19:fo(c,a),Vo(a),w&4&&ES(a);break;case 21:break;default:fo(c,a),Vo(a)}}function Vo(a){var c=a.flags;if(c&2){try{e:{for(var g=a.return;g!==null;){if(SS(g)){var w=g;break e}g=g.return}throw Error(t(160))}switch(w.tag){case 5:var C=w.stateNode;w.flags&32&&(Ht(C,""),w.flags&=-33);var B=wS(a);D1(a,B,C);break;case 3:case 4:var j=w.stateNode.containerInfo,Q=wS(a);O1(a,Q,j);break;default:throw Error(t(161))}}catch(ie){sr(a,a.return,ie)}a.flags&=-3}c&4096&&(a.flags&=-4097)}function aI(a,c,g){vt=a,CS(a)}function CS(a,c,g){for(var w=(a.mode&1)!==0;vt!==null;){var C=vt,B=C.child;if(C.tag===22&&w){var j=C.memoizedState!==null||qm;if(!j){var Q=C.alternate,ie=Q!==null&&Q.memoizedState!==null||ai;Q=qm;var Se=ai;if(qm=j,(ai=ie)&&!Se)for(vt=C;vt!==null;)j=vt,ie=j.child,j.tag===22&&j.memoizedState!==null?PS(C):ie!==null?(ie.return=j,vt=ie):PS(C);for(;B!==null;)vt=B,CS(B),B=B.sibling;vt=C,qm=Q,ai=Se}TS(a)}else C.subtreeFlags&8772&&B!==null?(B.return=C,vt=B):TS(a)}}function TS(a){for(;vt!==null;){var c=vt;if(c.flags&8772){var g=c.alternate;try{if(c.flags&8772)switch(c.tag){case 0:case 11:case 15:ai||Qm(5,c);break;case 1:var w=c.stateNode;if(c.flags&4&&!ai)if(g===null)w.componentDidMount();else{var C=c.elementType===c.type?g.memoizedProps:Xi(c.type,g.memoizedProps);w.componentDidUpdate(C,g.memoizedState,w.__reactInternalSnapshotBeforeUpdate)}var B=c.updateQueue;B!==null&&Il(c,B,w);break;case 3:var j=c.updateQueue;if(j!==null){if(g=null,c.child!==null)switch(c.child.tag){case 5:g=c.child.stateNode;break;case 1:g=c.child.stateNode}Il(c,j,g)}break;case 5:var Q=c.stateNode;if(g===null&&c.flags&4){g=Q;var ie=c.memoizedProps;switch(c.type){case"button":case"input":case"select":case"textarea":ie.autoFocus&&g.focus();break;case"img":ie.src&&(g.src=ie.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(c.memoizedState===null){var Se=c.alternate;if(Se!==null){var je=Se.memoizedState;if(je!==null){var He=je.dehydrated;He!==null&&pc(He)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(t(163))}ai||c.flags&512&&B1(c)}catch(ke){sr(c,c.return,ke)}}if(c===a){vt=null;break}if(g=c.sibling,g!==null){g.return=c.return,vt=g;break}vt=c.return}}function IS(a){for(;vt!==null;){var c=vt;if(c===a){vt=null;break}var g=c.sibling;if(g!==null){g.return=c.return,vt=g;break}vt=c.return}}function PS(a){for(;vt!==null;){var c=vt;try{switch(c.tag){case 0:case 11:case 15:var g=c.return;try{Qm(4,c)}catch(ie){sr(c,g,ie)}break;case 1:var w=c.stateNode;if(typeof w.componentDidMount=="function"){var C=c.return;try{w.componentDidMount()}catch(ie){sr(c,C,ie)}}var B=c.return;try{B1(c)}catch(ie){sr(c,B,ie)}break;case 5:var j=c.return;try{B1(c)}catch(ie){sr(c,j,ie)}}}catch(ie){sr(c,c.return,ie)}if(c===a){vt=null;break}var Q=c.sibling;if(Q!==null){Q.return=c.return,vt=Q;break}vt=c.return}}var lI=Math.ceil,Zm=P.ReactCurrentDispatcher,L1=P.ReactCurrentOwner,Ls=P.ReactCurrentBatchConfig,_n=0,Fr=null,yr=null,Qr=0,fs=0,Jh=Vn(0),Tr=0,Kf=null,Wc=0,e0=0,N1=0,Yf=null,Ji=null,F1=0,$h=1/0,La=null,t0=!1,k1=null,Dl=null,n0=!1,Ll=null,r0=0,qf=0,U1=null,i0=-1,s0=0;function Ci(){return _n&6?oe():i0!==-1?i0:i0=oe()}function Nl(a){return a.mode&1?_n&2&&Qr!==0?Qr&-Qr:C1.transition!==null?(s0===0&&(s0=On()),s0):(a=en,a!==0||(a=window.event,a=a===void 0?16:Am(a.type)),a):1}function po(a,c,g,w){if(50<qf)throw qf=0,U1=null,Error(t(185));Jn(a,g,w),(!(_n&2)||a!==Fr)&&(a===Fr&&(!(_n&2)&&(e0|=g),Tr===4&&Fl(a,Qr)),$i(a,w),g===1&&_n===0&&!(c.mode&1)&&($h=oe()+500,Ic&&Rs()))}function $i(a,c){var g=a.callbackNode;Es(a,c);var w=Fi(a,a===Fr?Qr:0);if(w===0)g!==null&&de(g),a.callbackNode=null,a.callbackPriority=0;else if(c=w&-w,a.callbackPriority!==c){if(g!=null&&de(g),c===1)a.tag===0?km(BS.bind(null,a)):Pc(BS.bind(null,a)),b1(function(){!(_n&6)&&Rs()}),g=null;else{switch(cl(w)){case 1:g=Ye;break;case 4:g=ct;break;case 16:g=mt;break;case 536870912:g=Bt;break;default:g=mt}g=jS(g,RS.bind(null,a))}a.callbackPriority=c,a.callbackNode=g}}function RS(a,c){if(i0=-1,s0=0,_n&6)throw Error(t(327));var g=a.callbackNode;if(Kh()&&a.callbackNode!==g)return null;var w=Fi(a,a===Fr?Qr:0);if(w===0)return null;if(w&30||w&a.expiredLanes||c)c=o0(a,w);else{c=w;var C=_n;_n|=2;var B=DS();(Fr!==a||Qr!==c)&&(La=null,$h=oe()+500,Jc(a,c));do try{hI();break}catch(Q){OS(a,Q)}while(!0);Ca(),Zm.current=B,_n=C,yr!==null?c=0:(Fr=null,Qr=0,c=Tr)}if(c!==0){if(c===2&&(C=Sn(a),C!==0&&(w=C,c=j1(a,C))),c===1)throw g=Kf,Jc(a,0),Fl(a,w),$i(a,oe()),g;if(c===6)Fl(a,w);else{if(C=a.current.alternate,!(w&30)&&!cI(C)&&(c=o0(a,w),c===2&&(B=Sn(a),B!==0&&(w=B,c=j1(a,B))),c===1))throw g=Kf,Jc(a,0),Fl(a,w),$i(a,oe()),g;switch(a.finishedWork=C,a.finishedLanes=w,c){case 0:case 1:throw Error(t(345));case 2:$c(a,Ji,La);break;case 3:if(Fl(a,w),(w&130023424)===w&&(c=F1+500-oe(),10<c)){if(Fi(a,0)!==0)break;if(C=a.suspendedLanes,(C&w)!==w){Ci(),a.pingedLanes|=a.suspendedLanes&C;break}a.timeoutHandle=Af($c.bind(null,a,Ji,La),c);break}$c(a,Ji,La);break;case 4:if(Fl(a,w),(w&4194240)===w)break;for(c=a.eventTimes,C=-1;0<w;){var j=31-rn(w);B=1<<j,j=c[j],j>C&&(C=j),w&=~B}if(w=C,w=oe()-w,w=(120>w?120:480>w?480:1080>w?1080:1920>w?1920:3e3>w?3e3:4320>w?4320:1960*lI(w/1960))-w,10<w){a.timeoutHandle=Af($c.bind(null,a,Ji,La),w);break}$c(a,Ji,La);break;case 5:$c(a,Ji,La);break;default:throw Error(t(329))}}}return $i(a,oe()),a.callbackNode===g?RS.bind(null,a):null}function j1(a,c){var g=Yf;return a.current.memoizedState.isDehydrated&&(Jc(a,c).flags|=256),a=o0(a,c),a!==2&&(c=Ji,Ji=g,c!==null&&z1(c)),a}function z1(a){Ji===null?Ji=a:Ji.push.apply(Ji,a)}function cI(a){for(var c=a;;){if(c.flags&16384){var g=c.updateQueue;if(g!==null&&(g=g.stores,g!==null))for(var w=0;w<g.length;w++){var C=g[w],B=C.getSnapshot;C=C.value;try{if(!_i(B(),C))return!1}catch{return!1}}}if(g=c.child,c.subtreeFlags&16384&&g!==null)g.return=c,c=g;else{if(c===a)break;for(;c.sibling===null;){if(c.return===null||c.return===a)return!0;c=c.return}c.sibling.return=c.return,c=c.sibling}}return!0}function Fl(a,c){for(c&=~N1,c&=~e0,a.suspendedLanes|=c,a.pingedLanes&=~c,a=a.expirationTimes;0<c;){var g=31-rn(c),w=1<<g;a[g]=-1,c&=~w}}function BS(a){if(_n&6)throw Error(t(327));Kh();var c=Fi(a,0);if(!(c&1))return $i(a,oe()),null;var g=o0(a,c);if(a.tag!==0&&g===2){var w=Sn(a);w!==0&&(c=w,g=j1(a,w))}if(g===1)throw g=Kf,Jc(a,0),Fl(a,c),$i(a,oe()),g;if(g===6)throw Error(t(345));return a.finishedWork=a.current.alternate,a.finishedLanes=c,$c(a,Ji,La),$i(a,oe()),null}function H1(a,c){var g=_n;_n|=1;try{return a(c)}finally{_n=g,_n===0&&($h=oe()+500,Ic&&Rs())}}function Xc(a){Ll!==null&&Ll.tag===0&&!(_n&6)&&Kh();var c=_n;_n|=1;var g=Ls.transition,w=en;try{if(Ls.transition=null,en=1,a)return a()}finally{en=w,Ls.transition=g,_n=c,!(_n&6)&&Rs()}}function G1(){fs=Jh.current,In(Jh)}function Jc(a,c){a.finishedWork=null,a.finishedLanes=0;var g=a.timeoutHandle;if(g!==-1&&(a.timeoutHandle=-1,Ef(g)),yr!==null)for(g=yr.return;g!==null;){var w=g;switch(ro(w),w.tag){case 1:w=w.type.childContextTypes,w!=null&&Cc();break;case 3:Ho(),In(Jr),In(wr),Os();break;case 5:Pl(w);break;case 4:Ho();break;case 13:In(Ln);break;case 19:In(Ln);break;case 10:Dc(w.type._context);break;case 22:case 23:G1()}g=g.return}if(Fr=a,yr=a=kl(a.current,null),Qr=fs=c,Tr=0,Kf=null,N1=e0=Wc=0,Ji=Yf=null,so!==null){for(c=0;c<so.length;c++)if(g=so[c],w=g.interleaved,w!==null){g.interleaved=null;var C=w.next,B=g.pending;if(B!==null){var j=B.next;B.next=C,w.next=j}g.pending=w}so=null}return a}function OS(a,c){do{var g=yr;try{if(Ca(),Ra.current=Vh,hs){for(var w=Pn.memoizedState;w!==null;){var C=w.queue;C!==null&&(C.pending=null),w=w.next}hs=!1}if(ao=0,mn=Xn=Pn=null,Nr=!1,Go=0,L1.current=null,g===null||g.return===null){Tr=1,Kf=c,yr=null;break}e:{var B=a,j=g.return,Q=g,ie=c;if(c=Qr,Q.flags|=32768,ie!==null&&typeof ie=="object"&&typeof ie.then=="function"){var Se=ie,je=Q,He=je.tag;if(!(je.mode&1)&&(He===0||He===11||He===15)){var ke=je.alternate;ke?(je.updateQueue=ke.updateQueue,je.memoizedState=ke.memoizedState,je.lanes=ke.lanes):(je.updateQueue=null,je.memoizedState=null)}var ft=gt(j);if(ft!==null){ft.flags&=-257,Wt(ft,j,Q,B,c),ft.mode&1&&We(B,Se,c),c=ft,ie=Se;var xt=c.updateQueue;if(xt===null){var Mt=new Set;Mt.add(ie),c.updateQueue=Mt}else xt.add(ie);break e}else{if(!(c&1)){We(B,Se,c),V1();break e}ie=Error(t(426))}}else if(Dn&&Q.mode&1){var cr=gt(j);if(cr!==null){!(cr.flags&65536)&&(cr.flags|=256),Wt(cr,j,Q,B,c),Cl(b(ie,Q));break e}}B=ie=b(ie,Q),Tr!==4&&(Tr=2),Yf===null?Yf=[B]:Yf.push(B),B=j;do{switch(B.tag){case 3:B.flags|=65536,c&=-c,B.lanes|=c;var ve=le(B,ie,c);Ta(B,ve);break e;case 1:Q=ie;var ae=B.type,_e=B.stateNode;if(!(B.flags&128)&&(typeof ae.getDerivedStateFromError=="function"||_e!==null&&typeof _e.componentDidCatch=="function"&&(Dl===null||!Dl.has(_e)))){B.flags|=65536,c&=-c,B.lanes|=c;var Xe=Te(B,Q,c);Ta(B,Xe);break e}}B=B.return}while(B!==null)}NS(g)}catch(bt){c=bt,yr===g&&g!==null&&(yr=g=g.return);continue}break}while(!0)}function DS(){var a=Zm.current;return Zm.current=Vh,a===null?Vh:a}function V1(){(Tr===0||Tr===3||Tr===2)&&(Tr=4),Fr===null||!(Wc&268435455)&&!(e0&268435455)||Fl(Fr,Qr)}function o0(a,c){var g=_n;_n|=2;var w=DS();(Fr!==a||Qr!==c)&&(La=null,Jc(a,c));do try{uI();break}catch(C){OS(a,C)}while(!0);if(Ca(),_n=g,Zm.current=w,yr!==null)throw Error(t(261));return Fr=null,Qr=0,Tr}function uI(){for(;yr!==null;)LS(yr)}function hI(){for(;yr!==null&&!Me();)LS(yr)}function LS(a){var c=US(a.alternate,a,fs);a.memoizedProps=a.pendingProps,c===null?NS(a):yr=c,L1.current=null}function NS(a){var c=a;do{var g=c.alternate;if(a=c.return,c.flags&32768){if(g=iI(g,c),g!==null){g.flags&=32767,yr=g;return}if(a!==null)a.flags|=32768,a.subtreeFlags=0,a.deletions=null;else{Tr=6,yr=null;return}}else if(g=rI(g,c,fs),g!==null){yr=g;return}if(c=c.sibling,c!==null){yr=c;return}yr=c=a}while(c!==null);Tr===0&&(Tr=5)}function $c(a,c,g){var w=en,C=Ls.transition;try{Ls.transition=null,en=1,dI(a,c,g,w)}finally{Ls.transition=C,en=w}return null}function dI(a,c,g,w){do Kh();while(Ll!==null);if(_n&6)throw Error(t(327));g=a.finishedWork;var C=a.finishedLanes;if(g===null)return null;if(a.finishedWork=null,a.finishedLanes=0,g===a.current)throw Error(t(177));a.callbackNode=null,a.callbackPriority=0;var B=g.lanes|g.childLanes;if(Or(a,B),a===Fr&&(yr=Fr=null,Qr=0),!(g.subtreeFlags&2064)&&!(g.flags&2064)||n0||(n0=!0,jS(mt,function(){return Kh(),null})),B=(g.flags&15990)!==0,g.subtreeFlags&15990||B){B=Ls.transition,Ls.transition=null;var j=en;en=1;var Q=_n;_n|=4,L1.current=null,oI(a,g),bS(g,a),fr(Sf),ki=!!Al,Sf=Al=null,a.current=g,aI(g),we(),_n=Q,en=j,Ls.transition=B}else a.current=g;if(n0&&(n0=!1,Ll=a,r0=C),B=a.pendingLanes,B===0&&(Dl=null),Tt(g.stateNode),$i(a,oe()),c!==null)for(w=a.onRecoverableError,g=0;g<c.length;g++)C=c[g],w(C.value,{componentStack:C.stack,digest:C.digest});if(t0)throw t0=!1,a=k1,k1=null,a;return r0&1&&a.tag!==0&&Kh(),B=a.pendingLanes,B&1?a===U1?qf++:(qf=0,U1=a):qf=0,Rs(),null}function Kh(){if(Ll!==null){var a=cl(r0),c=Ls.transition,g=en;try{if(Ls.transition=null,en=16>a?16:a,Ll===null)var w=!1;else{if(a=Ll,Ll=null,r0=0,_n&6)throw Error(t(331));var C=_n;for(_n|=4,vt=a.current;vt!==null;){var B=vt,j=B.child;if(vt.flags&16){var Q=B.deletions;if(Q!==null){for(var ie=0;ie<Q.length;ie++){var Se=Q[ie];for(vt=Se;vt!==null;){var je=vt;switch(je.tag){case 0:case 11:case 15:$f(8,je,B)}var He=je.child;if(He!==null)He.return=je,vt=He;else for(;vt!==null;){je=vt;var ke=je.sibling,ft=je.return;if(MS(je),je===Se){vt=null;break}if(ke!==null){ke.return=ft,vt=ke;break}vt=ft}}}var xt=B.alternate;if(xt!==null){var Mt=xt.child;if(Mt!==null){xt.child=null;do{var cr=Mt.sibling;Mt.sibling=null,Mt=cr}while(Mt!==null)}}vt=B}}if(B.subtreeFlags&2064&&j!==null)j.return=B,vt=j;else e:for(;vt!==null;){if(B=vt,B.flags&2048)switch(B.tag){case 0:case 11:case 15:$f(9,B,B.return)}var ve=B.sibling;if(ve!==null){ve.return=B.return,vt=ve;break e}vt=B.return}}var ae=a.current;for(vt=ae;vt!==null;){j=vt;var _e=j.child;if(j.subtreeFlags&2064&&_e!==null)_e.return=j,vt=_e;else e:for(j=ae;vt!==null;){if(Q=vt,Q.flags&2048)try{switch(Q.tag){case 0:case 11:case 15:Qm(9,Q)}}catch(bt){sr(Q,Q.return,bt)}if(Q===j){vt=null;break e}var Xe=Q.sibling;if(Xe!==null){Xe.return=Q.return,vt=Xe;break e}vt=Q.return}}if(_n=C,Rs(),dt&&typeof dt.onPostCommitFiberRoot=="function")try{dt.onPostCommitFiberRoot(yt,a)}catch{}w=!0}return w}finally{en=g,Ls.transition=c}}return!1}function FS(a,c,g){c=b(g,c),c=le(a,c,1),a=Fn(a,c,1),c=Ci(),a!==null&&(Jn(a,1,c),$i(a,c))}function sr(a,c,g){if(a.tag===3)FS(a,a,g);else for(;c!==null;){if(c.tag===3){FS(c,a,g);break}else if(c.tag===1){var w=c.stateNode;if(typeof c.type.getDerivedStateFromError=="function"||typeof w.componentDidCatch=="function"&&(Dl===null||!Dl.has(w))){a=b(g,a),a=Te(c,a,1),c=Fn(c,a,1),a=Ci(),c!==null&&(Jn(c,1,a),$i(c,a));break}}c=c.return}}function fI(a,c,g){var w=a.pingCache;w!==null&&w.delete(c),c=Ci(),a.pingedLanes|=a.suspendedLanes&g,Fr===a&&(Qr&g)===g&&(Tr===4||Tr===3&&(Qr&130023424)===Qr&&500>oe()-F1?Jc(a,0):N1|=g),$i(a,c)}function kS(a,c){c===0&&(a.mode&1?(c=jt,jt<<=1,!(jt&130023424)&&(jt=4194304)):c=1);var g=Ci();a=cs(a,c),a!==null&&(Jn(a,c,g),$i(a,g))}function pI(a){var c=a.memoizedState,g=0;c!==null&&(g=c.retryLane),kS(a,g)}function mI(a,c){var g=0;switch(a.tag){case 13:var w=a.stateNode,C=a.memoizedState;C!==null&&(g=C.retryLane);break;case 19:w=a.stateNode;break;default:throw Error(t(314))}w!==null&&w.delete(c),kS(a,g)}var US;US=function(a,c,g){if(a!==null)if(a.memoizedProps!==c.pendingProps||Jr.current)tn=!0;else{if(!(a.lanes&g)&&!(c.flags&128))return tn=!1,nI(a,c,g);tn=!!(a.flags&131072)}else tn=!1,Dn&&c.flags&1048576&&Pf(c,Dh,c.index);switch(c.lanes=0,c.tag){case 2:var w=c.type;Ym(a,c),a=c.pendingProps;var C=xa(c,wr.current);zo(c,g),C=Uc(null,c,w,a,C,g);var B=kf();return c.flags|=1,typeof C=="object"&&C!==null&&typeof C.render=="function"&&C.$$typeof===void 0?(c.tag=1,c.memoizedState=null,c.updateQueue=null,Dr(w)?(B=!0,Ma(c)):B=!1,c.memoizedState=C.state!==null&&C.state!==void 0?C.state:null,qt(c),C.updater=Wh,c.stateNode=C,C._reactInternals=c,x(c,w,a,g),c=Kt(null,c,w,!0,B,g)):(c.tag=0,Dn&&B&&Rf(c),at(null,c,C,g),c=c.child),c;case 16:w=c.elementType;e:{switch(Ym(a,c),a=c.pendingProps,C=w._init,w=C(w._payload),c.type=w,C=c.tag=yI(w),a=Xi(w,a),C){case 0:c=rt(null,c,w,a,g);break e;case 1:c=At(null,c,w,a,g);break e;case 11:c=Cr(null,c,w,a,g);break e;case 14:c=bi(null,c,w,Xi(w.type,a),g);break e}throw Error(t(306,w,""))}return c;case 0:return w=c.type,C=c.pendingProps,C=c.elementType===w?C:Xi(w,C),rt(a,c,w,C,g);case 1:return w=c.type,C=c.pendingProps,C=c.elementType===w?C:Xi(w,C),At(a,c,w,C,g);case 3:e:{if(Xt(c),a===null)throw Error(t(387));w=c.pendingProps,B=c.memoizedState,C=B.element,Kn(a,c),Wn(c,w,null,g);var j=c.memoizedState;if(w=j.element,B.isDehydrated)if(B={element:w,isDehydrated:!1,cache:j.cache,pendingSuspenseBoundaries:j.pendingSuspenseBoundaries,transitions:j.transitions},c.updateQueue.baseState=B,c.memoizedState=B,c.flags&256){C=b(Error(t(423)),c),c=dn(a,c,w,g,C);break e}else if(w!==C){C=b(Error(t(424)),c),c=dn(a,c,w,g,C);break e}else for(Kr=Qs(c.stateNode.containerInfo.firstChild),Ar=c,Dn=!0,Wi=null,g=Oc(c,null,w,g),c.child=g;g;)g.flags=g.flags&-3|4096,g=g.sibling;else{if(jo(),w===C){c=Da(a,c,g);break e}at(a,c,w,g)}c=c.child}return c;case 5:return Pa(c),a===null&&Nh(c),w=c.type,C=c.pendingProps,B=a!==null?a.memoizedProps:null,j=C.children,wf(w,C)?j=null:B!==null&&wf(w,B)&&(c.flags|=32),Ee(a,c),at(a,c,j,g),c.child;case 6:return a===null&&Nh(c),null;case 13:return uo(a,c,g);case 4:return Fc(c,c.stateNode.containerInfo),w=c.pendingProps,a===null?c.child=Aa(c,null,w,g):at(a,c,w,g),c.child;case 11:return w=c.type,C=c.pendingProps,C=c.elementType===w?C:Xi(w,C),Cr(a,c,w,C,g);case 7:return at(a,c,c.pendingProps,g),c.child;case 8:return at(a,c,c.pendingProps.children,g),c.child;case 12:return at(a,c,c.pendingProps.children,g),c.child;case 10:e:{if(w=c.type._context,C=c.pendingProps,B=c.memoizedProps,j=C.value,bn(Ea,w._currentValue),w._currentValue=j,B!==null)if(_i(B.value,j)){if(B.children===C.children&&!Jr.current){c=Da(a,c,g);break e}}else for(B=c.child,B!==null&&(B.return=c);B!==null;){var Q=B.dependencies;if(Q!==null){j=B.child;for(var ie=Q.firstContext;ie!==null;){if(ie.context===w){if(B.tag===1){ie=An(-1,g&-g),ie.tag=2;var Se=B.updateQueue;if(Se!==null){Se=Se.shared;var je=Se.pending;je===null?ie.next=ie:(ie.next=je.next,je.next=ie),Se.pending=ie}}B.lanes|=g,ie=B.alternate,ie!==null&&(ie.lanes|=g),Lc(B.return,g,c),Q.lanes|=g;break}ie=ie.next}}else if(B.tag===10)j=B.type===c.type?null:B.child;else if(B.tag===18){if(j=B.return,j===null)throw Error(t(341));j.lanes|=g,Q=j.alternate,Q!==null&&(Q.lanes|=g),Lc(j,g,c),j=B.sibling}else j=B.child;if(j!==null)j.return=B;else for(j=B;j!==null;){if(j===c){j=null;break}if(B=j.sibling,B!==null){B.return=j.return,j=B;break}j=j.return}B=j}at(a,c,C.children,g),c=c.child}return c;case 9:return C=c.type,w=c.pendingProps.children,zo(c,g),C=Si(C),w=w(C),c.flags|=1,at(a,c,w,g),c.child;case 14:return w=c.type,C=Xi(w,c.pendingProps),C=Xi(w.type,C),bi(a,c,w,C,g);case 15:return xe(a,c,c.type,c.pendingProps,g);case 17:return w=c.type,C=c.pendingProps,C=c.elementType===w?C:Xi(w,C),Ym(a,c),c.tag=1,Dr(w)?(a=!0,Ma(c)):a=!1,zo(c,g),h(c,w,C),x(c,w,C,g),Kt(null,c,w,!0,a,g);case 19:return gS(a,c,g);case 22:return fe(a,c,g)}throw Error(t(156,c.tag))};function jS(a,c){return W(a,c)}
vendor: 4,735 bytes, line 40
40function gI(a,c,g,w){this.tag=a,this.key=g,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=c,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=w,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Ns(a,c,g,w){return new gI(a,c,g,w)}function W1(a){return a=a.prototype,!(!a||!a.isReactComponent)}function yI(a){if(typeof a=="function")return W1(a)?1:0;if(a!=null){if(a=a.$$typeof,a===te)return 11;if(a===me)return 14}return 2}function kl(a,c){var g=a.alternate;return g===null?(g=Ns(a.tag,c,a.key,a.mode),g.elementType=a.elementType,g.type=a.type,g.stateNode=a.stateNode,g.alternate=a,a.alternate=g):(g.pendingProps=c,g.type=a.type,g.flags=0,g.subtreeFlags=0,g.deletions=null),g.flags=a.flags&14680064,g.childLanes=a.childLanes,g.lanes=a.lanes,g.child=a.child,g.memoizedProps=a.memoizedProps,g.memoizedState=a.memoizedState,g.updateQueue=a.updateQueue,c=a.dependencies,g.dependencies=c===null?null:{lanes:c.lanes,firstContext:c.firstContext},g.sibling=a.sibling,g.index=a.index,g.ref=a.ref,g}function a0(a,c,g,w,C,B){var j=2;if(w=a,typeof a=="function")W1(a)&&(j=1);else if(typeof a=="string")j=5;else e:switch(a){case N:return Kc(g.children,C,B,c);case H:j=8,C|=8;break;case F:return a=Ns(12,g,c,C|2),a.elementType=F,a.lanes=B,a;case ne:return a=Ns(13,g,c,C),a.elementType=ne,a.lanes=B,a;case ce:return a=Ns(19,g,c,C),a.elementType=ce,a.lanes=B,a;case ge:return l0(g,C,B,c);default:if(typeof a=="object"&&a!==null)switch(a.$$typeof){case L:j=10;break e;case V:j=9;break e;case te:j=11;break e;case me:j=14;break e;case he:j=16,w=null;break e}throw Error(t(130,a==null?a:typeof a,""))}return c=Ns(j,g,c,C),c.elementType=a,c.type=w,c.lanes=B,c}function Kc(a,c,g,w){return a=Ns(7,a,w,c),a.lanes=g,a}function l0(a,c,g,w){return a=Ns(22,a,w,c),a.elementType=ge,a.lanes=g,a.stateNode={isHidden:!1},a}function X1(a,c,g){return a=Ns(6,a,null,c),a.lanes=g,a}function J1(a,c,g){return c=Ns(4,a.children!==null?a.children:[],a.key,c),c.lanes=g,c.stateNode={containerInfo:a.containerInfo,pendingChildren:null,implementation:a.implementation},c}function vI(a,c,g,w,C){this.tag=c,this.containerInfo=a,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=Br(0),this.expirationTimes=Br(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Br(0),this.identifierPrefix=w,this.onRecoverableError=C,this.mutableSourceEagerHydrationData=null}function $1(a,c,g,w,C,B,j,Q,ie){return a=new vI(a,c,g,Q,ie),c===1?(c=1,B===!0&&(c|=8)):c=0,B=Ns(3,null,null,c),a.current=B,B.stateNode=a,B.memoizedState={element:w,isDehydrated:g,cache:null,transitions:null,pendingSuspenseBoundaries:null},qt(B),a}function _I(a,c,g){var w=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:O,key:w==null?null:""+w,children:a,containerInfo:c,implementation:g}}function zS(a){if(!a)return eo;a=a._reactInternals;e:{if(As(a)!==a||a.tag!==1)throw Error(t(170));var c=a;do{switch(c.tag){case 3:c=c.stateNode.context;break e;case 1:if(Dr(c.type)){c=c.stateNode.__reactInternalMemoizedMergedChildContext;break e}}c=c.return}while(c!==null);throw Error(t(171))}if(a.tag===1){var g=a.type;if(Dr(g))return Tc(a,g,c)}return c}function HS(a,c,g,w,C,B,j,Q,ie){return a=$1(g,w,!0,a,C,B,j,Q,ie),a.context=zS(null),g=a.current,w=Ci(),C=Nl(g),B=An(w,C),B.callback=c??null,Fn(g,B,C),a.current.lanes=C,Jn(a,C,w),$i(a,w),a}function c0(a,c,g,w){var C=c.current,B=Ci(),j=Nl(C);return g=zS(g),c.context===null?c.context=g:c.pendingContext=g,c=An(B,j),c.payload={element:a},w=w===void 0?null:w,w!==null&&(c.callback=w),a=Fn(C,c,j),a!==null&&(po(a,C,j,B),Lr(a,C,j)),j}function u0(a){if(a=a.current,!a.child)return null;switch(a.child.tag){case 5:return a.child.stateNode;default:return a.child.stateNode}}function GS(a,c){if(a=a.memoizedState,a!==null&&a.dehydrated!==null){var g=a.retryLane;a.retryLane=g!==0&&g<c?g:c}}function K1(a,c){GS(a,c),(a=a.alternate)&&GS(a,c)}function xI(){return null}var VS=typeof reportError=="function"?reportError:function(a){console.error(a)};function Y1(a){this._internalRoot=a}h0.prototype.render=Y1.prototype.render=function(a){var c=this._internalRoot;if(c===null)throw Error(t(409));c0(a,c,null,null)},h0.prototype.unmount=Y1.prototype.unmount=function(){var a=this._internalRoot;if(a!==null){this._internalRoot=null;var c=a.containerInfo;Xc(function(){c0(null,a,null,null)}),c[Mi]=null}};function h0(a){this._internalRoot=a}
vendor: 4,627 bytes, line 40
40h0.prototype.unstable_scheduleHydration=function(a){if(a){var c=Zu();a={blockedOn:null,target:a,priority:c};for(var g=0;g<Bo.length&&c!==0&&c<Bo[g].priority;g++);Bo.splice(g,0,a),g===0&&nh(a)}};function q1(a){return!(!a||a.nodeType!==1&&a.nodeType!==9&&a.nodeType!==11)}function d0(a){return!(!a||a.nodeType!==1&&a.nodeType!==9&&a.nodeType!==11&&(a.nodeType!==8||a.nodeValue!==" react-mount-point-unstable "))}function WS(){}function MI(a,c,g,w,C){if(C){if(typeof w=="function"){var B=w;w=function(){var Se=u0(j);B.call(Se)}}var j=HS(c,w,a,0,null,!1,!1,"",WS);return a._reactRootContainer=j,a[Mi]=j.current,Sl(a.nodeType===8?a.parentNode:a),Xc(),j}for(;C=a.lastChild;)a.removeChild(C);if(typeof w=="function"){var Q=w;w=function(){var Se=u0(ie);Q.call(Se)}}var ie=$1(a,0,!1,null,null,!1,!1,"",WS);return a._reactRootContainer=ie,a[Mi]=ie.current,Sl(a.nodeType===8?a.parentNode:a),Xc(function(){c0(c,ie,g,w)}),ie}function f0(a,c,g,w,C){var B=g._reactRootContainer;if(B){var j=B;if(typeof C=="function"){var Q=C;C=function(){var ie=u0(j);Q.call(ie)}}c0(c,j,a,C)}else j=MI(g,c,a,C,w);return u0(j)}hc=function(a){switch(a.tag){case 3:var c=a.stateNode;if(c.current.memoizedState.isDehydrated){var g=nr(c.pendingLanes);g!==0&&(bs(c,g|1),$i(c,oe()),!(_n&6)&&($h=oe()+500,Rs()))}break;case 13:Xc(function(){var w=cs(a,1);if(w!==null){var C=Ci();po(w,a,1,C)}}),K1(a,1)}},sf=function(a){if(a.tag===13){var c=cs(a,134217728);if(c!==null){var g=Ci();po(c,a,134217728,g)}K1(a,134217728)}},wm=function(a){if(a.tag===13){var c=Nl(a),g=cs(a,c);if(g!==null){var w=Ci();po(g,a,c,w)}K1(a,c)}},Zu=function(){return en},eh=function(a,c){var g=en;try{return en=a,c()}finally{en=g}},Ze=function(a,c,g){switch(c){case"input":if(st(a,g),c=g.name,g.type==="radio"&&c!=null){for(g=a;g.parentNode;)g=g.parentNode;for(g=g.querySelectorAll("input[name="+JSON.stringify(""+c)+'][type="radio"]'),c=0;c<g.length;c++){var w=g[c];if(w!==a&&w.form===a.form){var C=Rh(w);if(!C)throw Error(t(90));Be(w),st(w,C)}}}break;case"textarea":ye(a,g);break;case"select":c=g.value,c!=null&&J(a,!!g.multiple,c,!1)}},Bn=H1,tr=Xc;var SI={usingClientEntryPoint:!1,Events:[Zs,$n,Rh,nt,Gt,H1]},Qf={findFiberByHostInstance:Uo,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},wI={bundleType:Qf.bundleType,version:Qf.version,rendererPackageName:Qf.rendererPackageName,rendererConfig:Qf.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:P.ReactCurrentDispatcher,findHostInstanceByFiber:function(a){return a=qu(a),a===null?null:a.stateNode},findFiberByHostInstance:Qf.findFiberByHostInstance||xI,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.3.1-next-f1338f8080-20240426"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var p0=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!p0.isDisabled&&p0.supportsFiber)try{yt=p0.inject(wI),dt=p0}catch{}}return Ki.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=SI,Ki.createPortal=function(a,c){var g=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!q1(c))throw Error(t(200));return _I(a,c,null,g)},Ki.createRoot=function(a,c){if(!q1(a))throw Error(t(299));var g=!1,w="",C=VS;return c!=null&&(c.unstable_strictMode===!0&&(g=!0),c.identifierPrefix!==void 0&&(w=c.identifierPrefix),c.onRecoverableError!==void 0&&(C=c.onRecoverableError)),c=$1(a,1,!1,null,null,g,!1,w,C),a[Mi]=c.current,Sl(a.nodeType===8?a.parentNode:a),new Y1(c)},Ki.findDOMNode=function(a){if(a==null)return null;if(a.nodeType===1)return a;var c=a._reactInternals;if(c===void 0)throw typeof a.render=="function"?Error(t(188)):(a=Object.keys(a).join(","),Error(t(268,a)));return a=qu(c),a=a===null?null:a.stateNode,a},Ki.flushSync=function(a){return Xc(a)},Ki.hydrate=function(a,c,g){if(!d0(c))throw Error(t(200));return f0(null,a,c,!0,g)},Ki.hydrateRoot=function(a,c,g){if(!q1(a))throw Error(t(405));var w=g!=null&&g.hydratedSources||null,C=!1,B="",j=VS;if(g!=null&&(g.unstable_strictMode===!0&&(C=!0),g.identifierPrefix!==void 0&&(B=g.identifierPrefix),g.onRecoverableError!==void 0&&(j=g.onRecoverableError)),c=HS(c,null,a,1,g??null,C,!1,B,j),a[Mi]=c.current,Sl(a),w)for(a=0;a<w.length;a++)g=w[a],C=g._getVersion,C=C(g._source),c.mutableSourceEagerHydrationData==null?c.mutableSourceEagerHydrationData=[g,C]:c.mutableSourceEagerHydrationData.push(g,C);return new h0(c)},Ki.render=function(a,c,g){if(!d0(c))throw Error(t(200));return f0(null,a,c,!1,g)}
40,Ki.unmountComponentAtNode=function(a){if(!d0(a))throw Error(t(40));return a._reactRootContainer?(Xc(function(){f0(null,null,a,!1,function(){a._reactRootContainer=null,a[Mi]=null})}),!0):!1},Ki.unstable_batchedUpdates=H1,Ki.unstable_renderSubtreeIntoContainer=function(a,c,g,w){if(!d0(g))throw Error(t(200));if(a==null||a._reactInternals===void 0)throw Error(t(38));return f0(a,c,g,!1,w)},Ki.version="18.3.1-next-f1338f8080-20240426",Ki}var ZS;function ab(){if(ZS)return ev.exports;ZS=1;function r(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(r)}catch(e){console.error(e)}}return r(),ev.exports=BI(),ev.exports}var ew;function OI(){if(ew)return m0;ew=1;var r=ab();return m0.createRoot=r.createRoot,m0.hydrateRoot=r.hydrateRoot,m0}var DI=OI();const LI=[{id:1,name:"Home",href:"home"},{id:2,name:"Journey",href:"journey"},{id:3,name:"Skills",href:"skills"},{id:4,name:"Projects",href:"my-work"},{id:5,name:"Contact",href:"Contact"}],NI=[{image:"./assets/peer-review.png",title:"Peer Guide",description:"Looking to showcase your projects and get real feedback? PeerGuide is a full‑stack collaboration hub—React front end, Node.js + Express backend, MongoDB database—where users submit projects, exchange peer reviews in real time, track progress, and explore a vibrant creative community.",buttonText:"Explore More",url:"https://peerguide.vercel.app/"},{image:"./assets/india.png",title:"Xplore INDIA",description:"Dreaming of hassle‑free India trips? XploreIndia is a full‑stack travel buddy—React front end, Node.js + Strapi CMS, Neon (PostgreSQL) backend—offering curated destination guides, seamless routing, responsive design, and an on‑demand chatbot for insider tips.",buttonText:"Explore More",url:"https://xploreindia.vercel.app"},{image:"./assets/chat.png",title:"ChatX",description:"Built a smart real-time chat app where users don’t just message—they have meaningful AI-powered conversations. The frontend runs on React.js with Hooks and Context API, while the backend uses Node.js, Express, and MongoDB for secure JWT-based auth. Groq LLM handles intelligent replies, and Socket.IO keeps chats flowing live and fast.",buttonText:"Explore More",url:"https://github.com/DIVYANSHKATHURIA/ChatX"},{image:"./assets/resume.png",title:"Resume Analyzer",description:"Ever wondered if your resume truly showcases your potential? This full-stack Resume Analyzer evaluates your resume, scrapes real-time data from Coursera and Indeed for personalized course and job recommendations, and leverages an advanced LLM like Ollama for smart career insights.",buttonText:"Explore More",url:"https://github.com/DIVYANSHKATHURIA/Resume-Aanlyzer"},{image:"./assets/summerizer.png",title:"text-Summerization Web App",description:"Tired of reading long articles or notes? Try my website! With just a few clicks, it provides concise, high-quality summaries using the advanced Facebook BART model from Hugging Face. Save time and get to the key points instantly",buttonText:"Explore More",url:"https://textsummerizer.onrender.com"},{image:"./assets/chess.jpg",title:"Chess",description:"Want to create your own chess game and challenge friends? I built a fully interactive chess game in Python where you can play, strategize, and checkmate right from your screen!",buttonText:"Explore More",url:"https://github.com/DIVYANSHKATHURIA/chess"},{image:"./assets/8051.png",title:"8051 Door-Locking system",description:"I developed a door locking system that reliably handles locking and unlocking functions. It integrates an 8051 microcontroller, a 16x2 LCD display, a servo motor, and a keypad. The system was programmed in C using Keil µVision and tested with the Simulide simulator for full functionality",buttonText:"Explore More",url:"https://github.com/DIVYANSHKATHURIA/8051-microcontroller"},{image:"./assets/extension.png",title:"Text-Summerizer extension",description:"Tired of reading long notes? Try this Chrome extension! It offers a user-friendly interface for summarizing text directly within web pages. Using the powerful Facebook BART model from Hugging Face, it generates high-quality summaries with ease.",buttonText:"Explore More",url:"https://github.com/DIVYANSHKATHURIA/Text-Summerization-chrome-extension"},{image:"./assets/language.png",title:"Audio Classifying",description:"Have you ever wondered how machines can understand different languages through sound, just like humans? I developed an audio classification system using CNNs and Mel Spectrograms that can identify various languages. Curious to see how it works and how you can apply it to your own projects?",buttonText:"Explore More",url:"https://github.com/DIVYANSHKATHURIA/Audio-Classification-using-CNN"}],tw=({onClick:r=()=>{}})=>_.jsx("ul",{className:"nav-ul flex flex-col sm:flex-row gap-4 sm:gap-8",children:LI.map(e=>_.jsx("li",{className:"nav-li text-neutral-400 hover:text-white transition-colors cursor-pointer",onClick:t=>{var n;t.preventDefault(),(n=document.getElementById(e.href))==null||n.scrollIntoView({behavior:"smooth"}),r()},children:_.jsx("a",{href:`#${e.href}`,className:"nav-li_a w-full h-full block",children:e.name})},e.id))}),FI=()=>{const[r,e]=z.useState(!1),t=()=>e(!r),n=()=>e(!1);return _.jsxs("header",{className:"fixed top-0 left-0 right-0 z-50 bg-black/90 shadow-md",children:[_.jsx("div",{className:"max-w-7xl mx-auto px-6 sm:px-10",children:_.jsxs("div",{className:"flex justify-between items-center py-4",children:[_.jsx("a",{href:"#home",className:"text-neutral-400 font-bold text-xl hover:text-white transition-colors",children:"Divyansh Kathuria"}),_.jsx("button",{onClick:t,className:"text-neutral-400 hover:text-white focus:outline-none sm:hidden flex items-center","aria-label":"Toggle menu",children:_.jsx("img",{src:r?"assets/close.svg":"assets/menu.svg",alt:"toggle",className:"w-6 h-6 z-50"})}),_.jsx("nav",{className:"hidden sm:flex",children:_.jsx(tw,{})})]})}),r&&_.jsx("div",{className:"sm:hidden bg-black/90 fixed top-0 left-0 w-full h-full z-40",children:_.jsx("nav",{className:"p-6",children:_.jsx(tw,{onClick:n})})})]})};/**
41 * @license
42 * Copyright 2010-2024 Three.js Authors
43 * SPDX-License-Identifier: MIT
44 */const em="171",kI={LEFT:0,MIDDLE:1,RIGHT:2,ROTATE:0,DOLLY:1,PAN:2},UI={ROTATE:0,PAN:1,DOLLY_PAN:2,DOLLY_ROTATE:3},lb=0,V_=1,cb=2,jI=3,ub=0,Oy=1,wp=2,vo=3,Qo=0,Ni=1,xo=2,Ya=0,xu=1,Cg=2,W_=3,X_=4,hb=5,ql=100,db=101,fb=102,pb=103,mb=104,gb=2
vendor: 18,542 bytes, line 44
4400,yb=201,vb=202,_b=203,Tg=204,Ig=205,xb=206,Mb=207,Sb=208,wb=209,Ab=210,Eb=211,bb=212,Cb=213,Tb=214,Pg=0,Rg=1,Bg=2,Cu=3,Og=4,Dg=5,Lg=6,Ng=7,tm=0,Ib=1,Pb=2,Jo=0,Rb=1,Bb=2,Ob=3,jx=4,Db=5,Lb=6,Nb=7,J_="attached",Fb="detached",Dy=300,el=301,Zl=302,Np=303,Fp=304,Vd=306,ec=1e3,ys=1001,Od=1002,zr=1003,Ly=1004,zI=1004,fu=1005,HI=1005,Zn=1006,Cd=1007,GI=1007,js=1008,VI=1008,Mo=1009,zx=1010,Hx=1011,Dd=1012,Ny=1013,tl=1014,Di=1015,ju=1016,Fy=1017,ky=1018,Tu=1020,Gx=35902,Vx=1021,Wx=1022,hi=1023,Xx=1024,Jx=1025,Mu=1026,Iu=1027,Uy=1028,nm=1029,$x=1030,jy=1031,WI=1032,zy=1033,Ap=33776,Ep=33777,bp=33778,Cp=33779,Fg=35840,kg=35841,Ug=35842,jg=35843,zg=36196,Hg=37492,Gg=37496,Vg=37808,Wg=37809,Xg=37810,Jg=37811,$g=37812,Kg=37813,Yg=37814,qg=37815,Qg=37816,Zg=37817,ey=37818,ty=37819,ny=37820,ry=37821,Tp=36492,iy=36494,sy=36495,Kx=36283,oy=36284,ay=36285,ly=36286,kb=2200,Ub=2201,jb=2202,Ld=2300,Nd=2301,xg=2302,pu=2400,mu=2401,kp=2402,Hy=2500,Yx=2501,zb=0,qx=1,cy=2,Hb=3200,Gb=3201,XI=3202,JI=3203,ac=0,Vb=1,Wa="",Zi="srgb",Pu="srgb-linear",Up="linear",Cn="srgb",$I=0,uu=7680,KI=7681,YI=7682,qI=7683,QI=34055,ZI=34056,eP=5386,tP=512,nP=513,rP=514,iP=515,sP=516,oP=517,aP=518,$_=519,Wb=512,Xb=513,Jb=514,Qx=515,$b=516,Kb=517,Yb=518,qb=519,jp=35044,lP=35048,cP=35040,uP=35045,hP=35049,dP=35041,fP=35046,pP=35050,mP=35042,gP="100",K_="300 es",Xo=2e3,zp=2001;class ta{addEventListener(e,t){this._listeners===void 0&&(this._listeners={});const n=this._listeners;n[e]===void 0&&(n[e]=[]),n[e].indexOf(t)===-1&&n[e].push(t)}hasEventListener(e,t){if(this._listeners===void 0)return!1;const n=this._listeners;return n[e]!==void 0&&n[e].indexOf(t)!==-1}removeEventListener(e,t){if(this._listeners===void 0)return;const i=this._listeners[e];if(i!==void 0){const s=i.indexOf(t);s!==-1&&i.splice(s,1)}}dispatchEvent(e){if(this._listeners===void 0)return;const n=this._listeners[e.type];if(n!==void 0){e.target=this;const i=n.slice(0);for(let s=0,o=i.length;s<o;s++)i[s].call(this,e);e.target=null}}}const li=["00","01","02","03","04","05","06","07","08","09","0a","0b","0c","0d","0e","0f","10","11","12","13","14","15","16","17","18","19","1a","1b","1c","1d","1e","1f","20","21","22","23","24","25","26","27","28","29","2a","2b","2c","2d","2e","2f","30","31","32","33","34","35","36","37","38","39","3a","3b","3c","3d","3e","3f","40","41","42","43","44","45","46","47","48","49","4a","4b","4c","4d","4e","4f","50","51","52","53","54","55","56","57","58","59","5a","5b","5c","5d","5e","5f","60","61","62","63","64","65","66","67","68","69","6a","6b","6c","6d","6e","6f","70","71","72","73","74","75","76","77","78","79","7a","7b","7c","7d","7e","7f","80","81","82","83","84","85","86","87","88","89","8a","8b","8c","8d","8e","8f","90","91","92","93","94","95","96","97","98","99","9a","9b","9c","9d","9e","9f","a0","a1","a2","a3","a4","a5","a6","a7","a8","a9","aa","ab","ac","ad","ae","af","b0","b1","b2","b3","b4","b5","b6","b7","b8","b9","ba","bb","bc","bd","be","bf","c0","c1","c2","c3","c4","c5","c6","c7","c8","c9","ca","cb","cc","cd","ce","cf","d0","d1","d2","d3","d4","d5","d6","d7","d8","d9","da","db","dc","dd","de","df","e0","e1","e2","e3","e4","e5","e6","e7","e8","e9","ea","eb","ec","ed","ee","ef","f0","f1","f2","f3","f4","f5","f6","f7","f8","f9","fa","fb","fc","fd","fe","ff"];let nw=1234567;const Su=Math.PI/180,Fd=180/Math.PI;function _s(){const r=Math.random()*4294967295|0,e=Math.random()*4294967295|0,t=Math.random()*4294967295|0,n=Math.random()*4294967295|0;return(li[r&255]+li[r>>8&255]+li[r>>16&255]+li[r>>24&255]+"-"+li[e&255]+li[e>>8&255]+"-"+li[e>>16&15|64]+li[e>>24&255]+"-"+li[t&63|128]+li[t>>8&255]+"-"+li[t>>16&255]+li[t>>24&255]+li[n&255]+li[n>>8&255]+li[n>>16&255]+li[n>>24&255]).toLowerCase()}function Yt(r,e,t){return Math.max(e,Math.min(t,r))}function Zx(r,e){return(r%e+e)%e}function yP(r,e,t,n,i){return n+(r-e)*(i-n)/(t-e)}function vP(r,e,t){return r!==e?(t-r)/(e-r):0}function Ip(r,e,t){return(1-t)*r+t*e}function _P(r,e,t,n){return Ip(r,e,1-Math.exp(-t*n))}function xP(r,e=1){return e-Math.abs(Zx(r,e*2)-e)}function MP(r,e,t){return r<=e?0:r>=t?1:(r=(r-e)/(t-e),r*r*(3-2*r))}function SP(r,e,t){return r<=e?0:r>=t?1:(r=(r-e)/(t-e),r*r*r*(r*(r*6-15)+10))}function wP(r,e){return r+Math.floor(Math.random()*(e-r+1))}function AP(r,e){return r+Math.random()*(e-r)}function EP(r){return r*(.5-Math.random())}function bP(r){r!==void 0&&(nw=r);let e=nw+=1831565813;return e=Math.imul(e^e>>>15,e|1),e^=e+Math.imul(e^e>>>7,e|61),((e^e>>>14)>>>0)/4294967296}function CP(r){return r*Su}function TP(r){return r*Fd}function IP(r){return(r&r-1)===0&&r!==0}function PP(r){return Math.pow(2,Math.ceil(Math.log(r)/Math.LN2))}function RP(r){return Math.pow(2,Math.floor(Math.log(r)/Math.LN2))}function BP(r,e,t,n,i){const s=Math.cos,o=Math.sin,l=s(t/2),u=o(t/2),d=s((e+n)/2),p=o((e+n)/2),m=s((e-n)/2),y=o((e-n)/2),v=s((n-e)/2),S=o((n-e)/2);switch(i){case"XYX":r.set(l*p,u*m,u*y,l*d);break;case"YZY":r.set(u*y,l*p,u*m,l*d);break;case"ZXZ":r.set(u*m,u*y,l*p,l*d);break;case"XZX":r.set(l*p,u*S,u*v,l*d);break;case"YXY":r.set(u*v,l*p,u*S,l*d);break;case"ZYZ":r.set(u*S,u*v,l*p,l*d);break;default:console.warn("THREE.MathUtils: .setQuaternionFromProperEuler() encountered an unknown order: "+i)}}function Oi(r,e){switch(e.constructor){case Float32Array:return r;case Uint32Array:return r/4294967295;case Uint16Array:return r/65535;case Uint8Array:return r/255;case Int32Array:return Math.max(r/2147483647,-1);case Int16Array:return Math.max(r/32767,-1);case Int8Array:return Math.max(r/127,-1);default:throw new Error("Invalid component type.")}}function nn(r,e){switch(e.constructor){case Float32Array:return r;case Uint32Array:return Math.round(r*4294967295);case Uint16Array:return Math.round(r*65535);case Uint8Array:return Math.round(r*255);case Int32Array:return Math.round(r*2147483647);case Int16Array:return Math.round(r*32767);case Int8Array:return Math.round(r*127);default:throw new Error("Invalid component type.")}}const Qb={DEG2RAD:Su,RAD2DEG:Fd,generateUUID:_s,clamp:Yt,euclideanModulo:Zx,mapLinear:yP,inverseLerp:vP,lerp:Ip,damp:_P,pingpong:xP,smoothstep:MP,smootherstep:SP,randInt:wP,randFloat:AP,randFloatSpread:EP,seededRandom:bP,degToRad:CP,radToDeg:TP,isPowerOfTwo:IP,ceilPowerOfTwo:PP,floorPowerOfTwo:RP,setQuaternionFromProperEuler:BP,normalize:nn,denormalize:Oi};class Ne{constructor(e=0,t=0){Ne.prototype.isVector2=!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){return this.x=e,this.y=t,this}setScalar(e){return this.x=e,this.y=e,this}setX(e){return this.x=e,this}setY(e){return this.y=e,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){return this.x=e.x,this.y=e.y,this}add(e){return this.x+=e.x,this.y+=e.y,this}addScalar(e){return this.x+=e,this.y+=e,this}addVectors(e,t){return this.x=e.x+t.x,this.y=e.y+t.y,this}addScaledVector(e,t){return this.x+=e.x*t,this.y+=e.y*t,this}sub(e){return this.x-=e.x,this.y-=e.y,this}subScalar(e){return this.x-=e,this.y-=e,this}subVectors(e,t){return this.x=e.x-t.x,this.y=e.y-t.y,this}multiply(e){return this.x*=e.x,this.y*=e.y,this}multiplyScalar(e){return this.x*=e,this.y*=e,this}divide(e){return this.x/=e.x,this.y/=e.y,this}divideScalar(e){return this.multiplyScalar(1/e)}applyMatrix3(e){const t=this.x,n=this.y,i=e.elements;return this.x=i[0]*t+i[3]*n+i[6],this.y=i[1]*t+i[4]*n+i[7],this}min(e){return this.x=Math.min(this.x,e.x),this.y=Math.min(this.y,e.y),this}max(e){return this.x=Math.max(this.x,e.x),this.y=Math.max(this.y,e.y),this}clamp(e,t){return this.x=Yt(this.x,e.x,t.x),this.y=Yt(this.y,e.y,t.y),this}clampScalar(e,t){return this.x=Yt(this.x,e,t),this.y=Yt(this.y,e,t),this}clampLength(e,t){const n=this.length();return this.divideScalar(n||1).multiplyScalar(Yt(n,e,t))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this}negate(){return this.x=-this.x,this.y=-this.y,this}dot(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(){return Math.atan2(-this.y,-this.x)+Math.PI}angleTo(e){const t=Math.sqrt(this.lengthSq()*e.lengthSq());if(t===0)return Math.PI/2;const n=this.dot(e)/t;return Math.acos(Yt(n,-1,1))}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){return this.x+=(e.x-this.x)*t,this.y+=(e.y-this.y)*t,this}lerpVectors(e,t,n){return this.x=e.x+(t.x-e.x)*n,this.y=e.y+(t.y-e.y)*n,this}equals(e){return e.x===this.x&&e.y===this.y}fromArray(e,t=0){return this.x=e[t],this.y=e[t+1],this}toArray(e=[],t=0){return e[t]=this.x,e[t+1]=this.y,e}fromBufferAttribute(e,t){return this.x=e.getX(t),this.y=e.getY(t),this}rotateAround(e,t){const n=Math.cos(t),i=Math.sin(t),s=this.x-e.x,o=this.y-e.y;return this.x=s*n-o*i+e.x,this.y=s*i+o*n+e.y,this}random(){return this.x=Math.random(),this.y=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y}}class Qt{constructor(e,t,n,i,s,o,l,u,d){Qt.prototype.isMatrix3=!0,this.elements=[1,0,0,0,1,0,0,0,1],e!==void 0&&this.set(e,t,n,i,s,o,l,u,d)}set(e,t,n,i,s,o,l,u,d){const p=this.elements;return p[0]=e,p[1]=i,p[2]=l,p[3]=t,p[4]=s,p[5]=u,p[6]=n,p[7]=o,p[8]=d,this}identity(){return this.set(1,0,0,0,1,0,0,0,1),this}copy(e){const t=this.elements,n=e.elements;return 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],this}extractBasis(e,t,n){return e.setFromMatrix3Column(this,0),t.setFromMatrix3Column(this,1),n.setFromMatrix3Column(this,2),this}setFromMatrix4(e){const t=e.elements;return this.set(t[0],t[4],t[8],t[1],t[5],t[9],t[2],t[6],t[10]),this}multiply(e){return this.multiplyMatrices(this,e)}premultiply(e){return this.multiplyMatrices(e,this)}multiplyMatrices(e,t){const n=e.elements,i=t.elements,s=this.elements,o=n[0],l=n[3],u=n[6],d=n[1],p=n[4],m=n[7],y=n[2],v=n[5],S=n[8],E=i[0],A=i[3],M=i[6],T=i[1],I=i[4],P=i[7],k=i[2],O=i[5],N=i[8];return s[0]=o*E+l*T+u*k,s[3]=o*A+l*I+u*O,s[6]=o*M+l*P+u*N,s[1]=d*E+p*T+m*k,s[4]=d*A+p*I+m*O,s[7]=d*M+p*P+m*N,s[2]=y*E+v*T+S*k,s[5]=y*A+v*I+S*O,s[8]=y*M+v*P+S*N,this}multiplyScalar(e){const t=this.elements;return 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,this}determinant(){const e=this.elements,t=e[0],n=e[1],i=e[2],s=e[3],o=e[4],l=e[5],u=e[6],d=e[7],p=e[8];return t*o*p-t*l*d-n*s*p+n*l*u+i*s*d-i*o*u}invert(){const e=this.elements,t=e[0],n=e[1],i=e[2],s=e[3],o=e[4],l=e[5],u=e[6],d=e[7],p=e[8],m=p*o-l*d,y=l*u-p*s,v=d*s-o*u,S=t*m+n*y+i*v;if(S===0)return this.set(0,0,0,0,0,0,0,0,0);const E=1/S;return e[0]=m*E,e[1]=(i*d-p*n)*E,e[2]=(l*n-i*o)*E,e[3]=y*E,e[4]=(p*t-i*u)*E,e[5]=(i*s-l*t)*E,e[6]=v*E,e[7]=(n*u-d*t)*E,e[8]=(o*t-n*s)*E,this}transpose(){let e;const t=this.elements;return 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,this}getNormalMatrix(e){return this.setFromMatrix4(e).invert().transpose()}transposeIntoArray(e){const t=this.elements;return 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],this}setUvTransform(e,t,n,i,s,o,l){const u=Math.cos(s),d=Math.sin(s);return this.set(n*u,n*d,-n*(u*o+d*l)+o+e,-i*d,i*u,-i*(-d*o+u*l)+l+t,0,0,1),this}scale(e,t){return this.premultiply(rv.makeScale(e,t)),this}rotate(e){return this.premultiply(rv.makeRotation(-e)),this}translate(e,t){return this.premultiply(rv.makeTranslation(e,t)),this}makeTranslation(e,t){return e.isVector2?this.set(1,0,e.x,0,1,e.y,0,0,1):this.set(1,0,e,0,1,t,0,0,1),this}makeRotation(e){const t=Math.cos(e),n=Math.sin(e);return this.set(t,-n,0,n,t,0,0,0,1),this}makeScale(e,t){return this.set(e,0,0,0,t,0,0,0,1),this}equals(e){const t=this.elements,n=e.elements;for(let i=0;i<9;i++)if(t[i]!==n[i])return!1;return!0}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;return 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}clone(){return new this.constructor().fromArray(this.elements)}}const rv=new Qt;function Zb(r){for(let e=r.length-1;e>=0;--e)if(r[e]>=65535)return!0;return!1}const OP={Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array};function Sd(r,e){return new OP[r](e)}function Hp(r){return document.createElementNS("http://www.w3.org/1999/xhtml",r)}function eC(){const r=Hp("canvas");return r.style.display="block",r}const rw={};function _d(r){r in rw||(rw[r]=!0,console.warn(r))}function DP(r,e,t){return new Promise(function(n,i){function s(){switch(r.clientWaitSync(e,r.SYNC_FLUSH_COMMANDS_BIT,0)){case r.WAIT_FAILED:i();break;case r.TIMEOUT_EXPIRED:setTimeout(s,t);break;default:n()}}setTimeout(s,t)})}function LP(r){const e=r.elements;e[2]=.5*e[2]+.5*e[3],e[6]=.5*e[6]+.5*e[7],e[10]=.5*e[10]+.5*e[11],e[14]=.5*e[14]+.5*e[15]}function NP(r){const e=r.elements;e[11]===-1?(e[10]=-e[10]-1,e[14]=-e[14]):(e[10]=-e[10],e[14]=-e[14]+1)}const iw=new Qt().set(.4123908,.3575843,.1804808,.212639,.7151687,.0721923,.0193308,.1191948,.9505322),sw=new Qt().set(3.2409699,-1.5373832,-.4986108,-.9692436,1.8759675,.0415551,.0556301,-.203977,1.0569715);function FP(){const r={enabled:!0,workingColorSpace:Pu,spaces:{},convert:function(i,s,o){return this.enabled===!1||s===o||!s||!o||(this.spaces[s].transfer===Cn&&(i.r=qa(i.r),i.g=qa(i.g),i.b=qa(i.b)),this.spaces[s].primaries!==this.spaces[o].primaries&&(i.applyMatrix3(this.spaces[s].toXYZ),i.applyMatrix3(this.spaces[o].fromXYZ)),this.spaces[o].transfer===Cn&&(i.r=Td(i.r),i.g=Td(i.g),i.b=Td(i.b))),i},fromWorkingColorSpace:function(i,s){return this.convert(i,this.workingColorSpace,s)},toWorkingColorSpace:function(i,s){return this.convert(i,s,this.workingColorSpace)},getPrimaries:function(i){return this.spaces[i].primaries},getTransfer:function(i){return i===Wa?Up:this.spaces[i].transfer},getLuminanceCoefficients:function(i,s=this.workingColorSpace){return i.fromArray(this.spaces[s].luminanceCoefficients)},define:function(i){Object.assign(this.spaces,i)},_getMatrix:function(i,s,o){return i.copy(this.spaces[s].toXYZ).multiply(this.spaces[o].fromXYZ)},_getDrawingBufferColorSpace:function(i){return this.spaces[i].outputColorSpaceConfig.drawingBufferColorSpace},_getUnpackColorSpace:function(i=this.workingColorSpace){return this.spaces[i].workingColorSpaceConfig.unpackColorSpace}},e=[.64,.33,.3,.6,.15,.06],t=[.2126,.7152,.0722],n=[.3127,.329];return r.define({[Pu]:{primaries:e,whitePoint:n,transfer:Up,toXYZ:iw,fromXYZ:sw,luminanceCoefficients:t,workingColorSpaceConfig:{unpackColorSpace:Zi},outputColorSpaceConfig:{drawingBufferColorSpace:Zi}},[Zi]:{primaries:e,whitePoint:n,transfer:Cn,toXYZ:iw,fromXYZ:sw,luminanceCoefficients:t,outputColorSpaceConfig:{drawingBufferColorSpace:Zi}}}),r}const yn=FP();function qa(r){return r<.04045?r*.0773993808:Math.pow(r*.9478672986+.0521327014,2.4)}function Td(r){return r<.0031308?r*12.92:1.055*Math.pow(r,.41666)-.055}let Yh;class tC{static getDataURL(e){if(/^data:/i.test(e.src)||typeof HTMLCanvasElement>"u")return e.src;let t;if(e instanceof HTMLCanvasElement)t=e;else{Yh===void 0&&(Yh=Hp("canvas")),Yh.width=e.width,Yh.height=e.height;const n=Yh.getContext("2d");e instanceof ImageData?n.putImageData(e,0,0):n.drawImage(e,0,0,e.width,e.height),t=Yh}return t.width>2048||t.height>2048?(console.warn("THREE.ImageUtils.getDataURL: Image converted to jpg for performance reasons",e),t.toDataURL("image/jpeg",.6)):t.toDataURL("image/png")}static sRGBToLinear(e){if(typeof HTMLImageElement<"u"&&e instanceof HTMLImageElement||typeof HTMLCanvasElement<"u"&&e instanceof HTMLCanvasElement||typeof ImageBitmap<"u"&&e instanceof ImageBitmap){const t=Hp("canvas");t.width=e.width,t.height=e.height;const n=t.getContext("2d");n.drawImage(e,0,0,e.width,e.height);const i=n.getImageData(0,0,e.width,e.height),s=i.data;for(let o=0;o<s.length;o++)s[o]=qa(s[o]/255)*255;return n.putImageData(i,0,0),t}else if(e.data){const t=e.data.slice(0);for(let n=0;n<t.length;n++)t instanceof Uint8Array||t instanceof Uint8ClampedArray?t[n]=Math.floor(qa(t[n]/255)*255):t[n]=qa(t[n]);return{data:t,width:e.width,height:e.height}}else return console.warn("THREE.ImageUtils.sRGBToLinear(): Unsupported image type. No color space conversion applied."),e}}let kP=0;class gu{constructor(e=null){this.isSource=!0,Object.defineProperty(this,"id",{value:kP++}),this.uuid=_s(),this.data=e,this.dataReady=!0,this.version=0}set needsUpdate(e){e===!0&&this.version++}toJSON(e){const t=e===void 0||typeof e=="string";if(!t&&e.images[this.uuid]!==void 0)return e.images[this.uuid];const n={uuid:this.uuid,url:""},i=this.data;if(i!==null){let s;if(Array.isArray(i)){s=[];for(let o=0,l=i.length;o<l;o++)i[o].isDataTexture?s.push(iv(i[o].image)):s.push(iv(i[o]))}else s=iv(i);n.url=s}return t||(e.images[this.uuid]=n),n}}function iv(r){return typeof HTMLImageElement<"u"&&r instanceof HTMLImageElement||typeof HTMLCanvasElement<"u"&&r instanceof HTMLCanvasElement||typeof ImageBitmap<"u"&&r instanceof ImageBitmap?tC.getDataURL(r):r.data?{data:Array.from(r.data),width:r.width,height:r.height,type:r.data.constructor.name}:(console.warn("THREE.Texture: Unable to serialize Texture."),{})}let UP=0;class Gn extends ta{constructor(e=Gn.DEFAULT_IMAGE,t=Gn.DEFAULT_MAPPING,n=ys,i=ys,s=Zn,o=js,l=hi,u=Mo,d=Gn.DEFAULT_ANISOTROPY,p=Wa){super(),this.isTexture=!0,Object.defineProperty(this,"id",{value:UP++}),this.uuid=_s(),this.name="",this.source=new gu(e),this.mipmaps=[],this.mapping=t,this.channel=0,this.wrapS=n,this.wrapT=i,this.magFilter=s,this.minFilter=o,this.anisotropy=d,this.format=l,this.internalFormat=null,this.type=u,this.offset=new Ne(0,0),this.repeat=new Ne(1,1),this.center=new Ne(0,0),this.rotation=0,this.matrixAutoUpdate=!0,this.matrix=new Qt,this.generateMipmaps=!0,this.premultiplyAlpha=!1,this.flipY=!0,this.unpackAlignment=4,this.colorSpace
vendor: 4,377 bytes, line 44
44=p,this.userData={},this.version=0,this.onUpdate=null,this.isRenderTargetTexture=!1,this.pmremVersion=0}get image(){return this.source.data}set image(e=null){this.source.data=e}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){return this.name=e.name,this.source=e.source,this.mipmaps=e.mipmaps.slice(0),this.mapping=e.mapping,this.channel=e.channel,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.colorSpace=e.colorSpace,this.userData=JSON.parse(JSON.stringify(e.userData)),this.needsUpdate=!0,this}toJSON(e){const t=e===void 0||typeof e=="string";if(!t&&e.textures[this.uuid]!==void 0)return e.textures[this.uuid];const n={metadata:{version:4.6,type:"Texture",generator:"Texture.toJSON"},uuid:this.uuid,name:this.name,image:this.source.toJSON(e).uuid,mapping:this.mapping,channel:this.channel,repeat:[this.repeat.x,this.repeat.y],offset:[this.offset.x,this.offset.y],center:[this.center.x,this.center.y],rotation:this.rotation,wrap:[this.wrapS,this.wrapT],format:this.format,internalFormat:this.internalFormat,type:this.type,colorSpace:this.colorSpace,minFilter:this.minFilter,magFilter:this.magFilter,anisotropy:this.anisotropy,flipY:this.flipY,generateMipmaps:this.generateMipmaps,premultiplyAlpha:this.premultiplyAlpha,unpackAlignment:this.unpackAlignment};return Object.keys(this.userData).length>0&&(n.userData=this.userData),t||(e.textures[this.uuid]=n),n}dispose(){this.dispatchEvent({type:"dispose"})}transformUv(e){if(this.mapping!==Dy)return e;if(e.applyMatrix3(this.matrix),e.x<0||e.x>1)switch(this.wrapS){case ec:e.x=e.x-Math.floor(e.x);break;case ys:e.x=e.x<0?0:1;break;case Od:Math.abs(Math.floor(e.x)%2)===1?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 ec:e.y=e.y-Math.floor(e.y);break;case ys:e.y=e.y<0?0:1;break;case Od:Math.abs(Math.floor(e.y)%2)===1?e.y=Math.ceil(e.y)-e.y:e.y=e.y-Math.floor(e.y);break}return this.flipY&&(e.y=1-e.y),e}set needsUpdate(e){e===!0&&(this.version++,this.source.needsUpdate=!0)}set needsPMREMUpdate(e){e===!0&&this.pmremVersion++}}Gn.DEFAULT_IMAGE=null;Gn.DEFAULT_MAPPING=Dy;Gn.DEFAULT_ANISOTROPY=1;class xn{constructor(e=0,t=0,n=0,i=1){xn.prototype.isVector4=!0,this.x=e,this.y=t,this.z=n,this.w=i}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,i){return this.x=e,this.y=t,this.z=n,this.w=i,this}setScalar(e){return this.x=e,this.y=e,this.z=e,this.w=e,this}setX(e){return this.x=e,this}setY(e){return this.y=e,this}setZ(e){return this.z=e,this}setW(e){return this.w=e,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){return this.x=e.x,this.y=e.y,this.z=e.z,this.w=e.w!==void 0?e.w:1,this}add(e){return this.x+=e.x,this.y+=e.y,this.z+=e.z,this.w+=e.w,this}addScalar(e){return this.x+=e,this.y+=e,this.z+=e,this.w+=e,this}addVectors(e,t){return this.x=e.x+t.x,this.y=e.y+t.y,this.z=e.z+t.z,this.w=e.w+t.w,this}addScaledVector(e,t){return this.x+=e.x*t,this.y+=e.y*t,this.z+=e.z*t,this.w+=e.w*t,this}sub(e){return this.x-=e.x,this.y-=e.y,this.z-=e.z,this.w-=e.w,this}subScalar(e){return this.x-=e,this.y-=e,this.z-=e,this.w-=e,this}subVectors(e,t){return this.x=e.x-t.x,this.y=e.y-t.y,this.z=e.z-t.z,this.w=e.w-t.w,this}multiply(e){return this.x*=e.x,this.y*=e.y,this.z*=e.z,this.w*=e.w,this}multiplyScalar(e){return this.x*=e,this.y*=e,this.z*=e,this.w*=e,this}applyMatrix4(e){const t=this.x,n=this.y,i=this.z,s=this.w,o=e.elements;
vendor: 4,209 bytes, line 44
44return this.x=o[0]*t+o[4]*n+o[8]*i+o[12]*s,this.y=o[1]*t+o[5]*n+o[9]*i+o[13]*s,this.z=o[2]*t+o[6]*n+o[10]*i+o[14]*s,this.w=o[3]*t+o[7]*n+o[11]*i+o[15]*s,this}divide(e){return this.x/=e.x,this.y/=e.y,this.z/=e.z,this.w/=e.w,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);return t<1e-4?(this.x=1,this.y=0,this.z=0):(this.x=e.x/t,this.y=e.y/t,this.z=e.z/t),this}setAxisAngleFromRotationMatrix(e){let t,n,i,s;const u=e.elements,d=u[0],p=u[4],m=u[8],y=u[1],v=u[5],S=u[9],E=u[2],A=u[6],M=u[10];if(Math.abs(p-y)<.01&&Math.abs(m-E)<.01&&Math.abs(S-A)<.01){if(Math.abs(p+y)<.1&&Math.abs(m+E)<.1&&Math.abs(S+A)<.1&&Math.abs(d+v+M-3)<.1)return this.set(1,0,0,0),this;t=Math.PI;const I=(d+1)/2,P=(v+1)/2,k=(M+1)/2,O=(p+y)/4,N=(m+E)/4,H=(S+A)/4;return I>P&&I>k?I<.01?(n=0,i=.707106781,s=.707106781):(n=Math.sqrt(I),i=O/n,s=N/n):P>k?P<.01?(n=.707106781,i=0,s=.707106781):(i=Math.sqrt(P),n=O/i,s=H/i):k<.01?(n=.707106781,i=.707106781,s=0):(s=Math.sqrt(k),n=N/s,i=H/s),this.set(n,i,s,t),this}let T=Math.sqrt((A-S)*(A-S)+(m-E)*(m-E)+(y-p)*(y-p));return Math.abs(T)<.001&&(T=1),this.x=(A-S)/T,this.y=(m-E)/T,this.z=(y-p)/T,this.w=Math.acos((d+v+M-1)/2),this}setFromMatrixPosition(e){const t=e.elements;return this.x=t[12],this.y=t[13],this.z=t[14],this.w=t[15],this}min(e){return 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),this}max(e){return 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),this}clamp(e,t){return this.x=Yt(this.x,e.x,t.x),this.y=Yt(this.y,e.y,t.y),this.z=Yt(this.z,e.z,t.z),this.w=Yt(this.w,e.w,t.w),this}clampScalar(e,t){return this.x=Yt(this.x,e,t),this.y=Yt(this.y,e,t),this.z=Yt(this.z,e,t),this.w=Yt(this.w,e,t),this}clampLength(e,t){const n=this.length();return this.divideScalar(n||1).multiplyScalar(Yt(n,e,t))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this.w=Math.floor(this.w),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this.w=Math.ceil(this.w),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this.w=Math.round(this.w),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this.z=Math.trunc(this.z),this.w=Math.trunc(this.w),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this.w=-this.w,this}dot(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){return 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,this}lerpVectors(e,t,n){return 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,this}equals(e){return e.x===this.x&&e.y===this.y&&e.z===this.z&&e.w===this.w}fromArray(e,t=0){return this.x=e[t],this.y=e[t+1],this.z=e[t+2],this.w=e[t+3],this}toArray(e=[],t=0){return e[t]=this.x,e[t+1]=this.y,e[t+2]=this.z,e[t+3]=this.w,e}fromBufferAttribute(e,t){return this.x=e.getX(t),this.y=e.getY(t),this.z=e.getZ(t),this.w=e.getW(t),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this.w=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z,yield this.w}}class nC extends ta{constructor(e=1,t=1,n={}){super(),this.isRenderTarget=!0,this.width=e,this.height=t,this.depth=1,this.scissor=new xn(0,0,e,t),this.scissorTest=!1,this.viewport=new xn(0,0,e,t);const i={width:e,height:t,depth:1};n=Object.assign({generateMipmaps:!1,internalFormat:null,minFilter:Zn,depthBuffer:!0,stencilBuffer:!1,resolveDepthBuffer:!0,resolveStencilBuffer:!0,depthTexture:null,samples:0,count:1},n);const s=new Gn(i,n.mapping,n.wrapS,n.wrapT,n.magFilter,n.minFilter,n.format,n.type,n.anisotropy,n.c
vendor: 5,642 bytes, line 44
44olorSpace);s.flipY=!1,s.generateMipmaps=n.generateMipmaps,s.internalFormat=n.internalFormat,this.textures=[];const o=n.count;for(let l=0;l<o;l++)this.textures[l]=s.clone(),this.textures[l].isRenderTargetTexture=!0;this.depthBuffer=n.depthBuffer,this.stencilBuffer=n.stencilBuffer,this.resolveDepthBuffer=n.resolveDepthBuffer,this.resolveStencilBuffer=n.resolveStencilBuffer,this.depthTexture=n.depthTexture,this.samples=n.samples}get texture(){return this.textures[0]}set texture(e){this.textures[0]=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;for(let i=0,s=this.textures.length;i<s;i++)this.textures[i].image.width=e,this.textures[i].image.height=t,this.textures[i].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.scissor.copy(e.scissor),this.scissorTest=e.scissorTest,this.viewport.copy(e.viewport),this.textures.length=0;for(let n=0,i=e.textures.length;n<i;n++)this.textures[n]=e.textures[n].clone(),this.textures[n].isRenderTargetTexture=!0;const t=Object.assign({},e.texture.image);return this.texture.source=new gu(t),this.depthBuffer=e.depthBuffer,this.stencilBuffer=e.stencilBuffer,this.resolveDepthBuffer=e.resolveDepthBuffer,this.resolveStencilBuffer=e.resolveStencilBuffer,e.depthTexture!==null&&(this.depthTexture=e.depthTexture.clone()),this.samples=e.samples,this}dispose(){this.dispatchEvent({type:"dispose"})}}class Hs extends nC{constructor(e=1,t=1,n={}){super(e,t,n),this.isWebGLRenderTarget=!0}}class Gy extends Gn{constructor(e=null,t=1,n=1,i=1){super(null),this.isDataArrayTexture=!0,this.image={data:e,width:t,height:n,depth:i},this.magFilter=zr,this.minFilter=zr,this.wrapR=ys,this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1,this.layerUpdates=new Set}addLayerUpdate(e){this.layerUpdates.add(e)}clearLayerUpdates(){this.layerUpdates.clear()}}class jP extends Hs{constructor(e=1,t=1,n=1,i={}){super(e,t,i),this.isWebGLArrayRenderTarget=!0,this.depth=n,this.texture=new Gy(null,e,t,n),this.texture.isRenderTargetTexture=!0}}class eM extends Gn{constructor(e=null,t=1,n=1,i=1){super(null),this.isData3DTexture=!0,this.image={data:e,width:t,height:n,depth:i},this.magFilter=zr,this.minFilter=zr,this.wrapR=ys,this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1}}class zP extends Hs{constructor(e=1,t=1,n=1,i={}){super(e,t,i),this.isWebGL3DRenderTarget=!0,this.depth=n,this.texture=new eM(null,e,t,n),this.texture.isRenderTargetTexture=!0}}class fi{constructor(e=0,t=0,n=0,i=1){this.isQuaternion=!0,this._x=e,this._y=t,this._z=n,this._w=i}static slerpFlat(e,t,n,i,s,o,l){let u=n[i+0],d=n[i+1],p=n[i+2],m=n[i+3];const y=s[o+0],v=s[o+1],S=s[o+2],E=s[o+3];if(l===0){e[t+0]=u,e[t+1]=d,e[t+2]=p,e[t+3]=m;return}if(l===1){e[t+0]=y,e[t+1]=v,e[t+2]=S,e[t+3]=E;return}if(m!==E||u!==y||d!==v||p!==S){let A=1-l;const M=u*y+d*v+p*S+m*E,T=M>=0?1:-1,I=1-M*M;if(I>Number.EPSILON){const k=Math.sqrt(I),O=Math.atan2(k,M*T);A=Math.sin(A*O)/k,l=Math.sin(l*O)/k}const P=l*T;if(u=u*A+y*P,d=d*A+v*P,p=p*A+S*P,m=m*A+E*P,A===1-l){const k=1/Math.sqrt(u*u+d*d+p*p+m*m);u*=k,d*=k,p*=k,m*=k}}e[t]=u,e[t+1]=d,e[t+2]=p,e[t+3]=m}static multiplyQuaternionsFlat(e,t,n,i,s,o){const l=n[i],u=n[i+1],d=n[i+2],p=n[i+3],m=s[o],y=s[o+1],v=s[o+2],S=s[o+3];return e[t]=l*S+p*m+u*v-d*y,e[t+1]=u*S+p*y+d*m-l*v,e[t+2]=d*S+p*v+l*y-u*m,e[t+3]=p*S-l*m-u*y-d*v,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,i){return this._x=e,this._y=t,this._z=n,this._w=i,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._w)}copy(e){return this._x=e.x,this._y=e.y,this._z=e.z,this._w=e.w,this._onChangeCallback(),this}setFromEuler(e,t=!0){const n=e._x,i=e._y,s=e._z,o=e._order,l=Math.cos,u=Math.sin,d=l(n/2),p=l(i/2),m=l(s/2),y=u(n/2),v=u(i/2),S=u(s/2);switch(o){case"XYZ":this._x=y*p*m+d*v*S,this._y=d*v*m-y*p*S,this._z=d*p*S+y*v*m,this._w=d*p*m-y*v*S;break;case"YXZ":this._x=y*p*m+d*v*S,this._y=d*v*m-y*p*S,this._z=d*p*S-y*v*m,this._w=d*p*m+y*v*S;break;case"ZXY":this._x=y*p*m-d*v*S,this._y=d*v*m+y*p*S,this._z=d*p*S+y*v*m,this._w=d*p*m-y*v*S;break;case"ZYX":this._x=y*p*m-d*v*S,this._y=d*v*m+y*p*S,this._z=d*p*S-y*v*m,this._w=d*p*m+y*v*S;break;case"YZX":this._x=y*p*m+d*v*S,this._y=d*v*m+y*p*S,this._z=d*p*S-y*v*m,this._w=d*p*m-y*v*S;break;case"XZY":this._x=y*p*m-d*v*S,this._y=d*v*m-y*p*S,this._z=d*p*S+y*v*m,this._w=d*p*m+y*v*S;break;default:console.warn("THREE.Quaternion: .setFromEuler() encountered an unknown order: "+o)}return t===!0&&this._onChangeCallback(),this}setFromAxisAngle(e,t){const n=t/2,i=Math.sin(n);return this._x=e.x*i,this._y=e.y*i,this._z=e.z*i,this._w=Math.cos(n),this._onChangeCallback(),this}setFromRotationMatrix(e){const t=e.elements,n=t[0],i=t[4],s=t[8],o=t[1],l=t[5],u=t[9],d=t[2],p=t[6],m=t[10],y=n+l+m;if(y>0){const v=.5/Math.sqrt(y+1);this._w=.25/v,this._x=(p-u)*v,this._y=(s-d)*v,this._z=(o-i)*v}else if(n>l&&n>m){const v=2*Math.sqrt(1+n-l-m);this._w=(p-u)/v,this._x=.25*v,this._y=(i+o)/v,this._z=(s+d)/v}else if(l>m){const v=2*Math.sqrt(1+l-n-m);this._w=(s-d)/v,this._x=(i+o)/v,this._y=.25*v,this._z=(u+p)/v}else{const v=2*Math.sqrt(1+m-n-l);this._w=(o-i)/v,this._x=(s+d)/v,this._y=(u+p)/v,this._z=.25*v}return this._onChangeCallback(),this}setFromUnitVectors(e,t){let n=e.dot(t)+1;return n<Number.EPSILON?(n=0,Math.abs(e.x)>
vendor: 11,888 bytes, line 44
44Math.abs(e.z)?(this._x=-e.y,this._y=e.x,this._z=0,this._w=n):(this._x=0,this._y=-e.z,this._z=e.y,this._w=n)):(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),this.normalize()}angleTo(e){return 2*Math.acos(Math.abs(Yt(this.dot(e),-1,1)))}rotateTowards(e,t){const n=this.angleTo(e);if(n===0)return this;const i=Math.min(1,t/n);return this.slerp(e,i),this}identity(){return this.set(0,0,0,1)}invert(){return this.conjugate()}conjugate(){return this._x*=-1,this._y*=-1,this._z*=-1,this._onChangeCallback(),this}dot(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();return e===0?(this._x=0,this._y=0,this._z=0,this._w=1):(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(),this}multiply(e){return this.multiplyQuaternions(this,e)}premultiply(e){return this.multiplyQuaternions(e,this)}multiplyQuaternions(e,t){const n=e._x,i=e._y,s=e._z,o=e._w,l=t._x,u=t._y,d=t._z,p=t._w;return this._x=n*p+o*l+i*d-s*u,this._y=i*p+o*u+s*l-n*d,this._z=s*p+o*d+n*u-i*l,this._w=o*p-n*l-i*u-s*d,this._onChangeCallback(),this}slerp(e,t){if(t===0)return this;if(t===1)return this.copy(e);const n=this._x,i=this._y,s=this._z,o=this._w;let l=o*e._w+n*e._x+i*e._y+s*e._z;if(l<0?(this._w=-e._w,this._x=-e._x,this._y=-e._y,this._z=-e._z,l=-l):this.copy(e),l>=1)return this._w=o,this._x=n,this._y=i,this._z=s,this;const u=1-l*l;if(u<=Number.EPSILON){const v=1-t;return this._w=v*o+t*this._w,this._x=v*n+t*this._x,this._y=v*i+t*this._y,this._z=v*s+t*this._z,this.normalize(),this}const d=Math.sqrt(u),p=Math.atan2(d,l),m=Math.sin((1-t)*p)/d,y=Math.sin(t*p)/d;return this._w=o*m+this._w*y,this._x=n*m+this._x*y,this._y=i*m+this._y*y,this._z=s*m+this._z*y,this._onChangeCallback(),this}slerpQuaternions(e,t,n){return this.copy(e).slerp(t,n)}random(){const e=2*Math.PI*Math.random(),t=2*Math.PI*Math.random(),n=Math.random(),i=Math.sqrt(1-n),s=Math.sqrt(n);return this.set(i*Math.sin(e),i*Math.cos(e),s*Math.sin(t),s*Math.cos(t))}equals(e){return e._x===this._x&&e._y===this._y&&e._z===this._z&&e._w===this._w}fromArray(e,t=0){return this._x=e[t],this._y=e[t+1],this._z=e[t+2],this._w=e[t+3],this._onChangeCallback(),this}toArray(e=[],t=0){return e[t]=this._x,e[t+1]=this._y,e[t+2]=this._z,e[t+3]=this._w,e}fromBufferAttribute(e,t){return this._x=e.getX(t),this._y=e.getY(t),this._z=e.getZ(t),this._w=e.getW(t),this._onChangeCallback(),this}toJSON(){return this.toArray()}_onChange(e){return this._onChangeCallback=e,this}_onChangeCallback(){}*[Symbol.iterator](){yield this._x,yield this._y,yield this._z,yield this._w}}class ${constructor(e=0,t=0,n=0){$.prototype.isVector3=!0,this.x=e,this.y=t,this.z=n}set(e,t,n){return n===void 0&&(n=this.z),this.x=e,this.y=t,this.z=n,this}setScalar(e){return this.x=e,this.y=e,this.z=e,this}setX(e){return this.x=e,this}setY(e){return this.y=e,this}setZ(e){return this.z=e,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){return this.x=e.x,this.y=e.y,this.z=e.z,this}add(e){return this.x+=e.x,this.y+=e.y,this.z+=e.z,this}addScalar(e){return this.x+=e,this.y+=e,this.z+=e,this}addVectors(e,t){return this.x=e.x+t.x,this.y=e.y+t.y,this.z=e.z+t.z,this}addScaledVector(e,t){return this.x+=e.x*t,this.y+=e.y*t,this.z+=e.z*t,this}sub(e){return this.x-=e.x,this.y-=e.y,this.z-=e.z,this}subScalar(e){return this.x-=e,this.y-=e,this.z-=e,this}subVectors(e,t){return this.x=e.x-t.x,this.y=e.y-t.y,this.z=e.z-t.z,this}multiply(e){return this.x*=e.x,this.y*=e.y,this.z*=e.z,this}multiplyScalar(e){return this.x*=e,this.y*=e,this.z*=e,this}multiplyVectors(e,t){return this.x=e.x*t.x,this.y=e.y*t.y,this.z=e.z*t.z,this}applyEuler(e){return this.applyQuaternion(ow.setFromEuler(e))}applyAxisAngle(e,t){return this.applyQuaternion(ow.setFromAxisAngle(e,t))}applyMatrix3(e){const t=this.x,n=this.y,i=this.z,s=e.elements;return this.x=s[0]*t+s[3]*n+s[6]*i,this.y=s[1]*t+s[4]*n+s[7]*i,this.z=s[2]*t+s[5]*n+s[8]*i,this}applyNormalMatrix(e){return this.applyMatrix3(e).normalize()}applyMatrix4(e){const t=this.x,n=this.y,i=this.z,s=e.elements,o=1/(s[3]*t+s[7]*n+s[11]*i+s[15]);return this.x=(s[0]*t+s[4]*n+s[8]*i+s[12])*o,this.y=(s[1]*t+s[5]*n+s[9]*i+s[13])*o,this.z=(s[2]*t+s[6]*n+s[10]*i+s[14])*o,this}applyQuaternion(e){const t=this.x,n=this.y,i=this.z,s=e.x,o=e.y,l=e.z,u=e.w,d=2*(o*i-l*n),p=2*(l*t-s*i),m=2*(s*n-o*t);return this.x=t+u*d+o*m-l*p,this.y=n+u*p+l*d-s*m,this.z=i+u*m+s*p-o*d,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,i=this.z,s=e.elements;return this.x=s[0]*t+s[4]*n+s[8]*i,this.y=s[1]*t+s[5]*n+s[9]*i,this.z=s[2]*t+s[6]*n+s[10]*i,this.normalize()}divide(e){return this.x/=e.x,this.y/=e.y,this.z/=e.z,this}divideScalar(e){return this.multiplyScalar(1/e)}min(e){return 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}max(e){return 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}clamp(e,t){return this.x=Yt(this.x,e.x,t.x),this.y=Yt(this.y,e.y,t.y),this.z=Yt(this.z,e.z,t.z),this}clampScalar(e,t){return this.x=Yt(this.x,e,t),this.y=Yt(this.y,e,t),this.z=Yt(this.z,e,t),this}clampLength(e,t){const n=this.length();return this.divideScalar(n||1).multiplyScalar(Yt(n,e,t))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this.z=Math.trunc(this.z),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this}dot(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){return this.x+=(e.x-this.x)*t,this.y+=(e.y-this.y)*t,this.z+=(e.z-this.z)*t,this}lerpVectors(e,t,n){return 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}cross(e){return this.crossVectors(this,e)}crossVectors(e,t){const n=e.x,i=e.y,s=e.z,o=t.x,l=t.y,u=t.z;return this.x=i*u-s*l,this.y=s*o-n*u,this.z=n*l-i*o,this}projectOnVector(e){const t=e.lengthSq();if(t===0)return this.set(0,0,0);const n=e.dot(this)/t;return this.copy(e).multiplyScalar(n)}projectOnPlane(e){return sv.copy(this).projectOnVector(e),this.sub(sv)}reflect(e){return this.sub(sv.copy(e).multiplyScalar(2*this.dot(e)))}angleTo(e){const t=Math.sqrt(this.lengthSq()*e.lengthSq());if(t===0)return Math.PI/2;const n=this.dot(e)/t;return Math.acos(Yt(n,-1,1))}distanceTo(e){return Math.sqrt(this.distanceToSquared(e))}distanceToSquared(e){const t=this.x-e.x,n=this.y-e.y,i=this.z-e.z;return t*t+n*n+i*i}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 i=Math.sin(t)*e;return this.x=i*Math.sin(n),this.y=Math.cos(t)*e,this.z=i*Math.cos(n),this}setFromCylindrical(e){return this.setFromCylindricalCoords(e.radius,e.theta,e.y)}setFromCylindricalCoords(e,t,n){return this.x=e*Math.sin(t),this.y=n,this.z=e*Math.cos(t),this}setFromMatrixPosition(e){const t=e.elements;return this.x=t[12],this.y=t[13],this.z=t[14],this}setFromMatrixScale(e){const t=this.setFromMatrixColumn(e,0).length(),n=this.setFromMatrixColumn(e,1).length(),i=this.setFromMatrixColumn(e,2).length();return this.x=t,this.y=n,this.z=i,this}setFromMatrixColumn(e,t){return this.fromArray(e.elements,t*4)}setFromMatrix3Column(e,t){return this.fromArray(e.elements,t*3)}setFromEuler(e){return this.x=e._x,this.y=e._y,this.z=e._z,this}setFromColor(e){return this.x=e.r,this.y=e.g,this.z=e.b,this}equals(e){return e.x===this.x&&e.y===this.y&&e.z===this.z}fromArray(e,t=0){return this.x=e[t],this.y=e[t+1],this.z=e[t+2],this}toArray(e=[],t=0){return e[t]=this.x,e[t+1]=this.y,e[t+2]=this.z,e}fromBufferAttribute(e,t){return this.x=e.getX(t),this.y=e.getY(t),this.z=e.getZ(t),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this}randomDirection(){const e=Math.random()*Math.PI*2,t=Math.random()*2-1,n=Math.sqrt(1-t*t);return this.x=n*Math.cos(e),this.y=t,this.z=n*Math.sin(e),this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z}}const sv=new $,ow=new fi;class pi{constructor(e=new $(1/0,1/0,1/0),t=new $(-1/0,-1/0,-1/0)){this.isBox3=!0,this.min=e,this.max=t}set(e,t){return this.min.copy(e),this.max.copy(t),this}setFromArray(e){this.makeEmpty();for(let t=0,n=e.length;t<n;t+=3)this.expandByPoint(mo.fromArray(e,t));return this}setFromBufferAttribute(e){this.makeEmpty();for(let t=0,n=e.count;t<n;t++)this.expandByPoint(mo.fromBufferAttribute(e,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=mo.copy(t).multiplyScalar(.5);return this.min.copy(e).sub(n),this.max.copy(e).add(n),this}setFromObject(e,t=!1){return this.makeEmpty(),this.expandByObject(e,t)}clone(){return new this.constructor().copy(this)}copy(e){return this.min.copy(e.min),this.max.copy(e.max),this}makeEmpty(){return this.min.x=this.min.y=this.min.z=1/0,this.max.x=this.max.y=this.max.z=-1/0,this}isEmpty(){return this.max.x<this.min.x||this.max.y<this.min.y||this.max.z<this.min.z}getCenter(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){return this.min.min(e),this.max.max(e),this}expandByVector(e){return this.min.sub(e),this.max.add(e),this}expandByScalar(e){return this.min.addScalar(-e),this.max.addScalar(e),this}expandByObject(e,t=!1){e.updateWorldMatrix(!1,!1);const n=e.geometry;if(n!==void 0){const s=n.getAttribute("position");if(t===!0&&s!==void 0&&e.isInstancedMesh!==!0)for(let o=0,l=s.count;o<l;o++)e.isMesh===!0?e.getVertexPosition(o,mo):mo.fromBufferAttribute(s,o),mo.applyMatrix4(e.matrixWorld),this.expandByPoint(mo);else e.boundingBox!==void 0?(e.boundingBox===null&&e.computeBoundingBox(),g0.copy(e.boundingBox)):(n.boundingBox===null&&n.computeBoundingBox(),g0.copy(n.boundingBox)),g0.applyMatrix4(e.matrixWorld),this.union(g0)}const i=e.children;for(let s=0,o=i.length;s<o;s++)this.expandByObject(i[s],t);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){return this.clampPoint(e.center,mo),mo.distanceToSquared(e.center)<=e.radius*e.radiu
vendor: 21,545 bytes, line 44
44s}intersectsPlane(e){let t,n;return e.normal.x>0?(t=e.normal.x*this.min.x,n=e.normal.x*this.max.x):(t=e.normal.x*this.max.x,n=e.normal.x*this.min.x),e.normal.y>0?(t+=e.normal.y*this.min.y,n+=e.normal.y*this.max.y):(t+=e.normal.y*this.max.y,n+=e.normal.y*this.min.y),e.normal.z>0?(t+=e.normal.z*this.min.z,n+=e.normal.z*this.max.z):(t+=e.normal.z*this.max.z,n+=e.normal.z*this.min.z),t<=-e.constant&&n>=-e.constant}intersectsTriangle(e){if(this.isEmpty())return!1;this.getCenter(ep),y0.subVectors(this.max,ep),qh.subVectors(e.a,ep),Qh.subVectors(e.b,ep),Zh.subVectors(e.c,ep),jl.subVectors(Qh,qh),zl.subVectors(Zh,Qh),Yc.subVectors(qh,Zh);let t=[0,-jl.z,jl.y,0,-zl.z,zl.y,0,-Yc.z,Yc.y,jl.z,0,-jl.x,zl.z,0,-zl.x,Yc.z,0,-Yc.x,-jl.y,jl.x,0,-zl.y,zl.x,0,-Yc.y,Yc.x,0];return!ov(t,qh,Qh,Zh,y0)||(t=[1,0,0,0,1,0,0,0,1],!ov(t,qh,Qh,Zh,y0))?!1:(v0.crossVectors(jl,zl),t=[v0.x,v0.y,v0.z],ov(t,qh,Qh,Zh,y0))}clampPoint(e,t){return t.copy(e).clamp(this.min,this.max)}distanceToPoint(e){return this.clampPoint(e,mo).distanceTo(e)}getBoundingSphere(e){return this.isEmpty()?e.makeEmpty():(this.getCenter(e.center),e.radius=this.getSize(mo).length()*.5),e}intersect(e){return this.min.max(e.min),this.max.min(e.max),this.isEmpty()&&this.makeEmpty(),this}union(e){return this.min.min(e.min),this.max.max(e.max),this}applyMatrix4(e){return this.isEmpty()?this:(Na[0].set(this.min.x,this.min.y,this.min.z).applyMatrix4(e),Na[1].set(this.min.x,this.min.y,this.max.z).applyMatrix4(e),Na[2].set(this.min.x,this.max.y,this.min.z).applyMatrix4(e),Na[3].set(this.min.x,this.max.y,this.max.z).applyMatrix4(e),Na[4].set(this.max.x,this.min.y,this.min.z).applyMatrix4(e),Na[5].set(this.max.x,this.min.y,this.max.z).applyMatrix4(e),Na[6].set(this.max.x,this.max.y,this.min.z).applyMatrix4(e),Na[7].set(this.max.x,this.max.y,this.max.z).applyMatrix4(e),this.setFromPoints(Na),this)}translate(e){return this.min.add(e),this.max.add(e),this}equals(e){return e.min.equals(this.min)&&e.max.equals(this.max)}}const Na=[new $,new $,new $,new $,new $,new $,new $,new $],mo=new $,g0=new pi,qh=new $,Qh=new $,Zh=new $,jl=new $,zl=new $,Yc=new $,ep=new $,y0=new $,v0=new $,qc=new $;function ov(r,e,t,n,i){for(let s=0,o=r.length-3;s<=o;s+=3){qc.fromArray(r,s);const l=i.x*Math.abs(qc.x)+i.y*Math.abs(qc.y)+i.z*Math.abs(qc.z),u=e.dot(qc),d=t.dot(qc),p=n.dot(qc);if(Math.max(-Math.max(u,d,p),Math.min(u,d,p))>l)return!1}return!0}const HP=new pi,tp=new $,av=new $;class ei{constructor(e=new $,t=-1){this.isSphere=!0,this.center=e,this.radius=t}set(e,t){return this.center.copy(e),this.radius=t,this}setFromPoints(e,t){const n=this.center;t!==void 0?n.copy(t):HP.setFromPoints(e).getCenter(n);let i=0;for(let s=0,o=e.length;s<o;s++)i=Math.max(i,n.distanceToSquared(e[s]));return this.radius=Math.sqrt(i),this}copy(e){return this.center.copy(e.center),this.radius=e.radius,this}isEmpty(){return this.radius<0}makeEmpty(){return this.center.set(0,0,0),this.radius=-1,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);return t.copy(e),n>this.radius*this.radius&&(t.sub(this.center).normalize(),t.multiplyScalar(this.radius).add(this.center)),t}getBoundingBox(e){return this.isEmpty()?(e.makeEmpty(),e):(e.set(this.center,this.center),e.expandByScalar(this.radius),e)}applyMatrix4(e){return this.center.applyMatrix4(e),this.radius=this.radius*e.getMaxScaleOnAxis(),this}translate(e){return this.center.add(e),this}expandByPoint(e){if(this.isEmpty())return this.center.copy(e),this.radius=0,this;tp.subVectors(e,this.center);const t=tp.lengthSq();if(t>this.radius*this.radius){const n=Math.sqrt(t),i=(n-this.radius)*.5;this.center.addScaledVector(tp,i/n),this.radius+=i}return this}union(e){return e.isEmpty()?this:this.isEmpty()?(this.copy(e),this):(this.center.equals(e.center)===!0?this.radius=Math.max(this.radius,e.radius):(av.subVectors(e.center,this.center).setLength(e.radius),this.expandByPoint(tp.copy(e.center).add(av)),this.expandByPoint(tp.copy(e.center).sub(av))),this)}equals(e){return e.center.equals(this.center)&&e.radius===this.radius}clone(){return new this.constructor().copy(this)}}const Fa=new $,lv=new $,_0=new $,Hl=new $,cv=new $,x0=new $,uv=new $;class Wd{constructor(e=new $,t=new $(0,0,-1)){this.origin=e,this.direction=t}set(e,t){return this.origin.copy(e),this.direction.copy(t),this}copy(e){return this.origin.copy(e.origin),this.direction.copy(e.direction),this}at(e,t){return t.copy(this.origin).addScaledVector(this.direction,e)}lookAt(e){return this.direction.copy(e).sub(this.origin).normalize(),this}recast(e){return this.origin.copy(this.at(e,Fa)),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.origin).addScaledVector(this.direction,n)}distanceToPoint(e){return Math.sqrt(this.distanceSqToPoint(e))}distanceSqToPoint(e){const t=Fa.subVectors(e,this.origin).dot(this.direction);return t<0?this.origin.distanceToSquared(e):(Fa.copy(this.origin).addScaledVector(this.direction,t),Fa.distanceToSquared(e))}distanceSqToSegment(e,t,n,i){lv.copy(e).add(t).multiplyScalar(.5),_0.copy(t).sub(e).normalize(),Hl.copy(this.origin).sub(lv);const s=e.distanceTo(t)*.5,o=-this.direction.dot(_0),l=Hl.dot(this.direction),u=-Hl.dot(_0),d=Hl.lengthSq(),p=Math.abs(1-o*o);let m,y,v,S;if(p>0)if(m=o*u-l,y=o*l-u,S=s*p,m>=0)if(y>=-S)if(y<=S){const E=1/p;m*=E,y*=E,v=m*(m+o*y+2*l)+y*(o*m+y+2*u)+d}else y=s,m=Math.max(0,-(o*y+l)),v=-m*m+y*(y+2*u)+d;else y=-s,m=Math.max(0,-(o*y+l)),v=-m*m+y*(y+2*u)+d;else y<=-S?(m=Math.max(0,-(-o*s+l)),y=m>0?-s:Math.min(Math.max(-s,-u),s),v=-m*m+y*(y+2*u)+d):y<=S?(m=0,y=Math.min(Math.max(-s,-u),s),v=y*(y+2*u)+d):(m=Math.max(0,-(o*s+l)),y=m>0?s:Math.min(Math.max(-s,-u),s),v=-m*m+y*(y+2*u)+d);else y=o>0?-s:s,m=Math.max(0,-(o*y+l)),v=-m*m+y*(y+2*u)+d;return n&&n.copy(this.origin).addScaledVector(this.direction,m),i&&i.copy(lv).addScaledVector(_0,y),v}intersectSphere(e,t){Fa.subVectors(e.center,this.origin);const n=Fa.dot(this.direction),i=Fa.dot(Fa)-n*n,s=e.radius*e.radius;if(i>s)return null;const o=Math.sqrt(s-i),l=n-o,u=n+o;return u<0?null:l<0?this.at(u,t):this.at(l,t)}intersectsSphere(e){return this.distanceSqToPoint(e.center)<=e.radius*e.radius}distanceToPlane(e){const t=e.normal.dot(this.direction);if(t===0)return e.distanceToPoint(this.origin)===0?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 n===null?null:this.at(n,t)}intersectsPlane(e){const t=e.distanceToPoint(this.origin);return t===0||e.normal.dot(this.direction)*t<0}intersectBox(e,t){let n,i,s,o,l,u;const d=1/this.direction.x,p=1/this.direction.y,m=1/this.direction.z,y=this.origin;return d>=0?(n=(e.min.x-y.x)*d,i=(e.max.x-y.x)*d):(n=(e.max.x-y.x)*d,i=(e.min.x-y.x)*d),p>=0?(s=(e.min.y-y.y)*p,o=(e.max.y-y.y)*p):(s=(e.max.y-y.y)*p,o=(e.min.y-y.y)*p),n>o||s>i||((s>n||isNaN(n))&&(n=s),(o<i||isNaN(i))&&(i=o),m>=0?(l=(e.min.z-y.z)*m,u=(e.max.z-y.z)*m):(l=(e.max.z-y.z)*m,u=(e.min.z-y.z)*m),n>u||l>i)||((l>n||n!==n)&&(n=l),(u<i||i!==i)&&(i=u),i<0)?null:this.at(n>=0?n:i,t)}intersectsBox(e){return this.intersectBox(e,Fa)!==null}intersectTriangle(e,t,n,i,s){cv.subVectors(t,e),x0.subVectors(n,e),uv.crossVectors(cv,x0);let o=this.direction.dot(uv),l;if(o>0){if(i)return null;l=1}else if(o<0)l=-1,o=-o;else return null;Hl.subVectors(this.origin,e);const u=l*this.direction.dot(x0.crossVectors(Hl,x0));if(u<0)return null;const d=l*this.direction.dot(cv.cross(Hl));if(d<0||u+d>o)return null;const p=-l*Hl.dot(uv);return p<0?null:this.at(p/o,s)}applyMatrix4(e){return this.origin.applyMatrix4(e),this.direction.transformDirection(e),this}equals(e){return e.origin.equals(this.origin)&&e.direction.equals(this.direction)}clone(){return new this.constructor().copy(this)}}class Nt{constructor(e,t,n,i,s,o,l,u,d,p,m,y,v,S,E,A){Nt.prototype.isMatrix4=!0,this.elements=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],e!==void 0&&this.set(e,t,n,i,s,o,l,u,d,p,m,y,v,S,E,A)}set(e,t,n,i,s,o,l,u,d,p,m,y,v,S,E,A){const M=this.elements;return M[0]=e,M[4]=t,M[8]=n,M[12]=i,M[1]=s,M[5]=o,M[9]=l,M[13]=u,M[2]=d,M[6]=p,M[10]=m,M[14]=y,M[3]=v,M[7]=S,M[11]=E,M[15]=A,this}identity(){return this.set(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1),this}clone(){return new Nt().fromArray(this.elements)}copy(e){const t=this.elements,n=e.elements;return 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],this}copyPosition(e){const t=this.elements,n=e.elements;return t[12]=n[12],t[13]=n[13],t[14]=n[14],this}setFromMatrix3(e){const t=e.elements;return 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),this}extractBasis(e,t,n){return e.setFromMatrixColumn(this,0),t.setFromMatrixColumn(this,1),n.setFromMatrixColumn(this,2),this}makeBasis(e,t,n){return 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),this}extractRotation(e){const t=this.elements,n=e.elements,i=1/ed.setFromMatrixColumn(e,0).length(),s=1/ed.setFromMatrixColumn(e,1).length(),o=1/ed.setFromMatrixColumn(e,2).length();return t[0]=n[0]*i,t[1]=n[1]*i,t[2]=n[2]*i,t[3]=0,t[4]=n[4]*s,t[5]=n[5]*s,t[6]=n[6]*s,t[7]=0,t[8]=n[8]*o,t[9]=n[9]*o,t[10]=n[10]*o,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,this}makeRotationFromEuler(e){const t=this.elements,n=e.x,i=e.y,s=e.z,o=Math.cos(n),l=Math.sin(n),u=Math.cos(i),d=Math.sin(i),p=Math.cos(s),m=Math.sin(s);if(e.order==="XYZ"){const y=o*p,v=o*m,S=l*p,E=l*m;t[0]=u*p,t[4]=-u*m,t[8]=d,t[1]=v+S*d,t[5]=y-E*d,t[9]=-l*u,t[2]=E-y*d,t[6]=S+v*d,t[10]=o*u}else if(e.order==="YXZ"){const y=u*p,v=u*m,S=d*p,E=d*m;t[0]=y+E*l,t[4]=S*l-v,t[8]=o*d,t[1]=o*m,t[5]=o*p,t[9]=-l,t[2]=v*l-S,t[6]=E+y*l,t[10]=o*u}else if(e.order==="ZXY"){const y=u*p,v=u*m,S=d*p,E=d*m;t[0]=y-E*l,t[4]=-o*m,t[8]=S+v*l,t[1]=v+S*l,t[5]=o*p,t[9]=E-y*l,t[2]=-o*d,t[6]=l,t[10]=o*u}else if(e.order==="ZYX"){const y=o*p,v=o*m,S=l*p,E=l*m;t[0]=u*p,t[4]=S*d-v,t[8]=y*d+E,t[1]=u*m,t[5]=E*d+y,t[9]=v*d-S,t[2]=-d,t[6]=l*u,t[10]=o*u}else if(e.order==="YZX"){const y=o*u,v=o*d,S=l*u,E=l*d;t[0]=u*p,t[4]=E-y*m,t[8]=S*m+v,t[1]=m,t[5]=o*p,t[9]=-l*p,t[2]=-d*p,t[6]=v*m+S,t[10]=y-E*m}else if(e.order==="XZY"){const y=o*u,v=o*d,S=l*u,E=l*d;t[0]=u*p,t[4]=-m,t[8]=d*p,t[1]=y*m+E,t[5]=o*p,t[9]=v*m-S,t[2]=S*m-v,t[6]=l*p,t[10]=E*m+y}return t[3]=0,t[7]=0,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,this}makeRotationFromQuaternion(e){return this.compose(GP,e,VP)}lookAt(e,t,n){const i=this.elements;return ps.subVectors(e,t),ps.lengthSq()===0&&(ps.z=1),ps.normalize(),Gl.crossVectors(n,ps),Gl.lengthSq()===0&&(Math.abs(n.z)===1?ps.x+=1e-4:ps.z+=1e-4,ps.normalize(),Gl.crossVectors(n,ps)),Gl.normalize(),M0.crossVectors(ps,Gl),i[0]=Gl.x,i[4]=M0.x,i[8]=ps.x,i[1]=Gl.y,i[5]=M0.y,i[9]=ps.y,i[2]=Gl.z,i[6]=M0.z,i[10]=ps.z,this}multiply(e){return this.multiplyMatrices(this,e)}premultiply(e){return this.multiplyMatrices(e,this)}multiplyMatrices(e,t){const n=e.elements,i=t.elements,s=this.elements,o=n[0],l=n[4],u=n[8],d=n[12],p=n[1],m=n[5],y=n[9],v=n[13],S=n[2],E=n[6],A=n[10],M=n[14],T=n[3],I=n[7],P=n[11],k=n[15],O=i[0],N=i[4],H=i[8],F=i[12],L=i[1],V=i[5],te=i[9],ne=i[13],ce=i[2],me=i[6],he=i[10],ge=i[14],U=i[3],Z=i[7],q=i[11],X=i[15];return s[0]=o*O+l*L+u*ce+d*U,s[4]=o*N+l*V+u*me+d*Z,s[8]=o*H+l*te+u*he+d*q,s[12]=o*F+l*ne+u*ge+d*X,s[1]=p*O+m*L+y*ce+v*U,s[5]=p*N+m*V+y*me+v*Z,s[9]=p*H+m*te+y*he+v*q,s[13]=p*F+m*ne+y*ge+v*X,s[2]=S*O+E*L+A*ce+M*U,s[6]=S*N+E*V+A*me+M*Z,s[10]=S*H+E*te+A*he+M*q,s[14]=S*F+E*ne+A*ge+M*X,s[3]=T*O+I*L+P*ce+k*U,s[7]=T*N+I*V+P*me+k*Z,s[11]=T*H+I*te+P*he+k*q,s[15]=T*F+I*ne+P*ge+k*X,this}multiplyScalar(e){const t=this.elements;return 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,this}determinant(){const e=this.elements,t=e[0],n=e[4],i=e[8],s=e[12],o=e[1],l=e[5],u=e[9],d=e[13],p=e[2],m=e[6],y=e[10],v=e[14],S=e[3],E=e[7],A=e[11],M=e[15];return S*(+s*u*m-i*d*m-s*l*y+n*d*y+i*l*v-n*u*v)+E*(+t*u*v-t*d*y+s*o*y-i*o*v+i*d*p-s*u*p)+A*(+t*d*m-t*l*v-s*o*m+n*o*v+s*l*p-n*d*p)+M*(-i*l*p-t*u*m+t*l*y+i*o*m-n*o*y+n*u*p)}transpose(){const e=this.elements;let t;return 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,this}setPosition(e,t,n){const i=this.elements;return e.isVector3?(i[12]=e.x,i[13]=e.y,i[14]=e.z):(i[12]=e,i[13]=t,i[14]=n),this}invert(){const e=this.elements,t=e[0],n=e[1],i=e[2],s=e[3],o=e[4],l=e[5],u=e[6],d=e[7],p=e[8],m=e[9],y=e[10],v=e[11],S=e[12],E=e[13],A=e[14],M=e[15],T=m*A*d-E*y*d+E*u*v-l*A*v-m*u*M+l*y*M,I=S*y*d-p*A*d-S*u*v+o*A*v+p*u*M-o*y*M,P=p*E*d-S*m*d+S*l*v-o*E*v-p*l*M+o*m*M,k=S*m*u-p*E*u-S*l*y+o*E*y+p*l*A-o*m*A,O=t*T+n*I+i*P+s*k;if(O===0)return this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);const N=1/O;return e[0]=T*N,e[1]=(E*y*s-m*A*s-E*i*v+n*A*v+m*i*M-n*y*M)*N,e[2]=(l*A*s-E*u*s+E*i*d-n*A*d-l*i*M+n*u*M)*N,e[3]=(m*u*s-l*y*s-m*i*d+n*y*d+l*i*v-n*u*v)*N,e[4]=I*N,e[5]=(p*A*s-S*y*s+S*i*v-t*A*v-p*i*M+t*y*M)*N,e[6]=(S*u*s-o*A*s-S*i*d+t*A*d+o*i*M-t*u*M)*N,e[7]=(o*y*s-p*u*s+p*i*d-t*y*d-o*i*v+t*u*v)*N,e[8]=P*N,e[9]=(S*m*s-p*E*s-S*n*v+t*E*v+p*n*M-t*m*M)*N,e[10]=(o*E*s-S*l*s+S*n*d-t*E*d-o*n*M+t*l*M)*N,e[11]=(p*l*s-o*m*s-p*n*d+t*m*d+o*n*v-t*l*v)*N,e[12]=k*N,e[13]=(p*E*i-S*m*i+S*n*y-t*E*y-p*n*A+t*m*A)*N,e[14]=(S*l*i-o*E*i-S*n*u+t*E*u+o*n*A-t*l*A)*N,e[15]=(o*m*i-p*l*i+p*n*u-t*m*u-o*n*y+t*l*y)*N,this}scale(e){const t=this.elements,n=e.x,i=e.y,s=e.z;return t[0]*=n,t[4]*=i,t[8]*=s,t[1]*=n,t[5]*=i,t[9]*=s,t[2]*=n,t[6]*=i,t[10]*=s,t[3]*=n,t[7]*=i,t[11]*=s,this}getMaxScaleOnAxis(){const e=this.elements,t=e[0]*e[0]+e[1]*e[1]+e[2]*e[2],n=e[4]*e[4]+e[5]*e[5]+e[6]*e[6],i=e[8]*e[8]+e[9]*e[9]+e[10]*e[10];return Math.sqrt(Math.max(t,n,i))}makeTranslation(e,t,n){return e.isVector3?this.set(1,0,0,e.x,0,1,0,e.y,0,0,1,e.z,0,0,0,1):this.set(1,0,0,e,0,1,0,t,0,0,1,n,0,0,0,1),this}makeRotationX(e){const t=Math.cos(e),n=Math.sin(e);return this.set(1,0,0,0,0,t,-n,0,0,n,t,0,0,0,0,1),this}makeRotationY(e){const t=Math.cos(e),n=Math.sin(e);return this.set(t,0,n,0,0,1,0,0,-n,0,t,0,0,0,0,1),this}makeRotationZ(e){const t=Math.cos(e),n=Math.sin(e);return this.set(t,-n,0,0,n,t,0,0,0,0,1,0,0,0,0,1),this}makeRotationAxis(e,t){const n=Math.cos(t),i=Math.sin(t),s=1-n,o=e.x,l=e.y,u=e.z,d=s*o,p=s*l;return this.set(d*o+n,d*l-i*u,d*u+i*l,0,d*l+i*u,p*l+n,p*u-i*o,0,d*u-i*l,p*u+i*o,s*u*u+n,0,0,0,0,1),this}makeScale(e,t,n){return this.set(e,0,0,0,0,t,0,0,0,0,n,0,0,0,0,1),this}makeShear(e,t,n,i,s,o){return this.set(1,n,s,0,e,1,o,0,t,i,1,0,0,0,0,1),this}compose(e,t,n){const i=this.elements,s=t._x,o=t._y,l=t._z,u=t._w,d=s+s,p=o+o,m=l+l,y=s*d,v=s*p,S=s*m,E=o*p,A=o*m,M=l*m,T=u*d,I=u*p,P=u*m,k=n.x,O=n.y,N=n.z;return i[0]=(1-(E+M))*k,i[1]=(v+P)*k,i[2]=(S-I)*k,i[3]=0,i[4]=(v-P)*O,i[5]=(1-(y+M))*O,i[6]=(A+T)*O,i[7]=0,i[8]=(S+I)*N,i[9]=(A-T)*N,i[10]=(1-(y+E))*N,i[11]=0,i[12]=e.x,i[13]=e.y,i[14]=e.z,i[15]=1,this}decompose(e,t,n){const i=this.elements;let s=ed.set(i[0],i[1],i[2]).length();const o=ed.set(i[4],i[5],i[6]).length(),l=ed.set(i[8],i[9],i[10]).length();this.determinant()<0&&(s=-s),e.x=i[12],e.y=i[13],e.z=i[14],go.copy(this);const d=1/s,p=1/o,m=1/l;return go.elements[0]*=d,go.elements[1]*=d,go.elements[2]*=d,go.elements[4]*=p,go.elements[5]*=p,go.elements[6]*=p,go.elements[8]*=m,go.elements[9]*=m,go.elements[10]*=m,t.setFromRotationMatrix(go),n.x=s,n.y=o,n.z=l,this}makePerspective(e,t,n,i,s,o,l=Xo){const u=this.elements,d=2*s/(t-e),p=2*s/(n-i),m=(t+e)/(t-e),y=(n+i)/(n-i);let v,S;if(l===Xo)v=-(o+s)/(o-s),S=-2*o*s/(o-s);else if(l===zp)v=-o/(o-s),S=-o*s/(o-s);else throw new Error("THREE.Matrix4.makePerspective(): Invalid coordinate system: "+l);return u[0]=d,u[4]=0,u[8]=m,u[12]=0,u[1]=0,u[5]=p,u[9]=y,u[13]=0,u[2]=0,u[6]=0,u[10]=v,u[14]=S,u[3]=0,u[7]=0,u[11]=-1,u[15]=0,this}makeOrthographic(e,t,n,i,s,o,l=Xo){const u=this.elements,d=1/(t-e),p=1/(n-i),m=1/(o-s),y=(t+e)*d,v=(n+i)*p;let S,E;if(l===Xo)S=(o+s)*m,E=-2*m;else if(l===zp)S=s*m,E=-1*m;else throw new Error("THREE.Matrix4.makeOrthographic(): Invalid coordinate system: "+l);return u[0]=2*d,u[4]=0,u[8]=0,u[12]=-y,u[1]=0,u[5]=2*p,u[9]=0,u[13]=-v,u[2]=0,u[6]=0,u[10]=E,u[14]=-S,u[3]=0,u[7]=0,u[11]=0,u[15]=1,this}equals(e){const t=this.elements,n=e.elements;for(let i=0;i<16;i++)if(t[i]!==n[i])return!1;return!0}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;return 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],e}}const ed=new $,go=new Nt,GP=new $(0,0,0),VP=new $(1,1,1),Gl=new $,M0=new $,ps=new $,aw=new Nt,lw=new fi;class Ms{constructor(e=0,t=0,n=0,i=Ms.DEFAULT_ORDER){this.isEuler=!0,this._x=e,this._y=t,this._z=n,this._order=i}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,i=this._order){return this._x=e,this._y=t,this._z=n,this._order=i,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._order)}copy(e){return this._x=e._x,this._y=e._y,this._z=e._z,this._order=e._order,this._onChangeCallback(),this}setFromRotationMatrix(e,t=this._order,n=!0){const i=e.elements,s=i[0],o=i[4],l=i[8],u=i[1],d=i[5],p=i[9],m=i[2],y=i[6],v=i[10];switch(t){case"XYZ":this._y=Math.asin(Yt(l,-1,1)),Math.abs(l)<.9999999?(this._x=Math.atan2(-p,v),this._z=Math.atan2(-o,s)):(this._x=Math.atan2(y,d),this._z=0);break;case"YXZ":this._x=Math.asin(-Yt(p,-1,1)),Math.abs(p)<.9999999?(this._y=Math.atan2(l,v),this._z=Math.atan2(u,d)):(this._y=Math.atan2(-m,s),this._z=0);break;case"ZXY":this._x=Math.asin(Yt(y,-1,1)),Math.abs(y)<.9999999?(this._y=Math.atan2(-m,v),this._z=Math.atan2(-o,d)):(this._y=0,this._z=Math.atan2(u,s));break;case"ZYX":this._y=Math.asin(-Yt(m,-1,1)),Math.abs(m)<.9999999?(this._x=Math.atan2(y,v),this._z=Math.atan2(u,s)):(this._x=0,this._z=Math.atan2(-o,d));break;case"YZX":this._z=Math.asin(Yt(u,-1,1)),Math.abs(u)<.9999999?(this._x=Math.atan2(-p,d),this._y=Math.atan2(-m,s)):(this._x=0,this._y=Math.atan2(l,v));break;case"XZY":this._z=Math.asin(-Yt(o,-1,1)),Math.abs(o)<.9999999?(this._x=Math.atan2(y,d),this._y=Math.atan2(l,s)):(this._x=Math.atan2(-p,v),this._y=0);break;default:console.warn("THREE.Euler: .setFromRotationMatrix() encountered an unknown order: "+t)}return this._order=t,n===!0&&this._onChangeCallback(),this}setFromQuaternion(e,t,n){return aw.makeRotationFromQuaternion(e),this.setFromRotationMatrix(aw,t,n)}setFromVector3(e,t=this._order){return this.set(e.x,e.y,e.z,t)}reorder(e){return lw.setFromEuler(this),this.setFromQuaternion(lw,e)}equals(e){return e._x===this._x&&e._y===this._y&&e._z===this._z&&e._order===this._order}fromArray(e){return this._x=e[0],this._y=e[1],this._z=e[2],e[3]!==void 0&&(this._order=e[3]),this._onChangeCallback(),this}toArray(e=[],t=0){return e[t]=this._x,e[t+1]=this._y,e[t+2]=this._z,e[t+3]=this._order,e}_onChange(e){return this._onChangeCallback=e,this}_onChangeCallback(){}*[Symbol.iterator](){yield this._x,yield this._y,yield this._z,yield this._order}}Ms.DEFAULT_ORDER="XYZ";class wu{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(this.mask&e.mask)!==0}isEnabled(e){return(this.mask&(1<<e|0))!==0}}let WP=0;const cw=new $,td=new fi,ka=new Nt,S0=new $,np=new $,XP=new $,JP=new fi,uw=new $(1,0,0),hw=new $(0,1,0),dw=new $(0,0,1),fw={type:"added"},$P={type:"removed"},nd={type:"childadded",child:null},hv={type:"childremoved",child:null};class fn extends ta{constructor(){super(),this.isObject3D=!0,Object.defineProperty(this,"id",{value:WP++}),this.uuid=_s(),this.name="",this.type="Object3D",this.parent=null,this.children=[],this.up=fn.DEFAULT_UP.clone();const e=new $,t=new Ms,n=new fi,i=new $(1,1,1);function s(){n.setFromEuler(t,!1)}function o(){t.setFromQuaternion(n,void 0,!1)}t._onChange(s),n._onChange(o),Object.defineProperties(this,{position:{configurable:!0,enumerable:!0,value:e},rotation:{configurable:!0,enumerable:!0,value:t},quaternion:{configurable:!0,enumerable:!0,value:n},scale:{configurable:!0,enumerable:!0,value:i},modelViewMatrix:{value:new Nt},normalMatrix:{value:new Qt}}),this.matrix=new Nt,this.matrixWorld=new Nt,this.matrixAutoUpdate=fn.DEFAULT_MATRIX_AUTO_UPDATE,this.matrixWorldAutoUpdate=fn.DEFAULT_MATRIX_WORLD_AUTO_UPDATE,this.matrixWorldNeedsUpdate=!1,this.layers=new wu,this.visible=!0,this.castShadow=!1,this.receiveShadow=!1,this.frustumCulled=!0,this.renderOrder=0,this.animations=[],this.userData={}}onBeforeShadow(){}onAfterShadow(){}onBeforeRender(){}onAfterRender(){}applyMatrix4(e){this.matrixAutoUpdate&&this.updateMatrix(),this.matrix.premultiply(e),this.matrix.decompose(this.position,this.quaternion,this.scale)}applyQuaternion(e){return this.quaternion.premultiply(e),this}setRotationFromAxisAngle(e,t){this.quaternion.setFromAxisAngle(e,t)}setRotationFromEuler(e){this.quaternion.setFromEuler(e,!0)}
vendor: 4,289 bytes, line 44
44setRotationFromMatrix(e){this.quaternion.setFromRotationMatrix(e)}setRotationFromQuaternion(e){this.quaternion.copy(e)}rotateOnAxis(e,t){return td.setFromAxisAngle(e,t),this.quaternion.multiply(td),this}rotateOnWorldAxis(e,t){return td.setFromAxisAngle(e,t),this.quaternion.premultiply(td),this}rotateX(e){return this.rotateOnAxis(uw,e)}rotateY(e){return this.rotateOnAxis(hw,e)}rotateZ(e){return this.rotateOnAxis(dw,e)}translateOnAxis(e,t){return cw.copy(e).applyQuaternion(this.quaternion),this.position.add(cw.multiplyScalar(t)),this}translateX(e){return this.translateOnAxis(uw,e)}translateY(e){return this.translateOnAxis(hw,e)}translateZ(e){return this.translateOnAxis(dw,e)}localToWorld(e){return this.updateWorldMatrix(!0,!1),e.applyMatrix4(this.matrixWorld)}worldToLocal(e){return this.updateWorldMatrix(!0,!1),e.applyMatrix4(ka.copy(this.matrixWorld).invert())}lookAt(e,t,n){e.isVector3?S0.copy(e):S0.set(e,t,n);const i=this.parent;this.updateWorldMatrix(!0,!1),np.setFromMatrixPosition(this.matrixWorld),this.isCamera||this.isLight?ka.lookAt(np,S0,this.up):ka.lookAt(S0,np,this.up),this.quaternion.setFromRotationMatrix(ka),i&&(ka.extractRotation(i.matrixWorld),td.setFromRotationMatrix(ka),this.quaternion.premultiply(td.invert()))}add(e){if(arguments.length>1){for(let t=0;t<arguments.length;t++)this.add(arguments[t]);return this}return e===this?(console.error("THREE.Object3D.add: object can't be added as a child of itself.",e),this):(e&&e.isObject3D?(e.removeFromParent(),e.parent=this,this.children.push(e),e.dispatchEvent(fw),nd.child=e,this.dispatchEvent(nd),nd.child=null):console.error("THREE.Object3D.add: object not an instance of THREE.Object3D.",e),this)}remove(e){if(arguments.length>1){for(let n=0;n<arguments.length;n++)this.remove(arguments[n]);return this}const t=this.children.indexOf(e);return t!==-1&&(e.parent=null,this.children.splice(t,1),e.dispatchEvent($P),hv.child=e,this.dispatchEvent(hv),hv.child=null),this}removeFromParent(){const e=this.parent;return e!==null&&e.remove(this),this}clear(){return this.remove(...this.children)}attach(e){return this.updateWorldMatrix(!0,!1),ka.copy(this.matrixWorld).invert(),e.parent!==null&&(e.parent.updateWorldMatrix(!0,!1),ka.multiply(e.parent.matrixWorld)),e.applyMatrix4(ka),e.removeFromParent(),e.parent=this,this.children.push(e),e.updateWorldMatrix(!1,!0),e.dispatchEvent(fw),nd.child=e,this.dispatchEvent(nd),nd.child=null,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,i=this.children.length;n<i;n++){const o=this.children[n].getObjectByProperty(e,t);if(o!==void 0)return o}}getObjectsByProperty(e,t,n=[]){this[e]===t&&n.push(this);const i=this.children;for(let s=0,o=i.length;s<o;s++)i[s].getObjectsByProperty(e,t,n);return n}getWorldPosition(e){return this.updateWorldMatrix(!0,!1),e.setFromMatrixPosition(this.matrixWorld)}getWorldQuaternion(e){return this.updateWorldMatrix(!0,!1),this.matrixWorld.decompose(np,e,XP),e}getWorldScale(e){return this.updateWorldMatrix(!0,!1),this.matrixWorld.decompose(np,JP,e),e}getWorldDirection(e){this.updateWorldMatrix(!0,!1);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,i=t.length;n<i;n++)t[n].traverse(e)}traverseVisible(e){if(this.visible===!1)return;e(this);const t=this.children;for(let n=0,i=t.length;n<i;n++)t[n].traverseVisible(e)}traverseAncestors(e){const t=this.parent;t!==null&&(e(t),t.traverseAncestors(e))}updateMatrix(){this.matrix.compose(this.position,this.quaternion,this.scale),this.matrixWorldNeedsUpdate=!0}updateMatrixWorld(e){this.matrixAutoUpdate&&this.updateMatrix(),(this.matrixWorldNeedsUpdate||e)&&(this.matrixWorldAutoUpdate===!0&&(this.parent===null?this.matrixWorld.copy(this.matrix):this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.matrix)),this.matrixWorldNeedsUpdate=!1,e=!0);const t=this.children;for(let n=0,i=t.length;n<i;n++)t[n].updateMatrixWorld(e)}updateWorldMatrix(e,t){const n=this.parent;if(e===!0&&n!==null&&n.updateWorldMatrix(!0,!1),this.matrixAutoUpdate&&this.updateMatrix(),this.matrixWorldAutoUpdate===!0&&(this.parent===null?this.matrixWorld.copy(this.matrix
vendor: 4,876 bytes, line 44
44):this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.matrix)),t===!0){const i=this.children;for(let s=0,o=i.length;s<o;s++)i[s].updateWorldMatrix(!1,!0)}}toJSON(e){const t=e===void 0||typeof e=="string",n={};t&&(e={geometries:{},materials:{},textures:{},images:{},shapes:{},skeletons:{},animations:{},nodes:{}},n.metadata={version:4.6,type:"Object",generator:"Object3D.toJSON"});const i={};i.uuid=this.uuid,i.type=this.type,this.name!==""&&(i.name=this.name),this.castShadow===!0&&(i.castShadow=!0),this.receiveShadow===!0&&(i.receiveShadow=!0),this.visible===!1&&(i.visible=!1),this.frustumCulled===!1&&(i.frustumCulled=!1),this.renderOrder!==0&&(i.renderOrder=this.renderOrder),Object.keys(this.userData).length>0&&(i.userData=this.userData),i.layers=this.layers.mask,i.matrix=this.matrix.toArray(),i.up=this.up.toArray(),this.matrixAutoUpdate===!1&&(i.matrixAutoUpdate=!1),this.isInstancedMesh&&(i.type="InstancedMesh",i.count=this.count,i.instanceMatrix=this.instanceMatrix.toJSON(),this.instanceColor!==null&&(i.instanceColor=this.instanceColor.toJSON())),this.isBatchedMesh&&(i.type="BatchedMesh",i.perObjectFrustumCulled=this.perObjectFrustumCulled,i.sortObjects=this.sortObjects,i.drawRanges=this._drawRanges,i.reservedRanges=this._reservedRanges,i.visibility=this._visibility,i.active=this._active,i.bounds=this._bounds.map(l=>({boxInitialized:l.boxInitialized,boxMin:l.box.min.toArray(),boxMax:l.box.max.toArray(),sphereInitialized:l.sphereInitialized,sphereRadius:l.sphere.radius,sphereCenter:l.sphere.center.toArray()})),i.maxInstanceCount=this._maxInstanceCount,i.maxVertexCount=this._maxVertexCount,i.maxIndexCount=this._maxIndexCount,i.geometryInitialized=this._geometryInitialized,i.geometryCount=this._geometryCount,i.matricesTexture=this._matricesTexture.toJSON(e),this._colorsTexture!==null&&(i.colorsTexture=this._colorsTexture.toJSON(e)),this.boundingSphere!==null&&(i.boundingSphere={center:i.boundingSphere.center.toArray(),radius:i.boundingSphere.radius}),this.boundingBox!==null&&(i.boundingBox={min:i.boundingBox.min.toArray(),max:i.boundingBox.max.toArray()}));function s(l,u){return l[u.uuid]===void 0&&(l[u.uuid]=u.toJSON(e)),u.uuid}if(this.isScene)this.background&&(this.background.isColor?i.background=this.background.toJSON():this.background.isTexture&&(i.background=this.background.toJSON(e).uuid)),this.environment&&this.environment.isTexture&&this.environment.isRenderTargetTexture!==!0&&(i.environment=this.environment.toJSON(e).uuid);else if(this.isMesh||this.isLine||this.isPoints){i.geometry=s(e.geometries,this.geometry);const l=this.geometry.parameters;if(l!==void 0&&l.shapes!==void 0){const u=l.shapes;if(Array.isArray(u))for(let d=0,p=u.length;d<p;d++){const m=u[d];s(e.shapes,m)}else s(e.shapes,u)}}if(this.isSkinnedMesh&&(i.bindMode=this.bindMode,i.bindMatrix=this.bindMatrix.toArray(),this.skeleton!==void 0&&(s(e.skeletons,this.skeleton),i.skeleton=this.skeleton.uuid)),this.material!==void 0)if(Array.isArray(this.material)){const l=[];for(let u=0,d=this.material.length;u<d;u++)l.push(s(e.materials,this.material[u]));i.material=l}else i.material=s(e.materials,this.material);if(this.children.length>0){i.children=[];for(let l=0;l<this.children.length;l++)i.children.push(this.children[l].toJSON(e).object)}if(this.animations.length>0){i.animations=[];for(let l=0;l<this.animations.length;l++){const u=this.animations[l];i.animations.push(s(e.animations,u))}}if(t){const l=o(e.geometries),u=o(e.materials),d=o(e.textures),p=o(e.images),m=o(e.shapes),y=o(e.skeletons),v=o(e.animations),S=o(e.nodes);l.length>0&&(n.geometries=l),u.length>0&&(n.materials=u),d.length>0&&(n.textures=d),p.length>0&&(n.images=p),m.length>0&&(n.shapes=m),y.length>0&&(n.skeletons=y),v.length>0&&(n.animations=v),S.length>0&&(n.nodes=S)}return n.object=i,n;function o(l){const u=[];for(const d in l){const p=l[d];delete p.metadata,u.push(p)}return u}}clone(e){return new this.constructor().copy(this,e)}copy(e,t=!0){if(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.matrixWorldAutoUpdate=e.matrixWorldAutoUpdate,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.animations=e.animations.slice(),this.userData=JSON.parse(JSON.stringify(e.userData)),t===!0)for(let n=0;n<e.children.length;n++){const i=e.children[n];this.add(i.clone())}return this}}fn.DEFAULT_UP=new $(0,1,0);fn.DEFAULT_MATRIX_AUTO_UPDATE=!0;fn.DEFAULT_MATRIX_WORLD_AUTO_UPDATE=!0;const yo=new $,Ua=new $,dv=new $,ja=new $,rd=new $,id=new $,pw=new $,fv=ne
vendor: 2,785 bytes, line 44
44w $,pv=new $,mv=new $,gv=new xn,yv=new xn,vv=new xn;class es{constructor(e=new $,t=new $,n=new $){this.a=e,this.b=t,this.c=n}static getNormal(e,t,n,i){i.subVectors(n,t),yo.subVectors(e,t),i.cross(yo);const s=i.lengthSq();return s>0?i.multiplyScalar(1/Math.sqrt(s)):i.set(0,0,0)}static getBarycoord(e,t,n,i,s){yo.subVectors(i,t),Ua.subVectors(n,t),dv.subVectors(e,t);const o=yo.dot(yo),l=yo.dot(Ua),u=yo.dot(dv),d=Ua.dot(Ua),p=Ua.dot(dv),m=o*d-l*l;if(m===0)return s.set(0,0,0),null;const y=1/m,v=(d*u-l*p)*y,S=(o*p-l*u)*y;return s.set(1-v-S,S,v)}static containsPoint(e,t,n,i){return this.getBarycoord(e,t,n,i,ja)===null?!1:ja.x>=0&&ja.y>=0&&ja.x+ja.y<=1}static getInterpolation(e,t,n,i,s,o,l,u){return this.getBarycoord(e,t,n,i,ja)===null?(u.x=0,u.y=0,"z"in u&&(u.z=0),"w"in u&&(u.w=0),null):(u.setScalar(0),u.addScaledVector(s,ja.x),u.addScaledVector(o,ja.y),u.addScaledVector(l,ja.z),u)}static getInterpolatedAttribute(e,t,n,i,s,o){return gv.setScalar(0),yv.setScalar(0),vv.setScalar(0),gv.fromBufferAttribute(e,t),yv.fromBufferAttribute(e,n),vv.fromBufferAttribute(e,i),o.setScalar(0),o.addScaledVector(gv,s.x),o.addScaledVector(yv,s.y),o.addScaledVector(vv,s.z),o}static isFrontFacing(e,t,n,i){return yo.subVectors(n,t),Ua.subVectors(e,t),yo.cross(Ua).dot(i)<0}set(e,t,n){return this.a.copy(e),this.b.copy(t),this.c.copy(n),this}setFromPointsAndIndices(e,t,n,i){return this.a.copy(e[t]),this.b.copy(e[n]),this.c.copy(e[i]),this}setFromAttributeAndIndices(e,t,n,i){return this.a.fromBufferAttribute(e,t),this.b.fromBufferAttribute(e,n),this.c.fromBufferAttribute(e,i),this}clone(){return new this.constructor().copy(this)}copy(e){return this.a.copy(e.a),this.b.copy(e.b),this.c.copy(e.c),this}getArea(){return yo.subVectors(this.c,this.b),Ua.subVectors(this.a,this.b),yo.cross(Ua).length()*.5}getMidpoint(e){return e.addVectors(this.a,this.b).add(this.c).multiplyScalar(1/3)}getNormal(e){return es.getNormal(this.a,this.b,this.c,e)}getPlane(e){return e.setFromCoplanarPoints(this.a,this.b,this.c)}getBarycoord(e,t){return es.getBarycoord(e,this.a,this.b,this.c,t)}getInterpolation(e,t,n,i,s){return es.getInterpolation(e,this.a,this.b,this.c,t,n,i,s)}containsPoint(e){return es.containsPoint(e,this.a,this.b,this.c)}isFrontFacing(e){return es.isFrontFacing(this.a,this.b,this.c,e)}intersectsBox(e){return e.intersectsTriangle(this)}closestPointToPoint(e,t){const n=this.a,i=this.b,s=this.c;let o,l;rd.subVectors(i,n),id.subVectors(s,n),fv.subVectors(e,n);const u=rd.dot(fv),d=id.dot(fv);if(u<=0&&d<=0)return t.copy(n);pv.subVectors(e,i);const p=rd.dot(pv),m=id.dot(pv);if(p>=0&&m<=p)return t.copy(i);const y=u*m-p*d;if(y<=0&&u>=0&&p<=0)return o=u/(u-p),t.copy(n).addScaledVector(rd,o);mv.subVectors(e,s);const v=rd.dot(mv),S=id.dot(mv);if(S>=0&&v<=S)return t.copy(s);const E=v*d-u*S;
vendor: 18,800 bytes, line 44
44if(E<=0&&d>=0&&S<=0)return l=d/(d-S),t.copy(n).addScaledVector(id,l);const A=p*S-v*m;if(A<=0&&m-p>=0&&v-S>=0)return pw.subVectors(s,i),l=(m-p)/(m-p+(v-S)),t.copy(i).addScaledVector(pw,l);const M=1/(A+E+y);return o=E*M,l=y*M,t.copy(n).addScaledVector(rd,o).addScaledVector(id,l)}equals(e){return e.a.equals(this.a)&&e.b.equals(this.b)&&e.c.equals(this.c)}}const rC={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},Vl={h:0,s:0,l:0},w0={h:0,s:0,l:0};function _v(r,e,t){return t<0&&(t+=1),t>1&&(t-=1),t<1/6?r+(e-r)*6*t:t<1/2?e:t<2/3?r+(e-r)*6*(2/3-t):r}let tt=class{constructor(e,t,n){return this.isColor=!0,this.r=1,this.g=1,this.b=1,this.set(e,t,n)}set(e,t,n){if(t===void 0&&n===void 0){const i=e;i&&i.isColor?this.copy(i):typeof i=="number"?this.setHex(i):typeof i=="string"&&this.setStyle(i)}else this.setRGB(e,t,n);return this}setScalar(e){return this.r=e,this.g=e,this.b=e,this}setHex(e,t=Zi){return e=Math.floor(e),this.r=(e>>16&255)/255,this.g=(e>>8&255)/255,this.b=(e&255)/255,yn.toWorkingColorSpace(this,t),this}setRGB(e,t,n,i=yn.workingColorSpace){return this.r=e,this.g=t,this.b=n,yn.toWorkingColorSpace(this,i),this}setHSL(e,t,n,i=yn.workingColorSpace){if(e=Zx(e,1),t=Yt(t,0,1),n=Yt(n,0,1),t===0)this.r=this.g=this.b=n;else{const s=n<=.5?n*(1+t):n+t-n*t,o=2*n-s;this.r=_v(o,s,e+1/3),this.g=_v(o,s,e),this.b=_v(o,s,e-1/3)}return yn.toWorkingColorSpace(this,i),this}setStyle(e,t=Zi){function n(s){s!==void 0&&parseFloat(s)<1&&console.warn("THREE.Color: Alpha component of "+e+" will be ignored.")}let i;if(i=/^(\w+)\(([^\)]*)\)/.exec(e)){let s;const o=i[1],l=i[2];switch(o){case"rgb":case"rgba":if(s=/^\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(l))return n(s[4]),this.setRGB(Math.min(255,parseInt(s[1],10))/255,Math.min(255,parseInt(s[2],10))/255,Math.min(255,parseInt(s[3],10))/255,t);if(s=/^\s*(\d+)\%\s*,\s*(\d+)\%\s*,\s*(\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(l))return n(s[4]),this.setRGB(Math.min(100,parseInt(s[1],10))/100,Math.min(100,parseInt(s[2],10))/100,Math.min(100,parseInt(s[3],10))/100,t);break;case"hsl":case"hsla":if(s=/^\s*(\d*\.?\d+)\s*,\s*(\d*\.?\d+)\%\s*,\s*(\d*\.?\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(l))return n(s[4]),this.setHSL(parseFloat(s[1])/360,parseFloat(s[2])/100,parseFloat(s[3])/100,t);break;default:console.warn("THREE.Color: Unknown color model "+e)}}else if(i=/^\#([A-Fa-f\d]+)$/.exec(e)){const s=i[1],o=s.length;if(o===3)return this.setRGB(parseInt(s.charAt(0),16)/15,parseInt(s.charAt(1),16)/15,parseInt(s.charAt(2),16)/15,t);if(o===6)return this.setHex(parseInt(s,16),t);console.warn("THREE.Color: Invalid hex color "+e)}else if(e&&e.length>0)return this.setColorName(e,t);return this}setColorName(e,t=Zi){const n=rC[e.toLowerCase()];return n!==void 0?this.setHex(n,t):console.warn("THREE.Color: Unknown color "+e),this}clone(){return new this.constructor(this.r,this.g,this.b)}copy(e){return this.r=e.r,this.g=e.g,this.b=e.b,this}copySRGBToLinear(e){return this.r=qa(e.r),this.g=qa(e.g),this.b=qa(e.b),this}copyLinearToSRGB(e){return this.r=Td(e.r),this.g=Td(e.g),this.b=Td(e.b),this}convertSRGBToLinear(){return this.copySRGBToLinear(this),this}convertLinearToSRGB(){return this.copyLinearToSRGB(this),this}getHex(e=Zi){return yn.fromWorkingColorSpace(ci.copy(this),e),Math.round(Yt(ci.r*255,0,255))*65536+Math.round(Yt(ci.g*255,0,255))*256+Math.round(Yt(ci.b*255,0,255))}getHexString(e=Zi){return("000000"+this.getHex(e).toString(16)).slice(-6)}getHSL(e,t=yn.workingColorSpace){yn.fromWorkingColorSpace(ci.copy(this),t);const n=ci.r,i=ci.g,s=ci.b,o=Math.max(n,i,s),l=Math.min(n,i,s);let u,d;const p=(l+o)/2;if(l===o)u=0,d=0;else{const m=o-l;switch(d=p<=.5?m/(o+l):m/(2-o-l),o){case n:u=(i-s)/m+(i<s?6:0);break;case i:u=(s-n)/m+2;break;case s:u=(n-i)/m+4;break}u/=6}return e.h=u,e.s=d,e.l=p,e}getRGB(e,t=yn.workingColorSpace){return yn.fromWorkingColorSpace(ci.copy(this),t),e.r=ci.r,e.g=ci.g,e.b=ci.b,e}getStyle(e=Zi){yn.fromWorkingColorSpace(ci.copy(this),e);const t=ci.r,n=ci.g,i=ci.b;return e!==Zi?`color(${e} ${t.toFixed(3)} ${n.toFixed(3)} ${i.toFixed(3)})`:`rgb(${Math.round(t*255)},${Math.round(n*255)},${Math.round(i*255)})`}offsetHSL(e,t,n){return this.getHSL(Vl),this.setHSL(Vl.h+e,Vl.s+t,Vl.l+n)}add(e){return this.r+=e.r,this.g+=e.g,this.b+=e.b,this}addColors(e,t){return this.r=e.r+t.r,this.g=e.g+t.g,this.b=e.b+t.b,this}addScalar(e){return this.r+=e,this.g+=e,this.b+=e,this}sub(e){return 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),this}multiply(e){return this.r*=e.r,this.g*=e.g,this.b*=e.b,this}multiplyScalar(e){return this.r*=e,this.g*=e,this.b*=e,this}lerp(e,t){return this.r+=(e.r-this.r)*t,this.g+=(e.g-this.g)*t,this.b+=(e.b-this.b)*t,this}lerpColors(e,t,n){return 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,this}lerpHSL(e,t){this.getHSL(Vl),e.getHSL(w0);const n=Ip(Vl.h,w0.h,t),i=Ip(Vl.s,w0.s,t),s=Ip(Vl.l,w0.l,t);return this.setHSL(n,i,s),this}setFromVector3(e){return this.r=e.x,this.g=e.y,this.b=e.z,this}applyMatrix3(e){const t=this.r,n=this.g,i=this.b,s=e.elements;return this.r=s[0]*t+s[3]*n+s[6]*i,this.g=s[1]*t+s[4]*n+s[7]*i,this.b=s[2]*t+s[5]*n+s[8]*i,this}equals(e){return e.r===this.r&&e.g===this.g&&e.b===this.b}fromArray(e,t=0){return this.r=e[t],this.g=e[t+1],this.b=e[t+2],this}toArray(e=[],t=0){return e[t]=this.r,e[t+1]=this.g,e[t+2]=this.b,e}fromBufferAttribute(e,t){return this.r=e.getX(t),this.g=e.getY(t),this.b=e.getZ(t),this}toJSON(){return this.getHex()}*[Symbol.iterator](){yield this.r,yield this.g,yield this.b}};const ci=new tt;tt.NAMES=rC;let KP=0;class xr extends ta{constructor(){super(),this.isMaterial=!0,Object.defineProperty(this,"id",{value:KP++}),this.uuid=_s(),this.name="",this.type="Material",this.blending=xu,this.side=Qo,this.vertexColors=!1,this.opacity=1,this.transparent=!1,this.alphaHash=!1,this.blendSrc=Tg,this.blendDst=Ig,this.blendEquation=ql,this.blendSrcAlpha=null,this.blendDstAlpha=null,this.blendEquationAlpha=null,this.blendColor=new tt(0,0,0),this.blendAlpha=0,this.depthFunc=Cu,this.depthTest=!0,this.depthWrite=!0,this.stencilWriteMask=255,this.stencilFunc=$_,this.stencilRef=0,this.stencilFuncMask=255,this.stencilFail=uu,this.stencilZFail=uu,this.stencilZPass=uu,this.stencilWrite=!1,this.clippingPlanes=null,this.clipIntersection=!1,this.clipShadows=!1,this.shadowSide=null,this.colorWrite=!0,this.precision=null,this.polygonOffset=!1,this.polygonOffsetFactor=0,this.polygonOffsetUnits=0,this.dithering=!1,this.alphaToCoverage=!1,this.premultipliedAlpha=!1,this.forceSinglePass=!1,this.visible=!0,this.toneMapped=!0,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}onBeforeRender(){}onBeforeCompile(){}customProgramCacheKey(){return this.onBeforeCompile.toString()}setValues(e){if(e!==void 0)for(const t in e){const n=e[t];if(n===void 0){console.warn(`THREE.Material: parameter '${t}' has value of undefined.`);continue}const i=this[t];if(i===void 0){console.warn(`THREE.Material: '${t}' is not a property of THREE.${this.type}.`);continue}i&&i.isColor?i.set(n):i&&i.isVector3&&n&&n.isVector3?i.copy(n):this[t]=n}}toJSON(e){const t=e===void 0||typeof e=="string";t&&(e={textures:{},images:{}});const n={metadata:{version:4.6,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()),this.roughness!==void 0&&(n.roughness=this.roughness),this.metalness!==void 0&&(n.metalness=this.metalness),this.sheen!==void 0&&(n.sheen=this.sheen),this.sheenColor&&this.sheenColor.isColor&&(n.sheenColor=this.sheenColor.getHex()),this.sheenRoughness!==void 0&&(n.sheenRoughness=this.sheenRoughness),this.emissive&&this.emissive.isColor&&(n.emissive=this.emissive.getHex()),this.emissiveIntensity!==void 0&&this.emissiveIntensity!==1&&(n.emissiveIntensity=this.emissiveIntensity),this.specular&&this.specular.isColor&&(n.specular=this.specular.getHex()),this.specularIntensity!==void 0&&(n.specularIntensity=this.specularIntensity),this.specularColor&&this.specularColor.isColor&&(n.specularColor=this.specularColor.getHex()),this.shininess!==void 0&&(n.shininess=this.shininess),this.clearcoat!==void 0&&(n.clearcoat=this.clearcoat),this.clearcoatRoughness!==void 0&&(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),this.clearcoatNormalMap&&this.clearcoatNormalMap.isTexture&&(n.clearcoatNormalMap=this.clearcoatNormalMap.toJSON(e).uuid,n.clearcoatNormalScale=this.clearcoatNormalScale.toArray()),this.dispersion!==void 0&&(n.dispersion=this.dispersion),this.iridescence!==void 0&&(n.iridescence=this.iridescence),this.iridescenceIOR!==void 0&&(n.iridescenceIOR=this.iridescenceIOR),this.iridescenceThicknessRange!==void 0&&(n.iridescenceThicknessRange=this.iridescenceThicknessRange),this.iridescenceMap&&this.iridescenceMap.isTexture&&(n.iridescenceMap=this.iridescenceMap.toJSON(e).uuid),this.iridescenceThicknessMap&&this.iridescenceThicknessMap.isTexture&&(n.iridescenceThicknessMap=this.iridescenceThicknessMap.toJSON(e).uuid),this.anisotropy!==void 0&&(n.anisotropy=this.anisotropy),this.anisotropyRotation!==void 0&&(n.anisotropyRotation=this.anisotropyRotation),this.anisotropyMap&&this.anisotropyMap.isTexture&&(n.anisotropyMap=this.anisotropyMap.toJSON(e).uuid),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),this.lightMap&&this.lightMap.isTexture&&(n.lightMap=this.lightMap.toJSON(e).uuid,n.lightMapIntensity=this.lightMapIntensity),this.aoMap&&this.aoMap.isTexture&&(n.aoMap=this.aoMap.toJSON(e).uuid,n.aoMapIntensity=this.aoMapIntensity),this.bumpMap&&this.bumpMap.isTexture&&(n.bumpMap=this.bumpMap.toJSON(e).uuid,n.bumpScale=this.bumpScale),this.normalMap&&this.normalMap.isTexture&&(n.normalMap=this.normalMap.toJSON(e).uuid,n.normalMapType=this.normalMapType,n.normalScale=this.normalScale.toArray()),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),this.envMap&&this.envMap.isTexture&&(n.envMap=this.envMap.toJSON(e).uuid,this.combine!==void 0&&(n.combine=this.combine)),this.envMapRotation!==void 0&&(n.envMapRotation=this.envMapRotation.toArray()),this.envMapIntensity!==void 0&&(n.envMapIntensity=this.envMapIntensity),this.reflectivity!==void 0&&(n.reflectivity=this.reflectivity),this.refractionRatio!==void 0&&(n.refractionRatio=this.refractionRatio),this.gradientMap&&this.gradientMap.isTexture&&(n.gradientMap=this.gradientMap.toJSON(e).uuid),this.transmission!==void 0&&(n.transmission=this.transmission),this.transmissionMap&&this.transmissionMap.isTexture&&(n.transmissionMap=this.transmissionMap.toJSON(e).uuid),this.thickness!==void 0&&(n.thickness=this.thickness),this.thicknessMap&&this.thicknessMap.isTexture&&(n.thicknessMap=this.thicknessMap.toJSON(e).uuid),this.attenuationDistance!==void 0&&this.attenuationDistance!==1/0&&(n.attenuationDistance=this.attenuationDistance),this.attenuationColor!==void 0&&(n.attenuationColor=this.attenuationColor.getHex()),this.size!==void 0&&(n.size=this.size),this.shadowSide!==null&&(n.shadowSide=this.shadowSide),this.sizeAttenuation!==void 0&&(n.sizeAttenuation=this.sizeAttenuation),this.blending!==xu&&(n.blending=this.blending),this.side!==Qo&&(n.side=this.side),this.vertexColors===!0&&(n.vertexColors=!0),this.opacity<1&&(n.opacity=this.opacity),this.transparent===!0&&(n.transparent=!0),this.blendSrc!==Tg&&(n.blendSrc=this.blendSrc),this.blendDst!==Ig&&(n.blendDst=this.blendDst),this.blendEquation!==ql&&(n.blendEquation=this.blendEquation),this.blendSrcAlpha!==null&&(n.blendSrcAlpha=this.blendSrcAlpha),this.blendDstAlpha!==null&&(n.blendDstAlpha=this.blendDstAlpha),this.blendEquationAlpha!==null&&(n.blendEquationAlpha=this.blendEquationAlpha),this.blendColor&&this.blendColor.isColor&&(n.blendColor=this.blendColor.getHex()),this.blendAlpha!==0&&(n.blendAlpha=this.blendAlpha),this.depthFunc!==Cu&&(n.depthFunc=this.depthFunc),this.depthTest===!1&&(n.depthTest=this.depthTest),this.depthWrite===!1&&(n.depthWrite=this.depthWrite),this.colorWrite===!1&&(n.colorWrite=this.colorWrite),this.stencilWriteMask!==255&&(n.stencilWriteMask=this.stencilWriteMask),this.stencilFunc!==$_&&(n.stencilFunc=this.stencilFunc),this.stencilRef!==0&&(n.stencilRef=this.stencilRef),this.stencilFuncMask!==255&&(n.stencilFuncMask=this.stencilFuncMask),this.stencilFail!==uu&&(n.stencilFail=this.stencilFail),this.stencilZFail!==uu&&(n.stencilZFail=this.stencilZFail),this.stencilZPass!==uu&&(n.stencilZPass=this.stencilZPass),this.stencilWrite===!0&&(n.stencilWrite=this.stencilWrite),this.rotation!==void 0&&this.rotation!==0&&(n.rotation=this.rotation),this.polygonOffset===!0&&(n.polygonOffset=!0),this.polygonOffsetFactor!==0&&(n.polygonOffsetFactor=this.polygonOffsetFactor),this.polygonOffsetUnits!==0&&(n.polygonOffsetUnits=this.polygonOffsetUnits),this.linewidth!==void 0&&this.linewidth!==1&&(n.linewidth=this.linewidth),this.dashSize!==void 0&&(n.dashSize=this.dashSize),this.gapSize!==void 0&&(n.gapSize=this.gapSize),this.scale!==void 0&&(n.scale=this.scale),this.dithering===!0&&(n.dithering=!0),this.alphaTest>0&&(n.alphaTest=this.alphaTest),this.alphaHash===!0&&(n.alphaHash=!0),this.alphaToCoverage===!0&&(n.alphaToCoverage=!0),this.premultipliedAlpha===!0&&(n.premultipliedAlpha=!0),this.forceSinglePass===!0&&(n.forceSinglePass=!0),this.wireframe===!0&&(n.wireframe=!0),this.wireframeLinewidth>1&&(n.wireframeLinewidth=this.wireframeLinewidth),this.wireframeLinecap!=="round"&&(n.wireframeLinecap=this.wireframeLinecap),this.wireframeLinejoin!=="round"&&(n.wireframeLinejoin=this.wireframeLinejoin),this.flatShading===!0&&(n.flatShading=!0),this.visible===!1&&(n.visible=!1),this.toneMapped===!1&&(n.toneMapped=!1),this.fog===!1&&(n.fog=!1),Object.keys(this.userData).length>0&&(n.userData=this.userData);function i(s){const o=[];for(const l in s){const u=s[l];delete u.metadata,o.push(u)}return o}if(t){const s=i(e.textures),o=i(e.images);s.length>0&&(n.textures=s),o.length>0&&(n.images=o)}return n}clone(){return new this.constructor().copy(this)}copy(e){this.name=e.name,this.blending=e.blending,this.side=e.side,this.vertexColors=e.vertexColors,this.opacity=e.opacity,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.blendColor.copy(e.blendColor),this.blendAlpha=e.blendAlpha,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(t!==null){const i=t.length;n=new Array(i);for(let s=0;s!==i;++s)n[s]=t[s].clone()}return this.clippingPlanes=n,this.clipIntersection=e.clipIntersection,this.clipShadows=e.clipSh
vendor: 4,278 bytes, line 44
44adows,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.alphaHash=e.alphaHash,this.alphaToCoverage=e.alphaToCoverage,this.premultipliedAlpha=e.premultipliedAlpha,this.forceSinglePass=e.forceSinglePass,this.visible=e.visible,this.toneMapped=e.toneMapped,this.userData=JSON.parse(JSON.stringify(e.userData)),this}dispose(){this.dispatchEvent({type:"dispose"})}set needsUpdate(e){e===!0&&this.version++}onBuild(){console.warn("Material: onBuild() has been removed.")}}class vs extends xr{constructor(e){super(),this.isMeshBasicMaterial=!0,this.type="MeshBasicMaterial",this.color=new tt(16777215),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.envMapRotation=new Ms,this.combine=tm,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.fog=!0,this.setValues(e)}copy(e){return 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.envMapRotation.copy(e.envMapRotation),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.fog=e.fog,this}}const Xa=YP();function YP(){const r=new ArrayBuffer(4),e=new Float32Array(r),t=new Uint32Array(r),n=new Uint32Array(512),i=new Uint32Array(512);for(let u=0;u<256;++u){const d=u-127;d<-27?(n[u]=0,n[u|256]=32768,i[u]=24,i[u|256]=24):d<-14?(n[u]=1024>>-d-14,n[u|256]=1024>>-d-14|32768,i[u]=-d-1,i[u|256]=-d-1):d<=15?(n[u]=d+15<<10,n[u|256]=d+15<<10|32768,i[u]=13,i[u|256]=13):d<128?(n[u]=31744,n[u|256]=64512,i[u]=24,i[u|256]=24):(n[u]=31744,n[u|256]=64512,i[u]=13,i[u|256]=13)}const s=new Uint32Array(2048),o=new Uint32Array(64),l=new Uint32Array(64);for(let u=1;u<1024;++u){let d=u<<13,p=0;for(;!(d&8388608);)d<<=1,p-=8388608;d&=-8388609,p+=947912704,s[u]=d|p}for(let u=1024;u<2048;++u)s[u]=939524096+(u-1024<<13);for(let u=1;u<31;++u)o[u]=u<<23;o[31]=1199570944,o[32]=2147483648;for(let u=33;u<63;++u)o[u]=2147483648+(u-32<<23);o[63]=3347054592;for(let u=1;u<64;++u)u!==32&&(l[u]=1024);return{floatView:e,uint32View:t,baseTable:n,shiftTable:i,mantissaTable:s,exponentTable:o,offsetTable:l}}function qi(r){Math.abs(r)>65504&&console.warn("THREE.DataUtils.toHalfFloat(): Value out of range."),r=Yt(r,-65504,65504),Xa.floatView[0]=r;const e=Xa.uint32View[0],t=e>>23&511;return Xa.baseTable[t]+((e&8388607)>>Xa.shiftTable[t])}function xp(r){const e=r>>10;return Xa.uint32View[0]=Xa.mantissaTable[Xa.offsetTable[e]+(r&1023)]+Xa.exponentTable[e],Xa.floatView[0]}const qP={toHalfFloat:qi,fromHalfFloat:xp},vr=new $,A0=new Ne;class vn{constructor(e,t,n=!1){if(Array.isArray(e))throw new TypeError("THREE.BufferAttribute: array should be a Typed Array.");this.isBufferAttribute=!0,this.name="",this.array=e,this.itemSize=t,this.count=e!==void 0?e.length/t:0,this.normalized=n,this.usage=jp,this.updateRanges=[],this.gpuType=Di,this.version=0}onUploadCallback(){}set needsUpdate(e){e===!0&&this.version++}setUsage(e){return this.usage=e,this}addUpdateRange(e,t){this.updateRanges.push({start:e,count:t})}clearUpdateRanges(){this.updateRanges.length=0}copy(e){return 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,this.gpuType=e.gpuType,this}copyAt(e,t,n){e*=this.itemSize,n*=t.itemSize;for(let i=0,s=this.itemSize;i<s;i++)this.array[e+i]=t.array[n+i];return this}copyArray(e){return this.array.set(e),this}applyMatrix3(e){if(this.itemSize===2)for(let t=0,n=this.count;t<n;t++)A0.fromBufferAttribute(this,t),A0.applyMatrix3(e),this.setXY(t,A0.x,A0.y);else if(this.itemSize===3)for(let t=0,n=this.count;t<n;
vendor: 5,218 bytes, line 44
44t++)vr.fromBufferAttribute(this,t),vr.applyMatrix3(e),this.setXYZ(t,vr.x,vr.y,vr.z);return this}applyMatrix4(e){for(let t=0,n=this.count;t<n;t++)vr.fromBufferAttribute(this,t),vr.applyMatrix4(e),this.setXYZ(t,vr.x,vr.y,vr.z);return this}applyNormalMatrix(e){for(let t=0,n=this.count;t<n;t++)vr.fromBufferAttribute(this,t),vr.applyNormalMatrix(e),this.setXYZ(t,vr.x,vr.y,vr.z);return this}transformDirection(e){for(let t=0,n=this.count;t<n;t++)vr.fromBufferAttribute(this,t),vr.transformDirection(e),this.setXYZ(t,vr.x,vr.y,vr.z);return this}set(e,t=0){return this.array.set(e,t),this}getComponent(e,t){let n=this.array[e*this.itemSize+t];return this.normalized&&(n=Oi(n,this.array)),n}setComponent(e,t,n){return this.normalized&&(n=nn(n,this.array)),this.array[e*this.itemSize+t]=n,this}getX(e){let t=this.array[e*this.itemSize];return this.normalized&&(t=Oi(t,this.array)),t}setX(e,t){return this.normalized&&(t=nn(t,this.array)),this.array[e*this.itemSize]=t,this}getY(e){let t=this.array[e*this.itemSize+1];return this.normalized&&(t=Oi(t,this.array)),t}setY(e,t){return this.normalized&&(t=nn(t,this.array)),this.array[e*this.itemSize+1]=t,this}getZ(e){let t=this.array[e*this.itemSize+2];return this.normalized&&(t=Oi(t,this.array)),t}setZ(e,t){return this.normalized&&(t=nn(t,this.array)),this.array[e*this.itemSize+2]=t,this}getW(e){let t=this.array[e*this.itemSize+3];return this.normalized&&(t=Oi(t,this.array)),t}setW(e,t){return this.normalized&&(t=nn(t,this.array)),this.array[e*this.itemSize+3]=t,this}setXY(e,t,n){return e*=this.itemSize,this.normalized&&(t=nn(t,this.array),n=nn(n,this.array)),this.array[e+0]=t,this.array[e+1]=n,this}setXYZ(e,t,n,i){return e*=this.itemSize,this.normalized&&(t=nn(t,this.array),n=nn(n,this.array),i=nn(i,this.array)),this.array[e+0]=t,this.array[e+1]=n,this.array[e+2]=i,this}setXYZW(e,t,n,i,s){return e*=this.itemSize,this.normalized&&(t=nn(t,this.array),n=nn(n,this.array),i=nn(i,this.array),s=nn(s,this.array)),this.array[e+0]=t,this.array[e+1]=n,this.array[e+2]=i,this.array[e+3]=s,this}onUpload(e){return this.onUploadCallback=e,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.from(this.array),normalized:this.normalized};return this.name!==""&&(e.name=this.name),this.usage!==jp&&(e.usage=this.usage),e}}class QP extends vn{constructor(e,t,n){super(new Int8Array(e),t,n)}}class ZP extends vn{constructor(e,t,n){super(new Uint8Array(e),t,n)}}class eR extends vn{constructor(e,t,n){super(new Uint8ClampedArray(e),t,n)}}class tR extends vn{constructor(e,t,n){super(new Int16Array(e),t,n)}}class tM extends vn{constructor(e,t,n){super(new Uint16Array(e),t,n)}}class nR extends vn{constructor(e,t,n){super(new Int32Array(e),t,n)}}class nM extends vn{constructor(e,t,n){super(new Uint32Array(e),t,n)}}class rR extends vn{constructor(e,t,n){super(new Uint16Array(e),t,n),this.isFloat16BufferAttribute=!0}getX(e){let t=xp(this.array[e*this.itemSize]);return this.normalized&&(t=Oi(t,this.array)),t}setX(e,t){return this.normalized&&(t=nn(t,this.array)),this.array[e*this.itemSize]=qi(t),this}getY(e){let t=xp(this.array[e*this.itemSize+1]);return this.normalized&&(t=Oi(t,this.array)),t}setY(e,t){return this.normalized&&(t=nn(t,this.array)),this.array[e*this.itemSize+1]=qi(t),this}getZ(e){let t=xp(this.array[e*this.itemSize+2]);return this.normalized&&(t=Oi(t,this.array)),t}setZ(e,t){return this.normalized&&(t=nn(t,this.array)),this.array[e*this.itemSize+2]=qi(t),this}getW(e){let t=xp(this.array[e*this.itemSize+3]);return this.normalized&&(t=Oi(t,this.array)),t}setW(e,t){return this.normalized&&(t=nn(t,this.array)),this.array[e*this.itemSize+3]=qi(t),this}setXY(e,t,n){return e*=this.itemSize,this.normalized&&(t=nn(t,this.array),n=nn(n,this.array)),this.array[e+0]=qi(t),this.array[e+1]=qi(n),this}setXYZ(e,t,n,i){return e*=this.itemSize,this.normalized&&(t=nn(t,this.array),n=nn(n,this.array),i=nn(i,this.array)),this.array[e+0]=qi(t),this.array[e+1]=qi(n),this.array[e+2]=qi(i),this}setXYZW(e,t,n,i,s){return e*=this.itemSize,this.normalized&&(t=nn(t,this.array),n=nn(n,this.array),i=nn(i,this.array),s=nn(s,this.array)),this.array[e+0]=qi(t),this.array[e+1]=qi(n),this.array[e+2]=qi(i),this.array[e+3]=qi(s),this}}class Et extends vn{constructor(e,t,n){super(new Float32Array(e),t,n)}}let iR=0;const Fs=new Nt,xv=new fn,sd=new $,ms=new pi,rp=new pi,Ur=new $;class Jt extends ta{constructor(){super(),this.isBufferGeometry=!0,Object.defineProperty(this,"id",{value:iR++}),this.uuid=_s(),this.name="",this.type="BufferGeometry",this.index=null,this.indirect=null,this.attributes={},this.morphAttributes={},this.morphTargetsRelative=!1,this.groups=[],this.boundingBox=null,this.boundingSphere=null,this.drawRange={start:0,count:1/0},this.userData={}}getIndex(){return this.index}setIndex(e){return Array.isArray(e)?this.index=new(Zb(e)?nM:tM)(e,1):this.index=e,this}setIndirect(e){return this.indirect=e,this}getIndirect(){return this.indirect}getAttribute(e){return this.attributes[e]}setAttribute(e,t){return this.attributes[e]=t,this}deleteAttribute(e){return delete this.attributes[e],this}hasAttribute(e){return this.attributes[e]!==void 0}
vendor: 5,763 bytes, line 44
44addGroup(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;t!==void 0&&(t.applyMatrix4(e),t.needsUpdate=!0);const n=this.attributes.normal;if(n!==void 0){const s=new Qt().getNormalMatrix(e);n.applyNormalMatrix(s),n.needsUpdate=!0}const i=this.attributes.tangent;return i!==void 0&&(i.transformDirection(e),i.needsUpdate=!0),this.boundingBox!==null&&this.computeBoundingBox(),this.boundingSphere!==null&&this.computeBoundingSphere(),this}applyQuaternion(e){return Fs.makeRotationFromQuaternion(e),this.applyMatrix4(Fs),this}rotateX(e){return Fs.makeRotationX(e),this.applyMatrix4(Fs),this}rotateY(e){return Fs.makeRotationY(e),this.applyMatrix4(Fs),this}rotateZ(e){return Fs.makeRotationZ(e),this.applyMatrix4(Fs),this}translate(e,t,n){return Fs.makeTranslation(e,t,n),this.applyMatrix4(Fs),this}scale(e,t,n){return Fs.makeScale(e,t,n),this.applyMatrix4(Fs),this}lookAt(e){return xv.lookAt(e),xv.updateMatrix(),this.applyMatrix4(xv.matrix),this}center(){return this.computeBoundingBox(),this.boundingBox.getCenter(sd).negate(),this.translate(sd.x,sd.y,sd.z),this}setFromPoints(e){const t=this.getAttribute("position");if(t===void 0){const n=[];for(let i=0,s=e.length;i<s;i++){const o=e[i];n.push(o.x,o.y,o.z||0)}this.setAttribute("position",new Et(n,3))}else{const n=Math.min(e.length,t.count);for(let i=0;i<n;i++){const s=e[i];t.setXYZ(i,s.x,s.y,s.z||0)}e.length>t.count&&console.warn("THREE.BufferGeometry: Buffer size too small for points data. Use .dispose() and create a new geometry."),t.needsUpdate=!0}return this}computeBoundingBox(){this.boundingBox===null&&(this.boundingBox=new pi);const e=this.attributes.position,t=this.morphAttributes.position;if(e&&e.isGLBufferAttribute){console.error("THREE.BufferGeometry.computeBoundingBox(): GLBufferAttribute requires a manual bounding box.",this),this.boundingBox.set(new $(-1/0,-1/0,-1/0),new $(1/0,1/0,1/0));return}if(e!==void 0){if(this.boundingBox.setFromBufferAttribute(e),t)for(let n=0,i=t.length;n<i;n++){const s=t[n];ms.setFromBufferAttribute(s),this.morphTargetsRelative?(Ur.addVectors(this.boundingBox.min,ms.min),this.boundingBox.expandByPoint(Ur),Ur.addVectors(this.boundingBox.max,ms.max),this.boundingBox.expandByPoint(Ur)):(this.boundingBox.expandByPoint(ms.min),this.boundingBox.expandByPoint(ms.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(){this.boundingSphere===null&&(this.boundingSphere=new ei);const e=this.attributes.position,t=this.morphAttributes.position;if(e&&e.isGLBufferAttribute){console.error("THREE.BufferGeometry.computeBoundingSphere(): GLBufferAttribute requires a manual bounding sphere.",this),this.boundingSphere.set(new $,1/0);return}if(e){const n=this.boundingSphere.center;if(ms.setFromBufferAttribute(e),t)for(let s=0,o=t.length;s<o;s++){const l=t[s];rp.setFromBufferAttribute(l),this.morphTargetsRelative?(Ur.addVectors(ms.min,rp.min),ms.expandByPoint(Ur),Ur.addVectors(ms.max,rp.max),ms.expandByPoint(Ur)):(ms.expandByPoint(rp.min),ms.expandByPoint(rp.max))}ms.getCenter(n);let i=0;for(let s=0,o=e.count;s<o;s++)Ur.fromBufferAttribute(e,s),i=Math.max(i,n.distanceToSquared(Ur));if(t)for(let s=0,o=t.length;s<o;s++){const l=t[s],u=this.morphTargetsRelative;for(let d=0,p=l.count;d<p;d++)Ur.fromBufferAttribute(l,d),u&&(sd.fromBufferAttribute(e,d),Ur.add(sd)),i=Math.max(i,n.distanceToSquared(Ur))}this.boundingSphere.radius=Math.sqrt(i),isNaN(this.boundingSphere.radius)&&console.error('THREE.BufferGeometry.computeBoundingSphere(): Computed radius is NaN. The "position" attribute is likely to have NaN values.',this)}}computeTangents(){const e=this.index,t=this.attributes;if(e===null||t.position===void 0||t.normal===void 0||t.uv===void 0){console.error("THREE.BufferGeometry: .computeTangents() failed. Missing required attributes (index, position, normal or uv)");return}const n=t.position,i=t.normal,s=t.uv;this.hasAttribute("tangent")===!1&&this.setAttribute("tangent",new vn(new Float32Array(4*n.count),4));const o=this.getAttribute("tangent"),l=[],u=[];for(let H=0;H<n.count;H++)l[H]=new $,u[H]=new $;const d=new $,p=new $,m=new $,y=new Ne,v=new Ne,S=new Ne,E=new $,A=new $;function M(H,F,L){d.fromBufferAttribute(n,H),p.fromBufferAttribute(n,F),m.fromBufferAttribute(n,L),y.fromBufferAttribute(s,H),v.fromBufferAttribute(s,F),S.fromBufferAttribute(s,L),p.sub(d),m.sub(d),v.sub(y),S.sub(y);const V=1/(v.x*S.y-S.x*v.y);isFinite(V)&&(E.copy(p).multiplyScalar(S.y).addScaledVector(m,-v.y).multiplyScalar(V),A.copy(m).multiplyScalar(v.x).addScaledVector(p,-S.x).multiplyScalar(V),l[H].add(E),l[F].add(E),l[L].add(E),u[H].add(A),u[F].add(A),u[L].add(A))}let T=this.groups;T.length===0&&(T=[{start:0,count:e.count}]);for(let H=0,F=T.length;H<F;++H){const L=T[H],V=L.start,te=L.count;for(let ne=V,ce=V+te;ne<ce;ne+=3)M(e.getX(ne+0),e.getX(ne+1),e.getX(ne+2))}const I=new $,P=new $,k=new $,O=new $;function N(H){k.fromBufferAttribute(i,H),O.copy(k);const F=l[H];I.copy(F),I.sub(k.multiplyScalar(k.dot(F))).normalize(),P.crossVectors(O,F);const V=P.dot(u[H])<0?-1:1;o.setXYZW(H,I.x,I.y,I.z,V)}for(let H=0,F=T.length;H<F;++H){const L=T[H],V=L.start,te=L.count;for(let ne=V,ce=V+te;ne<ce;ne+=3)N(e.getX(ne+0)),N(e.getX(ne+1)),N(e.getX(ne+2))}}computeVertexNormals(){const e=this.index,t=this.getAttribute("position");if(t!==void 0){let n=this.getAttribute("normal");if(n===void 0)n=new vn(new Float32Array(t.count*3),3),this.setAttribute("normal",n
vendor: 6,170 bytes, line 44
44);else for(let y=0,v=n.count;y<v;y++)n.setXYZ(y,0,0,0);const i=new $,s=new $,o=new $,l=new $,u=new $,d=new $,p=new $,m=new $;if(e)for(let y=0,v=e.count;y<v;y+=3){const S=e.getX(y+0),E=e.getX(y+1),A=e.getX(y+2);i.fromBufferAttribute(t,S),s.fromBufferAttribute(t,E),o.fromBufferAttribute(t,A),p.subVectors(o,s),m.subVectors(i,s),p.cross(m),l.fromBufferAttribute(n,S),u.fromBufferAttribute(n,E),d.fromBufferAttribute(n,A),l.add(p),u.add(p),d.add(p),n.setXYZ(S,l.x,l.y,l.z),n.setXYZ(E,u.x,u.y,u.z),n.setXYZ(A,d.x,d.y,d.z)}else for(let y=0,v=t.count;y<v;y+=3)i.fromBufferAttribute(t,y+0),s.fromBufferAttribute(t,y+1),o.fromBufferAttribute(t,y+2),p.subVectors(o,s),m.subVectors(i,s),p.cross(m),n.setXYZ(y+0,p.x,p.y,p.z),n.setXYZ(y+1,p.x,p.y,p.z),n.setXYZ(y+2,p.x,p.y,p.z);this.normalizeNormals(),n.needsUpdate=!0}}normalizeNormals(){const e=this.attributes.normal;for(let t=0,n=e.count;t<n;t++)Ur.fromBufferAttribute(e,t),Ur.normalize(),e.setXYZ(t,Ur.x,Ur.y,Ur.z)}toNonIndexed(){function e(l,u){const d=l.array,p=l.itemSize,m=l.normalized,y=new d.constructor(u.length*p);let v=0,S=0;for(let E=0,A=u.length;E<A;E++){l.isInterleavedBufferAttribute?v=u[E]*l.data.stride+l.offset:v=u[E]*p;for(let M=0;M<p;M++)y[S++]=d[v++]}return new vn(y,p,m)}if(this.index===null)return console.warn("THREE.BufferGeometry.toNonIndexed(): BufferGeometry is already non-indexed."),this;const t=new Jt,n=this.index.array,i=this.attributes;for(const l in i){const u=i[l],d=e(u,n);t.setAttribute(l,d)}const s=this.morphAttributes;for(const l in s){const u=[],d=s[l];for(let p=0,m=d.length;p<m;p++){const y=d[p],v=e(y,n);u.push(v)}t.morphAttributes[l]=u}t.morphTargetsRelative=this.morphTargetsRelative;const o=this.groups;for(let l=0,u=o.length;l<u;l++){const d=o[l];t.addGroup(d.start,d.count,d.materialIndex)}return t}toJSON(){const e={metadata:{version:4.6,type:"BufferGeometry",generator:"BufferGeometry.toJSON"}};if(e.uuid=this.uuid,e.type=this.type,this.name!==""&&(e.name=this.name),Object.keys(this.userData).length>0&&(e.userData=this.userData),this.parameters!==void 0){const u=this.parameters;for(const d in u)u[d]!==void 0&&(e[d]=u[d]);return e}e.data={attributes:{}};const t=this.index;t!==null&&(e.data.index={type:t.array.constructor.name,array:Array.prototype.slice.call(t.array)});const n=this.attributes;for(const u in n){const d=n[u];e.data.attributes[u]=d.toJSON(e.data)}const i={};let s=!1;for(const u in this.morphAttributes){const d=this.morphAttributes[u],p=[];for(let m=0,y=d.length;m<y;m++){const v=d[m];p.push(v.toJSON(e.data))}p.length>0&&(i[u]=p,s=!0)}s&&(e.data.morphAttributes=i,e.data.morphTargetsRelative=this.morphTargetsRelative);const o=this.groups;o.length>0&&(e.data.groups=JSON.parse(JSON.stringify(o)));const l=this.boundingSphere;return l!==null&&(e.data.boundingSphere={center:l.center.toArray(),radius:l.radius}),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;n!==null&&this.setIndex(n.clone(t));const i=e.attributes;for(const d in i){const p=i[d];this.setAttribute(d,p.clone(t))}const s=e.morphAttributes;for(const d in s){const p=[],m=s[d];for(let y=0,v=m.length;y<v;y++)p.push(m[y].clone(t));this.morphAttributes[d]=p}this.morphTargetsRelative=e.morphTargetsRelative;const o=e.groups;for(let d=0,p=o.length;d<p;d++){const m=o[d];this.addGroup(m.start,m.count,m.materialIndex)}const l=e.boundingBox;l!==null&&(this.boundingBox=l.clone());const u=e.boundingSphere;return u!==null&&(this.boundingSphere=u.clone()),this.drawRange.start=e.drawRange.start,this.drawRange.count=e.drawRange.count,this.userData=e.userData,this}dispose(){this.dispatchEvent({type:"dispose"})}}const mw=new Nt,Qc=new Wd,E0=new ei,gw=new $,b0=new $,C0=new $,T0=new $,Mv=new $,I0=new $,yw=new $,P0=new $;class hr extends fn{constructor(e=new Jt,t=new vs){super(),this.isMesh=!0,this.type="Mesh",this.geometry=e,this.material=t,this.updateMorphTargets()}copy(e,t){return super.copy(e,t),e.morphTargetInfluences!==void 0&&(this.morphTargetInfluences=e.morphTargetInfluences.slice()),e.morphTargetDictionary!==void 0&&(this.morphTargetDictionary=Object.assign({},e.morphTargetDictionary)),this.material=Array.isArray(e.material)?e.material.slice():e.material,this.geometry=e.geometry,this}updateMorphTargets(){const t=this.geometry.morphAttributes,n=Object.keys(t);if(n.length>0){const i=t[n[0]];if(i!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let s=0,o=i.length;s<o;s++){const l=i[s].name||String(s);this.morphTargetInfluences.push(0),this.morphTargetDictionary[l]=s}}}}getVertexPosition(e,t){const n=this.geometry,i=n.attributes.position,s=n.morphAttributes.position,o=n.morphTargetsRelative;t.fromBufferAttribute(i,e);const l=this.morphTargetInfluences;if(s&&l){I0.set(0,0,0);for(let u=0,d=s.length;u<d;u++){const p=l[u],m=s[u];p!==0&&(Mv.fromBufferAttribute(m,e),o?I0.addScaledVector(Mv,p):I0.addScaledVector(Mv.sub(t),p))}t.add(I0)}return t}raycast(e,t){const n=this.geometry,i=this.material,s=this.matrixWorld;i!==void 0&&(n.boundingSphere===null&&n.computeBoundingSphere(),E0.copy(n.boundingSphere),E0.applyMatrix4(s),Qc.copy(e.ray).recast(e.near),!(E0.containsPoint(Qc.origin)===!1&&(Qc.intersectSphere(E0,gw)===null||Qc.origin.distanceToSquared(gw)>(e.far-e.near)**2))&&(mw.copy(s).invert(),Qc.copy(e.ray).applyMatrix4(mw),!(n.boundingBox!==null&&Qc.intersectsBox(n.boundingBox)===!1)&&this._computeIntersections(e,t,Qc)))}_computeIntersections(e,t,n){let i;const s=this.geometry,o=this.material,l=s.index,u=s.attributes.position,d=s.attributes.uv,p=s.attributes.uv1,m=s.attributes.normal,y=s.groups,v=s.drawRange;if(l!==null)if(Array.isArray(o))for(let S=0,E=y.length;S<E;S++){const A=y[S],M=o[A.materialIndex],T=Math.max(A.start,v.start),I=Math.min(l.count,Math.min(A.start+A.count,v.start+v.count));for(let P=T,k=I;P<k;P+=3){const O=l.getX(P),N=l.getX(P+1),H=l.getX(P+2);i=R0(this,M,e,n,d,p,m,O,N,H),i&&(i.faceIndex=Math.floor(P/3),i.face.materialIndex=A.materialIndex,t.push(i))}}else{const S=Math.max(0,v.start),E=Math.min(l.count,v.start+v.count);for(let A=S,M=E;
vendor: 7,141 bytes, lines 44-48
44A<M;A+=3){const T=l.getX(A),I=l.getX(A+1),P=l.getX(A+2);i=R0(this,o,e,n,d,p,m,T,I,P),i&&(i.faceIndex=Math.floor(A/3),t.push(i))}}else if(u!==void 0)if(Array.isArray(o))for(let S=0,E=y.length;S<E;S++){const A=y[S],M=o[A.materialIndex],T=Math.max(A.start,v.start),I=Math.min(u.count,Math.min(A.start+A.count,v.start+v.count));for(let P=T,k=I;P<k;P+=3){const O=P,N=P+1,H=P+2;i=R0(this,M,e,n,d,p,m,O,N,H),i&&(i.faceIndex=Math.floor(P/3),i.face.materialIndex=A.materialIndex,t.push(i))}}else{const S=Math.max(0,v.start),E=Math.min(u.count,v.start+v.count);for(let A=S,M=E;A<M;A+=3){const T=A,I=A+1,P=A+2;i=R0(this,o,e,n,d,p,m,T,I,P),i&&(i.faceIndex=Math.floor(A/3),t.push(i))}}}}function sR(r,e,t,n,i,s,o,l){let u;if(e.side===Ni?u=n.intersectTriangle(o,s,i,!0,l):u=n.intersectTriangle(i,s,o,e.side===Qo,l),u===null)return null;P0.copy(l),P0.applyMatrix4(r.matrixWorld);const d=t.ray.origin.distanceTo(P0);return d<t.near||d>t.far?null:{distance:d,point:P0.clone(),object:r}}function R0(r,e,t,n,i,s,o,l,u,d){r.getVertexPosition(l,b0),r.getVertexPosition(u,C0),r.getVertexPosition(d,T0);const p=sR(r,e,t,n,b0,C0,T0,yw);if(p){const m=new $;es.getBarycoord(yw,b0,C0,T0,m),i&&(p.uv=es.getInterpolatedAttribute(i,l,u,d,m,new Ne)),s&&(p.uv1=es.getInterpolatedAttribute(s,l,u,d,m,new Ne)),o&&(p.normal=es.getInterpolatedAttribute(o,l,u,d,m,new $),p.normal.dot(n.direction)>0&&p.normal.multiplyScalar(-1));const y={a:l,b:u,c:d,normal:new $,materialIndex:0};es.getNormal(b0,C0,T0,y.normal),p.face=y,p.barycoord=m}return p}class zu extends Jt{constructor(e=1,t=1,n=1,i=1,s=1,o=1){super(),this.type="BoxGeometry",this.parameters={width:e,height:t,depth:n,widthSegments:i,heightSegments:s,depthSegments:o};const l=this;i=Math.floor(i),s=Math.floor(s),o=Math.floor(o);const u=[],d=[],p=[],m=[];let y=0,v=0;S("z","y","x",-1,-1,n,t,e,o,s,0),S("z","y","x",1,-1,n,t,-e,o,s,1),S("x","z","y",1,1,e,n,t,i,o,2),S("x","z","y",1,-1,e,n,-t,i,o,3),S("x","y","z",1,-1,e,t,n,i,s,4),S("x","y","z",-1,-1,e,t,-n,i,s,5),this.setIndex(u),this.setAttribute("position",new Et(d,3)),this.setAttribute("normal",new Et(p,3)),this.setAttribute("uv",new Et(m,2));function S(E,A,M,T,I,P,k,O,N,H,F){const L=P/N,V=k/H,te=P/2,ne=k/2,ce=O/2,me=N+1,he=H+1;let ge=0,U=0;const Z=new $;for(let q=0;q<he;q++){const X=q*V-ne;for(let se=0;se<me;se++){const Le=se*L-te;Z[E]=Le*T,Z[A]=X*I,Z[M]=ce,d.push(Z.x,Z.y,Z.z),Z[E]=0,Z[A]=0,Z[M]=O>0?1:-1,p.push(Z.x,Z.y,Z.z),m.push(se/N),m.push(1-q/H),ge+=1}}for(let q=0;q<H;q++)for(let X=0;X<N;X++){const se=y+X+me*q,Le=y+X+me*(q+1),pe=y+(X+1)+me*(q+1),Ae=y+(X+1)+me*q;u.push(se,Le,Ae),u.push(Le,pe,Ae),U+=6}l.addGroup(v,U,F),v+=U,y+=ge}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(e){return new zu(e.width,e.height,e.depth,e.widthSegments,e.heightSegments,e.depthSegments)}}function kd(r){const e={};for(const t in r){e[t]={};for(const n in r[t]){const i=r[t][n];i&&(i.isColor||i.isMatrix3||i.isMatrix4||i.isVector2||i.isVector3||i.isVector4||i.isTexture||i.isQuaternion)?i.isRenderTargetTexture?(console.warn("UniformsUtils: Textures of render targets cannot be cloned via cloneUniforms() or mergeUniforms()."),e[t][n]=null):e[t][n]=i.clone():Array.isArray(i)?e[t][n]=i.slice():e[t][n]=i}}return e}function Pi(r){const e={};for(let t=0;t<r.length;t++){const n=kd(r[t]);for(const i in n)e[i]=n[i]}return e}function oR(r){const e=[];for(let t=0;t<r.length;t++)e.push(r[t].clone());return e}function iC(r){const e=r.getRenderTarget();return e===null?r.outputColorSpace:e.isXRRenderTarget===!0?e.texture.colorSpace:yn.workingColorSpace}const sC={clone:kd,merge:Pi};var aR=`void main() {
45	gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );
46}`,lR=`void main() {
47	gl_FragColor = vec4( 1.0, 0.0, 0.0, 1.0 );
48}`;class So extends xr{constructor(e){super(),this.isShaderMaterial=!0,this.type="ShaderMaterial",this.defines={},this.uniforms={},this.uniformsGroups=[],this.vertexShader=aR,this.fragmentShader=lR,this.linewidth=1,this.wireframe=!1,this.wireframeLinewidth=1,this.fog=!1,this.lights=!1,this.clipping=!1,this.forceSinglePass=!0,this.extensions={clipCullDistance:!1,multiDraw:!1},this.defaultAttributeValues={color:[1,1,1],uv:[0,0],uv1:[0,0]},this.index0AttributeName=void 0,this.uniformsNeedUpdate=!1,this.glslVersion=null,e!==void 0&&this.setValues(e)}copy(e){return super.copy(e),this.fragmentShader=e.fragmentShader,this.vertexShader=e.vertexShader,this.uniforms=kd(e.uniforms),this.uniformsGroups=oR(e.uniformsGroups),this.defines=Object.assign({},e.defines),this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.fog=e.fog,this.lights=e.lights,this.clipping=e.clipping,this.extensions=Object.assign({},e.extensions),this.glslVersion=e.glslVersion,this}toJSON(e){const t=super.toJSON(e);t.glslVersion=this.glslVersion,t.uniforms={};for(const i in this.uniforms){const o=this.uniforms[i].value;o&&o.isTexture?t.uniforms[i]={type:"t",value:o.toJSON(e).uuid}:o&&o.isColor?t.uniforms[i]={type:"c",value:o.getHex()}:o&&o.isVector2?t.uniforms[i]={type:"v2",value:o.toArray()}:o&&o.isVector3?t.uniforms[i]={type:"v3",value:o.toArray()}:o&&o.isVector4?t.uniforms[i]={type:"v4",value:o.toArray()}:o&&o.isMatrix3?t.uniforms[i]={type:"m3",value:o.toArray()}:o&&o.isMatrix4?t.uniforms[i]={type:"m4",value:o.toArray()}:t.uniforms[i]={value:o}}Object.keys(this.defines).length>0&&(t.defines=this.defines),t.vertexShader=this.vertexShader,t.fragmentShader=this.fragmentShader,t.lights=this.lights,t.clipping=this.clipping;const n={};for(const i in this.extensions)this.extensions[i]===!0&&(n[i]=!0);return Object.keys(n).length>0&&(t.extensions=n),t}}class rm extends fn{constructor(){super(),this.isCamera=!0,this.type="Camera",this.matrixWorldInverse=new Nt,this.projectionMatrix=new Nt,this.projectionMatrixInverse=new Nt,this.coordinateSystem=Xo}copy(e,t){return super.copy(e,t),this.matrixWorldInverse.copy(e.matrixWorldInverse),this.projectionMatrix.copy(e.projectionMatrix),this.projectionMatrixInverse.copy(e.projectionMatrixInverse),this.coordinateSystem=e.coordinateSystem,this}getWorldDirection(e){return super.getWorldDirection(e).negate()}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)}}const Wl=new $,vw=new Ne,_w=new Ne;let _r=class extends rm{constructor(e=50,t=1,n=.1,i=2e3){super(),this.isPerspectiveCamera=!0,this.type="PerspectiveCamera",this.fov=e,this.zoom=1,this.near=n,this.far=i,this.focus=10,this.aspect=t,this.view=null,this.filmGauge=35,this.filmOffset=0,this.updateProjectionMatrix()}copy(e,t){return 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=e.view===null?null:Object.assign({},e.view),this.filmGauge=e.filmGauge,this.filmOffset=e.filmOffset,this}setFocalLength(e){const t=.5*this.getFilmHeight()/e;this.fov=Fd*2*Math.atan(t),this.updateProjectionMatrix()}getFocalLength(){const e=Math.tan(Su*.5*this.fov);return .5*this.getFilmHeight()/e}
vendor: 18,190 bytes, lines 48-83
48getEffectiveFOV(){return Fd*2*Math.atan(Math.tan(Su*.5*this.fov)/this.zoom)}getFilmWidth(){return this.filmGauge*Math.min(this.aspect,1)}getFilmHeight(){return this.filmGauge/Math.max(this.aspect,1)}getViewBounds(e,t,n){Wl.set(-1,-1,.5).applyMatrix4(this.projectionMatrixInverse),t.set(Wl.x,Wl.y).multiplyScalar(-e/Wl.z),Wl.set(1,1,.5).applyMatrix4(this.projectionMatrixInverse),n.set(Wl.x,Wl.y).multiplyScalar(-e/Wl.z)}getViewSize(e,t){return this.getViewBounds(e,vw,_w),t.subVectors(_w,vw)}setViewOffset(e,t,n,i,s,o){this.aspect=e/t,this.view===null&&(this.view={enabled:!0,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1}),this.view.enabled=!0,this.view.fullWidth=e,this.view.fullHeight=t,this.view.offsetX=n,this.view.offsetY=i,this.view.width=s,this.view.height=o,this.updateProjectionMatrix()}clearViewOffset(){this.view!==null&&(this.view.enabled=!1),this.updateProjectionMatrix()}updateProjectionMatrix(){const e=this.near;let t=e*Math.tan(Su*.5*this.fov)/this.zoom,n=2*t,i=this.aspect*n,s=-.5*i;const o=this.view;if(this.view!==null&&this.view.enabled){const u=o.fullWidth,d=o.fullHeight;s+=o.offsetX*i/u,t-=o.offsetY*n/d,i*=o.width/u,n*=o.height/d}const l=this.filmOffset;l!==0&&(s+=e*l/this.getFilmWidth()),this.projectionMatrix.makePerspective(s,s+i,t,t-n,e,this.far,this.coordinateSystem),this.projectionMatrixInverse.copy(this.projectionMatrix).invert()}toJSON(e){const t=super.toJSON(e);return 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,this.view!==null&&(t.object.view=Object.assign({},this.view)),t.object.filmGauge=this.filmGauge,t.object.filmOffset=this.filmOffset,t}};const od=-90,ad=1;class oC extends fn{constructor(e,t,n){super(),this.type="CubeCamera",this.renderTarget=n,this.coordinateSystem=null,this.activeMipmapLevel=0;const i=new _r(od,ad,e,t);i.layers=this.layers,this.add(i);const s=new _r(od,ad,e,t);s.layers=this.layers,this.add(s);const o=new _r(od,ad,e,t);o.layers=this.layers,this.add(o);const l=new _r(od,ad,e,t);l.layers=this.layers,this.add(l);const u=new _r(od,ad,e,t);u.layers=this.layers,this.add(u);const d=new _r(od,ad,e,t);d.layers=this.layers,this.add(d)}updateCoordinateSystem(){const e=this.coordinateSystem,t=this.children.concat(),[n,i,s,o,l,u]=t;for(const d of t)this.remove(d);if(e===Xo)n.up.set(0,1,0),n.lookAt(1,0,0),i.up.set(0,1,0),i.lookAt(-1,0,0),s.up.set(0,0,-1),s.lookAt(0,1,0),o.up.set(0,0,1),o.lookAt(0,-1,0),l.up.set(0,1,0),l.lookAt(0,0,1),u.up.set(0,1,0),u.lookAt(0,0,-1);else if(e===zp)n.up.set(0,-1,0),n.lookAt(-1,0,0),i.up.set(0,-1,0),i.lookAt(1,0,0),s.up.set(0,0,1),s.lookAt(0,1,0),o.up.set(0,0,-1),o.lookAt(0,-1,0),l.up.set(0,-1,0),l.lookAt(0,0,1),u.up.set(0,-1,0),u.lookAt(0,0,-1);else throw new Error("THREE.CubeCamera.updateCoordinateSystem(): Invalid coordinate system: "+e);for(const d of t)this.add(d),d.updateMatrixWorld()}update(e,t){this.parent===null&&this.updateMatrixWorld();const{renderTarget:n,activeMipmapLevel:i}=this;this.coordinateSystem!==e.coordinateSystem&&(this.coordinateSystem=e.coordinateSystem,this.updateCoordinateSystem());const[s,o,l,u,d,p]=this.children,m=e.getRenderTarget(),y=e.getActiveCubeFace(),v=e.getActiveMipmapLevel(),S=e.xr.enabled;e.xr.enabled=!1;const E=n.texture.generateMipmaps;n.texture.generateMipmaps=!1,e.setRenderTarget(n,0,i),e.render(t,s),e.setRenderTarget(n,1,i),e.render(t,o),e.setRenderTarget(n,2,i),e.render(t,l),e.setRenderTarget(n,3,i),e.render(t,u),e.setRenderTarget(n,4,i),e.render(t,d),n.texture.generateMipmaps=E,e.setRenderTarget(n,5,i),e.render(t,p),e.setRenderTarget(m,y,v),e.xr.enabled=S,n.texture.needsPMREMUpdate=!0}}class im extends Gn{constructor(e,t,n,i,s,o,l,u,d,p){e=e!==void 0?e:[],t=t!==void 0?t:el,super(e,t,n,i,s,o,l,u,d,p),this.isCubeTexture=!0,this.flipY=!1}get images(){return this.image}set images(e){this.image=e}}class aC extends Hs{constructor(e=1,t={}){super(e,e,t),this.isWebGLCubeRenderTarget=!0;const n={width:e,height:e,depth:1},i=[n,n,n,n,n,n];this.texture=new im(i,t.mapping,t.wrapS,t.wrapT,t.magFilter,t.minFilter,t.format,t.type,t.anisotropy,t.colorSpace),this.texture.isRenderTargetTexture=!0,this.texture.generateMipmaps=t.generateMipmaps!==void 0?t.generateMipmaps:!1,this.texture.minFilter=t.minFilter!==void 0?t.minFilter:Zn}fromEquirectangularTexture(e,t){this.texture.type=t.type,this.texture.colorSpace=t.colorSpace,this.texture.generateMipmaps=t.generateMipmaps,this.texture.minFilter=t.minFilter,this.texture.magFilter=t.magFilter;const n={uniforms:{tEquirect:{value:null}},vertexShader:`
49
50				varying vec3 vWorldDirection;
51
52				vec3 transformDirection( in vec3 dir, in mat4 matrix ) {
53
54					return normalize( ( matrix * vec4( dir, 0.0 ) ).xyz );
55
56				}
57
58				void main() {
59
60					vWorldDirection = transformDirection( position, modelMatrix );
61
62					#include <begin_vertex>
63					#include <project_vertex>
64
65				}
66			`,fragmentShader:`
67
68				uniform sampler2D tEquirect;
69
70				varying vec3 vWorldDirection;
71
72				#include <common>
73
74				void main() {
75
76					vec3 direction = normalize( vWorldDirection );
77
78					vec2 sampleUV = equirectUv( direction );
79
80					gl_FragColor = texture2D( tEquirect, sampleUV );
81
82				}
83			`},i=new zu(5,5,5),s=new So({name:"CubemapFromEquirect",uniforms:kd(n.uniforms),vertexShader:n.vertexShader,fragmentShader:n.fragmentShader,side:Ni,blending:Ya});s.uniforms.tEquirect.value=t;const o=new hr(i,s),l=t.minFilter;return t.minFilter===js&&(t.minFilter=Zn),new oC(1,10,this).update(e,o),t.minFilter=l,o.geometry.dispose(),o.material.dispose(),this}clear(e,t,n,i){const s=e.getRenderTarget();for(let o=0;o<6;o++)e.setRenderTarget(this,o),e.clear(t,n,i);e.setRenderTarget(s)}}class Vy{constructor(e,t=25e-5){this.isFogExp2=!0,this.name="",this.color=new tt(e),this.density=t}clone(){return new Vy(this.color,this.density)}toJSON(){return{type:"FogExp2",name:this.name,color:this.color.getHex(),density:this.density}}}class Wy{constructor(e,t=1,n=1e3){this.isFog=!0,this.name="",this.color=new tt(e),this.near=t,this.far=n}clone(){return new Wy(this.color,this.near,this.far)}toJSON(){return{type:"Fog",name:this.name,color:this.color.getHex(),near:this.near,far:this.far}}}class Gp extends fn{constructor(){super(),this.isScene=!0,this.type="Scene",this.background=null,this.environment=null,this.fog=null,this.backgroundBlurriness=0,this.backgroundIntensity=1,this.backgroundRotation=new Ms,this.environmentIntensity=1,this.environmentRotation=new Ms,this.overrideMaterial=null,typeof __THREE_DEVTOOLS__<"u"&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("observe",{detail:this}))}copy(e,t){return super.copy(e,t),e.background!==null&&(this.background=e.background.clone()),e.environment!==null&&(this.environment=e.environment.clone()),e.fog!==null&&(this.fog=e.fog.clone()),this.backgroundBlurriness=e.backgroundBlurriness,this.backgroundIntensity=e.backgroundIntensity,this.backgroundRotation.copy(e.backgroundRotation),this.environmentIntensity=e.environmentIntensity,this.environmentRotation.copy(e.environmentRotation),e.overrideMaterial!==null&&(this.overrideMaterial=e.overrideMaterial.clone()),this.matrixAutoUpdate=e.matrixAutoUpdate,this}toJSON(e){const t=super.toJSON(e);return this.fog!==null&&(t.object.fog=this.fog.toJSON()),this.backgroundBlurriness>0&&(t.object.backgroundBlurriness=this.backgroundBlurriness),this.backgroundIntensity!==1&&(t.object.backgroundIntensity=this.backgroundIntensity),t.object.backgroundRotation=this.backgroundRotation.toArray(),this.environmentIntensity!==1&&(t.object.environmentIntensity=this.environmentIntensity),t.object.environmentRotation=this.environmentRotation.toArray(),t}}class sm{constructor(e,t){this.isInterleavedBuffer=!0,this.array=e,this.stride=t,this.count=e!==void 0?e.length/t:0,this.usage=jp,this.updateRanges=[],this.version=0,this.uuid=_s()}onUploadCallback(){}set needsUpdate(e){e===!0&&this.version++}setUsage(e){return this.usage=e,this}addUpdateRange(e,t){this.updateRanges.push({start:e,count:t})}clearUpdateRanges(){this.updateRanges.length=0}copy(e){return this.array=new e.array.constructor(e.array),this.count=e.count,this.stride=e.stride,this.usage=e.usage,this}copyAt(e,t,n){e*=this.stride,n*=t.stride;for(let i=0,s=this.stride;i<s;i++)this.array[e+i]=t.array[n+i];return this}set(e,t=0){return this.array.set(e,t),this}clone(e){e.arrayBuffers===void 0&&(e.arrayBuffers={}),this.array.buffer._uuid===void 0&&(this.array.buffer._uuid=_s()),e.arrayBuffers[this.array.buffer._uuid]===void 0&&(e.arrayBuffers[this.array.buffer._uuid]=this.array.slice(0).buffer);const t=new this.array.constructor(e.arrayBuffers[this.array.buffer._uuid]),n=new this.constructor(t,this.stride);return n.setUsage(this.usage),n}onUpload(e){return this.onUploadCallback=e,this}toJSON(e){return e.arrayBuffers===void 0&&(e.arrayBuffers={}),this.array.buffer._uuid===void 0&&(this.array.buffer._uuid=_s()),e.arrayBuffers[this.array.buffer._uuid]===void 0&&(e.arrayBuffers[this.array.buffer._uuid]=Array.from(new Uint32Array(this.array.buffer))),{uuid:this.uuid,buffer:this.array.buffer._uuid,type:this.array.constructor.name,stride:this.stride}}}const Ti=new $;class tc{constructor(e,t,n,i=!1){this.isInterleavedBufferAttribute=!0,this.name="",this.data=e,this.itemSize=t,this.offset=n,this.normalized=i}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++)Ti.fromBufferAttribute(this,t),Ti.applyMatrix4(e),this.setXYZ(t,Ti.x,Ti.y,Ti.z);return this}applyNormalMatrix(e){for(let t=0,n=this.count;t<n;t++)Ti.fromBufferAttribute(this,t),Ti.applyNormalMatrix(e),this.setXYZ(t,Ti.x,Ti.y,Ti.z);return this}transformDirection(e){for(let t=0,n=this.count;t<n;t++)Ti.fromBufferAttribute(this,t),Ti.transformDirection(e),this.setXYZ(t,Ti.x,Ti.y,Ti.z);return this}getComponent(e,t){let n=this.array[e*this.data.stride+this.offset+t];return this.normalized&&(n=Oi(n,this.array)),n}setComponent(e,t,n){return this.normalized&&(n=nn(n,this.array)),this.data.array[e*this.data.stride+this.offset+t]=n,this}setX(e,t){return this.normalized&&(t=nn(t,this.array)),this.data.array[e*this.data.stride+this.offset]=t,this}setY(e,t){return this.normalized&&(t=nn(t,this.array)),this.data.array[e*this.data.stride+this.offset+1]=t,this}setZ(e,t){return this.normalized&&(t=nn(t,this.array)),this.data.array[e*this.data.stride+this.offset+2]=t,this}setW(e,t){return this.normalized&&(t=nn(t,this.array)),this.data.array[e*this.data.stride+this.offset+3]=t,this}getX(e){let t=this.data.array[e*this.data.stride+this.offset];return this.normalized&&(t=Oi(t,this.array)),t}getY(e){let t=this.data.array[e*this.data.stride+this.offset+1];return this.normalized&&(t=Oi(t,this.array)),t}getZ(e){let t=this.data.array[e*this.data.stride+this.offset+2];return this.normalized&&(t=Oi(t,this.array)),t}getW(e){let t=this.data.array[e*this.data.stride+this.offset+3];return this.normalized&&(t=Oi(t,this.array)),t}setXY(e,t,n){return e=e*this.data.stride+this.offset,this.normalized&&(t=nn(t,this.array),n=nn(n,this.array)),this.data.array[e+0]=t,this.data.array[e+1]=n,this}setXYZ(e,t,n,i){return e=e*this.data.stride+this.offset,this.normalized&&(t=nn(t,this.array),n=nn(n,this.array),i=nn(i,this.array)),this.data.array[e+0]=t,this.data.array[e+1]=n,this.data.array[e+2]=i,this}setXYZW(e,t,n,i,s){return e=e*this.data.stride+this.offset,this.normalized&&(t=nn(t,this.array),n=nn(n,this.array),i=nn(i,this.array),s=nn(s,this.array)),this.data.array[e+0]=t,this.data.array[e+1]=n,this.data.array[e+2]=i,this.data.array[e+3]=s,this}clone(e){if(e===void 0){console.log("THREE.InterleavedBufferAttribute.clone(): Cloning an interleaved buffer attribute will de-interleave buffer data.");const t=[];for(let n=0;n<this.count;n++){const i=n*this.data.stride+this.offset;for(let s=0;s<this.itemSize;s++)t.push(this.data.array[i+s])}return new vn(new this.array.constructor(t),this.itemSize,this.normalized)}else return e.interleavedBuffers===void 0&&(e.interleavedBuffers={}),e.interleavedBuffers[this.data.uuid]===void 0&&(e.interleavedBuffers[this.data.uuid]=this.data.clone(e)),new tc(e.interleavedBuffers[this.data.uuid],this.itemSize,this.offset,this.normalized)}toJSON(e){if(e===void 0){console.log("THREE.InterleavedBufferAttribute.toJSON(): Serializing an interleaved buffer attribute will de-interleave buffer data.");const t=[];for(let n=0;n<this.count;n++){const i=n*this.data.stride+this.offset;for(let s=0;s<this.itemSize;s++)t.push(this.data.array[i+s])}return{itemSize:this.itemSize,type:this.array.constructor.name,array:t,normalized:this.normalized}}else return e.interleavedBuffers===void 0&&(e.interleavedBuffers={}),e.interleavedBuffers[this.data.uuid]===void 0&&(e.interleavedBuffers[this.data.uuid]=this.data.toJSON(e)),{isInterleavedBufferAttribute:!0,itemSize:this.itemSize,data:this.data.uuid,offset:this.offset,normalized:this.normalized}}}class rM extends xr{constructor(e){super(),this.isSpriteMaterial=!0,this.type="SpriteMaterial",this.color=new tt(16777215),this.map=null,this.alphaMap=null,this.rotation=0,this.sizeAttenuation=!0,this.transparent=!0,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.alphaMap=e.alphaMap,this.rotation=e.rotation,this.sizeAttenuation=e.sizeAttenuation,this.fog=e.fog,this}}let ld;const ip=new $,cd=new $,ud=new $,hd=new Ne,sp=new Ne,lC=new Nt,B0=new $,op=new $,O0=new $,xw=new Ne,Sv=new Ne,Mw=new Ne;class cC extends fn{constructor(e=new rM){if(super(),this.isSprite=!0,this.type="Sprite",ld===void 0){ld=new Jt;const t=new Float32Array([-.5,-.5,0,0,0,.5,-.5,0,1,0,.5,.5,0,1,1,-.5,.5,0,0,1]),n=new sm(t,5);ld.setIndex([0,1,2,0,2,3]),ld.setAttribute("position",new tc(n,3,0,!1)),ld.setAttribute("uv",new tc(n,2,3,!1))}this.geometry=ld,this.material=e,this.center=new Ne(.5,.5)}raycast(e,t){e.camera===null&&console.error('THREE.Sprite: "Raycaster.camera" needs to be set in order to raycast against sprites.'),cd.setFromMatrixScale(this.matrixWorld),lC.copy(e.camera.matrixWorld),this.modelViewMatrix.multiplyMatrices(e.camera.matrixWorldInverse,this.matrixWorld),ud.setFromMatrixPosition(this.modelViewMatrix),e.camera.isPerspectiveCamera&&this.material.sizeAttenuation===!1&&cd.multiplyScalar(-ud.z);const n=this.material.rotation;let i,s;n!==0&&(s=Math.cos(n),i=Math.sin(n));const o=this.center;D0(B0.set(-.5,-.5,0),ud,o,cd,i,s),D0(op.set(.5,-.5,0),ud,o,cd,i,s),D0(O0.set(.5,.5,0),ud,o,cd,i,s),xw.set(0,0),Sv.set(1,0),Mw.set(1,1);let l=e.ray.intersectTriangle(B0,op,O0,!1,ip);if(l===null&&(D0(op.set(-.5,.5,0),ud,o,cd,i,s),Sv.set(0,1),l=e.ray.intersectTriangle(B0,O0,op,!1,ip),l===null))return;const u=e.ray.origin.distanceTo(ip);u<e.near||u>e.far||t.push({distance:u,point:ip.clone(),uv:es.getInterpolation(ip,B0,op,O0,xw,Sv,Mw,new Ne),face:null,object:this})}copy(e,t){return super.copy(e,t),e.center!==void 0&&this.center.copy(e.center),this.material=e.material,this}}function D0(r,e,t,n,i,s){hd.subVectors(r,t).addScalar(.5).multiply(n),i!==void 0?(sp.x=s*hd.x-i*hd.y,sp.y=i*hd.x+s*hd.y):sp.copy(hd),r.copy(e),r.x+=sp.x,r.y+=sp.y,r.applyMatrix4(lC)}const L0=new $,Sw=new $;class uC extends fn{constructor(){super(),this._currentLevel=0,this.type="LOD",Object.defineProperties(this,{levels:{enumerable:!0,value:[]},isLOD:{value:!0}}),this.autoUpdate=!0}copy(e){super.copy(e,!1);const t=e.levels;for(let n=0,i=t.length;n<i;n++){const s=t[n];this.addLevel(s.object.clone(),s.distance,s.hysteresis)}return this.autoUpdate=e.autoUpdate,this}addLevel(e,t=0,n=0){t=Math.abs(t);const i=this.levels;let s;for(s=0;s<i.length&&!(t<i[s].distance);s++);return i.splice(s,0,{distance:t,hysteresis:n,object:e}),this.add(e),this}removeLevel(e){const t=this.levels;for(let n=0;n<t.length;n++)if(t[n].distance===e){const i=t.splice(n,1);return this.remove(i[0].object),!0}return!1}getCurrentLevel(){return this._currentLevel}getObjectForDistance(e){const t=this.levels;if(t.length>0){let n,i;for(n=1,i=t.length;n<i;n++){let s=t[n].distance;if(t[n].object.visible&&(s-=s*t[n].hysteresis),e<s)break}return t[n-1].object}return null}raycast(e,t){if(this.levels.length>0){L0.setFromMatrixPosition(this.matrixWorld);const i=e.ray.origin.distanceTo(L0);this.getObjectForDistance(i).raycast(e,t)}}update(e){const t=this.levels;if(t.length>1){L0.setFromMatrixPosition(e.matrixWorld),Sw.setFromMatrixPosition(this.matrixWorld);const n=L0.distanceTo(Sw)/e.zoom;t[0].object.visible=!0;let i,s;for(i=1,s=t.length;i<s;i++){let o=t[i].distance;if(t[i].object.visible&&(o-=o*t[i].hysteresis),n>=o)t[i-1].object.visible=!1,t[i].object.visible=!0;else break}for(this._currentLevel=i-1;i<s;i++)t[i].object.visible=!1}}toJSON(e){const t=super.toJSON(e);this.autoUpdate===!1&&(t.object.autoUpdate=!1),t.object.levels=[];const n=this.levels;for(let i=0,s=n.length;i<s;i++){const o=n[i];t.object.levels.push({object:o.object.uuid,distance:o.distance,hysteresis:o.hysteresis})}return t}}const ww=new $,Aw=new xn,Ew=new xn,cR=new $,bw=new Nt,N0=new $,wv=new ei,Cw=new Nt,Av=new Wd;class iM extends hr{constructor(e,t){super(e,t),this.isSkinnedMesh=!0,this.type="SkinnedMesh",this.bindMode=J_,this.bindMatrix=new Nt,this.bindMatrixInverse=new Nt,this.boundingBox=null,this.boundingSphere=null}computeBoundingBox(){const e=this.geometry;this.boundingBox===null&&(this.boundingBox=new pi),this.boundingBox.makeEmpty();const t=e.getAttribute("position");for(let n=0;n<t.count;n++)this.getVertexPosition(n,N0),this.boundingBox.expandByPoint(N0)}computeBoundingSphere(){const e=this.geometry;this.boundingSphere===null&&(this.boundingSphere=new ei),this.boundingSphere.makeEmpty();const t=e.getAttribute("position");for(let n=0;n<t.count;n++)this.getVertexPosition(n,N0),this.boundingSphere.expandByPoint(N0)}copy(e,t){return super.copy(e,t),this.bindMode=e.bindMode,this.bindMatrix.copy(e.bindMatrix),this.bindMatrixInverse.copy(e.bindMatrixInverse),this.skeleton=e.skeleton,e.boundingBox!==null&&(this.boundingBox=e.boundingBox.clone()),e.boundingSphere!==null&&(this.boundingSphere=e.boundingSphere.clone()),this}raycast(e,t){const n=this.material,i=this.matrixWorld;n!==void 0&&(this.boundingSphere===null&&this.computeBoundingSphere(),wv.copy(this.boundingSphere),wv.applyM
vendor: 7,583 bytes, line 83
83atrix4(i),e.ray.intersectsSphere(wv)!==!1&&(Cw.copy(i).invert(),Av.copy(e.ray).applyMatrix4(Cw),!(this.boundingBox!==null&&Av.intersectsBox(this.boundingBox)===!1)&&this._computeIntersections(e,t,Av)))}getVertexPosition(e,t){return super.getVertexPosition(e,t),this.applyBoneTransform(e,t),t}bind(e,t){this.skeleton=e,t===void 0&&(this.updateMatrixWorld(!0),this.skeleton.calculateInverses(),t=this.matrixWorld),this.bindMatrix.copy(t),this.bindMatrixInverse.copy(t).invert()}pose(){this.skeleton.pose()}normalizeSkinWeights(){const e=new xn,t=this.geometry.attributes.skinWeight;for(let n=0,i=t.count;n<i;n++){e.fromBufferAttribute(t,n);const s=1/e.manhattanLength();s!==1/0?e.multiplyScalar(s):e.set(1,0,0,0),t.setXYZW(n,e.x,e.y,e.z,e.w)}}updateMatrixWorld(e){super.updateMatrixWorld(e),this.bindMode===J_?this.bindMatrixInverse.copy(this.matrixWorld).invert():this.bindMode===Fb?this.bindMatrixInverse.copy(this.bindMatrix).invert():console.warn("THREE.SkinnedMesh: Unrecognized bindMode: "+this.bindMode)}applyBoneTransform(e,t){const n=this.skeleton,i=this.geometry;Aw.fromBufferAttribute(i.attributes.skinIndex,e),Ew.fromBufferAttribute(i.attributes.skinWeight,e),ww.copy(t).applyMatrix4(this.bindMatrix),t.set(0,0,0);for(let s=0;s<4;s++){const o=Ew.getComponent(s);if(o!==0){const l=Aw.getComponent(s);bw.multiplyMatrices(n.bones[l].matrixWorld,n.boneInverses[l]),t.addScaledVector(cR.copy(ww).applyMatrix4(bw),o)}}return t.applyMatrix4(this.bindMatrixInverse)}}class Xy extends fn{constructor(){super(),this.isBone=!0,this.type="Bone"}}class $o extends Gn{constructor(e=null,t=1,n=1,i,s,o,l,u,d=zr,p=zr,m,y){super(null,o,l,u,d,p,i,s,m,y),this.isDataTexture=!0,this.image={data:e,width:t,height:n},this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1}}const Tw=new Nt,uR=new Nt;class om{constructor(e=[],t=[]){this.uuid=_s(),this.bones=e.slice(0),this.boneInverses=t,this.boneMatrices=null,this.boneTexture=null,this.init()}init(){const e=this.bones,t=this.boneInverses;if(this.boneMatrices=new Float32Array(e.length*16),t.length===0)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 n=0,i=this.bones.length;n<i;n++)this.boneInverses.push(new Nt)}}calculateInverses(){this.boneInverses.length=0;for(let e=0,t=this.bones.length;e<t;e++){const n=new Nt;this.bones[e]&&n.copy(this.bones[e].matrixWorld).invert(),this.boneInverses.push(n)}}pose(){for(let e=0,t=this.bones.length;e<t;e++){const n=this.bones[e];n&&n.matrixWorld.copy(this.boneInverses[e]).invert()}for(let e=0,t=this.bones.length;e<t;e++){const n=this.bones[e];n&&(n.parent&&n.parent.isBone?(n.matrix.copy(n.parent.matrixWorld).invert(),n.matrix.multiply(n.matrixWorld)):n.matrix.copy(n.matrixWorld),n.matrix.decompose(n.position,n.quaternion,n.scale))}}update(){const e=this.bones,t=this.boneInverses,n=this.boneMatrices,i=this.boneTexture;for(let s=0,o=e.length;s<o;s++){const l=e[s]?e[s].matrixWorld:uR;Tw.multiplyMatrices(l,t[s]),Tw.toArray(n,s*16)}i!==null&&(i.needsUpdate=!0)}clone(){return new om(this.bones,this.boneInverses)}computeBoneTexture(){let e=Math.sqrt(this.bones.length*4);e=Math.ceil(e/4)*4,e=Math.max(e,4);const t=new Float32Array(e*e*4);t.set(this.boneMatrices);const n=new $o(t,e,e,hi,Di);return n.needsUpdate=!0,this.boneMatrices=t,this.boneTexture=n,this}getBoneByName(e){for(let t=0,n=this.bones.length;t<n;t++){const i=this.bones[t];if(i.name===e)return i}}dispose(){this.boneTexture!==null&&(this.boneTexture.dispose(),this.boneTexture=null)}fromJSON(e,t){this.uuid=e.uuid;for(let n=0,i=e.bones.length;n<i;n++){const s=e.bones[n];let o=t[s];o===void 0&&(console.warn("THREE.Skeleton: No bone found with UUID:",s),o=new Xy),this.bones.push(o),this.boneInverses.push(new Nt().fromArray(e.boneInverses[n]))}return this.init(),this}toJSON(){const e={metadata:{version:4.6,type:"Skeleton",generator:"Skeleton.toJSON"},bones:[],boneInverses:[]};e.uuid=this.uuid;const t=this.bones,n=this.boneInverses;for(let i=0,s=t.length;i<s;i++){const o=t[i];e.bones.push(o.uuid);const l=n[i];e.boneInverses.push(l.toArray())}return e}}class Ru extends vn{constructor(e,t,n,i=1){super(e,t,n),this.isInstancedBufferAttribute=!0,this.meshPerAttribute=i}copy(e){return super.copy(e),this.meshPerAttribute=e.meshPerAttribute,this}toJSON(){const e=super.toJSON();return e.meshPerAttribute=this.meshPerAttribute,e.isInstancedBufferAttribute=!0,e}}const dd=new Nt,Iw=new Nt,F0=[],Pw=new pi,hR=new Nt,ap=new hr,lp=new ei;class sM extends hr{constructor(e,t,n){super(e,t),this.isInstancedMesh=!0,this.instanceMatrix=new Ru(new Float32Array(n*16),16),this.instanceColor=null,this.morphTexture=null,this.count=n,this.boundingBox=null,this.boundingSphere=null;for(let i=0;i<n;i++)this.setMatrixAt(i,hR)}computeBoundingBox(){const e=this.geometry,t=this.count;this.boundingBox===null&&(this.boundingBox=new pi),e.boundingBox===null&&e.computeBoundingBox(),this.boundingBox.makeEmpty();for(let n=0;n<t;n++)this.getMatrixAt(n,dd),Pw.copy(e.boundingBox).applyMatrix4(dd),this.boundingBox.union(Pw)}computeBoundingSphere(){const e=this.geometry,t=this.count;this.boundingSphere===null&&(this.boundingSphere=new ei),e.boundingSphere===null&&e.computeBoundingSphere(),this.boundingSphere.makeEmpty();for(let n=0;n<t;n++)this.getMatrixAt(n,dd),lp.copy(e.boundingSphere).applyMatrix4(dd),this.boundingSphere.union(lp)}copy(e,t){return super.copy(e,t),this.instanceMatrix.copy(e.instanceMatrix),e.morphTexture!==null&&(this.morphTexture=e.morphTexture.clone()),e.instanceColor!==null&&(this.instanceColor=e.instanceColor.clone()),this.count=e.count,e.boundingBox!==null&&(this.boundingBox=e.boundingBox.clone()),e.boundingSphere!==null&&(this.boundingSphere=e.boundingSphere.clone()),this}getColorAt(e,t){t.fromArray(this.instanceColor.array,e*3)}getMatrixAt(e,t){t.fromArray(this.instanceMatrix.array,e*16)}getMorphAt(e,t){const n=t.morphTargetInfluences,i=this.morphTexture.source.data.data,s=n.length+1,o=e*s+1;for(let l=0;l<n.length;l++)n[l]=i[o+l]}raycast(e,t){const n=this.matrixWorld,i=this.count;if(ap.geometry=this.geometry,ap.material=this.material,ap.material!==void 0&&(this.boundingSphere===null&&this.computeBoundingSphere(),lp.copy(this.boundingSphere),lp.applyMatrix4(n),e.ray.intersectsSphere(lp)!==!1))for(let s=0;s<i;s++){this.getMatrixAt(s,dd),Iw.multiplyMatrices(n,dd),ap.matrixWorld=Iw,ap.raycast(e,F0);for(let o=0,l=F0.length;o<l;o++){const u=F0[o];u.instanceId=s,u.object=this,t.push(u)}F0.length=0}}setColorAt(e,t){this.instanceColor===null&&(this.instanceColor=new Ru(new Float32Array(this.instanceMatrix.count*3).fill(1),3)),t.toArray(this.instanceColor.array,e*3)}setMatrixAt(e,t){t.toArray(this.instanceMatrix.array,e*16)}setMorphAt(e,t){const n=t.morphTargetInfluences,i=n.length+1;this.morphTexture===null&&(this.morphTexture=new $o(new Float32Array(i*this.count),i,this.count,Uy,Di));const s=this.morphTexture.source.data.data;let o=0;for(let d=0;d<n.length;d++)o+=n[d];const l=this.geometry.morphTargetsRelative?1:1-o,u=i*e;s[u]=l,s.set(n,u+1)}updateMorphTargets(){}dispose(){return this.dispatchEvent({type:"dispose"}),this.morphTexture!==null&&(this.morphTexture.dispose(),this.morphTexture=null),this}}const Ev=new $,dR=new $,fR=new Qt;class Yl{constructor(e=new $(1,0,0),t=0){this.isPlane=!0,this.normal=e,this.constant=t}set(e,t){return this.normal.copy(e),this.constant=t,this}setComponents(e,t,n,i){return this.normal.set(e,t,n),this.constant=i,this}setFromNormalAndCoplanarPoint(e,t){return this.normal.copy(e),this.constant=-t.dot(this.normal),this}
vendor: 5,890 bytes, line 83
83setFromCoplanarPoints(e,t,n){const i=Ev.subVectors(n,t).cross(dR.subVectors(e,t)).normalize();return this.setFromNormalAndCoplanarPoint(i,e),this}copy(e){return this.normal.copy(e.normal),this.constant=e.constant,this}normalize(){const e=1/this.normal.length();return this.normal.multiplyScalar(e),this.constant*=e,this}negate(){return this.constant*=-1,this.normal.negate(),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(e).addScaledVector(this.normal,-this.distanceToPoint(e))}intersectLine(e,t){const n=e.delta(Ev),i=this.normal.dot(n);if(i===0)return this.distanceToPoint(e.start)===0?t.copy(e.start):null;const s=-(e.start.dot(this.normal)+this.constant)/i;return s<0||s>1?null:t.copy(e.start).addScaledVector(n,s)}intersectsLine(e){const t=this.distanceToPoint(e.start),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||fR.getNormalMatrix(e),i=this.coplanarPoint(Ev).applyMatrix4(e),s=this.normal.applyMatrix3(n).normalize();return this.constant=-i.dot(s),this}translate(e){return this.constant-=e.dot(this.normal),this}equals(e){return e.normal.equals(this.normal)&&e.constant===this.constant}clone(){return new this.constructor().copy(this)}}const Zc=new ei,k0=new $;class am{constructor(e=new Yl,t=new Yl,n=new Yl,i=new Yl,s=new Yl,o=new Yl){this.planes=[e,t,n,i,s,o]}set(e,t,n,i,s,o){const l=this.planes;return l[0].copy(e),l[1].copy(t),l[2].copy(n),l[3].copy(i),l[4].copy(s),l[5].copy(o),this}copy(e){const t=this.planes;for(let n=0;n<6;n++)t[n].copy(e.planes[n]);return this}setFromProjectionMatrix(e,t=Xo){const n=this.planes,i=e.elements,s=i[0],o=i[1],l=i[2],u=i[3],d=i[4],p=i[5],m=i[6],y=i[7],v=i[8],S=i[9],E=i[10],A=i[11],M=i[12],T=i[13],I=i[14],P=i[15];if(n[0].setComponents(u-s,y-d,A-v,P-M).normalize(),n[1].setComponents(u+s,y+d,A+v,P+M).normalize(),n[2].setComponents(u+o,y+p,A+S,P+T).normalize(),n[3].setComponents(u-o,y-p,A-S,P-T).normalize(),n[4].setComponents(u-l,y-m,A-E,P-I).normalize(),t===Xo)n[5].setComponents(u+l,y+m,A+E,P+I).normalize();else if(t===zp)n[5].setComponents(l,m,E,I).normalize();else throw new Error("THREE.Frustum.setFromProjectionMatrix(): Invalid coordinate system: "+t);return this}intersectsObject(e){if(e.boundingSphere!==void 0)e.boundingSphere===null&&e.computeBoundingSphere(),Zc.copy(e.boundingSphere).applyMatrix4(e.matrixWorld);else{const t=e.geometry;t.boundingSphere===null&&t.computeBoundingSphere(),Zc.copy(t.boundingSphere).applyMatrix4(e.matrixWorld)}return this.intersectsSphere(Zc)}intersectsSprite(e){return Zc.center.set(0,0,0),Zc.radius=.7071067811865476,Zc.applyMatrix4(e.matrixWorld),this.intersectsSphere(Zc)}intersectsSphere(e){const t=this.planes,n=e.center,i=-e.radius;for(let s=0;s<6;s++)if(t[s].distanceToPoint(n)<i)return!1;return!0}intersectsBox(e){const t=this.planes;for(let n=0;n<6;n++){const i=t[n];if(k0.x=i.normal.x>0?e.max.x:e.min.x,k0.y=i.normal.y>0?e.max.y:e.min.y,k0.z=i.normal.z>0?e.max.z:e.min.z,i.distanceToPoint(k0)<0)return!1}return!0}containsPoint(e){const t=this.planes;for(let n=0;n<6;n++)if(t[n].distanceToPoint(e)<0)return!1;return!0}clone(){return new this.constructor().copy(this)}}function bv(r,e){return r-e}function pR(r,e){return r.z-e.z}function mR(r,e){return e.z-r.z}class gR{constructor(){this.index=0,this.pool=[],this.list=[]}push(e,t,n,i){const s=this.pool,o=this.list;this.index>=s.length&&s.push({start:-1,count:-1,z:-1,index:-1});const l=s[this.index];o.push(l),this.index++,l.start=e,l.count=t,l.z=n,l.index=i}reset(){this.list.length=0,this.index=0}}const Yi=new Nt,yR=new tt(1,1,1),Cv=new am,U0=new pi,eu=new ei,cp=new $,Rw=new $,vR=new $,Tv=new gR,ui=new hr,j0=[];function _R(r,e,t=0){const n=e.itemSize;if(r.isInterleavedBufferAttribute||r.array.constructor!==e.array.constructor){const i=r.count;for(let s=0;s<i;s++)for(let o=0;o<n;o++)e.setComponent(s+t,o,r.getComponent(s,o))}else e.array.set(r.array,t*n);e.needsUpdate=!0}function tu(r,e){if(r.constructor!==e.constructor){const t=Math.min(r.length,e.length);for(let n=0;n<t;n++)e[n]=r[n]}else{const t=Math.min(r.length,e.length);e.set(new r.constructor(r.buffer,0,t))}}class hC extends hr{get maxInstanceCount(){return this._maxInstanceCount}get instanceCount(){return this._instanceInfo.length-this._availableInstanceIds.length}get unusedVertexCount(){return this._maxVertexCount-this._nextVertexStart}get unusedIndexCount(){return this._maxIndexCount-this._nextIndexStart}constructor(e,t,n=t*2,i){super(new Jt,i),this.isBatchedMesh=!0,this.perObjectFrustumCulled=!0,this.sortObjects=!0,this.boundingBox=null,this.boundingSphere=null,this.customSort=null,this._instanceInfo=[],this._geometryInfo=[],this._availableInstanceIds=[],this._availableGeometryIds=[],this._nextIndexStart=0,this._nextVertexStart=0,this._geometryCount=0,this._visibilityChanged=!0,this._geometryInitialized=!1,this._maxInstanceCount=e,this._maxVertexCount=t,this._maxIndexCount=n,this._multiDrawCounts=new Int32Array(e),this._multiDrawStarts=new Int32Array(e),this._multiDrawCount=0,this._multiDrawInstances=null,this._matricesTexture=null,this._indirectTexture=null,this._colorsTexture=null,this._initMatricesTexture(),this._initIndirectTexture()}_initMatricesTexture(){let e=Math.sqrt(this._maxInstanceCount*4);e=Math.ceil(e/4)*4,e=Math.max(e,4);const t=new Float32Array(e*e*4),n=new $o(t,e,e,hi,Di);this._matricesTexture=n}_initIndirectTexture(){let e=Math.sqrt(this._maxInstanceCount);e=Math.ceil(e);const t=new Uint32Array(e*e),n=new $o(t,e,e,nm,tl);this._indirectTexture=n}_initColorsTexture(){let e=Math.sqrt(this._maxInstanceCount);e=Math.ceil(e);const t=new Float32Array(e*e*4).fill(1),n=new $o(t,e,e,hi,Di);
83n.colorSpace=yn.workingColorSpace,this._colorsTexture=n}_initializeGeometry(e){const t=this.geometry,n=this._maxVertexCount,i=this._maxIndexCount;if(this._geometryInitialized===!1){for(const s in e.attributes){const o=e.getAttribute(s),{array:l,itemSize:u,normalized:d}=o,p=new l.constructor(n*u),m=new vn(p,u,d);t.setAttribute(s,m)}if(e.getIndex()!==null){const s=n>65535?new Uint32Array(i):new Uint16Array(i);t.setIndex(new vn(s,1))}this._geometryInitialized=!0}}_validateGeometry(e){const t=this.geometry;if(!!e.getIndex()!=!!t.getIndex())throw new Error('THREE.BatchedMesh: All geometries must consistently have "index".');for(const n in t.attributes){if(!e.hasAttribute(n))throw new Error(`THREE.BatchedMesh: Added geometry missing "${n}". All geometries must have consistent attributes.`);const i=e.getAttribute(n),s=t.getAttribute(n);if(i.itemSize!==s.itemSize||i.normalized!==s.normalized)throw new Error("THREE.BatchedMesh: All attributes must have a consistent itemSize and normalized value.")}}validateInstanceId(e){const t=this._instanceInfo;if(e<0||e>=t.length||t[e].active===!1)throw new Error(`THREE.BatchedMesh: Invalid instanceId ${e}. Instance is either out of range or has been deleted.`)}validateGeometryId(e){const t=this._geometryInfo;if(e<0||e>=t.length||t[e].active===!1)throw new Error(`THREE.BatchedMesh: Invalid geometryId ${e}. Geometry is either out of range or has been deleted.`)}setCustomSort(e){return this.customSort=e,this}computeBoundingBox(){this.boundingBox===null&&(this.boundingBox=new pi);const e=this.boundingBox,t=this._instanceInfo;e.makeEmpty();for(let n=0,i=t.length;n<i;n++){if(t[n].active===!1)continue;const s=t[n].geometryIndex;this.getMatrixAt(n,Yi),this.getBoundingBoxAt(s,U0).applyMatrix4(Yi),e.union(U0)}}computeBoundingSphere(){this.boundingSphere===null&&(this.boundingSphere=new ei);const e=this.boundingSphere,t=this._instanceInfo;e.makeEmpty();for(let n=0,i=t.length;n<i;n++){if(t[n].active===!1)continue;const s=t[n].geometryIndex;this.getMatrixAt(n,Yi),this.getBoundingSphereAt(s,eu).applyMatrix4(Yi),e.union(eu)}}addInstance(e){if(this._instanceInfo.length>=this.maxInstanceCount&&this._availableInstanceIds.length===0)throw new Error("THREE.BatchedMesh: Maximum item count reached.");const n={visible:!0,active:!0,geometryIndex:e};let i=null;this._availableInstanceIds.length>0?(this._availableInstanceIds.sort(bv),i=this._availableInstanceIds.shift(),this._instanceInfo[i]=n):(i=this._instanceInfo.length,this._instanceInfo.push(n));const s=this._matricesTexture;Yi.identity().toArray(s.image.data,i*16),s.needsUpdate=!0;const o=this._colorsTexture;return o&&(yR.toArray(o.image.data,i*4),o.needsUpdate=!0),this._visibilityChanged=!0,i}addGeometry(e,t=-1,n=-1){this._initializeGeometry(e),this._validateGeometry(e);const i={vertexStart:-1,vertexCount:-1,reservedVertexCount:-1,indexStart:-1,indexCount:-1,reservedIndexCount:-1,start:-1,count:-1,boundingBox:null,boundingSphere:null,active:!0},s=this._geometryInfo;i.vertexStart=this._nextVertexStart,i.reservedVertexCount=t===-1?e.getAttribute("position").count:t;const o=e.getIndex();if(o!==null&&(i.indexStart=this._nextIndexStart,i.reservedIndexCount=n===-1?o.count:n),i.indexStart!==-1&&i.indexStart+i.reservedIndexCount>this._maxIndexCount||i.vertexStart+i.reservedVertexCount>this._maxVertexCount)throw new Error("THREE.BatchedMesh: Reserved space request exceeds the maximum buffer size.");let u;return this._availableGeometryIds.length>0?(this._availableGeometryIds.sort(bv),u=this._availableGeometryIds.shift(),s[u]=i):(u=this._geometryCount,this._geometryCount++,s.push(i)),this.setGeometryAt(u,e),this._nextIndexStart=i.indexStart+i.reservedIndexCount,this._nextVertexStart=i.vertexStart+i.reservedVertexCount,u}setGeometryAt(e,t){if(e>=this._geometryCount)throw new Error("THREE.BatchedMesh: Maximum geometry count reached.");this._validateGeometry(t);const n=this.geometry,i=n.getIndex()!==null,s=n.getIndex(),o=t.getIndex(),l=this._geometryInfo[e];if(i&&o.count>l.reservedIndexCount||t.attributes.position.count>l.reservedVertexCount)throw new Error("THREE.BatchedMesh: Reserved space not large enough for provided geometry.");const u=l.vertexStart,d=l.reservedVertexCount;l.vertexCount=t.getAttribute("position").count;for(const p in n.attributes){const m=t.getAttribute(p),y=n.getAttribute(p);_R(m,y,u);const v=m.itemSize;
vendor: 8,885 bytes, line 83
83for(let S=m.count,E=d;S<E;S++){const A=u+S;for(let M=0;M<v;M++)y.setComponent(A,M,0)}y.needsUpdate=!0,y.addUpdateRange(u*v,d*v)}if(i){const p=l.indexStart,m=l.reservedIndexCount;l.indexCount=t.getIndex().count;for(let y=0;y<o.count;y++)s.setX(p+y,u+o.getX(y));for(let y=o.count,v=m;y<v;y++)s.setX(p+y,u);s.needsUpdate=!0,s.addUpdateRange(p,l.reservedIndexCount)}return l.start=i?l.indexStart:l.vertexStart,l.count=i?l.indexCount:l.vertexCount,l.boundingBox=null,t.boundingBox!==null&&(l.boundingBox=t.boundingBox.clone()),l.boundingSphere=null,t.boundingSphere!==null&&(l.boundingSphere=t.boundingSphere.clone()),this._visibilityChanged=!0,e}deleteGeometry(e){const t=this._geometryInfo;if(e>=t.length||t[e].active===!1)return this;const n=this._instanceInfo;for(let i=0,s=n.length;i<s;i++)n[i].geometryIndex===e&&this.deleteInstance(i);return t[e].active=!1,this._availableGeometryIds.push(e),this._visibilityChanged=!0,this}deleteInstance(e){return this.validateInstanceId(e),this._instanceInfo[e].active=!1,this._availableInstanceIds.push(e),this._visibilityChanged=!0,this}optimize(){let e=0,t=0;const n=this._geometryInfo,i=n.map((o,l)=>l).sort((o,l)=>n[o].vertexStart-n[l].vertexStart),s=this.geometry;for(let o=0,l=n.length;o<l;o++){const u=i[o],d=n[u];if(d.active!==!1){if(s.index!==null){if(d.indexStart!==t){const{indexStart:p,vertexStart:m,reservedIndexCount:y}=d,v=s.index,S=v.array,E=e-m;for(let A=p;A<p+y;A++)S[A]=S[A]+E;v.array.copyWithin(t,p,p+y),v.addUpdateRange(t,y),d.indexStart=t}t+=d.reservedIndexCount}if(d.vertexStart!==e){const{vertexStart:p,reservedVertexCount:m}=d,y=s.attributes;for(const v in y){const S=y[v],{array:E,itemSize:A}=S;E.copyWithin(e*A,p*A,(p+m)*A),S.addUpdateRange(e*A,m*A)}d.vertexStart=e}e+=d.reservedVertexCount,d.start=s.index?d.indexStart:d.vertexStart,this._nextIndexStart=s.index?d.indexStart+d.reservedIndexCount:0,this._nextVertexStart=d.vertexStart+d.reservedVertexCount}}return this}getBoundingBoxAt(e,t){if(e>=this._geometryCount)return null;const n=this.geometry,i=this._geometryInfo[e];if(i.boundingBox===null){const s=new pi,o=n.index,l=n.attributes.position;for(let u=i.start,d=i.start+i.count;u<d;u++){let p=u;o&&(p=o.getX(p)),s.expandByPoint(cp.fromBufferAttribute(l,p))}i.boundingBox=s}return t.copy(i.boundingBox),t}getBoundingSphereAt(e,t){if(e>=this._geometryCount)return null;const n=this.geometry,i=this._geometryInfo[e];if(i.boundingSphere===null){const s=new ei;this.getBoundingBoxAt(e,U0),U0.getCenter(s.center);const o=n.index,l=n.attributes.position;let u=0;for(let d=i.start,p=i.start+i.count;d<p;d++){let m=d;o&&(m=o.getX(m)),cp.fromBufferAttribute(l,m),u=Math.max(u,s.center.distanceToSquared(cp))}s.radius=Math.sqrt(u),i.boundingSphere=s}return t.copy(i.boundingSphere),t}setMatrixAt(e,t){this.validateInstanceId(e);const n=this._matricesTexture,i=this._matricesTexture.image.data;return t.toArray(i,e*16),n.needsUpdate=!0,this}getMatrixAt(e,t){return this.validateInstanceId(e),t.fromArray(this._matricesTexture.image.data,e*16)}setColorAt(e,t){return this.validateInstanceId(e),this._colorsTexture===null&&this._initColorsTexture(),t.toArray(this._colorsTexture.image.data,e*4),this._colorsTexture.needsUpdate=!0,this}getColorAt(e,t){return this.validateInstanceId(e),t.fromArray(this._colorsTexture.image.data,e*4)}setVisibleAt(e,t){return this.validateInstanceId(e),this._instanceInfo[e].visible===t?this:(this._instanceInfo[e].visible=t,this._visibilityChanged=!0,this)}getVisibleAt(e){return this.validateInstanceId(e),this._instanceInfo[e].visible}setGeometryIdAt(e,t){return this.validateInstanceId(e),this.validateGeometryId(t),this._instanceInfo[e].geometryIndex=t,this}getGeometryIdAt(e){return this.validateInstanceId(e),this._instanceInfo[e].geometryIndex}getGeometryRangeAt(e,t={}){this.validateGeometryId(e);const n=this._geometryInfo[e];return t.vertexStart=n.vertexStart,t.vertexCount=n.vertexCount,t.reservedVertexCount=n.reservedVertexCount,t.indexStart=n.indexStart,t.indexCount=n.indexCount,t.reservedIndexCount=n.reservedIndexCount,t.start=n.start,t.count=n.count,t}setInstanceCount(e){const t=this._availableInstanceIds,n=this._instanceInfo;for(t.sort(bv);t[t.length-1]===n.length;)n.pop(),t.pop();if(e<n.length)throw new Error(`BatchedMesh: Instance ids outside the range ${e} are being used. Cannot shrink instance count.`);const i=new Int32Array(e),s=new Int32Array(e);tu(this._multiDrawCounts,i),tu(this._multiDrawStarts,s),this._multiDrawCounts=i,this._multiDrawStarts=s,this._maxInstanceCount=e;const o=this._indirectTexture,l=this._matricesTexture,u=this._colorsTexture;o.dispose(),this._initIndirectTexture(),tu(o.image.data,this._indirectTexture.image.data),l.dispose(),this._initMatricesTexture(),tu(l.image.data,this._matricesTexture.image.data),u&&(u.dispose(),this._initColorsTexture(),tu(u.image.data,this._colorsTexture.image.data))}setGeometrySize(e,t){const n=[...this._geometryInfo].filter(l=>l.active);if(Math.max(...n.map(l=>l.vertexStart+l.reservedVertexCount))>e)throw new Error(`BatchedMesh: Geometry vertex values are being used outside the range ${t}. Cannot shrink further.`);if(this.geometry.index&&Math.max(...n.map(u=>u.indexStart+u.reservedIndexCount))>t)throw new Error(`BatchedMesh: Geometry index values are being used outside the range ${t}. Cannot shrink further.`);const s=this.geometry;s.dispose(),this._maxVertexCount=e,this._maxIndexCount=t,this._geometryInitialized&&(this._geometryInitialized=!1,this.geometry=new Jt,this._initializeGeometry(s));const o=this.geometry;s.index&&tu(s.index.array,o.index.array);for(const l in s.attributes)tu(s.attributes[l].array,o.attributes[l].array)}raycast(e,t){const n=this._instanceInfo,i=this._geometryInfo,s=this.matrixWorld,o=this.geometry;ui.material=this.material,ui.geometry.index=o.index,ui.geometry.attributes=o.attributes,ui.geometry.boundingBox===null&&(ui.geometry.boundingBox=new pi),ui.geometry.boundingSphere===null&&(ui.geometry.boundingSphere=new ei);for(let l=0,u=n.length;l<u;l++){if(!n[l].visible||!n[l].active)continue;const d=n[l].geometryIndex,p=i[d];ui.geometry.setDrawRange(p.start,p.count),this.getMatrixAt(l,ui.matrixWorld).premultiply(s),this.getBoundingBoxAt(d,ui.geometry.boundingBox),this.getBoundingSphereAt(d,ui.geometry.boundingSphere),ui.raycast(e,j0);for(let m=0,y=j0.length;m<y;m++){const v=j0[m];v.object=this,v.batchId=l,t.push(v)}j0.length=0}ui.material=null,ui.geometry.index=null,ui.geometry.attributes={},ui.geometry.setDrawRange(0,1/0)}copy(e){return super.copy(e),this.geometry=e.geometry.clone(),this.perObjectFrustumCulled=e.perObjectFrustumCulled,this.sortObjects=e.sortObjects,this.boundingBox=e.boundingBox!==null?e.boundingBox.clone():null,this.boundingSphere=e.boundingSphere!==null?e.boundingSphere.clone():null,this._geometryInfo=e._geometryInfo.map(t=>({...t,boundingBox:t.boundingBox!==null?t.boundingBox.clone():null,boundingSphere:t.boundingSphere!==null?t.boundingSphere.clone():null})),this._instanceInfo=e._instanceInfo.map(t=>({...t})),this._maxInstanceCount=e._maxInstanceCount,this._maxVertexCount=e._maxVertexCount,this._maxIndexCount=e._maxIndexCount,this._geometryInitialized=e._geometryInitialized,this._geometryCount=e._geometryCount,this._multiDrawCounts=e._multiDrawCounts.slice(),this._multiDrawStarts=e._multiDrawStarts.slice(),this._matricesTexture=e._matricesTexture.clone(),this._matricesTexture.image.data=this._matricesTexture.image.data.slice(),this._colorsTexture!==null&&(this._colorsTexture=e._colorsTexture.clone(),this._colorsTexture.image.data=this._colorsTexture.image.data.slice()),this}dispose(){return this.geometry.dispose(),this._matricesTexture.dispose(),this._matricesTexture=null,this._indirectTexture.dispose(),this._indirectTexture=null,this._colorsTexture!==null&&(this._colorsTexture.dispose(),this._colorsTexture=null),this}onBeforeRender(e,t,n,i,s){if(!this._visibilityChanged&&!this.perObjectFrustumCulled&&!this.sortObjects)return;const o=i.getIndex(),l=o===null?1:o.array.BYTES_PER_ELEMENT,u=this._instanceInfo,d=this._multiDrawStarts,p=this._multiDrawCounts,m=this._geometryInfo,y=this.perObjectFrustumCulled,v=this._indirectTexture,S=v.image.data;y&&(Yi.multiplyMatrices(n.projectionMatrix,n.matrixWorldInverse).multiply(this.matrixWorld),Cv.setFromProjectionMatrix(Yi,e.coordinateSystem));let E=0;if(this.sortObjects){Yi.copy(this.matrixWorld).invert(),cp.setFromMatrixPosition(n.matrixWorld).applyMatrix4(Yi),Rw.set(0,0,-1).transformDirection(n.matrixWorld).transformDirection(Yi);for(let T=0,I=u.length;T<I;T++)if(u[T].visible&&u[T].active){const P=u[T].geometryIndex;this.getMatrixAt(T,Yi),this.getBoundingSphereAt(P,eu).applyMatrix4(Yi);let k=!1;if(y&&(k=!Cv.intersectsSphere(eu)),!k){const O=m[P],N=vR.subVectors(eu.center,cp).dot(Rw);Tv.push(O.start,O.count,N,T)}}const A=Tv.list,M=this.customSort;M===null?A.sort(s.transparent?mR:pR):M.call(this,A,n);for(let T=0,I=A.length;T<I;T++){const P=A[T];
vendor: 16,491 bytes, line 83
83d[E]=P.start*l,p[E]=P.count,S[E]=P.index,E++}Tv.reset()}else for(let A=0,M=u.length;A<M;A++)if(u[A].visible&&u[A].active){const T=u[A].geometryIndex;let I=!1;if(y&&(this.getMatrixAt(A,Yi),this.getBoundingSphereAt(T,eu).applyMatrix4(Yi),I=!Cv.intersectsSphere(eu)),!I){const P=m[T];d[E]=P.start*l,p[E]=P.count,S[E]=A,E++}}v.needsUpdate=!0,this._multiDrawCount=E,this._visibilityChanged=!1}onBeforeShadow(e,t,n,i,s,o){this.onBeforeRender(e,null,i,s,o)}}class mi extends xr{constructor(e){super(),this.isLineBasicMaterial=!0,this.type="LineBasicMaterial",this.color=new tt(16777215),this.map=null,this.linewidth=1,this.linecap="round",this.linejoin="round",this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.linewidth=e.linewidth,this.linecap=e.linecap,this.linejoin=e.linejoin,this.fog=e.fog,this}}const uy=new $,hy=new $,Bw=new Nt,up=new Wd,z0=new ei,Iv=new $,Ow=new $;class nl extends fn{constructor(e=new Jt,t=new mi){super(),this.isLine=!0,this.type="Line",this.geometry=e,this.material=t,this.updateMorphTargets()}copy(e,t){return super.copy(e,t),this.material=Array.isArray(e.material)?e.material.slice():e.material,this.geometry=e.geometry,this}computeLineDistances(){const e=this.geometry;if(e.index===null){const t=e.attributes.position,n=[0];for(let i=1,s=t.count;i<s;i++)uy.fromBufferAttribute(t,i-1),hy.fromBufferAttribute(t,i),n[i]=n[i-1],n[i]+=uy.distanceTo(hy);e.setAttribute("lineDistance",new Et(n,1))}else console.warn("THREE.Line.computeLineDistances(): Computation only possible with non-indexed BufferGeometry.");return this}raycast(e,t){const n=this.geometry,i=this.matrixWorld,s=e.params.Line.threshold,o=n.drawRange;if(n.boundingSphere===null&&n.computeBoundingSphere(),z0.copy(n.boundingSphere),z0.applyMatrix4(i),z0.radius+=s,e.ray.intersectsSphere(z0)===!1)return;Bw.copy(i).invert(),up.copy(e.ray).applyMatrix4(Bw);const l=s/((this.scale.x+this.scale.y+this.scale.z)/3),u=l*l,d=this.isLineSegments?2:1,p=n.index,y=n.attributes.position;if(p!==null){const v=Math.max(0,o.start),S=Math.min(p.count,o.start+o.count);for(let E=v,A=S-1;E<A;E+=d){const M=p.getX(E),T=p.getX(E+1),I=H0(this,e,up,u,M,T);I&&t.push(I)}if(this.isLineLoop){const E=p.getX(S-1),A=p.getX(v),M=H0(this,e,up,u,E,A);M&&t.push(M)}}else{const v=Math.max(0,o.start),S=Math.min(y.count,o.start+o.count);for(let E=v,A=S-1;E<A;E+=d){const M=H0(this,e,up,u,E,E+1);M&&t.push(M)}if(this.isLineLoop){const E=H0(this,e,up,u,S-1,v);E&&t.push(E)}}}updateMorphTargets(){const t=this.geometry.morphAttributes,n=Object.keys(t);if(n.length>0){const i=t[n[0]];if(i!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let s=0,o=i.length;s<o;s++){const l=i[s].name||String(s);this.morphTargetInfluences.push(0),this.morphTargetDictionary[l]=s}}}}}function H0(r,e,t,n,i,s){const o=r.geometry.attributes.position;if(uy.fromBufferAttribute(o,i),hy.fromBufferAttribute(o,s),t.distanceSqToSegment(uy,hy,Iv,Ow)>n)return;Iv.applyMatrix4(r.matrixWorld);const u=e.ray.origin.distanceTo(Iv);if(!(u<e.near||u>e.far))return{distance:u,point:Ow.clone().applyMatrix4(r.matrixWorld),index:i,face:null,faceIndex:null,barycoord:null,object:r}}const Dw=new $,Lw=new $;class bo extends nl{constructor(e,t){super(e,t),this.isLineSegments=!0,this.type="LineSegments"}computeLineDistances(){const e=this.geometry;if(e.index===null){const t=e.attributes.position,n=[];for(let i=0,s=t.count;i<s;i+=2)Dw.fromBufferAttribute(t,i),Lw.fromBufferAttribute(t,i+1),n[i]=i===0?0:n[i-1],n[i+1]=n[i]+Dw.distanceTo(Lw);e.setAttribute("lineDistance",new Et(n,1))}else console.warn("THREE.LineSegments.computeLineDistances(): Computation only possible with non-indexed BufferGeometry.");return this}}class oM extends nl{constructor(e,t){super(e,t),this.isLineLoop=!0,this.type="LineLoop"}}class lm extends xr{constructor(e){super(),this.isPointsMaterial=!0,this.type="PointsMaterial",this.color=new tt(16777215),this.map=null,this.alphaMap=null,this.size=1,this.sizeAttenuation=!0,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.alphaMap=e.alphaMap,this.size=e.size,this.sizeAttenuation=e.sizeAttenuation,this.fog=e.fog,this}}const Nw=new Nt,Y_=new Wd,G0=new ei,V0=new $;class Jy extends fn{constructor(e=new Jt,t=new lm){super(),this.isPoints=!0,this.type="Points",this.geometry=e,this.material=t,this.updateMorphTargets()}copy(e,t){return super.copy(e,t),this.material=Array.isArray(e.material)?e.material.slice():e.material,this.geometry=e.geometry,this}raycast(e,t){const n=this.geometry,i=this.matrixWorld,s=e.params.Points.threshold,o=n.drawRange;if(n.boundingSphere===null&&n.computeBoundingSphere(),G0.copy(n.boundingSphere),G0.applyMatrix4(i),G0.radius+=s,e.ray.intersectsSphere(G0)===!1)return;Nw.copy(i).invert(),Y_.copy(e.ray).applyMatrix4(Nw);const l=s/((this.scale.x+this.scale.y+this.scale.z)/3),u=l*l,d=n.index,m=n.attributes.position;if(d!==null){const y=Math.max(0,o.start),v=Math.min(d.count,o.start+o.count);for(let S=y,E=v;S<E;S++){const A=d.getX(S);V0.fromBufferAttribute(m,A),Fw(V0,A,u,i,e,t,this)}}else{const y=Math.max(0,o.start),v=Math.min(m.count,o.start+o.count);for(let S=y,E=v;S<E;S++)V0.fromBufferAttribute(m,S),Fw(V0,S,u,i,e,t,this)}}updateMorphTargets(){const t=this.geometry.morphAttributes,n=Object.keys(t);if(n.length>0){const i=t[n[0]];if(i!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let s=0,o=i.length;s<o;s++){const l=i[s].name||String(s);this.morphTargetInfluences.push(0),this.morphTargetDictionary[l]=s}}}}}function Fw(r,e,t,n,i,s,o){const l=Y_.distanceSqToPoint(r);if(l<t){const u=new $;Y_.closestPointToPoint(r,u),u.applyMatrix4(n);const d=i.ray.origin.distanceTo(u);if(d<i.near||d>i.far)return;s.push({distance:d,distanceToRay:Math.sqrt(l),point:u,index:e,face:null,faceIndex:null,barycoord:null,object:o})}}class $a extends fn{constructor(){super(),this.isGroup=!0,this.type="Group"}}class xR extends Gn{constructor(e,t,n,i,s,o,l,u,d){super(e,t,n,i,s,o,l,u,d),this.isVideoTexture=!0,this.minFilter=o!==void 0?o:Zn,this.magFilter=s!==void 0?s:Zn,this.generateMipmaps=!1;const p=this;function m(){p.needsUpdate=!0,e.requestVideoFrameCallback(m)}"requestVideoFrameCallback"in e&&e.requestVideoFrameCallback(m)}clone(){return new this.constructor(this.image).copy(this)}update(){const e=this.image;"requestVideoFrameCallback"in e===!1&&e.readyState>=e.HAVE_CURRENT_DATA&&(this.needsUpdate=!0)}}class MR extends Gn{constructor(e,t){super({width:e,height:t}),this.isFramebufferTexture=!0,this.magFilter=zr,this.minFilter=zr,this.generateMipmaps=!1,this.needsUpdate=!0}}class $y extends Gn{constructor(e,t,n,i,s,o,l,u,d,p,m,y){super(null,o,l,u,d,p,i,s,m,y),this.isCompressedTexture=!0,this.image={width:t,height:n},this.mipmaps=e,this.flipY=!1,this.generateMipmaps=!1}}class SR extends $y{constructor(e,t,n,i,s,o){super(e,t,n,s,o),this.isCompressedArrayTexture=!0,this.image.depth=i,this.wrapR=ys,this.layerUpdates=new Set}addLayerUpdate(e){this.layerUpdates.add(e)}clearLayerUpdates(){this.layerUpdates.clear()}}class wR extends $y{constructor(e,t,n){super(void 0,e[0].width,e[0].height,t,n,el),this.isCompressedCubeTexture=!0,this.isCubeTexture=!0,this.image=e}}class AR extends Gn{constructor(e,t,n,i,s,o,l,u,d){super(e,t,n,i,s,o,l,u,d),this.isCanvasTexture=!0,this.needsUpdate=!0}}class Ky extends Gn{constructor(e,t,n,i,s,o,l,u,d,p=Mu){if(p!==Mu&&p!==Iu)throw new Error("DepthTexture format must be either THREE.DepthFormat or THREE.DepthStencilFormat");n===void 0&&p===Mu&&(n=tl),n===void 0&&p===Iu&&(n=Tu),super(null,i,s,o,l,u,p,n,d),this.isDepthTexture=!0,this.image={width:e,height:t},this.magFilter=l!==void 0?l:zr,this.minFilter=u!==void 0?u:zr,this.flipY=!1,this.generateMipmaps=!1,this.compareFunction=null}copy(e){return super.copy(e),this.compareFunction=e.compareFunction,this}toJSON(e){const t=super.toJSON(e);return this.compareFunction!==null&&(t.compareFunction=this.compareFunction),t}}class Co{constructor(){this.type="Curve",this.arcLengthDivisions=200}getPoint(){return console.warn("THREE.Curve: .getPoint() not implemented."),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=!1;const t=[];let n,i=this.getPoint(0),s=0;t.push(0);for(let o=1;o<=e;o++)n=this.getPoint(o/e),s+=n.distanceTo(i),t.push(s),i=n;return this.cacheArcLengths=t,t}updateArcLengths(){this.needsUpdate=!0,this.getLengths()}getUtoTmapping(e,t){const n=this.getLengths();let i=0;const s=n.length;let o;t?o=t:o=e*n[s-1];let l=0,u=s-1,d;for(;l<=u;)if(i=Math.floor(l+(u-l)/2),d=n[i]-o,d<0)l=i+1;else if(d>0)u=i-1;else{u=i;break}if(i=u,n[i]===o)return i/(s-1);const p=n[i],y=n[i+1]-p,v=(o-p)/y;return(i+v)/(s-1)}getTangent(e,t){let i=e-1e-4,s=e+1e-4;i<0&&(i=0),s>1&&(s=1);const o=this.getPoint(i),l=this.getPoint(s),u=t||(o.isVector2?new Ne:new $);return u.copy(l).sub(o).normalize(),u}getTangentAt(e,t){const n=this.getUtoTmapping(e);return this.getTangent(n,t)}computeFrenetFrames(e,t){const n=new $,i=[],s=[],o=[],l=new $,u=new Nt;for(let v=0;v<=e;v++){const S=v/e;i[v]=this.getTangentAt(S,new $)}s[0]=new $,o[0]=new $;let d=Number.MAX_VALUE;const p=Math.abs(i[0].x),m=Math.abs(i[0].y),y=Math.abs(i[0].z);p<=d&&(d=p,n.set(1,0,0)),m<=d&&(d=m,n.set(0,1,0)),y<=d&&n.set(0,0,1),l.crossVectors(i[0],n).normalize(),s[0].crossVectors(i[0],l),o[0].crossVectors(i[0],s[0]);for(let v=1;v<=e;v++){if(s[v]=s[v-1].clone(),o[v]=o[v-1].clone(),l.crossVectors(i[v-1],i[v]),l.length()>Number.EPSILON){l.normalize();const S=Math.acos(Yt(i[v-1].dot(i[v]),-1,1));s[v].applyMatrix4(u.makeRotationAxis(l,S))}o[v].crossVectors(i[v],s[v])}if(t===!0){let v=Math.acos(Yt(s[0].dot(s[e]),-1,1));v/=e,i[0].dot(l.crossVectors(s[0],s[e]))>0&&(v=-v);for(let S=1;S<=e;S++)s[S].applyMatrix4(u.makeRotationAxis(i[S],v*S)),o[S].crossVectors(i[S],s[S])}return{tangents:i,normals:s,binormals:o}}clone(){return new this.constructor().copy(this)}copy(e){return this.arcLengthDivisions=e.arcLengthDivisions,this}toJSON(){const e={metadata:{version:4.6,type:"Curve",generator:"Curve.toJSON"}};return e.arcLengthDivisions=this.arcLengthDivisions,e.type=this.type,e}fromJSON(e){return this.arcLengthDivisions=e.arcLengthDivisions,this}}class Yy extends Co{constructor(e=0,t=0,n=1,i=1,s=0,o=Math.PI*2,l=!1,u=0){super(),this.isEllipseCurve=!0,this.type="EllipseCurve",this.aX=e,this.aY=t,this.xRadius=n,this.yRadius=i,this.aStartAngle=s,this.aEndAngle=o,this.aClockwise=l,this.aRotation=u}getPoint(e,t=new Ne){const n=t,i=Math.PI*2;let s=this.aEndAngle-this.aStartAngle;const o=Math.abs(s)<Number.EPSILON;for(;s<0;)s+=i;for(;s>i;)s-=i;s<Number.EPSILON&&(o?s=0:s=i),this.aClockwise===!0&&!o&&(s===i?s=-i:s=s-i);const l=this.aStartAngle+e*s;let u=this.aX+this.xRadius*Math.cos(l),d=this.aY+this.yRadius*Math.sin(l);if(this.aRotation!==0){const p=Math.cos(this.aRotation),m=Math.sin(this.aRotation),y=u-this.aX,v=d-this.aY;u=y*p-v*m+this.aX,d=y*m+v*p+this.aY}return n.set(u,d)}copy(e){return 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,this}toJSON(){const e=super.toJSON();return 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,e}fromJSON(e){return 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,this}}class dC extends Yy{constructor(e,t,n,i,s,o){super(e,t,n,n,i,s,o),this.isArcCurve=!0,this.type="ArcCurve"}}function aM(){let r=0,e=0,t=0,n=0;function i(s,o,l,u){r=s,e=l,t=-3*s+3*o-2*l-u,n=2*s-2*o+l+u}return{initCatmullRom:function(s,o,l,u,d){i(o,l,d*(l-s),d*(u-o))},initNonuniformCatmullRom:function(s,o,l,u,d,p,m){let y=(o-s)/d-(l-s)/(d+p)+(l-o)/p,v=(l-o)/p-(u-o)/(p+m)+(u-l)/m;y*=p,v*=p,i(o,l,y,v)},calc:function(s){const o=s*s,l=o*s;return r+e*s+t*o+n*l}}}const W0=new $,Pv=new aM,Rv=new aM,Bv=new aM;class fC extends Co{constructor(e=[],t=!1,n="centripetal",i=.5){super(),this.isCatmullRomCurve3=!0,this.type="CatmullRomCurve3",this.points=e,this.closed=t,this.curveType=n,this.tension=i}getPoint(e,t=new $){const n=t,i=this.points,s=i.length,o=(s-(this.closed?0:1))*e;let l=Math.floor(o),u=o-l;this.closed?l+=l>0?0:(Math.floor(Math.abs(l)/s)+1)*s:u===0&&l===s-1&&(l=s-2,u=1);let d,p;this.closed||l>0?d=i[(l-1)%s]:(W0.subVectors(i[0],i[1]).add(i[0]),d=W0);const m=i[l%s],y=i[(l+1)%s];if(this.closed||l+2<s?p=i[(l+2)%s]:(W0.subVectors(i[s-1],i[s-2]).add(i[s-1]),p=W0),this.curveType==="centripetal"||this.curveType==="chordal"){const v=this.curveType==="chordal"?.5:.25;let S=Math.pow(d.distanceToSquared(m),v),E=Math.pow(m.distanceToSquared(y),v),A=Math.pow(y.distanceToSquared(p),v);E<1e-4&&(E=1),S<1e-4&&(S=E),A<1e-4&&(A=E),Pv.initNonuniformCatmullRom(d.x,m.x,y.x,p.x,S,E,A),Rv.initNonuniformCatmullRom(d.y,m.y,y.y,p.y,S,E,A),Bv.initNonuniformCatmullRom(d.z,m.z,y.z,p.z,S,E,A)}else this.curveType==="catmullrom"&&(Pv.initCatmullRom(d.x,m.x,y.x,p.x,this.tension),Rv.initCatmullRom(d.y,m.y,y.y,p.y,this.tension),Bv.initCatmullRom(d.z,m.z,y.z,p.z,this.tension));return n.set(Pv.calc(u),Rv.calc(u),Bv.calc(u)),n}copy(e){super.copy(e),this.points=[];for(let t=0,n=e.points.length;t<n;t++){const i=e.points[t];this.points.push(i.clone())}return this.closed=e.closed,this.curveType=e.curveType,this.tension=e.tension,this}toJSON(){const e=super.toJSON();e.points=[];for(let t=0,n=this.points.length;t<n;t++){const i=this.points[t];e.points.push(i.toArray())}return e.closed=this.closed,e.curveType=this.curveType,e.tension=this.tension,e}fromJSON(e){super.fromJSON(e),this.points=[];for(let t=0,n=e.points.length;t<n;t++){const i=e.points[t];this.points.push(new $().fromArray(i))}return this.closed=e.closed,this.curveType=e.curveType,this.tension=e.tension,this}}function kw(r,e,t,n,i){const s=(n-e)*.5,o=(i-t)*.5,l=r*r,u=r*l;return(2*t-2*n+s+o)*u+(-3*t+3*n-2*s-o)*l+s*r+t}function ER(r,e){const t=1-r;return t*t*e}function bR(r,e){return 2*(1-r)*r*e}function CR(r,e){return r*r*e}function Pp(r,e,t,n){return ER(r,e)+bR(r,t)+CR(r,n)}function TR(r,e){const t=1-r;return t*t*t*e}function IR(r,e){const t=1-r;return 3*t*t*r*e}function PR(r,e){return 3*(1-r)*r*r*e}function RR(r,e){return r*r*r*e}function Rp(r,e,t,n,i){return TR(r,e)+IR(r,t)+PR(r,n)+RR(r,i)}class lM extends Co{constructor(e=new Ne,t=new Ne,n=new Ne,i=new Ne){super(),this.isCubicBezierCurve=!0,this.type="CubicBezierCurve",this.v0=e,this.v1=t,this.v2=n,this.v3=i}getPoint(e,t=new Ne){const n=t,i=this.v0,s=this.v1,o=this.v2,l=this.v3;return n.set(Rp(e,i.x,s.x,o.x,l.x),Rp(e,i.y,s.y,o.y,l.y)),n}copy(e){return super.copy(e),this.v0.copy(e.v0),this.v1.copy(e.v1),this.v2.copy(e.v2),this.v3.copy(e.v3),this}toJSON(){const e=super.toJSON();return e.v0=this.v0.toArray(),e.v1=this.v1.toArray(),e.v2=this.v2.toArray(),e.v3=this.v3.toArray(),e}fromJSON(e){return super.fromJSON(e),this.v0.fromArray(e.v0),this.v1.fromArray(e.v1),this.v2.fromArray(e.v2),this.v3.fromArray(e.v3),this}}class pC extends Co{constructor(e=new $,t=new $,n=new $,i=new $){super(),this.isCubicBezierCurve3=!0,this.type="CubicBezierCurve3",this.v0=e,this.v1=t,this.v2=n,this.v3=i}getPoint(e,t=new $){const n=t,i=this.v0,s=this.v1,o=this.v2,l=this.v3;return n.set(Rp(e,i.x,s.x,o.x,l.x),Rp(e,i.y,s.y,o.y,l.y),Rp(e,i.z,s.z,o.z,l.z)),n}copy(e){return super.copy(e),this.v0.copy(e.v0),this.v1.copy(e.v1),this.v2.copy(e.v2),this.v3.copy(e.v3),this}toJSON(){const e=super.toJSON();return e.v0=this.v0.toArray(),e.v1=this.v1.toArray(),e.v2=this.v2.toArray(),e.v3=this.v3.toArray(),e}fromJSON(e){return super.fromJSON(e),this.v0.fromArray(e.v0),this.v1.fromArray(e.v1),this.v2.fromArray(e.v2),this.v3.fromArray(e.v3),this}}class cM extends Co{constructor(e=new Ne,t=new Ne){super(),this.isLineCurve=!0,this.type="LineCurve",this.v1=e,this.v2=t}getPoint(e,t=new Ne){const n=t;return e===1?n.copy(this.v2):(n.copy(this.v2).sub(this.v1),n.multiplyScalar(e).add(this.v1)),n}getPointAt(e,t){return this.getPoint(e,t)}
vendor: 4,414 bytes, line 83
83getTangent(e,t=new Ne){return t.subVectors(this.v2,this.v1).normalize()}getTangentAt(e,t){return this.getTangent(e,t)}copy(e){return super.copy(e),this.v1.copy(e.v1),this.v2.copy(e.v2),this}toJSON(){const e=super.toJSON();return e.v1=this.v1.toArray(),e.v2=this.v2.toArray(),e}fromJSON(e){return super.fromJSON(e),this.v1.fromArray(e.v1),this.v2.fromArray(e.v2),this}}class mC extends Co{constructor(e=new $,t=new $){super(),this.isLineCurve3=!0,this.type="LineCurve3",this.v1=e,this.v2=t}getPoint(e,t=new $){const n=t;return e===1?n.copy(this.v2):(n.copy(this.v2).sub(this.v1),n.multiplyScalar(e).add(this.v1)),n}getPointAt(e,t){return this.getPoint(e,t)}getTangent(e,t=new $){return t.subVectors(this.v2,this.v1).normalize()}getTangentAt(e,t){return this.getTangent(e,t)}copy(e){return super.copy(e),this.v1.copy(e.v1),this.v2.copy(e.v2),this}toJSON(){const e=super.toJSON();return e.v1=this.v1.toArray(),e.v2=this.v2.toArray(),e}fromJSON(e){return super.fromJSON(e),this.v1.fromArray(e.v1),this.v2.fromArray(e.v2),this}}class uM extends Co{constructor(e=new Ne,t=new Ne,n=new Ne){super(),this.isQuadraticBezierCurve=!0,this.type="QuadraticBezierCurve",this.v0=e,this.v1=t,this.v2=n}getPoint(e,t=new Ne){const n=t,i=this.v0,s=this.v1,o=this.v2;return n.set(Pp(e,i.x,s.x,o.x),Pp(e,i.y,s.y,o.y)),n}copy(e){return super.copy(e),this.v0.copy(e.v0),this.v1.copy(e.v1),this.v2.copy(e.v2),this}toJSON(){const e=super.toJSON();return e.v0=this.v0.toArray(),e.v1=this.v1.toArray(),e.v2=this.v2.toArray(),e}fromJSON(e){return super.fromJSON(e),this.v0.fromArray(e.v0),this.v1.fromArray(e.v1),this.v2.fromArray(e.v2),this}}class hM extends Co{constructor(e=new $,t=new $,n=new $){super(),this.isQuadraticBezierCurve3=!0,this.type="QuadraticBezierCurve3",this.v0=e,this.v1=t,this.v2=n}getPoint(e,t=new $){const n=t,i=this.v0,s=this.v1,o=this.v2;return n.set(Pp(e,i.x,s.x,o.x),Pp(e,i.y,s.y,o.y),Pp(e,i.z,s.z,o.z)),n}copy(e){return super.copy(e),this.v0.copy(e.v0),this.v1.copy(e.v1),this.v2.copy(e.v2),this}toJSON(){const e=super.toJSON();return e.v0=this.v0.toArray(),e.v1=this.v1.toArray(),e.v2=this.v2.toArray(),e}fromJSON(e){return super.fromJSON(e),this.v0.fromArray(e.v0),this.v1.fromArray(e.v1),this.v2.fromArray(e.v2),this}}class dM extends Co{constructor(e=[]){super(),this.isSplineCurve=!0,this.type="SplineCurve",this.points=e}getPoint(e,t=new Ne){const n=t,i=this.points,s=(i.length-1)*e,o=Math.floor(s),l=s-o,u=i[o===0?o:o-1],d=i[o],p=i[o>i.length-2?i.length-1:o+1],m=i[o>i.length-3?i.length-1:o+2];return n.set(kw(l,u.x,d.x,p.x,m.x),kw(l,u.y,d.y,p.y,m.y)),n}copy(e){super.copy(e),this.points=[];for(let t=0,n=e.points.length;t<n;t++){const i=e.points[t];this.points.push(i.clone())}return this}toJSON(){const e=super.toJSON();e.points=[];for(let t=0,n=this.points.length;t<n;t++){const i=this.points[t];e.points.push(i.toArray())}return e}fromJSON(e){super.fromJSON(e),this.points=[];for(let t=0,n=e.points.length;t<n;t++){const i=e.points[t];this.points.push(new Ne().fromArray(i))}return this}}var dy=Object.freeze({__proto__:null,ArcCurve:dC,CatmullRomCurve3:fC,CubicBezierCurve:lM,CubicBezierCurve3:pC,EllipseCurve:Yy,LineCurve:cM,LineCurve3:mC,QuadraticBezierCurve:uM,QuadraticBezierCurve3:hM,SplineCurve:dM});class gC extends Co{constructor(){super(),this.type="CurvePath",this.curves=[],this.autoClose=!1}add(e){this.curves.push(e)}closePath(){const e=this.curves[0].getPoint(0),t=this.curves[this.curves.length-1].getPoint(1);if(!e.equals(t)){const n=e.isVector2===!0?"LineCurve":"LineCurve3";this.curves.push(new dy[n](t,e))}return this}getPoint(e,t){const n=e*this.getLength(),i=this.getCurveLengths();let s=0;for(;s<i.length;){if(i[s]>=n){const o=i[s]-n,l=this.curves[s],u=l.getLength(),d=u===0?0:1-o/u;return l.getPointAt(d,t)}s++}return null}getLength(){const e=this.getCurveLengths();return e[e.length-1]}updateArcLengths(){this.needsUpdate=!0,this.cacheLengths=null,this.getCurveLengths()}getCurveLengths(){if(this.cacheLengths&&this.cacheLengths.length===this.curves.length)return this.cacheLengths;const e=[];let t=0;for(let n=0,i=this.curves.length;n<i;n++)t+=this.curves[n].getLength(),e.push(t);return this.cacheLengths=e,e}getSpacedPoints(e=40){const t=[];for(let n=0;n<=e;n++)t.push(this.getPoint(n/e));return this.autoClose&&t.push(t[0]),t}getPoints(e=12){const t=[];let n;for(let i=0,s=this.curves;i<s.length;i++){const o=s[i],l=o.isEllipseCurve?e*2:o.isLineCurve||o.isLineCurve3?1:o.isS
vendor: 6,644 bytes, line 83
83plineCurve?e*o.points.length:e,u=o.getPoints(l);for(let d=0;d<u.length;d++){const p=u[d];n&&n.equals(p)||(t.push(p),n=p)}}return this.autoClose&&t.length>1&&!t[t.length-1].equals(t[0])&&t.push(t[0]),t}copy(e){super.copy(e),this.curves=[];for(let t=0,n=e.curves.length;t<n;t++){const i=e.curves[t];this.curves.push(i.clone())}return this.autoClose=e.autoClose,this}toJSON(){const e=super.toJSON();e.autoClose=this.autoClose,e.curves=[];for(let t=0,n=this.curves.length;t<n;t++){const i=this.curves[t];e.curves.push(i.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 i=e.curves[t];this.curves.push(new dy[i.type]().fromJSON(i))}return this}}class Vp extends gC{constructor(e){super(),this.type="Path",this.currentPoint=new Ne,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){return this.currentPoint.set(e,t),this}lineTo(e,t){const n=new cM(this.currentPoint.clone(),new Ne(e,t));return this.curves.push(n),this.currentPoint.set(e,t),this}quadraticCurveTo(e,t,n,i){const s=new uM(this.currentPoint.clone(),new Ne(e,t),new Ne(n,i));return this.curves.push(s),this.currentPoint.set(n,i),this}bezierCurveTo(e,t,n,i,s,o){const l=new lM(this.currentPoint.clone(),new Ne(e,t),new Ne(n,i),new Ne(s,o));return this.curves.push(l),this.currentPoint.set(s,o),this}splineThru(e){const t=[this.currentPoint.clone()].concat(e),n=new dM(t);return this.curves.push(n),this.currentPoint.copy(e[e.length-1]),this}arc(e,t,n,i,s,o){const l=this.currentPoint.x,u=this.currentPoint.y;return this.absarc(e+l,t+u,n,i,s,o),this}absarc(e,t,n,i,s,o){return this.absellipse(e,t,n,n,i,s,o),this}ellipse(e,t,n,i,s,o,l,u){const d=this.currentPoint.x,p=this.currentPoint.y;return this.absellipse(e+d,t+p,n,i,s,o,l,u),this}absellipse(e,t,n,i,s,o,l,u){const d=new Yy(e,t,n,i,s,o,l,u);if(this.curves.length>0){const m=d.getPoint(0);m.equals(this.currentPoint)||this.lineTo(m.x,m.y)}this.curves.push(d);const p=d.getPoint(1);return this.currentPoint.copy(p),this}copy(e){return super.copy(e),this.currentPoint.copy(e.currentPoint),this}toJSON(){const e=super.toJSON();return e.currentPoint=this.currentPoint.toArray(),e}fromJSON(e){return super.fromJSON(e),this.currentPoint.fromArray(e.currentPoint),this}}class cm extends Jt{constructor(e=[new Ne(0,-.5),new Ne(.5,0),new Ne(0,.5)],t=12,n=0,i=Math.PI*2){super(),this.type="LatheGeometry",this.parameters={points:e,segments:t,phiStart:n,phiLength:i},t=Math.floor(t),i=Yt(i,0,Math.PI*2);const s=[],o=[],l=[],u=[],d=[],p=1/t,m=new $,y=new Ne,v=new $,S=new $,E=new $;let A=0,M=0;for(let T=0;T<=e.length-1;T++)switch(T){case 0:A=e[T+1].x-e[T].x,M=e[T+1].y-e[T].y,v.x=M*1,v.y=-A,v.z=M*0,E.copy(v),v.normalize(),u.push(v.x,v.y,v.z);break;case e.length-1:u.push(E.x,E.y,E.z);break;default:A=e[T+1].x-e[T].x,M=e[T+1].y-e[T].y,v.x=M*1,v.y=-A,v.z=M*0,S.copy(v),v.x+=E.x,v.y+=E.y,v.z+=E.z,v.normalize(),u.push(v.x,v.y,v.z),E.copy(S)}for(let T=0;T<=t;T++){const I=n+T*p*i,P=Math.sin(I),k=Math.cos(I);for(let O=0;O<=e.length-1;O++){m.x=e[O].x*P,m.y=e[O].y,m.z=e[O].x*k,o.push(m.x,m.y,m.z),y.x=T/t,y.y=O/(e.length-1),l.push(y.x,y.y);const N=u[3*O+0]*P,H=u[3*O+1],F=u[3*O+0]*k;d.push(N,H,F)}}for(let T=0;T<t;T++)for(let I=0;I<e.length-1;I++){const P=I+T*e.length,k=P,O=P+e.length,N=P+e.length+1,H=P+1;s.push(k,O,H),s.push(N,H,O)}this.setIndex(s),this.setAttribute("position",new Et(o,3)),this.setAttribute("uv",new Et(l,2)),this.setAttribute("normal",new Et(d,3))}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(e){return new cm(e.points,e.segments,e.phiStart,e.phiLength)}}class qy extends cm{constructor(e=1,t=1,n=4,i=8){const s=new Vp;s.absarc(0,-t/2,e,Math.PI*1.5,0),s.absarc(0,t/2,e,0,Math.PI*.5),super(s.getPoints(n),i),this.type="CapsuleGeometry",this.parameters={radius:e,length:t,capSegments:n,radialSegments:i}}static fromJSON(e){return new qy(e.radius,e.length,e.capSegments,e.radialSegments)}}class Qy extends Jt{constructor(e=1,t=32,n=0,i=Math.PI*2){super(),this.type="CircleGeometry",this.parameters={radius:e,segments:t,thetaStart:n,thetaLength:i},t=Math.max(3,t);const s=[],o=[],l=[],u=[],d=new $,p=new Ne;o.push(0,0,0),l.push(0,0,1),u.push(.5,.5);for(let m=0,y=3;m<=t;m++,y+=3){const v=n+m/t*i;d.x=e*Math.cos(v),d.y=e*Math.sin(v),o.push(d.x,d.y,d.z),l.push(0,0,1),p.x=(o[y]/e+1)/2,p.y=(o[y+1]/e+1)/2,u.push(p.x,p.y)}for(let m=1;m<=t;m++)s.push(m,m+1,0);this.setIndex(s),this.setAttribute("position",new Et(o,3)),this.setAttribute("normal",new Et(l,3)),this.setAttribute("uv",new Et(u,2))}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(e){return new Qy(e.radius,e.segments,e.thetaStart,e.thetaLength)}}class Xd extends Jt{constructor(e=1,t=1,n=1,i=32,s=1,o=!1,l=0,u=Math.PI*2){super(),this.type="CylinderGeometry",this.parameters={radiusTop:e,radiusBottom:t,height:n,radialSegments:i,heightSegments:s,openEnded:o,thetaStart:l,thetaLength:u};const d=this;i=Math.floor(i),s=Math.floor(s);const p=[],m=[],y=[],v=[];let S=0;const E=[],A=n/2;let M=0;T(),o===!1&&(e>0&&I(!0),t>0&&I(!1)),this.setIndex(p),this.setAttribute("position",new Et(m,3)),this.setAttribute("normal",new Et(y,3)),this.setAttribute("uv",new Et(v,2));function T(){const P=new $,k=new $;let O=0;const N=(t-e)/n;for(let H=0;H<=s;H++){const F=[],L=H/s,V=L*(t-e)+e;for(let te=0;te<=i;te++){const ne=te/i,ce=ne*u+l,me=Math.sin(ce),he=Math.cos(ce);k.x=V*me,k.y=-L*n+A,k.z=V*he,m.push(k.x,k.y,k.z),P.set(me,N,he).normalize(),y.push(P.x,P.y,P.z),v.push(ne,1-L),F.push(S++)}E.push(F)}for(let H=0;H<i;H++)for(let F=0;F<s;F++){const L=E[F][H],V=E[F+1][H],te=E[F+1][H+1],ne=E[F][H+1];(e>0||F!==0)&&(p.push(L,V,ne),O+=3),(t>0||F!==s-1)&&(p.push(V,te,ne),O+=3)}d.addGroup(M,O,0),M+=O}function I(P){const k=S,O=new Ne,N=new $;let H=0;const F=P===!0?e:t,L=P===!0?1:-1;for(let te=1;te<=i;te++)m.push(0,A*L,0),y.push(0,L,0),v.push(.5,.5),S++;const V=S;for(let te=0;te<=i;te++){const ce=te/i*u+l,me=Math.cos(ce),he=Math.sin(ce);N.x=F*he,N.y=A*L,N.z=F*me,m.push(N.x,N.y,N.z),y.push(0,L,0),O.x=me*.5+.5,O.y=he*.5*L+.5,v.push(O.x,O.y),S++}for(let te=0;te<i;te++){const ne=k+te,ce=V+te;P===!0?p.push(ce,ce+1,ne):p.push(ce+1,ce,ne),H+=3}d.addGroup(M,H,P===!0?1:2),M+=H}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(e){return new Xd(e.radiusTop,e.radiusBottom,e.height,e.radialSegments,e.heightSegments,e.openEnded,e.thetaStart,e.thetaLength)}}class Zy extends Xd{constructor(e=1,t=1,n=32,i=1,s=!1,o=0,l=Math.PI*2){super(0,e,t,n,i,s,o,l),this.type="C
83oneGeometry",this.parameters={radius:e,height:t,radialSegments:n,heightSegments:i,openEnded:s,thetaStart:o,thetaLength:l}}static fromJSON(e){return new Zy(e.radius,e.height,e.radialSegments,e.heightSegments,e.openEnded,e.thetaStart,e.thetaLength)}}class lc extends Jt{constructor(e=[],t=[],n=1,i=0){super(),this.type="PolyhedronGeometry",this.parameters={vertices:e,indices:t,radius:n,detail:i};const s=[],o=[];l(i),d(n),p(),this.setAttribute("position",new Et(s,3)),this.setAttribute("normal",new Et(s.slice(),3)),this.setAttribute("uv",new Et(o,2)),i===0?this.computeVertexNormals():this.normalizeNormals();function l(T){const I=new $,P=new $,k=new $;for(let O=0;O<t.length;O+=3)v(t[O+0],I),v(t[O+1],P),v(t[O+2],k),u(I,P,k,T)}function u(T,I,P,k){const O=k+1,N=[];for(let H=0;H<=O;H++){N[H]=[];const F=T.clone().lerp(P,H/O),L=I.clone().lerp(P,H/O),V=O-H;for(let te=0;te<=V;te++)te===0&&H===O?N[H][te]=F:N[H][te]=F.clone().lerp(L,te/V)}for(let H=0;H<O;H++)for(let F=0;F<2*(O-H)-1;F++){const L=Math.floor(F/2);F%2===0?(y(N[H][L+1]),y(N[H+1][L]),y(N[H][L])):(y(N[H][L+1]),y(N[H+1][L+1]),y(N[H+1][L]))}}function d(T){const I=new $;for(let P=0;P<s.length;P+=3)I.x=s[P+0],I.y=s[P+1],I.z=s[P+2],I.normalize().multiplyScalar(T),s[P+0]=I.x,s[P+1]=I.y,s[P+2]=I.z}function p(){const T=new $;for(let I=0;I<s.length;I+=3){T.x=s[I+0],T.y=s[I+1],T.z=s[I+2];const P=A(T)/2/Math.PI+.5,k=M(T)/Math.PI+.5;o.push(P,1-k)}S(),m()}function m(){for(let T=0;T<o.length;T+=6){const I=o[T+0],P=o[T+2],k=o[T+4],O=Math.max(I,P,k),N=Math.min(I,P,k);O>.9&&N<.1&&(I<.2&&(o[T+0]+=1),P<.2&&(o[T+2]+=1),k<.2&&(o[T+4]+=1))}}function y(T){s.push(T.x,T.y,T.z)}function v(T,I){const P=T*3;I.x=e[P+0],I.y=e[P+1],I.z=e[P+2]}function S(){const T=new $,I=new $,P=new $,k=new $,O=new Ne,N=new Ne,H=new Ne;for(let F=0,L=0;F<s.length;F+=9,L+=6){T.set(s[F+0],s[F+1],s[F+2]),I.set(s[F+3],s[F+4],s[F+5]),P.set(s[F+6],s[F+7],s[F+8]),O.set(o[L+0],o[L+1]),N.set(o[L+2],o[L+3]),H.set(o[L+4],o[L+5]),k.copy(T).add(I).add(P).divideScalar(3);const V=A(k);E(O,L+0,T,V),E(N,L+2,I,V),E(H,L+4,P,V)}}function E(T,I,P,k){k<0&&T.x===1&&(o[I]=T.x-1),P.x===0&&P.z===0&&(o[I]=k/2/Math.PI+.5)}function A(T){return Math.atan2(T.z,-T.x)}function M(T){return Math.atan2(-T.y,Math.sqrt(T.x*T.x+T.z*T.z))}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(e){return new lc(e.vertices,e.indices,e.radius,e.details)}}class e1 extends lc{constructor(e=1,t=0){const n=(1+Math.sqrt(5))/2,i=1/n,s=[-1,-1,-1,-1,-1,1,-1,1,-1,-1,1,1,1,-1,-1,1,-1,1,1,1,-1,1,1,1,0,-i,-n,0,-i,n,0,i,-n,0,i,n,-i,-n,0,-i,n,0,i,-n,0,i,n,0,-n,0,-i,n,0,-i,-n,0,i,n,0,i],o=[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,
vendor: 64,695 bytes, line 83
8319,5,14,19,14,4,19,4,17,1,12,14,1,14,5,1,5,9];super(s,o,e,t),this.type="DodecahedronGeometry",this.parameters={radius:e,detail:t}}static fromJSON(e){return new e1(e.radius,e.detail)}}const X0=new $,J0=new $,Ov=new $,$0=new es;class yC extends Jt{constructor(e=null,t=1){if(super(),this.type="EdgesGeometry",this.parameters={geometry:e,thresholdAngle:t},e!==null){const i=Math.pow(10,4),s=Math.cos(Su*t),o=e.getIndex(),l=e.getAttribute("position"),u=o?o.count:l.count,d=[0,0,0],p=["a","b","c"],m=new Array(3),y={},v=[];for(let S=0;S<u;S+=3){o?(d[0]=o.getX(S),d[1]=o.getX(S+1),d[2]=o.getX(S+2)):(d[0]=S,d[1]=S+1,d[2]=S+2);const{a:E,b:A,c:M}=$0;if(E.fromBufferAttribute(l,d[0]),A.fromBufferAttribute(l,d[1]),M.fromBufferAttribute(l,d[2]),$0.getNormal(Ov),m[0]=`${Math.round(E.x*i)},${Math.round(E.y*i)},${Math.round(E.z*i)}`,m[1]=`${Math.round(A.x*i)},${Math.round(A.y*i)},${Math.round(A.z*i)}`,m[2]=`${Math.round(M.x*i)},${Math.round(M.y*i)},${Math.round(M.z*i)}`,!(m[0]===m[1]||m[1]===m[2]||m[2]===m[0]))for(let T=0;T<3;T++){const I=(T+1)%3,P=m[T],k=m[I],O=$0[p[T]],N=$0[p[I]],H=`${P}_${k}`,F=`${k}_${P}`;F in y&&y[F]?(Ov.dot(y[F].normal)<=s&&(v.push(O.x,O.y,O.z),v.push(N.x,N.y,N.z)),y[F]=null):H in y||(y[H]={index0:d[T],index1:d[I],normal:Ov.clone()})}}for(const S in y)if(y[S]){const{index0:E,index1:A}=y[S];X0.fromBufferAttribute(l,E),J0.fromBufferAttribute(l,A),v.push(X0.x,X0.y,X0.z),v.push(J0.x,J0.y,J0.z)}this.setAttribute("position",new Et(v,3))}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}}class Au extends Vp{constructor(e){super(e),this.uuid=_s(),this.type="Shape",this.holes=[]}getPointsHoles(e){const t=[];for(let n=0,i=this.holes.length;n<i;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 i=e.holes[t];this.holes.push(i.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 i=this.holes[t];e.holes.push(i.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 i=e.holes[t];this.holes.push(new Vp().fromJSON(i))}return this}}const BR={triangulate:function(r,e,t=2){const n=e&&e.length,i=n?e[0]*t:r.length;let s=vC(r,0,i,t,!0);const o=[];if(!s||s.next===s.prev)return o;let l,u,d,p,m,y,v;if(n&&(s=FR(r,e,s,t)),r.length>80*t){l=d=r[0],u=p=r[1];for(let S=t;S<i;S+=t)m=r[S],y=r[S+1],m<l&&(l=m),y<u&&(u=y),m>d&&(d=m),y>p&&(p=y);v=Math.max(d-l,p-u),v=v!==0?32767/v:0}return Wp(s,o,t,l,u,v,0),o}};function vC(r,e,t,n,i){let s,o;if(i===$R(r,e,t,n)>0)for(s=e;s<t;s+=n)o=Uw(s,r[s],r[s+1],o);else for(s=t-n;s>=e;s-=n)o=Uw(s,r[s],r[s+1],o);return o&&t1(o,o.next)&&(Jp(o),o=o.next),o}function Bu(r,e){if(!r)return r;e||(e=r);let t=r,n;do if(n=!1,!t.steiner&&(t1(t,t.next)||Qn(t.prev,t,t.next)===0)){if(Jp(t),t=e=t.prev,t===t.next)break;n=!0}else t=t.next;while(n||t!==e);return e}function Wp(r,e,t,n,i,s,o){if(!r)return;!o&&s&&HR(r,n,i,s);let l=r,u,d;for(;r.prev!==r.next;){if(u=r.prev,d=r.next,s?DR(r,n,i,s):OR(r)){e.push(u.i/t|0),e.push(r.i/t|0),e.push(d.i/t|0),Jp(r),r=d.next,l=d.next;continue}if(r=d,r===l){o?o===1?(r=LR(Bu(r),e,t),Wp(r,e,t,n,i,s,2)):o===2&&NR(r,e,t,n,i,s):Wp(Bu(r),e,t,n,i,s,1);break}}}function OR(r){const e=r.prev,t=r,n=r.next;if(Qn(e,t,n)>=0)return!1;const i=e.x,s=t.x,o=n.x,l=e.y,u=t.y,d=n.y,p=i<s?i<o?i:o:s<o?s:o,m=l<u?l<d?l:d:u<d?u:d,y=i>s?i>o?i:o:s>o?s:o,v=l>u?l>d?l:d:u>d?u:d;let S=n.next;for(;S!==e;){if(S.x>=p&&S.x<=y&&S.y>=m&&S.y<=v&&wd(i,l,s,u,o,d,S.x,S.y)&&Qn(S.prev,S,S.next)>=0)return!1;S=S.next}return!0}function DR(r,e,t,n){const i=r.prev,s=r,o=r.next;if(Qn(i,s,o)>=0)return!1;const l=i.x,u=s.x,d=o.x,p=i.y,m=s.y,y=o.y,v=l<u?l<d?l:d:u<d?u:d,S=p<m?p<y?p:y:m<y?m:y,E=l>u?l>d?l:d:u>d?u:d,A=p>m?p>y?p:y:m>y?m:y,M=q_(v,S,e,t,n),T=q_(E,A,e,t,n);let I=r.prevZ,P=r.nextZ;for(;I&&I.z>=M&&P&&P.z<=T;){if(I.x>=v&&I.x<=E&&I.y>=S&&I.y<=A&&I!==i&&I!==o&&wd(l,p,u,m,d,y,I.x,I.y)&&Qn(I.prev,I,I.next)>=0||(I=I.prevZ,P.x>=v&&P.x<=E&&P.y>=S&&P.y<=A&&P!==i&&P!==o&&wd(l,p,u,m,d,y,P.x,P.y)&&Qn(P.prev,P,P.next)>=0))return!1;P=P.nextZ}for(;I&&I.z>=M;){if(I.x>=v&&I.x<=E&&I.y>=S&&I.y<=A&&I!==i&&I!==o&&wd(l,p,u,m,d,y,I.x,I.y)&&Qn(I.prev,I,I.next)>=0)return!1;I=I.prevZ}for(;P&&P.z<=T;){if(P.x>=v&&P.x<=E&&P.y>=S&&P.y<=A&&P!==i&&P!==o&&wd(l,p,u,m,d,y,P.x,P.y)&&Qn(P.prev,P,P.next)>=0)return!1;P=P.nextZ}return!0}function LR(r,e,t){let n=r;do{const i=n.prev,s=n.next.next;!t1(i,s)&&_C(i,n,n.next,s)&&Xp(i,s)&&Xp(s,i)&&(e.push(i.i/t|0),e.push(n.i/t|0),e.push(s.i/t|0),Jp(n),Jp(n.next),n=r=s),n=n.next}while(n!==r);return Bu(n)}function NR(r,e,t,n,i,s){let o=r;do{let l=o.next.next;for(;l!==o.prev;){if(o.i!==l.i&&WR(o,l)){let u=xC(o,l);o=Bu(o,o.next),u=Bu(u,u.next),Wp(o,e,t,n,i,s,0),Wp(u,e,t,n,i,s,0);return}l=l.next}o=o.next}while(o!==r)}function FR(r,e,t,n){const i=[];let s,o,l,u,d;for(s=0,o=e.length;s<o;s++)l=e[s]*n,u=s<o-1?e[s+1]*n:r.length,d=vC(r,l,u,n,!1),d===d.next&&(d.steiner=!0),i.push(VR(d));for(i.sort(kR),s=0;s<i.length;s++)t=UR(i[s],t);return t}function kR(r,e){return r.x-e.x}function UR(r,e){const t=jR(r,e);if(!t)return e;const n=xC(t,r);return Bu(n,n.next),Bu(t,t.next)}function jR(r,e){let t=e,n=-1/0,i;const s=r.x,o=r.y;do{if(o<=t.y&&o>=t.next.y&&t.next.y!==t.y){const y=t.x+(o-t.y)*(t.next.x-t.x)/(t.next.y-t.y);if(y<=s&&y>n&&(n=y,i=t.x<t.next.x?t:t.next,y===s))return i}t=t.next}while(t!==e);if(!i)return null;const l=i,u=i.x,d=i.y;let p=1/0,m;t=i;do s>=t.x&&t.x>=u&&s!==t.x&&wd(o<d?s:n,o,u,d,o<d?n:s,o,t.x,t.y)&&(m=Math.abs(o-t.y)/(s-t.x),Xp(t,r)&&(m<p||m===p&&(t.x>i.x||t.x===i.x&&zR(i,t)))&&(i=t,p=m)),t=t.next;while(t!==l);return i}function zR(r,e){return Qn(r.prev,r,e.prev)<0&&Qn(e.next,r,r.next)<0}function HR(r,e,t,n){let i=r;do i.z===0&&(i.z=q_(i.x,i.y,e,t,n)),i.prevZ=i.prev,i.nextZ=i.next,i=i.next;while(i!==r);i.prevZ.nextZ=null,i.prevZ=null,GR(i)}function GR(r){let e,t,n,i,s,o,l,u,d=1;do{for(t=r,r=null,s=null,o=0;t;){for(o++,n=t,l=0,e=0;e<d&&(l++,n=n.nextZ,!!n);e++);for(u=d;l>0||u>0&&n;)l!==0&&(u===0||!n||t.z<=n.z)?(i=t,t=t.nextZ,l--):(i=n,n=n.nextZ,u--),s?s.nextZ=i:r=i,i.prevZ=s,s=i;t=n}s.nextZ=null,d*=2}while(o>1);return r}function q_(r,e,t,n,i){return r=(r-t)*i|0,e=(e-n)*i|0,r=(r|r<<8)&16711935,r=(r|r<<4)&252645135,r=(r|r<<2)&858993459,r=(r|r<<1)&1431655765,e=(e|e<<8)&16711935,e=(e|e<<4)&252645135,e=(e|e<<2)&858993459,e=(e|e<<1)&1431655765,r|e<<1}function VR(r){let e=r,t=r;do(e.x<t.x||e.x===t.x&&e.y<t.y)&&(t=e),e=e.next;while(e!==r);return t}function wd(r,e,t,n,i,s,o,l){return(i-o)*(e-l)>=(r-o)*(s-l)&&(r-o)*(n-l)>=(t-o)*(e-l)&&(t-o)*(s-l)>=(i-o)*(n-l)}function WR(r,e){return r.next.i!==e.i&&r.prev.i!==e.i&&!XR(r,e)&&(Xp(r,e)&&Xp(e,r)&&JR(r,e)&&(Qn(r.prev,r,e.prev)||Qn(r,e.prev,e))||t1(r,e)&&Qn(r.prev,r,r.next)>0&&Qn(e.prev,e,e.next)>0)}function Qn(r,e,t){return(e.y-r.y)*(t.x-e.x)-(e.x-r.x)*(t.y-e.y)}function t1(r,e){return r.x===e.x&&r.y===e.y}function _C(r,e,t,n){const i=Y0(Qn(r,e,t)),s=Y0(Qn(r,e,n)),o=Y0(Qn(t,n,r)),l=Y0(Qn(t,n,e));return!!(i!==s&&o!==l||i===0&&K0(r,t,e)||s===0&&K0(r,n,e)||o===0&&K0(t,r,n)||l===0&&K0(t,e,n))}function K0(r,e,t){return e.x<=Math.max(r.x,t.x)&&e.x>=Math.min(r.x,t.x)&&e.y<=Math.max(r.y,t.y)&&e.y>=Math.min(r.y,t.y)}function Y0(r){return r>0?1:r<0?-1:0}function XR(r,e){let t=r;do{if(t.i!==r.i&&t.next.i!==r.i&&t.i!==e.i&&t.next.i!==e.i&&_C(t,t.next,r,e))return!0;t=t.next}while(t!==r);return!1}function Xp(r,e){return Qn(r.prev,r,r.next)<0?Qn(r,e,r.next)>=0&&Qn(r,r.prev,e)>=0:Qn(r,e,r.prev)<0||Qn(r,r.next,e)<0}function JR(r,e){let t=r,n=!1;const i=(r.x+e.x)/2,s=(r.y+e.y)/2;do t.y>s!=t.next.y>s&&t.next.y!==t.y&&i<(t.next.x-t.x)*(s-t.y)/(t.next.y-t.y)+t.x&&(n=!n),t=t.next;while(t!==r);return n}function xC(r,e){const t=new Q_(r.i,r.x,r.y),n=new Q_(e.i,e.x,e.y),i=r.next,s=e.prev;return r.next=e,e.prev=r,t.next=i,i.prev=t,n.next=t,t.prev=n,s.next=n,n.prev=s,n}function Uw(r,e,t,n){const i=new Q_(r,e,t);return n?(i.next=n.next,i.prev=n,n.next.prev=i,n.next=i):(i.prev=i,i.next=i),i}function Jp(r){r.next.prev=r.prev,r.prev.next=r.next,r.prevZ&&(r.prevZ.nextZ=r.nextZ),r.nextZ&&(r.nextZ.prevZ=r.prevZ)}function Q_(r,e,t){this.i=r,this.x=e,this.y=t,this.prev=null,this.next=null,this.z=0,this.prevZ=null,this.nextZ=null,this.steiner=!1}function $R(r,e,t,n){let i=0;for(let s=e,o=t-n;s<t;s+=n)i+=(r[o]-r[s])*(r[s+1]+r[o+1]),o=s;return i}class Ko{static area(e){const t=e.length;let n=0;for(let i=t-1,s=0;s<t;i=s++)n+=e[i].x*e[s].y-e[s].x*e[i].y;return n*.5}static isClockWise(e){return Ko.area(e)<0}static triangulateShape(e,t){const n=[],i=[],s=[];jw(e),zw(n,e);let o=e.length;t.forEach(jw);for(let u=0;u<t.length;u++)i.push(o),o+=t[u].length,zw(n,t[u]);const l=BR.triangulate(n,i);for(let u=0;u<l.length;u+=3)s.push(l.slice(u,u+3));return s}}function jw(r){const e=r.length;e>2&&r[e-1].equals(r[0])&&r.pop()}function zw(r,e){for(let t=0;t<e.length;t++)r.push(e[t].x),r.push(e[t].y)}class n1 extends Jt{constructor(e=new Au([new Ne(.5,.5),new Ne(-.5,.5),new Ne(-.5,-.5),new Ne(.5,-.5)]),t={}){super(),this.type="ExtrudeGeometry",this.parameters={shapes:e,options:t},e=Array.isArray(e)?e:[e];const n=this,i=[],s=[];for(let l=0,u=e.length;l<u;l++){const d=e[l];o(d)}this.setAttribute("position",new Et(i,3)),this.setAttribute("uv",new Et(s,2)),this.computeVertexNormals();function o(l){const u=[],d=t.curveSegments!==void 0?t.curveSegments:12,p=t.steps!==void 0?t.steps:1,m=t.depth!==void 0?t.depth:1;let y=t.bevelEnabled!==void 0?t.bevelEnabled:!0,v=t.bevelThickness!==void 0?t.bevelThickness:.2,S=t.bevelSize!==void 0?t.bevelSize:v-.1,E=t.bevelOffset!==void 0?t.bevelOffset:0,A=t.bevelSegments!==void 0?t.bevelSegments:3;const M=t.extrudePath,T=t.UVGenerator!==void 0?t.UVGenerator:KR;let I,P=!1,k,O,N,H;M&&(I=M.getSpacedPoints(p),P=!0,y=!1,k=M.computeFrenetFrames(p,!1),O=new $,N=new $,H=new $),y||(A=0,v=0,S=0,E=0);const F=l.extractPoints(d);let L=F.shape;const V=F.holes;if(!Ko.isClockWise(L)){L=L.reverse();for(let Be=0,Oe=V.length;Be<Oe;Be++){const K=V[Be];Ko.isClockWise(K)&&(V[Be]=K.reverse())}}const ne=Ko.triangulateShape(L,V),ce=L;for(let Be=0,Oe=V.length;Be<Oe;Be++){const K=V[Be];L=L.concat(K)}function me(Be,Oe,K){return Oe||console.error("THREE.ExtrudeGeometry: vec does not exist"),Be.clone().addScaledVector(Oe,K)}const he=L.length,ge=ne.length;function U(Be,Oe,K){let pt,Fe,st;const Ve=Be.x-Oe.x,St=Be.y-Oe.y,$e=K.x-Be.x,J=K.y-Be.y,G=Ve*Ve+St*St,ee=Ve*J-St*$e;if(Math.abs(ee)>Number.EPSILON){const ye=Math.sqrt(G),Pe=Math.sqrt($e*$e+J*J),be=Oe.x-St/ye,et=Oe.y+Ve/ye,Je=K.x-J/Pe,Qe=K.y+$e/Pe,Ht=((Je-be)*J-(Qe-et)*$e)/(Ve*J-St*$e);pt=be+Ve*Ht-Be.x,Fe=et+St*Ht-Be.y;const Ue=pt*pt+Fe*Fe;if(Ue<=2)return new Ne(pt,Fe);st=Math.sqrt(Ue/2)}else{let ye=!1;Ve>Number.EPSILON?$e>Number.EPSILON&&(ye=!0):Ve<-Number.EPSILON?$e<-Number.EPSILON&&(ye=!0):Math.sign(St)===Math.sign(J)&&(ye=!0),ye?(pt=-St,Fe=Ve,st=Math.sqrt(G)):(pt=Ve,Fe=St,st=Math.sqrt(G/2))}return new Ne(pt/st,Fe/st)}const Z=[];for(let Be=0,Oe=ce.length,K=Oe-1,pt=Be+1;Be<Oe;Be++,K++,pt++)K===Oe&&(K=0),pt===Oe&&(pt=0),Z[Be]=U(ce[Be],ce[K],ce[pt]);const q=[];let X,se=Z.concat();for(let Be=0,Oe=V.length;Be<Oe;Be++){const K=V[Be];X=[];for(let pt=0,Fe=K.length,st=Fe-1,Ve=pt+1;pt<Fe;pt++,st++,Ve++)st===Fe&&(st=0),Ve===Fe&&(Ve=0),X[pt]=U(K[pt],K[st],K[Ve]);q.push(X),se=se.concat(X)}for(let Be=0;Be<A;Be++){const Oe=Be/A,K=v*Math.cos(Oe*Math.PI/2),pt=S*Math.sin(Oe*Math.PI/2)+E;for(let Fe=0,st=ce.length;Fe<st;Fe++){const Ve=me(ce[Fe],Z[Fe],pt);Ie(Ve.x,Ve.y,-K)}for(let Fe=0,st=V.length;Fe<st;Fe++){const Ve=V[Fe];X=q[Fe];for(let St=0,$e=Ve.length;St<$e;St++){const J=me(Ve[St],X[St],pt);Ie(J.x,J.y,-K)}}}const Le=S+E;for(let Be=0;Be<he;Be++){const Oe=y?me(L[Be],se[Be],Le):L[Be];P?(N.copy(k.normals[0]).multiplyScalar(Oe.x),O.copy(k.binormals[0]).multiplyScalar(Oe.y),H.copy(I[0]).add(N).add(O),Ie(H.x,H.y,H.z)):Ie(Oe.x,Oe.y,0)}for(let Be=1;Be<=p;Be++)for(let Oe=0;Oe<he;Oe++){const K=y?me(L[Oe],se[Oe],Le):L[Oe];P?(N.copy(k.normals[Be]).multiplyScalar(K.x),O.copy(k.binormals[Be]).multiplyScalar(K.y),H.copy(I[Be]).add(N).add(O),Ie(H.x,H.y,H.z)):Ie(K.x,K.y,m/p*Be)}for(let Be=A-1;Be>=0;Be--){const Oe=Be/A,K=v*Math.cos(Oe*Math.PI/2),pt=S*Math.sin(Oe*Math.PI/2)+E;for(let Fe=0,st=ce.length;Fe<st;Fe++){const Ve=me(ce[Fe],Z[Fe],pt);Ie(Ve.x,Ve.y,m+K)}for(let Fe=0,st=V.length;Fe<st;Fe++){const Ve=V[Fe];X=q[Fe];for(let St=0,$e=Ve.length;St<$e;St++){const J=me(Ve[St],X[St],pt);P?Ie(J.x,J.y+I[p-1].y,I[p-1].x+K):Ie(J.x,J.y,m+K)}}}pe(),Ae();function pe(){const Be=i.length/3;if(y){let Oe=0,K=he*Oe;for(let pt=0;pt<ge;pt++){const Fe=ne[pt];Ge(Fe[2]+K,Fe[1]+K,Fe[0]+K)}Oe=p+A*2,K=he*Oe;for(let pt=0;pt<ge;pt++){const Fe=ne[pt];Ge(Fe[0]+K,Fe[1]+K,Fe[2]+K)}}else{for(let Oe=0;Oe<ge;Oe++){const K=ne[Oe];Ge(K[2],K[1],K[0])}for(let Oe=0;Oe<ge;Oe++){const K=ne[Oe];Ge(K[0]+he*p,K[1]+he*p,K[2]+he*p)}}n.addGroup(Be,i.length/3-Be,0)}function Ae(){const Be=i.length/3;let Oe=0;Re(ce,Oe),Oe+=ce.length;for(let K=0,pt=V.length;K<pt;K++){const Fe=V[K];Re(Fe,Oe),Oe+=Fe.length}n.addGroup(Be,i.length/3-Be,1)}function Re(Be,Oe){let K=Be.length;for(;--K>=0;){const pt=K;let Fe=K-1;Fe<0&&(Fe=Be.length-1);for(let st=0,Ve=p+A*2;st<Ve;st++){const St=he*st,$e=he*(st+1),J=Oe+pt+St,G=Oe+Fe+St,ee=Oe+Fe+$e,ye=Oe+pt+$e;qe(J,G,ee,ye)}}}function Ie(Be,Oe,K){u.push(Be),u.push(Oe),u.push(K)}function Ge(Be,Oe,K){lt(Be),lt(Oe),lt(K);const pt=i.length/3,Fe=T.generateTopUV(n,i,pt-3,pt-2,pt-1);Pt(Fe[0]),Pt(Fe[1]),Pt(Fe[2])}function qe(Be,Oe,K,pt){lt(Be),lt(Oe),lt(pt),lt(Oe),lt(K),lt(pt);const Fe=i.length/3,st=T.generateSideWallUV(n,i,Fe-6,Fe-3,Fe-2,Fe-1);Pt(st[0]),Pt(st[1]),Pt(st[3]),Pt(st[1]),Pt(st[2]),Pt(st[3])}function lt(Be){i.push(u[Be*3+0]),i.push(u[Be*3+1]),i.push(u[Be*3+2])}function Pt(Be){s.push(Be.x),s.push(Be.y)}}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}toJSON(){const e=super.toJSON(),t=this.parameters.shapes,n=this.parameters.options;return YR(t,n,e)}static fromJSON(e,t){const n=[];for(let s=0,o=e.shapes.length;s<o;s++){const l=t[e.shapes[s]];n.push(l)}const i=e.options.extrudePath;return i!==void 0&&(e.options.extrudePath=new dy[i.type]().fromJSON(i)),new n1(n,e.options)}}const KR={generateTopUV:function(r,e,t,n,i){const s=e[t*3],o=e[t*3+1],l=e[n*3],u=e[n*3+1],d=e[i*3],p=e[i*3+1];return[new Ne(s,o),new Ne(l,u),new Ne(d,p)]},generateSideWallUV:function(r,e,t,n,i,s){const o=e[t*3],l=e[t*3+1],u=e[t*3+2],d=e[n*3],p=e[n*3+1],m=e[n*3+2],y=e[i*3],v=e[i*3+1],S=e[i*3+2],E=e[s*3],A=e[s*3+1],M=e[s*3+2];return Math.abs(l-p)<Math.abs(o-d)?[new Ne(o,1-u),new Ne(d,1-m),new Ne(y,1-S),new Ne(E,1-M)]:[new Ne(l,1-u),new Ne(p,1-m),new Ne(v,1-S),new Ne(A,1-M)]}};function YR(r,e,t){if(t.shapes=[],Array.isArray(r))for(let n=0,i=r.length;n<i;n++){const s=r[n];t.shapes.push(s.uuid)}else t.shapes.push(r.uuid);return t.options=Object.assign({},e),e.extrudePath!==void 0&&(t.options.extrudePath=e.extrudePath.toJSON()),t}class r1 extends lc{constructor(e=1,t=0){const n=(1+Math.sqrt(5))/2,i=[-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],s=[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(i,s,e,t),this.type="IcosahedronGeometry",this.parameters={radius:e,detail:t}}static fromJSON(e){return new r1(e.radius,e.detail)}}class um extends lc{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],i=[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,i,e,t),this.type="OctahedronGeometry",this.parameters={radius:e,detail:t}}static fromJSON(e){return new um(e.radius,e.detail)}}class Jd extends Jt{constructor(e=1,t=1,n=1,i=1){super(),this.type="PlaneGeometry",this.parameters={width:e,height:t,widthSegments:n,heightSegments:i};const s=e/2,o=t/2,l=Math.floor(n),u=Math.floor(i),d=l+1,p=u+1,m=e/l,y=t/u,v=[],S=[],E=[],A=[];for(let M=0;M<p;M++){const T=M*y-o;for(let I=0;I<d;I++){const P=I*m-s;S.push(P,-T,0),E.push(0,0,1),A.push(I/l),A.push(1-M/u)}}for(let M=0;M<u;M++)for(let T=0;T<l;T++){const I=T+d*M,P=T+d*(M+1),k=T+1+d*(M+1),O=T+1+d*M;v.push(I,P,O),v.push(P,k,O)}this.setIndex(v),this.setAttribute("position",new Et(S,3)),this.setAttribute("normal",new Et(E,3)),this.setAttribute("uv",new Et(A,2))}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(e){return new Jd(e.width,e.height,e.widthSegments,e.heightSegments)}}class i1 extends Jt{constructor(e=.5,t=1,n=32,i=1,s=0,o=Math.PI*2){super(),this.type="RingGeometry",this.parameters={innerRadius:e,outerRadius:t,thetaSegments:n,phiSegments:i,thetaStart:s,thetaLength:o},n=Math.max(3,n),i=Math.max(1,i);const l=[],u=[],d=[],p=[];let m=e;const y=(t-e)/i,v=new $,S=new Ne;for(let E=0;E<=i;E++){for(let A=0;A<=n;A++){const M=s+A/n*o;v.x=m*Math.cos(M),v.y=m*Math.sin(M),u.push(v.x,v.y,v.z),d.push(0,0,1),S.x=(v.x/t+1)/2,S.y=(v.y/t+1)/2,p.push(S.x,S.y)}m+=y}for(let E=0;E<i;E++){const A=E*(n+1);for(let M=0;M<n;M++){const T=M+A,I=T,P=T+n+1,k=T+n+2,O=T+1;l.push(I,P,O),l.push(P,k,O)}}this.setIndex(l),this.setAttribute("position",new Et(u,3)),this.setAttribute("normal",new Et(d,3)),this.setAttribute("uv",new Et(p,2))}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(e){return new i1(e.innerRadius,e.outerRadius,e.thetaSegments,e.phiSegments,e.thetaStart,e.thetaLength)}}class s1 extends Jt{constructor(e=new Au([new Ne(0,.5),new Ne(-.5,-.5),new Ne(.5,-.5)]),t=12){super(),this.type="ShapeGeometry",this.parameters={shapes:e,curveSegments:t};const n=[],i=[],s=[],o=[];let l=0,u=0;if(Array.isArray(e)===!1)d(e);else for(let p=0;p<e.length;p++)d(e[p]),this.addGroup(l,u,p),l+=u,u=0;this.setIndex(n),this.setAttribute("position",new Et(i,3)),this.setAttribute("normal",new Et(s,3)),this.setAttribute("uv",new Et(o,2));function d(p){const m=i.length/3,y=p.extractPoints(t);let v=y.shape;const S=y.holes;Ko.isClockWise(v)===!1&&(v=v.reverse());for(let A=0,M=S.length;A<M;A++){const T=S[A];Ko.isClockWise(T)===!0&&(S[A]=T.reverse())}const E=Ko.triangulateShape(v,S);for(let A=0,M=S.length;A<M;A++){const T=S[A];v=v.concat(T)}for(let A=0,M=v.length;A<M;A++){const T=v[A];i.push(T.x,T.y,0),s.push(0,0,1),o.push(T.x,T.y)}for(let A=0,M=E.length;A<M;A++){const T=E[A],I=T[0]+m,P=T[1]+m,k=T[2]+m;n.push(I,P,k),u+=3}}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}toJSON(){const e=super.toJSON(),t=this.parameters.shapes;return qR(t,e)}static fromJSON(e,t){const n=[];for(let i=0,s=e.shapes.length;i<s;i++){const o=t[e.shapes[i]];n.push(o)}return new s1(n,e.curveSegments)}}function qR(r,e){if(e.shapes=[],Array.isArray(r))for(let t=0,n=r.length;t<n;t++){const i=r[t];e.shapes.push(i.uuid)}else e.shapes.push(r.uuid);return e}class hm extends Jt{constructor(e=1,t=32,n=16,i=0,s=Math.PI*2,o=0,l=Math.PI){super(),this.type="SphereGeometry",this.parameters={radius:e,widthSegments:t,heightSegments:n,phiStart:i,phiLength:s,thetaStart:o,thetaLength:l},t=Math.max(3,Math.floor(t)),n=Math.max(2,Math.floor(n));const u=Math.min(o+l,Math.PI);let d=0;const p=[],m=new $,y=new $,v=[],S=[],E=[],A=[];for(let M=0;M<=n;M++){const T=[],I=M/n;let P=0;M===0&&o===0?P=.5/t:M===n&&u===Math.PI&&(P=-.5/t);for(let k=0;k<=t;k++){const O=k/t;m.x=-e*Math.cos(i+O*s)*Math.sin(o+I*l),m.y=e*Math.cos(o+I*l),m.z=e*Math.sin(i+O*s)*Math.sin(o+I*l),S.push(m.x,m.y,m.z),y.copy(m).normalize(),E.push(y.x,y.y,y.z),A.push(O+P,1-I),T.push(d++)}p.push(T)}for(let M=0;M<n;M++)for(let T=0;T<t;T++){const I=p[M][T+1],P=p[M][T],k=p[M+1][T],O=p[M+1][T+1];(M!==0||o>0)&&v.push(I,P,O),(M!==n-1||u<Math.PI)&&v.push(P,k,O)}this.setIndex(v),this.setAttribute("position",new Et(S,3)),this.setAttribute("normal",new Et(E,3)),this.setAttribute("uv",new Et(A,2))}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(e){return new hm(e.radius,e.widthSegments,e.heightSegments,e.phiStart,e.phiLength,e.thetaStart,e.thetaLength)}}class o1 extends lc{constructor(e=1,t=0){const n=[1,1,1,-1,-1,1,-1,1,-1,1,-1,-1],i=[2,1,0,0,3,2,1,3,0,2,3,1];super(n,i,e,t),this.type="TetrahedronGeometry",this.parameters={radius:e,detail:t}}static fromJSON(e){return new o1(e.radius,e.detail)}}class a1 extends Jt{constructor(e=1,t=.4,n=12,i=48,s=Math.PI*2){super(),this.type="TorusGeometry",this.parameters={radius:e,tube:t,radialSegments:n,tubularSegments:i,arc:s},n=Math.floor(n),i=Math.floor(i);const o=[],l=[],u=[],d=[],p=new $,m=new $,y=new $;for(let v=0;v<=n;v++)for(let S=0;S<=i;S++){const E=S/i*s,A=v/n*Math.PI*2;m.x=(e+t*Math.cos(A))*Math.cos(E),m.y=(e+t*Math.cos(A))*Math.sin(E),m.z=t*Math.sin(A),l.push(m.x,m.y,m.z),p.x=e*Math.cos(E),p.y=e*Math.sin(E),y.subVectors(m,p).normalize(),u.push(y.x,y.y,y.z),d.push(S/i),d.push(v/n)}for(let v=1;v<=n;v++)for(let S=1;S<=i;S++){const E=(i+1)*v+S-1,A=(i+1)*(v-1)+S-1,M=(i+1)*(v-1)+S,T=(i+1)*v+S;o.push(E,A,T),o.push(A,M,T)}this.setIndex(o),this.setAttribute("position",new Et(l,3)),this.setAttribute("normal",new Et(u,3)),this.setAttribute("uv",new Et(d,2))}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(e){return new a1(e.radius,e.tube,e.radialSegments,e.tubularSegments,e.arc)}}class l1 extends Jt{constructor(e=1,t=.4,n=64,i=8,s=2,o=3){super(),this.type="TorusKnotGeometry",this.parameters={radius:e,tube:t,tubularSegments:n,radialSegments:i,p:s,q:o},n=Math.floor(n),i=Math.floor(i);const l=[],u=[],d=[],p=[],m=new $,y=new $,v=new $,S=new $,E=new $,A=new $,M=new $;for(let I=0;I<=n;++I){const P=I/n*s*Math.PI*2;T(P,s,o,e,v),T(P+.01,s,o,e,S),A.subVectors(S,v),M.addVectors(S,v),E.crossVectors(A,M),M.crossVectors(E,A),E.normalize(),M.normalize();for(let k=0;k<=i;++k){const O=k/i*Math.PI*2,N=-t*Math.cos(O),H=t*Math.sin(O);m.x=v.x+(N*M.x+H*E.x),m.y=v.y+(N*M.y+H*E.y),m.z=v.z+(N*M.z+H*E.z),u.push(m.x,m.y,m.z),y.subVectors(m,v).normalize(),d.push(y.x,y.y,y.z),p.push(I/n),p.push(k/i)}}for(let I=1;I<=n;I++)for(let P=1;P<=i;P++){const k=(i+1)*(I-1)+(P-1),O=(i+1)*I+(P-1),N=(i+1)*I+P,H=(i+1)*(I-1)+P;l.push(k,O,H),l.push(O,N,H)}this.setIndex(l),this.setAttribute("position",new Et(u,3)),this.setAttribute("normal",new Et(d,3)),this.setAttribute("uv",new Et(p,2));function T(I,P,k,O,N){const H=Math.cos(I),F=Math.sin(I),L=k/P*I,V=Math.cos(L);N.x=O*(2+V)*.5*H,N.y=O*(2+V)*F*.5,N.z=O*Math.sin(L)*.5}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(e){return new l1(e.radius,e.tube,e.tubularSegments,e.radialSegments,e.p,e.q)}}class c1 extends Jt{constructor(e=new hM(new $(-1,-1,0),new $(-1,1,0),new $(1,1,0)),t=64,n=1,i=8,s=!1){super(),this.type="TubeGeometry",this.parameters={path:e,tubularSegments:t,radius:n,radialSegments:i,closed:s};const o=e.computeFrenetFrames(t,s);this.tangents=o.tangents,this.normals=o.normals,this.binormals=o.binormals;const l=new $,u=new $,d=new Ne;let p=new $;const m=[],y=[],v=[],S=[];E(),this.setIndex(S),this.setAttribute("position",new Et(m,3)),this.setAttribute("normal",new Et(y,3)),this.setAttribute("uv",new Et(v,2));function E(){for(let I=0;I<t;I++)A(I);A(s===!1?t:0),T(),M()}function A(I){p=e.getPointAt(I/t,p);const P=o.normals[I],k=o.binormals[I];for(let O=0;O<=i;O++){const N=O/i*Math.PI*2,H=Math.sin(N),F=-Math.cos(N);u.x=F*P.x+H*k.x,u.y=F*P.y+H*k.y,u.z=F*P.z+H*k.z,u.normalize(),y.push(u.x,u.y,u.z),l.x=p.x+n*u.x,l.y=p.y+n*u.y,l.z=p.z+n*u.z,m.push(l.x,l.y,l.z)}}function M(){for(let I=1;I<=t;I++)for(let P=1;P<=i;P++){const k=(i+1)*(I-1)+(P-1),O=(i+1)*I+(P-1),N=(i+1)*I+P,H=(i+1)*(I-1)+P;S.push(k,O,H),S.push(O,N,H)}}function T(){for(let I=0;I<=t;I++)for(let P=0;P<=i;P++)d.x=I/t,d.y=P/i,v.push(d.x,d.y)}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}toJSON(){const e=super.toJSON();return e.path=this.parameters.path.toJSON(),e}static fromJSON(e){return new c1(new dy[e.path.type]().fromJSON(e.path),e.tubularSegments,e.radius,e.radialSegments,e.closed)}}class MC extends Jt{constructor(e=null){if(super(),this.type="WireframeGeometry",this.parameters={geometry:e},e!==null){const t=[],n=new Set,i=new $,s=new $;if(e.index!==null){const o=e.attributes.position,l=e.index;let u=e.groups;u.length===0&&(u=[{start:0,count:l.count,materialIndex:0}]);for(let d=0,p=u.length;d<p;++d){const m=u[d],y=m.start,v=m.count;for(let S=y,E=y+v;S<E;S+=3)for(let A=0;A<3;A++){const M=l.getX(S+A),T=l.getX(S+(A+1)%3);i.fromBufferAttribute(o,M),s.fromBufferAttribute(o,T),Hw(i,s,n)===!0&&(t.push(i.x,i.y,i.z),t.push(s.x,s.y,s.z))}}}else{const o=e.attributes.position;for(let l=0,u=o.count/3;l<u;l++)for(let d=0;d<3;d++){const p=3*l+d,m=3*l+(d+1)%3;i.fromBufferAttribute(o,p),s.fromBufferAttribute(o,m),Hw(i,s,n)===!0&&(t.push(i.x,i.y,i.z),t.push(s.x,s.y,s.z))}}this.setAttribute("position",new Et(t,3))}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}}function Hw(r,e,t){const n=`${r.x},${r.y},${r.z}-${e.x},${e.y},${e.z}`,i=`${e.x},${e.y},${e.z}-${r.x},${r.y},${r.z}`;return t.has(n)===!0||t.has(i)===!0?!1:(t.add(n),t.add(i),!0)}var Gw=Object.freeze({__proto__:null,BoxGeometry:zu,CapsuleGeometry:qy,CircleGeometry:Qy,ConeGeometry:Zy,CylinderGeometry:Xd,DodecahedronGeometry:e1,EdgesGeometry:yC,ExtrudeGeometry:n1,IcosahedronGeometry:r1,LatheGeometry:cm,OctahedronGeometry:um,PlaneGeometry:Jd,PolyhedronGeometry:lc,RingGeometry:i1,ShapeGeometry:s1,SphereGeometry:hm,TetrahedronGeometry:o1,TorusGeometry:a1,TorusKnotGeometry:l1,TubeGeometry:c1,WireframeGeometry:MC});class SC extends xr{constructor(e){super(),this.isShadowMaterial=!0,this.type="ShadowMaterial",this.color=new tt(0),this.transparent=!0,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.fog=e.fog,this}}class wC extends So{constructor(e){super(e),this.isRawShaderMaterial=!0,this.type="RawShaderMaterial"}}class dm extends xr{constructor(e){super(),this.isMeshStandardMaterial=!0,this.type="MeshStandardMaterial",this.defines={STANDARD:""},this.color=new tt(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 tt(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=ac,this.normalScale=new Ne(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.roughnessMap=null,this.metalnessMap=null,this.alphaMap=null,this.envMap=null,this.envMapRotation=new Ms,this.envMapIntensity=1,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.flatShading=!1,this.fog=!0,this.setValues(e)}copy(e){return 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.envMapRotation.copy(e.envMapRotation),this.envMapIntensity=e.envMapIntensity,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.wireframeLinecap=e.wireframeLinecap,this.wireframeLinejoin=e.wireframeLinejoin,this.flatShading=e.flatShading,this.fog=e.fog,this}}class Gs extends dm{constructor(e){super(),this.isMeshPhysicalMaterial=!0,this.defines={STANDARD:"",PHYSICAL:""},this.type="MeshPhysicalMaterial",this.anisotropyRotation=0,this.anisotropyMap=null,this.clearcoatMap=null,this.clearcoatRoughness=0,this.clearcoatRoughnessMap=null,this.clearcoatNormalScale=new Ne(1,1),this.clearcoatNormalMap=null,this.ior=1.5,Object.defineProperty(this,"reflectivity",{get:function(){return Yt(2.5*(this.ior-1)/(this.ior+1),0,1)},set:function(t){this.ior=(1+.4*t)/(1-.4*t)}}),this.iridescenceMap=null,this.iridescenceIOR=1.3,this.iridescenceThicknessRange=[100,400],this.iridescenceThicknessMap=null,this.sheenColor=new tt(0),this.sheenColorMap=null,this.sheenRoughness=1,this.sheenRoughnessMap=null,this.transmissionMap=null,this.thickness=0,this.thicknessMap=null,this.attenuationDistance=1/0,this.attenuationColor=new tt(1,1,1),this.specularIntensity=1,this.specularIntensityMap=null,this.specularColor=new tt(1,1,1),this.specularColorMap=null,this._anisotropy=0,this._clearcoat=0,this._dispersion=0,this._iridescence=0,this._sheen=0,this._transmission=0,this.setValues(e)}get anisotropy(){return this._anisotropy}set anisotropy(e){this._anisotropy>0!=e>0&&this.version++,this._anisotropy=e}get clearcoat(){return this._clearcoat}set clearcoat(e){this._clearcoat>0!=e>0&&this.version++,this._clearcoat=e}get iridescence(){return this._iridescence}set iridescence(e){this._iridescence>0!=e>0&&this.version++,this._iridescence=e}get dispersion(){return this._dispersion}set dispersion(e){this._dispersion>0!=e>0&&this.version++,this._dispersion=e}get sheen(){return this._sheen}set sheen(e){this._sheen>0!=e>0&&this.version++,this._sheen=e}get transmission(){return this._transmission}set transmission(e){this._transmission>0!=e>0&&this.version++,this._transmission=e}copy(e){return super.copy(e),this.defines={STANDARD:"",PHYSICAL:""},this.anisotropy=e.anisotropy,this.anisotropyRotation=e.anisotropyRotation,this.anisotropyMap=e.anisotropyMap,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.dispersion=e.dispersion,this.ior=e.ior,this.iridescence=e.iridescence,this.iridescenceMap=e.iridescenceMap,this.iridescenceIOR=e.iridescenceIOR,this.iridescenceThicknessRange=[...e.iridescenceThicknessRange],this.iridescenceThicknessMap=e.iridescenceThicknessMap,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,this}}class AC extends xr{constructor(e){super(),this.isMeshPhongMaterial=!0,this.type="MeshPhongMaterial",this.color=new tt(16777215),this.specular=new tt(1118481),this.shininess=30,this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new tt(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=ac,this.normalScale=new Ne(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.envMapRotation=new Ms,this.combine=tm,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.flatShading=!1,this.fog=!0,this.setValues(e)}copy(e){return 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.envMapRotation.copy(e.envMapRotation),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,this.fog=e.fog,this}}class EC extends xr{constructor(e){super(),this.isMeshToonMaterial=!0,this.defines={TOON:""},this.type="MeshToonMaterial",this.color=new tt(16777215),this.map=null,this.gradientMap=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new tt(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=ac,this.normalScale=new Ne(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.alphaMap=null,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.fog=!0,this.setValues(e)}copy(e){return 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,this.fog=e.fog,this}}class bC extends xr{constructor(e){super(),this.isMeshNormalMaterial=!0,this.type="MeshNormalMaterial",this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=ac,this.normalScale=new Ne(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.wireframe=!1,this.wireframeLinewidth=1,this.flatShading=!1,this.setValues(e)}copy(e){return 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,this}}class CC extends xr{constructor(e){super(),this.isMeshLambertMaterial=!0,this.type="MeshLambertMaterial",this.color=new tt(16777215),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new tt(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=ac,this.normalScale=new Ne(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.envMapRotation=new Ms,this.combine=tm,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.flatShading=!1,this.fog=!0,this.setValues(e)}copy(e){return 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.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.envMapRotation.copy(e.envMapRotation),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,this.fog=e.fog,this}}class fM extends xr{constructor(e){super(),this.isMeshDepthMaterial=!0,this.type="MeshDepthMaterial",this.depthPacking=Hb,this.map=null,this.alphaMap=null,this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.wireframe=!1,this.wireframeLinewidth=1,this.setValues(e)}copy(e){return 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,this}}class pM extends xr{constructor(e){super(),this.isMeshDistanceMaterial=!0,this.type="MeshDistanceMaterial",this.map=null,this.alphaMap=null,this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.setValues(e)}copy(e){return super.copy(e),this.map=e.map,this.alphaMap=e.alphaMap,this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this}}class TC extends xr{constructor(e){super(),this.isMeshMatcapMaterial=!0,this.defines={MATCAP:""},this.type="MeshMatcapMaterial",this.color=new tt(16777215),this.matcap=null,this.map=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=ac,this.normalScale=new Ne(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.alphaMap=null,this.flatShading=!1,this.fog=!0,this.setValues(e)}copy(e){return 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,this.fog=e.fog,this}}class IC extends mi{constructor(e){super(),this.isLineDashedMaterial=!0,this.type="LineDashedMaterial",this.scale=1,this.dashSize=3,this.gapSize=1,this.setValues(e)}copy(e){return super.copy(e),this.scale=e.scale,this.dashSize=e.dashSize,this.gapSize=e.gapSize,this}}function yu(r,e,t){return!r||!t&&r.constructor===e?r:typeof e.BYTES_PER_ELEMENT=="number"?new e(r):Array.prototype.slice.call(r)}function PC(r){return ArrayBuffer.isView(r)&&!(r instanceof DataView)}function RC(r){function e(i,s){return r[i]-r[s]}const t=r.length,n=new Array(t);for(let i=0;i!==t;++i)n[i]=i;return n.sort(e),n}function Z_(r,e,t){const n=r.length,i=new r.constructor(n);for(let s=0,o=0;o!==n;++s){const l=t[s]*e;for(let u=0;u!==e;++u)i[o++]=r[l+u]}return i}function mM(r,e,t,n){let i=1,s=r[0];for(;s!==void 0&&s[n]===void 0;)s=r[i++];if(s===void 0)return;let o=s[n];if(o!==void 0)if(Array.isArray(o))do o=s[n],o!==void 0&&(e.push(s.time),t.push.apply(t,o)),s=r[i++];while(s!==void 0);else if(o.toArray!==void 0)do o=s[n],o!==void 0&&(e.push(s.time),o.toArray(t,t.length)),s=r[i++];while(s!==void 0);else do o=s[n],o!==void 0&&(e.push(s.time),t.push(o)),s=r[i++];while(s!==void 0)}function QR(r,e,t,n,i=30){const s=r.clone();s.name=e;const o=[];for(let u=0;u<s.tracks.length;++u){const d=s.tracks[u],p=d.getValueSize(),m=[],y=[];for(let v=0;v<d.times.length;++v){const S=d.times[v]*i;if(!(S<t||S>=n)){m.push(d.times[v]);for(let E=0;E<p;++E)y.push(d.values[v*p+E])}}m.length!==0&&(d.times=yu(m,d.times.constructor),d.values=yu(y,d.values.constructor),o.push(d))}s.tracks=o;let l=1/0;for(let u=0;u<s.tracks.length;++u)l>s.tracks[u].times[0]&&(l=s.tracks[u].times[0]);for(let u=0;u<s.tracks.length;++u)s.tracks[u].shift(-1*l);return s.resetDuration(),s}function ZR(r,e=0,t=r,n=30){n<=0&&(n=30);const i=t.tracks.length,s=e/n;for(let o=0;o<i;++o){const l=t.tracks[o],u=l.ValueTypeName;if(u==="bool"||u==="string")continue;const d=r.tracks.find(function(M){return M.name===l.name&&M.ValueTypeName===u});if(d===void 0)continue;let p=0;const m=l.getValueSize();l.createInterpolant.isInterpolantFactoryMethodGLTFCubicSpline&&(p=m/3);let y=0;const v=d.getValueSize();d.createInterpolant.isInterpolantFactoryMethodGLTFCubicSpline&&(y=v/3);const S=l.times.length-1;let E;if(s<=l.times[0]){const M=p,T=m-p;E=l.values.slice(M,T)}else if(s>=l.times[S]){const M=S*m+p,T=M+m-p;E=l.values.slice(M,T)}else{const M=l.createInterpolant(),T=p,I=m-p;M.evaluate(s),E=M.resultBuffer.slice(T,I)}u==="quaternion"&&new fi().fromArray(E).normalize().conjugate().toArray(E);const A=d.times.length;for(let M=0;M<A;++M){const T=M*v+y;if(u==="quaternion")fi.multiplyQuaternionsFlat(d.values,T,E,0,d.values,T);else{const I=v-y*2;for(let P=0;P<I;++P)d.values[T+P]-=E[P]}}}return r.blendMode=Yx,r}const e5={convertArray:yu,isTypedArray:PC,getKeyframeOrder:RC,sortedArray:Z_,flattenJSON:mM,subclip:QR,makeClipAdditive:ZR};class $d{constructor(e,t,n,i){this.parameterPositions=e,this._cachedIndex=0,this.resultBuffer=i!==void 0?i: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,i=t[n],s=t[n-1];e:{t:{let o;n:{r:if(!(e<i)){for(let l=n+2;;){if(i===void 0){if(e<s)break r;return n=t.length,this._cachedIndex=n,this.copySampleValue_(n-1)}if(n===l)break;if(s=i,i=t[++n],e<i)break t}o=t.length;break n}if(!(e>=s)){const l=t[1];e<l&&(n=2,s=l);for(let u=n-2;;){if(s===void 0)return this._cachedIndex=0,this.copySampleValue_(0);if(n===u)break;if(i=s,s=t[--n-1],e>=s)break t}o=n,n=0;break n}break e}for(;n<o;){const l=n+o>>>1;e<t[l]?o=l:n=l+1}if(i=t[n],s=t[n-1],s===void 0)return this._cachedIndex=0,this.copySampleValue_(0);if(i===void 0)return n=t.length,this._cachedIndex=n,this.copySampleValue_(n-1)}this._cachedIndex=n,this.intervalChanged_(n,s,i)}return this.interpolate_(n,s,e,i)}getSettings_(){return this.settings||this.DefaultSettings_}copySampleValue_(e){const t=this.resultBuffer,n=this.sampleValues,i=this.valueSize,s=e*i;for(let o=0;o!==i;++o)t[o]=n[s+o];return t}interpolate_(){throw new Error("call to abstract method")}intervalChanged_(){}}class BC extends $d{constructor(e,t,n,i){super(e,t,n,i),this._weightPrev=-0,this._offsetPrev=-0,this._weightNext=-0,this._offsetNext=-0,this.DefaultSettings_={endingStart:pu,endingEnd:pu}}intervalChanged_(e,t,n){const i=this.parameterPositions;let s=e-2,o=e+1,l=i[s],u=i[o];if(l===void 0)switch(this.getSettings_().endingStart){case mu:s=e,l=2*t-n;break;case kp:s=i.length-2,l=t+i[s]-i[s+1];break;default:s=e,l=n}if(u===void 0)switch(this.getSettings_().endingEnd){case mu:o=e,u=2*n-t;break;case kp:o=1,u=n+i[1]-i[0];break;default:o=e-1,u=t}const d=(n-t)*.5,p=this.valueSize;this._weightPrev=d/(t-l),this._weightNext=d/(u-n),this._offsetPrev=s*p,this._offsetNext=o*p}interpolate_(e,t,n,i){const s=this.resultBuffer,o=this.sampleValues,l=this.valueSize,u=e*l,d=u-l,p=this._offsetPrev,m=this._offsetNext,y=this._weightPrev,v=this._weightNext,S=(n-t)/(i-t),E=S*S,A=E*S,M=-y*A+2*y*E-y*S,T=(1+y)*A+(-1.5-2*y)*E+(-.5+y)*S+1,I=(-1-v)*A+(1.5+v)*E+.5*S,P=v*A-v*E;for(let k=0;k!==l;++k)s[k]=M*o[p+k]+T*o[d+k]+I*o[u+k]+P*o[m+k];return s}}class gM extends $d{constructor(e,t,n,i){super(e,t,n,i)}interpolate_(e,t,n,i){const s=this.resultBuffer,o=this.sampleValues,l=this.valueSize,u=e*l,d=u-l,p=(n-t)/(i-t),m=1-p;for(let y=0;y!==l;++y)s[y]=o[d+y]*m+o[u+y]*p;return s}}class OC extends $d{constructor(e,t,n,i){super(e,t,n,i)}interpolate_(e){return this.copySampleValue_(e-1)}}class To{constructor(e,t,n,i){if(e===void 0)throw new Error("THREE.KeyframeTrack: track name is undefined");if(t===void 0||t.length===0)throw new Error("THREE.KeyframeTrack: no keyframes in track named "+e);this.name=e,this.times=yu(t,this.TimeBufferType),this.values=yu(n,this.ValueBufferType),this.setInterpolation(i||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:yu(e.times,Array),values:yu(e.values,Array)};const i=e.getInterpolation();i!==e.DefaultInterpolation&&(n.interpolation=i)}return n.type=e.ValueTypeName,n}InterpolantFactoryMethodDiscrete(e){return new OC(this.times,this.values,this.getValueSize(),e)}InterpolantFactoryMethodLinear(e){return new gM(this.times,this.values,this.getValueSize(),e)}InterpolantFactoryMethodSmooth(e){return new BC(this.times,this.values,this.getValueSize(),e)}setInterpolation(e){let t;switch(e){case Ld:t=this.InterpolantFactoryMethodDiscrete;break;case Nd:t=this.InterpolantFactoryMethodLinear;break;case xg:t=this.InterpolantFactoryMethodSmooth;break}if(t===void 0){const n="unsupported interpolation for "+this.ValueTypeName+" keyframe track named "+this.name;if(this.createInterpolant===void 0)if(e!==this.DefaultInterpolation)this.setInterpolation(this.DefaultInterpolation);else throw new Error(n);return console.warn("THREE.KeyframeTrack:",n),this}return this.createInterpolant=t,this}getInterpolation(){switch(this.createInterpolant){case this.InterpolantFactoryMethodDiscrete:return Ld;case this.InterpolantFactoryMethodLinear:return Nd;case this.InterpolantFactoryMethodSmooth:return xg}}getValueSize(){return this.values.length/this.times.length}shift(e){if(e!==0){const t=this.times;for(let n=0,i=t.length;n!==i;++n)t[n]+=e}return this}scale(e){if(e!==1){const t=this.times;for(let n=0,i=t.length;n!==i;++n)t[n]*=e}return this}trim(e,t){const n=this.times,i=n.length;let s=0,o=i-1;for(;s!==i&&n[s]<e;)++s;for(;o!==-1&&n[o]>t;)--o;if(++o,s!==0||o!==i){s>=o&&(o=Math.max(o,1),s=o-1);const l=this.getValueSize();this.times=n.slice(s,o),this.values=this.values.slice(s*l,o*l)}return this}validate(){let e=!0;const t=this.getValueSize();t-Math.floor(t)!==0&&(console.error("THREE.KeyframeTrack: Invalid value size in track.",this),e=!1);const n=this.times,i=this.values,s=n.length;s===0&&(console.error("THREE.KeyframeTrack: Track is empty.",this),e=!1);let o=null;for(let l=0;l!==s;l++){const u=n[l];if(typeof u=="number"&&isNaN(u)){console.error("THREE.KeyframeTrack: Time is not a valid number.",this,l,u),e=!1;break}if(o!==null&&o>u){console.error("THREE.KeyframeTrack: Out of order keys.",this,l,u,o),e=!1;break}o=u}if(i!==void 0&&PC(i))for(let l=0,u=i.length;l!==u;++l){const d=i[l];if(isNaN(d)){console.error("THREE.KeyframeTrack: Value is not a valid number.",this,l,d),e=!1;break}}return e}optimize(){const e=this.times.slice(),t=this.values.slice(),n=this.getValueSize(),i=this.getInterpolation()===xg,s=e.length-1;let o=1;for(let l=1;l<s;++l){let u=!1;const d=e[l],p=e[l+1];if(d!==p&&(l!==1||d!==e[0]))if(i)u=!0;else{const m=l*n,y=m-n,v=m+n;for(let S=0;S!==n;++S){const E=t[m+S];if(E!==t[y+S]||E!==t[v+S]){u=!0;break}}}if(u){if(l!==o){e[o]=e[l];const m=l*n,y=o*n;for(let v=0;v!==n;++v)t[y+v]=t[m+v]}++o}}if(s>0){e[o]=e[s];for(let l=s*n,u=o*n,d=0;d!==n;++d)t[u+d]=t[l+d];++o}return o!==e.length?(this.times=e.slice(0,o),this.values=t.slice(0,o*n)):(this.times=e,this.values=t),this}clone(){const e=this.times.slice(),t=this.values.slice(),n=this.constructor,i=new n(this.name,e,t);return i.createInterpolant=this.createInterpolant,i}}To.prototype.TimeBufferType=Float32Array;To.prototype.ValueBufferType=Float32Array;To.prototype.DefaultInterpolation=Nd;class Hu extends To{constructor(e,t,n){super(e,t,n)}}Hu.prototype.ValueTypeName="bool";Hu.prototype.ValueBufferType=Array;Hu.prototype.DefaultInterpolation=Ld;Hu.prototype.InterpolantFactoryMethodLinear=void 0;Hu.prototype.InterpolantFactoryMethodSmooth=void 0;class yM extends To{}yM.prototype.ValueTypeName="color";class Ou extends To{}Ou.prototype.ValueTypeName="number";class DC extends $d{constructor(e,t,n,i){super(e,t,n,i)}interpolate_(e,t,n,i){const s=this.resultBuffer,o=this.sampleValues,l=this.valueSize,u=(n-t)/(i-t);let d=e*l;for(let p=d+l;d!==p;d+=4)fi.slerpFlat(s,0,o,d-l,o,d,u);return s}}class Du extends To{InterpolantFactoryMethodLinear(e){return new DC(this.times,this.values,this.getValueSize(),e)}}Du.prototype.ValueTypeName="quaternion";Du.prototype.InterpolantFactoryMethodSmooth=void 0;class Gu extends To{constructor(e,t,n){super(e,t,n)}}Gu.prototype.ValueTypeName="string";Gu.prototype.ValueBufferType=Array;Gu.prototype.DefaultInterpolation=Ld;Gu.prototype.InterpolantFactoryMethodLinear=void 0;Gu.prototype.InterpolantFactoryMethodSmooth=void 0;class Lu extends To{}Lu.prototype.ValueTypeName="vector";class Ud{constructor(e="",t=-1,n=[],i=Hy){this.name=e,this.tracks=n,this.duration=t,this.blendMode=i,this.uuid=_s(),this.duration<0&&this.resetDuration()}static parse(e){const t=[],n=e.tracks,i=1/(e.fps||1);for(let o=0,l=n.length;o!==l;++o)t.push(n5(n[o]).scale(i));const s=new this(e.name,e.duration,t,e.blendMode);return s.uuid=e.uuid,s}static toJSON(e){const t=[],n=e.tracks,i={name:e.name,duration:e.duration,tracks:t,uuid:e.uuid,blendMode:e.blendMode};for(let s=0,o=n.length;s!==o;++s)t.push(To.toJSON(n[s]));return i}static CreateFromMorphTargetSequence(e,t,n,i){const s=t.length,o=[];for(let l=0;l<s;l++){let u=[],d=[];u.push((l+s-1)%s,l,(l+1)%s),d.push(0,1,0);const p=RC(u);u=Z_(u,1,p),d=Z_(d,1,p),!i&&u[0]===0&&(u.push(s),d.push(d[0])),o.push(new Ou(".morphTargetInfluences["+t[l].name+"]",u,d).scale(1/n))}return new this(e,-1,o)}static findByName(e,t){let n=e;if(!Array.isArray(e)){const i=e;n=i.geometry&&i.geometry.animations||i.animations}for(let i=0;i<n.length;i++)if(n[i].name===t)return n[i];return null}static CreateClipsFromMorphTargetSequences(e,t,n){const i={},s=/^([\w-]*?)([\d]+)$/;for(let l=0,u=e.length;l<u;l++){const d=e[l],p=d.name.match(s);if(p&&p.length>1){const m=p[1];let y=i[m];y||(i[m]=y=[]),y.push(d)}}const o=[];for(const l in i)o.push(this.CreateFromMorphTargetSequence(l,i[l],t,n));return o}static parseAnimation(e,t){if(!e)return console.error("THREE.AnimationClip: No animation in JSONLoader data."),null;const n=function(m,y,v,S,E){if(v.length!==0){const A=[],M=[];mM(v,A,M,S),A.length!==0&&E.push(new m(y,A,M))}},i=[],s=e.name||"default",o=e.fps||30,l=e.blendMode;let u=e.length||-1;const d=e.hierarchy||[];for(let m=0;m<d.length;m++){const y=d[m].keys;if(!(!y||y.length===0))if(y[0].morphTargets){const v={};let S;for(S=0;S<y.length;S++)if(y[S].morphTargets)for(let E=0;E<y[S].morphTargets.length;E++)v[y[S].morphTargets[E]]=-1;for(const E in v){const A=[],M=[];for(let T=0;T!==y[S].morphTargets.length;++T){const I=y[S];A.push(I.time),M.push(I.morphTarget===E?1:0)}i.push(new Ou(".morphTargetInfluence["+E+"]",A,M))}u=v.length*o}else{const v=".bones["+t[m].name+"]";n(Lu,v+".position",y,"pos",i),n(Du,v+".quaternion",y,"rot",i),n(Lu,v+".scale",y,"scl",i)}}return i.length===0?null:new this(s,u,i,l)}resetDuration(){const e=this.tracks;let t=0;for(let n=0,i=e.length;n!==i;++n){const s=this.tracks[n];t=Math.max(t,s.times[s.times.length-1])}return this.duration=t,this}trim(){for(let e=0;e<this.tracks.length;e++)this.tracks[e].trim(0,this.duration);return this}validate(){let e=!0;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 t5(r){switch(r.toLowerCase()){case"scalar":case"double":case"float":case"number":case"integer":return Ou;case"vector":case"vector2":case"vector3":case"vector4":return Lu;case"color":return yM;case"quaternion":return Du;case"bool":case"boolean":return Hu;case"string":return Gu}throw new Error("THREE.KeyframeTrack: Unsupported typeName: "+r)}function n5(r){if(r.type===void 0)throw new Error("THREE.KeyframeTrack: track type undefined, can not parse");const e=t5(r.type);if(r.times===void 0){const t=[],n=[];mM(r.keys,t,n,"value"),r.times=t,r.values=n}return e.parse!==void 0?e.parse(r):new e(r.name,r.times,r.values,r.interpolation)}const Ka={enabled:!1,files:{},add:function(r,e){this.enabled!==!1&&(this.files[r]=e)},get:function(r){if(this.enabled!==!1)return this.files[r]},remove:function(r){delete this.files[r]},clear:function(){this.files={}}};class vM{constructor(e,t,n){const i=this;let s=!1,o=0,l=0,u;const d=[];this.onStart=void 0,this.onLoad=e,this.onProgress=t,this.onError=n,this.itemStart=function(p){l++,s===!1&&i.onStart!==void 0&&i.onStart(p,o,l),s=!0},this.itemEnd=function(p){o++,i.onProgress!==void 0&&i.onProgress(p,o,l),o===l&&(s=!1,i.onLoad!==void 0&&i.onLoad())},this.itemError=function(p){i.onError!==void 0&&i.onError(p)},this.resolveURL=function(p){return u?u(p):p},this.setURLModifier=function(p){return u=p,this},this.addHandler=function(p,m){return d.push(p,m),this},this.removeHandler=function(p){const m=d.indexOf(p);return m!==-1&&d.splice(m,2),this},this.getHandler=function(p){for(let m=0,y=d.length;m<y;m+=2){const v=d[m],S=d[m+1];if(v.global&&(v.lastIndex=0),v.test(p))return S}return null}}}const LC=new vM;class gi{constructor(e){this.manager=e!==void 0?e:LC,this.crossOrigin="anonymous",this.withCredentials=!1,this.path="",this.resourcePath="",this.requestHeader={}}load(){}loadAsync(e,t){const n=this;return new Promise(function(i,s){n.load(e,i,t,s)})}parse(){}setCrossOrigin(e){return this.crossOrigin=e,this}setWithCredentials(e){return this.withCredentials=e,this}setPath(e){return this.path=e,this}setResourcePath(e){return this.resourcePath=e,this}setRequestHeader(e){return this.requestHeader=e,this}}gi.DEFAULT_MATERIAL_NAME="__DEFAULT";const za={};class r5 extends Error{constructor(e,t){super(e),this.response=t}}class Ss extends gi{constructor(e){super(e)}load(e,t,n,i){e===void 0&&(e=""),this.path!==void 0&&(e=this.path+e),e=this.manager.resolveURL(e);const s=Ka.get(e);if(s!==void 0)return this.manager.itemStart(e),setTimeout(()=>{t&&t(s),this.manager.itemEnd(e)},0),s;if(za[e]!==void 0){za[e].push({onLoad:t,onProgress:n,onError:i});return}za[e]=[],za[e].push({onLoad:t,onProgress:n,onError:i});const o=new Request(e,{headers:new Headers(this.requestHeader),credentials:this.withCredentials?"include":"same-origin"}),l=this.mimeType,u=this.responseType;fetch(o).then(d=>{if(d.status===200||d.status===0){if(d.status===0&&console.warn("THREE.FileLoader: HTTP Status 0 received."),typeof ReadableStream>"u"||d.body===void 0||d.body.getReader===void 0)return d;const p=za[e],m=d.body.getReader(),y=d.headers.get("X-File-Size")||d.headers.get("Content-Length"),v=y?parseInt(y):0,S=v!==0;let E=0;const A=new ReadableStream({start(M){T();function T(){m.read().then(({done:I,value:P})=>{if(I)M.close();else{E+=P.byteLength;const k=new ProgressEvent("progress",{lengthComputable:S,loaded:E,total:v});for(let O=0,N=p.length;O<N;O++){const H=p[O];H.onProgress&&H.onProgress(k)}M.enqueue(P),T()}},I=>{M.error(I)})}}});return new Response(A)}else throw new r5(`fetch for "${d.url}" responded with ${d.status}: ${d.statusText}`,d)}).then(d=>{switch(u){case"arraybuffer":return d.arrayBuffer();case"blob":return d.blob();case"document":return d.text().then(p=>new DOMParser().parseFromString(p,l));case"json":return d.json();default:if(l===void 0)return d.text();{const m=/charset="?([^;"\s]*)"?/i.exec(l),y=m&&m[1]?m[1].toLowerCase():void 0,v=new TextDecoder(y);return d.arrayBuffer().then(S=>v.decode(S))}}}).then(d=>{Ka.add(e,d);const p=za[e];delete za[e];for(let m=0,y=p.length;m<y;m++){const v=p[m];v.onLoad&&v.onLoad(d)}}).catch(d=>{const p=za[e];if(p===void 0)throw this.manager.itemError(e),d;delete za[e];for(let m=0,y=p.length;m<y;m++){const v=p[m];v.onError&&v.onError(d)}this.manager.itemError(e)}).finally(()=>{this.manager.itemEnd(e)}),this.manager.itemStart(e)}setResponseType(e){return this.responseType=e,this}setMimeType(e){return this.mimeType=e,this}}class i5 extends gi{constructor(e){super(e)}load(e,t,n,i){const s=this,o=new Ss(this.manager);o.setPath(this.path),o.setRequestHeader(this.requestHeader),o.setWithCredentials(this.withCredentials),o.load(e,function(l){try{t(s.parse(JSON.parse(l)))}catch(u){i?i(u):console.error(u),s.manager.itemError(e)}},n,i)}parse(e){const t=[];for(let n=0;n<e.length;n++){const i=Ud.parse(e[n]);t.push(i)}return t}}class s5 extends gi{constructor(e){super(e)}load(e,t,n,i){const s=this,o=[],l=new $y,u=new Ss(this.manager);u.setPath(this.path),u.setResponseType("arraybuffer"),u.setRequestHeader(this.requestHeader),u.setWithCredentials(s.withCredentials);let d=0;function p(m){u.load(e[m],function(y){const v=s.parse(y,!0);o[m]={width:v.width,height:v.height,format:v.format,mipmaps:v.mipmaps},d+=1,d===6&&(v.mipmapCount===1&&(l.minFilter=Zn),l.image=o,l.format=v.format,l.needsUpdate=!0,t&&t(l))},n,i)}if(Array.isArray(e))for(let m=0,y=e.length;m<y;++m)p(m);else u.load(e,function(m){const y=s.parse(m,!0);if(y.isCubemap){const v=y.mipmaps.length/y.mipmapCount;for(let S=0;S<v;S++){o[S]={mipmaps:[]};for(let E=0;E<y.mipmapCount;E++)o[S].mipmaps.push(y.mipmaps[S*y.mipmapCount+E]),o[S].format=y.format,o[S].width=y.width,o[S].height=y.height}l.image=o}else l.image.width=y.width,l.image.height=y.height,l.mipmaps=y.mipmaps;y.mipmapCount===1&&(l.minFilter=Zn),l.format=y.format,l.needsUpdate=!0,t&&t(l)},n,i);return l}}class $p extends gi{constructor(e){super(e)}load(e,t,n,i){this.path!==void 0&&(e=this.path+e),e=this.manager.resolveURL(e);const s=this,o=Ka.get(e);if(o!==void 0)return s.manager.itemStart(e),setTimeout(function(){t&&t(o),s.manager.itemEnd(e)},0),o;const l=Hp("img");function u(){p(),Ka.add(e,this),t&&t(this),s.manager.itemEnd(e)}function d(m){p(),i&&i(m),s.manager.itemError(e),s.manager.itemEnd(e)}function p(){l.removeEventListener("load",u,!1),l.removeEventListener("error",d,!1)}return l.addEventListener("load",u,!1),l.addEventListener("error",d,!1),e.slice(0,5)!=="data:"&&this.crossOrigin!==void 0&&(l.crossOrigin=this.crossOrigin),s.manager.itemStart(e),l.src=e,l}}class o5 extends gi{constructor(e){super(e)}load(e,t,n,i){const s=new im;s.colorSpace=Zi;const o=new $p(this.manager);o.setCrossOrigin(this.crossOrigin),o.setPath(this.path);let l=0;function u(d){o.load(e[d],function(p){s.images[d]=p,l++,l===6&&(s.needsUpdate=!0,t&&t(s))},void 0,i)}for(let d=0;d<e.length;++d)u(d);return s}}class a5 extends gi{constructor(e){super(e)}load(e,t,n,i){const s=this,o=new $o,l=new Ss(this.manager);return l.setResponseType("arraybuffer"),l.setRequestHeader(this.requestHeader),l.setPath(this.path),l.setWithCredentials(s.withCredentials),l.load(e,function(u){let d;try{d=s.parse(u)}catch(p){if(i!==void 0)i(p);else{console.error(p);return}}d.image!==void 0?o.image=d.image:d.data!==void 0&&(o.image.width=d.width,o.image.height=d.height,o.image.data=d.data),o.wrapS=d.wrapS!==void 0?d.wrapS:ys,o.wrapT=d.wrapT!==void 0?d.wrapT:ys,o.magFilter=d.magFilter!==void 0?d.magFilter:Zn,o.minFilter=d.minFilter!==void 0?d.minFilter:Zn,o.anisotropy=d.anisotropy!==void 0?d.anisotropy:1,d.colorSpace!==void 0&&(o.colorSpace=d.colorSpace),d.flipY!==void 0&&(o.flipY=d.flipY),d.format!==void 0&&(o.format=d.format),d.type!==void 0&&(o.type=d.type),d.mipmaps!==void 0&&(o.mipmaps=d.mipmaps,o.minFilter=js),d.mipmapCount===1&&(o.minFilter=Zn),d.generateMipmaps!==void 0&&(o.generateMipmaps=d.generateMipmaps),o.needsUpdate=!0,t&&t(o,d)},n,i),o}}class _M extends gi{constructor(e){super(e)}load(e,t,n,i){const s=new Gn,o=new $p(this.manager);return o.setCrossOrigin(this.crossOrigin),o.setPath(this.path),o.load(e,function(l){s.image=l,s.needsUpdate=!0,t!==void 0&&t(s)},n,i),s}}class cc extends fn{constructor(e,t=1){super(),this.isLight=!0,this.type="Light",this.color=new tt(e),this.intensity=t}dispose(){}copy(e,t){return super.copy(e,t),this.color.copy(e.color),this.intensity=e.intensity,this}toJSON(e){const t=super.toJSON(e);return t.object.color=this.color.getHex(),t.object.intensity=this.intensity,this.groundColor!==void 0&&(t.object.groundColor=this.groundColor.getHex()),this.distance!==void 0&&(t.object.distance=this.distance),this.angle!==void 0&&(t.object.angle=this.angle),this.decay!==void 0&&(t.object.decay=this.decay),this.penumbra!==void 0&&(t.object.penumbra=this.penumbra),this.shadow!==void 0&&(t.object.shadow=this.shadow.toJSON()),this.target!==void 0&&(t.object.target=this.target.uuid),t}}class NC extends cc{constructor(e,t,n){super(e,n),this.isHemisphereLight=!0,this.type="HemisphereLight",this.position.copy(fn.DEFAULT_UP),this.updateMatrix(),this.groundColor=new tt(t)}copy(e,t){return super.copy(e,t),this.groundColor.copy(e.groundColor),this}}const Dv=new Nt,Vw=new $,Ww=new $;class xM{constructor(e){this.camera=e,this.intensity=1,this.bias=0,this.normalBias=0,this.radius=1,this.blurSamples=8,this.mapSize=new Ne(512,512),this.map=null,this.mapPass=null,this.matrix=new Nt,this.autoUpdate=!0,this.needsUpdate=!1,this._frustum=new am,this._frameExtents=new Ne(1,1),this._viewportCount=1,this._viewports=[new xn(0,0,1,1)]}getViewportCount(){return this._viewportCount}getFrustum(){return this._frustum}updateMatrices(e){const t=this.camera,n=this.matrix;Vw.setFromMatrixPosition(e.matrixWorld),t.position.copy(Vw),Ww.setFromMatrixPosition(e.target.matrixWorld),t.lookAt(Ww),t.updateMatrixWorld(),Dv.multiplyMatrices(t.projectionMatrix,t.matrixWorldInverse),this._frustum.setFromProjectionMatrix(Dv),n.set(.5,0,0,.5,0,.5,0,.5,0,0,.5,.5,0,0,0,1),n.multiply(Dv)}getViewport(e){return this._viewports[e]}getFrameExtents(){return this._frameExtents}dispose(){this.map&&this.map.dispose(),this.mapPass&&this.mapPass.dispose()}copy(e){return this.camera=e.camera.clone(),this.intensity=e.intensity,this.bias=e.bias,this.radius=e.radius,this.mapSize.copy(e.mapSize),this}clone(){return new this.constructor().copy(this)}toJSON(){const e={};return this.intensity!==1&&(e.intensity=this.intensity),this.bias!==0&&(e.bias=this.bias),this.normalBias!==0&&(e.normalBias=this.normalBias),this.radius!==1&&(e.radius=this.radius),(this.mapSize.x!==512||this.mapSize.y!==512)&&(e.mapSize=this.mapSize.toArray()),e.camera=this.camera.toJSON(!1).object,delete e.camera.matrix,e}}class l5 extends xM{constructor(){super(new _r(50,1,.5,500)),this.isSpotLightShadow=!0,this.focus=1}updateMatrices(e){const t=this.camera,n=Fd*2*e.angle*this.focus,i=this.mapSize.width/this.mapSize.height,s=e.distance||t.far;(n!==t.fov||i!==t.aspect||s!==t.far)&&(t.fov=n,t.aspect=i,t.far=s,t.updateProjectionMatrix()),super.updateMatrices(e)}copy(e){return super.copy(e),this.focus=e.focus,this}}class MM extends cc{constructor(e,t,n=0,i=Math.PI/3,s=0,o=2){super(e,t),this.isSpotLight=!0,this.type="SpotLight",this.position.copy(fn.DEFAULT_UP),this.updateMatrix(),this.target=new fn,this.distance=n,this.angle=i,this.penumbra=s,this.decay=o,this.map=null,this.shadow=new l5}get power(){return this.intensity*Math.PI}set power(e){this.intensity=e/Math.PI}dispose(){this.shadow.dispose()}copy(e,t){return super.copy(e,t),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(),this}}const Xw=new Nt,hp=new $,Lv=new $;class c5 extends xM{constructor(){super(new _r(90,1,.5,500)),this.isPointLightShadow=!0,this._frameExtents=new Ne(4,2),this._viewportCount=6,this._viewports=[new xn(2,1,1,1),new xn(0,1,1,1),new xn(3,1,1,1),new xn(1,1,1,1),new xn(3,0,1,1),new xn(1,0,1,1)],this._cubeDirections=[new $(1,0,0),new $(-1,0,0),new $(0,0,1),new $(0,0,-1),new $(0,1,0),new $(0,-1,0)],this._cubeUps=[new $(0,1,0),new $(0,1,0),new $(0,1,0),new $(0,1,0),new $(0,0,1),new $(0,0,-1)]}updateMatrices(e,t=0){const n=this.camera,i=this.matrix,s=e.distance||n.far;s!==n.far&&(n.far=s,n.updateProjectionMatrix()),hp.setFromMatrixPosition(e.matrixWorld),n.position.copy(hp),Lv.copy(n.position),Lv.add(this._cubeDirections[t]),n.up.copy(this._cubeUps[t]),n.lookAt(Lv),n.updateMatrixWorld(),i.makeTranslation(-hp.x,-hp.y,-hp.z),Xw.multiplyMatrices(n.projectionMatrix,n.matrixWorldInverse),this._frustum.setFromProjectionMatrix(Xw)}}class SM extends cc{constructor(e,t,n=0,i=2){super(e,t),this.isPointLight=!0,this.type="PointLight",this.distance=n,this.decay=i,this.shadow=new c5}get power(){return this.intensity*4*Math.PI}set power(e){this.intensity=e/(4*Math.PI)}dispose(){this.shadow.dispose()}copy(e,t){return super.copy(e,t),this.distance=e.distance,this.decay=e.decay,this.shadow=e.shadow.clone(),this}}class Kd extends rm{constructor(e=-1,t=1,n=1,i=-1,s=.1,o=2e3){super(),this.isOrthographicCamera=!0,this.type="Orthogra
83phicCamera",this.zoom=1,this.view=null,this.left=e,this.right=t,this.top=n,this.bottom=i,this.near=s,this.far=o,this.updateProjectionMatrix()}copy(e,t){return 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=e.view===null?null:Object.assign({},e.view),this}setViewOffset(e,t,n,i,s,o){this.view===null&&(this.view={enabled:!0,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1}),this.view.enabled=!0,this.view.fullWidth=e,this.view.fullHeight=t,this.view.offsetX=n,this.view.offsetY=i,this.view.width=s,this.view.height=o,this.updateProjectionMatrix()}clearViewOffset(){this.view!==null&&(this.view.enabled=!1),this.updateProjectionMatrix()}updateProjectionMatrix(){const e=(this.right-this.left)/(2*this.zoom),t=(this.top-this.bottom)/(2*this.zoom),n=(this.right+this.left)/2,i=(this.top+this.bottom)/2;let s=n-e,o=n+e,l=i+t,u=i-t;if(this.view!==null&&this.view.enabled){const d=(this.right-this.left)/this.view.fullWidth/this.zoom,p=(this.top-this.bottom)/this.view.fullHeight/this.zoom;s+=d*this.view.offsetX,o=s+d*this.view.width,l-=p*this.view.offsetY,u=l-p*this.view.height}this.projectionMatrix.makeOrthographic(s,o,l,u,this.near,this.far,this.coordinateSystem),this.projectionMatrixInverse.copy(this.projectionMatrix).invert()}toJSON(e){const t=super.toJSON(e);return 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,this.view!==null&&(t.object.view=Object.assign({},this.view)),t}}class u5 extends xM{constructor(){super(new Kd(-5,5,5,-5,.5,500)),this.isDirectionalLightShadow=!0}}class wM extends cc{constructor(e,t){super(e,t),this.isDirectionalLight=!0,this.type="DirectionalLight",this.position.copy(fn.DEFAULT_UP),this.updateMatrix(),this.target=new fn,this.shadow=new u5}dispose(){this.shadow.dispose()}copy(e){return super.copy(e),this.target=e.target.clone(),this.shadow=e.shadow.clone(),this}}class FC extends cc{constructor(e,t){super(e,t),this.isAmbientLight=!0,this.type="AmbientLight"}}class kC extends cc{constructor(e,t,n=10,i=10){super(e,t),this.isRectAreaLight=!0,this.type="RectAreaLight",this.width=n,this.height=i}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){return super.copy(e),this.width=e.width,this.height=e.height,this}toJSON(e){const t=super.toJSON(e);return t.object.width=this.width,t.object.height=this.height,t}}class UC{constructor(){this.isSphericalHarmonics3=!0,this.coefficients=[];for(let e=0;e<9;e++)this.coefficients.push(new $)}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,i=e.y,s=e.z,o=this.coefficients;return t.copy(o[0]).multiplyScalar(.282095),t.addScaledVector(o[1],.488603*i),t.addScaledVector(o[2],.488603*s),t.addScaledVector(o[3],.488603*n),t.addScaledVector(o[4],1.092548*(n*i)),t.addScaledVector(o[5],1.092548*(i*s)),t.addScaledVector(o[6],.315392*(3*s*s-1)),t.addScaledVector(o[7],1.092548*(n*s)),t.addScaledVector(o[8],.546274*(n*n-i*i)),t}getIrradianceAt(e,t){const n=e.x,i=e.y,s=e.z,o=this.coefficients;return t.copy(o[0]).multiplyScalar(.886227),t.addScaledVector(o[1],2*.511664*i),t.addScaledVector(o[2],2*.511664*s),t.addScaledVector(o[3],2*.511664*n),t.addScaledVector(o[4],2*.429043*n*i),t.addScaledVector(o[5],2*.429043*i*s),t.addScaledVector(o[6],.743125*s*s-.247708),t.addScaledVector(o[7],2*.429043*n*s),t.addScaledVector(o[8],.429043*(n*n-i*i)),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!1;return!0}copy(e){return this.set(e.coefficients)}clone(){return new this.constructor().copy(this)}fromArray(e,t=0){const n=this.coefficients;for(let i=0;i<9;i++)n[i].fromArray(e,t+i*3);return this}toArray(e=[],t=0){const n=this.coefficients;for(let i=0;i<9;i++)n[i].toArray(e,t+i*3);return e}static getBasisAt(e,t){const n=e.x,i=e.y,s=e.z;t[0]=.282095,t[1]=.488603*i,t[2]=.488603*s,t[3]=.488603*n,t[4]=1.092548*n*i,t[5]=1.092548*i*s,t[6]=.315392*(3*s*s-1),t[7]=1.092548*n*s,t[8]=.546274*(n*n-i*i)}}class jC extends cc{constructor(e=new UC,t=1){super(void 0,t),this.isLightProbe=!0,this.sh=e}copy(e){return super.copy(e),this.sh.copy(e.sh),this}fromJSON(e){return this.intensity=e.intensity,this.sh.fromArray(e.sh),this}toJSON(e){const t=super.toJSON(e);return t.object.sh=this.sh.toArray(),t}}class u1 extends gi{constructor(e){super(e),this.textures={}}load(e,t,n,i){const s=this,o=new Ss(s.manager);o.setPath(s.path),o.setRequestHeader(s.requestHeader),o.setWithCredentials(s.withCredentials),o.load(e,function(l){try{t(s.parse(JSON.parse(l)))}catch(u){i?i(u):console.error(u),s.manager.itemError(e)}},n,i)}parse(e){const t=this.textures;function n(s){return t[s]===void 0&&console.warn("THREE.MaterialLoader: Undefined texture",s),t[s]}const i=this.createMaterialFromType(e.type);if(e.uuid!==void 0&&(i.uuid=e.uuid),e.name!==void 0&&(i.name=e.name),e.color!==void 0&&i.color!==void 0&&i.color.setHex(e.color),e.roughness!==void 0&&(i.roughness=e.roughness),e.metalness!==void 0&&(i.metalness=e.metalness),e.sheen!==void 0&&(i.sheen=e.sheen),e.sheenColor!==void 0&&(i.sheenColor=new tt().setHex(e.sheenColor)),e.sheenRoughness!==void 0&&(i.sheenRoughness=e.sheenRoughness),e.emissive!==void 0&&i.emissive!==void 0&&i.emissive.setHex(e.emissive),e.specular!==void 0&&i.specular!==void 0&&i.specular.setHex(e.specular),e.specularIntensity!==void 0&&(i.specularIntensity=e.specularIntensity),e.specularColor!==void 0&&i.specularColor!==void 0&&i.specularColor.setHex(e.specularColor),e.shininess!==void 0&&(i.shininess=e.shininess),e.clearcoat!==void 0&&(i.clearcoat=e.clearcoat),e.clearcoatRoughness!==void 0&&(i.clearcoatRoughness=e.clearcoatRoughness),e.dispersion!==void 0&&(i.dispersion=e.dispersion),e.iridescence!==void 0&&(i.iridescence=e.iridescence),e.iridescenceIOR!==void 0&&(i.iridescenceIOR=e.iridescenceIOR),e.iridescenceThicknessRange!==void 0&&(i.iridescenceThicknessRange=e.iridescenceThicknessRange),e.transmission!==void 0&&(i.transmission=e.transmission),e.thickness!==void 0&&(i.thickness=e.thickness),e.attenuationDistance!==void 0&&(i.attenuationDistance=e.attenuationDistance),e.attenuationColor!==void 0&&i.attenuationColor!==void 0&&i.attenuationColor.setHex(e.attenuationColor),e.anisotropy!==void 0&&(i.anisotropy=e.anisotropy),e.anisotropyRotation!==void 0&&(i.anisotropyRotation=e.anisotropyRotation),e.fog!==void 0&&(i.fog=e.fog),e.flatShading!==void 0&&(i.flatShading=e.flatShading),e.blending!==void 0&&(i.blending=e.blending),e.combine!==void 0&&(i.combine=e.combine),e.side!==void 0&&(i.side=e.side),e.shadowSide!==void 0&&(i.shadowSide=e.shadowSide),e.opacity!==void 0&&(i.opacity=e.opacity),e.transparent!==void 0&&(i.transparent=e.transparent),e.alphaTest!==void 0&&(i.alphaTest=e.alphaTest),e.alphaHash!==void 0&&(i.alphaHash=e.alphaHash),e.depthFunc!==void 0&&(i.depthFunc=e.depthFunc),e.depthTest!==void 0&&(i.depthTest=e.depthTest),e.depthWrite!==void 0&&(i.depthWrite=e.depthWrite),e.colorWrite!==void 0&&(i.colorWrite=e.colorWrite),e.blendSrc!==void 0&&(i.blendSrc=e.blendSrc),e.blendDst!==void 0&&(i.blendDst=e.blendDst),e.blendEquation!==void 0&&(i.blendEquation=e.blendEquation),e.blendSrcAlpha!==void 0&&(i.blendSrcAlpha=e.blendSrcAlpha),e.blendDstAlpha!==void 0&&(i.blendDstAlpha=e.blendDstAlpha),e.blendEquationAlpha!==void 0&&(i.blendEquationAlpha=e.blendEquationAlpha),e.blendColor!==void 0&&i.blendColor!==void 0&&i.blendColor.setHex(e.blendColor),e.blendAlpha!==void 0&&(i.blendAlpha=e.blendAlpha),e.stencilWriteMask!==void 0&&(i.stencilWriteMask=e.stencilWriteMask),e.stencilFunc!==void 0&&(i.stencilFunc=e.stencilFunc),e.stencilRef!==void 0&&(i.stencilRef=e.stencilRef),e.stencilFuncMask!==void 0&&(i.stencilFuncMask=e.stencilFuncMask),e.stencilFail!==void 0&&(i.stencilFail=e.stencilFail),e.stencilZFail!==void 0&&(i.stencilZFail=e.stencilZFail),e.stencilZPass!==void 0&&(i.stencilZPass=e.stencilZPass),e.stencilWrite!==void 0&&(i.stencilWrite=e.stencilWrite),e.wireframe
vendor: 44,256 bytes, line 83
83!==void 0&&(i.wireframe=e.wireframe),e.wireframeLinewidth!==void 0&&(i.wireframeLinewidth=e.wireframeLinewidth),e.wireframeLinecap!==void 0&&(i.wireframeLinecap=e.wireframeLinecap),e.wireframeLinejoin!==void 0&&(i.wireframeLinejoin=e.wireframeLinejoin),e.rotation!==void 0&&(i.rotation=e.rotation),e.linewidth!==void 0&&(i.linewidth=e.linewidth),e.dashSize!==void 0&&(i.dashSize=e.dashSize),e.gapSize!==void 0&&(i.gapSize=e.gapSize),e.scale!==void 0&&(i.scale=e.scale),e.polygonOffset!==void 0&&(i.polygonOffset=e.polygonOffset),e.polygonOffsetFactor!==void 0&&(i.polygonOffsetFactor=e.polygonOffsetFactor),e.polygonOffsetUnits!==void 0&&(i.polygonOffsetUnits=e.polygonOffsetUnits),e.dithering!==void 0&&(i.dithering=e.dithering),e.alphaToCoverage!==void 0&&(i.alphaToCoverage=e.alphaToCoverage),e.premultipliedAlpha!==void 0&&(i.premultipliedAlpha=e.premultipliedAlpha),e.forceSinglePass!==void 0&&(i.forceSinglePass=e.forceSinglePass),e.visible!==void 0&&(i.visible=e.visible),e.toneMapped!==void 0&&(i.toneMapped=e.toneMapped),e.userData!==void 0&&(i.userData=e.userData),e.vertexColors!==void 0&&(typeof e.vertexColors=="number"?i.vertexColors=e.vertexColors>0:i.vertexColors=e.vertexColors),e.uniforms!==void 0)for(const s in e.uniforms){const o=e.uniforms[s];switch(i.uniforms[s]={},o.type){case"t":i.uniforms[s].value=n(o.value);break;case"c":i.uniforms[s].value=new tt().setHex(o.value);break;case"v2":i.uniforms[s].value=new Ne().fromArray(o.value);break;case"v3":i.uniforms[s].value=new $().fromArray(o.value);break;case"v4":i.uniforms[s].value=new xn().fromArray(o.value);break;case"m3":i.uniforms[s].value=new Qt().fromArray(o.value);break;case"m4":i.uniforms[s].value=new Nt().fromArray(o.value);break;default:i.uniforms[s].value=o.value}}if(e.defines!==void 0&&(i.defines=e.defines),e.vertexShader!==void 0&&(i.vertexShader=e.vertexShader),e.fragmentShader!==void 0&&(i.fragmentShader=e.fragmentShader),e.glslVersion!==void 0&&(i.glslVersion=e.glslVersion),e.extensions!==void 0)for(const s in e.extensions)i.extensions[s]=e.extensions[s];if(e.lights!==void 0&&(i.lights=e.lights),e.clipping!==void 0&&(i.clipping=e.clipping),e.size!==void 0&&(i.size=e.size),e.sizeAttenuation!==void 0&&(i.sizeAttenuation=e.sizeAttenuation),e.map!==void 0&&(i.map=n(e.map)),e.matcap!==void 0&&(i.matcap=n(e.matcap)),e.alphaMap!==void 0&&(i.alphaMap=n(e.alphaMap)),e.bumpMap!==void 0&&(i.bumpMap=n(e.bumpMap)),e.bumpScale!==void 0&&(i.bumpScale=e.bumpScale),e.normalMap!==void 0&&(i.normalMap=n(e.normalMap)),e.normalMapType!==void 0&&(i.normalMapType=e.normalMapType),e.normalScale!==void 0){let s=e.normalScale;Array.isArray(s)===!1&&(s=[s,s]),i.normalScale=new Ne().fromArray(s)}return e.displacementMap!==void 0&&(i.displacementMap=n(e.displacementMap)),e.displacementScale!==void 0&&(i.displacementScale=e.displacementScale),e.displacementBias!==void 0&&(i.displacementBias=e.displacementBias),e.roughnessMap!==void 0&&(i.roughnessMap=n(e.roughnessMap)),e.metalnessMap!==void 0&&(i.metalnessMap=n(e.metalnessMap)),e.emissiveMap!==void 0&&(i.emissiveMap=n(e.emissiveMap)),e.emissiveIntensity!==void 0&&(i.emissiveIntensity=e.emissiveIntensity),e.specularMap!==void 0&&(i.specularMap=n(e.specularMap)),e.specularIntensityMap!==void 0&&(i.specularIntensityMap=n(e.specularIntensityMap)),e.specularColorMap!==void 0&&(i.specularColorMap=n(e.specularColorMap)),e.envMap!==void 0&&(i.envMap=n(e.envMap)),e.envMapRotation!==void 0&&i.envMapRotation.fromArray(e.envMapRotation),e.envMapIntensity!==void 0&&(i.envMapIntensity=e.envMapIntensity),e.reflectivity!==void 0&&(i.reflectivity=e.reflectivity),e.refractionRatio!==void 0&&(i.refractionRatio=e.refractionRatio),e.lightMap!==void 0&&(i.lightMap=n(e.lightMap)),e.lightMapIntensity!==void 0&&(i.lightMapIntensity=e.lightMapIntensity),e.aoMap!==void 0&&(i.aoMap=n(e.aoMap)),e.aoMapIntensity!==void 0&&(i.aoMapIntensity=e.aoMapIntensity),e.gradientMap!==void 0&&(i.gradientMap=n(e.gradientMap)),e.clearcoatMap!==void 0&&(i.clearcoatMap=n(e.clearcoatMap)),e.clearcoatRoughnessMap!==void 0&&(i.clearcoatRoughnessMap=n(e.clearcoatRoughnessMap)),e.clearcoatNormalMap!==void 0&&(i.clearcoatNormalMap=n(e.clearcoatNormalMap)),e.clearcoatNormalScale!==void 0&&(i.clearcoatNormalScale=new Ne().fromArray(e.clearcoatNormalScale)),e.iridescenceMap!==void 0&&(i.iridescenceMap=n(e.iridescenceMap)),e.iridescenceThicknessMap!==void 0&&(i.iridescenceThicknessMap=n(e.iridescenceThicknessMap)),e.transmissionMap!==void 0&&(i.transmissionMap=n(e.transmissionMap)),e.thicknessMap!==void 0&&(i.thicknessMap=n(e.thicknessMap)),e.anisotropyMap!==void 0&&(i.anisotropyMap=n(e.anisotropyMap)),e.sheenColorMap!==void 0&&(i.sheenColorMap=n(e.sheenColorMap)),e.sheenRoughnessMap!==void 0&&(i.sheenRoughnessMap=n(e.sheenRoughnessMap)),i}setTextures(e){return this.textures=e,this}createMaterialFromType(e){return u1.createMaterialFromType(e)}static createMaterialFromType(e){const t={ShadowMaterial:SC,SpriteMaterial:rM,RawShaderMaterial:wC,ShaderMaterial:So,PointsMaterial:lm,MeshPhysicalMaterial:Gs,MeshStandardMaterial:dm,MeshPhongMaterial:AC,MeshToonMaterial:EC,MeshNormalMaterial:bC,MeshLambertMaterial:CC,MeshDepthMaterial:fM,MeshDistanceMaterial:pM,MeshBasicMaterial:vs,MeshMatcapMaterial:TC,LineDashedMaterial:IC,LineBasicMaterial:mi,Material:xr};return new t[e]}}class Ql{static decodeText(e){if(console.warn("THREE.LoaderUtils: decodeText() has been deprecated with r165 and will be removed with r175. Use TextDecoder instead."),typeof TextDecoder<"u")return new TextDecoder().decode(e);let t="";for(let n=0,i=e.length;n<i;n++)t+=String.fromCharCode(e[n]);try{return decodeURIComponent(escape(t))}catch{return t}}static extractUrlBase(e){const t=e.lastIndexOf("/");return t===-1?"./":e.slice(0,t+1)}static resolveURL(e,t){return typeof e!="string"||e===""?"":(/^https?:\/\//i.test(t)&&/^\//.test(e)&&(t=t.replace(/(^https?:\/\/[^\/]+).*/i,"$1")),/^(https?:)?\/\//i.test(e)||/^data:.*,.*$/i.test(e)||/^blob:.*$/i.test(e)?e:t+e)}}class zC extends Jt{constructor(){super(),this.isInstancedBufferGeometry=!0,this.type="InstancedBufferGeometry",this.instanceCount=1/0}copy(e){return super.copy(e),this.instanceCount=e.instanceCount,this}toJSON(){const e=super.toJSON();return e.instanceCount=this.instanceCount,e.isInstancedBufferGeometry=!0,e}}class HC extends gi{constructor(e){super(e)}load(e,t,n,i){const s=this,o=new Ss(s.manager);o.setPath(s.path),o.setRequestHeader(s.requestHeader),o.setWithCredentials(s.withCredentials),o.load(e,function(l){try{t(s.parse(JSON.parse(l)))}catch(u){i?i(u):console.error(u),s.manager.itemError(e)}},n,i)}parse(e){const t={},n={};function i(v,S){if(t[S]!==void 0)return t[S];const A=v.interleavedBuffers[S],M=s(v,A.buffer),T=Sd(A.type,M),I=new sm(T,A.stride);return I.uuid=A.uuid,t[S]=I,I}function s(v,S){if(n[S]!==void 0)return n[S];const A=v.arrayBuffers[S],M=new Uint32Array(A).buffer;return n[S]=M,M}const o=e.isInstancedBufferGeometry?new zC:new Jt,l=e.data.index;if(l!==void 0){const v=Sd(l.type,l.array);o.setIndex(new vn(v,1))}const u=e.data.attributes;for(const v in u){const S=u[v];let E;if(S.isInterleavedBufferAttribute){const A=i(e.data,S.data);E=new tc(A,S.itemSize,S.offset,S.normalized)}else{const A=Sd(S.type,S.array),M=S.isInstancedBufferAttribute?Ru:vn;E=new M(A,S.itemSize,S.normalized)}S.name!==void 0&&(E.name=S.name),S.usage!==void 0&&E.setUsage(S.usage),o.setAttribute(v,E)}const d=e.data.morphAttributes;if(d)for(const v in d){const S=d[v],E=[];for(let A=0,M=S.length;A<M;A++){const T=S[A];let I;if(T.isInterleavedBufferAttribute){const P=i(e.data,T.data);I=new tc(P,T.itemSize,T.offset,T.normalized)}else{const P=Sd(T.type,T.array);I=new vn(P,T.itemSize,T.normalized)}T.name!==void 0&&(I.name=T.name),E.push(I)}o.morphAttributes[v]=E}e.data.morphTargetsRelative&&(o.morphTargetsRelative=!0);const m=e.data.groups||e.data.drawcalls||e.data.offsets;if(m!==void 0)for(let v=0,S=m.length;v!==S;++v){const E=m[v];o.addGroup(E.start,E.count,E.materialIndex)}const y=e.data.boundingSphere;if(y!==void 0){const v=new $;y.center!==void 0&&v.fromArray(y.center),o.boundingSphere=new ei(v,y.radius)}return e.name&&(o.name=e.name),e.userData&&(o.userData=e.userData),o}}class h5 extends gi{constructor(e){super(e)}load(e,t,n,i){const s=this,o=this.path===""?Ql.extractUrlBase(e):this.path;this.resourcePath=this.resourcePath||o;const l=new Ss(this.manager);l.setPath(this.path),l.setRequestHeader(this.requestHeader),l.setWithCredentials(this.withCredentials),l.load(e,function(u){let d=null;try{d=JSON.parse(u)}catch(m){i!==void 0&&i(m),console.error("THREE:ObjectLoader: Can't parse "+e+".",m.message);return}const p=d.metadata;if(p===void 0||p.type===void 0||p.type.toLowerCase()==="geometry"){i!==void 0&&i(new Error("THREE.ObjectLoader: Can't load "+e)),console.error("THREE.ObjectLoader: Can't load "+e);return}s.parse(d,t)},n,i)}async loadAsync(e,t){const n=this,i=this.path===""?Ql.extractUrlBase(e):this.path;this.resourcePath=this.resourcePath||i;const s=new Ss(this.manager);s.setPath(this.path),s.setRequestHeader(this.requestHeader),s.setWithCredentials(this.withCredentials);const o=await s.loadAsync(e,t),l=JSON.parse(o),u=l.metadata;if(u===void 0||u.type===void 0||u.type.toLowerCase()==="geometry")throw new Error("THREE.ObjectLoader: Can't load "+e);return await n.parseAsync(l)}parse(e,t){const n=this.parseAnimations(e.animations),i=this.parseShapes(e.shapes),s=this.parseGeometries(e.geometries,i),o=this.parseImages(e.images,function(){t!==void 0&&t(d)}),l=this.parseTextures(e.textures,o),u=this.parseMaterials(e.materials,l),d=this.parseObject(e.object,s,u,l,n),p=this.parseSkeletons(e.skeletons,d);if(this.bindSkeletons(d,p),this.bindLightTargets(d),t!==void 0){let m=!1;for(const y in o)if(o[y].data instanceof HTMLImageElement){m=!0;break}m===!1&&t(d)}return d}async parseAsync(e){const t=this.parseAnimations(e.animations),n=this.parseShapes(e.shapes),i=this.parseGeometries(e.geometries,n),s=await this.parseImagesAsync(e.images),o=this.parseTextures(e.textures,s),l=this.parseMaterials(e.materials,o),u=this.parseObject(e.object,i,l,o,t),d=this.parseSkeletons(e.skeletons,u);return this.bindSkeletons(u,d),this.bindLightTargets(u),u}parseShapes(e){const t={};if(e!==void 0)for(let n=0,i=e.length;n<i;n++){const s=new Au().fromJSON(e[n]);t[s.uuid]=s}return t}parseSkeletons(e,t){const n={},i={};if(t.traverse(function(s){s.isBone&&(i[s.uuid]=s)}),e!==void 0)for(let s=0,o=e.length;s<o;s++){const l=new om().fromJSON(e[s],i);n[l.uuid]=l}return n}parseGeometries(e,t){const n={};if(e!==void 0){const i=new HC;for(let s=0,o=e.length;s<o;s++){let l;const u=e[s];switch(u.type){case"BufferGeometry":case"InstancedBufferGeometry":l=i.parse(u);break;default:u.type in Gw?l=Gw[u.type].fromJSON(u,t):console.warn(`THREE.ObjectLoader: Unsupported geometry type "${u.type}"`)}l.uuid=u.uuid,u.name!==void 0&&(l.name=u.name),u.userData!==void 0&&(l.userData=u.userData),n[u.uuid]=l}}return n}parseMaterials(e,t){const n={},i={};if(e!==void 0){const s=new u1;s.setTextures(t);for(let o=0,l=e.length;o<l;o++){const u=e[o];n[u.uuid]===void 0&&(n[u.uuid]=s.parse(u)),i[u.uuid]=n[u.uuid]}}return i}parseAnimations(e){const t={};if(e!==void 0)for(let n=0;n<e.length;n++){const i=e[n],s=Ud.parse(i);t[s.uuid]=s}return t}parseImages(e,t){const n=this,i={};let s;function o(u){return n.manager.itemStart(u),s.load(u,function(){n.manager.itemEnd(u)},void 0,function(){n.manager.itemError(u),n.manager.itemEnd(u)})}function l(u){if(typeof u=="string"){const d=u,p=/^(\/\/)|([a-z]+:(\/\/)?)/i.test(d)?d:n.resourcePath+d;return o(p)}else return u.data?{data:Sd(u.type,u.data),width:u.width,height:u.height}:null}if(e!==void 0&&e.length>0){const u=new vM(t);s=new $p(u),s.setCrossOrigin(this.crossOrigin);for(let d=0,p=e.length;d<p;d++){const m=e[d],y=m.url;if(Array.isArray(y)){const v=[];for(let S=0,E=y.length;S<E;S++){const A=y[S],M=l(A);M!==null&&(M instanceof HTMLImageElement?v.push(M):v.push(new $o(M.data,M.width,M.height)))}i[m.uuid]=new gu(v)}else{const v=l(m.url);i[m.uuid]=new gu(v)}}}return i}async parseImagesAsync(e){const t=this,n={};let i;async function s(o){if(typeof o=="string"){const l=o,u=/^(\/\/)|([a-z]+:(\/\/)?)/i.test(l)?l:t.resourcePath+l;return await i.loadAsync(u)}else return o.data?{data:Sd(o.type,o.data),width:o.width,height:o.height}:null}if(e!==void 0&&e.length>0){i=new $p(this.manager),i.setCrossOrigin(this.crossOrigin);for(let o=0,l=e.length;o<l;o++){const u=e[o],d=u.url;if(Array.isArray(d)){const p=[];for(let m=0,y=d.length;m<y;m++){const v=d[m],S=await s(v);S!==null&&(S instanceof HTMLImageElement?p.push(S):p.push(new $o(S.data,S.width,S.height)))}n[u.uuid]=new gu(p)}else{const p=await s(u.url);n[u.uuid]=new gu(p)}}}return n}parseTextures(e,t){function n(s,o){return typeof s=="number"?s:(console.warn("THREE.ObjectLoader.parseTexture: Constant should be in numeric form.",s),o[s])}const i={};if(e!==void 0)for(let s=0,o=e.length;s<o;s++){const l=e[s];l.image===void 0&&console.warn('THREE.ObjectLoader: No "image" specified for',l.uuid),t[l.image]===void 0&&console.warn("THREE.ObjectLoader: Undefined image",l.image);const u=t[l.image],d=u.data;let p;Array.isArray(d)?(p=new im,d.length===6&&(p.needsUpdate=!0)):(d&&d.data?p=new $o:p=new Gn,d&&(p.needsUpdate=!0)),p.source=u,p.uuid=l.uuid,l.name!==void 0&&(p.name=l.name),l.mapping!==void 0&&(p.mapping=n(l.mapping,d5)),l.channel!==void 0&&(p.channel=l.channel),l.offset!==void 0&&p.offset.fromArray(l.offset),l.repeat!==void 0&&p.repeat.fromArray(l.repeat),l.center!==void 0&&p.center.fromArray(l.center),l.rotation!==void 0&&(p.rotation=l.rotation),l.wrap!==void 0&&(p.wrapS=n(l.wrap[0],Jw),p.wrapT=n(l.wrap[1],Jw)),l.format!==void 0&&(p.format=l.format),l.internalFormat!==void 0&&(p.internalFormat=l.internalFormat),l.type!==void 0&&(p.type=l.type),l.colorSpace!==void 0&&(p.colorSpace=l.colorSpace),l.minFilter!==void 0&&(p.minFilter=n(l.minFilter,$w)),l.magFilter!==void 0&&(p.magFilter=n(l.magFilter,$w)),l.anisotropy!==void 0&&(p.anisotropy=l.anisotropy),l.flipY!==void 0&&(p.flipY=l.flipY),l.generateMipmaps!==void 0&&(p.generateMipmaps=l.generateMipmaps),l.premultiplyAlpha!==void 0&&(p.premultiplyAlpha=l.premultiplyAlpha),l.unpackAlignment!==void 0&&(p.unpackAlignment=l.unpackAlignment),l.compareFunction!==void 0&&(p.compareFunction=l.compareFunction),l.userData!==void 0&&(p.userData=l.userData),i[l.uuid]=p}return i}parseObject(e,t,n,i,s){let o;function l(y){return t[y]===void 0&&console.warn("THREE.ObjectLoader: Undefined geometry",y),t[y]}function u(y){if(y!==void 0){if(Array.isArray(y)){const v=[];for(let S=0,E=y.length;S<E;S++){const A=y[S];n[A]===void 0&&console.warn("THREE.ObjectLoader: Undefined material",A),v.push(n[A])}return v}return n[y]===void 0&&console.warn("THREE.ObjectLoader: Undefined material",y),n[y]}}function d(y){return i[y]===void 0&&console.warn("THREE.ObjectLoader: Undefined texture",y),i[y]}let p,m;switch(e.type){case"Scene":o=new Gp,e.background!==void 0&&(Number.isInteger(e.background)?o.background=new tt(e.background):o.background=d(e.background)),e.environment!==void 0&&(o.environment=d(e.environment)),e.fog!==void 0&&(e.fog.type==="Fog"?o.fog=new Wy(e.fog.color,e.fog.near,e.fog.far):e.fog.type==="FogExp2"&&(o.fog=new Vy(e.fog.color,e.fog.density)),e.fog.name!==""&&(o.fog.name=e.fog.name)),e.backgroundBlurriness!==void 0&&(o.backgroundBlurriness=e.backgroundBlurriness),e.backgroundIntensity!==void 0&&(o.backgroundIntensity=e.backgroundIntensity),e.backgroundRotation!==void 0&&o.backgroundRotation.fromArray(e.backgroundRotation),e.environmentIntensity!==void 0&&(o.environmentIntensity=e.environmentIntensity),e.environmentRotation!==void 0&&o.environmentRotation.fromArray(e.environmentRotation);break;case"PerspectiveCamera":o=new _r(e.fov,e.aspect,e.near,e.far),e.focus!==void 0&&(o.focus=e.focus),e.zoom!==void 0&&(o.zoom=e.zoom),e.filmGauge!==void 0&&(o.filmGauge=e.filmGauge),e.filmOffset!==void 0&&(o.filmOffset=e.filmOffset),e.view!==void 0&&(o.view=Object.assign({},e.view));break;case"OrthographicCamera":o=new Kd(e.left,e.right,e.top,e.bottom,e.near,e.far),e.zoom!==void 0&&(o.zoom=e.zoom),e.view!==void 0&&(o.view=Object.assign({},e.view));break;case"AmbientLight":o=new FC(e.color,e.intensity);break;case"DirectionalLight":o=new wM(e.color,e.intensity),o.target=e.target||"";break;case"PointLight":o=new SM(e.color,e.intensity,e.distance,e.decay);break;case"RectAreaLight":o=new kC(e.color,e.intensity,e.width,e.height);break;case"SpotLight":o=new MM(e.color,e.intensity,e.distance,e.angle,e.penumbra,e.decay),o.target=e.target||"";break;case"HemisphereLight":o=new NC(e.color,e.groundColor,e.intensity);break;case"LightProbe":o=new jC().fromJSON(e);break;case"SkinnedMesh":p=l(e.geometry),m=u(e.material),o=new iM(p,m),e.bindMode!==void 0&&(o.bindMode=e.bindMode),e.bindMatrix!==void 0&&o.bindMatrix.fromArray(e.bindMatrix),e.skeleton!==void 0&&(o.skeleton=e.skeleton);break;case"Mesh":p=l(e.geometry),m=u(e.material),o=new hr(p,m);break;case"InstancedMesh":p=l(e.geometry),m=u(e.material);const y=e.count,v=e.instanceMatrix,S=e.instanceColor;o=new sM(p,m,y),o.instanceMatrix=new Ru(new Float32Array(v.array),16),S!==void 0&&(o.instanceColor=new Ru(new Float32Array(S.array),S.itemSize));break;case"BatchedMesh":p=l(e.geometry),m=u(e.material),o=new hC(e.maxInstanceCount,e.maxVertexCount,e.maxIndexCount,m),o.geometry=p,o.perObjectFrustumCulled=e.perObjectFrustumCulled,o.sortObjects=e.sortObjects,o._drawRanges=e.drawRanges,o._reservedRanges=e.reservedRanges,o._visibility=e.visibility,o._active=e.active,o._bounds=e.bounds.map(E=>{const A=new pi;A.min.fromArray(E.boxMin),A.max.fromArray(E.boxMax);const M=new ei;return M.radius=E.sphereRadius,M.center.fromArray(E.sphereCenter),{boxInitialized:E.boxInitialized,box:A,sphereInitialized:E.sphereInitialized,sphere:M}}),o._maxInstanceCount=e.maxInstanceCount,o._maxVertexCount=e.maxVertexCount,o._maxIndexCount=e.maxIndexCount,o._geometryInitialized=e.geometryInitialized,o._geometryCount=e.geometryCount,o._matricesTexture=d(e.matricesTexture.uuid),e.colorsTexture!==void 0&&(o._colorsTexture=d(e.colorsTexture.uuid));break;case"LOD":o=new uC;break;case"Line":o=new nl(l(e.geometry),u(e.material));break;case"LineLoop":o=new oM(l(e.geometry),u(e.material));break;case"LineSegments":o=new bo(l(e.geometry),u(e.material));break;case"PointCloud":case"Points":o=new Jy(l(e.geometry),u(e.material));break;case"Sprite":o=new cC(u(e.material));break;case"Group":o=new $a;break;case"Bone":o=new Xy;break;default:o=new fn}if(o.uuid=e.uuid,e.name!==void 0&&(o.name=e.name),e.matrix!==void 0?(o.matrix.fromArray(e.matrix),e.matrixAutoUpdate!==void 0&&(o.matrixAutoUpdate=e.matrixAutoUpdate),o.matrixAutoUpdate&&o.matrix.decompose(o.position,o.quaternion,o.scale)):(e.position!==void 0&&o.position.fromArray(e.position),e.rotation!==void 0&&o.rotation.fromArray(e.rotation),e.quaternion!==void 0&&o.quaternion.fromArray(e.quaternion),e.scale!==void 0&&o.scale.fromArray(e.scale)),e.up!==void 0&&o.up.fromArray(e.up),e.castShadow!==void 0&&(o.castShadow=e.castShadow),e.receiveShadow!==void 0&&(o.receiveShadow=e.receiveShadow),e.shadow&&(e.shadow.intensity!==void 0&&(o.shadow.intensity=e.shadow.intensity),e.shadow.bias!==void 0&&(o.shadow.bias=e.shadow.bias),e.shadow.normalBias!==void 0&&(o.shadow.normalBias=e.shadow.normalBias),e.shadow.radius!==void 0&&(o.shadow.radius=e.shadow.radius),e.shadow.mapSize!==void 0&&o.shadow.mapSize.fromArray(e.shadow.mapSize),e.shadow.camera!==void 0&&(o.shadow.camera=this.parseObject(e.shadow.camera))),e.visible!==void 0&&(o.visible=e.visible),e.frustumCulled!==void 0&&(o.frustumCulled=e.frustumCulled),e.renderOrder!==void 0&&(o.renderOrder=e.renderOrder),e.userData!==void 0&&(o.userData=e.userData),e.layers!==void 0&&(o.layers.mask=e.layers),e.children!==void 0){const y=e.children;for(let v=0;v<y.length;v++)o.add(this.parseObject(y[v],t,n,i,s))}if(e.animations!==void 0){const y=e.animations;for(let v=0;v<y.length;v++){const S=y[v];o.animations.push(s[S])}}if(e.type==="LOD"){e.autoUpdate!==void 0&&(o.autoUpdate=e.autoUpdate);const y=e.levels;for(let v=0;v<y.length;v++){const S=y[v],E=o.getObjectByProperty("uuid",S.object);E!==void 0&&o.addLevel(E,S.distance,S.hysteresis)}}return o}bindSkeletons(e,t){Object.keys(t).length!==0&&e.traverse(function(n){if(n.isSkinnedMesh===!0&&n.skeleton!==void 0){const i=t[n.skeleton];i===void 0?console.warn("THREE.ObjectLoader: No skeleton found with UUID:",n.skeleton):n.bind(i,n.bindMatrix)}})}bindLightTargets(e){e.traverse(function(t){if(t.isDirectionalLight||t.isSpotLight){const n=t.target,i=e.getObjectByProperty("uuid",n);i!==void 0?t.target=i:t.target=new fn}})}}const d5={UVMapping:Dy,CubeReflectionMapping:el,CubeRefractionMapping:Zl,EquirectangularReflectionMapping:Np,EquirectangularRefractionMapping:Fp,CubeUVReflectionMapping:Vd},Jw={RepeatWrapping:ec,ClampToEdgeWrapping:ys,MirroredRepeatWrapping:Od},$w={NearestFilter:zr,NearestMipmapNearestFilter:Ly,NearestMipmapLinearFilter:fu,LinearFilter:Zn,LinearMipmapNearestFilter:Cd,LinearMipmapLinearFilter:js};class GC extends gi{constructor(e){super(e),this.isImageBitmapLoader=!0,typeof createImageBitmap>"u"&&console.warn("THREE.ImageBitmapLoader: createImageBitmap() not supported."),typeof fetch>"u"&&console.warn("THREE.ImageBitmapLoader: fetch() not supported."),this.options={premultiplyAlpha:"none"}}setOptions(e){return this.options=e,this}load(e,t,n,i){e===void 0&&(e=""),this.path!==void 0&&(e=this.path+e),e=this.manager.resolveURL(e);const s=this,o=Ka.get(e);if(o!==void 0){if(s.manager.itemStart(e),o.then){o.then(d=>{t&&t(d),s.manager.itemEnd(e)}).catch(d=>{i&&i(d)});return}return setTimeout(function(){t&&t(o),s.manager.itemEnd(e)},0),o}const l={};l.credentials=this.crossOrigin==="anonymous"?"same-origin":"include",l.headers=this.requestHeader;const u=fetch(e,l).then(function(d){return d.blob()}).then(function(d){return createImageBitmap(d,Object.assign(s.options,{colorSpaceConversion:"none"}))}).then(function(d){return Ka.add(e,d),t&&t(d),s.manager.itemEnd(e),d}).catch(function(d){i&&i(d),Ka.remove(e),s.manager.itemError(e),s.manager.itemEnd(e)});Ka.add(e,u),s.manager.itemStart(e)}}let q0;class AM{static getContext(){return q0===void 0&&(q0=new(window.AudioContext||window.webkitAudioContext)),q0}static setContext(e){q0=e}}class f5 extends gi{constructor(e){super(e)}load(e,t,n,i){const s=this,o=new Ss(this.manager);o.setResponseType("arraybuffer"),o.setPath(this.path),o.setRequestHeader(this.requestHeader),o.setWithCredentials(this.withCredentials),o.load(e,function(u){try{const d=u.slice(0);AM.getContext().decodeAudioData(d,function(m){t(m)}).catch(l)}catch(d){l(d)}},n,i);function l(u){i?i(u):console.error(u),s.manager.itemError(e)}}}const Kw=new Nt,Yw=new Nt,nu=new Nt;class p5{constructor(){this.type="StereoCamera",this.aspect=1,this.eyeSep=.064,this.cameraL=new _r,this.cameraL.layers.enable(1),this.cameraL.matrixAutoUpdate=!1,this.cameraR=new _r,this.cameraR.layers.enable(2),this.cameraR.matrixAutoUpdate=!1,this._cache={focus:null,fov:null,aspect:null,near:null,far:null,zoom:null,eyeSep:null}}update(e){const t=this._cache;if(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){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,nu.copy(e.projectionMatrix);const i=t.eyeSep/2,s=i*t.near/t.focus,o=t.near*Math.tan(Su*t.fov*.5)/t.zoom;let l,u;Yw.elements[12]=-i,Kw.elements[12]=i,l=-o*t.aspect+s,u=o*t.aspect+s,nu.elements[0]=2*t.near/(u-l),nu.elements[8]=(u+l)/(u-l),this.cameraL.projectionMatrix.copy(nu),l=-o*t.aspect-s,u=o*t.aspect-s,nu.elements[0]=2*t.near/(u-l),nu.elements[8]=(u+l)/(u-l),this.cameraR.projectionMatrix.copy(nu)}this.cameraL.matrixWorld.copy(e.matrixWorld).multiply(Yw),this.cameraR.matrixWorld.copy(e.matrixWorld).multiply(Kw)}}class VC extends _r{constructor(e=[]){super(),this.isArrayCamera=!0,this.cameras=e}}class EM{constructor(e=!0){this.autoStart=e,this.startTime=0,this.oldTime=0,this.elapsedTime=0,this.running=!1}start(){this.startTime=qw(),this.oldTime=this.startTime,this.elapsedTime=0,this.running=!0}stop(){this.getElapsedTime(),this.running=!1,this.autoStart=!1}getElapsedTime(){return this.getDelta(),this.elapsedTime}getDelta(){let e=0;if(this.autoStart&&!this.running)return this.start(),0;if(this.running){const t=qw();e=(t-this.oldTime)/1e3,this.oldTime=t,this.elapsedTime+=e}return e}}function qw(){return performance.now()}const ru=new $,Qw=new fi,m5=new $,iu=new $;class g5 extends fn{constructor(){super(),this.type="AudioListener",this.context=AM.getContext(),this.gain=this.context.createGain(),this.gain.connect(this.context.destination),this.filter=null,this.timeDelta=0,this._clock=new EM}getInput(){return this.gain}removeFilter(){return this.filter!==null&&(this.gain.disconnect(this.filter),this.filter.disconnect(this.context.destination),this.gain.connect(this.context.destination),this.filter=null),this}getFilter(){return this.filter}setFilter(e){return this.filter!==null?(this.gain.disconnect(this.filter),this.filter.disconnect(this.context.destination)):this.gain.disconnect(this.context.destination),this.filter=e,this.gain.connect(this.filter),this.filter.connect(this.context.destination),this}getMasterVolume(){return this.gain.gain.value}setMasterVolume(e){return this.gain.gain.setTargetAtTime(e,this.context.currentTime,.01),this}updateMatrixWorld(e){super.updateMatrixWorld(e);const t=this.context.listener,n=this.up;if(this.timeDelta=this._clock.getDelta(),this.matrixWorld.decompose(ru,Qw,m5),iu.set(0,0,-1).applyQuaternion(Qw),t.positionX){const i=this.context.currentTime+this.timeDelta;t.positionX.linearRampToValueAtTime(ru.x,i),t.positionY.linearRampToValueAtTime(ru.y,i),t.positionZ.linearRampToValueAtTime(ru.z,i),t.forwardX.linearRampToValueAtTime(iu.x,i),t.forwardY.linearRampToValueAtTime(iu.y,i),t.forwardZ.linearRampToValueAtTime(iu.z,i),t.upX.linearRampToValueAtTime(n.x,i),t.upY.linearRampToValueAtTime(n.y,i),t.upZ.linearRampToValueAtTime(n.z,i)}else t.setPosition(ru.x,ru.y,ru.z),t.setOrientation(iu.x,iu.y,iu.z,n.x,n.y,n.z)}}class WC extends fn{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=!1,this.buffer=null,this.detune=0,this.loop=!1,this.loopStart=0,this.loopEnd=0,this.offset=0,this.duration=void 0,this.playbackRate=1,this.isPlaying=!1,this.hasPlaybackControl=!0,this.source=null,this.sourceType="empty",this._startedAt=0,this._progress=0,this._connected=!1,this.filters=[]}getOutput(){return this.gain}setNodeSource(e){return this.hasPlaybackControl=!1,this.sourceType="audioNode",this.source=e,this.connect(),this}setMediaElementSource(e){return this.hasPlaybackControl=!1,this.sourceType="mediaNode",this.source=this.context.createMediaElementSource(e),this.connect(),this}setMediaStreamSource(e){return this.hasPlaybackControl=!1,this.sourceType="mediaStreamNode",this.source=this.context.createMediaStreamSource(e),this.connect(),this}setBuffer(e){return this.buffer=e,this.sourceType="buffer",this.autoplay&&this.play(),this}play(e=0){if(this.isPlaying===!0){console.warn("THREE.Audio: Audio is already playing.");return}if(this.hasPlaybackControl===!1){console.warn("THREE.Audio: this Audio has no playback control.");return}this._startedAt=this.context.currentTime+e;const t=this.context.createBufferSource();return 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=!0,this.source=t,this.setDetune(this.detune),this.setPlaybackRate(this.playbackRate),this.connect()}pause(){if(this.hasPlaybackControl===!1){console.warn("THREE.Audio: this Audio has no playback control.");return}return this.isPlaying===!0&&(this._progress+=Math.max(this.context.currentTime-this._startedAt,0)*this.playbackRate,this.loop===!0&&(this._progress=this._progress%(this.duration||this.buffer.duration)),this.source.stop(),this.source.onended=null,this.isPlaying=!1),this}stop(e=0){if(this.hasPlaybackControl===!1){console.warn("THREE.Audio: this Audio has no playback control.");return}return this._progress=0,this.source!==null&&(this.source.stop(this.context.currentTime+e),this.source.onended=null),this.isPlaying=!1,this}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());return this._connected=!0,this}disconnect(){if(this._connected!==!1){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());return this._connected=!1,this}}getFilters(){return this.filters}setFilters(e){return e||(e=[]),this._connected===!0?(this.disconnect(),this.filters=e.slice(),this.connect()):this.filters=e.slice(),this}setDetune(e){return this.detune=e,this.isPlaying===!0&&this.source.detune!==void 0&&this.source.detune.setTargetAtTime(this.detune,this.context.currentTime,.01),this}getDetune(){return this.detune}getFilter(){return this.getFilters()[0]}setFilter(e){return this.setFilters(e?[e]:[])}setPlaybackRate(e){if(this.hasPlaybackControl===!1){console.warn("THREE.Audio: this Audio has no playback control.");return}return this.playbackRate=e,this.isPlaying===!0&&this.source.playbackRate.setTargetAtTime(this.playbackRate,this.context.currentTime,.01),this}getPlaybackRate(){return this.playbackRate}onEnded(){this.isPlaying=!1,this._progress=0}getLoop(){return this.hasPlaybackControl===!1?(console.warn("THREE.Audio: this Audio has no playback control."),!1):this.loop}setLoop(e){if(this.hasPlaybackControl===!1){console.warn("THREE.Audio: this Audio has no playback control.");return}return this.loop=e,this.isPlaying===!0&&(this.source.loop=this.loop),this}setLoopStart(e){return this.loopStart=e,this}setLoopEnd(e){return this.loopEnd=e,this}getVolume(){return this.gain.gain.value}setVolume(e){return this.gain.gain.setTargetAtTime(e,this.context.currentTime,.01),this}copy(e,t){return super.copy(e,t),e.sourceType!=="buffer"?(console.warn("THREE.Audio: Audio source type cannot be copied."),this):(this.autoplay=e.autoplay,this.buffer=e.buffer,this.detune=e.detune,this.loop=e.loop,this.loopStart=e.loopStart,this.loopEnd=e.loopEnd,this.offset=e.offset,this.duration=e.duration,this.playbackRate=e.playbackRate,this.hasPlaybackControl=e.hasPlaybackControl,this.sourceType=e.sourceType,this.filters=e.filters.slice(),this)}clone(e){return new this.constructor(this.listener).copy(this,e)}}const su=new $,Zw=new fi,y5=new $,ou=new $;class v5 extends WC{constructor(e){super(e),this.panner=this.context.createPanner(),this.panner.panningModel="HRTF",this.panner.connect(this.gain)}connect(){super.connect(),this.panner.connect(this.gain)}disconnect(){super.disconnect(),this.panner.disconnect(this.gain)}getOutput(){return this.panner}getRefDistance(){return this.panner.refDistance}setRefDistance(e){return this.panner.refDistance=e,this}getRolloffFactor(){return this.panner.rolloffFactor}setRolloffFactor(e){return this.panner.rolloffFactor=e,this}getDistanceModel(){return this.panner.distanceModel}setDistanceModel(e){return this.panner.distanceModel=e,this}getMaxDistance(){return this.panner.maxDistance}setMaxDistance(e){return this.panner.maxDistance=e,this}setDirectionalCone(e,t,n){return this.panner.coneInnerAngle=e,this.panner.coneOuterAngle=t,this.panner.coneOuterGain=n,this}updateMatrixWorld(e){if(super.updateMatrixWorld(e),this.hasPlaybackControl===!0&&this.isPlaying===!1)return;this.matrixWorld.decompose(su,Zw,y5),ou.set(0,0,1).applyQuaternion(Zw);const t=this.panner;if(t.positionX){const n=this.context.currentTime+this.listener.timeDelta;t.positionX.linearRampToValueAtTime(su.x,n),t.positionY.linearRampToValueAtTime(su.y,n),t.positionZ.linearRampToValueAtTime(su.z,n),t.orientationX.linearRampToValueAtTime(ou.x,n),t.orientationY.linearRampToValueAtTime(ou.y,n),t.orientationZ.linearRampToValueAtTime(ou.z,n)}else t.setPosition(su.x,su.y,su.z),t.setOrientation(ou.x,ou.y,ou.z)}}class _5{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(){return this.analyser.getByteFrequencyData(this.data),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 XC{constructor(e,t,n){this.binding=e,this.valueSize=n;let i,s,o;switch(t){case"quaternion":i=this._slerp,s=this._slerpAdditive,o=this._setAdditiveIdentityQuaternion,this.buffer=new Float64Array(n*6),this._workIndex=5;break;case"string":case"bool":i=this._select,s=this._select,o=this._setAdditiveIdentityOther,this.buffer=new Array(n*5);break;default:i=this._lerp,s=this._lerpAdditive,o=this._setAdditiveIdentityNumeric,this.buffer=new Float64Array(n*5)}this._mixBufferRegion=i,this._mixBufferRegionAdditive=s,this._setIdentity=o,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,i=this.valueSize,s=e*i+i;let o=this.cumulativeWeight;if(o===0){for(let l=0;l!==i;++l)n[s+l]=n[l];o=t}else{o+=t;const l=t/o;this._mixBufferRegion(n,s,0,l,i)}this.cumulativeWeight=o}accumulateAdditive(e){const t=this.buffer,n=this.valueSize,i=n*this._addIndex;this.cumulativeWeightAdditive===0&&this._setIdentity(),this._mixBufferRegionAdditive(t,i,0,e,n),this.cumulativeWeightAdditive+=e}apply(e){const t=this.valueSize,n=this.buffer,i=e*t+t,s=this.cumulativeWeight,o=this.cumulativeWeightAdditive,l=this.binding;if(this.cumulativeWeight=0,this.cumulativeWeightAdditive=0,s<1){const u=t*this._origIndex;this._mixBufferRegion(n,i,u,1-s,t)}o>0&&this._mixBufferRegionAdditive(n,i,this._addIndex*t,1,t);for(let u=t,d=t+t;u!==d;++u)if(n[u]!==n[u+t]){l.setValue(n,i);break}}saveOriginalState(){const e=this.binding,t=this.buffer,n=this.valueSize,i=n*this._origIndex;e.getValue(t,i);for(let s=n,o=i;s!==o;++s)t[s]=t[i+s%n];this._setIdentity(),this.cumulativeWeight=0,this.cumulativeWeightAdditive=0}restoreOriginalState(){const e=this.valueSize*3;this.binding.setValue(this.buffer,e)}_setAdditiveIdentityNumeric(){const e=this._addIndex*this.valueSize,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,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,i,s){if(i>=.5)for(let o=0;o!==s;++o)e[t+o]=e[n+o]}_slerp(e,t,n,i){fi.slerpFlat(e,t,e,t,e,n,i)}_slerpAdditive(e,t,n,i,s){const o=this._workIndex*s;fi.multiplyQuaternionsFlat(e,o,e,t,e,n),fi.slerpFlat(e,t,e,t,e,o,i)}_lerp(e,t,n,i,s){const o=1-i;for(let l=0;l!==s;++l){const u=t+l;e[u]=e[u]*o+e[n+l]*i}}_lerpAdditive(e,t,n,i,s){for(let o=0;o!==s;++o){const l=t+o;e[l]=e[l]+e[n+o]*i}}}const bM="\\[\\]\\.:\\/",x5=new RegExp("["+bM+"]","g"),CM="[^"+bM+"]",M5="[^"+bM.replace("\\.","")+"]",S5=/((?:WC+[\/:])*)/.source.replace("WC",CM),w5=/(WCOD+)?/.source.replace("WCOD",M5),A5=/(?:\.(WC+)(?:\[(.+)\])?)?/.source.replace("WC",CM),E5=/\.(WC+)(?:\[(.+)\])?/.source.replace("WC",CM),b5=new RegExp("^"+S5+w5+A5+E5+"$"),C5=["material","materials","bones","map"];class T5{constructor(e,t,n){const i=n||gn.parseTrackName(t);this._targetGroup=e,this._bindings=e.subscribe_(t,i)}getValue(e,t){this.bind();const n=this._targetGroup.nCachedObjects_,i=this._bindings[n];i!==void 0&&i.getValue(e,t)}setValue(e,t){const n=this._bindings;for(let i=this._targetGroup.nCachedObjects_,s=n.length;i!==s;++i)n[i].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 gn{constructor(e,t,n){this.path=t,this.parsedPath=n||gn.parseTrackName(t),this.node=gn.findNode(e,this.parsedPath.nodeName),this.rootNode=e,this.getValue=this._getValue_unbound,this.setValue=this._setValue_unbound}static create(e,t,n){return e&&e.isAnimationObjectGroup?new gn.Composite(e,t,n):new gn(e,t,n)}static sanitizeNodeName(e){return e.replace(/\s/g,"_").replace(x5,"")}static parseTrackName(e){const t=b5.exec(e);if(t===null)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]},i=n.nodeName&&n.nodeName.lastIndexOf(".");if(i!==void 0&&i!==-1){const s=n.nodeName.substring(i+1);C5.indexOf(s)!==-1&&(n.nodeName=n.nodeName.substring(0,i),n.objectName=s)}if(n.propertyName===null||n.propertyName.length===0)throw new Error("PropertyBinding: can not parse propertyName from trackName: "+e);return n}static findNode(e,t){if(t===void 0||t===""||t==="."||t===-1||t===e.name||t===e.uuid)return e;if(e.skeleton){const n=e.skeleton.getBoneByName(t);if(n!==void 0)return n}if(e.children){const n=function(s){for(let o=0;o<s.length;o++){const l=s[o];if(l.name===t||l.uuid===t)return l;const u=n(l.children);if(u)return u}return null},i=n(e.children);if(i)return i}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 i=0,s=n.length;i!==s;++i)e[t++]=n[i]}_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=!0}_setValue_direct_setMatrixWorldNeedsUpdate(e,t){this.targetObject[this.propertyName]=e[t],this.targetObject.matrixWorldNeedsUpdate=!0}_setValue_array(e,t){const n=this.resolvedProperty;for(let i=0,s=n.length;i!==s;++i)n[i]=e[t++]}_setValue_array_setNeedsUpdate(e,t){const n=this.resolvedProperty;for(let i=0,s=n.length;i!==s;++i)n[i]=e[t++];this.targetObject.needsUpdate=!0}_setValue_array_setMatrixWorldNeedsUpdate(e,t){const n=this.resolvedProperty;for(let i=0,s=n.length;i!==s;++i)n[i]=e[t++];this.targetObject.matrixWorldNeedsUpdate=!0}_setValue_arrayElement(e,t){this.resolvedProperty[this.propertyIndex]=e[t]}_setValue_arrayElement_setNeedsUpdate(e,t){this.resolvedProperty[this.propertyIndex]=e[t],this.targetObject.needsUpdate=!0}_setValue_arrayElement_setMatrixWorldNeedsUpdate(e,t){this.resolvedProperty[this.propertyIndex]=e[t],this.targetObject.matrixWorldNeedsUpdate=!0}_setValue_fromArray(e,t){this.resolvedProperty.fromArray(e,t)}_setValue_fromArray_setNeedsUpdate(e,t){this.resolvedProperty.fromArray(e,t),this.targetObject.needsUpdate=!0}_setValue_fromArray_setMatrixWorldNeedsUpdate(e,t){this.resolvedProperty.fromArray(e,t),this.targetObject.matrixWorldNeedsUpdate=!0}_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,n=t.objectName,i=t.propertyName;let s=t.propertyIndex;if(e||(e=gn.findNode(this.rootNode,t.nodeName),this.node=e),this.getValue=this._getValue_unavailable,this.setValue=this._setValue_unavailable,!e){console.warn("THREE.PropertyBinding: No target node found for track: "+this.path+".");return}if(n){let d=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 p=0;p<e.length;p++)if(e[p].name===d){d=p;break}break;case"map":if("map"in e){e=e.map;break}if(!e.material){console.error("THREE.PropertyBinding: Can not bind to material as node does not have a material.",this);return}if(!e.material.map){console.error("THREE.PropertyBinding: Can not bind to material.map as node.material does not have a map.",this);return}e=e.material.map;break;default:if(e[n]===void 0){console.error("THREE.PropertyBinding: Can not bind to objectName of node undefined.",this);return}e=e[n]}if(d!==void 0){if(e[d]===void 0){console.error("THREE.PropertyBinding: Trying to bind to objectIndex of objectName, but is undefined.",this,e);return}e=e[d]}}const o=e[i];if(o===void 0){const d=t.nodeName;console.error("THREE.PropertyBinding: Trying to update property for track: "+d+"."+i+" but it wasn't found.",e);return}let l=this.Versioning.None;this.targetObject=e,e.needsUpdate!==void 0?l=this.Versioning.NeedsUpdate:e.matrixWorldNeedsUpdate!==void 0&&(l=this.Versioning.MatrixWorldNeedsUpdate);let u=this.BindingType.Direct;if(s!==void 0){if(i==="morphTargetInfluences"){if(!e.geometry){console.error("THREE.PropertyBinding: Can not bind to morphTargetInfluences because node does not have a geometry.",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}e.morphTargetDictionary[s]!==void 0&&(s=e.morphTargetDictionary[s])}u=this.BindingType.ArrayElement,this.resolvedProperty=o,this.propertyIndex=s}else o.fromArray!==void 0&&o.toArray!==void 0?(u=this.BindingType.HasFromToArray,this.resolvedProperty=o):Array.isArray(o)?(u=this.BindingType.EntireArray,this.resolvedProperty=o):this.propertyName=i;this.getValue=this.GetterByBindingType[u],this.setValue=this.SetterByBindingTypeAndVersioning[u][l]}unbind(){this.node=null,this.getValue=this._getValue_unbound,this.setValue=this._setValue_unbound}}gn.Composite=T5;gn.prototype.BindingType={Direct:0,EntireArray:1,ArrayElement:2,HasFromToArray:3};gn.prototype.Versioning={None:0,NeedsUpdate:1,MatrixWorldNeedsUpdate:2};gn.prototype.GetterByBindingType=[gn.prototype._getValue_direct,gn.prototype._getValue_array,gn.prototype._getValue_arrayElement,gn.prototype._getValue_toArray];gn.prototype.SetterByBindingTypeAndVersioning=[[gn.prototype._setValue_direct,gn.prototype._setValue_direct_setNeedsUpdate,gn.prototype._setValue_direct_setMatrixWorldNeedsUpdate],[gn.prototype._setValue_array,gn.prototype._setValue_array_setNeedsUpdate,gn.prototype._setValue_array_setMatrixWorldNeedsUpdate],[gn.prototype._setValue_arrayElement,gn.prototype._setValue_arrayElement_setNeedsUpdate,gn.prototype._setValue_arrayElement_setMatrixWorldNeedsUpdate],[gn.prototype._setValue_fromArray,gn.prototype._setValue_fromArray_setNeedsUpdate,gn.prototype._setValue_fromArray_setMatrixWorldNeedsUpdate]];class I5{constructor(){this.isAnimationObjectGroup=!0,this.uuid=_s(),this._objects=Array.prototype.slice.call(arguments),this.nCachedObjects_=0;const e={};this._indicesByUUID=e;for(let n=0,i=arguments.length;n!==i;++n)e[arguments[n].uuid]=n;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,i=this._parsedPaths,s=this._bindings,o=s.length;let l,u=e.length,d=this.nCachedObjects_;for(let p=0,m=arguments.length;p!==m;++p){const y=arguments[p],v=y.uuid;let S=t[v];if(S===void 0){S=u++,t[v]=S,e.push(y);for(let E=0,A=o;E!==A;++E)s[E].push(new gn(y,n[E],i[E]))}else if(S<d){l=e[S];const E=--d,A=e[E];t[A.uuid]=S,e[S]=A,t[v]=E,e[E]=y;for(let M=0,T=o;M!==T;++M){const I=s[M],P=I[E];let k=I[S];I[S]=P,k===void 0&&(k=new gn(y,n[M],i[M])),I[E]=k}}else e[S]!==l&&console.error("THREE.AnimationObjectGroup: Different objects with the same UUID detected. Clean the caches or recreate your infrastru
83cture when reloading scenes.")}this.nCachedObjects_=d}remove(){const e=this._objects,t=this._indicesByUUID,n=this._bindings,i=n.length;let s=this.nCachedObjects_;for(let o=0,l=arguments.length;o!==l;++o){const u=arguments[o],d=u.uuid,p=t[d];if(p!==void 0&&p>=s){const m=s++,y=e[m];t[y.uuid]=p,e[p]=y,t[d]=m,e[m]=u;for(let v=0,S=i;v!==S;++v){const E=n[v],A=E[m],M=E[p];E[p]=A,E[m]=M}}}this.nCachedObjects_=s}uncache(){const e=this._objects,t=this._indicesByUUID,n=this._bindings,i=n.length;let s=this.nCachedObjects_,o=e.length;for(let l=0,u=arguments.length;l!==u;++l){const d=arguments[l],p=d.uuid,m=t[p];if(m!==void 0)if(delete t[p],m<s){const y=--s,v=e[y],S=--o,E=e[S];t[v.uuid]=m,e[m]=v,t[E.uuid]=y,e[y]=E,e.pop();for(let A=0,M=i;A!==M;++A){const T=n[A],I=T[y],P=T[S];T[m]=I,T[y]=P,T.pop()}}else{const y=--o,v=e[y];y>0&&(t[v.uuid]=m),e[m]=v,e.pop();for(let S=0,E=i;S!==E;++S){const A=n[S];A[m]=A[y],A.pop()}}}this.nCachedObjects_=s}subscribe_(e,t){const n=this._bindingsIndicesByPath;let i=n[e];const s=this._bindings;if(i!==void 0)return s[i];const o=this._paths,l=this._parsedPaths,u=this._objects,d=u.length,p=this.nCachedObjects_,m=new Array(d);i=s.length,n[e]=i,o.push(e),l.push(t),s.push(m);for(let y=p,v=u.length;y!==v;++y){const S=u[y];m[y]=new gn(S,e,t)}return m}unsubscribe_(e){const t=this._bindingsIndicesByPath,n=t[e];if(n!==void 0){const i=this._paths,s=this._parsedPaths,o=this._bindings,l=o.length-1,u=o[l],d=e[l];t[d]=n,o[n]=u,o.pop(),s[n]=s[l],s.pop(),i[n]=i[l],i.pop()}}}class JC{constructor(e,t,n=null,i=t.blendMode){this._mixer=e,this._clip=t,this._localRoot=n,this.blendMode=i;const s=t.tracks,o=s.length,l=new Array(o),u={endingStart:pu,endingEnd:pu};for(let d=0;d!==o;++d){const p=s[d].createInterpolant(null);l[d]=p,p.settings=u}this._interpolantSettings=u,this._interpolants=l,this._propertyBindings=new Array(o),this._cacheIndex=null,this._byClipCacheIndex=null,this._timeScaleInterpolant=null,this._weightInterpolant=null,this.loop=Ub,this._loopCount=-1,this._startTime=null,this.time=0,this.timeScale=1,this._effectiveTimeScale=1,this.weight=1,this._effectiveWeight=1,this.repetitions=1/0,this.paused=!1,this.enabled=!0,this.clampWhenFinished=!1,this.zeroSlopeAtStart=!0,this.zeroSlopeAtEnd=!0}play(){return this._mixer._activateAction(this),this}stop(){return this._mixer._deactivateAction(this),this.reset()}reset(){return this.paused=!1,this.enabled=!0,this.time=0,this._loopCount=-1,this._startTime=null,this.stopFading().stopWarping()}isRunning(){return this.enabled&&!this.paused&&this.timeScale!==0&&this._startTime===null&&this._mixer._isActiveAction(this)}isScheduled(){return this._mixer._isActiveAction(this)}startAt(e){return this._startTime=e,this}setLoop(e,t){return this.loop=e,this.repetitions=t,this}setEffectiveWeight(e){return this.weight=e,this._effectiveWeight=this.enabled?e:0,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){if(e.fadeOut(t),this.fadeIn(t),n){const i=this._clip.duration,s=e._clip.duration,o=s/i,l=i/s;e.warp(1,o,t),this.warp(l,1,t)}return this}crossFadeTo(e,t,n){return e.crossFadeFrom(this,t,n)}stopFading(){const e=this._weightInterpolant;return e!==null&&(this._weightInterpolant=null,this._mixer._takeBackControlInterpolant(e)),this}setEffectiveTimeScale(e){return this.timeScale=e,this._effectiveTimeScale=this.paused?0:e,this.stopWarping()}getEffectiveTimeScale(){return this._effectiveTimeScale}setDuration(e){return this.timeScale=this._clip.duration/e,this.stopWarping()}syncWith(e){return this.time=e.time,this.timeScale=e.timeScale,this.stopWarping()}halt(e){return this.warp(this._effectiveTimeScale,0,e)}warp(e,t,n){const i=this._mixer,s=i.time,o=this.timeScale;let l=this._timeScaleInterpolant;l===null&&(l=i._lendControlInterpolant(),this._timeScaleInterpolant=l);const u=l.parameterPositions,d=l.sampleValues;return u[0]=s,u[1]=s+n,d[0]=e/o,d[1]=t/o,this}stopWarping(){const e=this._timeScaleInterpolant;return e!==null&&(this._timeScaleInterpolant=null,this._mixer._takeBackControlInterpolant(e)),this}getMixer(){return this._mixer}getClip(){return this._clip}getRoot(){return this._localRoot||this._mixer._root}_update(e,t,n,i){if(!this.enabled){this._updateWeight(e);return}const s=this._startTime;if(s!==null){const u=(e-s)*n;u<0||n===0?t=0:(this._startTime=null,t=n*u)}t*=this._updateTimeScale(e);const o=this._updateTime(t),l=this._updateWeight(e);if(l>0){const u=this._interpolants,d=this._propertyBindings;switch(this.blendMode){case Yx:for(let p=0,m=u.length;p!==m;++p)u[p].evaluate(o),d[p].accumulateAdditive(l);break;case Hy:default:for(let p=0,m=u.length;p!==m;++p)u[p].evaluate(o),d[p].accumulate(i,l)}}}_updateWeight(e){let t=0;if(this.enabled){t=this.weight;const n=this._weightInterpolant;if(n!==null){const i=n.evaluate(e)[0];t*=i,e>n.parameterPositions[1]&&(this.stopFading(),i===0&&(this.enabled=!1))}}return this._effectiveWeight=t,t}_updateTimeScale(e){let t=0;if(!this.paused){t=this.timeScale;const n=this._timeScaleInterpolant;if(n!==null){const i=n.evaluate(e)[0];t*=i,e>n.parameterPositions[1]&&(this.stopWarping(),t===0?this.paused=!0:this.timeScale=t)}}return this._effectiveTimeScale=t,t}_updateTime(e){const t=this._clip.duration,n=this.loop;let i=this.time+e,s=this._loopCount;const o=n===jb;if(e===0)return s===-1?i:o&&(s&1)===1?t-i:i;if(n===kb){s===-1&&(this._loopCount=0,this._setEndings(!0,!0,!1));e:{if(i>=t)i=t;else if(i<0)i=0;else{this.time=i;break e}this.clampWhenFinished?this.paused=!0:this.enabled=!1,this.time=i,this._mixer.dispatchEvent({type:"finished",action:this,direction:e<0?-1:1})}}else{if(s===-1&&(e>=0?(s=0,this._setEndings(!0,this.repetitions===0,o)):this._setEndings(this.repetitions===0,!0,o)),i>=t||i<0){const l=Math.floor(i/t);i-=t*l,s+=Math.abs(l);const u=this.repetitions-s;if(u<=0)this.clampWhenFinished?this.paused=!0:this.enabled=!1,i=e>0?t:0,this.time=i,this._mixer.dispatchEvent({type:"finished",action:this,direction:e>0?1:-1});else{if(u===1){const d=e<0;this._setEndings(d,!d,o)}else this._setEndings(!1,!1,o);this._loopCount=s,this.time=i,this._mixer.dispatchEvent({type:"loop",action:this,loopDelta:l})}}else this.time=i;if(o&&(s&1)===1)return t-i}return i}
vendor: 8,767 bytes, line 83
83_setEndings(e,t,n){const i=this._interpolantSettings;n?(i.endingStart=mu,i.endingEnd=mu):(e?i.endingStart=this.zeroSlopeAtStart?mu:pu:i.endingStart=kp,t?i.endingEnd=this.zeroSlopeAtEnd?mu:pu:i.endingEnd=kp)}_scheduleFading(e,t,n){const i=this._mixer,s=i.time;let o=this._weightInterpolant;o===null&&(o=i._lendControlInterpolant(),this._weightInterpolant=o);const l=o.parameterPositions,u=o.sampleValues;return l[0]=s,u[0]=t,l[1]=s+e,u[1]=n,this}}const P5=new Float32Array(1);class R5 extends ta{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,i=e._clip.tracks,s=i.length,o=e._propertyBindings,l=e._interpolants,u=n.uuid,d=this._bindingsByRootAndName;let p=d[u];p===void 0&&(p={},d[u]=p);for(let m=0;m!==s;++m){const y=i[m],v=y.name;let S=p[v];if(S!==void 0)++S.referenceCount,o[m]=S;else{if(S=o[m],S!==void 0){S._cacheIndex===null&&(++S.referenceCount,this._addInactiveBinding(S,u,v));continue}const E=t&&t._propertyBindings[m].binding.parsedPath;S=new XC(gn.create(n,v,E),y.ValueTypeName,y.getValueSize()),++S.referenceCount,this._addInactiveBinding(S,u,v),o[m]=S}l[m].resultBuffer=S.buffer}}_activateAction(e){if(!this._isActiveAction(e)){if(e._cacheIndex===null){const n=(e._localRoot||this._root).uuid,i=e._clip.uuid,s=this._actionsByClip[i];this._bindAction(e,s&&s.knownActions[0]),this._addInactiveAction(e,i,n)}const t=e._propertyBindings;for(let n=0,i=t.length;n!==i;++n){const s=t[n];s.useCount++===0&&(this._lendBinding(s),s.saveOriginalState())}this._lendAction(e)}}_deactivateAction(e){if(this._isActiveAction(e)){const t=e._propertyBindings;for(let n=0,i=t.length;n!==i;++n){const s=t[n];--s.useCount===0&&(s.restoreOriginalState(),this._takeBackBinding(s))}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 t!==null&&t<this._nActiveActions}_addInactiveAction(e,t,n){const i=this._actions,s=this._actionsByClip;let o=s[t];if(o===void 0)o={knownActions:[e],actionByRoot:{}},e._byClipCacheIndex=0,s[t]=o;else{const l=o.knownActions;e._byClipCacheIndex=l.length,l.push(e)}e._cacheIndex=i.length,i.push(e),o.actionByRoot[n]=e}_removeInactiveAction(e){const t=this._actions,n=t[t.length-1],i=e._cacheIndex;n._cacheIndex=i,t[i]=n,t.pop(),e._cacheIndex=null;const s=e._clip.uuid,o=this._actionsByClip,l=o[s],u=l.knownActions,d=u[u.length-1],p=e._byClipCacheIndex;d._byClipCacheIndex=p,u[p]=d,u.pop(),e._byClipCacheIndex=null;const m=l.actionByRoot,y=(e._localRoot||this._root).uuid;delete m[y],u.length===0&&delete o[s],this._removeInactiveBindingsForAction(e)}_removeInactiveBindingsForAction(e){const t=e._propertyBindings;for(let n=0,i=t.length;n!==i;++n){const s=t[n];--s.referenceCount===0&&this._removeInactiveBinding(s)}}_lendAction(e){const t=this._actions,n=e._cacheIndex,i=this._nActiveActions++,s=t[i];e._cacheIndex=i,t[i]=e,s._cacheIndex=n,t[n]=s}_takeBackAction(e){const t=this._actions,n=e._cacheIndex,i=--this._nActiveActions,s=t[i];e._cacheIndex=i,t[i]=e,s._cacheIndex=n,t[n]=s}_addInactiveBinding(e,t,n){const i=this._bindingsByRootAndName,s=this._bindings;let o=i[t];o===void 0&&(o={},i[t]=o),o[n]=e,e._cacheIndex=s.length,s.push(e)}_removeInactiveBinding(e){const t=this._bindings,n=e.binding,i=n.rootNode.uuid,s=n.path,o=this._bindingsByRootAndName,l=o[i],u=t[t.length-1],d=e._cacheIndex;u._cacheIndex=d,t[d]=u,t.pop(),delete l[s],Object.keys(l).length===0&&delete o[i]}_lendBinding(e){const t=this._bindings,n=e._cacheIndex,i=this._nActiveBindings++,s=t[i];e._cacheIndex=i,t[i]=e,s._cacheIndex=n,t[n]=s}_takeBackBinding(e){const t=this._bindings,n=e._cacheIndex,i=--this._nActiveBindings,s=t[i];e._cacheIndex=i,t[i]=e,s._cacheIndex=n,t[n]=s}_lendControlInterpolant(){const e=this._controlInterpolants,t=this._nActiveControlInterpolants++;let n=e[t];return n===void 0&&(n=new gM(new Float32Array(2),new Float32Array(2),1,P5),n.__cacheIndex=t,e[t]=n),n}_takeBackControlInterpolant(e){const t=this._controlInterpolants,n=e.__cacheIndex,i=--this._nActiveControlInterpolants,s=t[i];e.__cacheIndex=i,t[i]=e,s.__cacheIndex=n,t[n]=s}clipAction(e,t,n){const i=t||this._root,s=i.uuid;let o=typeof e=="string"?Ud.findByName(i,e):e;const l=o!==null?o.uuid:e,u=this._actionsByClip[l];let d=null;if(n===void 0&&(o!==null?n=o.blendMode:n=Hy),u!==void 0){const m=u.actionByRoot[s];if(m!==void 0&&m.blendMode===n)return m;d=u.knownActions[0],o===null&&(o=d._clip)}if(o===null)return null;const p=new JC(this,o,t,n);return this._bindAction(p,d),this._addInactiveAction(p,l,s),p}existingAction(e,t){const n=t||this._root,i=n.uuid,s=typeof e=="string"?Ud.findByName(n,e):e,o=s?s.uuid:e,l=this._actionsByClip[o];return l!==void 0&&l.actionByRoot[i]||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,i=this.time+=e,s=Math.sign(e),o=this._accuIndex^=1;for(let d=0;d!==n;++d)t[d]._update(i,e,s,o);const l=this._bindings,u=this._nActiveBindings;for(let d=0;d!==u;++d)l[d].apply(o);return this}setTime(e){this.time=0;for(let t=0;t<this._actions.length;t++)this._actions[t].time=0;return this.update(e)}getRoot(){return this._root}uncacheClip(e){const t=this._actions,n=e.uuid,i=this._actionsByClip,s=i[n];if(s!==void 0){const o=s.knownActions;for(let l=0,u=o.length;l!==u;++l){const d=o[l];this._deactivateAction(d);const p=d._cacheIndex,m=t[t.length-1];d._cacheIndex=null,d._byClipCacheIndex=null,m._cacheIndex=p,t[p]=m,t.pop(),this._removeInactiveBindingsForAction(d)}delete i[n]}}uncacheRoot(e){const t=e.uuid,n=this._actionsByClip;for(const o in n){const l=n[o].actionByRoot,u=l[t];u!==void 0&&(this._deactivateAction(u),this._removeInactiveAction(u))}const i=this._bindingsByRootAndName,s=i[t];if(s!==void 0)for(const o in s){const l=s[o];l.restoreOriginalState(),this._removeInactiveBinding(l)}}uncacheAction(e,t){const n=this.existingAction(e,t);n!==null&&(this._deactivateAction(n),this._removeInactiveAction(n))}}class TM{constructor(e){this.value=e}clone(){return new TM(this.value.clone===void 0?this.value:this.value.clone())}}let B5=0;class O5 extends ta{constructor(){super(),this.isUniformsGroup=!0,Object.defineProperty(this,"id",{value:B5++}),this.name="",this.usage=jp,this.uniforms=[]}add(e){return this.uniforms.push(e),this}remove(e){const t=this.uniforms.indexOf(e);return t!==-1&&this.uniforms.splice(t,1),this}setName(e){return this.name=e,this}setUsage(e){return this.usage=e,this}dispose(){return this.dispatchEvent({type:"dispose"}),this}copy(e){this.name=e.name,this.usage=e.usage;const t=e.uniforms;this.uniforms.length=0;for(let n=0,i=t.length;n<i;n++){const s=Array.isArray(t[n])?t[n]:[t[n]];for(let o=0;o<s.length;o++)this.uniforms.push(s[o].clone())}return this}clone(){return new this.constructor().copy(this)}}class D5 extends sm{constructor(e,t,n=1){super(e,t),this.isInstancedInterleavedBuffer=!0,this.meshPerAttribute=n}copy(e){return super.copy(e),this.meshPerAttribute=e.meshPerAttribute,this}clone(e){const t=super.clone(e);return t.meshPerAttribute=this.meshPerAttribute,t}toJSON(e){const t=super.toJSON(e);return t.isInstancedInterleavedBuffer=!0,t.meshPerAttribute=this.meshPerAttribute,t}}class L5{constructor(e,t,n,i,s){this.isGLBufferAttribute=!0,this.name="",this.buffer=e,this.type=t,this.itemSize=n,this.elementSize=i,this.count=s,this.version=0}set needsUpdate(e){e===!0&&this.version++}setBuffer(e){return this.buffer=e,this}setType(e,t){return this.type=e,this.elementSize=t,this}setItemSize(e){return this.itemSize=e,this}setCount(e){return this.count=e,this}}const e2=new Nt;class $C{constructor(e,t,n=0,i=1/0){this.ray=new Wd(e,t),this.near=n,this.far=i,this.camera=null,this.layers=new wu,this.params={Mesh:{},Line:{threshold:1},LOD:{},Points:{threshold:1},Sprite:{}}}set(e,t){this.ray.set(e,t)}setFromCamera(e,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):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):console.error("THREE.Raycaster: 
83Unsupported camera type: "+t.type)}setFromXRController(e){return e2.identity().extractRotation(e.matrixWorld),this.ray.origin.setFromMatrixPosition(e.matrixWorld),this.ray.direction.set(0,0,-1).applyMatrix4(e2),this}intersectObject(e,t=!0,n=[]){return ex(e,this,n,t),n.sort(t2),n}intersectObjects(e,t=!0,n=[]){for(let i=0,s=e.length;i<s;i++)ex(e[i],this,n,t);return n.sort(t2),n}}function t2(r,e){return r.distance-e.distance}function ex(r,e,t,n){let i=!0;if(r.layers.test(e.layers)&&r.raycast(e,t)===!1&&(i=!1),i===!0&&n===!0){const s=r.children;for(let o=0,l=s.length;o<l;o++)ex(s[o],e,t,!0)}}class N5{constructor(e=1,t=0,n=0){return this.radius=e,this.phi=t,this.theta=n,this}set(e,t,n){return this.radius=e,this.phi=t,this.theta=n,this}copy(e){return this.radius=e.radius,this.phi=e.phi,this.theta=e.theta,this}makeSafe(){return this.phi=Yt(this.phi,1e-6,Math.PI-1e-6),this}setFromVector3(e){return this.setFromCartesianCoords(e.x,e.y,e.z)}setFromCartesianCoords(e,t,n){return this.radius=Math.sqrt(e*e+t*t+n*n),this.radius===0?(this.theta=0,this.phi=0):(this.theta=Math.atan2(e,n),this.phi=Math.acos(Yt(t/this.radius,-1,1))),this}clone(){return new this.constructor().copy(this)}}class F5{constructor(e=1,t=0,n=0){return this.radius=e,this.theta=t,this.y=n,this}set(e,t,n){return this.radius=e,this.theta=t,this.y=n,this}copy(e){return this.radius=e.radius,this.theta=e.theta,this.y=e.y,this}setFromVector3(e){return this.setFromCartesianCoords(e.x,e.y,e.z)}setFromCartesianCoords(e,t,n){return this.radius=Math.sqrt(e*e+n*n),this.theta=Math.atan2(e,n),this.y=t,this}clone(){return new this.constructor().copy(this)}}class IM{constructor(e,t,n,i){IM.prototype.isMatrix2=!0,this.elements=[1,0,0,1],e!==void 0&&this.set(e,t,n,i)}identity(){return this.set(1,0,0,1),this}fromArray(e,t=0){for(let n=0;n<4;n++)this.elements[n]=e[n+t];return this}set(e,t,n,i){const s=this.elements;return s[0]=e,s[2]=t,s[1]=n,s[3]=i,this}}const n2=new Ne;class k5{constructor(e=new Ne(1/0,1/0),t=new Ne(-1/0,-1/0)){this.isBox2=!0,this.min=e,this.max=t}set(e,t){return this.min.copy(e),this.max.copy(t),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=n2.copy(t).multiplyScalar(.5);return this.min.copy(e).sub(n),this.max.copy(e).add(n),this}clone(){return new this.constructor().copy(this)}copy(e){return this.min.copy(e.min),this.max.copy(e.max),this}makeEmpty(){return this.min.x=this.min.y=1/0,this.max.x=this.max.y=-1/0,this}isEmpty(){return this.max.x<this.min.x||this.max.y<this.min.y}getCenter(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){return this.min.min(e),this.max.max(e),this}expandByVector(e){return this.min.sub(e),this.max.add(e),this}expandByScalar(e){return this.min.addScalar(-e),this.max.addScalar(e),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){return this.clampPoint(e,n2).distanceTo(e)}intersect(e){return this.min.max(e.min),this.max.min(e.max),this.isEmpty()&&this.makeEmpty(),this}union(e){return this.min.min(e.min),this.max.max(e.max),this}translate(e){return this.min.add(e),this.max.add(e),this}equals(e){return e.min.equals(this.min)&&e.max.equals(this.max)}}const r2=new $,Q0=new $;class U5{constructor(e=new $,t=new $){this.start=e,this.end=t}set(e,t){return this.start.copy(e),this.end.copy(t),this}copy(e){return this.start.copy(e.start),this.end.copy(e.end),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){r2.subVectors(e,this.start),Q0.subVectors(this.end,this.start);const n=Q0.dot(Q0);let s=Q0.dot(r2)/n;return t&&(s=Yt(s,0,1)),s}closestPointToPoint(e,t,n){const i=this.closestPointToPointParameter(e,t);return this.delta(n).multiplyScalar(i).add(this.start)}
vendor: 13,673 bytes, line 83
83applyMatrix4(e){return this.start.applyMatrix4(e),this.end.applyMatrix4(e),this}equals(e){return e.start.equals(this.start)&&e.end.equals(this.end)}clone(){return new this.constructor().copy(this)}}const i2=new $;class j5 extends fn{constructor(e,t){super(),this.light=e,this.matrixAutoUpdate=!1,this.color=t,this.type="SpotLightHelper";const n=new Jt,i=[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 o=0,l=1,u=32;o<u;o++,l++){const d=o/u*Math.PI*2,p=l/u*Math.PI*2;i.push(Math.cos(d),Math.sin(d),1,Math.cos(p),Math.sin(p),1)}n.setAttribute("position",new Et(i,3));const s=new mi({fog:!1,toneMapped:!1});this.cone=new bo(n,s),this.add(this.cone),this.update()}dispose(){this.cone.geometry.dispose(),this.cone.material.dispose()}update(){this.light.updateWorldMatrix(!0,!1),this.light.target.updateWorldMatrix(!0,!1),this.parent?(this.parent.updateWorldMatrix(!0),this.matrix.copy(this.parent.matrixWorld).invert().multiply(this.light.matrixWorld)):this.matrix.copy(this.light.matrixWorld),this.matrixWorld.copy(this.light.matrixWorld);const e=this.light.distance?this.light.distance:1e3,t=e*Math.tan(this.light.angle);this.cone.scale.set(t,t,e),i2.setFromMatrixPosition(this.light.target.matrixWorld),this.cone.lookAt(i2),this.color!==void 0?this.cone.material.color.set(this.color):this.cone.material.color.copy(this.light.color)}}const Xl=new $,Z0=new Nt,Nv=new Nt;class z5 extends bo{constructor(e){const t=KC(e),n=new Jt,i=[],s=[],o=new tt(0,0,1),l=new tt(0,1,0);for(let d=0;d<t.length;d++){const p=t[d];p.parent&&p.parent.isBone&&(i.push(0,0,0),i.push(0,0,0),s.push(o.r,o.g,o.b),s.push(l.r,l.g,l.b))}n.setAttribute("position",new Et(i,3)),n.setAttribute("color",new Et(s,3));const u=new mi({vertexColors:!0,depthTest:!1,depthWrite:!1,toneMapped:!1,transparent:!0});super(n,u),this.isSkeletonHelper=!0,this.type="SkeletonHelper",this.root=e,this.bones=t,this.matrix=e.matrixWorld,this.matrixAutoUpdate=!1}updateMatrixWorld(e){const t=this.bones,n=this.geometry,i=n.getAttribute("position");Nv.copy(this.root.matrixWorld).invert();for(let s=0,o=0;s<t.length;s++){const l=t[s];l.parent&&l.parent.isBone&&(Z0.multiplyMatrices(Nv,l.matrixWorld),Xl.setFromMatrixPosition(Z0),i.setXYZ(o,Xl.x,Xl.y,Xl.z),Z0.multiplyMatrices(Nv,l.parent.matrixWorld),Xl.setFromMatrixPosition(Z0),i.setXYZ(o+1,Xl.x,Xl.y,Xl.z),o+=2)}n.getAttribute("position").needsUpdate=!0,super.updateMatrixWorld(e)}dispose(){this.geometry.dispose(),this.material.dispose()}}function KC(r){const e=[];r.isBone===!0&&e.push(r);for(let t=0;t<r.children.length;t++)e.push.apply(e,KC(r.children[t]));return e}class H5 extends hr{constructor(e,t,n){const i=new hm(t,4,2),s=new vs({wireframe:!0,fog:!1,toneMapped:!1});super(i,s),this.light=e,this.color=n,this.type="PointLightHelper",this.matrix=this.light.matrixWorld,this.matrixAutoUpdate=!1,this.update()}dispose(){this.geometry.dispose(),this.material.dispose()}update(){this.light.updateWorldMatrix(!0,!1),this.color!==void 0?this.material.color.set(this.color):this.material.color.copy(this.light.color)}}const G5=new $,s2=new tt,o2=new tt;class V5 extends fn{constructor(e,t,n){super(),this.light=e,this.matrix=e.matrixWorld,this.matrixAutoUpdate=!1,this.color=n,this.type="HemisphereLightHelper";const i=new um(t);i.rotateY(Math.PI*.5),this.material=new vs({wireframe:!0,fog:!1,toneMapped:!1}),this.color===void 0&&(this.material.vertexColors=!0);const s=i.getAttribute("position"),o=new Float32Array(s.count*3);i.setAttribute("color",new vn(o,3)),this.add(new hr(i,this.material)),this.update()}dispose(){this.children[0].geometry.dispose(),this.children[0].material.dispose()}update(){const e=this.children[0];if(this.color!==void 0)this.material.color.set(this.color);else{const t=e.geometry.getAttribute("color");s2.copy(this.light.color),o2.copy(this.light.groundColor);for(let n=0,i=t.count;n<i;n++){const s=n<i/2?s2:o2;t.setXYZ(n,s.r,s.g,s.b)}t.needsUpdate=!0}this.light.updateWorldMatrix(!0,!1),e.lookAt(G5.setFromMatrixPosition(this.light.matrixWorld).negate())}}class W5 extends bo{constructor(e=10,t=10,n=4473924,i=8947848){n=new tt(n),i=new tt(i);const s=t/2,o=e/t,l=e/2,u=[],d=[];for(let y=0,v=0,S=-l;y<=t;y++,S+=o){u.push(-l,0,S,l,0,S),u.push(S,0,-l,S,0,l);const E=y===s?n:i;E.toArray(d,v),v+=3,E.toArray(d,v),v+=3,E.toArray(d,v),v+=3,E.toArray(d,v),v+=3}const p=new Jt;p.setAttribute("position",new Et(u,3)),p.setAttribute("color",new Et(d,3));const m=new mi({vertexColors:!0,toneMapped:!1});super(p,m),this.type="GridHelper"}dispose(){this.geometry.dispose(),this.material.dispose()}}class X5 extends bo{constructor(e=10,t=16,n=8,i=64,s=4473924,o=8947848){s=new tt(s),o=new tt(o);const l=[],u=[];if(t>1)for(let m=0;m<t;m++){const y=m/t*(Math.PI*2),v=Math.sin(y)*e,S=Math.cos(y)*e;l.push(0,0,0),l.push(v,0,S);const E=m&1?s:o;u.push(E.r,E.g,E.b),u.push(E.r,E.g,E.b)}for(let m=0;m<n;m++){const y=m&1?s:o,v=e-e/n*m;for(let S=0;S<i;S++){let E=S/i*(Math.PI*2),A=Math.sin(E)*v,M=Math.cos(E)*v;l.push(A,0,M),u.push(y.r,y.g,y.b),E=(S+1)/i*(Math.PI*2),A=Math.sin(E)*v,M=Math.cos(E)*v,l.push(A,0,M),u.push(y.r,y.g,y.b)}}const d=new Jt;d.setAttribute("position",new Et(l,3)),d.setAttribute("color",new Et(u,3));const p=new mi({vertexColors:!0,toneMapped:!1});super(d,p),this.type="PolarGridHelper"}dispose(){this.geometry.dispose(),this.material.dispose()}}const a2=new $,eg=new $,l2=new $;class J5 extends fn{constructor(e,t,n){super(),this.light=e,this.matrix=e.matrixWorld,this.matrixAutoUpdate=!1,this.color=n,this.type="DirectionalLightHelper",t===void 0&&(t=1);let i=new Jt;i.setAttribute("position",new Et([-t,t,0,t,t,0,t,-t,0,-t,-t,0,-t,t,0],3));const s=new mi({fog:!1,toneMapped:!1});this.lightPlane=new nl(i,s),this.add(this.lightPlane),i=new Jt,i.setAttribute("position",new Et([0,0,0,0,0,1],3)),this.targetLine=new nl(i,s),this.add(this.targetLine),this.update()}dispose(){this.lightPlane.geometry.dispose(),this.lightPlane.material.dispose(),this.targetLine.geometry.dispose(),this.targetLine.material.dispose()}update(){this.light.updateWorldMatrix(!0,!1),this.light.target.updateWorldMatrix(!0,!1),a2.setFromMatrixPosition(this.light.matrixWorld),eg.setFromMatrixPosition(this.light.target.matrixWorld),l2.subVectors(eg,a2),this.lightPlane.lookAt(eg),this.color!==void 0?(this.lightPlane.material.color.set(this.color),this.targetLine.material.color.set(this.color)):(this.lightPlane.material.color.copy(this.light.color),this.targetLine.material.color.copy(this.light.color)),this.targetLine.lookAt(eg),this.targetLine.scale.z=l2.length()}}const tg=new $,or=new rm;class $5 extends bo{constructor(e){const t=new Jt,n=new mi({color:16777215,vertexColors:!0,toneMapped:!1}),i=[],s=[],o={};l("n1","n2"),l("n2","n4"),l("n4","n3"),l("n3","n1"),l("f1","f2"),l("f2","f4"),l("f4","f3"),l("f3","f1"),l("n1","f1"),l("n2","f2"),l("n3","f3"),l("n4","f4"),l("p","n1"),l("p","n2"),l("p","n3"),l("p","n4"),l("u1","u2"),l("u2","u3"),l("u3","u1"),l("c","t"),l("p","c"),l("cn1","cn2"),l("cn3","cn4"),l("cf1","cf2"),l("cf3","cf4");function l(S,E){u(S),u(E)}function u(S){i.push(0,0,0),s.push(0,0,0),o[S]===void 0&&(o[S]=[]),o[S].push(i.length/3-1)}t.setAttribute("position",new Et(i,3)),t.setAttribute("color",new Et(s,3)),super(t,n),this.type="CameraHelper",this.camera=e,this.camera.updateProjectionMatrix&&this.camera.updateProjectionMatrix(),this.matrix=e.matrixWorld,this.matrixAutoUpdate=!1,this.pointMap=o,this.update();const d=new tt(16755200),p=new tt(16711680),m=new tt(43775),y=new tt(16777215),v=new tt(3355443);this.setColors(d,p,m,y,v)}setColors(e,t,n,i,s){const l=this.geometry.getAttribute("color");l.setXYZ(0,e.r,e.g,e.b),l.setXYZ(1,e.r,e.g,e.b),l.setXYZ(2,e.r,e.g,e.b),l.setXYZ(3,e.r,e.g,e.b),l.setXYZ(4,e.r,e.g,e.b),l.setXYZ(5,e.r,e.g,e.b),l.setXYZ(6,e.r,e.g,e.b),l.setXYZ(7,e.r,e.g,e.b),l.setXYZ(8,e.r,e.g,e.b),l.setXYZ(9,e.r,e.g,e.b),l.setXYZ(10,e.r,e.g,e.b),l.setXYZ(11,e.r,e.g,e.b),l.setXYZ(12,e.r,e.g,e.b),l.setXYZ(13,e.r,e.g,e.b),l.setXYZ(14,e.r,e.g,e.b),l.setXYZ(15,e.r,e.g,e.b),l.setXYZ(16,e.r,e.g,e.b),l.setXYZ(17,e.r,e.g,e.b),l.setXYZ(18,e.r,e.g,e.b),l.setXYZ(19,e.r,e.g,e.b),l.setXYZ(20,e.r,e.g,e.b),l.setXYZ(21,e.r,e.g,e.b),l.setXYZ(22,e.r,e.g,e.b),l.setXYZ(23,e.r,e.g,e.b),l.setXYZ(24,t.r,t.g,t.b),l.setXYZ(25,t.r,t.g,t.b),l.setXYZ(26,t.r,t.g,t.b),l.setXYZ(27,t.r,t.g,t.b),l.setXYZ(28,t.r,t.g,t.b),l.setXYZ(29,t.r,t.g,t.b),l.setXYZ(30,t.r,t.g,t.b),l.setXYZ(31,t.r,t.g,t.b),l.setXYZ(32,n.r,n.g,n.b),l.setXYZ(33,n.r,n.g,n.b),l.setXYZ(34,n.r,n.g,n.b),l.setXYZ(35,n.r,n.g,n.b),l.setXYZ(36,n.r,n.g,n.b),l.setXYZ(37,n.r,n.g,n.b),l.setXYZ(38,i.r,i.g,i.b),l.setXYZ(39,i.r,i.g,i.b),l.setXYZ(40,s.r,s.g,s.b),l.setXYZ(41,s.r,s.g,s.b),l.setXYZ(42,s.r,s.g,s.b),l.setXYZ(43,s.r,s.g,s.b),l.setXYZ(44,s.r,s.g,s.b),l.setXYZ(45,s.r,s.g,s.b),l.setXYZ(46,s.r,s.g,s.b),l.setXYZ(47,s.r,s.g,s.b),l.setXYZ(48,s.r,s.g,s.b),l.setXYZ(49,s.r,s.g,s.b),l.needsUpdate=!0}update(){const e=this.geometry,t=this.pointMap,n=1,i=1;or.projectionMatrixInverse.copy(this.camera.projectionMatrixInverse),ur("c",t,e,or,0,0,-1),ur("t",t,e,or,0,0,1),ur("n1",t,e,or,-n,-i,-1),ur("n2",t,e,or,n,-i,-1),ur("n3",t,e,or,-n,i,-1),ur("n4",t,e,or,n,i,-1),ur("f1",t,e,or,-n,-i,1),ur("f2",t,e,or,n,-i,1),ur("f3",t,e,or,-n,i,1),ur("f4",t,e,or,n,i,1),ur("u1",t,e,or,n*.7,i*1.1,-1),ur("u2",t,e,or,-n*.7,i*1.1,-1),ur("u3",t,e,or,0,i*2,-1),ur("cf1",t,e,or,-n,0,1),ur("cf2",t,e,or,n,0,1),ur("cf3",t,e,or,0,-i,1),ur("cf4",t,e,or,0,i,1),ur("cn1",t,e,or,-n,0,-1),ur("cn2",t,e,or,n,0,-1),ur("cn3",t,e,or,0,-i,-1),ur("cn4",t,e,or,0,i,-1),e.getAttribute("position").needsUpdate=!0}dispose(){this.geometry.dispose(),this.material.dispose()}}function ur(r,e,t,n,i,s,o){tg.set(i,s,o).unproject(n);const l=e[r];if(l!==void 0){const u=t.getAttribute("position");for(let d=0,p=l.length;d<p;d++)u.setXYZ(l[d],tg.x,tg.y,tg.z)}}const ng=new pi;class K5 extends bo{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]),i=new Float32Array(8*3),s=new Jt;s.setIndex(new vn(n,1)),s.setAttribute("position",new vn(i,3)),super(s,new mi({color:t,toneMapped:!1})),this.object=e,this.type="BoxHelper",this.matrixAutoUpdate=!1,this.update()}update(e){if(e!==void 0&&console.warn("THREE.BoxHelper: .update() has no longer arguments."),this.object!==void 0&&ng.setFromObject(this.object),ng.isEmpty())return;const t=ng.min,n=ng.max,i=this.geometry.attributes.position,s=i.array;s[0]=n.x,s[1]=n.y,s[2]=n.z,s[3]=t.x,s[4]=n.y,s[5]=n.z,s[6]=t.x,s[7]=t.y,s[8]=n.z,s[9]=n.x,s[10]=t.y,s[11]=n.z,s[12]=n.x,s[13]=n.y,s[14]=t.z,s[15]=t.x,s[16]=n.y,s[17]=t.z,s[18]=t.x,s[19]=t.y,s[20]=t.z,s[21]=n.x,s[22]=t.y,s[23]=t.z,i.needsUpdate=!0,this.geometry.computeBoundingSphere()}setFromObject(e){return this.object=e,this.update(),this}copy(e,t){return super.copy(e,t),this.object=e.object,this}dispose(){this.geometry.dispose(),this.material.dispose()}}class Y5 extends bo{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]),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],s=new Jt;s.setIndex(new vn(n,1)),s.setAttribute("position",new Et(i,3)),super(s,new mi({color:t,toneMapped:!1})),this.box=e,this.type="Box3Helper",this.geometry.computeBoundingSphere()}updateMatrixWorld(e){const t=this.box;t.isEmpty()||(t.getCenter(this.position),t.getSize(this.scale),this.scale.multiplyScalar(.5),super.updateMatrixWorld(e))}dispose(){this.geometry.dispose(),this.material.dispose()}}class q5 extends nl{constructor(e,t=1,n=16776960){const i=n,s=[1,-1,0,-1,1,0,-1,-1,0,1,1,0,-1,1,0,-1,-1,0,1,-1,0,1,1,0],o=new Jt;o.setAttribute("position",new Et(s,3)),o.computeBoundingSphere(),super(o,new mi({color:i,toneMapped:!1})),this.type="PlaneHelper",this.plane=e,this.size=t;const l=[1,1,0,-1,1,0,-1,-1,0,1,1,0,-1,-1,0,1,-1,0],u=new Jt;u.setAttribute("position",new Et(l,3)),u.computeBoundingSphere(),this.add(new hr(u,new vs({color:i,opacity:.2,transparent:!0,depthWrite:!1,toneMapped:!1})))}updateMatrixWorld(e){this.position.set(0,0,0),this.scale.set(.5*this.size,.5*this.size,1),this.lookAt(this.plane.normal),this.translateZ(-this.plane.constant),super.updateMatrixWorld(e)}dispose(){this.geometry.dispose(),this.material.dispose(),this.children[0].geometry.dispose(),this.children[0].material.dispose()}}const c2=new $;let rg,Fv;class Q5 extends fn{constructor(e=new $(0,0,1),t=new $(0,0,0),n=1,i=16776960,s=n*.2,o=s*.2){super(),this.type="ArrowHelper",rg===void 0&&(rg=new Jt,rg.setAttribute("position",new Et([0,0,0,0,1,0],3)),Fv=new Xd(0,.5,1,5,1),Fv.translate(0,-.5,0)),this.position.copy(t),this.line=new nl(rg,new mi({color:i,toneMapped:!1})),this.line.matrixAutoUpdate=!1,this.add(this.line),this.cone=new hr(Fv,new vs({color:i,toneMapped:!1})),this.cone.matrixAutoUpdate=!1,this.add(this.cone),this.setDirection(e),this.setLength(n,s,o)}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{c2.set(e.z,0,-e.x).normalize();const t=Math.acos(e.y);this.quaternion.setFromAxisAngle(c2,t)}}setLength(e,t=e*.2,n=t*.2){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){return super.copy(e,!1),this.line.copy(e.line),this.cone.copy(e.cone),this}dispose(){this.line.geometry.dispose(),this.line.material.dispose(),this.cone.geometry.dispose(),this.cone.material.dispose()}}class Z5 extends bo{constructor(e=1){const t=[0,0,0,e,0,0,0,0,0,0,e,0,0,0,0,0,0,e],n=[1,0,0,1,.6,0,0,1,0,.6,1,0,0,0,1,0,.6,1],i=new Jt;i.setAttribute("position",new Et(t,3)),i.setAttribute("color",new Et(n,3));const s=new mi({vertexColors:!0,toneMapped:!1});super(i,s),this.type="AxesHelper"}
vendor: 5,461 bytes, line 83
83setColors(e,t,n){const i=new tt,s=this.geometry.attributes.color.array;return i.set(e),i.toArray(s,0),i.toArray(s,3),i.set(t),i.toArray(s,6),i.toArray(s,9),i.set(n),i.toArray(s,12),i.toArray(s,15),this.geometry.attributes.color.needsUpdate=!0,this}dispose(){this.geometry.dispose(),this.material.dispose()}}class eB{constructor(){this.type="ShapePath",this.color=new tt,this.subPaths=[],this.currentPath=null}moveTo(e,t){return this.currentPath=new Vp,this.subPaths.push(this.currentPath),this.currentPath.moveTo(e,t),this}lineTo(e,t){return this.currentPath.lineTo(e,t),this}quadraticCurveTo(e,t,n,i){return this.currentPath.quadraticCurveTo(e,t,n,i),this}bezierCurveTo(e,t,n,i,s,o){return this.currentPath.bezierCurveTo(e,t,n,i,s,o),this}splineThru(e){return this.currentPath.splineThru(e),this}toShapes(e){function t(M){const T=[];for(let I=0,P=M.length;I<P;I++){const k=M[I],O=new Au;O.curves=k.curves,T.push(O)}return T}function n(M,T){const I=T.length;let P=!1;for(let k=I-1,O=0;O<I;k=O++){let N=T[k],H=T[O],F=H.x-N.x,L=H.y-N.y;if(Math.abs(L)>Number.EPSILON){if(L<0&&(N=T[O],F=-F,H=T[k],L=-L),M.y<N.y||M.y>H.y)continue;if(M.y===N.y){if(M.x===N.x)return!0}else{const V=L*(M.x-N.x)-F*(M.y-N.y);if(V===0)return!0;if(V<0)continue;P=!P}}else{if(M.y!==N.y)continue;if(H.x<=M.x&&M.x<=N.x||N.x<=M.x&&M.x<=H.x)return!0}}return P}const i=Ko.isClockWise,s=this.subPaths;if(s.length===0)return[];let o,l,u;const d=[];if(s.length===1)return l=s[0],u=new Au,u.curves=l.curves,d.push(u),d;let p=!i(s[0].getPoints());p=e?!p:p;const m=[],y=[];let v=[],S=0,E;y[S]=void 0,v[S]=[];for(let M=0,T=s.length;M<T;M++)l=s[M],E=l.getPoints(),o=i(E),o=e?!o:o,o?(!p&&y[S]&&S++,y[S]={s:new Au,p:E},y[S].s.curves=l.curves,p&&S++,v[S]=[]):v[S].push({h:l,p:E[0]});if(!y[0])return t(s);if(y.length>1){let M=!1,T=0;for(let I=0,P=y.length;I<P;I++)m[I]=[];for(let I=0,P=y.length;I<P;I++){const k=v[I];for(let O=0;O<k.length;O++){const N=k[O];let H=!0;for(let F=0;F<y.length;F++)n(N.p,y[F].p)&&(I!==F&&T++,H?(H=!1,m[F].push(N)):M=!0);H&&m[I].push(N)}}T>0&&M===!1&&(v=m)}let A;for(let M=0,T=y.length;M<T;M++){u=y[M].s,d.push(u),A=v[M];for(let I=0,P=A.length;I<P;I++)u.holes.push(A[I].h)}return d}}class tB extends ta{constructor(e,t=null){super(),this.object=e,this.domElement=t,this.enabled=!0,this.state=-1,this.keys={},this.mouseButtons={LEFT:null,MIDDLE:null,RIGHT:null},this.touches={ONE:null,TWO:null}}connect(){}disconnect(){}dispose(){}update(){}}function nB(r,e){const t=r.image&&r.image.width?r.image.width/r.image.height:1;return t>e?(r.repeat.x=1,r.repeat.y=t/e,r.offset.x=0,r.offset.y=(1-r.repeat.y)/2):(r.repeat.x=e/t,r.repeat.y=1,r.offset.x=(1-r.repeat.x)/2,r.offset.y=0),r}function rB(r,e){const t=r.image&&r.image.width?r.image.width/r.image.height:1;return t>e?(r.repeat.x=e/t,r.repeat.y=1,r.offset.x=(1-r.repeat.x)/2,r.offset.y=0):(r.repeat.x=1,r.repeat.y=t/e,r.offset.x=0,r.offset.y=(1-r.repeat.y)/2),r}function iB(r){return r.repeat.x=1,r.repeat.y=1,r.offset.x=0,r.offset.y=0,r}function tx(r,e,t,n){const i=sB(n);switch(t){case Vx:return r*e;case Xx:return r*e;case Jx:return r*e*2;case Uy:return r*e/i.components*i.byteLength;case nm:return r*e/i.components*i.byteLength;case $x:return r*e*2/i.components*i.byteLength;case jy:return r*e*2/i.components*i.byteLength;case Wx:return r*e*3/i.components*i.byteLength;case hi:return r*e*4/i.components*i.byteLength;case zy:return r*e*4/i.components*i.byteLength;case Ap:case Ep:return Math.floor((r+3)/4)*Math.floor((e+3)/4)*8;case bp:case Cp:return Math.floor((r+3)/4)*Math.floor((e+3)/4)*16;case kg:case jg:return Math.max(r,16)*Math.max(e,8)/4;case Fg:case Ug:return Math.max(r,8)*Math.max(e,8)/2;case zg:case Hg:return Math.floor((r+3)/4)*Math.floor((e+3)/4)*8;case Gg:return Math.floor((r+3)/4)*Math.floor((e+3)/4)*16;case Vg:return Math.floor((r+3)/4)*Math.floor((e+3)/4)*16;case Wg:return Math.floor((r+4)/5)*Math.floor((e+3)/4)*16;case Xg:return Math.floor((r+4)/5)*Math.floor((e+4)/5)*16;case Jg:return Math.floor((r+5)/6)*Math.floor((e+4)/5)*16;case $g:return Math.floor((r+5)/6)*Math.floor((e+5)/6)*16;case Kg:return Math.floor((r+7)/8)*Math.floor((e+4)/5)*16;case Yg:return Math.floor((r+7)/8)*Math.floor((e+5)/6)*16;case qg:return Math.floor((r+7)/8)*Math.floor((e+7)/8)*16;case Qg:return Math.floor((r+9)/10)*Math.floor((e+4)/5)*16;case Zg:return Math.floor((r+9)/10)*Math.floor((e+5)/6)*16;case ey:return Math.floor((r+9)/10)*Math.floor((e+7)/8)*16;case ty:return Math.floor((r+9)/10)*Math.floor((e+9)/10)*16;case ny:return Math.floor((r+11)/12)*Math.floor((e+9)/10)*16;case ry:return Math.floor((r+11)/12)*Math.floor((e+11)/12)*16;case Tp:case iy:case sy:return Math.ceil(r/4)*Math.ceil(e/4)*16;case Kx:case oy:return Math.ceil(r/4)*Math.ceil(e/4)*8;case ay:case ly:return Math.ceil(r/4)*Math.ceil(e/4)*16}throw new Error(`Unable to determine texture byte length for ${t} format.`)}function sB(r){switch(r){case Mo:case zx:return{byteLength:1,components:1};case Dd:case Hx:case ju:return{byteLength:2,components:1};case Fy:case ky:return{byteLength:2,components:4};case tl:case Ny:case Di:return{byteLength:4,components:1};case Gx:return{byteLength:4,components:3}}throw new Error(`Unknown texture type ${r}.`)}const oB={contain:nB,cover:rB,fill:iB,getByteLength:tx};class aB extends Hs{constructor(e=1,t=1,n=1,i={}){console.warn('THREE.WebGLMultipleRenderTargets has been deprecated and will be removed in r172. Use THREE.WebGLRenderTarget and set the "count" parameter to enable MRT.'),super(e,t,{...i,count:n}
vendor: 4,828 bytes, lines 83-146
83),this.isWebGLMultipleRenderTargets=!0}get texture(){return this.textures}}typeof __THREE_DEVTOOLS__<"u"&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("register",{detail:{revision:em}}));typeof window<"u"&&(window.__THREE__?console.warn("WARNING: Multiple instances of Three.js being imported."):window.__THREE__=em);/**
84 * @license
85 * Copyright 2010-2024 Three.js Authors
86 * SPDX-License-Identifier: MIT
87 */function YC(){let r=null,e=!1,t=null,n=null;function i(s,o){t(s,o),n=r.requestAnimationFrame(i)}return{start:function(){e!==!0&&t!==null&&(n=r.requestAnimationFrame(i),e=!0)},stop:function(){r.cancelAnimationFrame(n),e=!1},setAnimationLoop:function(s){t=s},setContext:function(s){r=s}}}function lB(r){const e=new WeakMap;function t(l,u){const d=l.array,p=l.usage,m=d.byteLength,y=r.createBuffer();r.bindBuffer(u,y),r.bufferData(u,d,p),l.onUploadCallback();let v;if(d instanceof Float32Array)v=r.FLOAT;else if(d instanceof Uint16Array)l.isFloat16BufferAttribute?v=r.HALF_FLOAT:v=r.UNSIGNED_SHORT;else if(d instanceof Int16Array)v=r.SHORT;else if(d instanceof Uint32Array)v=r.UNSIGNED_INT;else if(d instanceof Int32Array)v=r.INT;else if(d instanceof Int8Array)v=r.BYTE;else if(d instanceof Uint8Array)v=r.UNSIGNED_BYTE;else if(d instanceof Uint8ClampedArray)v=r.UNSIGNED_BYTE;else throw new Error("THREE.WebGLAttributes: Unsupported buffer data format: "+d);return{buffer:y,type:v,bytesPerElement:d.BYTES_PER_ELEMENT,version:l.version,size:m}}function n(l,u,d){const p=u.array,m=u.updateRanges;if(r.bindBuffer(d,l),m.length===0)r.bufferSubData(d,0,p);else{m.sort((v,S)=>v.start-S.start);let y=0;for(let v=1;v<m.length;v++){const S=m[y],E=m[v];E.start<=S.start+S.count+1?S.count=Math.max(S.count,E.start+E.count-S.start):(++y,m[y]=E)}m.length=y+1;for(let v=0,S=m.length;v<S;v++){const E=m[v];r.bufferSubData(d,E.start*p.BYTES_PER_ELEMENT,p,E.start,E.count)}u.clearUpdateRanges()}u.onUploadCallback()}function i(l){return l.isInterleavedBufferAttribute&&(l=l.data),e.get(l)}function s(l){l.isInterleavedBufferAttribute&&(l=l.data);const u=e.get(l);u&&(r.deleteBuffer(u.buffer),e.delete(l))}function o(l,u){if(l.isInterleavedBufferAttribute&&(l=l.data),l.isGLBufferAttribute){const p=e.get(l);(!p||p.version<l.version)&&e.set(l,{buffer:l.buffer,type:l.type,bytesPerElement:l.elementSize,version:l.version});return}const d=e.get(l);if(d===void 0)e.set(l,t(l,u));else if(d.version<l.version){if(d.size!==l.array.byteLength)throw new Error("THREE.WebGLAttributes: The size of the buffer attribute's array buffer does not match the original size. Resizing buffer attributes is not supported.");n(d.buffer,l,u),d.version=l.version}}return{get:i,remove:s,update:o}}var cB=`#ifdef USE_ALPHAHASH
88	if ( diffuseColor.a < getAlphaHashThreshold( vPosition ) ) discard;
89#endif`,uB=`#ifdef USE_ALPHAHASH
90	const float ALPHA_HASH_SCALE = 0.05;
91	float hash2D( vec2 value ) {
92		return fract( 1.0e4 * sin( 17.0 * value.x + 0.1 * value.y ) * ( 0.1 + abs( sin( 13.0 * value.y + value.x ) ) ) );
93	}
94	float hash3D( vec3 value ) {
95		return hash2D( vec2( hash2D( value.xy ), value.z ) );
96	}
97	float getAlphaHashThreshold( vec3 position ) {
98		float maxDeriv = max(
99			length( dFdx( position.xyz ) ),
100			length( dFdy( position.xyz ) )
101		);
102		float pixScale = 1.0 / ( ALPHA_HASH_SCALE * maxDeriv );
103		vec2 pixScales = vec2(
104			exp2( floor( log2( pixScale ) ) ),
105			exp2( ceil( log2( pixScale ) ) )
106		);
107		vec2 alpha = vec2(
108			hash3D( floor( pixScales.x * position.xyz ) ),
109			hash3D( floor( pixScales.y * position.xyz ) )
110		);
111		float lerpFactor = fract( log2( pixScale ) );
112		float x = ( 1.0 - lerpFactor ) * alpha.x + lerpFactor * alpha.y;
113		float a = min( lerpFactor, 1.0 - lerpFactor );
114		vec3 cases = vec3(
115			x * x / ( 2.0 * a * ( 1.0 - a ) ),
116			( x - 0.5 * a ) / ( 1.0 - a ),
117			1.0 - ( ( 1.0 - x ) * ( 1.0 - x ) / ( 2.0 * a * ( 1.0 - a ) ) )
118		);
119		float threshold = ( x < ( 1.0 - a ) )
120			? ( ( x < a ) ? cases.x : cases.y )
121			: cases.z;
122		return clamp( threshold , 1.0e-6, 1.0 );
123	}
124#endif`,hB=`#ifdef USE_ALPHAMAP
125	diffuseColor.a *= texture2D( alphaMap, vAlphaMapUv ).g;
126#endif`,dB=`#ifdef USE_ALPHAMAP
127	uniform sampler2D alphaMap;
128#endif`,fB=`#ifdef USE_ALPHATEST
129	#ifdef ALPHA_TO_COVERAGE
130	diffuseColor.a = smoothstep( alphaTest, alphaTest + fwidth( diffuseColor.a ), diffuseColor.a );
131	if ( diffuseColor.a == 0.0 ) discard;
132	#else
133	if ( diffuseColor.a < alphaTest ) discard;
134	#endif
135#endif`,pB=`#ifdef USE_ALPHATEST
136	uniform float alphaTest;
137#endif`,mB=`#ifdef USE_AOMAP
138	float ambientOcclusion = ( texture2D( aoMap, vAoMapUv ).r - 1.0 ) * aoMapIntensity + 1.0;
139	reflectedLight.indirectDiffuse *= ambientOcclusion;
140	#if defined( USE_CLEARCOAT ) 
141		clearcoatSpecularIndirect *= ambientOcclusion;
142	#endif
143	#if defined( USE_SHEEN ) 
144		sheenSpecularIndirect *= ambientOcclusion;
145	#endif
146	#if defined( USE_ENVMAP ) && defined( STANDARD )
147		float dotNV = saturate( dot( geometryNormal, geometryViewDir ) );
148		reflectedLight.indirectSpecular *= computeSpecularOcclusion( dotNV, ambientOcclusion, material.roughness );
149	#endif
150#endif`,gB=`#ifdef USE_AOMAP
151	uniform sampler2D aoMap;
152	uniform float aoMapIntensity;
153#endif`,yB=`#ifdef USE_BATCHING
154	#if ! defined( GL_ANGLE_multi_draw )
155	#define gl_DrawID _gl_DrawID
156	uniform int _gl_DrawID;
157	#endif
158	uniform highp sampler2D batchingTexture;
159	uniform highp usampler2D batchingIdTexture;
160	mat4 getBatchingMatrix( const in float i ) {
161		int size = textureSize( batchingTexture, 0 ).x;
162		int j = int( i ) * 4;
163		int x = j % size;
164		int y = j / size;
165		vec4 v1 = texelFetch( batchingTexture, ivec2( x, y ), 0 );
166		vec4 v2 = texelFetch( batchingTexture, ivec2( x + 1, y ), 0 );
167		vec4 v3 = texelFetch( batchingTexture, ivec2( x + 2, y ), 0 );
168		vec4 v4 = texelFetch( batchingTexture, ivec2( x + 3, y ), 0 );
169		return mat4( v1, v2, v3, v4 );
170	}
171	float getIndirectIndex( const in int i ) {
172		int size = textureSize( batchingIdTexture, 0 ).x;
173		int x = i % size;
174		int y = i / size;
175		return float( texelFetch( batchingIdTexture, ivec2( x, y ), 0 ).r );
176	}
177#endif
178#ifdef USE_BATCHING_COLOR
179	uniform sampler2D batchingColorTexture;
180	vec3 getBatchingColor( const in float i ) {
181		int size = textureSize( batchingColorTexture, 0 ).x;
182		int j = int( i );
183		int x = j % size;
184		int y = j / size;
185		return texelFetch( batchingColorTexture, ivec2( x, y ), 0 ).rgb;
186	}
187#endif`,vB=`#ifdef USE_BATCHING
188	mat4 batchingMatrix = getBatchingMatrix( getIndirectIndex( gl_DrawID ) );
189#endif`,_B=`vec3 transformed = vec3( position );
190#ifdef USE_ALPHAHASH
191	vPosition = vec3( position );
192#endif`,xB=`vec3 objectNormal = vec3( normal );
193#ifdef USE_TANGENT
194	vec3 objectTangent = vec3( tangent.xyz );
195#endif`,MB=`float G_BlinnPhong_Implicit( ) {
196	return 0.25;
197}
198float D_BlinnPhong( const in float shininess, const in float dotNH ) {
199	return RECIPROCAL_PI * ( shininess * 0.5 + 1.0 ) * pow( dotNH, shininess );
200}
201vec3 BRDF_BlinnPhong( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, const in vec3 specularColor, const in float shininess ) {
202	vec3 halfDir = normalize( lightDir + viewDir );
203	float dotNH = saturate( dot( normal, halfDir ) );
204	float dotVH = saturate( dot( viewDir, halfDir ) );
205	vec3 F = F_Schlick( specularColor, 1.0, dotVH );
206	float G = G_BlinnPhong_Implicit( );
207	float D = D_BlinnPhong( shininess, dotNH );
208	return F * ( G * D );
209} // validated`,SB=`#ifdef USE_IRIDESCENCE
210	const mat3 XYZ_TO_REC709 = mat3(
211		 3.2404542, -0.9692660,  0.0556434,
212		-1.5371385,  1.8760108, -0.2040259,
213		-0.4985314,  0.0415560,  1.0572252
214	);
215	vec3 Fresnel0ToIor( vec3 fresnel0 ) {
216		vec3 sqrtF0 = sqrt( fresnel0 );
217		return ( vec3( 1.0 ) + sqrtF0 ) / ( vec3( 1.0 ) - sqrtF0 );
218	}
219	vec3 IorToFresnel0( vec3 transmittedIor, float incidentIor ) {
220		return pow2( ( transmittedIor - vec3( incidentIor ) ) / ( transmittedIor + vec3( incidentIor ) ) );
221	}
222	float IorToFresnel0( float transmittedIor, float incidentIor ) {
223		return pow2( ( transmittedIor - incidentIor ) / ( transmittedIor + incidentIor ));
224	}
225	vec3 evalSensitivity( float OPD, vec3 shift ) {
226		float phase = 2.0 * PI * OPD * 1.0e-9;
227		vec3 val = vec3( 5.4856e-13, 4.4201e-13, 5.2481e-13 );
228		vec3 pos = vec3( 1.6810e+06, 1.7953e+06, 2.2084e+06 );
229		vec3 var = vec3( 4.3278e+09, 9.3046e+09, 6.6121e+09 );
230		vec3 xyz = val * sqrt( 2.0 * PI * var ) * cos( pos * phase + shift ) * exp( - pow2( phase ) * var );
231		xyz.x += 9.7470e-14 * sqrt( 2.0 * PI * 4.5282e+09 ) * cos( 2.2399e+06 * phase + shift[ 0 ] ) * exp( - 4.5282e+09 * pow2( phase ) );
232		xyz /= 1.0685e-7;
233		vec3 rgb = XYZ_TO_REC709 * xyz;
234		return rgb;
235	}
236	vec3 evalIridescence( float outsideIOR, float eta2, float cosTheta1, float thinFilmThickness, vec3 baseF0 ) {
237		vec3 I;
238		float iridescenceIOR = mix( outsideIOR, eta2, smoothstep( 0.0, 0.03, thinFilmThickness ) );
239		float sinTheta2Sq = pow2( outsideIOR / iridescenceIOR ) * ( 1.0 - pow2( cosTheta1 ) );
240		float cosTheta2Sq = 1.0 - sinTheta2Sq;
241		if ( cosTheta2Sq < 0.0 ) {
242			return vec3( 1.0 );
243		}
244		float cosTheta2 = sqrt( cosTheta2Sq );
245		float R0 = IorToFresnel0( iridescenceIOR, outsideIOR );
246		float R12 = F_Schlick( R0, 1.0, cosTheta1 );
247		float T121 = 1.0 - R12;
248		float phi12 = 0.0;
249		if ( iridescenceIOR < outsideIOR ) phi12 = PI;
250		float phi21 = PI - phi12;
251		vec3 baseIOR = Fresnel0ToIor( clamp( baseF0, 0.0, 0.9999 ) );		vec3 R1 = IorToFresnel0( baseIOR, iridescenceIOR );
252		vec3 R23 = F_Schlick( R1, 1.0, cosTheta2 );
253		vec3 phi23 = vec3( 0.0 );
254		if ( baseIOR[ 0 ] < iridescenceIOR ) phi23[ 0 ] = PI;
255		if ( baseIOR[ 1 ] < iridescenceIOR ) phi23[ 1 ] = PI;
256		if ( baseIOR[ 2 ] < iridescenceIOR ) phi23[ 2 ] = PI;
257		float OPD = 2.0 * iridescenceIOR * thinFilmThickness * cosTheta2;
258		vec3 phi = vec3( phi21 ) + phi23;
259		vec3 R123 = clamp( R12 * R23, 1e-5, 0.9999 );
260		vec3 r123 = sqrt( R123 );
261		vec3 Rs = pow2( T121 ) * R23 / ( vec3( 1.0 ) - R123 );
262		vec3 C0 = R12 + Rs;
263		I = C0;
264		vec3 Cm = Rs - T121;
265		for ( int m = 1; m <= 2; ++ m ) {
266			Cm *= r123;
267			vec3 Sm = 2.0 * evalSensitivity( float( m ) * OPD, float( m ) * phi );
268			I += Cm * Sm;
269		}
270		return max( I, vec3( 0.0 ) );
271	}
272#endif`,wB=`#ifdef USE_BUMPMAP
273	uniform sampler2D bumpMap;
274	uniform float bumpScale;
275	vec2 dHdxy_fwd() {
276		vec2 dSTdx = dFdx( vBumpMapUv );
277		vec2 dSTdy = dFdy( vBumpMapUv );
278		float Hll = bumpScale * texture2D( bumpMap, vBumpMapUv ).x;
279		float dBx = bumpScale * texture2D( bumpMap, vBumpMapUv + dSTdx ).x - Hll;
280		float dBy = bumpScale * texture2D( bumpMap, vBumpMapUv + dSTdy ).x - Hll;
281		return vec2( dBx, dBy );
282	}
283	vec3 perturbNormalArb( vec3 surf_pos, vec3 surf_norm, vec2 dHdxy, float faceDirection ) {
284		vec3 vSigmaX = normalize( dFdx( surf_pos.xyz ) );
285		vec3 vSigmaY = normalize( dFdy( surf_pos.xyz ) );
286		vec3 vN = surf_norm;
287		vec3 R1 = cross( vSigmaY, vN );
288		vec3 R2 = cross( vN, vSigmaX );
289		float fDet = dot( vSigmaX, R1 ) * faceDirection;
290		vec3 vGrad = sign( fDet ) * ( dHdxy.x * R1 + dHdxy.y * R2 );
291		return normalize( abs( fDet ) * surf_norm - vGrad );
292	}
293#endif`,AB=`#if NUM_CLIPPING_PLANES > 0
294	vec4 plane;
295	#ifdef ALPHA_TO_COVERAGE
296		float distanceToPlane, distanceGradient;
297		float clipOpacity = 1.0;
298		#pragma unroll_loop_start
299		for ( int i = 0; i < UNION_CLIPPING_PLANES; i ++ ) {
300			plane = clippingPlanes[ i ];
301			distanceToPlane = - dot( vClipPosition, plane.xyz ) + plane.w;
302			distanceGradient = fwidth( distanceToPlane ) / 2.0;
303			clipOpacity *= smoothstep( - distanceGradient, distanceGradient, distanceToPlane );
304			if ( clipOpacity == 0.0 ) discard;
305		}
306		#pragma unroll_loop_end
307		#if UNION_CLIPPING_PLANES < NUM_CLIPPING_PLANES
308			float unionClipOpacity = 1.0;
309			#pragma unroll_loop_start
310			for ( int i = UNION_CLIPPING_PLANES; i < NUM_CLIPPING_PLANES; i ++ ) {
311				plane = clippingPlanes[ i ];
312				distanceToPlane = - dot( vClipPosition, plane.xyz ) + plane.w;
313				distanceGradient = fwidth( distanceToPlane ) / 2.0;
314				unionClipOpacity *= 1.0 - smoothstep( - distanceGradient, distanceGradient, distanceToPlane );
315			}
316			#pragma unroll_loop_end
317			clipOpacity *= 1.0 - unionClipOpacity;
318		#endif
319		diffuseColor.a *= clipOpacity;
320		if ( diffuseColor.a == 0.0 ) discard;
321	#else
322		#pragma unroll_loop_start
323		for ( int i = 0; i < UNION_CLIPPING_PLANES; i ++ ) {
324			plane = clippingPlanes[ i ];
325			if ( dot( vClipPosition, plane.xyz ) > plane.w ) discard;
326		}
327		#pragma unroll_loop_end
328		#if UNION_CLIPPING_PLANES < NUM_CLIPPING_PLANES
329			bool clipped = true;
330			#pragma unroll_loop_start
331			for ( int i = UNION_CLIPPING_PLANES; i < NUM_CLIPPING_PLANES; i ++ ) {
332				plane = clippingPlanes[ i ];
333				clipped = ( dot( vClipPosition, plane.xyz ) > plane.w ) && clipped;
334			}
335			#pragma unroll_loop_end
336			if ( clipped ) discard;
337		#endif
338	#endif
339#endif`,EB=`#if NUM_CLIPPING_PLANES > 0
340	varying vec3 vClipPosition;
341	uniform vec4 clippingPlanes[ NUM_CLIPPING_PLANES ];
342#endif`,bB=`#if NUM_CLIPPING_PLANES > 0
343	varying vec3 vClipPosition;
344#endif`,CB=`#if NUM_CLIPPING_PLANES > 0
345	vClipPosition = - mvPosition.xyz;
346#endif`,TB=`#if defined( USE_COLOR_ALPHA )
347	diffuseColor *= vColor;
348#elif defined( USE_COLOR )
349	diffuseColor.rgb *= vColor;
350#endif`,IB=`#if defined( USE_COLOR_ALPHA )
351	varying vec4 vColor;
352#elif defined( USE_COLOR )
353	varying vec3 vColor;
354#endif`,PB=`#if defined( USE_COLOR_ALPHA )
355	varying vec4 vColor;
356#elif defined( USE_COLOR ) || defined( USE_INSTANCING_COLOR ) || defined( USE_BATCHING_COLOR )
357	varying vec3 vColor;
358#endif`,RB=`#if defined( USE_COLOR_ALPHA )
359	vColor = vec4( 1.0 );
360#elif defined( USE_COLOR ) || defined( USE_INSTANCING_COLOR ) || defined( USE_BATCHING_COLOR )
361	vColor = vec3( 1.0 );
362#endif
363#ifdef USE_COLOR
364	vColor *= color;
365#endif
366#ifdef USE_INSTANCING_COLOR
367	vColor.xyz *= instanceColor.xyz;
368#endif
369#ifdef USE_BATCHING_COLOR
370	vec3 batchingColor = getBatchingColor( getIndirectIndex( gl_DrawID ) );
371	vColor.xyz *= batchingColor.xyz;
372#endif`,BB=`#define PI 3.141592653589793
373#define PI2 6.283185307179586
374#define PI_HALF 1.5707963267948966
375#define RECIPROCAL_PI 0.3183098861837907
376#define RECIPROCAL_PI2 0.15915494309189535
377#define EPSILON 1e-6
378#ifndef saturate
379#define saturate( a ) clamp( a, 0.0, 1.0 )
380#endif
381#define whiteComplement( a ) ( 1.0 - saturate( a ) )
382float pow2( const in float x ) { return x*x; }
383vec3 pow2( const in vec3 x ) { return x*x; }
384float pow3( const in float x ) { return x*x*x; }
385float pow4( const in float x ) { float x2 = x*x; return x2*x2; }
386float max3( const in vec3 v ) { return max( max( v.x, v.y ), v.z ); }
387float average( const in vec3 v ) { return dot( v, vec3( 0.3333333 ) ); }
388highp float rand( const in vec2 uv ) {
389	const highp float a = 12.9898, b = 78.233, c = 43758.5453;
390	highp float dt = dot( uv.xy, vec2( a,b ) ), sn = mod( dt, PI );
391	return fract( sin( sn ) * c );
392}
393#ifdef HIGH_PRECISION
394	float precisionSafeLength( vec3 v ) { return length( v ); }
395#else
396	float precisionSafeLength( vec3 v ) {
397		float maxComponent = max3( abs( v ) );
398		return length( v / maxComponent ) * maxComponent;
399	}
400#endif
401struct IncidentLight {
402	vec3 color;
403	vec3 direction;
404	bool visible;
405};
406struct ReflectedLight {
407	vec3 directDiffuse;
408	vec3 directSpecular;
409	vec3 indirectDiffuse;
410	vec3 indirectSpecular;
411};
412#ifdef USE_ALPHAHASH
413	varying vec3 vPosition;
414#endif
415vec3 transformDirection( in vec3 dir, in mat4 matrix ) {
416	return normalize( ( matrix * vec4( dir, 0.0 ) ).xyz );
417}
418vec3 inverseTransformDirection( in vec3 dir, in mat4 matrix ) {
419	return normalize( ( vec4( dir, 0.0 ) * matrix ).xyz );
420}
421mat3 transposeMat3( const in mat3 m ) {
422	mat3 tmp;
423	tmp[ 0 ] = vec3( m[ 0 ].x, m[ 1 ].x, m[ 2 ].x );
424	tmp[ 1 ] = vec3( m[ 0 ].y, m[ 1 ].y, m[ 2 ].y );
425	tmp[ 2 ] = vec3( m[ 0 ].z, m[ 1 ].z, m[ 2 ].z );
426	return tmp;
427}
428bool isPerspectiveMatrix( mat4 m ) {
429	return m[ 2 ][ 3 ] == - 1.0;
430}
431vec2 equirectUv( in vec3 dir ) {
432	float u = atan( dir.z, dir.x ) * RECIPROCAL_PI2 + 0.5;
433	float v = asin( clamp( dir.y, - 1.0, 1.0 ) ) * RECIPROCAL_PI + 0.5;
434	return vec2( u, v );
435}
436vec3 BRDF_Lambert( const in vec3 diffuseColor ) {
437	return RECIPROCAL_PI * diffuseColor;
438}
439vec3 F_Schlick( const in vec3 f0, const in float f90, const in float dotVH ) {
440	float fresnel = exp2( ( - 5.55473 * dotVH - 6.98316 ) * dotVH );
441	return f0 * ( 1.0 - fresnel ) + ( f90 * fresnel );
442}
443float F_Schlick( const in float f0, const in float f90, const in float dotVH ) {
444	float fresnel = exp2( ( - 5.55473 * dotVH - 6.98316 ) * dotVH );
445	return f0 * ( 1.0 - fresnel ) + ( f90 * fresnel );
446} // validated`,OB=`#ifdef ENVMAP_TYPE_CUBE_UV
447	#define cubeUV_minMipLevel 4.0
448	#define cubeUV_minTileSize 16.0
449	float getFace( vec3 direction ) {
450		vec3 absDirection = abs( direction );
451		float face = - 1.0;
452		if ( absDirection.x > absDirection.z ) {
453			if ( absDirection.x > absDirection.y )
454				face = direction.x > 0.0 ? 0.0 : 3.0;
455			else
456				face = direction.y > 0.0 ? 1.0 : 4.0;
457		} else {
458			if ( absDirection.z > absDirection.y )
459				face = direction.z > 0.0 ? 2.0 : 5.0;
460			else
461				face = direction.y > 0.0 ? 1.0 : 4.0;
462		}
463		return face;
464	}
465	vec2 getUV( vec3 direction, float face ) {
466		vec2 uv;
467		if ( face == 0.0 ) {
468			uv = vec2( direction.z, direction.y ) / abs( direction.x );
469		} else if ( face == 1.0 ) {
470			uv = vec2( - direction.x, - direction.z ) / abs( direction.y );
471		} else if ( face == 2.0 ) {
472			uv = vec2( - direction.x, direction.y ) / abs( direction.z );
473		} else if ( face == 3.0 ) {
474			uv = vec2( - direction.z, direction.y ) / abs( direction.x );
475		} else if ( face == 4.0 ) {
476			uv = vec2( - direction.x, direction.z ) / abs( direction.y );
477		} else {
478			uv = vec2( direction.x, direction.y ) / abs( direction.z );
479		}
480		return 0.5 * ( uv + 1.0 );
481	}
482	vec3 bilinearCubeUV( sampler2D envMap, vec3 direction, float mipInt ) {
483		float face = getFace( direction );
484		float filterInt = max( cubeUV_minMipLevel - mipInt, 0.0 );
485		mipInt = max( mipInt, cubeUV_minMipLevel );
486		float faceSize = exp2( mipInt );
487		highp vec2 uv = getUV( direction, face ) * ( faceSize - 2.0 ) + 1.0;
488		if ( face > 2.0 ) {
489			uv.y += faceSize;
490			face -= 3.0;
491		}
492		uv.x += face * faceSize;
493		uv.x += filterInt * 3.0 * cubeUV_minTileSize;
494		uv.y += 4.0 * ( exp2( CUBEUV_MAX_MIP ) - faceSize );
495		uv.x *= CUBEUV_TEXEL_WIDTH;
496		uv.y *= CUBEUV_TEXEL_HEIGHT;
497		#ifdef texture2DGradEXT
498			return texture2DGradEXT( envMap, uv, vec2( 0.0 ), vec2( 0.0 ) ).rgb;
499		#else
500			return texture2D( envMap, uv ).rgb;
501		#endif
502	}
503	#define cubeUV_r0 1.0
504	#define cubeUV_m0 - 2.0
505	#define cubeUV_r1 0.8
506	#define cubeUV_m1 - 1.0
507	#define cubeUV_r4 0.4
508	#define cubeUV_m4 2.0
509	#define cubeUV_r5 0.305
510	#define cubeUV_m5 3.0
511	#define cubeUV_r6 0.21
512	#define cubeUV_m6 4.0
513	float roughnessToMip( float roughness ) {
514		float mip = 0.0;
515		if ( roughness >= cubeUV_r1 ) {
516			mip = ( cubeUV_r0 - roughness ) * ( cubeUV_m1 - cubeUV_m0 ) / ( cubeUV_r0 - cubeUV_r1 ) + cubeUV_m0;
517		} else if ( roughness >= cubeUV_r4 ) {
518			mip = ( cubeUV_r1 - roughness ) * ( cubeUV_m4 - cubeUV_m1 ) / ( cubeUV_r1 - cubeUV_r4 ) + cubeUV_m1;
519		} else if ( roughness >= cubeUV_r5 ) {
520			mip = ( cubeUV_r4 - roughness ) * ( cubeUV_m5 - cubeUV_m4 ) / ( cubeUV_r4 - cubeUV_r5 ) + cubeUV_m4;
521		} else if ( roughness >= cubeUV_r6 ) {
522			mip = ( cubeUV_r5 - roughness ) * ( cubeUV_m6 - cubeUV_m5 ) / ( cubeUV_r5 - cubeUV_r6 ) + cubeUV_m5;
523		} else {
524			mip = - 2.0 * log2( 1.16 * roughness );		}
525		return mip;
526	}
527	vec4 textureCubeUV( sampler2D envMap, vec3 sampleDir, float roughness ) {
528		float mip = clamp( roughnessToMip( roughness ), cubeUV_m0, CUBEUV_MAX_MIP );
529		float mipF = fract( mip );
530		float mipInt = floor( mip );
531		vec3 color0 = bilinearCubeUV( envMap, sampleDir, mipInt );
532		if ( mipF == 0.0 ) {
533			return vec4( color0, 1.0 );
534		} else {
535			vec3 color1 = bilinearCubeUV( envMap, sampleDir, mipInt + 1.0 );
536			return vec4( mix( color0, color1, mipF ), 1.0 );
537		}
538	}
539#endif`,DB=`vec3 transformedNormal = objectNormal;
540#ifdef USE_TANGENT
541	vec3 transformedTangent = objectTangent;
542#endif
543#ifdef USE_BATCHING
544	mat3 bm = mat3( batchingMatrix );
545	transformedNormal /= vec3( dot( bm[ 0 ], bm[ 0 ] ), dot( bm[ 1 ], bm[ 1 ] ), dot( bm[ 2 ], bm[ 2 ] ) );
546	transformedNormal = bm * transformedNormal;
547	#ifdef USE_TANGENT
548		transformedTangent = bm * transformedTangent;
549	#endif
550#endif
551#ifdef USE_INSTANCING
552	mat3 im = mat3( instanceMatrix );
553	transformedNormal /= vec3( dot( im[ 0 ], im[ 0 ] ), dot( im[ 1 ], im[ 1 ] ), dot( im[ 2 ], im[ 2 ] ) );
554	transformedNormal = im * transformedNormal;
555	#ifdef USE_TANGENT
556		transformedTangent = im * transformedTangent;
557	#endif
558#endif
559transformedNormal = normalMatrix * transformedNormal;
560#ifdef FLIP_SIDED
561	transformedNormal = - transformedNormal;
562#endif
563#ifdef USE_TANGENT
564	transformedTangent = ( modelViewMatrix * vec4( transformedTangent, 0.0 ) ).xyz;
565	#ifdef FLIP_SIDED
566		transformedTangent = - transformedTangent;
567	#endif
568#endif`,LB=`#ifdef USE_DISPLACEMENTMAP
569	uniform sampler2D displacementMap;
570	uniform float displacementScale;
571	uniform float displacementBias;
572#endif`,NB=`#ifdef USE_DISPLACEMENTMAP
573	transformed += normalize( objectNormal ) * ( texture2D( displacementMap, vDisplacementMapUv ).x * displacementScale + dis
573placementBias );
574#endif`,FB=`#ifdef USE_EMISSIVEMAP
575	vec4 emissiveColor = texture2D( emissiveMap, vEmissiveMapUv );
576	#ifdef DECODE_VIDEO_TEXTURE_EMISSIVE
577		emissiveColor = sRGBTransferEOTF( emissiveColor );
578	#endif
579	totalEmissiveRadiance *= emissiveColor.rgb;
580#endif`,kB=`#ifdef USE_EMISSIVEMAP
581	uniform sampler2D emissiveMap;
582#endif`,UB="gl_FragColor = linearToOutputTexel( gl_FragColor );",jB=`vec4 LinearTransferOETF( in vec4 value ) {
583	return value;
584}
585vec4 sRGBTransferEOTF( in vec4 value ) {
586	return 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 );
587}
588vec4 sRGBTransferOETF( in vec4 value ) {
589	return 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 );
590}`,zB=`#ifdef USE_ENVMAP
591	#ifdef ENV_WORLDPOS
592		vec3 cameraToFrag;
593		if ( isOrthographic ) {
594			cameraToFrag = normalize( vec3( - viewMatrix[ 0 ][ 2 ], - viewMatrix[ 1 ][ 2 ], - viewMatrix[ 2 ][ 2 ] ) );
595		} else {
596			cameraToFrag = normalize( vWorldPosition - cameraPosition );
597		}
598		vec3 worldNormal = inverseTransformDirection( normal, viewMatrix );
599		#ifdef ENVMAP_MODE_REFLECTION
600			vec3 reflectVec = reflect( cameraToFrag, worldNormal );
601		#else
602			vec3 reflectVec = refract( cameraToFrag, worldNormal, refractionRatio );
603		#endif
604	#else
605		vec3 reflectVec = vReflect;
606	#endif
607	#ifdef ENVMAP_TYPE_CUBE
608		vec4 envColor = textureCube( envMap, envMapRotation * vec3( flipEnvMap * reflectVec.x, reflectVec.yz ) );
609	#else
610		vec4 envColor = vec4( 0.0 );
611	#endif
612	#ifdef ENVMAP_BLENDING_MULTIPLY
613		outgoingLight = mix( outgoingLight, outgoingLight * envColor.xyz, specularStrength * reflectivity );
614	#elif defined( ENVMAP_BLENDING_MIX )
615		outgoingLight = mix( outgoingLight, envColor.xyz, specularStrength * reflectivity );
616	#elif defined( ENVMAP_BLENDING_ADD )
617		outgoingLight += envColor.xyz * specularStrength * reflectivity;
618	#endif
619#endif`,HB=`#ifdef USE_ENVMAP
620	uniform float envMapIntensity;
621	uniform float flipEnvMap;
622	uniform mat3 envMapRotation;
623	#ifdef ENVMAP_TYPE_CUBE
624		uniform samplerCube envMap;
625	#else
626		uniform sampler2D envMap;
627	#endif
628	
629#endif`,GB=`#ifdef USE_ENVMAP
630	uniform float reflectivity;
631	#if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG ) || defined( LAMBERT )
632		#define ENV_WORLDPOS
633	#endif
634	#ifdef ENV_WORLDPOS
635		varying vec3 vWorldPosition;
636		uniform float refractionRatio;
637	#else
638		varying vec3 vReflect;
639	#endif
640#endif`,VB=`#ifdef USE_ENVMAP
641	#if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG ) || defined( LAMBERT )
642		#define ENV_WORLDPOS
643	#endif
644	#ifdef ENV_WORLDPOS
645		
646		varying vec3 vWorldPosition;
647	#else
648		varying vec3 vReflect;
649		uniform float refractionRatio;
650	#endif
651#endif`,WB=`#ifdef USE_ENVMAP
652	#ifdef ENV_WORLDPOS
653		vWorldPosition = worldPosition.xyz;
654	#else
655		vec3 cameraToVertex;
656		if ( isOrthographic ) {
657			cameraToVertex = normalize( vec3( - viewMatrix[ 0 ][ 2 ], - viewMatrix[ 1 ][ 2 ], - viewMatrix[ 2 ][ 2 ] ) );
658		} else {
659			cameraToVertex = normalize( worldPosition.xyz - cameraPosition );
660		}
661		vec3 worldNormal = inverseTransformDirection( transformedNormal, viewMatrix );
662		#ifdef ENVMAP_MODE_REFLECTION
663			vReflect = reflect( cameraToVertex, worldNormal );
664		#else
665			vReflect = refract( cameraToVertex, worldNormal, refractionRatio );
666		#endif
667	#endif
668#endif`,XB=`#ifdef USE_FOG
669	vFogDepth = - mvPosition.z;
670#endif`,JB=`#ifdef USE_FOG
671	varying float vFogDepth;
672#endif`,$B=`#ifdef USE_FOG
673	#ifdef FOG_EXP2
674		float fogFactor = 1.0 - exp( - fogDensity * fogDensity * vFogDepth * vFogDepth );
675	#else
676		float fogFactor = smoothstep( fogNear, fogFar, vFogDepth );
677	#endif
678	gl_FragColor.rgb = mix( gl_FragColor.rgb, fogColor, fogFactor );
679#endif`,KB=`#ifdef USE_FOG
680	uniform vec3 fogColor;
681	varying float vFogDepth;
682	#ifdef FOG_EXP2
683		uniform float fogDensity;
684	#else
685		uniform float fogNear;
686		uniform float fogFar;
687	#endif
688#endif`,YB=`#ifdef USE_GRADIENTMAP
689	uniform sampler2D gradientMap;
690#endif
691vec3 getGradientIrradiance( vec3 normal, vec3 lightDirection ) {
692	float dotNL = dot( normal, lightDirection );
693	vec2 coord = vec2( dotNL * 0.5 + 0.5, 0.0 );
694	#ifdef USE_GRADIENTMAP
695		return vec3( texture2D( gradientMap, coord ).r );
696	#else
697		vec2 fw = fwidth( coord ) * 0.5;
698		return mix( vec3( 0.7 ), vec3( 1.0 ), smoothstep( 0.7 - fw.x, 0.7 + fw.x, coord.x ) );
699	#endif
700}`,qB=`#ifdef USE_LIGHTMAP
701	uniform sampler2D lightMap;
702	uniform float lightMapIntensity;
703#endif`,QB=`LambertMaterial material;
704material.diffuseColor = diffuseColor.rgb;
705material.specularStrength = specularStrength;`,ZB=`varying vec3 vViewPosition;
706struct LambertMaterial {
707	vec3 diffuseColor;
708	float specularStrength;
709};
710void RE_Direct_Lambert( const in IncidentLight directLight, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in LambertMaterial material, inout ReflectedLight reflectedLight ) {
711	float dotNL = saturate( dot( geometryNormal, directLight.direction ) );
712	vec3 irradiance = dotNL * directLight.color;
713	reflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );
714}
715void RE_IndirectDiffuse_Lambert( const in vec3 irradiance, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in LambertMaterial material, inout ReflectedLight reflectedLight ) {
716	reflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );
717}
718#define RE_Direct				RE_Direct_Lambert
719#define RE_IndirectDiffuse		RE_IndirectDiffuse_Lambert`,eO=`uniform bool receiveShadow;
720uniform vec3 ambientLightColor;
721#if defined( USE_LIGHT_PROBES )
722	uniform vec3 lightProbe[ 9 ];
723#endif
724vec3 shGetIrradianceAt( in vec3 normal, in vec3 shCoefficients[ 9 ] ) {
725	float x = normal.x, y = normal.y, z = normal.z;
726	vec3 result = shCoefficients[ 0 ] * 0.886227;
727	result += shCoefficients[ 1 ] * 2.0 * 0.511664 * y;
728	result += shCoefficients[ 2 ] * 2.0 * 0.511664 * z;
729	result += shCoefficients[ 3 ] * 2.0 * 0.511664 * x;
730	result += shCoefficients[ 4 ] * 2.0 * 0.429043 * x * y;
731	result += shCoefficients[ 5 ] * 2.0 * 0.429043 * y * z;
732	result += shCoefficients[ 6 ] * ( 0.743125 * z * z - 0.247708 );
733	result += shCoefficients[ 7 ] * 2.0 * 0.429043 * x * z;
734	result += shCoefficients[ 8 ] * 0.429043 * ( x * x - y * y );
735	return result;
736}
737vec3 getLightProbeIrradiance( const in vec3 lightProbe[ 9 ], const in vec3 normal ) {
738	vec3 worldNormal = inverseTransformDirection( normal, viewMatrix );
739	vec3 irradiance = shGetIrradianceAt( worldNormal, lightProbe );
740	return irradiance;
741}
742vec3 getAmbientLightIrradiance( const in vec3 ambientLightColor ) {
743	vec3 irradiance = ambientLightColor;
744	return irradiance;
745}
746float getDistanceAttenuation( const in float lightDistance, const in float cutoffDistance, const in float decayExponent ) {
747	float distanceFalloff = 1.0 / max( pow( lightDistance, decayExponent ), 0.01 );
748	if ( cutoffDistance > 0.0 ) {
749		distanceFalloff *= pow2( saturate( 1.0 - pow4( lightDistance / cutoffDistance ) ) );
750	}
751	return distanceFalloff;
752}
753float getSpotAttenuation( const in float coneCosine, const in float penumbraCosine, const in float angleCosine ) {
754	return smoothstep( coneCosine, penumbraCosine, angleCosine );
755}
756#if NUM_DIR_LIGHTS > 0
757	struct DirectionalLight {
758		vec3 direction;
759		vec3 color;
760	};
761	uniform DirectionalLight directionalLights[ NUM_DIR_LIGHTS ];
762	void getDirectionalLightInfo( const in DirectionalLight directionalLight, out IncidentLight light ) {
763		light.color = directionalLight.color;
764		light.direction = directionalLight.direction;
765		light.visible = true;
766	}
767#endif
768#if NUM_POINT_LIGHTS > 0
769	struct PointLight {
770		vec3 position;
771		vec3 color;
772		float distance;
773		float decay;
774	};
775	uniform PointLight pointLights[ NUM_POINT_LIGHTS ];
776	void getPointLightInfo( const in PointLight pointLight, const in vec3 geometryPosition, out IncidentLight light ) {
777		vec3 lVector = pointLight.position - geometryPosition;
778		light.direction = normalize( lVector );
779		float lightDistance = length( lVector );
780		light.color = pointLight.color;
781		light.color *= getDistanceAttenuation( lightDistance, pointLight.distance, pointLight.decay );
782		light.visible = ( light.color != vec3( 0.0 ) );
783	}
784#endif
785#if NUM_SPOT_LIGHTS > 0
786	struct SpotLight {
787		vec3 position;
788		vec3 direction;
789		vec3 color;
790		float distance;
791		float decay;
792		float coneCos;
793		float penumbraCos;
794	};
795	uniform SpotLight spotLights[ NUM_SPOT_LIGHTS ];
796	void getSpotLightInfo( const in SpotLight spotLight, const in vec3 geometryPosition, out IncidentLight light ) {
797		vec3 lVector = spotLight.position - geometryPosition;
798		light.direction = normalize( lVector );
799		float angleCos = dot( light.direction, spotLight.direction );
800		float spotAttenuation = getSpotAttenuation( spotLight.coneCos, spotLight.penumbraCos, angleCos );
801		if ( spotAttenuation > 0.0 ) {
802			float lightDistance = length( lVector );
803			light.color = spotLight.color * spotAttenuation;
804			light.color *= getDistanceAttenuation( lightDistance, spotLight.distance, spotLight.decay );
805			light.visible = ( light.color != vec3( 0.0 ) );
806		} else {
807			light.color = vec3( 0.0 );
808			light.visible = false;
809		}
810	}
811#endif
812#if NUM_RECT_AREA_LIGHTS > 0
813	struct RectAreaLight {
814		vec3 color;
815		vec3 position;
816		vec3 halfWidth;
817		vec3 halfHeight;
818	};
819	uniform sampler2D ltc_1;	uniform sampler2D ltc_2;
820	uniform RectAreaLight rectAreaLights[ NUM_RECT_AREA_LIGHTS ];
821#endif
822#if NUM_HEMI_LIGHTS > 0
823	struct HemisphereLight {
824		vec3 direction;
825		vec3 skyColor;
826		vec3 groundColor;
827	};
828	uniform HemisphereLight hemisphereLights[ NUM_HEMI_LIGHTS ];
829	vec3 getHemisphereLightIrradiance( const in HemisphereLight hemiLight, const in vec3 normal ) {
830		float dotNL = dot( normal, hemiLight.direction );
831		float hemiDiffuseWeight = 0.5 * dotNL + 0.5;
832		vec3 irradiance = mix( hemiLight.groundColor, hemiLight.skyColor, hemiDiffuseWeight );
833		return irradiance;
834	}
835#endif`,tO=`#ifdef USE_ENVMAP
836	vec3 getIBLIrradiance( const in vec3 normal ) {
837		#ifdef ENVMAP_TYPE_CUBE_UV
838			vec3 worldNormal = inverseTransformDirection( normal, viewMatrix );
839			vec4 envMapColor = textureCubeUV( envMap, envMapRotation * worldNormal, 1.0 );
840			return PI * envMapColor.rgb * envMapIntensity;
841		#else
842			return vec3( 0.0 );
843		#endif
844	}
845	vec3 getIBLRadiance( const in vec3 viewDir, const in vec3 normal, const in float roughness ) {
846		#ifdef ENVMAP_TYPE_CUBE_UV
847			vec3 reflectVec = reflect( - viewDir, normal );
848			reflectVec = normalize( mix( reflectVec, normal, roughness * roughness) );
849			reflectVec = inverseTransformDirection( reflectVec, viewMatrix );
850			vec4 envMapColor = textureCubeUV( envMap, envMapRotation * reflectVec, roughness );
851			return envMapColor.rgb * envMapIntensity;
852		#else
853			return vec3( 0.0 );
854		#endif
855	}
856	#ifdef USE_ANISOTROPY
857		vec3 getIBLAnisotropyRadiance( const in vec3 viewDir, const in vec3 normal, const in float roughness, const in vec3 bitangent, const in float anisotropy ) {
858			#ifdef ENVMAP_TYPE_CUBE_UV
859				vec3 bentNormal = cross( bitangent, viewDir );
860				bentNormal = normalize( cross( bentNormal, bitangent ) );
861				bentNormal = normalize( mix( bentNormal, normal, pow2( pow2( 1.0 - anisotropy * ( 1.0 - roughness ) ) ) ) );
862				return getIBLRadiance( viewDir, bentNormal, roughness );
863			#else
864				return vec3( 0.0 );
865			#endif
866		}
867	#endif
868#endif`,nO=`ToonMaterial material;
869material.diffuseColor = diffuseColor.rgb;`,rO=`varying vec3 vViewPosition;
870struct ToonMaterial {
871	vec3 diffuseColor;
872};
873void RE_Direct_Toon( const in IncidentLight directLight, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in ToonMaterial material, inout ReflectedLight reflectedLight ) {
874	vec3 irradiance = getGradientIrradiance( geometryNormal, directLight.direction ) * directLight.color;
875	reflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );
876}
877void RE_IndirectDiffuse_Toon( const in vec3 irradiance, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in ToonMaterial material, inout ReflectedLight reflectedLight ) {
878	reflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );
879}
880#define RE_Direct				RE_Direct_Toon
881#define RE_IndirectDiffuse		RE_IndirectDiffuse_Toon`,iO=`BlinnPhongMaterial material;
882material.diffuseColor = diffuseColor.rgb;
883material.specularColor = specular;
884material.specularShininess = shininess;
885material.specularStrength = specularStrength;`,sO=`varying vec3 vViewPosition;
886struct BlinnPhongMaterial {
887	vec3 diffuseColor;
888	vec3 specularColor;
889	float specularShininess;
890	float specularStrength;
891};
892void RE_Direct_BlinnPhong( const in IncidentLight directLight, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in BlinnPhongMaterial material, inout ReflectedLight reflectedLight ) {
893	float dotNL = saturate( dot( geometryNormal, directLight.direction ) );
894	vec3 irradiance = dotNL * directLight.color;
895	reflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );
896	reflectedLight.directSpecular += irradiance * BRDF_BlinnPhong( directLight.direction, geometryViewDir, geometryNormal, material.specularColor, material.specularShininess ) * material.specularStrength;
897}
898void RE_IndirectDiffuse_BlinnPhong( const in vec3 irradiance, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in BlinnPhongMaterial material, inout ReflectedLight reflectedLight ) {
899	reflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );
900}
901#define RE_Direct				RE_Direct_BlinnPhong
902#define RE_IndirectDiffuse		RE_IndirectDiffuse_BlinnPhong`,oO=`PhysicalMaterial material;
903material.diffuseColor = diffuseColor.rgb * ( 1.0 - metalnessFactor );
904vec3 dxy = max( abs( dFdx( nonPerturbedNormal ) ), abs( dFdy( nonPerturbedNormal ) ) );
905float geometryRoughness = max( max( dxy.x, dxy.y ), dxy.z );
906material.roughness = max( roughnessFactor, 0.0525 );material.roughness += geometryRoughness;
907material.roughness = min( material.roughness, 1.0 );
908#ifdef IOR
909	material.ior = ior;
910	#ifdef USE_SPECULAR
911		float specularIntensityFactor = specularIntensity;
912		vec3 specularColorFactor = specularColor;
913		#ifdef USE_SPECULAR_COLORMAP
914			specularColorFactor *= texture2D( specularColorMap, vSpecularColorMapUv ).rgb;
915		#endif
916		#ifdef USE_SPECULAR_INTENSITYMAP
917			specularIntensityFactor *= texture2D( specularIntensityMap, vSpecularIntensityMapUv ).a;
918		#endif
919		material.specularF90 = mix( specularIntensityFactor, 1.0, metalnessFactor );
920	#else
921		float specularIntensityFactor = 1.0;
922		vec3 specularColorFactor = vec3( 1.0 );
923		material.specularF90 = 1.0;
924	#endif
925	material.specularColor = mix( min( pow2( ( material.ior - 1.0 ) / ( material.ior + 1.0 ) ) * specularColorFactor, vec3( 1.0 ) ) * specularIntensityFactor, diffuseColor.rgb, metalnessFactor );
926#else
927	material.specularColor = mix( vec3( 0.04 ), diffuseColor.rgb, metalnessFactor );
928	material.specularF90 = 1.0;
929#endif
930#ifdef USE_CLEARCOAT
931	material.clearcoat = clearcoat;
932	material.clearcoatRoughness = clearcoatRoughness;
933	material.clearcoatF0 = vec3( 0.04 );
934	material.clearcoatF90 = 1.0;
935	#ifdef USE_CLEARCOATMAP
936		material.clearcoat *= texture2D( clearcoatMap, vClearcoatMapUv ).x;
937	#endif
938	#ifdef USE_CLEARCOAT_ROUGHNESSMAP
939		material.clearcoatRoughness *= texture2D( clearcoatRoughnessMap, vClearcoatRoughnessMapUv ).y;
940	#endif
941	material.clearcoat = saturate( material.clearcoat );	material.clearcoatRoughness = max( material.clearcoatRoughness, 0.0525 );
942	material.clearcoatRoughness += geometryRoughness;
943	material.clearcoatRoughness = min( material.clearcoatRoughness, 1.0 );
944#endif
945#ifdef USE_DISPERSION
946	material.dispersion = dispersion;
947#endif
948#ifdef USE_IRIDESCENCE
949	material.iridescence = iridescence;
950	material.iridescenceIOR = iridescenceIOR;
951	#ifdef USE_IRIDESCENCEMAP
952		material.iridescence *= texture2D( iridescenceMap, vIridescenceMapUv ).r;
953	#endif
954	#ifdef USE_IRIDESCENCE_THICKNESSMAP
955		material.iridescenceThickness = (iridescenceThicknessMaximum - iridescenceThicknessMinimum) * texture2D( iridescenceThicknessMap, vIridescenceThicknessMapUv ).g + iridescenceThicknessMinimum;
956	#else
957		material.iridescenceThickness = iridescenceThicknessMaximum;
958	#endif
959#endif
960#ifdef USE_SHEEN
961	material.sheenColor = sheenColor;
962	#ifdef USE_SHEEN_COLORMAP
963		material.sheenColor *= texture2D( sheenColorMap, vSheenColorMapUv ).rgb;
964	#endif
965	material.sheenRoughness = clamp( sheenRoughness, 0.07, 1.0 );
966	#ifdef USE_SHEEN_ROUGHNESSMAP
967		material.sheenRoughness *= texture2D( sheenRoughnessMap, vSheenRoughnessMapUv ).a;
968	#endif
969#endif
970#ifdef USE_ANISOTROPY
971	#ifdef USE_ANISOTROPYMAP
972		mat2 anisotropyMat = mat2( anisotropyVector.x, anisotropyVector.y, - anisotropyVector.y, anisotropyVector.x );
973		vec3 anisotropyPolar = texture2D( anisotropyMap, vAnisotropyMapUv ).rgb;
974		vec2 anisotropyV = anisotropyMat * normalize( 2.0 * anisotropyPolar.rg - vec2( 1.0 ) ) * anisotropyPolar.b;
975	#else
976		vec2 anisotropyV = anisotropyVector;
977	#endif
978	material.anisotropy = length( anisotropyV );
979	if( material.anisotropy == 0.0 ) {
980		anisotropyV = vec2( 1.0, 0.0 );
981	} else {
982		anisotropyV /= material.anisotropy;
983		material.anisotropy = saturate( material.anisotropy );
984	}
985	material.alphaT = mix( pow2( material.roughness ), 1.0, pow2( material.anisotropy ) );
986	material.anisotropyT = tbn[ 0 ] * anisotropyV.x + tbn[ 1 ] * anisotropyV.y;
987	material.anisotropyB = tbn[ 1 ] * anisotropyV.x - tbn[ 0 ] * anisotropyV.y;
988#endif`,aO
vendor: 14,687 bytes, lines 988-1289
988=`struct PhysicalMaterial {
989	vec3 diffuseColor;
990	float roughness;
991	vec3 specularColor;
992	float specularF90;
993	float dispersion;
994	#ifdef USE_CLEARCOAT
995		float clearcoat;
996		float clearcoatRoughness;
997		vec3 clearcoatF0;
998		float clearcoatF90;
999	#endif
1000	#ifdef USE_IRIDESCENCE
1001		float iridescence;
1002		float iridescenceIOR;
1003		float iridescenceThickness;
1004		vec3 iridescenceFresnel;
1005		vec3 iridescenceF0;
1006	#endif
1007	#ifdef USE_SHEEN
1008		vec3 sheenColor;
1009		float sheenRoughness;
1010	#endif
1011	#ifdef IOR
1012		float ior;
1013	#endif
1014	#ifdef USE_TRANSMISSION
1015		float transmission;
1016		float transmissionAlpha;
1017		float thickness;
1018		float attenuationDistance;
1019		vec3 attenuationColor;
1020	#endif
1021	#ifdef USE_ANISOTROPY
1022		float anisotropy;
1023		float alphaT;
1024		vec3 anisotropyT;
1025		vec3 anisotropyB;
1026	#endif
1027};
1028vec3 clearcoatSpecularDirect = vec3( 0.0 );
1029vec3 clearcoatSpecularIndirect = vec3( 0.0 );
1030vec3 sheenSpecularDirect = vec3( 0.0 );
1031vec3 sheenSpecularIndirect = vec3(0.0 );
1032vec3 Schlick_to_F0( const in vec3 f, const in float f90, const in float dotVH ) {
1033    float x = clamp( 1.0 - dotVH, 0.0, 1.0 );
1034    float x2 = x * x;
1035    float x5 = clamp( x * x2 * x2, 0.0, 0.9999 );
1036    return ( f - vec3( f90 ) * x5 ) / ( 1.0 - x5 );
1037}
1038float V_GGX_SmithCorrelated( const in float alpha, const in float dotNL, const in float dotNV ) {
1039	float a2 = pow2( alpha );
1040	float gv = dotNL * sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNV ) );
1041	float gl = dotNV * sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNL ) );
1042	return 0.5 / max( gv + gl, EPSILON );
1043}
1044float D_GGX( const in float alpha, const in float dotNH ) {
1045	float a2 = pow2( alpha );
1046	float denom = pow2( dotNH ) * ( a2 - 1.0 ) + 1.0;
1047	return RECIPROCAL_PI * a2 / pow2( denom );
1048}
1049#ifdef USE_ANISOTROPY
1050	float V_GGX_SmithCorrelated_Anisotropic( const in float alphaT, const in float alphaB, const in float dotTV, const in float dotBV, const in float dotTL, const in float dotBL, const in float dotNV, const in float dotNL ) {
1051		float gv = dotNL * length( vec3( alphaT * dotTV, alphaB * dotBV, dotNV ) );
1052		float gl = dotNV * length( vec3( alphaT * dotTL, alphaB * dotBL, dotNL ) );
1053		float v = 0.5 / ( gv + gl );
1054		return saturate(v);
1055	}
1056	float D_GGX_Anisotropic( const in float alphaT, const in float alphaB, const in float dotNH, const in float dotTH, const in float dotBH ) {
1057		float a2 = alphaT * alphaB;
1058		highp vec3 v = vec3( alphaB * dotTH, alphaT * dotBH, a2 * dotNH );
1059		highp float v2 = dot( v, v );
1060		float w2 = a2 / v2;
1061		return RECIPROCAL_PI * a2 * pow2 ( w2 );
1062	}
1063#endif
1064#ifdef USE_CLEARCOAT
1065	vec3 BRDF_GGX_Clearcoat( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, const in PhysicalMaterial material) {
1066		vec3 f0 = material.clearcoatF0;
1067		float f90 = material.clearcoatF90;
1068		float roughness = material.clearcoatRoughness;
1069		float alpha = pow2( roughness );
1070		vec3 halfDir = normalize( lightDir + viewDir );
1071		float dotNL = saturate( dot( normal, lightDir ) );
1072		float dotNV = saturate( dot( normal, viewDir ) );
1073		float dotNH = saturate( dot( normal, halfDir ) );
1074		float dotVH = saturate( dot( viewDir, halfDir ) );
1075		vec3 F = F_Schlick( f0, f90, dotVH );
1076		float V = V_GGX_SmithCorrelated( alpha, dotNL, dotNV );
1077		float D = D_GGX( alpha, dotNH );
1078		return F * ( V * D );
1079	}
1080#endif
1081vec3 BRDF_GGX( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, const in PhysicalMaterial material ) {
1082	vec3 f0 = material.specularColor;
1083	float f90 = material.specularF90;
1084	float roughness = material.roughness;
1085	float alpha = pow2( roughness );
1086	vec3 halfDir = normalize( lightDir + viewDir );
1087	float dotNL = saturate( dot( normal, lightDir ) );
1088	float dotNV = saturate( dot( normal, viewDir ) );
1089	float dotNH = saturate( dot( normal, halfDir ) );
1090	float dotVH = saturate( dot( viewDir, halfDir ) );
1091	vec3 F = F_Schlick( f0, f90, dotVH );
1092	#ifdef USE_IRIDESCENCE
1093		F = mix( F, material.iridescenceFresnel, material.iridescence );
1094	#endif
1095	#ifdef USE_ANISOTROPY
1096		float dotTL = dot( material.anisotropyT, lightDir );
1097		float dotTV = dot( material.anisotropyT, viewDir );
1098		float dotTH = dot( material.anisotropyT, halfDir );
1099		float dotBL = dot( material.anisotropyB, lightDir );
1100		float dotBV = dot( material.anisotropyB, viewDir );
1101		float dotBH = dot( material.anisotropyB, halfDir );
1102		float V = V_GGX_SmithCorrelated_Anisotropic( material.alphaT, alpha, dotTV, dotBV, dotTL, dotBL, dotNV, dotNL );
1103		float D = D_GGX_Anisotropic( material.alphaT, alpha, dotNH, dotTH, dotBH );
1104	#else
1105		float V = V_GGX_SmithCorrelated( alpha, dotNL, dotNV );
1106		float D = D_GGX( alpha, dotNH );
1107	#endif
1108	return F * ( V * D );
1109}
1110vec2 LTC_Uv( const in vec3 N, const in vec3 V, const in float roughness ) {
1111	const float LUT_SIZE = 64.0;
1112	const float LUT_SCALE = ( LUT_SIZE - 1.0 ) / LUT_SIZE;
1113	const float LUT_BIAS = 0.5 / LUT_SIZE;
1114	float dotNV = saturate( dot( N, V ) );
1115	vec2 uv = vec2( roughness, sqrt( 1.0 - dotNV ) );
1116	uv = uv * LUT_SCALE + LUT_BIAS;
1117	return uv;
1118}
1119float LTC_ClippedSphereFormFactor( const in vec3 f ) {
1120	float l = length( f );
1121	return max( ( l * l + f.z ) / ( l + 1.0 ), 0.0 );
1122}
1123vec3 LTC_EdgeVectorFormFactor( const in vec3 v1, const in vec3 v2 ) {
1124	float x = dot( v1, v2 );
1125	float y = abs( x );
1126	float a = 0.8543985 + ( 0.4965155 + 0.0145206 * y ) * y;
1127	float b = 3.4175940 + ( 4.1616724 + y ) * y;
1128	float v = a / b;
1129	float theta_sintheta = ( x > 0.0 ) ? v : 0.5 * inversesqrt( max( 1.0 - x * x, 1e-7 ) ) - v;
1130	return cross( v1, v2 ) * theta_sintheta;
1131}
1132vec3 LTC_Evaluate( const in vec3 N, const in vec3 V, const in vec3 P, const in mat3 mInv, const in vec3 rectCoords[ 4 ] ) {
1133	vec3 v1 = rectCoords[ 1 ] - rectCoords[ 0 ];
1134	vec3 v2 = rectCoords[ 3 ] - rectCoords[ 0 ];
1135	vec3 lightNormal = cross( v1, v2 );
1136	if( dot( lightNormal, P - rectCoords[ 0 ] ) < 0.0 ) return vec3( 0.0 );
1137	vec3 T1, T2;
1138	T1 = normalize( V - N * dot( V, N ) );
1139	T2 = - cross( N, T1 );
1140	mat3 mat = mInv * transposeMat3( mat3( T1, T2, N ) );
1141	vec3 coords[ 4 ];
1142	coords[ 0 ] = mat * ( rectCoords[ 0 ] - P );
1143	coords[ 1 ] = mat * ( rectCoords[ 1 ] - P );
1144	coords[ 2 ] = mat * ( rectCoords[ 2 ] - P );
1145	coords[ 3 ] = mat * ( rectCoords[ 3 ] - P );
1146	coords[ 0 ] = normalize( coords[ 0 ] );
1147	coords[ 1 ] = normalize( coords[ 1 ] );
1148	coords[ 2 ] = normalize( coords[ 2 ] );
1149	coords[ 3 ] = normalize( coords[ 3 ] );
1150	vec3 vectorFormFactor = vec3( 0.0 );
1151	vectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 0 ], coords[ 1 ] );
1152	vectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 1 ], coords[ 2 ] );
1153	vectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 2 ], coords[ 3 ] );
1154	vectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 3 ], coords[ 0 ] );
1155	float result = LTC_ClippedSphereFormFactor( vectorFormFactor );
1156	return vec3( result );
1157}
1158#if defined( USE_SHEEN )
1159float D_Charlie( float roughness, float dotNH ) {
1160	float alpha = pow2( roughness );
1161	float invAlpha = 1.0 / alpha;
1162	float cos2h = dotNH * dotNH;
1163	float sin2h = max( 1.0 - cos2h, 0.0078125 );
1164	return ( 2.0 + invAlpha ) * pow( sin2h, invAlpha * 0.5 ) / ( 2.0 * PI );
1165}
1166float V_Neubelt( float dotNV, float dotNL ) {
1167	return saturate( 1.0 / ( 4.0 * ( dotNL + dotNV - dotNL * dotNV ) ) );
1168}
1169vec3 BRDF_Sheen( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, vec3 sheenColor, const in float sheenRoughness ) {
1170	vec3 halfDir = normalize( lightDir + viewDir );
1171	float dotNL = saturate( dot( normal, lightDir ) );
1172	float dotNV = saturate( dot( normal, viewDir ) );
1173	float dotNH = saturate( dot( normal, halfDir ) );
1174	float D = D_Charlie( sheenRoughness, dotNH );
1175	float V = V_Neubelt( dotNV, dotNL );
1176	return sheenColor * ( D * V );
1177}
1178#endif
1179float IBLSheenBRDF( const in vec3 normal, const in vec3 viewDir, const in float roughness ) {
1180	float dotNV = saturate( dot( normal, viewDir ) );
1181	float r2 = roughness * roughness;
1182	float a = roughness < 0.25 ? -339.2 * r2 + 161.4 * roughness - 25.9 : -8.48 * r2 + 14.3 * roughness - 9.95;
1183	float b = roughness < 0.25 ? 44.0 * r2 - 23.7 * roughness + 3.26 : 1.97 * r2 - 3.27 * roughness + 0.72;
1184	float DG = exp( a * dotNV + b ) + ( roughness < 0.25 ? 0.0 : 0.1 * ( roughness - 0.25 ) );
1185	return saturate( DG * RECIPROCAL_PI );
1186}
1187vec2 DFGApprox( const in vec3 normal, const in vec3 viewDir, const in float roughness ) {
1188	float dotNV = saturate( dot( normal, viewDir ) );
1189	const vec4 c0 = vec4( - 1, - 0.0275, - 0.572, 0.022 );
1190	const vec4 c1 = vec4( 1, 0.0425, 1.04, - 0.04 );
1191	vec4 r = roughness * c0 + c1;
1192	float a004 = min( r.x * r.x, exp2( - 9.28 * dotNV ) ) * r.x + r.y;
1193	vec2 fab = vec2( - 1.04, 1.04 ) * a004 + r.zw;
1194	return fab;
1195}
1196vec3 EnvironmentBRDF( const in vec3 normal, const in vec3 viewDir, const in vec3 specularColor, const in float specularF90, const in float roughness ) {
1197	vec2 fab = DFGApprox( normal, viewDir, roughness );
1198	return specularColor * fab.x + specularF90 * fab.y;
1199}
1200#ifdef USE_IRIDESCENCE
1201void computeMultiscatteringIridescence( const in vec3 normal, const in vec3 viewDir, const in vec3 specularColor, const in float specularF90, const in float iridescence, const in vec3 iridescenceF0, const in float roughness, inout vec3 singleScatter, inout vec3 multiScatter ) {
1202#else
1203void 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 ) {
1204#endif
1205	vec2 fab = DFGApprox( normal, viewDir, roughness );
1206	#ifdef USE_IRIDESCENCE
1207		vec3 Fr = mix( specularColor, iridescenceF0, iridescence );
1208	#else
1209		vec3 Fr = specularColor;
1210	#endif
1211	vec3 FssEss = Fr * fab.x + specularF90 * fab.y;
1212	float Ess = fab.x + fab.y;
1213	float Ems = 1.0 - Ess;
1214	vec3 Favg = Fr + ( 1.0 - Fr ) * 0.047619;	vec3 Fms = FssEss * Favg / ( 1.0 - Ems * Favg );
1215	singleScatter += FssEss;
1216	multiScatter += Fms * Ems;
1217}
1218#if NUM_RECT_AREA_LIGHTS > 0
1219	void RE_Direct_RectArea_Physical( const in RectAreaLight rectAreaLight, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {
1220		vec3 normal = geometryNormal;
1221		vec3 viewDir = geometryViewDir;
1222		vec3 position = geometryPosition;
1223		vec3 lightPos = rectAreaLight.position;
1224		vec3 halfWidth = rectAreaLight.halfWidth;
1225		vec3 halfHeight = rectAreaLight.halfHeight;
1226		vec3 lightColor = rectAreaLight.color;
1227		float roughness = material.roughness;
1228		vec3 rectCoords[ 4 ];
1229		rectCoords[ 0 ] = lightPos + halfWidth - halfHeight;		rectCoords[ 1 ] = lightPos - halfWidth - halfHeight;
1230		rectCoords[ 2 ] = lightPos - halfWidth + halfHeight;
1231		rectCoords[ 3 ] = lightPos + halfWidth + halfHeight;
1232		vec2 uv = LTC_Uv( normal, viewDir, roughness );
1233		vec4 t1 = texture2D( ltc_1, uv );
1234		vec4 t2 = texture2D( ltc_2, uv );
1235		mat3 mInv = mat3(
1236			vec3( t1.x, 0, t1.y ),
1237			vec3(    0, 1,    0 ),
1238			vec3( t1.z, 0, t1.w )
1239		);
1240		vec3 fresnel = ( material.specularColor * t2.x + ( vec3( 1.0 ) - material.specularColor ) * t2.y );
1241		reflectedLight.directSpecular += lightColor * fresnel * LTC_Evaluate( normal, viewDir, position, mInv, rectCoords );
1242		reflectedLight.directDiffuse += lightColor * material.diffuseColor * LTC_Evaluate( normal, viewDir, position, mat3( 1.0 ), rectCoords );
1243	}
1244#endif
1245void RE_Direct_Physical( const in IncidentLight directLight, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {
1246	float dotNL = saturate( dot( geometryNormal, directLight.direction ) );
1247	vec3 irradiance = dotNL * directLight.color;
1248	#ifdef USE_CLEARCOAT
1249		float dotNLcc = saturate( dot( geometryClearcoatNormal, directLight.direction ) );
1250		vec3 ccIrradiance = dotNLcc * directLight.color;
1251		clearcoatSpecularDirect += ccIrradiance * BRDF_GGX_Clearcoat( directLight.direction, geometryViewDir, geometryClearcoatNormal, material );
1252	#endif
1253	#ifdef USE_SHEEN
1254		sheenSpecularDirect += irradiance * BRDF_Sheen( directLight.direction, geometryViewDir, geometryNormal, material.sheenColor, material.sheenRoughness );
1255	#endif
1256	reflectedLight.directSpecular += irradiance * BRDF_GGX( directLight.direction, geometryViewDir, geometryNormal, material );
1257	reflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );
1258}
1259void RE_IndirectDiffuse_Physical( const in vec3 irradiance, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {
1260	reflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );
1261}
1262void RE_IndirectSpecular_Physical( const in vec3 radiance, const in vec3 irradiance, const in vec3 clearcoatRadiance, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in PhysicalMaterial material, inout ReflectedLight reflectedLight) {
1263	#ifdef USE_CLEARCOAT
1264		clearcoatSpecularIndirect += clearcoatRadiance * EnvironmentBRDF( geometryClearcoatNormal, geometryViewDir, material.clearcoatF0, material.clearcoatF90, material.clearcoatRoughness );
1265	#endif
1266	#ifdef USE_SHEEN
1267		sheenSpecularIndirect += irradiance * material.sheenColor * IBLSheenBRDF( geometryNormal, geometryViewDir, material.sheenRoughness );
1268	#endif
1269	vec3 singleScattering = vec3( 0.0 );
1270	vec3 multiScattering = vec3( 0.0 );
1271	vec3 cosineWeightedIrradiance = irradiance * RECIPROCAL_PI;
1272	#ifdef USE_IRIDESCENCE
1273		computeMultiscatteringIridescence( geometryNormal, geometryViewDir, material.specularColor, material.specularF90, material.iridescence, material.iridescenceFresnel, material.roughness, singleScattering, multiScattering );
1274	#else
1275		computeMultiscattering( geometryNormal, geometryViewDir, material.specularColor, material.specularF90, material.roughness, singleScattering, multiScattering );
1276	#endif
1277	vec3 totalScattering = singleScattering + multiScattering;
1278	vec3 diffuse = material.diffuseColor * ( 1.0 - max( max( totalScattering.r, totalScattering.g ), totalScattering.b ) );
1279	reflectedLight.indirectSpecular += radiance * singleScattering;
1280	reflectedLight.indirectSpecular += multiScattering * cosineWeightedIrradiance;
1281	reflectedLight.indirectDiffuse += diffuse * cosineWeightedIrradiance;
1282}
1283#define RE_Direct				RE_Direct_Physical
1284#define RE_Direct_RectArea		RE_Direct_RectArea_Physical
1285#define RE_IndirectDiffuse		RE_IndirectDiffuse_Physical
1286#define RE_IndirectSpecular		RE_IndirectSpecular_Physical
1287float computeSpecularOcclusion( const in float dotNV, const in float ambientOcclusion, const in float roughness ) {
1288	return saturate( pow( dotNV + ambientOcclusion, exp2( - 16.0 * roughness - 1.0 ) ) - 1.0 + ambientOcclusion );
1289}`,
1289lO=`
1290vec3 geometryPosition = - vViewPosition;
1291vec3 geometryNormal = normal;
1292vec3 geometryViewDir = ( isOrthographic ) ? vec3( 0, 0, 1 ) : normalize( vViewPosition );
1293vec3 geometryClearcoatNormal = vec3( 0.0 );
1294#ifdef USE_CLEARCOAT
1295	geometryClearcoatNormal = clearcoatNormal;
1296#endif
1297#ifdef USE_IRIDESCENCE
1298	float dotNVi = saturate( dot( normal, geometryViewDir ) );
1299	if ( material.iridescenceThickness == 0.0 ) {
1300		material.iridescence = 0.0;
1301	} else {
1302		material.iridescence = saturate( material.iridescence );
1303	}
1304	if ( material.iridescence > 0.0 ) {
1305		material.iridescenceFresnel = evalIridescence( 1.0, material.iridescenceIOR, dotNVi, material.iridescenceThickness, material.specularColor );
1306		material.iridescenceF0 = Schlick_to_F0( material.iridescenceFresnel, 1.0, dotNVi );
1307	}
1308#endif
1309IncidentLight directLight;
1310#if ( NUM_POINT_LIGHTS > 0 ) && defined( RE_Direct )
1311	PointLight pointLight;
1312	#if defined( USE_SHADOWMAP ) && NUM_POINT_LIGHT_SHADOWS > 0
1313	PointLightShadow pointLightShadow;
1314	#endif
1315	#pragma unroll_loop_start
1316	for ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) {
1317		pointLight = pointLights[ i ];
1318		getPointLightInfo( pointLight, geometryPosition, directLight );
1319		#if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_POINT_LIGHT_SHADOWS )
1320		pointLightShadow = pointLightShadows[ i ];
1321		directLight.color *= ( directLight.visible && receiveShadow ) ? getPointShadow( pointShadowMap[ i ], pointLightShadow.shadowMapSize, pointLightShadow.shadowIntensity, pointLightShadow.shadowBias, pointLightShadow.shadowRadius, vPointShadowCoord[ i ], pointLightShadow.shadowCameraNear, pointLightShadow.shadowCameraFar ) : 1.0;
1322		#endif
1323		RE_Direct( directLight, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );
1324	}
1325	#pragma unroll_loop_end
1326#endif
1327#if ( NUM_SPOT_LIGHTS > 0 ) && defined( RE_Direct )
1328	SpotLight spotLight;
1329	vec4 spotColor;
1330	vec3 spotLightCoord;
1331	bool inSpotLightMap;
1332	#if defined( USE_SHADOWMAP ) && NUM_SPOT_LIGHT_SHADOWS > 0
1333	SpotLightShadow spotLightShadow;
1334	#endif
1335	#pragma unroll_loop_start
1336	for ( int i = 0; i < NUM_SPOT_LIGHTS; i ++ ) {
1337		spotLight = spotLights[ i ];
1338		getSpotLightInfo( spotLight, geometryPosition, directLight );
1339		#if ( UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS_WITH_MAPS )
1340		#define SPOT_LIGHT_MAP_INDEX UNROLLED_LOOP_INDEX
1341		#elif ( UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS )
1342		#define SPOT_LIGHT_MAP_INDEX NUM_SPOT_LIGHT_MAPS
1343		#else
1344		#define SPOT_LIGHT_MAP_INDEX ( UNROLLED_LOOP_INDEX - NUM_SPOT_LIGHT_SHADOWS + NUM_SPOT_LIGHT_SHADOWS_WITH_MAPS )
1345		#endif
1346		#if ( SPOT_LIGHT_MAP_INDEX < NUM_SPOT_LIGHT_MAPS )
1347			spotLightCoord = vSpotLightCoord[ i ].xyz / vSpotLightCoord[ i ].w;
1348			inSpotLightMap = all( lessThan( abs( spotLightCoord * 2. - 1. ), vec3( 1.0 ) ) );
1349			spotColor = texture2D( spotLightMap[ SPOT_LIGHT_MAP_INDEX ], spotLightCoord.xy );
1350			directLight.color = inSpotLightMap ? directLight.color * spotColor.rgb : directLight.color;
1351		#endif
1352		#undef SPOT_LIGHT_MAP_INDEX
1353		#if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS )
1354		spotLightShadow = spotLightShadows[ i ];
1355		directLight.color *= ( directLight.visible && receiveShadow ) ? getShadow( spotShadowMap[ i ], spotLightShadow.shadowMapSize, spotLightShadow.shadowIntensity, spotLightShadow.shadowBias, spotLightShadow.shadowRadius, vSpotLightCoord[ i ] ) : 1.0;
1356		#endif
1357		RE_Direct( directLight, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );
1358	}
1359	#pragma unroll_loop_end
1360#endif
1361#if ( NUM_DIR_LIGHTS > 0 ) && defined( RE_Direct )
1362	DirectionalLight directionalLight;
1363	#if defined( USE_SHADOWMAP ) && NUM_DIR_LIGHT_SHADOWS > 0
1364	DirectionalLightShadow directionalLightShadow;
1365	#endif
1366	#pragma unroll_loop_start
1367	for ( int i = 0; i < NUM_DIR_LIGHTS; i ++ ) {
1368		directionalLight = directionalLights[ i ];
1369		getDirectionalLightInfo( directionalLight, directLight );
1370		#if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_DIR_LIGHT_SHADOWS )
1371		directionalLightShadow = directionalLightShadows[ i ];
1372		directLight.color *= ( directLight.visible && receiveShadow ) ? getShadow( directionalShadowMap[ i ], directionalLightShadow.shadowMapSize, directionalLightShadow.shadowIntensity, directionalLightShadow.shadowBias, directionalLightShadow.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0;
1373		#endif
1374		RE_Direct( directLight, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );
1375	}
1376	#pragma unroll_loop_end
1377#endif
1378#if ( NUM_RECT_AREA_LIGHTS > 0 ) && defined( RE_Direct_RectArea )
1379	RectAreaLight rectAreaLight;
1380	#pragma unroll_loop_start
1381	for ( int i = 0; i < NUM_RECT_AREA_LIGHTS; i ++ ) {
1382		rectAreaLight = rectAreaLights[ i ];
1383		RE_Direct_RectArea( rectAreaLight, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );
1384	}
1385	#pragma unroll_loop_end
1386#endif
1387#if defined( RE_IndirectDiffuse )
1388	vec3 iblIrradiance = vec3( 0.0 );
1389	vec3 irradiance = getAmbientLightIrradiance( ambientLightColor );
1390	#if defined( USE_LIGHT_PROBES )
1391		irradiance += getLightProbeIrradiance( lightProbe, geometryNormal );
1392	#endif
1393	#if ( NUM_HEMI_LIGHTS > 0 )
1394		#pragma unroll_loop_start
1395		for ( int i = 0; i < NUM_HEMI_LIGHTS; i ++ ) {
1396			irradiance += getHemisphereLightIrradiance( hemisphereLights[ i ], geometryNormal );
1397		}
1398		#pragma unroll_loop_end
1399	#endif
1400#endif
1401#if defined( RE_IndirectSpecular )
1402	vec3 radiance = vec3( 0.0 );
1403	vec3 clearcoatRadiance = vec3( 0.0 );
1404#endif`,cO=`#if defined( RE_IndirectDiffuse )
1405	#ifdef USE_LIGHTMAP
1406		vec4 lightMapTexel = texture2D( lightMap, vLightMapUv );
1407		vec3 lightMapIrradiance = lightMapTexel.rgb * lightMapIntensity;
1408		irradiance += lightMapIrradiance;
1409	#endif
1410	#if defined( USE_ENVMAP ) && defined( STANDARD ) && defined( ENVMAP_TYPE_CUBE_UV )
1411		iblIrradiance += getIBLIrradiance( geometryNormal );
1412	#endif
1413#endif
1414#if defined( USE_ENVMAP ) && defined( RE_IndirectSpecular )
1415	#ifdef USE_ANISOTROPY
1416		radiance += getIBLAnisotropyRadiance( geometryViewDir, geometryNormal, material.roughness, material.anisotropyB, material.anisotropy );
1417	#else
1418		radiance += getIBLRadiance( geometryViewDir, geometryNormal, material.roughness );
1419	#endif
1420	#ifdef USE_CLEARCOAT
1421		clearcoatRadiance += getIBLRadiance( geometryViewDir, geometryClearcoatNormal, material.clearcoatRoughness );
1422	#endif
1423#endif`,uO=`#if defined( RE_IndirectDiffuse )
1424	RE_IndirectDiffuse( irradiance, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );
1425#endif
1426#if defined( RE_IndirectSpecular )
1427	RE_IndirectSpecular( radiance, iblIrradiance, clearcoatRadiance, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );
1428#endif`,hO=`#if defined( USE_LOGDEPTHBUF )
1429	gl_FragDepth = vIsPerspective == 0.0 ? gl_FragCoord.z : log2( vFragDepth ) * logDepthBufFC * 0.5;
1430#endif`,dO=`#if defined( USE_LOGDEPTHBUF )
1431	uniform float logDepthBufFC;
1432	varying float vFragDepth;
1433	varying float vIsPerspective;
1434#endif`,fO=`#ifdef USE_LOGDEPTHBUF
1435	varying float vFragDepth;
1436	varying float vIsPerspective;
1437#endif`,pO=`#ifdef USE_LOGDEPTHBUF
1438	vFragDepth = 1.0 + gl_Position.w;
1439	vIsPerspective = float( isPerspectiveMatrix( projectionMatrix ) );
1440#endif`,mO=`#ifdef USE_MAP
1441	vec4 sampledDiffuseColor = texture2D( map, vMapUv );
1442	#ifdef DECODE_VIDEO_TEXTURE
1443		sampledDiffuseColor = sRGBTransferEOTF( sampledDiffuseColor );
1444	#endif
1445	diffuseColor *= sampledDiffuseColor;
1446#endif`,gO=`#ifdef USE_MAP
1447	uniform sampler2D map;
1448#endif`,yO=`#if defined( USE_MAP ) || defined( USE_ALPHAMAP )
1449	#if defined( USE_POINTS_UV )
1450		vec2 uv = vUv;
1451	#else
1452		vec2 uv = ( uvTransform * vec3( gl_PointCoord.x, 1.0 - gl_PointCoord.y, 1 ) ).xy;
1453	#endif
1454#endif
1455#ifdef USE_MAP
1456	diffuseColor *= texture2D( map, uv );
1457#endif
1458#ifdef USE_ALPHAMAP
1459	diffuseColor.a *= texture2D( alphaMap, uv ).g;
1460#endif`,vO=`#if defined( USE_POINTS_UV )
1461	varying vec2 vUv;
1462#else
1463	#if defined( USE_MAP ) || defined( USE_ALPHAMAP )
1464		uniform mat3 uvTransform;
1465	#endif
1466#endif
1467#ifdef USE_MAP
1468	uniform sampler2D map;
1469#endif
1470#ifdef USE_ALPHAMAP
1471	uniform sampler2D alphaMap;
1472#endif`,_O=`float metalnessFactor = metalness;
1473#ifdef USE_METALNESSMAP
1474	vec4 texelMetalness = texture2D( metalnessMap, vMetalnessMapUv );
1475	metalnessFactor *= texelMetalness.b;
1476#endif`,xO=`#ifdef USE_METALNESSMAP
1477	uniform sampler2D metalnessMap;
1478#endif`,MO=`#ifdef USE_INSTANCING_MORPH
1479	float morphTargetInfluences[ MORPHTARGETS_COUNT ];
1480	float morphTargetBaseInfluence = texelFetch( morphTexture, ivec2( 0, gl_InstanceID ), 0 ).r;
1481	for ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) {
1482		morphTargetInfluences[i] =  texelFetch( morphTexture, ivec2( i + 1, gl_InstanceID ), 0 ).r;
1483	}
1484#endif`,SO=`#if defined( USE_MORPHCOLORS )
1485	vColor *= morphTargetBaseInfluence;
1486	for ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) {
1487		#if defined( USE_COLOR_ALPHA )
1488			if ( morphTargetInfluences[ i ] != 0.0 ) vColor += getMorph( gl_VertexID, i, 2 ) * morphTargetInfluences[ i ];
1489		#elif defined( USE_COLOR )
1490			if ( morphTargetInfluences[ i ] != 0.0 ) vColor += getMorph( gl_VertexID, i, 2 ).rgb * morphTargetInfluences[ i ];
1491		#endif
1492	}
1493#endif`,wO=`#ifdef USE_MORPHNORMALS
1494	objectNormal *= morphTargetBaseInfluence;
1495	for ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) {
1496		if ( morphTargetInfluences[ i ] != 0.0 ) objectNormal += getMorph( gl_VertexID, i, 1 ).xyz * morphTargetInfluences[ i ];
1497	}
1498#endif`,AO=`#ifdef USE_MORPHTARGETS
1499	#ifndef USE_INSTANCING_MORPH
1500		uniform float morphTargetBaseInfluence;
1501		uniform float morphTargetInfluences[ MORPHTARGETS_COUNT ];
1502	#endif
1503	uniform sampler2DArray morphTargetsTexture;
1504	uniform ivec2 morphTargetsTextureSize;
1505	vec4 getMorph( const in int vertexIndex, const in int morphTargetIndex, const in int offset ) {
1506		int texelIndex = vertexIndex * MORPHTARGETS_TEXTURE_STRIDE + offset;
1507		int y = texelIndex / morphTargetsTextureSize.x;
1508		int x = texelIndex - y * morphTargetsTextureSize.x;
1509		ivec3 morphUV = ivec3( x, y, morphTargetIndex );
1510		return texelFetch( morphTargetsTexture, morphUV, 0 );
1511	}
1512#endif`,EO=`#ifdef USE_MORPHTARGETS
1513	transformed *= morphTargetBaseInfluence;
1514	for ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) {
1515		if ( morphTargetInfluences[ i ] != 0.0 ) transformed += getMorph( gl_VertexID, i, 0 ).xyz * morphTargetInfluences[ i ];
1516	}
1517#endif`,bO=`float faceDirection = gl_FrontFacing ? 1.0 : - 1.0;
1518#ifdef FLAT_SHADED
1519	vec3 fdx = dFdx( vViewPosition );
1520	vec3 fdy = dFdy( vViewPosition );
1521	vec3 normal = normalize( cross( fdx, fdy ) );
1522#else
1523	vec3 normal = normalize( vNormal );
1524	#ifdef DOUBLE_SIDED
1525		normal *= faceDirection;
1526	#endif
1527#endif
1528#if defined( USE_NORMALMAP_TANGENTSPACE ) || defined( USE_CLEARCOAT_NORMALMAP ) || defined( USE_ANISOTROPY )
1529	#ifdef USE_TANGENT
1530		mat3 tbn = mat3( normalize( vTangent ), normalize( vBitangent ), normal );
1531	#else
1532		mat3 tbn = getTangentFrame( - vViewPosition, normal,
1533		#if defined( USE_NORMALMAP )
1534			vNormalMapUv
1535		#elif defined( USE_CLEARCOAT_NORMALMAP )
1536			vClearcoatNormalMapUv
1537		#else
1538			vUv
1539		#endif
1540		);
1541	#endif
1542	#if defined( DOUBLE_SIDED ) && ! defined( FLAT_SHADED )
1543		tbn[0] *= faceDirection;
1544		tbn[1] *= faceDirection;
1545	#endif
1546#endif
1547#ifdef USE_CLEARCOAT_NORMALMAP
1548	#ifdef USE_TANGENT
1549		mat3 tbn2 = mat3( normalize( vTangent ), normalize( vBitangent ), normal );
1550	#else
1551		mat3 tbn2 = getTangentFrame( - vViewPosition, normal, vClearcoatNormalMapUv );
1552	#endif
1553	#if defined( DOUBLE_SIDED ) && ! defined( FLAT_SHADED )
1554		tbn2[0] *= faceDirection;
1555		tbn2[1] *= faceDirection;
1556	#endif
1557#endif
1558vec3 nonPerturbedNormal = normal;`,CO=`#ifdef USE_NORMALMAP_OBJECTSPACE
1559	normal = texture2D( normalMap, vNormalMapUv ).xyz * 2.0 - 1.0;
1560	#ifdef FLIP_SIDED
1561		normal = - normal;
1562	#endif
1563	#ifdef DOUBLE_SIDED
1564		normal = normal * faceDirection;
1565	#endif
1566	normal = normalize( normalMatrix * normal );
1567#elif defined( USE_NORMALMAP_TANGENTSPACE )
1568	vec3 mapN = texture2D( normalMap, vNormalMapUv ).xyz * 2.0 - 1.0;
1569	mapN.xy *= normalScale;
1570	normal = normalize( tbn * mapN );
1571#elif defined( USE_BUMPMAP )
1572	normal = perturbNormalArb( - vViewPosition, normal, dHdxy_fwd(), faceDirection );
1573#endif`,TO=`#ifndef FLAT_SHADED
1574	varying vec3 vNormal;
1575	#ifdef USE_TANGENT
1576		varying vec3 vTangent;
1577		varying vec3 vBitangent;
1578	#endif
1579#endif`,IO=`#ifndef FLAT_SHADED
1580	varying vec3 vNormal;
1581	#ifdef USE_TANGENT
1582		varying vec3 vTangent;
1583		varying vec3 vBitangent;
1584	#endif
1585#endif`,PO=`#ifndef FLAT_SHADED
1586	vNormal = normalize( transformedNormal );
1587	#ifdef USE_TANGENT
1588		vTangent = normalize( transformedTangent );
1589		vBitangent = normalize( cross( vNormal, vTangent ) * tangent.w );
1590	#endif
1591#endif`,RO=`#ifdef USE_NORMALMAP
1592	uniform sampler2D normalMap;
1593	uniform vec2 normalScale;
1594#endif
1595#ifdef USE_NORMALMAP_OBJECTSPACE
1596	uniform mat3 normalMatrix;
1597#endif
1598#if ! defined ( USE_TANGENT ) && ( defined ( USE_NORMALMAP_TANGENTSPACE ) || defined ( USE_CLEARCOAT_NORMALMAP ) || defined( USE_ANISOTROPY ) )
1599	mat3 getTangentFrame( vec3 eye_pos, vec3 surf_norm, vec2 uv ) {
1600		vec3 q0 = dFdx( eye_pos.xyz );
1601		vec3 q1 = dFdy( eye_pos.xyz );
1602		vec2 st0 = dFdx( uv.st );
1603		vec2 st1 = dFdy( uv.st );
1604		vec3 N = surf_norm;
1605		vec3 q1perp = cross( q1, N );
1606		vec3 q0perp = cross( N, q0 );
1607		vec3 T = q1perp * st0.x + q0perp * st1.x;
1608		vec3 B = q1perp * st0.y + q0perp * st1.y;
1609		float det = max( dot( T, T ), dot( B, B ) );
1610		float scale = ( det == 0.0 ) ? 0.0 : inversesqrt( det );
1611		return mat3( T * scale, B * scale, N );
1612	}
1613#endif`,BO=`#ifdef USE_CLEARCOAT
1614	vec3 clearcoatNormal = nonPerturbedNormal;
1615#endif`,OO=`#ifdef USE_CLEARCOAT_NORMALMAP
1616	vec3 clearcoatMapN = texture2D( clearcoatNormalMap, vClearcoatNormalMapUv ).xyz * 2.0 - 1.0;
1617	clearcoatMapN.xy *= clearcoatNormalScale;
1618	clearcoatNormal = normalize( tbn2 * clearcoatMapN );
1619#endif`,DO=`#ifdef USE_CLEARCOATMAP
1620	uniform sampler2D clearcoatMap;
1621#endif
1622#ifdef USE_CLEARCOAT_NORMALMAP
1623	uniform sampler2D clearcoatNormalMap;
1624	uniform vec2 clearcoatNormalScale;
1625#endif
1626#ifdef USE_CLEARCOAT_ROUGHNESSMAP
1627	uniform sampler2D clearcoatRoughnessMap;
1628#endif`,LO=`#ifdef USE_IRIDESCENCEMAP
1629	uniform sampler2D iridescenceMap;
1630#endif
1631#ifdef USE_IRIDESCENCE_THICKNESSMAP
1632	uniform sampler2D iridescenceThicknessMap;
1633#endif`,NO=`#ifdef OPAQUE
1634diffuseColor.a = 1.0;
1635#endif
1636#ifdef USE_TRANSMISSION
1637diffuseColor.a *= material.transmissionAlpha;
1638#endif
1639gl_FragColor = vec4( outgoingLight, diffuseColor.a );`,FO=`vec3 packNormalToRGB( const in vec3 normal ) {
1640	return normalize( normal ) * 0.5 + 0.5;
1641}
1642vec3 unpackRGBToNormal( const in vec3 rgb ) {
1643	return 2.0 * rgb.xyz - 1.0;
1644}
1645const float PackUpscale = 256. / 255.;const float UnpackDownscale = 255. / 256.;const float ShiftRight8 = 1. / 256.;
1646const float Inv255 = 1. / 255.;
1647const vec4 PackFactors = vec4( 1.0, 256.0, 256.0 * 256.0, 256.0 * 256.0 * 256.0 );
1648const vec2 UnpackFactors2 = vec2( UnpackDownscale, 1.0 / PackFactors.g );
1649const vec3 UnpackFactors3 = vec3( UnpackDownscale / PackFactors.rg, 1.0 / PackFactors.b );
1650const vec4 UnpackFactors4 = vec4( UnpackDownscale / PackFactors.rgb, 1.0 / PackFactors.a );
1651vec4 packDepthToRGBA( const in float v ) {
1652	if( v <= 0.0 )
1653		return vec4( 0., 0., 0., 0. );
1654	if( v >= 1.0 )
1655		return vec4( 1., 1., 1., 1. );
1656	float vuf;
1657	float af = modf( v * PackFactors.a, vuf );
1658	float bf = modf( vuf * ShiftRight8, vuf );
1659	float gf = modf( vuf * ShiftRight8, vuf );
1660	return vec4( vuf * Inv255, gf * PackUpscale, bf * PackUpscale, af );
1661}
1662vec3 packDepthToRGB( const in float v ) {
1663	if( v <= 0.0 )
1664		return vec3( 0., 0., 0. );
1665	if( v >= 1.0 )
1666		return vec3( 1., 1., 1. );
1667	float vuf;
1668	float bf = modf( v * PackFactors.b, vuf );
1669	float gf = modf( vuf * ShiftRight8, vuf );
1670	return vec3( vuf * Inv255, gf * PackUpscale, bf );
1671}
1672vec2 packDepthToRG( const in float v ) {
1673	if( v <= 0.0 )
1674		return vec2( 0., 0. );
1675	if( v >= 1.0 )
1676		return vec2( 1., 1. );
1677	float vuf;
1678	float gf = modf( v * 256., vuf );
1679	return vec2( vuf * Inv255, gf );
1680}
1681float unpackRGBAToDepth( const in vec4 v ) {
1682	return dot( v, UnpackFactors4 );
1683}
1684float unpackRGBToDepth( const in vec3 v ) {
1685	return dot( v, UnpackFactors3 );
1686}
1687float unpackRGToDepth( const in vec2 v ) {
1688	return v.r * UnpackFactors2.r + v.g * UnpackFactors2.g;
1689}
1690vec4 pack2HalfToRGBA( const in vec2 v ) {
1691	vec4 r = vec4( v.x, fract( v.x * 255.0 ), v.y, fract( v.y * 255.0 ) );
1692	return vec4( r.x - r.y / 255.0, r.y, r.z - r.w / 255.0, r.w );
1693}
1694vec2 unpackRGBATo2Half( const in vec4 v ) {
1695	return vec2( v.x + ( v.y / 255.0 ), v.z + ( v.w / 255.0 ) );
1696}
1697float viewZToOrthographicDepth( const in float viewZ, const in float near, const in float far ) {
1698	return ( viewZ + near ) / ( near - far );
1699}
1700float orthographicDepthToViewZ( const in float depth, const in float near, const in float far ) {
1701	return depth * ( near - far ) - near;
1702}
1703float viewZToPerspectiveDepth( const in float viewZ, const in float near, const in float far ) {
1704	return ( ( near + viewZ ) * far ) / ( ( far - near ) * viewZ );
1705}
1706float perspectiveDepthToViewZ( const in float depth, const in float near, const in float far ) {
1707	return ( near * far ) / ( ( far - near ) * depth - far );
1708}`,kO=`#ifdef PREMULTIPLIED_ALPHA
1709	gl_FragColor.rgb *= gl_FragColor.a;
1710#endif`,UO=`vec4 mvPosition = vec4( transformed, 1.0 );
1711#ifdef USE_BATCHING
1712	mvPosition = batchingMatrix * mvPosition;
1713#endif
1714#ifdef USE_INSTANCING
1715	mvPosition = instanceMatrix * mvPosition;
1716#endif
1717mvPosition = modelViewMatrix * mvPosition;
1718gl_Position = projectionMatrix * mvPosition;`,jO=`#ifdef DITHERING
1719	gl_FragColor.rgb = dithering( gl_FragColor.rgb );
1720#endif`,zO=`#ifdef DITHERING
1721	vec3 dithering( vec3 color ) {
1722		float grid_position = rand( gl_FragCoord.xy );
1723		vec3 dither_shift_RGB = vec3( 0.25 / 255.0, -0.25 / 255.0, 0.25 / 255.0 );
1724		dither_shift_RGB = mix( 2.0 * dither_shift_RGB, -2.0 * dither_shift_RGB, grid_position );
1725		return color + dither_shift_RGB;
1726	}
1727#endif`,HO=`float roughnessFactor = roughness;
1728#ifdef USE_ROUGHNESSMAP
1729	vec4 texelRoughness = texture2D( roughnessMap, vRoughnessMapUv );
1730	roughnessFactor *= texelRoughness.g;
1731#endif`,GO=`#ifdef USE_ROUGHNESSMAP
1732	uniform sampler2D roughnessMap;
1733#endif`,VO=
vendor: 8,887 bytes, lines 1733-1919
1733`#if NUM_SPOT_LIGHT_COORDS > 0
1734	varying vec4 vSpotLightCoord[ NUM_SPOT_LIGHT_COORDS ];
1735#endif
1736#if NUM_SPOT_LIGHT_MAPS > 0
1737	uniform sampler2D spotLightMap[ NUM_SPOT_LIGHT_MAPS ];
1738#endif
1739#ifdef USE_SHADOWMAP
1740	#if NUM_DIR_LIGHT_SHADOWS > 0
1741		uniform sampler2D directionalShadowMap[ NUM_DIR_LIGHT_SHADOWS ];
1742		varying vec4 vDirectionalShadowCoord[ NUM_DIR_LIGHT_SHADOWS ];
1743		struct DirectionalLightShadow {
1744			float shadowIntensity;
1745			float shadowBias;
1746			float shadowNormalBias;
1747			float shadowRadius;
1748			vec2 shadowMapSize;
1749		};
1750		uniform DirectionalLightShadow directionalLightShadows[ NUM_DIR_LIGHT_SHADOWS ];
1751	#endif
1752	#if NUM_SPOT_LIGHT_SHADOWS > 0
1753		uniform sampler2D spotShadowMap[ NUM_SPOT_LIGHT_SHADOWS ];
1754		struct SpotLightShadow {
1755			float shadowIntensity;
1756			float shadowBias;
1757			float shadowNormalBias;
1758			float shadowRadius;
1759			vec2 shadowMapSize;
1760		};
1761		uniform SpotLightShadow spotLightShadows[ NUM_SPOT_LIGHT_SHADOWS ];
1762	#endif
1763	#if NUM_POINT_LIGHT_SHADOWS > 0
1764		uniform sampler2D pointShadowMap[ NUM_POINT_LIGHT_SHADOWS ];
1765		varying vec4 vPointShadowCoord[ NUM_POINT_LIGHT_SHADOWS ];
1766		struct PointLightShadow {
1767			float shadowIntensity;
1768			float shadowBias;
1769			float shadowNormalBias;
1770			float shadowRadius;
1771			vec2 shadowMapSize;
1772			float shadowCameraNear;
1773			float shadowCameraFar;
1774		};
1775		uniform PointLightShadow pointLightShadows[ NUM_POINT_LIGHT_SHADOWS ];
1776	#endif
1777	float texture2DCompare( sampler2D depths, vec2 uv, float compare ) {
1778		return step( compare, unpackRGBAToDepth( texture2D( depths, uv ) ) );
1779	}
1780	vec2 texture2DDistribution( sampler2D shadow, vec2 uv ) {
1781		return unpackRGBATo2Half( texture2D( shadow, uv ) );
1782	}
1783	float VSMShadow (sampler2D shadow, vec2 uv, float compare ){
1784		float occlusion = 1.0;
1785		vec2 distribution = texture2DDistribution( shadow, uv );
1786		float hard_shadow = step( compare , distribution.x );
1787		if (hard_shadow != 1.0 ) {
1788			float distance = compare - distribution.x ;
1789			float variance = max( 0.00000, distribution.y * distribution.y );
1790			float softness_probability = variance / (variance + distance * distance );			softness_probability = clamp( ( softness_probability - 0.3 ) / ( 0.95 - 0.3 ), 0.0, 1.0 );			occlusion = clamp( max( hard_shadow, softness_probability ), 0.0, 1.0 );
1791		}
1792		return occlusion;
1793	}
1794	float getShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowIntensity, float shadowBias, float shadowRadius, vec4 shadowCoord ) {
1795		float shadow = 1.0;
1796		shadowCoord.xyz /= shadowCoord.w;
1797		shadowCoord.z += shadowBias;
1798		bool inFrustum = shadowCoord.x >= 0.0 && shadowCoord.x <= 1.0 && shadowCoord.y >= 0.0 && shadowCoord.y <= 1.0;
1799		bool frustumTest = inFrustum && shadowCoord.z <= 1.0;
1800		if ( frustumTest ) {
1801		#if defined( SHADOWMAP_TYPE_PCF )
1802			vec2 texelSize = vec2( 1.0 ) / shadowMapSize;
1803			float dx0 = - texelSize.x * shadowRadius;
1804			float dy0 = - texelSize.y * shadowRadius;
1805			float dx1 = + texelSize.x * shadowRadius;
1806			float dy1 = + texelSize.y * shadowRadius;
1807			float dx2 = dx0 / 2.0;
1808			float dy2 = dy0 / 2.0;
1809			float dx3 = dx1 / 2.0;
1810			float dy3 = dy1 / 2.0;
1811			shadow = (
1812				texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, dy0 ), shadowCoord.z ) +
1813				texture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy0 ), shadowCoord.z ) +
1814				texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, dy0 ), shadowCoord.z ) +
1815				texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, dy2 ), shadowCoord.z ) +
1816				texture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy2 ), shadowCoord.z ) +
1817				texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, dy2 ), shadowCoord.z ) +
1818				texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, 0.0 ), shadowCoord.z ) +
1819				texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, 0.0 ), shadowCoord.z ) +
1820				texture2DCompare( shadowMap, shadowCoord.xy, shadowCoord.z ) +
1821				texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, 0.0 ), shadowCoord.z ) +
1822				texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, 0.0 ), shadowCoord.z ) +
1823				texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, dy3 ), shadowCoord.z ) +
1824				texture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy3 ), shadowCoord.z ) +
1825				texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, dy3 ), shadowCoord.z ) +
1826				texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, dy1 ), shadowCoord.z ) +
1827				texture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy1 ), shadowCoord.z ) +
1828				texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, dy1 ), shadowCoord.z )
1829			) * ( 1.0 / 17.0 );
1830		#elif defined( SHADOWMAP_TYPE_PCF_SOFT )
1831			vec2 texelSize = vec2( 1.0 ) / shadowMapSize;
1832			float dx = texelSize.x;
1833			float dy = texelSize.y;
1834			vec2 uv = shadowCoord.xy;
1835			vec2 f = fract( uv * shadowMapSize + 0.5 );
1836			uv -= f * texelSize;
1837			shadow = (
1838				texture2DCompare( shadowMap, uv, shadowCoord.z ) +
1839				texture2DCompare( shadowMap, uv + vec2( dx, 0.0 ), shadowCoord.z ) +
1840				texture2DCompare( shadowMap, uv + vec2( 0.0, dy ), shadowCoord.z ) +
1841				texture2DCompare( shadowMap, uv + texelSize, shadowCoord.z ) +
1842				mix( texture2DCompare( shadowMap, uv + vec2( -dx, 0.0 ), shadowCoord.z ),
1843					 texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, 0.0 ), shadowCoord.z ),
1844					 f.x ) +
1845				mix( texture2DCompare( shadowMap, uv + vec2( -dx, dy ), shadowCoord.z ),
1846					 texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, dy ), shadowCoord.z ),
1847					 f.x ) +
1848				mix( texture2DCompare( shadowMap, uv + vec2( 0.0, -dy ), shadowCoord.z ),
1849					 texture2DCompare( shadowMap, uv + vec2( 0.0, 2.0 * dy ), shadowCoord.z ),
1850					 f.y ) +
1851				mix( texture2DCompare( shadowMap, uv + vec2( dx, -dy ), shadowCoord.z ),
1852					 texture2DCompare( shadowMap, uv + vec2( dx, 2.0 * dy ), shadowCoord.z ),
1853					 f.y ) +
1854				mix( mix( texture2DCompare( shadowMap, uv + vec2( -dx, -dy ), shadowCoord.z ),
1855						  texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, -dy ), shadowCoord.z ),
1856						  f.x ),
1857					 mix( texture2DCompare( shadowMap, uv + vec2( -dx, 2.0 * dy ), shadowCoord.z ),
1858						  texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, 2.0 * dy ), shadowCoord.z ),
1859						  f.x ),
1860					 f.y )
1861			) * ( 1.0 / 9.0 );
1862		#elif defined( SHADOWMAP_TYPE_VSM )
1863			shadow = VSMShadow( shadowMap, shadowCoord.xy, shadowCoord.z );
1864		#else
1865			shadow = texture2DCompare( shadowMap, shadowCoord.xy, shadowCoord.z );
1866		#endif
1867		}
1868		return mix( 1.0, shadow, shadowIntensity );
1869	}
1870	vec2 cubeToUV( vec3 v, float texelSizeY ) {
1871		vec3 absV = abs( v );
1872		float scaleToCube = 1.0 / max( absV.x, max( absV.y, absV.z ) );
1873		absV *= scaleToCube;
1874		v *= scaleToCube * ( 1.0 - 2.0 * texelSizeY );
1875		vec2 planar = v.xy;
1876		float almostATexel = 1.5 * texelSizeY;
1877		float almostOne = 1.0 - almostATexel;
1878		if ( absV.z >= almostOne ) {
1879			if ( v.z > 0.0 )
1880				planar.x = 4.0 - v.x;
1881		} else if ( absV.x >= almostOne ) {
1882			float signX = sign( v.x );
1883			planar.x = v.z * signX + 2.0 * signX;
1884		} else if ( absV.y >= almostOne ) {
1885			float signY = sign( v.y );
1886			planar.x = v.x + 2.0 * signY + 2.0;
1887			planar.y = v.z * signY - 2.0;
1888		}
1889		return vec2( 0.125, 0.25 ) * planar + vec2( 0.375, 0.75 );
1890	}
1891	float getPointShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowIntensity, float shadowBias, float shadowRadius, vec4 shadowCoord, float shadowCameraNear, float shadowCameraFar ) {
1892		float shadow = 1.0;
1893		vec3 lightToPosition = shadowCoord.xyz;
1894		
1895		float lightToPositionLength = length( lightToPosition );
1896		if ( lightToPositionLength - shadowCameraFar <= 0.0 && lightToPositionLength - shadowCameraNear >= 0.0 ) {
1897			float dp = ( lightToPositionLength - shadowCameraNear ) / ( shadowCameraFar - shadowCameraNear );			dp += shadowBias;
1898			vec3 bd3D = normalize( lightToPosition );
1899			vec2 texelSize = vec2( 1.0 ) / ( shadowMapSize * vec2( 4.0, 2.0 ) );
1900			#if defined( SHADOWMAP_TYPE_PCF ) || defined( SHADOWMAP_TYPE_PCF_SOFT ) || defined( SHADOWMAP_TYPE_VSM )
1901				vec2 offset = vec2( - 1, 1 ) * shadowRadius * texelSize.y;
1902				shadow = (
1903					texture2DCompare( shadowMap, cubeToUV( bd3D + offset.xyy, texelSize.y ), dp ) +
1904					texture2DCompare( shadowMap, cubeToUV( bd3D + offset.yyy, texelSize.y ), dp ) +
1905					texture2DCompare( shadowMap, cubeToUV( bd3D + offset.xyx, texelSize.y ), dp ) +
1906					texture2DCompare( shadowMap, cubeToUV( bd3D + offset.yyx, texelSize.y ), dp ) +
1907					texture2DCompare( shadowMap, cubeToUV( bd3D, texelSize.y ), dp ) +
1908					texture2DCompare( shadowMap, cubeToUV( bd3D + offset.xxy, texelSize.y ), dp ) +
1909					texture2DCompare( shadowMap, cubeToUV( bd3D + offset.yxy, texelSize.y ), dp ) +
1910					texture2DCompare( shadowMap, cubeToUV( bd3D + offset.xxx, texelSize.y ), dp ) +
1911					texture2DCompare( shadowMap, cubeToUV( bd3D + offset.yxx, texelSize.y ), dp )
1912				) * ( 1.0 / 9.0 );
1913			#else
1914				shadow = texture2DCompare( shadowMap, cubeToUV( bd3D, texelSize.y ), dp );
1915			#endif
1916		}
1917		return mix( 1.0, shadow, shadowIntensity );
1918	}
1919#endif`,
1919WO=`#if NUM_SPOT_LIGHT_COORDS > 0
1920	uniform mat4 spotLightMatrix[ NUM_SPOT_LIGHT_COORDS ];
1921	varying vec4 vSpotLightCoord[ NUM_SPOT_LIGHT_COORDS ];
1922#endif
1923#ifdef USE_SHADOWMAP
1924	#if NUM_DIR_LIGHT_SHADOWS > 0
1925		uniform mat4 directionalShadowMatrix[ NUM_DIR_LIGHT_SHADOWS ];
1926		varying vec4 vDirectionalShadowCoord[ NUM_DIR_LIGHT_SHADOWS ];
1927		struct DirectionalLightShadow {
1928			float shadowIntensity;
1929			float shadowBias;
1930			float shadowNormalBias;
1931			float shadowRadius;
1932			vec2 shadowMapSize;
1933		};
1934		uniform DirectionalLightShadow directionalLightShadows[ NUM_DIR_LIGHT_SHADOWS ];
1935	#endif
1936	#if NUM_SPOT_LIGHT_SHADOWS > 0
1937		struct SpotLightShadow {
1938			float shadowIntensity;
1939			float shadowBias;
1940			float shadowNormalBias;
1941			float shadowRadius;
1942			vec2 shadowMapSize;
1943		};
1944		uniform SpotLightShadow spotLightShadows[ NUM_SPOT_LIGHT_SHADOWS ];
1945	#endif
1946	#if NUM_POINT_LIGHT_SHADOWS > 0
1947		uniform mat4 pointShadowMatrix[ NUM_POINT_LIGHT_SHADOWS ];
1948		varying vec4 vPointShadowCoord[ NUM_POINT_LIGHT_SHADOWS ];
1949		struct PointLightShadow {
1950			float shadowIntensity;
1951			float shadowBias;
1952			float shadowNormalBias;
1953			float shadowRadius;
1954			vec2 shadowMapSize;
1955			float shadowCameraNear;
1956			float shadowCameraFar;
1957		};
1958		uniform PointLightShadow pointLightShadows[ NUM_POINT_LIGHT_SHADOWS ];
1959	#endif
1960#endif`,XO=`#if ( defined( USE_SHADOWMAP ) && ( NUM_DIR_LIGHT_SHADOWS > 0 || NUM_POINT_LIGHT_SHADOWS > 0 ) ) || ( NUM_SPOT_LIGHT_COORDS > 0 )
1961	vec3 shadowWorldNormal = inverseTransformDirection( transformedNormal, viewMatrix );
1962	vec4 shadowWorldPosition;
1963#endif
1964#if defined( USE_SHADOWMAP )
1965	#if NUM_DIR_LIGHT_SHADOWS > 0
1966		#pragma unroll_loop_start
1967		for ( int i = 0; i < NUM_DIR_LIGHT_SHADOWS; i ++ ) {
1968			shadowWorldPosition = worldPosition + vec4( shadowWorldNormal * directionalLightShadows[ i ].shadowNormalBias, 0 );
1969			vDirectionalShadowCoord[ i ] = directionalShadowMatrix[ i ] * shadowWorldPosition;
1970		}
1971		#pragma unroll_loop_end
1972	#endif
1973	#if NUM_POINT_LIGHT_SHADOWS > 0
1974		#pragma unroll_loop_start
1975		for ( int i = 0; i < NUM_POINT_LIGHT_SHADOWS; i ++ ) {
1976			shadowWorldPosition = worldPosition + vec4( shadowWorldNormal * pointLightShadows[ i ].shadowNormalBias, 0 );
1977			vPointShadowCoord[ i ] = pointShadowMatrix[ i ] * shadowWorldPosition;
1978		}
1979		#pragma unroll_loop_end
1980	#endif
1981#endif
1982#if NUM_SPOT_LIGHT_COORDS > 0
1983	#pragma unroll_loop_start
1984	for ( int i = 0; i < NUM_SPOT_LIGHT_COORDS; i ++ ) {
1985		shadowWorldPosition = worldPosition;
1986		#if ( defined( USE_SHADOWMAP ) && UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS )
1987			shadowWorldPosition.xyz += shadowWorldNormal * spotLightShadows[ i ].shadowNormalBias;
1988		#endif
1989		vSpotLightCoord[ i ] = spotLightMatrix[ i ] * shadowWorldPosition;
1990	}
1991	#pragma unroll_loop_end
1992#endif`,JO=`float getShadowMask() {
1993	float shadow = 1.0;
1994	#ifdef USE_SHADOWMAP
1995	#if NUM_DIR_LIGHT_SHADOWS > 0
1996	DirectionalLightShadow directionalLight;
1997	#pragma unroll_loop_start
1998	for ( int i = 0; i < NUM_DIR_LIGHT_SHADOWS; i ++ ) {
1999		directionalLight = directionalLightShadows[ i ];
2000		shadow *= receiveShadow ? getShadow( directionalShadowMap[ i ], directionalLight.shadowMapSize, directionalLight.shadowIntensity, directionalLight.shadowBias, directionalLight.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0;
2001	}
2002	#pragma unroll_loop_end
2003	#endif
2004	#if NUM_SPOT_LIGHT_SHADOWS > 0
2005	SpotLightShadow spotLight;
2006	#pragma unroll_loop_start
2007	for ( int i = 0; i < NUM_SPOT_LIGHT_SHADOWS; i ++ ) {
2008		spotLight = spotLightShadows[ i ];
2009		shadow *= receiveShadow ? getShadow( spotShadowMap[ i ], spotLight.shadowMapSize, spotLight.shadowIntensity, spotLight.shadowBias, spotLight.shadowRadius, vSpotLightCoord[ i ] ) : 1.0;
2010	}
2011	#pragma unroll_loop_end
2012	#endif
2013	#if NUM_POINT_LIGHT_SHADOWS > 0
2014	PointLightShadow pointLight;
2015	#pragma unroll_loop_start
2016	for ( int i = 0; i < NUM_POINT_LIGHT_SHADOWS; i ++ ) {
2017		pointLight = pointLightShadows[ i ];
2018		shadow *= receiveShadow ? getPointShadow( pointShadowMap[ i ], pointLight.shadowMapSize, pointLight.shadowIntensity, pointLight.shadowBias, pointLight.shadowRadius, vPointShadowCoord[ i ], pointLight.shadowCameraNear, pointLight.shadowCameraFar ) : 1.0;
2019	}
2020	#pragma unroll_loop_end
2021	#endif
2022	#endif
2023	return shadow;
2024}`,$O=`#ifdef USE_SKINNING
2025	mat4 boneMatX = getBoneMatrix( skinIndex.x );
2026	mat4 boneMatY = getBoneMatrix( skinIndex.y );
2027	mat4 boneMatZ = getBoneMatrix( skinIndex.z );
2028	mat4 boneMatW = getBoneMatrix( skinIndex.w );
2029#endif`,KO=`#ifdef USE_SKINNING
2030	uniform mat4 bindMatrix;
2031	uniform mat4 bindMatrixInverse;
2032	uniform highp sampler2D boneTexture;
2033	mat4 getBoneMatrix( const in float i ) {
2034		int size = textureSize( boneTexture, 0 ).x;
2035		int j = int( i ) * 4;
2036		int x = j % size;
2037		int y = j / size;
2038		vec4 v1 = texelFetch( boneTexture, ivec2( x, y ), 0 );
2039		vec4 v2 = texelFetch( boneTexture, ivec2( x + 1, y ), 0 );
2040		vec4 v3 = texelFetch( boneTexture, ivec2( x + 2, y ), 0 );
2041		vec4 v4 = texelFetch( boneTexture, ivec2( x + 3, y ), 0 );
2042		return mat4( v1, v2, v3, v4 );
2043	}
2044#endif`,YO=`#ifdef USE_SKINNING
2045	vec4 skinVertex = bindMatrix * vec4( transformed, 1.0 );
2046	vec4 skinned = vec4( 0.0 );
2047	skinned += boneMatX * skinVertex * skinWeight.x;
2048	skinned += boneMatY * skinVertex * skinWeight.y;
2049	skinned += boneMatZ * skinVertex * skinWeight.z;
2050	skinned += boneMatW * skinVertex * skinWeight.w;
2051	transformed = ( bindMatrixInverse * skinned ).xyz;
2052#endif`,qO=`#ifdef USE_SKINNING
2053	mat4 skinMatrix = mat4( 0.0 );
2054	skinMatrix += skinWeight.x * boneMatX;
2055	skinMatrix += skinWeight.y * boneMatY;
2056	skinMatrix += skinWeight.z * boneMatZ;
2057	skinMatrix += skinWeight.w * boneMatW;
2058	skinMatrix = bindMatrixInverse * skinMatrix * bindMatrix;
2059	objectNormal = vec4( skinMatrix * vec4( objectNormal, 0.0 ) ).xyz;
2060	#ifdef USE_TANGENT
2061		objectTangent = vec4( skinMatrix * vec4( objectTangent, 0.0 ) ).xyz;
2062	#endif
2063#endif`,QO=`float specularStrength;
2064#ifdef USE_SPECULARMAP
2065	vec4 texelSpecular = texture2D( specularMap, vSpecularMapUv );
2066	specularStrength = texelSpecular.r;
2067#else
2068	specularStrength = 1.0;
2069#endif`,ZO=`#ifdef USE_SPECULARMAP
2070	uniform sampler2D specularMap;
2071#endif`,eD=`#if defined( TONE_MAPPING )
2072	gl_FragColor.rgb = toneMapping( gl_FragColor.rgb );
2073#endif`,tD=`#ifndef saturate
2074#define saturate( a ) clamp( a, 0.0, 1.0 )
2075#endif
2076uniform float toneMappingExposure;
2077vec3 LinearToneMapping( vec3 color ) {
2078	return saturate( toneMappingExposure * color );
2079}
2080vec3 ReinhardToneMapping( vec3 color ) {
2081	color *= toneMappingExposure;
2082	return saturate( color / ( vec3( 1.0 ) + color ) );
2083}
2084vec3 CineonToneMapping( vec3 color ) {
2085	color *= toneMappingExposure;
2086	color = max( vec3( 0.0 ), color - 0.004 );
2087	return pow( ( color * ( 6.2 * color + 0.5 ) ) / ( color * ( 6.2 * color + 1.7 ) + 0.06 ), vec3( 2.2 ) );
2088}
2089vec3 RRTAndODTFit( vec3 v ) {
2090	vec3 a = v * ( v + 0.0245786 ) - 0.000090537;
2091	vec3 b = v * ( 0.983729 * v + 0.4329510 ) + 0.238081;
2092	return a / b;
2093}
2094vec3 ACESFilmicToneMapping( vec3 color ) {
2095	const mat3 ACESInputMat = mat3(
2096		vec3( 0.59719, 0.07600, 0.02840 ),		vec3( 0.35458, 0.90834, 0.13383 ),
2097		vec3( 0.04823, 0.01566, 0.83777 )
2098	);
2099	const mat3 ACESOutputMat = mat3(
2100		vec3(  1.60475, -0.10208, -0.00327 ),		vec3( -0.53108,  1.10813, -0.07276 ),
2101		vec3( -0.07367, -0.00605,  1.07602 )
2102	);
2103	color *= toneMappingExposure / 0.6;
2104	color = ACESInputMat * color;
2105	color = RRTAndODTFit( color );
2106	color = ACESOutputMat * color;
2107	return saturate( color );
2108}
2109const mat3 LINEAR_REC2020_TO_LINEAR_SRGB = mat3(
2110	vec3( 1.6605, - 0.1246, - 0.0182 ),
2111	vec3( - 0.5876, 1.1329, - 0.1006 ),
2112	vec3( - 0.0728, - 0.0083, 1.1187 )
2113);
2114const mat3 LINEAR_SRGB_TO_LINEAR_REC2020 = mat3(
2115	vec3( 0.6274, 0.0691, 0.0164 ),
2116	vec3( 0.3293, 0.9195, 0.0880 ),
2117	vec3( 0.0433, 0.0113, 0.8956 )
2118);
2119vec3 agxDefaultContrastApprox( vec3 x ) {
2120	vec3 x2 = x * x;
2121	vec3 x4 = x2 * x2;
2122	return + 15.5 * x4 * x2
2123		- 40.14 * x4 * x
2124		+ 31.96 * x4
2125		- 6.868 * x2 * x
2126		+ 0.4298 * x2
2127		+ 0.1191 * x
2128		- 0.00232;
2129}
2130vec3 AgXToneMapping( vec3 color ) {
2131	const mat3 AgXInsetMatrix = mat3(
2132		vec3( 0.856627153315983, 0.137318972929847, 0.11189821299995 ),
2133		vec3( 0.0951212405381588, 0.761241990602591, 0.0767994186031903 ),
2134		vec3( 0.0482516061458583, 0.101439036467562, 0.811302368396859 )
2135	);
2136	const mat3 AgXOutsetMatrix = mat3(
2137		vec3( 1.1271005818144368, - 0.1413297634984383, - 0.14132976349843826 ),
2138		vec3( - 0.11060664309660323, 1.157823702216272, - 0.11060664309660294 ),
2139		vec3( - 0.016493938717834573, - 0.016493938717834257, 1.2519364065950405 )
2140	);
2141	const float AgxMinEv = - 12.47393;	const float AgxMaxEv = 4.026069;
2142	color *= toneMappingExposure;
2143	color = LINEAR_SRGB_TO_LINEAR_REC2020 * color;
2144	color = AgXInsetMatrix * color;
2145	color = max( color, 1e-10 );	color = log2( color );
2146	color = ( color - AgxMinEv ) / ( AgxMaxEv - AgxMinEv );
2147	color = clamp( color, 0.0, 1.0 );
2148	color = agxDefaultContrastApprox( color );
2149	color = AgXOutsetMatrix * color;
2150	color = pow( max( vec3( 0.0 ), color ), vec3( 2.2 ) );
2151	color = LINEAR_REC2020_TO_LINEAR_SRGB * color;
2152	color = clamp( color, 0.0, 1.0 );
2153	return color;
2154}
2155vec3 NeutralToneMapping( vec3 color ) {
2156	const float StartCompression = 0.8 - 0.04;
2157	const float Desaturation = 0.15;
2158	color *= toneMappingExposure;
2159	float x = min( color.r, min( color.g, color.b ) );
2160	float offset = x < 0.08 ? x - 6.25 * x * x : 0.04;
2161	color -= offset;
2162	float peak = max( color.r, max( color.g, color.b ) );
2163	if ( peak < StartCompression ) return color;
2164	float d = 1. - StartCompression;
2165	float newPeak = 1. - d * d / ( peak + d - StartCompression );
2166	color *= newPeak / peak;
2167	float g = 1. - 1. / ( Desaturation * ( peak - newPeak ) + 1. );
2168	return mix( color, vec3( newPeak ), g );
2169}
2170vec3 CustomToneMapping( vec3 color ) { return color; }`,nD=`#ifdef USE_TRANSMISSION
2171	material.transmission = transmission;
2172	material.transmissionAlpha = 1.0;
2173	material.thickness = thickness;
2174	material.attenuationDistance = attenuationDistance;
2175	material.attenuationColor = attenuationColor;
2176	#ifdef USE_TRANSMISSIONMAP
2177		material.transmission *= texture2D( transmissionMap, vTransmissionMapUv ).r;
2178	#endif
2179	#ifdef USE_THICKNESSMAP
2180		material.thickness *= texture2D( thicknessMap, vThicknessMapUv ).g;
2181	#endif
2182	vec3 pos = vWorldPosition;
2183	vec3 v = normalize( cameraPosition - pos );
2184	vec3 n = inverseTransformDirection( normal, viewMatrix );
2185	vec4 transmitted = getIBLVolumeRefraction(
2186		n, v, material.roughness, material.diffuseColor, material.specularColor, material.specularF90,
2187		pos, modelMatrix, viewMatrix, projectionMatrix, material.dispersion, material.ior, material.thickness,
2188		material.attenuationColor, material.attenuationDistance );
2189	material.transmissionAlpha = mix( material.transmissionAlpha, transmitted.a, material.transmission );
2190	totalDiffuse = mix( totalDiffuse, transmitted.rgb, material.transmission );
2191#endif`,rD=`#ifdef USE_TRANSMISSION
2192	uniform float transmission;
2193	uniform float thickness;
2194	uniform float attenuationDistance;
2195	uniform vec3 attenuationColor;
2196	#ifdef USE_TRANSMISSIONMAP
2197		uniform sampler2D transmissionMap;
2198	#endif
2199	#ifdef USE_THICKNESSMAP
2200		uniform sampler2D thicknessMap;
2201	#endif
2202	uniform vec2 transmissionSamplerSize;
2203	uniform sampler2D transmissionSamplerMap;
2204	uniform mat4 modelMatrix;
2205	uniform mat4 projectionMatrix;
2206	varying vec3 vWorldPosition;
2207	float w0( float a ) {
2208		return ( 1.0 / 6.0 ) * ( a * ( a * ( - a + 3.0 ) - 3.0 ) + 1.0 );
2209	}
2210	float w1( float a ) {
2211		return ( 1.0 / 6.0 ) * ( a *  a * ( 3.0 * a - 6.0 ) + 4.0 );
2212	}
2213	float w2( float a ){
2214		return ( 1.0 / 6.0 ) * ( a * ( a * ( - 3.0 * a + 3.0 ) + 3.0 ) + 1.0 );
2215	}
2216	float w3( float a ) {
2217		return ( 1.0 / 6.0 ) * ( a * a * a );
2218	}
2219	float g0( float a ) {
2220		return w0( a ) + w1( a );
2221	}
2222	float g1( float a ) {
2223		return w2( a ) + w3( a );
2224	}
2225	float h0( float a ) {
2226		return - 1.0 + w1( a ) / ( w0( a ) + w1( a ) );
2227	}
2228	float h1( float a ) {
2229		return 1.0 + w3( a ) / ( w2( a ) + w3( a ) );
2230	}
2231	vec4 bicubic( sampler2D tex, vec2 uv, vec4 texelSize, float lod ) {
2232		uv = uv * texelSize.zw + 0.5;
2233		vec2 iuv = floor( uv );
2234		vec2 fuv = fract( uv );
2235		float g0x = g0( fuv.x );
2236		float g1x = g1( fuv.x );
2237		float h0x = h0( fuv.x );
2238		float h1x = h1( fuv.x );
2239		float h0y = h0( fuv.y );
2240		float h1y = h1( fuv.y );
2241		vec2 p0 = ( vec2( iuv.x + h0x, iuv.y + h0y ) - 0.5 ) * texelSize.xy;
2242		vec2 p1 = ( vec2( iuv.x + h1x, iuv.y + h0y ) - 0.5 ) * texelSize.xy;
2243		vec2 p2 = ( vec2( iuv.x + h0x, iuv.y + h1y ) - 0.5 ) * texelSize.xy;
2244		vec2 p3 = ( vec2( iuv.x + h1x, iuv.y + h1y ) - 0.5 ) * texelSize.xy;
2245		return g0( fuv.y ) * ( g0x * textureLod( tex, p0, lod ) + g1x * textureLod( tex, p1, lod ) ) +
2246			g1( fuv.y ) * ( g0x * textureLod( tex, p2, lod ) + g1x * textureLod( tex, p3, lod ) );
2247	}
2248	vec4 textureBicubic( sampler2D sampler, vec2 uv, float lod ) {
2249		vec2 fLodSize = vec2( textureSize( sampler, int( lod ) ) );
2250		vec2 cLodSize = vec2( textureSize( sampler, int( lod + 1.0 ) ) );
2251		vec2 fLodSizeInv = 1.0 / fLodSize;
2252		vec2 cLodSizeInv = 1.0 / cLodSize;
2253		vec4 fSample = bicubic( sampler, uv, vec4( fLodSizeInv, fLodSize ), floor( lod ) );
2254		vec4 cSample = bicubic( sampler, uv, vec4( cLodSizeInv, cLodSize ), ceil( lod ) );
2255		return mix( fSample, cSample, fract( lod ) );
2256	}
2257	vec3 getVolumeTransmissionRay( const in vec3 n, const in vec3 v, const in float thickness, const in float ior, const in mat4 modelMatrix ) {
2258		vec3 refractionVector = refract( - v, normalize( n ), 1.0 / ior );
2259		vec3 modelScale;
2260		modelScale.x = length( vec3( modelMatrix[ 0 ].xyz ) );
2261		modelScale.y = length( vec3( modelMatrix[ 1 ].xyz ) );
2262		modelScale.z = length( vec3( modelMatrix[ 2 ].xyz ) );
2263		return normalize( refractionVector ) * thickness * modelScale;
2264	}
2265	float applyIorToRoughness( const in float roughness, const in float ior ) {
2266		return roughness * clamp( ior * 2.0 - 2.0, 0.0, 1.0 );
2267	}
2268	vec4 getTransmissionSample( const in vec2 fragCoord, const in float roughness, const in float ior ) {
2269		float lod = log2( transmissionSamplerSize.x ) * applyIorToRoughness( roughness, ior );
2270		return textureBicubic( transmissionSamplerMap, fragCoord.xy, lod );
2271	}
2272	vec3 volumeAttenuation( const in float transmissionDistance, const in vec3 attenuationColor, const in float attenuationDistance ) {
2273		if ( isinf( attenuationDistance ) ) {
2274			return vec3( 1.0 );
2275		} else {
2276			vec3 attenuationCoefficient = -log( attenuationColor ) / attenuationDistance;
2277			vec3 transmittance = exp( - attenuationCoefficient * transmissionDistance );			return transmittance;
2278		}
2279	}
2280	vec4 getIBLVolumeRefraction( const in vec3 n, const in vec3 v, const in float roughness, const in vec3 diffuseColor,
2281		const in vec3 specularColor, const in float specularF90, const in vec3 position, const in mat4 modelMatrix,
2282		const in mat4 viewMatrix, const in mat4 projMatrix, const in float dispersion, const in float ior, const in float thickness,
2283		const in vec3 attenuationColor, const in float attenuationDistance ) {
2284		vec4 transmittedLight;
2285		vec3 transmittance;
2286		#ifdef USE_DISPERSION
2287			float halfSpread = ( ior - 1.0 ) * 0.025 * dispersion;
2288			vec3 iors = vec3( ior - halfSpread, ior, ior + halfSpread );
2289			for ( int i = 0; i < 3; i ++ ) {
2290				vec3 transmissionRay = getVolumeTransmissionRay( n, v, thickness, iors[ i ], modelMatrix );
2291				vec3 refractedRayExit = position + transmissionRay;
2292		
2293				vec4 ndcPos = projMatrix * viewMatrix * vec4( refractedRayExit, 1.0 );
2294				vec2 refractionCoords = ndcPos.xy / ndcPos.w;
2295				refractionCoords += 1.0;
2296				refractionCoords /= 2.0;
2297		
2298				vec4 transmissionSample = getTransmissionSample( refractionCoords, roughness, iors[ i ] );
2299				transmittedLight[ i ] = transmissionSample[ i ];
2300				transmittedLight.a += transmissionSample.a;
2301				transmittance[ i ] = diffuseColor[ i ] * volumeAttenuation( length( transmissionRay ), attenuationColor, attenuationDistance )[ i ];
2302			}
2303			transmittedLight.a /= 3.0;
2304		
2305		#else
2306		
2307			vec3 transmissionRay = getVolumeTransmissionRay( n, v, thickness, ior, modelMatrix );
2308			vec3 refractedRayExit = position + transmissionRay;
2309			vec4 ndcPos = projMatrix * viewMatrix * vec4( refractedRayExit, 1.0 );
2310			vec2 refractionCoords = ndcPos.xy / ndcPos.w;
2311			refractionCoords += 1.0;
2312			refractionCoords /= 2.0;
2313			transmittedLight = getTransmissionSample( refractionCoords, roughness, ior );
2314			transmittance = diffuseColor * volumeAttenuation( length( transmissionRay ), attenuationColor, attenuationDistance );
2315		
2316		#endif
2317		vec3 attenuatedColor = transmittance * transmittedLight.rgb;
2318		vec3 F = EnvironmentBRDF( n, v, specularColor, specularF90, roughness );
2319		float transmittanceFactor = ( transmittance.r + transmittance.g + transmittance.b ) / 3.0;
2320		return vec4( ( 1.0 - F ) * attenuatedColor, 1.0 - ( 1.0 - transmittedLight.a ) * transmittanceFactor );
2321	}
2322#endif`,iD=`#if defined( USE_UV ) || defined( USE_ANISOTROPY )
2323	varying vec2 vUv;
2324#endif
2325#ifdef USE_MAP
2326	varying vec2 vMapUv;
2327#endif
2328#ifdef USE_ALPHAMAP
2329	varying vec2 vAlphaMapUv;
2330#endif
2331#ifdef USE_LIGHTMAP
2332	varying vec2 vLightMapUv;
2333#endif
2334#ifdef USE_AOMAP
2335	varying vec2 vAoMapUv;
2336#endif
2337#ifdef USE_BUMPMAP
2338	varying vec2 vBumpMapUv;
2339#endif
2340#ifdef USE_NORMALMAP
2341	varying vec2 vNormalMapUv;
2342#endif
2343#ifdef USE_EMISSIVEMAP
2344	varying vec2 vEmissiveMapUv;
2345#endif
2346#ifdef USE_METALNESSMAP
2347	varying vec2 vMetalnessMapUv;
2348#endif
2349#ifdef USE_ROUGHNESSMAP
2350	varying vec2 vRoughnessMapUv;
2351#endif
2352#ifdef USE_ANISOTROPYMAP
2353	varying vec2 vAnisotropyMapUv;
2354#endif
2355#ifdef USE_CLEARCOATMAP
2356	varying vec2 vClearcoatMapUv;
2357#endif
2358#ifdef USE_CLEARCOAT_NORMALMAP
2359	varying vec2 vClearcoatNormalMapUv;
2360#endif
2361#ifdef USE_CLEARCOAT_ROUGHNESSMAP
2362	varying vec2 vClearcoatRoughnessMapUv;
2363#endif
2364#ifdef USE_IRIDESCENCEMAP
2365	varying vec2 vIridescenceMapUv;
2366#endif
2367#ifdef USE_IRIDESCENCE_THICKNESSMAP
2368	varying vec2 vIridescenceThicknessMapUv;
2369#endif
2370#ifdef USE_SHEEN_COLORMAP
2371	varying vec2 vSheenColorMapUv;
2372#endif
2373#ifdef USE_SHEEN_ROUGHNESSMAP
2374	varying vec2 vSheenRoughnessMapUv;
2375#endif
2376#ifdef USE_SPECULARMAP
2377	varying vec2 vSpecularMapUv;
2378#endif
2379#ifdef USE_SPECULAR_COLORMAP
2380	varying vec2 vSpecularColorMapUv;
2381#endif
2382#ifdef USE_SPECULAR_INTENSITYMAP
2383	varying vec2 vSpecularIntensityMapUv;
2384#endif
2385#ifdef USE_TRANSMISSIONMAP
2386	uniform mat3 transmissionMapTransform;
2387	varying vec2 vTransmissionMapUv;
2388#endif
2389#ifdef USE_THICKNESSMAP
2390	uniform mat3 thicknessMapTransform;
2391	varying vec2 vThicknessMapUv;
2392#endif`,sD=`#if defined( USE_UV ) || defined( USE_ANISOTROPY )
2393	varying vec2 vUv;
2394#endif
2395#ifdef USE_MAP
2396	uniform mat3 mapTransform;
2397	varying vec2 vMapUv;
2398#endif
2399#ifdef USE_ALPHAMAP
2400	uniform mat3 alphaMapTransform;
2401	varying vec2 vAlphaMapUv;
2402#endif
2403#ifdef USE_LIGHTMAP
2404	uniform mat3 lightMapTransform;
2405	varying vec2 vLightMapUv;
2406#endif
2407#ifdef USE_AOMAP
2408	uniform mat3 aoMapTransform;
2409	varying vec2 vAoMapUv;
2410#endif
2411#ifdef USE_BUMPMAP
2412	uniform mat3 bumpMapTransform;
2413	varying vec2 vBumpMapUv;
2414#endif
2415#ifdef USE_NORMALMAP
2416	uniform mat3 normalMapTransform;
2417	varying vec2 vNormalMapUv;
2418#endif
2419#ifdef USE_DISPLACEMENTMAP
2420	uniform mat3 displacementMapTransform;
2421	varying vec2 vDisplacementMapUv;
2422#endif
2423#ifdef USE_EMISSIVEMAP
2424	uniform mat3 emissiveMapTransform;
2425	varying vec2 vEmissiveMapUv;
2426#endif
2427#ifdef USE_METALNESSMAP
2428	uniform mat3 metalnessMapTransform;
2429	varying vec2 vMetalnessMapUv;
2430#endif
2431#ifdef USE_ROUGHNESSMAP
2432	uniform mat3 roughnessMapTransform;
2433	varying vec2 vRoughnessMapUv;
2434#endif
2435#ifdef USE_ANISOTROPYMAP
2436	uniform mat3 anisotropyMapTransform;
2437	varying vec2 vAnisotropyMapUv;
2438#endif
2439#ifdef USE_CLEARCOATMAP
2440	uniform mat3 clearcoatMapTransform;
2441	varying vec2 vClearcoatMapUv;
2442#endif
2443#ifdef USE_CLEARCOAT_NORMALMAP
2444	uniform mat3 clearcoatNormalMapTransform;
2445	varying vec2 vClearcoatNormalMapUv;
2446#endif
2447#ifdef USE_CLEARCOAT_ROUGHNESSMAP
2448	uniform mat3 clearcoatRoughnessMapTransform;
2449	varying vec2 vClearcoatRoughnessMapUv;
2450#endif
2451#ifdef USE_SHEEN_COLORMAP
2452	uniform mat3 sheenColorMapTransform;
2453	varying vec2 vSheenColorMapUv;
2454#endif
2455#ifdef USE_SHEEN_ROUGHNESSMAP
2456	uniform mat3 sheenRoughnessMapTransform;
2457	varying vec2 vSheenRoughnessMapUv;
2458#endif
2459#ifdef USE_IRIDESCENCEMAP
2460	uniform mat3 iridescenceMapTransform;
2461	varying vec2 vIridescenceMapUv;
2462#endif
2463#ifdef USE_IRIDESCENCE_THICKNESSMAP
2464	uniform mat3 iridescenceThicknessMapTransform;
2465	varying vec2 vIridescenceThicknessMapUv;
2466#endif
2467#ifdef USE_SPECULARMAP
2468	uniform mat3 specularMapTransform;
2469	varying vec2 vSpecularMapUv;
2470#endif
2471#ifdef USE_SPECULAR_COLORMAP
2472	uniform mat3 specularColorMapTransform;
2473	varying vec2 vSpecularColorMapUv;
2474#endif
2475#ifdef USE_SPECULAR_INTENSITYMAP
2476	uniform mat3 specularIntensityMapTransform;
2477	varying vec2 vSpecularIntensityMapUv;
2478#endif
2479#ifdef USE_TRANSMISSIONMAP
2480	uniform mat3 transmissionMapTransform;
2481	varying vec2 vTransmissionMapUv;
2482#endif
2483#ifdef USE_THICKNESSMAP
2484	uniform mat3 thicknessMapTransform;
2485	varying vec2 vThicknessMapUv;
2486#endif`,oD=`#if defined( USE_UV ) || defined( USE_ANISOTROPY )
2487	vUv = vec3( uv, 1 ).xy;
2488#endif
2489#ifdef USE_MAP
2490	vMapUv = ( mapTransform * vec3( MAP_UV, 1 ) ).xy;
2491#endif
2492#ifdef USE_ALPHAMAP
2493	vAlphaMapUv = ( alphaMapTransform * vec3( ALPHAMAP_UV, 1 ) ).xy;
2494#endif
2495#ifdef USE_LIGHTMAP
2496	vLightMapUv = ( lightMapTransform * vec3( LIGHTMAP_UV, 1 ) ).xy;
2497#endif
2498#ifdef USE_AOMAP
2499	vAoMapUv = ( aoMapTransform * vec3( AOMAP_UV, 1 ) ).xy;
2500#endif
2501#ifdef USE_BUMPMAP
2502	vBumpMapUv = ( bumpMapTransform * vec3( BUMPMAP_UV, 1 ) ).xy;
2503#endif
2504#ifdef USE_NORMALMAP
2505	vNormalMapUv = ( normalMapTransform * vec3( NORMALMAP_UV, 1 ) ).xy;
2506#endif
2507#ifdef USE_DISPLACEMENTMAP
2508	vDisplacementMapUv = ( displacementMapTransform * vec3( DISPLACEMENTMAP_UV, 1 ) ).xy;
2509#endif
2510#ifdef USE_EMISSIVEMAP
2511	vEmissiveMapUv = ( emissiveMapTransform * vec3( EMISSIVEMAP_UV, 1 ) ).xy;
2512#endif
2513#ifdef USE_METALNESSMAP
2514	vMetalnessMapUv = ( metalnessMapTransform * vec3( METALNESSMAP_UV, 1 ) ).xy;
2515#endif
2516#ifdef USE_ROUGHNESSMAP
2517	vRoughnessMapUv = ( roughnessMapTransform * vec3( ROUGHNESSMAP_UV, 1 ) ).xy;
2518#endif
2519#ifdef USE_ANISOTROPYMAP
2520	vAnisotropyMapUv = ( anisotropyMapTransform * vec3( ANISOTROPYMAP_UV, 1 ) ).xy;
2521#endif
2522#ifdef USE_CLEARCOATMAP
2523	vClearcoatMapUv = ( clearcoatMapTransform * vec3( CLEARCOATMAP_UV, 1 ) ).xy;
2524#endif
2525#ifdef USE_CLEARCOAT_NORMALMAP
2526	vClearcoatNormalMapUv = ( clearcoatNormalMapTransform * vec3( CLEARCOAT_NORMALMAP_UV, 1 ) ).xy;
2527#endif
2528#ifdef USE_CLEARCOAT_ROUGHNESSMAP
2529	vClearcoatRoughnessMapUv = ( clearcoatRoughnessMapTransform * vec3( CLEARCOAT_ROUGHNESSMAP_UV, 1 ) ).xy;
2530#endif
2531#ifdef USE_IRIDESCENCEMAP
2532	vIridescenceMapUv = ( iridescenceMapTransform * vec3( IRIDESCENCEMAP_UV, 1 ) ).xy;
2533#endif
2534#ifdef USE_IRIDESCENCE_THICKNESSMAP
2535	vIridescenceThicknessMapUv = ( iridescenceThicknessMapTransform * vec3( IRIDESCENCE_THICKNESSMAP_UV, 1 ) ).xy;
2536#endif
2537#ifdef USE_SHEEN_COLORMAP
2538	vSheenColorMapUv = ( sheenColorMapTransform * vec3( SHEEN_COLORMAP_UV, 1 ) ).xy;
2539#endif
2540#ifdef USE_SHEEN_ROUGHNESSMAP
2541	vSheenRoughnessMapUv = ( sheenRoughnessMapTransform * vec3( SHEEN_ROUGHNESSMAP_UV, 1 ) ).xy;
2542#endif
2543#ifdef USE_SPECULARMAP
2544	vSpecularMapUv = ( specularMapTransform * vec3( SPECULARMAP_UV, 1 ) ).xy;
2545#endif
2546#ifdef USE_SPECULAR_COLORMAP
2547	vSpecularColorMapUv = ( specularColorMapTransform * vec3( SPECULAR_COLORMAP_UV, 1 ) ).xy;
2548#endif
2549#ifdef USE_SPECULAR_INTENSITYMAP
2550	vSpecularIntensityMapUv = ( specularIntensityMapTransform * vec3( SPECULAR_INTENSITYMAP_UV, 1 ) ).xy;
2551#endif
2552#ifdef USE_TRANSMISSIONMAP
2553	vTransmissionMapUv = ( transmissionMapTransform * vec3( TRANSMISSIONMAP_UV, 1 ) ).xy;
2554#endif
2555#ifdef USE_THICKNESSMAP
2556	vThicknessMapUv = ( thicknessMapTransform * vec3( THICKNESSMAP_UV, 1 ) ).xy;
2557#endif`,aD=`#if defined( USE_ENVMAP ) || defined( DISTANCE ) || defined ( USE_SHADOWMAP ) || defined ( USE_TRANSMISSION ) || NUM_SPOT_LIGHT_COORDS > 0
2558	vec4 worldPosition = vec4( transformed, 1.0 );
2559	#ifdef USE_BATCHING
2560		worldPosition = batchingMatrix * worldPosition;
2561	#endif
2562	#ifdef USE_INSTANCING
2563		worldPosition = instanceMatrix * worldPosition;
2564	#endif
2565	worldPosition = modelMatrix * worldPosition;
2566#endif`;const lD=`varying vec2 vUv;
2567uniform mat3 uvTransform;
2568void main() {
2569	vUv = ( uvTransform * vec3( uv, 1 ) ).xy;
2570	gl_Position = vec4( position.xy, 1.0, 1.0 );
2571}`,cD=`uniform sampler2D t2D;
2572uniform float backgroundIntensity;
2573varying vec2 vUv;
2574void main() {
2575	vec4 texColor = texture2D( t2D, vUv );
2576	#ifdef DECODE_VIDEO_TEXTURE
2577		texColor = vec4( mix( pow( texColor.rgb * 0.9478672986 + vec3( 0.0521327014 ), vec3( 2.4 ) ), texColor.rgb * 0.0773993808, vec3( lessThanEqual( texColor.rgb, vec3( 0.04045 ) ) ) ), texColor.w );
2578	#endif
2579	texColor.rgb *= backgroundIntensity;
2580	gl_FragColor = texColor;
2581	#include <tonemapping_fragment>
2582	#include <colorspace_fragment>
2583}`,uD=`varying vec3 vWorldDirection;
2584#include <common>
2585void main() {
2586	vWorldDirection = transformDirection( position, modelMatrix );
2587	#include <begin_vertex>
2588	#include <project_vertex>
2589	gl_Position.z = gl_Position.w;
2590}`,hD=`#ifdef ENVMAP_TYPE_CUBE
2591	uniform samplerCube envMap;
2592#elif defined( ENVMAP_TYPE_CUBE_UV )
2593	uniform sampler2D envMap;
2594#endif
2595uniform float flipEnvMap;
2596uniform float backgroundBlurriness;
2597uniform float backgroundIntensity;
2598uniform mat3 backgroundRotation;
2599varying vec3 vWorldDirection;
2600#include <cube_uv_reflection_fragment>
2601void main() {
2602	#ifdef ENVMAP_TYPE_CUBE
2603		vec4 texColor = textureCube( envMap, backgroundRotation * vec3( flipEnvMap * vWorldDirection.x, vWorldDirection.yz ) );
2604	#elif defined( ENVMAP_TYPE_CUBE_UV )
2605		vec4 texColor = textureCubeUV( envMap, backgroundRotation * vWorldDirection, backgroundBlurriness );
2606	#else
2607		vec4 texColor = vec4( 0.0, 0.0, 0.0, 1.0 );
2608	#endif
2609	texColor.rgb *= backgroundIntensity;
2610	gl_FragColor = texColor;
2611	#include <tonemapping_fragment>
2612	#include <colorspace_fragment>
2613}`,dD=`varying vec3 vWorldDirection;
2614#include <common>
2615void main() {
2616	vWorldDirection = transformDirection( position, modelMatrix );
2617	#include <begin_vertex>
2618	#include <project_vertex>
2619	gl_Position.z = gl_Position.w;
2620}`,fD=`uniform samplerCube tCube;
2621uniform float tFlip;
2622uniform float opacity;
2623varying vec3 vWorldDirection;
2624void main() {
2625	vec4 texColor = textureCube( tCube, vec3( tFlip * vWorldDirection.x, vWorldDirection.yz ) );
2626	gl_FragColor = texColor;
2627	gl_FragColor.a *= opacity;
2628	#include <tonemapping_fragment>
2629	#include <colorspace_fragment>
2630}`,pD=`#include <common>
2631#include <batching_pars_vertex>
2632#include <uv_pars_vertex>
2633#include <displacementmap_pars_vertex>
2634#include <morphtarget_pars_vertex>
2635#include <skinning_pars_vertex>
2636#include <logdepthbuf_pars_vertex>
2637#include <clipping_planes_pars_vertex>
2638varying vec2 vHighPrecisionZW;
2639void main() {
2640	#include <uv_vertex>
2641	#include <batching_vertex>
2642	#include <skinbase_vertex>
2643	#include <morphinstance_vertex>
2644	#ifdef USE_DISPLACEMENTMAP
2645		#include <beginnormal_vertex>
2646		#include <morphnormal_vertex>
2647		#include <skinnormal_vertex>
2648	#endif
2649	#include <begin_vertex>
2650	#include <morphtarget_vertex>
2651	#include <skinning_vertex>
2652	#include <displacementmap_vertex>
2653	#include <project_vertex>
2654	#include <logdepthbuf_vertex>
2655	#include <clipping_planes_vertex>
2656	vHighPrecisionZW = gl_Position.zw;
2657}`,mD=`#if DEPTH_PACKING == 3200
2658	uniform float opacity;
2659#endif
2660#include <common>
2661#include <packing>
2662#include <uv_pars_fragment>
2663#include <map_pars_fragment>
2664#include <alphamap_pars_fragment>
2665#include <alphatest_pars_fragment>
2666#include <alphahash_pars_fragment>
2667#include <logdepthbuf_pars_fragment>
2668#include <clipping_planes_pars_fragment>
2669varying vec2 vHighPrecisionZW;
2670void main() {
2671	vec4 diffuseColor = vec4( 1.0 );
2672	#include <clipping_planes_fragment>
2673	#if DEPTH_PACKING == 3200
2674		diffuseColor.a = opacity;
2675	#endif
2676	#include <map_fragment>
2677	#include <alphamap_fragment>
2678	#include <alphatest_fragment>
2679	#include <alphahash_fragment>
2680	#include <logdepthbuf_fragment>
2681	float fragCoordZ = 0.5 * vHighPrecisionZW[0] / vHighPrecisionZW[1] + 0.5;
2682	#if DEPTH_PACKING == 3200
2683		gl_FragColor = vec4( vec3( 1.0 - fragCoordZ ), opacity );
2684	#elif DEPTH_PACKING == 3201
2685		gl_FragColor = packDepthToRGBA( fragCoordZ );
2686	#elif DEPTH_PACKING == 3202
2687		gl_FragColor = vec4( packDepthToRGB( fragCoordZ ), 1.0 );
2688	#elif DEPTH_PACKING == 3203
2689		gl_FragColor = vec4( packDepthToRG( fragCoordZ ), 0.0, 1.0 );
2690	#endif
2691}`,gD=`#define DISTANCE
2692varying vec3 vWorldPosition;
2693#include <common>
2694#include <batching_pars_vertex>
2695#include <uv_pars_vertex>
2696#include <displacementmap_pars_vertex>
2697#include <morphtarget_pars_vertex>
2698#include <skinning_pars_vertex>
2699#include <clipping_planes_pars_vertex>
2700void main() {
2701	#include <uv_vertex>
2702	#include <batching_vertex>
2703	#include <skinbase_vertex>
2704	#include <morphinstance_vertex>
2705	#ifdef USE_DISPLACEMENTMAP
2706		#include <beginnormal_vertex>
2707		#include <morphnormal_vertex>
2708		#include <skinnormal_vertex>
2709	#endif
2710	#include <begin_vertex>
2711	#include <morphtarget_vertex>
2712	#include <skinning_vertex>
2713	#include <displacementmap_vertex>
2714	#include <project_vertex>
2715	#include <worldpos_vertex>
2716	#include <clipping_planes_vertex>
2717	vWorldPosition = worldPosition.xyz;
2718}`,yD=`#define DISTANCE
2719uniform vec3 referencePosition;
2720uniform float nearDistance;
2721uniform float farDistance;
2722varying vec3 vWorldPosition;
2723#include <common>
2724#include <packing>
2725#include <uv_pars_fragment>
2726#include <map_pars_fragment>
2727#include <alphamap_pars_fragment>
2728#include <alphatest_pars_fragment>
2729#include <alphahash_pars_fragment>
2730#include <clipping_planes_pars_fragment>
2731void main () {
2732	vec4 diffuseColor = vec4( 1.0 );
2733	#include <clipping_planes_fragment>
2734	#include <map_fragment>
2735	#include <alphamap_fragment>
2736	#include <alphatest_fragment>
2737	#include <alphahash_fragment>
2738	float dist = length( vWorldPosition - referencePosition );
2739	dist = ( dist - nearDistance ) / ( farDistance - nearDistance );
2740	dist = saturate( dist );
2741	gl_FragColor = packDepthToRGBA( dist );
2742}`,vD=`varying vec3 vWorldDirection;
2743#include <common>
2744void main() {
2745	vWorldDirection = transformDirection( position, modelMatrix );
2746	#include <begin_vertex>
2747	#include <project_vertex>
2748}`,_D=`uniform sampler2D tEquirect;
2749varying vec3 vWorldDirection;
2750#include <common>
2751void main() {
2752	vec3 direction = normalize( vWorldDirection );
2753	vec2 sampleUV = equirectUv( direction );
2754	gl_FragColor = texture2D( tEquirect, sampleUV );
2755	#include <tonemapping_fragment>
2756	#include <colorspace_fragment>
2757}`,xD=`uniform float scale;
2758attribute float lineDistance;
2759varying float vLineDistance;
2760#include <common>
2761#include <uv_pars_vertex>
2762#include <color_pars_vertex>
2763#include <fog_pars_vertex>
2764#include <morphtarget_pars_vertex>
2765#include <logdepthbuf_pars_vertex>
2766#include <clipping_planes_pars_vertex>
2767void main() {
2768	vLineDistance = scale * lineDistance;
2769	#include <uv_vertex>
2770	#include <color_vertex>
2771	#include <morphinstance_vertex>
2772	#include <morphcolor_vertex>
2773	#include <begin_vertex>
2774	#include <morphtarget_vertex>
2775	#include <project_vertex>
2776	#include <logdepthbuf_vertex>
2777	#include <clipping_planes_vertex>
2778	#include <fog_vertex>
2779}`,MD=`uniform vec3 diffuse;
2780uniform float opacity;
2781uniform float dashSize;
2782uniform float totalSize;
2783varying float vLineDistance;
2784#include <common>
2785#include <color_pars_fragment>
2786#include <uv_pars_fragment>
2787#include <map_pars_fragment>
2788#include <fog_pars_fragment>
2789#include <logdepthbuf_pars_fragment>
2790#include <clipping_planes_pars_fragment>
2791void main() {
2792	vec4 diffuseColor = vec4( diffuse, opacity );
2793	#include <clipping_planes_fragment>
2794	if ( mod( vLineDistance, totalSize ) > dashSize ) {
2795		discard;
2796	}
2797	vec3 outgoingLight = vec3( 0.0 );
2798	#include <logdepthbuf_fragment>
2799	#include <map_fragment>
2800	#include <color_fragment>
2801	outgoingLight = diffuseColor.rgb;
2802	#include <opaque_fragment>
2803	#include <tonemapping_fragment>
2804	#include <colorspace_fragment>
2805	#include <fog_fragment>
2806	#include <premultiplied_alpha_fragment>
2807}`,SD=`#include <common>
2808#include <batching_pars_vertex>
2809#include <uv_pars_vertex>
2810#include <envmap_pars_vertex>
2811#include <color_pars_vertex>
2812#include <fog_pars_vertex>
2813#include <morphtarget_pars_vertex>
2814#include <skinning_pars_vertex>
2815#include <logdepthbuf_pars_vertex>
2816#include <clipping_planes_pars_vertex>
2817void main() {
2818	#include <uv_vertex>
2819	#include <color_vertex>
2820	#include <morphinstance_vertex>
2821	#include <morphcolor_vertex>
2822	#include <batching_vertex>
2823	#if defined ( USE_ENVMAP ) || defined ( USE_SKINNING )
2824		#include <beginnormal_vertex>
2825		#include <morphnormal_vertex>
2826		#include <skinbase_vertex>
2827		#include <skinnormal_vertex>
2828		#include <defaultnormal_vertex>
2829	#endif
2830	#include <begin_vertex>
2831	#include <morphtarget_vertex>
2832	#include <skinning_vertex>
2833	#include <project_vertex>
2834	#include <logdepthbuf_vertex>
2835	#include <clipping_planes_vertex>
2836	#include <worldpos_vertex>
2837	#include <envmap_vertex>
2838	#include <fog_vertex>
2839}`,wD=`uniform vec3 diffuse;
2840uniform float opacity;
2841#ifndef FLAT_SHADED
2842	varying vec3 vNormal;
2843#endif
2844#include <common>
2845#include <dithering_pars_fragment>
2846#include <color_pars_fragment>
2847#include <uv_pars_fragment>
2848#include <map_pars_fragment>
2849#include <alphamap_pars_fragment>
2850#include <alphatest_pars_fragment>
2851#include <alphahash_pars_fragment>
2852#include <aomap_pars_fragment>
2853#include <lightmap_pars_fragment>
2854#include <envmap_common_pars_fragment>
2855#include <envmap_pars_fragment>
2856#include <fog_pars_fragment>
2857#include <specularmap_pars_fragment>
2858#include <logdepthbuf_pars_fragment>
2859#include <clipping_planes_pars_fragment>
2860void main() {
2861	vec4 diffuseColor = vec4( diffuse, opacity );
2862	#include <clipping_planes_fragment>
2863	#include <logdepthbuf_fragment>
2864	#include <map_fragment>
2865	#include <color_fragment>
2866	#include <alphamap_fragment>
2867	#include <alphatest_fragment>
2868	#include <alphahash_fragment>
2869	#include <specularmap_fragment>
2870	ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );
2871	#ifdef USE_LIGHTMAP
2872		vec4 lightMapTexel = texture2D( lightMap, vLightMapUv );
2873		reflectedLight.indirectDiffuse += lightMapTexel.rgb * lightMapIntensity * RECIPROCAL_PI;
2874	#else
2875		reflectedLight.indirectDiffuse += vec3( 1.0 );
2876	#endif
2877	#include <aomap_fragment>
2878	reflectedLight.indirectDiffuse *= diffuseColor.rgb;
2879	vec3 outgoingLight = reflectedLight.indirectDiffuse;
2880	#include <envmap_fragment>
2881	#include <opaque_fragment>
2882	#include <tonemapping_fragment>
2883	#include <colorspace_fragment>
2884	#include <fog_fragment>
2885	#include <premultiplied_alpha_fragment>
2886	#include <dithering_fragment>
2887}`,AD=`#define LAMBERT
2888varying vec3 vViewPosition;
2889#include <common>
2890#include <batching_pars_vertex>
2891#include <uv_pars_vertex>
2892#include <displacementmap_pars_vertex>
2893#include <envmap_pars_vertex>
2894#include <color_pars_vertex>
2895#include <fog_pars_vertex>
2896#include <normal_pars_vertex>
2897#include <morphtarget_pars_vertex>
2898#include <skinning_pars_vertex>
2899#include <shadowmap_pars_vertex>
2900#include <logdepthbuf_pars_vertex>
2901#include <clipping_planes_pars_vertex>
2902void main() {
2903	#include <uv_vertex>
2904	#include <color_vertex>
2905	#include <morphinstance_vertex>
2906	#include <morphcolor_vertex>
2907	#include <batching_vertex>
2908	#include <beginnormal_vertex>
2909	#include <morphnormal_vertex>
2910	#include <skinbase_vertex>
2911	#include <skinnormal_vertex>
2912	#include <defaultnormal_vertex>
2913	#include <normal_vertex>
2914	#include <begin_vertex>
2915	#include <morphtarget_vertex>
2916	#include <skinning_vertex>
2917	#include <displacementmap_vertex>
2918	#include <project_vertex>
2919	#include <logdepthbuf_vertex>
2920	#include <clipping_planes_vertex>
2921	vViewPosition = - mvPosition.xyz;
2922	#include <worldpos_vertex>
2923	#include <envmap_vertex>
2924	#include <shadowmap_vertex>
2925	#include <fog_vertex>
2926}`,ED=`#define LAMBERT
2927uniform vec3 diffuse;
2928uniform vec3 emissive;
2929uniform float opacity;
2930#include <common>
2931#include <packing>
2932#include <dithering_pars_fragment>
2933#include <color_pars_fragment>
2934#include <uv_pars_fragment>
2935#include <map_pars_fragment>
2936#include <alphamap_pars_fragment>
2937#include <alphatest_pars_fragment>
2938#include <alphahash_pars_fragment>
2939#include <aomap_pars_fragment>
2940#include <lightmap_pars_fragment>
2941#include <emissivemap_pars_fragment>
2942#include <envmap_common_pars_fragment>
2943#include <envmap_pars_fragment>
2944#include <fog_pars_fragment>
2945#include <bsdfs>
2946#include <lights_pars_begin>
2947#include <normal_pars_fragment>
2948#include <lights_lambert_pars_fragment>
2949#include <shadowmap_pars_fragment>
2950#include <bumpmap_pars_fragment>
2951#include <normalmap_pars_fragment>
2952#include <specularmap_pars_fragment>
2953#include <logdepthbuf_pars_fragment>
2954#include <clipping_planes_pars_fragment>
2955void main() {
2956	vec4 diffuseColor = vec4( diffuse, opacity );
2957	#include <clipping_planes_fragment>
2958	ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );
2959	vec3 totalEmissiveRadiance = emissive;
2960	#include <logdepthbuf_fragment>
2961	#include <map_fragment>
2962	#include <color_fragment>
2963	#include <alphamap_fragment>
2964	#include <alphatest_fragment>
2965	#include <alphahash_fragment>
2966	#include <specularmap_fragment>
2967	#include <normal_fragment_begin>
2968	#include <normal_fragment_maps>
2969	#include <emissivemap_fragment>
2970	#include <lights_lambert_fragment>
2971	#include <lights_fragment_begin>
2972	#include <lights_fragment_maps>
2973	#include <lights_fragment_end>
2974	#include <aomap_fragment>
2975	vec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + totalEmissiveRadiance;
2976	#include <envmap_fragment>
2977	#include <opaque_fragment>
2978	#include <tonemapping_fragment>
2979	#include <colorspace_fragment>
2980	#include <fog_fragment>
2981	#include <premultiplied_alpha_fragment>
2982	#include <dithering_fragment>
2983}`,bD=`#define MATCAP
2984varying vec3 vViewPosition;
2985#include <common>
2986#include <batching_pars_vertex>
2987#include <uv_pars_vertex>
2988#include <color_pars_vertex>
2989#include <displacementmap_pars_vertex>
2990#include <fog_pars_vertex>
2991#include <normal_pars_vertex>
2992#include <morphtarget_pars_vertex>
2993#include <skinning_pars_vertex>
2994#include <logdepthbuf_pars_vertex>
2995#include <clipping_planes_pars_vertex>
2996void main() {
2997	#include <uv_vertex>
2998	#include <color_vertex>
2999	#include <morphinstance_vertex>
3000	#include <morphcolor_vertex>
3001	#include <batching_vertex>
3002	#include <beginnormal_vertex>
3003	#include <morphnormal_vertex>
3004	#include <skinbase_vertex>
3005	#include <skinnormal_vertex>
3006	#include <defaultnormal_vertex>
3007	#include <normal_vertex>
3008	#include <begin_vertex>
3009	#include <morphtarget_vertex>
3010	#include <skinning_vertex>
3011	#include <displacementmap_vertex>
3012	#include <project_vertex>
3013	#include <logdepthbuf_vertex>
3014	#include <clipping_planes_vertex>
3015	#include <fog_vertex>
3016	vViewPosition = - mvPosition.xyz;
3017}`,CD=`#define MATCAP
3018uniform vec3 diffuse;
3019uniform float opacity;
3020uniform sampler2D matcap;
3021varying vec3 vViewPosition;
3022#include <common>
3023#include <dithering_pars_fragment>
3024#include <color_pars_fragment>
3025#include <uv_pars_fragment>
3026#include <map_pars_fragment>
3027#include <alphamap_pars_fragment>
3028#include <alphatest_pars_fragment>
3029#include <alphahash_pars_fragment>
3030#include <fog_pars_fragment>
3031#include <normal_pars_fragment>
3032#include <bumpmap_pars_fragment>
3033#include <normalmap_pars_fragment>
3034#include <logdepthbuf_pars_fragment>
3035#include <clipping_planes_pars_fragment>
3036void main() {
3037	ve
3037c4 diffuseColor = vec4( diffuse, opacity );
3038	#include <clipping_planes_fragment>
3039	#include <logdepthbuf_fragment>
3040	#include <map_fragment>
3041	#include <color_fragment>
3042	#include <alphamap_fragment>
3043	#include <alphatest_fragment>
3044	#include <alphahash_fragment>
3045	#include <normal_fragment_begin>
3046	#include <normal_fragment_maps>
3047	vec3 viewDir = normalize( vViewPosition );
3048	vec3 x = normalize( vec3( viewDir.z, 0.0, - viewDir.x ) );
3049	vec3 y = cross( viewDir, x );
3050	vec2 uv = vec2( dot( x, normal ), dot( y, normal ) ) * 0.495 + 0.5;
3051	#ifdef USE_MATCAP
3052		vec4 matcapColor = texture2D( matcap, uv );
3053	#else
3054		vec4 matcapColor = vec4( vec3( mix( 0.2, 0.8, uv.y ) ), 1.0 );
3055	#endif
3056	vec3 outgoingLight = diffuseColor.rgb * matcapColor.rgb;
3057	#include <opaque_fragment>
3058	#include <tonemapping_fragment>
3059	#include <colorspace_fragment>
3060	#include <fog_fragment>
3061	#include <premultiplied_alpha_fragment>
3062	#include <dithering_fragment>
3063}`,TD=`#define NORMAL
3064#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP_TANGENTSPACE )
3065	varying vec3 vViewPosition;
3066#endif
3067#include <common>
3068#include <batching_pars_vertex>
3069#include <uv_pars_vertex>
3070#include <displacementmap_pars_vertex>
3071#include <normal_pars_vertex>
3072#include <morphtarget_pars_vertex>
3073#include <skinning_pars_vertex>
3074#include <logdepthbuf_pars_vertex>
3075#include <clipping_planes_pars_vertex>
3076void main() {
3077	#include <uv_vertex>
3078	#include <batching_vertex>
3079	#include <beginnormal_vertex>
3080	#include <morphinstance_vertex>
3081	#include <morphnormal_vertex>
3082	#include <skinbase_vertex>
3083	#include <skinnormal_vertex>
3084	#include <defaultnormal_vertex>
3085	#include <normal_vertex>
3086	#include <begin_vertex>
3087	#include <morphtarget_vertex>
3088	#include <skinning_vertex>
3089	#include <displacementmap_vertex>
3090	#include <project_vertex>
3091	#include <logdepthbuf_vertex>
3092	#include <clipping_planes_vertex>
3093#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP_TANGENTSPACE )
3094	vViewPosition = - mvPosition.xyz;
3095#endif
3096}`,ID=`#define NORMAL
3097uniform float opacity;
3098#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP_TANGENTSPACE )
3099	varying vec3 vViewPosition;
3100#endif
3101#include <packing>
3102#include <uv_pars_fragment>
3103#include <normal_pars_fragment>
3104#include <bumpmap_pars_fragment>
3105#include <normalmap_pars_fragment>
3106#include <logdepthbuf_pars_fragment>
3107#include <clipping_planes_pars_fragment>
3108void main() {
3109	vec4 diffuseColor = vec4( 0.0, 0.0, 0.0, opacity );
3110	#include <clipping_planes_fragment>
3111	#include <logdepthbuf_fragment>
3112	#include <normal_fragment_begin>
3113	#include <normal_fragment_maps>
3114	gl_FragColor = vec4( packNormalToRGB( normal ), diffuseColor.a );
3115	#ifdef OPAQUE
3116		gl_FragColor.a = 1.0;
3117	#endif
3118}`,PD=`#define PHONG
3119varying vec3 vViewPosition;
3120#include <common>
3121#include <batching_pars_vertex>
3122#include <uv_pars_vertex>
3123#include <displacementmap_pars_vertex>
3124#include <envmap_pars_vertex>
3125#include <color_pars_vertex>
3126#include <fog_pars_vertex>
3127#include <normal_pars_vertex>
3128#include <morphtarget_pars_vertex>
3129#include <skinning_pars_vertex>
3130#include <shadowmap_pars_vertex>
3131#include <logdepthbuf_pars_vertex>
3132#include <clipping_planes_pars_vertex>
3133void main() {
3134	#include <uv_vertex>
3135	#include <color_vertex>
3136	#include <morphcolor_vertex>
3137	#include <batching_vertex>
3138	#include <beginnormal_vertex>
3139	#include <morphinstance_vertex>
3140	#include <morphnormal_vertex>
3141	#include <skinbase_vertex>
3142	#include <skinnormal_vertex>
3143	#include <defaultnormal_vertex>
3144	#include <normal_vertex>
3145	#include <begin_vertex>
3146	#include <morphtarget_vertex>
3147	#include <skinning_vertex>
3148	#include <displacementmap_vertex>
3149	#include <project_vertex>
3150	#include <logdepthbuf_vertex>
3151	#include <clipping_planes_vertex>
3152	vViewPosition = - mvPosition.xyz;
3153	#include <worldpos_vertex>
3154	#include <envmap_vertex>
3155	#include <shadowmap_vertex>
3156	#include <fog_vertex>
3157}`,RD=`#define PHONG
3158uniform vec3 diffuse;
3159uniform vec3 emissive;
3160uniform vec3 specular;
3161uniform float shininess;
3162uniform float opacity;
3163#include <common>
3164#include <packing>
3165#include <dithering_pars_fragment>
3166#include <color_pars_fragment>
3167#include <uv_pars_fragment>
3168#include <map_pars_fragment>
3169#include <alphamap_pars_fragment>
3170#include <alphatest_pars_fragment>
3171#include <alphahash_pars_fragment>
3172#include <aomap_pars_fragment>
3173#include <lightmap_pars_fragment>
3174#include <emissivemap_pars_fragment>
3175#include <envmap_common_pars_fragment>
3176#include <envmap_pars_fragment>
3177#include <fog_pars_fragment>
3178#include <bsdfs>
3179#include <lights_pars_begin>
3180#include <normal_pars_fragment>
3181#include <lights_phong_pars_fragment>
3182#include <shadowmap_pars_fragment>
3183#include <bumpmap_pars_fragment>
3184#include <normalmap_pars_fragment>
3185#include <specularmap_pars_fragment>
3186#include <logdepthbuf_pars_fragment>
3187#include <clipping_planes_pars_fragment>
3188void main() {
3189	vec4 diffuseColor = vec4( diffuse, opacity );
3190	#include <clipping_planes_fragment>
3191	ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );
3192	vec3 totalEmissiveRadiance = emissive;
3193	#include <logdepthbuf_fragment>
3194	#include <map_fragment>
3195	#include <color_fragment>
3196	#include <alphamap_fragment>
3197	#include <alphatest_fragment>
3198	#include <alphahash_fragment>
3199	#include <specularmap_fragment>
3200	#include <normal_fragment_begin>
3201	#include <normal_fragment_maps>
3202	#include <emissivemap_fragment>
3203	#include <lights_phong_fragment>
3204	#include <lights_fragment_begin>
3205	#include <lights_fragment_maps>
3206	#include <lights_fragment_end>
3207	#include <aomap_fragment>
3208	vec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + reflectedLight.directSpecular + reflectedLight.indirectSpecular + totalEmissiveRadiance;
3209	#include <envmap_fragment>
3210	#include <opaque_fragment>
3211	#include <tonemapping_fragment>
3212	#include <colorspace_fragment>
3213	#include <fog_fragment>
3214	#include <premultiplied_alpha_fragment>
3215	#include <dithering_fragment>
3216}`,BD=`#define STANDARD
3217varying vec3 vViewPosition;
3218#ifdef USE_TRANSMISSION
3219	varying vec3 vWorldPosition;
3220#endif
3221#include <common>
3222#include <batching_pars_vertex>
3223#include <uv_pars_vertex>
3224#include <displacementmap_pars_vertex>
3225#include <color_pars_vertex>
3226#include <fog_pars_vertex>
3227#include <normal_pars_vertex>
3228#include <morphtarget_pars_vertex>
3229#include <skinning_pars_vertex>
3230#include <shadowmap_pars_vertex>
3231#include <logdepthbuf_pars_vertex>
3232#include <clipping_planes_pars_vertex>
3233void main() {
3234	#include <uv_vertex>
3235	#include <color_vertex>
3236	#include <morphinstance_vertex>
3237	#include <morphcolor_vertex>
3238	#include <batching_vertex>
3239	#include <beginnormal_vertex>
3240	#include <morphnormal_vertex>
3241	#include <skinbase_vertex>
3242	#include <skinnormal_vertex>
3243	#include <defaultnormal_vertex>
3244	#include <normal_vertex>
3245	#include <begin_vertex>
3246	#include <morphtarget_vertex>
3247	#include <skinning_vertex>
3248	#include <displacementmap_vertex>
3249	#include <project_vertex>
3250	#include <logdepthbuf_vertex>
3251	#include <clipping_planes_vertex>
3252	vViewPosition = - mvPosition.xyz;
3253	#include <worldpos_vertex>
3254	#include <shadowmap_vertex>
3255	#include <fog_vertex>
3256#ifdef USE_TRANSMISSION
3257	vWorldPosition = worldPosition.xyz;
3258#endif
3259}`,OD=`#define STANDARD
3260#ifdef PHYSICAL
3261	#define IOR
3262	#define USE_SPECULAR
3263#endif
3264uniform vec3 diffuse;
3265uniform vec3 emissive;
3266uniform float roughness;
3267uniform float metalness;
3268uniform float opacity;
3269#ifdef IOR
3270	uniform float ior;
3271#endif
3272#ifdef USE_SPECULAR
3273	uniform float specularIntensity;
3274	uniform vec3 specularColor;
3275	#ifdef USE_SPECULAR_COLORMAP
3276		uniform sampler2D specularColorMap;
3277	#endif
3278	#ifdef USE_SPECULAR_INTENSITYMAP
3279		uniform sampler2D specularIntensityMap;
3280	#endif
3281#endif
3282#ifdef USE_CLEARCOAT
3283	uniform float clearcoat;
3284	uniform float clearcoatRoughness;
3285#endif
3286#ifdef USE_DISPERSION
3287	uniform float dispersion;
3288#endif
3289#ifdef USE_IRIDESCENCE
3290	uniform float iridescence;
3291	uniform float iridescenceIOR;
3292	uniform float iridescenceThicknessMinimum;
3293	uniform float iridescenceThicknessMaximum;
3294#endif
3295#ifdef USE_SHEEN
3296	uniform vec3 sheenColor;
3297	uniform float sheenRoughness;
3298	#ifdef USE_SHEEN_COLORMAP
3299		uniform sampler2D sheenColorMap;
3300	#endif
3301	#ifdef USE_SHEEN_ROUGHNESSMAP
3302		uniform sampler2D sheenRoughnessMap;
3303	#endif
3304#endif
3305#ifdef USE_ANISOTROPY
3306	uniform vec2 anisotropyVector;
3307	#ifdef USE_ANISOTROPYMAP
3308		uniform sampler2D anisotropyMap;
3309	#endif
3310#endif
3311varying vec3 vViewPosition;
3312#include <common>
3313#include <packing>
3314#include <dithering_pars_fragment>
3315#include <color_pars_fragment>
3316#include <uv_pars_fragment>
3317#include <map_pars_fragment>
3318#include <alphamap_pars_fragment>
3319#include <alphatest_pars_fragment>
3320#include <alphahash_pars_fragment>
3321#include <aomap_pars_fragment>
3322#include <lightmap_pars_fragment>
3323#include <emissivemap_pars_fragment>
3324#include <iridescence_fragment>
3325#include <cube_uv_reflection_fragment>
3326#include <envmap_common_pars_fragment>
3327#include <envmap_physical_pars_fragment>
3328#include <fog_pars_fragment>
3329#include <lights_pars_begin>
3330#include <normal_pars_fragment>
3331#include <lights_physical_pars_fragment>
3332#include <transmission_pars_fragment>
3333#include <shadowmap_pars_fragment>
3334#include <bumpmap_pars_fragment>
3335#include <normalmap_pars_fragment>
3336#include <clearcoat_pars_fragment>
3337#include <iridescence_pars_fragment>
3338#include <roughnessmap_pars_fragment>
3339#include <metalnessmap_pars_fragment>
3340#include <logdepthbuf_pars_fragment>
3341#include <clipping_planes_pars_fragment>
3342void main() {
3343	vec4 diffuseColor = vec4( diffuse, opacity );
3344	#include <clipping_planes_fragment>
3345	ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );
3346	vec3 totalEmissiveRadiance = emissive;
3347	#include <logdepthbuf_fragment>
3348	#include <map_fragment>
3349	#include <color_fragment>
3350	#include <alphamap_fragment>
3351	#include <alphatest_fragment>
3352	#include <alphahash_fragment>
3353	#include <roughnessmap_fragment>
3354	#include <metalnessmap_fragment>
3355	#include <normal_fragment_begin>
3356	#include <normal_fragment_maps>
3357	#include <clearcoat_normal_fragment_begin>
3358	#include <clearcoat_normal_fragment_maps>
3359	#include <emissivemap_fragment>
3360	#include <lights_physical_fragment>
3361	#include <lights_fragment_begin>
3362	#include <lights_fragment_maps>
3363	#include <lights_fragment_end>
3364	#include <aomap_fragment>
3365	vec3 totalDiffuse = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse;
3366	vec3 totalSpecular = reflectedLight.directSpecular + reflectedLight.indirectSpecular;
3367	#include <transmission_fragment>
3368	vec3 outgoingLight = totalDiffuse + totalSpecular + totalEmissiveRadiance;
3369	#ifdef USE_SHEEN
3370		float sheenEnergyComp = 1.0 - 0.157 * max3( material.sheenColor );
3371		outgoingLight = outgoingLight * sheenEnergyComp + sheenSpecularDirect + sheenSpecularIndirect;
3372	#endif
3373	#ifdef USE_CLEARCOAT
3374		float dotNVcc = saturate( dot( geometryClearcoatNormal, geometryViewDir ) );
3375		vec3 Fcc = F_Schlick( material.clearcoatF0, material.clearcoatF90, dotNVcc );
3376		outgoingLight = outgoingLight * ( 1.0 - material.clearcoat * Fcc ) + ( clearcoatSpecularDirect + clearcoatSpecularIndirect ) * material.clearcoat;
3377	#endif
3378	#include <opaque_fragment>
3379	#include <tonemapping_fragment>
3380	#include <colorspace_fragment>
3381	#include <fog_fragment>
3382	#include <premultiplied_alpha_fragment>
3383	#include <dithering_fragment>
3384}`,DD=`#define TOON
3385varying vec3 vViewPosition;
3386#include <common>
3387#include <batching_pars_vertex>
3388#include <uv_pars_vertex>
3389#include <displacementmap_pars_vertex>
3390#include <color_pars_vertex>
3391#include <fog_pars_vertex>
3392#include <normal_pars_vertex>
3393#include <morphtarget_pars_vertex>
3394#include <skinning_pars_vertex>
3395#include <shadowmap_pars_vertex>
3396#include <logdepthbuf_pars_vertex>
3397#include <clipping_planes_pars_vertex>
3398void main() {
3399	#include <uv_vertex>
3400	#include <color_vertex>
3401	#include <morphinstance_vertex>
3402	#include <morphcolor_vertex>
3403	#include <batching_vertex>
3404	#include <beginnormal_vertex>
3405	#include <morphnormal_vertex>
3406	#include <skinbase_vertex>
3407	#include <skinnormal_vertex>
3408	#include <defaultnormal_vertex>
3409	#include <normal_vertex>
3410	#include <begin_vertex>
3411	#include <morphtarget_vertex>
3412	#include <skinning_vertex>
3413	#include <displacementmap_vertex>
3414	#include <project_vertex>
3415	#include <logdepthbuf_vertex>
3416	#include <clipping_planes_vertex>
3417	vViewPosition = - mvPosition.xyz;
3418	#include <worldpos_vertex>
3419	#include <shadowmap_vertex>
3420	#include <fog_vertex>
3421}`,LD=`#define TOON
3422uniform vec3 diffuse;
3423uniform vec3 emissive;
3424uniform float opacity;
3425#include <common>
3426#include <packing>
3427#include <dithering_pars_fragment>
3428#include <color_pars_fragment>
3429#include <uv_pars_fragment>
3430#include <map_pars_fragment>
3431#include <alphamap_pars_fragment>
3432#include <alphatest_pars_fragment>
3433#include <alphahash_pars_fragment>
3434#include <aomap_pars_fragment>
3435#include <lightmap_pars_fragment>
3436#include <emissivemap_pars_fragment>
3437#include <gradientmap_pars_fragment>
3438#include <fog_pars_fragment>
3439#include <bsdfs>
3440#include <lights_pars_begin>
3441#include <normal_pars_fragment>
3442#include <lights_toon_pars_fragment>
3443#include <shadowmap_pars_fragment>
3444#include <bumpmap_pars_fragment>
3445#include <normalmap_pars_fragment>
3446#include <logdepthbuf_pars_fragment>
3447#include <clipping_planes_pars_fragment>
3448void main() {
3449	vec4 diffuseColor = vec4( diffuse, opacity );
3450	#include <clipping_planes_fragment>
3451	ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );
3452	vec3 totalEmissiveRadiance = emissive;
3453	#include <logdepthbuf_fragment>
3454	#include <map_fragment>
3455	#include <color_fragment>
3456	#include <alphamap_fragment>
3457	#include <alphatest_fragment>
3458	#include <alphahash_fragment>
3459	#include <normal_fragment_begin>
3460	#include <normal_fragment_maps>
3461	#include <emissivemap_fragment>
3462	#include <lights_toon_fragment>
3463	#include <lights_fragment_begin>
3464	#include <lights_fragment_maps>
3465	#include <lights_fragment_end>
3466	#include <aomap_fragment>
3467	vec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + totalEmissiveRadiance;
3468	#include <opaque_fragment>
3469	#include <tonemapping_fragment>
3470	#include <colorspace_fragment>
3471	#include <fog_fragment>
3472	#include <premultiplied_alpha_fragment>
3473	#include <dithering_fragment>
3474}`,ND=`uniform float size;
3475uniform float scale;
3476#include <common>
3477#include <color_pars_vertex>
3478#include <fog_pars_vertex>
3479#include <morphtarget_pars_vertex>
3480#include <logdepthbuf_pars_vertex>
3481#include <clipping_planes_pars_vertex>
3482#ifdef USE_POINTS_UV
3483	varying vec2 vUv;
3484	uniform mat3 uvTransform;
3485#endif
3486void main() {
3487	#ifdef USE_POINTS_UV
3488		vUv = ( uvTransform * vec3( uv, 1 ) ).xy;
3489	#endif
3490	#include <color_vertex>
3491	#include <morphinstance_vertex>
3492	#include <morphcolor_vertex>
3493	#include <begin_vertex>
3494	#include <morphtarget_vertex>
3495	#include <project_vertex>
3496	gl_PointSize = size;
3497	#ifdef USE_SIZEATTENUATION
3498		bool isPerspective = isPerspectiveMatrix( projectionMatrix );
3499		if ( isPerspective ) gl_PointSize *= ( scale / - mvPosition.z );
3500	#endif
3501	#include <logdepthbuf_vertex>
3502	#include <clipping_planes_vertex>
3503	#include <worldpos_vertex>
3504	#include <fog_vertex>
3505}`,FD=`uniform vec3 diffuse;
3506uniform float opacity;
3507#include <common>
3508#include <color_pars_fragment>
3509#include <map_particle_pars_fragment>
3510#include <alphatest_pars_fragment>
3511#include <alphahash_pars_fragment>
3512#include <fog_pars_fragment>
3513#include <logdepthbuf_pars_fragment>
3514#include <clipping_planes_pars_fragment>
3515void main() {
3516	vec4 diffuseColor = vec4( diffuse, opacity );
3517	#include <clipping_planes_fragment>
3518	vec3 outgoingLight = vec3( 0.0 );
3519	#include <logdepthbuf_fragment>
3520	#include <map_particle_fragment>
3521	#include <color_fragment>
3522	#include <alphatest_fragment>
3523	#include <alphahash_fragment>
3524	outgoingLight = diffuseColor.rgb;
3525	#include <opaque_fragment>
3526	#include <tonemapping_fragment>
3527	#include <colorspace_fragment>
3528	#include <fog_fragment>
3529	#include <premultiplied_alpha_fragment>
3530}`,kD=`#include <common>
3531#include <batching_pars_vertex>
3532#include <fog_pars_vertex>
3533#include <morphtarget_pars_vertex>
3534#include <skinning_pars_vertex>
3535#include <logdepthbuf_pars_vertex>
3536#include <shadowmap_pars_vertex>
3537void main() {
3538	#include <batching_vertex>
3539	#include <beginnormal_vertex>
3540	#include <morphinstance_vertex>
3541	#include <morphnormal_vertex>
3542	#include <skinbase_vertex>
3543	#include <skinnormal_vertex>
3544	#include <defaultnormal_vertex>
3545	#include <begin_vertex>
3546	#include <morphtarget_vertex>
3547	#include <skinning_vertex>
3548	#include <project_vertex>
3549	#include <logdepthbuf_vertex>
3550	#include <worldpos_vertex>
3551	#include <shadowmap_vertex>
3552	#include <fog_vertex>
3553}`,UD=`uniform vec3 color;
3554uniform float opacity;
3555#include <common>
3556#include <packing>
3557#include <fog_pars_fragment>
3558#include <bsdfs>
3559#include <lights_pars_begin>
3560#include <logdepthbuf_pars_fragment>
3561#include <shadowmap_pars_fragment>
3562#include <shadowmask_pars_fragment>
3563void main() {
3564	#include <logdepthbuf_fragment>
3565	gl_FragColor = vec4( color, opacity * ( 1.0 - getShadowMask() ) );
3566	#include <tonemapping_fragment>
3567	#include <colorspace_fragment>
3568	#include <fog_fragment>
3569}`,jD=`uniform float rotation;
3570uniform vec2 center;
3571#include <common>
3572#include <uv_pars_vertex>
3573#include <fog_pars_vertex>
3574#include <logdepthbuf_pars_vertex>
3575#include <clipping_planes_pars_vertex>
3576void main() {
3577	#include <uv_vertex>
3578	vec4 mvPosition = modelViewMatrix[ 3 ];
3579	vec2 scale = vec2( length( modelMatrix[ 0 ].xyz ), length( modelMatrix[ 1 ].xyz ) );
3580	#ifndef USE_SIZEATTENUATION
3581		bool isPerspective = isPerspectiveMatrix( projectionMatrix );
3582		if ( isPerspective ) scale *= - mvPosition.z;
3583	#endif
3584	vec2 alignedPosition = ( position.xy - ( center - vec2( 0.5 ) ) ) * scale;
3585	vec2 rotatedPosition;
3586	rotatedPosition.x = cos( rotation ) * alignedPosition.x - sin( rotation ) * alignedPosition.y;
3587	rotatedPosition.y = sin( rotation ) * alignedPosition.x + cos( rotation ) * alignedPosition.y;
3588	mvPosition.xy += rotatedPosition;
3589	gl_Position = projectionMatrix * mvPosition;
3590	#include <logdepthbuf_vertex>
3591	#include <clipping_planes_vertex>
3592	#include <fog_vertex>
3593}`,zD=`uniform vec3 diffuse;
3594uniform float opacity;
3595#include <common>
3596#include <uv_pars_fragment>
3597#include <map_pars_fragment>
3598#include <alphamap_pars_fragment>
3599#include <alphatest_pars_fragment>
3600#include <alphahash_pars_fragment>
3601#include <fog_pars_fragment>
3602#include <logdepthbuf_pars_fragment>
3603#include <clipping_planes_pars_fragment>
3604void main() {
3605	vec4 diffuseColor = vec4( diffuse, opacity );
3606	#include <clipping_planes_fragment>
3607	vec3 outgoingLight = vec3( 0.0 );
3608	#include <logdepthbuf_fragment>
3609	#include <map_fragment>
3610	#include <alphamap_fragment>
3611	#include <alphatest_fragment>
3612	#include <alphahash_fragment>
3613	outgoingLight = diffuseColor.rgb;
3614	#include <opaque_fragment>
3615	#include <tonemapping_fragment>
3616	#include <colorspace_fragment>
3617	#include <fog_fragment>
3618}`,an={alphahash_fragment:cB,alphahash_pars_fragment:uB,alphamap_fragment:hB,alphamap_pars_fragment:dB,alphatest_fragment:fB,alphatest_pars_fragment:pB,aomap_fragment:mB,aomap_pars_fragment:gB,batching_pars_vertex:yB,batching_vertex:vB,begin_vertex:_B,beginnormal_vertex:xB,bsdfs:MB,iridescence_fragment:SB,bumpmap_pars_fragment:wB,clipping_planes_fragment:AB,clipping_planes_pars_fragment:EB,clipping_planes_pars_vertex:bB,clipping_planes_vertex:CB,color_fragment:TB,color_pars_fragment:IB,color_pars_vertex:PB,color_vertex:RB,common:BB,cube_uv_reflection_fragment:OB,defaultnormal_vertex:DB,displacementmap_pars_vertex:LB,displacementmap_vertex:NB,emissivemap_fragment:FB,emissivemap_pars_fragment:kB,colorspace_fragment:UB,colorspace_pars_fragment:jB,envmap_fragment:zB,envmap_common_pars_fragment:HB,envmap_pars_fragment:GB,envmap_pars_vertex:VB,envmap_physical_pars_fragment:tO,envmap_vertex:WB,fog_vertex:XB,fog_pars_vertex:JB,fog_fragment:$B,fog_pars_fragment:KB,gradientmap_pars_fragment:YB,lightmap_pars_fragment:qB,lights_lambert_fragment:QB,lights_lambert_pars_fragment:ZB,lights_pars_begin:eO,lights_toon_fragment:nO,lights_toon_pars_fragment:rO,lights_phong_fragment:iO,lights_phong_pars_fragment:sO,lights_physical_fragment:oO,lights_physical_pars_fragment:aO,lights_fragment_begin:lO,lights_fragment_maps:cO,lights_fragment_end:uO,logdepthbuf_fragment:hO,logdepthbuf_pars_fragment:dO,logdepthbuf_pars_vertex:fO,logdepthbuf_vertex:pO,map_fragment:mO,map_pars_fragment:gO,map_particle_fragment:yO,map_particle_pars_fragment:vO,metalnessmap_fragment:_O,metalnessmap_pars_fragment:xO,morphinstance_vertex:MO,morphcolor_vertex:SO,morphnormal_vertex:wO,morphtarget_pars_vertex:AO,morphtarget_vertex:EO,normal_fragment_begin:bO,normal_fragment_maps:CO,normal_pars_fragment:TO,normal_pars_vertex:IO,normal_vertex:PO,normalmap_pars_fragment:RO,clearcoat_normal_fragment_begin:BO,clearcoat_normal_fragment_maps:OO,clearcoat_pars_fragment:DO,iridescence_pars_fragment:LO,opaque_fragment:NO,packing:FO,premultiplied_alpha_fragment:kO,project_vertex:UO,dithering_fragment:jO,dithering_pars_fragment:zO,roughnessmap_fragment:HO,roughnessmap_pars_fragment:GO,shadowmap_pars_fragment:VO,shadowmap_pars_vertex:WO,shadowmap_vertex:XO,shadowmask_pars_fragment:JO,skinbase_vertex:$O,skinning_pars_vertex:KO,skinning_vertex:YO,skinnormal_vertex:qO,specularmap_fragment:QO,specularmap_pars_fragment:ZO,tonemapping_fragment:eD,tonemapping_pars_fragment:tD,transmission_fragment:nD,transmission_pars_fragment:rD,uv_pars_fragment:iD,uv_pars_vertex:sD,uv_vertex:oD,worldpos_vertex:aD,background_vert:lD,background_frag:cD,backgroundCube_vert:uD,backgroundCube_frag:hD,cube_vert:dD,cube_frag:fD,depth_vert:pD,depth_frag:mD,distanceRGBA_vert:gD,distanceRGBA_frag:yD,equirect_vert:vD,equirect_frag:_D,linedashed_vert:xD,linedashed_frag:MD,meshbasic_vert:SD,meshbasic_frag:wD,meshlambert_vert:AD,meshlambert_frag:ED,meshmatcap_vert:bD,meshmatcap_frag:CD,meshnormal_vert:TD,meshnormal_frag:ID,meshphong_vert:PD,meshphong_frag:RD,meshphysical_vert:BD,meshphysical_frag:OD,meshtoon_vert:DD,meshtoon_frag:LD,points_vert:ND,points_frag:FD,shadow_vert:kD,shadow_frag:UD,sprite_vert:jD,sprite_frag:zD},it={common:{diffuse:{value:new tt(16777215)},opacity:{value:1},map:{value:null},mapTransform:{value:new Qt},alphaMap:{value:null},alphaMapTransform:{value:new Qt},alphaTest:{value:0}},specularmap:{specularMap:{value:null},specularMapTransform:{value:new Qt}},envmap:{envMap:{value:null},envMapRotation:{value:new Qt},flipEnvMap:{value:-1},reflectivity:{value:1},ior:{value:1.5},refractionRatio:{value:.98}},aomap:{aoMap:{value:null},aoMapIntensity:{value:1},aoMapTransform:{value:new Qt}},lightmap:{lightMap:{value:null},lightMapIntensity:{value:1},lightMapTransform:{value:new Qt}},bumpmap:{bumpMap:{value:null},bumpMapTransform:{value:new Qt},bumpScale:{value:1}},normalmap:{normalMap:{value:null},normalMapTransform:{value:new Qt},normalScale:{value:new Ne(1,1)}}
vendor: 19,110 bytes, line 3618
3618,displacementmap:{displacementMap:{value:null},displacementMapTransform:{value:new Qt},displacementScale:{value:1},displacementBias:{value:0}},emissivemap:{emissiveMap:{value:null},emissiveMapTransform:{value:new Qt}},metalnessmap:{metalnessMap:{value:null},metalnessMapTransform:{value:new Qt}},roughnessmap:{roughnessMap:{value:null},roughnessMapTransform:{value:new Qt}},gradientmap:{gradientMap:{value:null}},fog:{fogDensity:{value:25e-5},fogNear:{value:1},fogFar:{value:2e3},fogColor:{value:new tt(16777215)}},lights:{ambientLightColor:{value:[]},lightProbe:{value:[]},directionalLights:{value:[],properties:{direction:{},color:{}}},directionalLightShadows:{value:[],properties:{shadowIntensity:1,shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{}}},directionalShadowMap:{value:[]},directionalShadowMatrix:{value:[]},spotLights:{value:[],properties:{color:{},position:{},direction:{},distance:{},coneCos:{},penumbraCos:{},decay:{}}},spotLightShadows:{value:[],properties:{shadowIntensity:1,shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{}}},spotLightMap:{value:[]},spotShadowMap:{value:[]},spotLightMatrix:{value:[]},pointLights:{value:[],properties:{color:{},position:{},decay:{},distance:{}}},pointLightShadows:{value:[],properties:{shadowIntensity:1,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 tt(16777215)},opacity:{value:1},size:{value:1},scale:{value:1},map:{value:null},alphaMap:{value:null},alphaMapTransform:{value:new Qt},alphaTest:{value:0},uvTransform:{value:new Qt}},sprite:{diffuse:{value:new tt(16777215)},opacity:{value:1},center:{value:new Ne(.5,.5)},rotation:{value:0},map:{value:null},mapTransform:{value:new Qt},alphaMap:{value:null},alphaMapTransform:{value:new Qt},alphaTest:{value:0}}},_o={basic:{uniforms:Pi([it.common,it.specularmap,it.envmap,it.aomap,it.lightmap,it.fog]),vertexShader:an.meshbasic_vert,fragmentShader:an.meshbasic_frag},lambert:{uniforms:Pi([it.common,it.specularmap,it.envmap,it.aomap,it.lightmap,it.emissivemap,it.bumpmap,it.normalmap,it.displacementmap,it.fog,it.lights,{emissive:{value:new tt(0)}}]),vertexShader:an.meshlambert_vert,fragmentShader:an.meshlambert_frag},phong:{uniforms:Pi([it.common,it.specularmap,it.envmap,it.aomap,it.lightmap,it.emissivemap,it.bumpmap,it.normalmap,it.displacementmap,it.fog,it.lights,{emissive:{value:new tt(0)},specular:{value:new tt(1118481)},shininess:{value:30}}]),vertexShader:an.meshphong_vert,fragmentShader:an.meshphong_frag},standard:{uniforms:Pi([it.common,it.envmap,it.aomap,it.lightmap,it.emissivemap,it.bumpmap,it.normalmap,it.displacementmap,it.roughnessmap,it.metalnessmap,it.fog,it.lights,{emissive:{value:new tt(0)},roughness:{value:1},metalness:{value:0},envMapIntensity:{value:1}}]),vertexShader:an.meshphysical_vert,fragmentShader:an.meshphysical_frag},toon:{uniforms:Pi([it.common,it.aomap,it.lightmap,it.emissivemap,it.bumpmap,it.normalmap,it.displacementmap,it.gradientmap,it.fog,it.lights,{emissive:{value:new tt(0)}}]),vertexShader:an.meshtoon_vert,fragmentShader:an.meshtoon_frag},matcap:{uniforms:Pi([it.common,it.bumpmap,it.normalmap,it.displacementmap,it.fog,{matcap:{value:null}}]),vertexShader:an.meshmatcap_vert,fragmentShader:an.meshmatcap_frag},points:{uniforms:Pi([it.points,it.fog]),vertexShader:an.points_vert,fragmentShader:an.points_frag},dashed:{uniforms:Pi([it.common,it.fog,{scale:{value:1},dashSize:{value:1},totalSize:{value:2}}]),vertexShader:an.linedashed_vert,fragmentShader:an.linedashed_frag},depth:{uniforms:Pi([it.common,it.displacementmap]),vertexShader:an.depth_vert,fragmentShader:an.depth_frag},normal:{uniforms:Pi([it.common,it.bumpmap,it.normalmap,it.displacementmap,{opacity:{value:1}}]),vertexShader:an.meshnormal_vert,fragmentShader:an.meshnormal_frag},sprite:{uniforms:Pi([it.sprite,it.fog]),vertexShader:an.sprite_vert,fragmentShader:an.sprite_frag},background:{uniforms:{uvTransform:{value:new Qt},t2D:{value:null},backgroundIntensity:{value:1}},vertexShader:an.background_vert,fragmentShader:an.background_frag},backgroundCube:{uniforms:{envMap:{value:null},flipEnvMap:{value:-1},backgroundBlurriness:{value:0},backgroundIntensity:{value:1},backgroundRotation:{value:new Qt}},vertexShader:an.backgroundCube_vert,fragmentShader:an.backgroundCube_frag},cube:{uniforms:{tCube:{value:null},tFlip:{value:-1},opacity:{value:1}},vertexShader:an.cube_vert,fragmentShader:an.cube_frag},equirect:{uniforms:{tEquirect:{value:null}},vertexShader:an.equirect_vert,fragmentShader:an.equirect_frag},distanceRGBA:{uniforms:Pi([it.common,it.displacementmap,{referencePosition:{value:new $},nearDistance:{value:1},farDistance:{value:1e3}}]),vertexShader:an.distanceRGBA_vert,fragmentShader:an.distanceRGBA_frag},shadow:{uniforms:Pi([it.lights,it.fog,{color:{value:new tt(0)},opacity:{value:1}}]),vertexShader:an.shadow_vert,fragmentShader:an.shadow_frag}};_o.physical={uniforms:Pi([_o.standard.uniforms,{clearcoat:{value:0},clearcoatMap:{value:null},clearcoatMapTransform:{value:new Qt},clearcoatNormalMap:{value:null},clearcoatNormalMapTransform:{value:new Qt},clearcoatNormalScale:{value:new Ne(1,1)},clearcoatRoughness:{value:0},clearcoatRoughnessMap:{value:null},clearcoatRoughnessMapTransform:{value:new Qt},dispersion:{value:0},iridescence:{value:0},iridescenceMap:{value:null},iridescenceMapTransform:{value:new Qt},iridescenceIOR:{value:1.3},iridescenceThicknessMinimum:{value:100},iridescenceThicknessMaximum:{value:400},iridescenceThicknessMap:{value:null},iridescenceThicknessMapTransform:{value:new Qt},sheen:{value:0},sheenColor:{value:new tt(0)},sheenColorMap:{value:null},sheenColorMapTransform:{value:new Qt},sheenRoughness:{value:1},sheenRoughnessMap:{value:null},sheenRoughnessMapTransform:{value:new Qt},transmission:{value:0},transmissionMap:{value:null},transmissionMapTransform:{value:new Qt},transmissionSamplerSize:{value:new Ne},transmissionSamplerMap:{value:null},thickness:{value:0},thicknessMap:{value:null},thicknessMapTransform:{value:new Qt},attenuationDistance:{value:0},attenuationColor:{value:new tt(0)},specularColor:{value:new tt(1,1,1)},specularColorMap:{value:null},specularColorMapTransform:{value:new Qt},specularIntensity:{value:1},specularIntensityMap:{value:null},specularIntensityMapTransform:{value:new Qt},anisotropyVector:{value:new Ne},anisotropyMap:{value:null},anisotropyMapTransform:{value:new Qt}}]),vertexShader:an.meshphysical_vert,fragmentShader:an.meshphysical_frag};const ig={r:0,b:0,g:0},au=new Ms,HD=new Nt;function GD(r,e,t,n,i,s,o){const l=new tt(0);let u=s===!0?0:1,d,p,m=null,y=0,v=null;function S(I){let P=I.isScene===!0?I.background:null;return P&&P.isTexture&&(P=(I.backgroundBlurriness>0?t:e).get(P)),P}function E(I){let P=!1;const k=S(I);k===null?M(l,u):k&&k.isColor&&(M(k,1),P=!0);const O=r.xr.getEnvironmentBlendMode();O==="additive"?n.buffers.color.setClear(0,0,0,1,o):O==="alpha-blend"&&n.buffers.color.setClear(0,0,0,0,o),(r.autoClear||P)&&(n.buffers.depth.setTest(!0),n.buffers.depth.setMask(!0),n.buffers.color.setMask(!0),r.clear(r.autoClearColor,r.autoClearDepth,r.autoClearStencil))}function A(I,P){const k=S(P);k&&(k.isCubeTexture||k.mapping===Vd)?(p===void 0&&(p=new hr(new zu(1,1,1),new So({name:"BackgroundCubeMaterial",uniforms:kd(_o.backgroundCube.uniforms),vertexShader:_o.backgroundCube.vertexShader,fragmentShader:_o.backgroundCube.fragmentShader,side:Ni,depthTest:!1,depthWrite:!1,fog:!1})),p.geometry.deleteAttribute("normal"),p.geometry.deleteAttribute("uv"),p.onBeforeRender=function(O,N,H){this.matrixWorld.copyPosition(H.matrixWorld)},Object.defineProperty(p.material,"envMap",{get:function(){return this.uniforms.envMap.value}}),i.update(p)),au.copy(P.backgroundRotation),au.x*=-1,au.y*=-1,au.z*=-1,k.isCubeTexture&&k.isRenderTargetTexture===!1&&(au.y*=-1,au.z*=-1),p.material.uniforms.envMap.value=k,p.material.uniforms.flipEnvMap.value=k.isCubeTexture&&k.isRenderTargetTexture===!1?-1:1,p.material.uniforms.backgroundBlurriness.value=P.backgroundBlurriness,p.material.uniforms.backgroundIntensity.value=P.backgroundIntensity,p.material.uniforms.backgroundRotation.value.setFromMatrix4(HD.makeRotationFromEuler(au)),p.material.toneMapped=yn.getTransfer(k.colorSpace)!==Cn,(m!==k||y!==k.version||v!==r.toneMapping)&&(p.material.needsUpdate=!0,m=k,y=k.version,v=r.toneMapping),p.layers.enableAll(),I.unshift(p,p.geometry,p.material,0,0,null)):k&&k.isTexture&&(d===void 0&&(d=new hr(new Jd(2,2),new So({name:"BackgroundMaterial",uniforms:kd(_o.background.uniforms),vertexShader:_o.background.vertexShader,fragmentShader:_o.background.fragmentShader,side:Qo,depthTest:!1,depthWrite:!1,fog:!1})),d.geometry.deleteAttribute("normal"),Object.defineProperty(d.material,"map",{get:function(){return this.uniforms.t2D.value}}),i.update(d)),d.material.uniforms.t2D.value=k,d.material.uniforms.backgroundIntensity.value=P.backgroundIntensity,d.material.toneMapped=yn.getTransfer(k.colorSpace)!==Cn,k.matrixAutoUpdate===!0&&k.updateMatrix(),d.material.uniforms.uvTransform.value.copy(k.matrix),(m!==k||y!==k.version||v!==r.toneMapping)&&(d.material.needsUpdate=!0,m=k,y=k.version,v=r.toneMapping),d.layers.enableAll(),I.unshift(d,d.geometry,d.material,0,0,null))}function M(I,P){I.getRGB(ig,iC(r)),n.buffers.color.setClear(ig.r,ig.g,ig.b,P,o)}function T(){p!==void 0&&(p.geometry.dispose(),p.material.dispose()),d!==void 0&&(d.geometry.dispose(),d.material.dispose())}return{getClearColor:function(){return l},setClearColor:function(I,P=1){l.set(I),u=P,M(l,u)},getClearAlpha:function(){return u},setClearAlpha:function(I){u=I,M(l,u)},render:E,addToRenderList:A,dispose:T}}function VD(r,e){const t=r.getParameter(r.MAX_VERTEX_ATTRIBS),n={},i=y(null);let s=i,o=!1;function l(L,V,te,ne,ce){let me=!1;const he=m(ne,te,V);s!==he&&(s=he,d(s.object)),me=v(L,ne,te,ce),me&&S(L,ne,te,ce),ce!==null&&e.update(ce,r.ELEMENT_ARRAY_BUFFER),(me||o)&&(o=!1,P(L,V,te,ne),ce!==null&&r.bindBuffer(r.ELEMENT_ARRAY_BUFFER,e.get(ce).buffer))}function u(){return r.createVertexArray()}function d(L){return r.bindVertexArray(L)}function p(L){return r.deleteVertexArray(L)}function m(L,V,te){const ne=te.wireframe===!0;let ce=n[L.id];ce===void 0&&(ce={},n[L.id]=ce);let me=ce[V.id];me===void 0&&(me={},ce[V.id]=me);let he=me[ne];return he===void 0&&(he=y(u()),me[ne]=he),he}function y(L){const V=[],te=[],ne=[];for(let ce=0;ce<t;ce++)V[ce]=0,te[ce]=0,ne[ce]=0;return{geometry:null,program:null,wireframe:!1,newAttributes:V,enabledAttributes:te,attributeDivisors:ne,object:L,attributes:{},index:null}}function v(L,V,te,ne){const ce=s.attributes,me=V.attributes;let he=0;const ge=te.getAttributes();for(const U in ge)if(ge[U].location>=0){const q=ce[U];let X=me[U];if(X===void 0&&(U==="instanceMatrix"&&L.instanceMatrix&&(X=L.instanceMatrix),U==="instanceColor"&&L.instanceColor&&(X=L.instanceColor)),q===void 0||q.attribute!==X||X&&q.data!==X.data)return!0;he++}return s.attributesNum!==he||s.index!==ne}function S(L,V,te,ne){const ce={},me=V.attributes;let he=0;const ge=te.getAttributes();for(const U in ge)if(ge[U].location>=0){let q=me[U];q===void 0&&(U==="instanceMatrix"&&L.instanceMatrix&&(q=L.instanceMatrix),U==="instanceColor"&&L.instanceColor&&(q=L.instanceColor));const X={};X.attribute=q,q&&q.data&&(X.data=q.data),ce[U]=X,he++}s.attributes=ce,s.attributesNum=he,s.index=ne}function E(){const L=s.newAttributes;for(let V=0,te=L.length;V<te;V++)L[V]=0}function A(L){M(L,0)}function M(L,V){const te=s.newAttributes,ne=s.enabledAttributes,ce=s.attributeDivisors;te[L]=1,ne[L]===0&&(r.enableVertexAttribArray(L),ne[L]=1),ce[L]!==V&&(r.vertexAttribDivisor(L,V),ce[L]=V)}function T(){const L=s.newAttributes,V=s.enabledAttributes;for(let te=0,ne=V.length;te<ne;te++)V[te]!==L[te]&&(r.disableVertexAttribArray(te),V[te]=0)}function I(L,V,te,ne,ce,me,he){he===!0?r.vertexAttribIPointer(L,V,te,ce,me):r.vertexAttribPointer(L,V,te,ne,ce,me)}function P(L,V,te,ne){E();const ce=ne.attributes,me=te.getAttributes(),he=V.defaultAttributeValues;for(const ge in me){const U=me[ge];if(U.location>=0){let Z=ce[ge];if(Z===void 0&&(ge==="instanceMatrix"&&L.instanceMatrix&&(Z=L.instanceMatrix),ge==="instanceColor"&&L.instanceColor&&(Z=L.instanceColor)),Z!==void 0){const q=Z.normalized,X=Z.itemSize,se=e.get(Z);if(se===void 0)continue;const Le=se.buffer,pe=se.type,Ae=se.bytesPerElement,Re=pe===r.INT||pe===r.UNSIGNED_INT||Z.gpuType===Ny;if(Z.isInterleavedBufferAttribute){const Ie=Z.data,Ge=Ie.stride,qe=Z.offset;if(Ie.isInstancedInterleavedBuffer){for(let lt=0;lt<U.locationSize;lt++)M(U.location+lt,Ie.meshPerAttribute);L.isInstancedMesh!==!0&&ne._maxInstanceCount===void 0&&(ne._maxInstanceCount=Ie.meshPerAttribute*Ie.count)}else for(let lt=0;lt<U.locationSize;lt++)A(U.location+lt);r.bindBuffer(r.ARRAY_BUFFER,Le);for(let lt=0;lt<U.locationSize;lt++)I(U.location+lt,X/U.locationSize,pe,q,Ge*Ae,(qe+X/U.locationSize*lt)*Ae,Re)}else{if(Z.isInstancedBufferAttribute){for(let Ie=0;Ie<U.locationSize;Ie++)M(U.location+Ie,Z.meshPerAttribute);L.isInstancedMesh!==!0&&ne._maxInstanceCount===void 0&&(ne._maxInstanceCount=Z.meshPerAttribute*Z.count)}else for(let Ie=0;Ie<U.locationSize;Ie++)A(U.location+Ie);r.bindBuffer(r.ARRAY_BUFFER,Le);for(let Ie=0;Ie<U.locationSize;Ie++)I(U.location+Ie,X/U.locationSize,pe,q,X*Ae,X/U.locationSize*Ie*Ae,Re)}}else if(he!==void 0){const q=he[ge];if(q!==void 0)switch(q.length){case 2:r.vertexAttrib2fv(U.location,q);break;case 3:r.vertexAttrib3fv(U.location,q);break;case 4:r.vertexAttrib4fv(U.location,q);break;default:r.vertexAttrib1fv(U.location,q)}}}}T()}function k(){H();for(const L in n){const V=n[L];for(const te in V){const ne=V[te];for(const ce in ne)p(ne[ce].object),delete ne[ce];delete V[te]}delete n[L]}}function O(L){if(n[L.id]===void 0)return;const V=n[L.id];for(const te in V){const ne=V[te];for(const ce in ne)p(ne[ce].object),delete ne[ce];delete V[te]}delete n[L.id]}function N(L){for(const V in n){const te=n[V];if(te[L.id]===void 0)continue;const ne=te[L.id];for(const ce in ne)p(ne[ce].object),delete ne[ce];delete te[L.id]}}function H(){F(),o=!0,s!==i&&(s=i,d(s.object))}function F(){i.geometry=null,i.program=null,i.wireframe=!1}return{setup:l,reset:H,resetDefaultState:F,dispose:k,releaseStatesOfGeometry:O,releaseStatesOfProgram:N,initAttributes:E,enableAttribute:A,disableUnusedAttributes:T}}function WD(r,e,t){let n;function i(d){n=d}function s(d,p){r.drawArrays(n,d,p),t.update(p,n,1)}function o(d,p,m){m!==0&&(r.drawArraysInstanced(n,d,p,m),t.update(p,n,m))}function l(d,p,m){if(m===0)return;e.get("WEBGL_multi_draw").multiDrawArraysWEBGL(n,d,0,p,0,m);let v=0;for(let S=0;S<m;S++)v+=p[S];t.update(v,n,1)}function u(d,p,m,y){if(m===0)return;const v=e.get("WEBGL_multi_draw");if(v===null)for(let S=0;S<d.length;S++)o(d[S],p[S],y[S]);else{v.multiDrawArraysInstancedWEBGL(n,d,0,p,0,y,0,m);let S=0;for(let E=0;E<m;E++)S+=p[E]*y[E];t.update(S,n,1)}}this.setMode=i,this.render=s,this.renderInstances=o,this.renderMultiDraw=l,this.renderMultiDrawInstances=u}function XD(r,e,t,n){let i;function s(){if(i!==void 0)return i;if(e.has("EXT_texture_filter_anisotropic")===!0){const N=e.get("EXT_texture_filter_anisotropic");i=r.getParameter(N.MAX_TEXTURE_MAX_ANISOTROPY_EXT)}else i=0;return i}function o(N){return!(N!==hi&&n.convert(N)!==r.getParameter(r.IMPLEMENTATION_COLOR_READ_FORMAT))}function l(N){const H=N===ju&&(e.has("EXT_color_buffer_half_float")||e.has("EXT_color_buffer_float"));return!(N!==Mo&&n.convert(N)!==r.getParameter(r.IMPLEMENTATION_COLOR_READ_TYPE)&&N!==Di&&!H)}function u(N){if(N==="highp"){if(r.getShaderPrecisionFormat(r.VERTEX_SHADER,r.HIGH_FLOAT).precision>0&&r.getShaderPrecisionFormat(r.FRAGMENT_SHADER,r.HIGH_FLOAT).precision>0)return"highp";N="mediump"}return N==="mediump"&&r.getShaderPrecisionFormat(r.VERTEX_SHADER,r.MEDIUM_FLOAT).precision>0&&r.getShaderPrecisionFormat(r.FRAGMENT_SHADER,r.MEDIUM_FLOAT).precision>0?"mediump":"lowp"}let d=t.precision!==void 0?t.precision:"highp";const p=u(d);p!==d&&(console.warn("THREE.WebGLRenderer:",d,"not supported, using",p,"instead."),d=p);const m=t.logarithmicDepthBuffer===!0,y=t.reverseDepthBuffer===!0&&e.has("EXT_clip_control"),v=r.getParameter(r.MAX_TEXTURE_IMAGE_UNITS),S=r.getParameter(r.MAX_VERTEX_TEXTURE_IMAGE_UNITS),E=r.getParameter(r.MAX_TEXTURE_SIZE),A=r.getParameter(r.MAX_CUBE_MAP_TEXTURE_SIZE),M=r.getParameter(r.MAX_VERTEX_ATTRIBS),T=r.getParameter(r.MAX_VERTEX_UNIFORM_VECTORS),I=r.getParameter(r.MAX_VARYING_VECTORS),P=r.getParameter(r.MAX_FRAGMENT_UNIFORM_VECTORS),k=S>0,O=r.getParameter(r.MAX_SAMPLES);return{isWebGL2:!0,getMaxAnisotropy:s,getMaxPrecision:u,textureFormatReadable:o,textureTypeReadable:l,precision:d,logarithmicDepthBuffer:m,reverseDepthBuffer:y,maxTextures:v,maxVertexTextures:S,maxTextureSize:E,maxCubemapSize:A,maxAttributes:M,maxVertexUniforms:T,maxVaryings:I,maxFragmentUniforms:P,vertexTextures:k,maxSamples:O}}function JD(r){const e=this;let t=null,n=0,i=!1,s=!1;const o=new Yl,l=new Qt,u={value:null,needsUpdate:!1};this.uniform=u,this.numPlanes=0,this.numIntersection=0,this.init=function(m,y){const v=m.length!==0||y||n!==0||i;return i=y,n=m.length,v},this.beginShadows=function(){s=!0,p(null)},this.endShadows=function(){s=!1},this.setGlobalState=function(m,y){t=p(m,y,0)},this.setState=function(m,y,v){const S=m.clippingPlanes,E=m.clipIntersection,A=m.clipShadows,M=r.get(m);if(!i||S===null||S.length===0||s&&!A)s?p(null):d();else{const T=s?0:n,I=T*4;let P=M.clippingState||null;u.value=P,P=p(S,y,I,v);for(let k=0;k!==I;++k)P[k]=t[k];M.clippingState=P,this.numIntersection=E?this.numPlanes:0,this.numPlanes+=T}};function d(){u.value!==t&&(u.value=t,u.needsUpdate=n>0),e.numPlanes=n,e.numIntersection=0}function p(m,y,v,S){const E=m!==null?m.length:0;let A=null;if(E!==0){if(A=u.value,S!==!0||A===null){const M=v+E*4,T=y.matrixWorldInverse;l.getNormalMatrix(T),(A===null||A.length<M)&&(A=new Float32Array(M));for(let I=0,P=v;I!==E;++I,P+=4)o.copy(m[I]).applyMatrix4(T,l),o.normal.toArray(A,P),A[P+3]=o.constant}u.value=A,u.needsUpdate=!0}return e.numPlanes=E,e.numIntersection=0,A}}function $D(r){let e=new WeakMap;function t(o,l){return l===Np?o.mapping=el:l===Fp&&(o.mapping=Zl),o}function n(o){if(o&&o.isTexture){const l=o.mapping;if(l===Np||l===Fp)if(e.has(o)){const u=e.get(o).texture;return t(u,o.mapping)}else{const u=o.image;if(u&&u.height>0){const d=new aC(u.height);return d.fromEquirectangularTexture(r,o),e.set(o,d),o.addEventListener("dispose",i),t(d.texture,o.mapping)}else return null}}return o}function i(o){const l=o.target;l.removeEventListener("dispose",i);const u=e.get(l);u!==void 0&&(e.delete(l),u.dispose())}function s(){e=new WeakMap}return{get:n,dispose:s}}const Ad=4,u2=[.125,.215,.35,.446,.526,.582],du=20,kv=new Kd,h2=new tt;let Uv=null,jv=0,zv=0,Hv=!1;const hu=(1+Math.sqrt(5))/2,fd=1/hu,d2=[new $(-hu,fd,0),new $(hu,fd,0),new $(-fd,0,hu),new $(fd,0,hu),new $(0,hu,-fd),new $(0,hu,fd),new $(-1,1,-1),new $(1,1,-1),new $(-1,1,1),new $(1,1,1)];
vendor: 2,839 bytes, line 3618
3618class nx{constructor(e){this._renderer=e,this._pingPongRenderTarget=null,this._lodMax=0,this._cubeSize=0,this._lodPlanes=[],this._sizeLods=[],this._sigmas=[],this._blurMaterial=null,this._cubemapMaterial=null,this._equirectMaterial=null,this._compileMaterial(this._blurMaterial)}fromScene(e,t=0,n=.1,i=100){Uv=this._renderer.getRenderTarget(),jv=this._renderer.getActiveCubeFace(),zv=this._renderer.getActiveMipmapLevel(),Hv=this._renderer.xr.enabled,this._renderer.xr.enabled=!1,this._setSize(256);const s=this._allocateTargets();return s.depthBuffer=!0,this._sceneToCubeUV(e,n,i,s),t>0&&this._blur(s,0,0,t),this._applyPMREM(s),this._cleanup(s),s}fromEquirectangular(e,t=null){return this._fromTexture(e,t)}fromCubemap(e,t=null){return this._fromTexture(e,t)}compileCubemapShader(){this._cubemapMaterial===null&&(this._cubemapMaterial=m2(),this._compileMaterial(this._cubemapMaterial))}compileEquirectangularShader(){this._equirectMaterial===null&&(this._equirectMaterial=p2(),this._compileMaterial(this._equirectMaterial))}dispose(){this._dispose(),this._cubemapMaterial!==null&&this._cubemapMaterial.dispose(),this._equirectMaterial!==null&&this._equirectMaterial.dispose()}_setSize(e){this._lodMax=Math.floor(Math.log2(e)),this._cubeSize=Math.pow(2,this._lodMax)}_dispose(){this._blurMaterial!==null&&this._blurMaterial.dispose(),this._pingPongRenderTarget!==null&&this._pingPongRenderTarget.dispose();for(let e=0;e<this._lodPlanes.length;e++)this._lodPlanes[e].dispose()}_cleanup(e){this._renderer.setRenderTarget(Uv,jv,zv),this._renderer.xr.enabled=Hv,e.scissorTest=!1,sg(e,0,0,e.width,e.height)}_fromTexture(e,t){e.mapping===el||e.mapping===Zl?this._setSize(e.image.length===0?16:e.image[0].width||e.image[0].image.width):this._setSize(e.image.width/4),Uv=this._renderer.getRenderTarget(),jv=this._renderer.getActiveCubeFace(),zv=this._renderer.getActiveMipmapLevel(),Hv=this._renderer.xr.enabled,this._renderer.xr.enabled=!1;const n=t||this._allocateTargets();return this._textureToCubeUV(e,n),this._applyPMREM(n),this._cleanup(n),n}_allocateTargets(){const e=3*Math.max(this._cubeSize,112),t=4*this._cubeSize,n={magFilter:Zn,minFilter:Zn,generateMipmaps:!1,type:ju,format:hi,colorSpace:Pu,depthBuffer:!1},i=f2(e,t,n);if(this._pingPongRenderTarget===null||this._pingPongRenderTarget.width!==e||this._pingPongRenderTarget.height!==t){this._pingPongRenderTarget!==null&&this._dispose(),this._pingPongRenderTarget=f2(e,t,n);const{_lodMax:s}=this;({sizeLods:this._sizeLods,lodPlanes:this._lodPlanes,sigmas:this._sigmas}=KD(s)),this._blurMaterial=YD(s,e,t)}return i}_compileMaterial(e){const t=new hr(this._lodPlanes[0],e);this._renderer.compile(t,kv)}_sceneToCubeUV(e,t,n,i){const l=new _r(90,1,t,n),u=[1,-1,1,1,1,1],d=[1,1,1,-1,-1,-1],p=this._renderer,m=p.autoClear,y=p.toneMapping;p.getClearColor(h2),p.toneMapping=Jo,p.autoClear=!1;
vendor: 5,418 bytes, lines 3618-3693
3618const v=new vs({name:"PMREM.Background",side:Ni,depthWrite:!1,depthTest:!1}),S=new hr(new zu,v);let E=!1;const A=e.background;A?A.isColor&&(v.color.copy(A),e.background=null,E=!0):(v.color.copy(h2),E=!0);for(let M=0;M<6;M++){const T=M%3;T===0?(l.up.set(0,u[M],0),l.lookAt(d[M],0,0)):T===1?(l.up.set(0,0,u[M]),l.lookAt(0,d[M],0)):(l.up.set(0,u[M],0),l.lookAt(0,0,d[M]));const I=this._cubeSize;sg(i,T*I,M>2?I:0,I,I),p.setRenderTarget(i),E&&p.render(S,l),p.render(e,l)}S.geometry.dispose(),S.material.dispose(),p.toneMapping=y,p.autoClear=m,e.background=A}_textureToCubeUV(e,t){const n=this._renderer,i=e.mapping===el||e.mapping===Zl;i?(this._cubemapMaterial===null&&(this._cubemapMaterial=m2()),this._cubemapMaterial.uniforms.flipEnvMap.value=e.isRenderTargetTexture===!1?-1:1):this._equirectMaterial===null&&(this._equirectMaterial=p2());const s=i?this._cubemapMaterial:this._equirectMaterial,o=new hr(this._lodPlanes[0],s),l=s.uniforms;l.envMap.value=e;const u=this._cubeSize;sg(t,0,0,3*u,2*u),n.setRenderTarget(t),n.render(o,kv)}_applyPMREM(e){const t=this._renderer,n=t.autoClear;t.autoClear=!1;const i=this._lodPlanes.length;for(let s=1;s<i;s++){const o=Math.sqrt(this._sigmas[s]*this._sigmas[s]-this._sigmas[s-1]*this._sigmas[s-1]),l=d2[(i-s-1)%d2.length];this._blur(e,s-1,s,o,l)}t.autoClear=n}_blur(e,t,n,i,s){const o=this._pingPongRenderTarget;this._halfBlur(e,o,t,n,i,"latitudinal",s),this._halfBlur(o,e,n,n,i,"longitudinal",s)}_halfBlur(e,t,n,i,s,o,l){const u=this._renderer,d=this._blurMaterial;o!=="latitudinal"&&o!=="longitudinal"&&console.error("blur direction must be either latitudinal or longitudinal!");const p=3,m=new hr(this._lodPlanes[i],d),y=d.uniforms,v=this._sizeLods[n]-1,S=isFinite(s)?Math.PI/(2*v):2*Math.PI/(2*du-1),E=s/S,A=isFinite(s)?1+Math.floor(p*E):du;A>du&&console.warn(`sigmaRadians, ${s}, is too large and will clip, as it requested ${A} samples when the maximum is set to ${du}`);const M=[];let T=0;for(let N=0;N<du;++N){const H=N/E,F=Math.exp(-H*H/2);M.push(F),N===0?T+=F:N<A&&(T+=2*F)}for(let N=0;N<M.length;N++)M[N]=M[N]/T;y.envMap.value=e.texture,y.samples.value=A,y.weights.value=M,y.latitudinal.value=o==="latitudinal",l&&(y.poleAxis.value=l);const{_lodMax:I}=this;y.dTheta.value=S,y.mipInt.value=I-n;const P=this._sizeLods[i],k=3*P*(i>I-Ad?i-I+Ad:0),O=4*(this._cubeSize-P);sg(t,k,O,3*P,2*P),u.setRenderTarget(t),u.render(m,kv)}}function KD(r){const e=[],t=[],n=[];let i=r;const s=r-Ad+1+u2.length;for(let o=0;o<s;o++){const l=Math.pow(2,i);t.push(l);let u=1/l;o>r-Ad?u=u2[o-r+Ad-1]:o===0&&(u=0),n.push(u);const d=1/(l-2),p=-d,m=1+d,y=[p,p,m,p,m,m,p,p,m,m,p,m],v=6,S=6,E=3,A=2,M=1,T=new Float32Array(E*S*v),I=new Float32Array(A*S*v),P=new Float32Array(M*S*v);for(let O=0;O<v;O++){const N=O%3*2/3-1,H=O>2?0:-1,F=[N,H,0,N+2/3,H,0,N+2/3,H+1,0,N,H,0,N+2/3,H+1,0,N,H+1,0];T.set(F,E*S*O),I.set(y,A*S*O);const L=[O,O,O,O,O,O];P.set(L,M*S*O)}const k=new Jt;k.setAttribute("position",new vn(T,E)),k.setAttribute("uv",new vn(I,A)),k.setAttribute("faceIndex",new vn(P,M)),e.push(k),i>Ad&&i--}return{lodPlanes:e,sizeLods:t,sigmas:n}}function f2(r,e,t){const n=new Hs(r,e,t);return n.texture.mapping=Vd,n.texture.name="PMREM.cubeUv",n.scissorTest=!0,n}function sg(r,e,t,n,i){r.viewport.set(e,t,n,i),r.scissor.set(e,t,n,i)}function YD(r,e,t){const n=new Float32Array(du),i=new $(0,1,0);return new So({name:"SphericalGaussianBlur",defines:{n:du,CUBEUV_TEXEL_WIDTH:1/e,CUBEUV_TEXEL_HEIGHT:1/t,CUBEUV_MAX_MIP:`${r}.0`},uniforms:{envMap:{value:null},samples:{value:1},weights:{value:n},latitudinal:{value:!1},dTheta:{value:0},mipInt:{value:0},poleAxis:{value:i}},vertexShader:PM(),fragmentShader:`
3619
3620			precision mediump float;
3621			precision mediump int;
3622
3623			varying vec3 vOutputDirection;
3624
3625			uniform sampler2D envMap;
3626			uniform int samples;
3627			uniform float weights[ n ];
3628			uniform bool latitudinal;
3629			uniform float dTheta;
3630			uniform float mipInt;
3631			uniform vec3 poleAxis;
3632
3633			#define ENVMAP_TYPE_CUBE_UV
3634			#include <cube_uv_reflection_fragment>
3635
3636			vec3 getSample( float theta, vec3 axis ) {
3637
3638				float cosTheta = cos( theta );
3639				// Rodrigues' axis-angle rotation
3640				vec3 sampleDirection = vOutputDirection * cosTheta
3641					+ cross( axis, vOutputDirection ) * sin( theta )
3642					+ axis * dot( axis, vOutputDirection ) * ( 1.0 - cosTheta );
3643
3644				return bilinearCubeUV( envMap, sampleDirection, mipInt );
3645
3646			}
3647
3648			void main() {
3649
3650				vec3 axis = latitudinal ? poleAxis : cross( poleAxis, vOutputDirection );
3651
3652				if ( all( equal( axis, vec3( 0.0 ) ) ) ) {
3653
3654					axis = vec3( vOutputDirection.z, 0.0, - vOutputDirection.x );
3655
3656				}
3657
3658				axis = normalize( axis );
3659
3660				gl_FragColor = vec4( 0.0, 0.0, 0.0, 1.0 );
3661				gl_FragColor.rgb += weights[ 0 ] * getSample( 0.0, axis );
3662
3663				for ( int i = 1; i < n; i++ ) {
3664
3665					if ( i >= samples ) {
3666
3667						break;
3668
3669					}
3670
3671					float theta = dTheta * float( i );
3672					gl_FragColor.rgb += weights[ i ] * getSample( -1.0 * theta, axis );
3673					gl_FragColor.rgb += weights[ i ] * getSample( theta, axis );
3674
3675				}
3676
3677			}
3678		`,blending:Ya,depthTest:!1,depthWrite:!1})}function p2(){return new So({name:"EquirectangularToCubeUV",uniforms:{envMap:{value:null}},vertexShader:PM(),fragmentShader:`
3679
3680			precision mediump float;
3681			precision mediump int;
3682
3683			varying vec3 vOutputDirection;
3684
3685			uniform sampler2D envMap;
3686
3687			#include <common>
3688
3689			void main() {
3690
3691				vec3 outputDirection = normalize( vOutputDirection );
3692				vec2 uv = equirectUv( outputDirection );
3693
3694				gl_FragColor = vec4( texture2D ( envMap, uv ).rgb, 1.0 );
3695
3696			}
3697		`,blending:Ya,depthTest:!1,depthWrite:!1})}function m2(){return new So({name:"CubemapToCubeUV",uniforms:{envMap:{value:null},flipEnvMap:{value:-1}},vertexShader:PM(),fragmentShader:`
3698
3699			precision mediump float;
3700			precision mediump int;
3701
3702			uniform float flipEnvMap;
3703
3704			varying vec3 vOutputDirection;
3705
3706			uniform samplerCube envMap;
3707
3708			void main() {
3709
3710				gl_FragColor = textureCube( envMap, vec3( flipEnvMap * vOutputDirection.x, vOutputDirection.yz ) );
3711
3712			}
3713		`,blending:Ya,depthTest:!1,depthWrite:!1})}function PM(){return`
3714
3715		precision mediump float;
3716		precision mediump int;
3717
3718		attribute float faceIndex;
3719
3720		varying vec3 vOutputDirection;
3721
3722		// RH coordinate system; PMREM face-indexing convention
3723		vec3 getDirection( vec2 uv, float face ) {
3724
3725			uv = 2.0 * uv - 1.0;
3726
3727			vec3 direction = vec3( uv, 1.0 );
3728
3729			if ( face == 0.0 ) {
3730
3731				direction = direction.zyx; // ( 1, v, u ) pos x
3732
3733			} else if ( face == 1.0 ) {
3734
3735				direction = direction.xzy;
3736				direction.xz *= -1.0; // ( -u, 1, -v ) pos y
3737
3738			} else if ( face == 2.0 ) {
3739
3740				direction.x *= -1.0; // ( -u, v, 1 ) pos z
3741
3742			} else if ( face == 3.0 ) {
3743
3744				direction = direction.zyx;
3745				direction.xz *= -1.0; // ( -1, v, -u ) neg x
3746
3747			} else if ( face == 4.0 ) {
3748
3749				direction = direction.xzy;
3750				direction.xy *= -1.0; // ( -u, -1, v ) neg y
3751
3752			} else if ( face == 5.0 ) {
3753
3754				direction.z *= -1.0; // ( u, v, -1 ) neg z
3755
3756			}
3757
3758			return direction;
3759
3760		}
3761
3762		void main() {
3763
3764			vOutputDirection = getDirection( uv, faceIndex );
3765			gl_Position = vec4( position, 1.0 );
3766
3767		}
3768	`}function qD(r){let e=new WeakMap,t=null;function n(l){if(l&&l.isTexture){const u=l.mapping,d=u===Np||u===Fp,p=u===el||u===Zl;if(d||p){let m=e.get(l);const y=m!==void 0?m.texture.pmremVersion:0;if(l.isRenderTargetTexture&&l.pmremVersion!==y)return t===null&&(t=new nx(r)),m=d?t.fromEquirectangular(l,m):t.fromCubemap(l,m),m.texture.pmremVersion=l.pmremVersion,e.set(l,m),m.texture;if(m!==void 0)return m.texture;{const v=l.image;return d&&v&&v.height>0||p&&v&&i(v)?(t===null&&(t=new nx(r)),m=d?t.fromEquirectangular(l):t.fromCubemap(l),m.texture.pmremVersion=l.pmremVersion,e.set(l,m),l.addEventListener("dispose",s),m.texture):null}}}return l}function i(l){let u=0;const d=6;for(let p=0;p<d;p++)l[p]!==void 0&&u++;return u===d}function s(l){const u=l.target;u.removeEventListener("dispose",s);const d=e.get(u);d!==void 0&&(e.delete(u),d.dispose())}function o(){e=new WeakMap,t!==null&&(t.dispose(),t=null)}return{get:n,dispose:o}}function QD(r){const e={};function t(n){if(e[n]!==void 0)return e[n];let i;switch(n){case"WEBGL_depth_texture":i=r.getExtension("WEBGL_depth_texture")||r.getExtension("MOZ_WEBGL_depth_texture")||r.getExtension("WEBKIT_WEBGL_depth_texture");break;case"EXT_texture_filter_anisotropic":i=r.getExtension("EXT_texture_filter_anisotropic")||r.getExtension("MOZ_EXT_texture_filter_anisotropic")||r.getExtension("WEBKIT_EXT_texture_filter_anisotropic");break;case"WEBGL_compressed_texture_s3tc":i=r.getExtension("WEBGL_compressed_texture_s3tc")||r.getExtension("MOZ_WEBGL_compressed_texture_s3tc")||r.getExtension("WEBKIT_WEBGL_compressed_texture_s3tc");break;case"WEBGL_compressed_texture_pvrtc":i=r.getExtension("WEBGL_compressed_texture_pvrtc")||r.getExtension("WEBKIT_WEBGL_compressed_texture_pvrtc");break;default:i=r.getExtension(n)}return e[n]=i,i}return{has:function(n){return t(n)!==null},init:function(){t("EXT_color_buffer_float"),t("WEBGL_clip_cull_distance"),t("OES_texture_float_linear"),t("EXT_color_buffer_half_float"),t("WEBGL_multisampled_render_to_texture"),t("WEBGL_render_shared_exponent")},get:function(n){const i=t(n);return i===null&&_d("THREE.WebGLRenderer: "+n+" extension not supported."),i}}}function ZD(r,e,t,n){const i={},s=new WeakMap;function o(m){const y=m.target;y.index!==null&&e.remove(y.index);for(const S in y.attributes)e.remove(y.attributes[S]);y.removeEventListener("dispose",o),delete i[y.id];const v=s.get(y);v&&(e.remove(v),s.delete(y)),n.releaseStatesOfGeometry(y),y.isInstancedBufferGeometry===!0&&delete y._maxInstanceCount,t.memory.geometries--}function l(m,y){return i[y.id]===!0||(y.addEventListener("dispose",o),i[y.id]=!0,t.memory.geometries++),y}function u(m){const y=m.attributes;for(const v in y)e.update(y[v],r.ARRAY_BUFFER)}function d(m){const y=[],v=m.index,S=m.attributes.position;let E=0;if(v!==null){const T=v.array;E=v.version;for(let I=0,P=T.length;I<P;I+=3){const k=T[I+0],O=T[I+1],N=T[I+2];y.push(k,O,O,N,N,k)}}else if(S!==void 0){const T=S.array;E=S.version;for(let I=0,P=T.length/3-1;I<P;I+=3){const k=I+0,O=I+1,N=I+2;y.push(k,O,O,N,N,k)}}else return;const A=new(Zb(y)?nM:tM)(y,1);A.version=E;const M=s.get(m);M&&e.remove(M),s.set(m,A)}function p(m){const y=s.get(m);
vendor: 18,106 bytes, lines 3768-3803
3768if(y){const v=m.index;v!==null&&y.version<v.version&&d(m)}else d(m);return s.get(m)}return{get:l,update:u,getWireframeAttribute:p}}function eL(r,e,t){let n;function i(y){n=y}let s,o;function l(y){s=y.type,o=y.bytesPerElement}function u(y,v){r.drawElements(n,v,s,y*o),t.update(v,n,1)}function d(y,v,S){S!==0&&(r.drawElementsInstanced(n,v,s,y*o,S),t.update(v,n,S))}function p(y,v,S){if(S===0)return;e.get("WEBGL_multi_draw").multiDrawElementsWEBGL(n,v,0,s,y,0,S);let A=0;for(let M=0;M<S;M++)A+=v[M];t.update(A,n,1)}function m(y,v,S,E){if(S===0)return;const A=e.get("WEBGL_multi_draw");if(A===null)for(let M=0;M<y.length;M++)d(y[M]/o,v[M],E[M]);else{A.multiDrawElementsInstancedWEBGL(n,v,0,s,y,0,E,0,S);let M=0;for(let T=0;T<S;T++)M+=v[T]*E[T];t.update(M,n,1)}}this.setMode=i,this.setIndex=l,this.render=u,this.renderInstances=d,this.renderMultiDraw=p,this.renderMultiDrawInstances=m}function tL(r){const e={geometries:0,textures:0},t={frame:0,calls:0,triangles:0,points:0,lines:0};function n(s,o,l){switch(t.calls++,o){case r.TRIANGLES:t.triangles+=l*(s/3);break;case r.LINES:t.lines+=l*(s/2);break;case r.LINE_STRIP:t.lines+=l*(s-1);break;case r.LINE_LOOP:t.lines+=l*s;break;case r.POINTS:t.points+=l*s;break;default:console.error("THREE.WebGLInfo: Unknown draw mode:",o);break}}function i(){t.calls=0,t.triangles=0,t.points=0,t.lines=0}return{memory:e,render:t,programs:null,autoReset:!0,reset:i,update:n}}function nL(r,e,t){const n=new WeakMap,i=new xn;function s(o,l,u){const d=o.morphTargetInfluences,p=l.morphAttributes.position||l.morphAttributes.normal||l.morphAttributes.color,m=p!==void 0?p.length:0;let y=n.get(l);if(y===void 0||y.count!==m){let L=function(){H.dispose(),n.delete(l),l.removeEventListener("dispose",L)};var v=L;y!==void 0&&y.texture.dispose();const S=l.morphAttributes.position!==void 0,E=l.morphAttributes.normal!==void 0,A=l.morphAttributes.color!==void 0,M=l.morphAttributes.position||[],T=l.morphAttributes.normal||[],I=l.morphAttributes.color||[];let P=0;S===!0&&(P=1),E===!0&&(P=2),A===!0&&(P=3);let k=l.attributes.position.count*P,O=1;k>e.maxTextureSize&&(O=Math.ceil(k/e.maxTextureSize),k=e.maxTextureSize);const N=new Float32Array(k*O*4*m),H=new Gy(N,k,O,m);H.type=Di,H.needsUpdate=!0;const F=P*4;for(let V=0;V<m;V++){const te=M[V],ne=T[V],ce=I[V],me=k*O*4*V;for(let he=0;he<te.count;he++){const ge=he*F;S===!0&&(i.fromBufferAttribute(te,he),N[me+ge+0]=i.x,N[me+ge+1]=i.y,N[me+ge+2]=i.z,N[me+ge+3]=0),E===!0&&(i.fromBufferAttribute(ne,he),N[me+ge+4]=i.x,N[me+ge+5]=i.y,N[me+ge+6]=i.z,N[me+ge+7]=0),A===!0&&(i.fromBufferAttribute(ce,he),N[me+ge+8]=i.x,N[me+ge+9]=i.y,N[me+ge+10]=i.z,N[me+ge+11]=ce.itemSize===4?i.w:1)}}y={count:m,texture:H,size:new Ne(k,O)},n.set(l,y),l.addEventListener("dispose",L)}if(o.isInstancedMesh===!0&&o.morphTexture!==null)u.getUniforms().setValue(r,"morphTexture",o.morphTexture,t);else{let S=0;for(let A=0;A<d.length;A++)S+=d[A];const E=l.morphTargetsRelative?1:1-S;u.getUniforms().setValue(r,"morphTargetBaseInfluence",E),u.getUniforms().setValue(r,"morphTargetInfluences",d)}u.getUniforms().setValue(r,"morphTargetsTexture",y.texture,t),u.getUniforms().setValue(r,"morphTargetsTextureSize",y.size)}return{update:s}}function rL(r,e,t,n){let i=new WeakMap;function s(u){const d=n.render.frame,p=u.geometry,m=e.get(u,p);if(i.get(m)!==d&&(e.update(m),i.set(m,d)),u.isInstancedMesh&&(u.hasEventListener("dispose",l)===!1&&u.addEventListener("dispose",l),i.get(u)!==d&&(t.update(u.instanceMatrix,r.ARRAY_BUFFER),u.instanceColor!==null&&t.update(u.instanceColor,r.ARRAY_BUFFER),i.set(u,d))),u.isSkinnedMesh){const y=u.skeleton;i.get(y)!==d&&(y.update(),i.set(y,d))}return m}function o(){i=new WeakMap}function l(u){const d=u.target;d.removeEventListener("dispose",l),t.remove(d.instanceMatrix),d.instanceColor!==null&&t.remove(d.instanceColor)}return{update:s,dispose:o}}const qC=new Gn,g2=new Ky(1,1),QC=new Gy,ZC=new eM,eT=new im,y2=[],v2=[],_2=new Float32Array(16),x2=new Float32Array(9),M2=new Float32Array(4);function Yd(r,e,t){const n=r[0];if(n<=0||n>0)return r;const i=e*t;let s=y2[i];if(s===void 0&&(s=new Float32Array(i),y2[i]=s),e!==0){n.toArray(s,0);for(let o=1,l=0;o!==e;++o)l+=t,r[o].toArray(s,l)}return s}function Ir(r,e){if(r.length!==e.length)return!1;for(let t=0,n=r.length;t<n;t++)if(r[t]!==e[t])return!1;return!0}function Pr(r,e){for(let t=0,n=e.length;t<n;t++)r[t]=e[t]}function h1(r,e){let t=v2[e];t===void 0&&(t=new Int32Array(e),v2[e]=t);for(let n=0;n!==e;++n)t[n]=r.allocateTextureUnit();return t}function iL(r,e){const t=this.cache;t[0]!==e&&(r.uniform1f(this.addr,e),t[0]=e)}function sL(r,e){const t=this.cache;if(e.x!==void 0)(t[0]!==e.x||t[1]!==e.y)&&(r.uniform2f(this.addr,e.x,e.y),t[0]=e.x,t[1]=e.y);else{if(Ir(t,e))return;r.uniform2fv(this.addr,e),Pr(t,e)}}function oL(r,e){const t=this.cache;if(e.x!==void 0)(t[0]!==e.x||t[1]!==e.y||t[2]!==e.z)&&(r.uniform3f(this.addr,e.x,e.y,e.z),t[0]=e.x,t[1]=e.y,t[2]=e.z);else if(e.r!==void 0)(t[0]!==e.r||t[1]!==e.g||t[2]!==e.b)&&(r.uniform3f(this.addr,e.r,e.g,e.b),t[0]=e.r,t[1]=e.g,t[2]=e.b);else{if(Ir(t,e))return;r.uniform3fv(this.addr,e),Pr(t,e)}}function aL(r,e){const t=this.cache;if(e.x!==void 0)(t[0]!==e.x||t[1]!==e.y||t[2]!==e.z||t[3]!==e.w)&&(r.uniform4f(this.addr,e.x,e.y,e.z,e.w),t[0]=e.x,t[1]=e.y,t[2]=e.z,t[3]=e.w);else{if(Ir(t,e))return;r.uniform4fv(this.addr,e),Pr(t,e)}}function lL(r,e){const t=this.cache,n=e.elements;if(n===void 0){if(Ir(t,e))return;r.uniformMatrix2fv(this.addr,!1,e),Pr(t,e)}else{if(Ir(t,n))return;M2.set(n),r.uniformMatrix2fv(this.addr,!1,M2),Pr(t,n)}}function cL(r,e){const t=this.cache,n=e.elements;if(n===void 0){if(Ir(t,e))return;r.uniformMatrix3fv(this.addr,!1,e),Pr(t,e)}else{if(Ir(t,n))return;x2.set(n),r.uniformMatrix3fv(this.addr,!1,x2),Pr(t,n)}}function uL(r,e){const t=this.cache,n=e.elements;if(n===void 0){if(Ir(t,e))return;r.uniformMatrix4fv(this.addr,!1,e),Pr(t,e)}else{if(Ir(t,n))return;_2.set(n),r.uniformMatrix4fv(this.addr,!1,_2),Pr(t,n)}}function hL(r,e){const t=this.cache;t[0]!==e&&(r.uniform1i(this.addr,e),t[0]=e)}function dL(r,e){const t=this.cache;if(e.x!==void 0)(t[0]!==e.x||t[1]!==e.y)&&(r.uniform2i(this.addr,e.x,e.y),t[0]=e.x,t[1]=e.y);else{if(Ir(t,e))return;r.uniform2iv(this.addr,e),Pr(t,e)}}function fL(r,e){const t=this.cache;if(e.x!==void 0)(t[0]!==e.x||t[1]!==e.y||t[2]!==e.z)&&(r.uniform3i(this.addr,e.x,e.y,e.z),t[0]=e.x,t[1]=e.y,t[2]=e.z);else{if(Ir(t,e))return;r.uniform3iv(this.addr,e),Pr(t,e)}}function pL(r,e){const t=this.cache;if(e.x!==void 0)(t[0]!==e.x||t[1]!==e.y||t[2]!==e.z||t[3]!==e.w)&&(r.uniform4i(this.addr,e.x,e.y,e.z,e.w),t[0]=e.x,t[1]=e.y,t[2]=e.z,t[3]=e.w);else{if(Ir(t,e))return;r.uniform4iv(this.addr,e),Pr(t,e)}}function mL(r,e){const t=this.cache;t[0]!==e&&(r.uniform1ui(this.addr,e),t[0]=e)}function gL(r,e){const t=this.cache;if(e.x!==void 0)(t[0]!==e.x||t[1]!==e.y)&&(r.uniform2ui(this.addr,e.x,e.y),t[0]=e.x,t[1]=e.y);else{if(Ir(t,e))return;r.uniform2uiv(this.addr,e),Pr(t,e)}}function yL(r,e){const t=this.cache;if(e.x!==void 0)(t[0]!==e.x||t[1]!==e.y||t[2]!==e.z)&&(r.uniform3ui(this.addr,e.x,e.y,e.z),t[0]=e.x,t[1]=e.y,t[2]=e.z);else{if(Ir(t,e))return;r.uniform3uiv(this.addr,e),Pr(t,e)}}function vL(r,e){const t=this.cache;if(e.x!==void 0)(t[0]!==e.x||t[1]!==e.y||t[2]!==e.z||t[3]!==e.w)&&(r.uniform4ui(this.addr,e.x,e.y,e.z,e.w),t[0]=e.x,t[1]=e.y,t[2]=e.z,t[3]=e.w);else{if(Ir(t,e))return;r.uniform4uiv(this.addr,e),Pr(t,e)}}function _L(r,e,t){const n=this.cache,i=t.allocateTextureUnit();n[0]!==i&&(r.uniform1i(this.addr,i),n[0]=i);let s;this.type===r.SAMPLER_2D_SHADOW?(g2.compareFunction=Qx,s=g2):s=qC,t.setTexture2D(e||s,i)}function xL(r,e,t){const n=this.cache,i=t.allocateTextureUnit();n[0]!==i&&(r.uniform1i(this.addr,i),n[0]=i),t.setTexture3D(e||ZC,i)}function ML(r,e,t){const n=this.cache,i=t.allocateTextureUnit();n[0]!==i&&(r.uniform1i(this.addr,i),n[0]=i),t.setTextureCube(e||eT,i)}function SL(r,e,t){const n=this.cache,i=t.allocateTextureUnit();n[0]!==i&&(r.uniform1i(this.addr,i),n[0]=i),t.setTexture2DArray(e||QC,i)}function wL(r){switch(r){case 5126:return iL;case 35664:return sL;case 35665:return oL;case 35666:return aL;case 35674:return lL;case 35675:return cL;case 35676:return uL;case 5124:case 35670:return hL;case 35667:case 35671:return dL;case 35668:case 35672:return fL;case 35669:case 35673:return pL;case 5125:return mL;case 36294:return gL;case 36295:return yL;case 36296:return vL;case 35678:case 36198:case 36298:case 36306:case 35682:return _L;case 35679:case 36299:case 36307:return xL;case 35680:case 36300:case 36308:case 36293:return ML;case 36289:case 36303:case 36311:case 36292:return SL}}function AL(r,e){r.uniform1fv(this.addr,e)}function EL(r,e){const t=Yd(e,this.size,2);r.uniform2fv(this.addr,t)}function bL(r,e){const t=Yd(e,this.size,3);r.uniform3fv(this.addr,t)}function CL(r,e){const t=Yd(e,this.size,4);r.uniform4fv(this.addr,t)}function TL(r,e){const t=Yd(e,this.size,4);r.uniformMatrix2fv(this.addr,!1,t)}function IL(r,e){const t=Yd(e,this.size,9);r.uniformMatrix3fv(this.addr,!1,t)}function PL(r,e){const t=Yd(e,this.size,16);r.uniformMatrix4fv(this.addr,!1,t)}function RL(r,e){r.uniform1iv(this.addr,e)}function BL(r,e){r.uniform2iv(this.addr,e)}function OL(r,e){r.uniform3iv(this.addr,e)}function DL(r,e){r.uniform4iv(this.addr,e)}function LL(r,e){r.uniform1uiv(this.addr,e)}function NL(r,e){r.uniform2uiv(this.addr,e)}function FL(r,e){r.uniform3uiv(this.addr,e)}function kL(r,e){r.uniform4uiv(this.addr,e)}function UL(r,e,t){const n=this.cache,i=e.length,s=h1(t,i);Ir(n,s)||(r.uniform1iv(this.addr,s),Pr(n,s));for(let o=0;o!==i;++o)t.setTexture2D(e[o]||qC,s[o])}function jL(r,e,t){const n=this.cache,i=e.length,s=h1(t,i);Ir(n,s)||(r.uniform1iv(this.addr,s),Pr(n,s));for(let o=0;o!==i;++o)t.setTexture3D(e[o]||ZC,s[o])}function zL(r,e,t){const n=this.cache,i=e.length,s=h1(t,i);Ir(n,s)||(r.uniform1iv(this.addr,s),Pr(n,s));for(let o=0;o!==i;++o)t.setTextureCube(e[o]||eT,s[o])}function HL(r,e,t){const n=this.cache,i=e.length,s=h1(t,i);Ir(n,s)||(r.uniform1iv(this.addr,s),Pr(n,s));for(let o=0;o!==i;++o)t.setTexture2DArray(e[o]||QC,s[o])}function GL(r){switch(r){case 5126:return AL;case 35664:return EL;case 35665:return bL;case 35666:return CL;case 35674:return TL;case 35675:return IL;case 35676:return PL;case 5124:case 35670:return RL;case 35667:case 35671:return BL;case 35668:case 35672:return OL;case 35669:case 35673:return DL;case 5125:return LL;case 36294:return NL;case 36295:return FL;case 36296:return kL;case 35678:case 36198:case 36298:case 36306:case 35682:return UL;case 35679:case 36299:case 36307:return jL;case 35680:case 36300:case 36308:case 36293:return zL;case 36289:case 36303:case 36311:case 36292:return HL}}class VL{constructor(e,t,n){this.id=e,this.addr=n,this.cache=[],this.type=t.type,this.setValue=wL(t.type)}}class WL{constructor(e,t,n){this.id=e,this.addr=n,this.cache=[],this.type=t.type,this.size=t.size,this.setValue=GL(t.type)}}class XL{constructor(e){this.id=e,this.seq=[],this.map={}}setValue(e,t,n){const i=this.seq;for(let s=0,o=i.length;s!==o;++s){const l=i[s];l.setValue(e,t[l.id],n)}}}const Gv=/(\w+)(\])?(\[|\.)?/g;function S2(r,e){r.seq.push(e),r.map[e.id]=e}function JL(r,e,t){const n=r.name,i=n.length;for(Gv.lastIndex=0;;){const s=Gv.exec(n),o=Gv.lastIndex;let l=s[1];const u=s[2]==="]",d=s[3];if(u&&(l=l|0),d===void 0||d==="["&&o+2===i){S2(t,d===void 0?new VL(l,r,e):new WL(l,r,e));break}else{let m=t.map[l];m===void 0&&(m=new XL(l),S2(t,m)),t=m}}}class Mg{constructor(e,t){this.seq=[],this.map={};const n=e.getProgramParameter(t,e.ACTIVE_UNIFORMS);for(let i=0;i<n;++i){const s=e.getActiveUniform(t,i),o=e.getUniformLocation(t,s.name);JL(s,o,this)}}setValue(e,t,n,i){const s=this.map[t];s!==void 0&&s.setValue(e,n,i)}setOptional(e,t,n){const i=t[n];i!==void 0&&this.setValue(e,n,i)}static upload(e,t,n,i){for(let s=0,o=t.length;s!==o;++s){const l=t[s],u=n[l.id];u.needsUpdate!==!1&&l.setValue(e,u.value,i)}}static seqWithValue(e,t){const n=[];for(let i=0,s=e.length;i!==s;++i){const o=e[i];o.id in t&&n.push(o)}return n}}function w2(r,e,t){const n=r.createShader(e);return r.shaderSource(n,t),r.compileShader(n),n}const $L=37297;let KL=0;function YL(r,e){const t=r.split(`
3769`),n=[],i=Math.max(e-6,0),s=Math.min(e+6,t.length);for(let o=i;o<s;o++){const l=o+1;n.push(`${l===e?">":" "} ${l}: ${t[o]}`)}return n.join(`
3770`)}const A2=new Qt;function qL(r){yn._getMatrix(A2,yn.workingColorSpace,r);const e=`mat3( ${A2.elements.map(t=>t.toFixed(4))} )`;switch(yn.getTransfer(r)){case Up:return[e,"LinearTransferOETF"];case Cn:return[e,"sRGBTransferOETF"];default:return console.warn("THREE.WebGLProgram: Unsupported color space: ",r),[e,"LinearTransferOETF"]}}function E2(r,e,t){const n=r.getShaderParameter(e,r.COMPILE_STATUS),i=r.getShaderInfoLog(e).trim();if(n&&i==="")return"";const s=/ERROR: 0:(\d+)/.exec(i);if(s){const o=parseInt(s[1]);return t.toUpperCase()+`
3771
3772`+i+`
3773
3774`+YL(r.getShaderSource(e),o)}else return i}function QL(r,e){const t=qL(e);return[`vec4 ${r}( vec4 value ) {`,`	return ${t[1]}( vec4( value.rgb * ${t[0]}, value.a ) );`,"}"].join(`
3775`)}function ZL(r,e){let t;switch(e){case Rb:t="Linear";break;case Bb:t="Reinhard";break;case Ob:t="Cineon";break;case jx:t="ACESFilmic";break;case Lb:t="AgX";break;case Nb:t="Neutral";break;case Db:t="Custom";break;default:console.warn("THREE.WebGLProgram: Unsupported toneMapping:",e),t="Linear"}return"vec3 "+r+"( vec3 color ) { return "+t+"ToneMapping( color ); }"}const og=new $;function e6(){yn.getLuminanceCoefficients(og);const r=og.x.toFixed(4),e=og.y.toFixed(4),t=og.z.toFixed(4);return["float luminance( const in vec3 rgb ) {",`	const vec3 weights = vec3( ${r}, ${e}, ${t} );`,"	return dot( weights, rgb );","}"].join(`
3776`)}function t6(r){return[r.extensionClipCullDistance?"#extension GL_ANGLE_clip_cull_distance : require":"",r.extensionMultiDraw?"#extension GL_ANGLE_multi_draw : require":""].filter(Mp).join(`
3777`)}function n6(r){const e=[];for(const t in r){const n=r[t];n!==!1&&e.push("#define "+t+" "+n)}return e.join(`
3778`)}function r6(r,e){const t={},n=r.getProgramParameter(e,r.ACTIVE_ATTRIBUTES);for(let i=0;i<n;i++){const s=r.getActiveAttrib(e,i),o=s.name;let l=1;s.type===r.FLOAT_MAT2&&(l=2),s.type===r.FLOAT_MAT3&&(l=3),s.type===r.FLOAT_MAT4&&(l=4),t[o]={type:s.type,location:r.getAttribLocation(e,o),locationSize:l}}return t}function Mp(r){return r!==""}function b2(r,e){const t=e.numSpotLightShadows+e.numSpotLightMaps-e.numSpotLightShadowsWithMaps;return r.replace(/NUM_DIR_LIGHTS/g,e.numDirLights).replace(/NUM_SPOT_LIGHTS/g,e.numSpotLights).replace(/NUM_SPOT_LIGHT_MAPS/g,e.numSpotLightMaps).replace(/NUM_SPOT_LIGHT_COORDS/g,t).replace(/NUM_RECT_AREA_LIGHTS/g,e.numRectAreaLights).replace(/NUM_POINT_LIGHTS/g,e.numPointLights).replace(/NUM_HEMI_LIGHTS/g,e.numHemiLights).replace(/NUM_DIR_LIGHT_SHADOWS/g,e.numDirLightShadows).replace(/NUM_SPOT_LIGHT_SHADOWS_WITH_MAPS/g,e.numSpotLightShadowsWithMaps).replace(/NUM_SPOT_LIGHT_SHADOWS/g,e.numSpotLightShadows).replace(/NUM_POINT_LIGHT_SHADOWS/g,e.numPointLightShadows)}function C2(r,e){return r.replace(/NUM_CLIPPING_PLANES/g,e.numClippingPlanes).replace(/UNION_CLIPPING_PLANES/g,e.numClippingPlanes-e.numClipIntersection)}const i6=/^[ \t]*#include +<([\w\d./]+)>/gm;function rx(r){return r.replace(i6,o6)}const s6=new Map;function o6(r,e){let t=an[e];if(t===void 0){const n=s6.get(e);if(n!==void 0)t=an[n],console.warn('THREE.WebGLRenderer: Shader chunk "%s" has been deprecated. Use "%s" instead.',e,n);else throw new Error("Can not resolve #include <"+e+">")}return rx(t)}const a6=/#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 T2(r){return r.replace(a6,l6)}function l6(r,e,t,n){let i="";for(let s=parseInt(e);s<parseInt(t);s++)i+=n.replace(/\[\s*i\s*\]/g,"[ "+s+" ]").replace(/UNROLLED_LOOP_INDEX/g,s);return i}function I2(r){let e=`precision ${r.precision} float;
3779	precision ${r.precision} int;
3780	precision ${r.precision} sampler2D;
3781	precision ${r.precision} samplerCube;
3782	precision ${r.precision} sampler3D;
3783	precision ${r.precision} sampler2DArray;
3784	precision ${r.precision} sampler2DShadow;
3785	precision ${r.precision} samplerCubeShadow;
3786	precision ${r.precision} sampler2DArrayShadow;
3787	precision ${r.precision} isampler2D;
3788	precision ${r.precision} isampler3D;
3789	precision ${r.precision} isamplerCube;
3790	precision ${r.precision} isampler2DArray;
3791	precision ${r.precision} usampler2D;
3792	precision ${r.precision} usampler3D;
3793	precision ${r.precision} usamplerCube;
3794	precision ${r.precision} usampler2DArray;
3795	`;return r.precision==="highp"?e+=`
3796#define HIGH_PRECISION`:r.precision==="mediump"?e+=`
3797#define MEDIUM_PRECISION`:r.precision==="lowp"&&(e+=`
3798#define LOW_PRECISION`),e}function c6(r){let e="SHADOWMAP_TYPE_BASIC";return r.shadowMapType===Oy?e="SHADOWMAP_TYPE_PCF":r.shadowMapType===wp?e="SHADOWMAP_TYPE_PCF_SOFT":r.shadowMapType===vo&&(e="SHADOWMAP_TYPE_VSM"),e}function u6(r){let e="ENVMAP_TYPE_CUBE";if(r.envMap)switch(r.envMapMode){case el:case Zl:e="ENVMAP_TYPE_CUBE";break;case Vd:e="ENVMAP_TYPE_CUBE_UV";break}return e}function h6(r){let e="ENVMAP_MODE_REFLECTION";if(r.envMap)switch(r.envMapMode){case Zl:e="ENVMAP_MODE_REFRACTION";break}return e}function d6(r){let e="ENVMAP_BLENDING_NONE";if(r.envMap)switch(r.combine){case tm:e="ENVMAP_BLENDING_MULTIPLY";break;case Ib:e="ENVMAP_BLENDING_MIX";break;case Pb:e="ENVMAP_BLENDING_ADD";break}return e}function f6(r){const e=r.envMapCubeUVHeight;if(e===null)return null;const t=Math.log2(e)-2,n=1/e;return{texelWidth:1/(3*Math.max(Math.pow(2,t),7*16)),texelHeight:n,maxMip:t}}function p6(r,e,t,n){const i=r.getContext(),s=t.defines;let o=t.vertexShader,l=t.fragmentShader;const u=c6(t),d=u6(t),p=h6(t),m=d6(t),y=f6(t),v=t6(t),S=n6(s),E=i.createProgram();let A,M,T=t.glslVersion?"#version "+t.glslVersion+`
3799`:"";t.isRawShaderMaterial?(A=["#define SHADER_TYPE "+t.shaderType,"#define SHADER_NAME "+t.shaderName,S].filter(Mp).join(`
3800`),A.length>0&&(A+=`
3801`),M=["#define SHADER_TYPE "+t.shaderType,"#define SHADER_NAME "+t.shaderName,S].filter(Mp).join(`
3802`),M.length>0&&(M+=`
3803`)):(A=[I2(t),"#define SHADER_TYPE "+t.shaderType,"#define SHADER_NAME "+t.shaderName,S,t.extensionCl
vendor: 6,454 bytes, lines 3803-3805
3803ipCullDistance?"#define USE_CLIP_DISTANCE":"",t.batching?"#define USE_BATCHING":"",t.batchingColor?"#define USE_BATCHING_COLOR":"",t.instancing?"#define USE_INSTANCING":"",t.instancingColor?"#define USE_INSTANCING_COLOR":"",t.instancingMorph?"#define USE_INSTANCING_MORPH":"",t.useFog&&t.fog?"#define USE_FOG":"",t.useFog&&t.fogExp2?"#define FOG_EXP2":"",t.map?"#define USE_MAP":"",t.envMap?"#define USE_ENVMAP":"",t.envMap?"#define "+p:"",t.lightMap?"#define USE_LIGHTMAP":"",t.aoMap?"#define USE_AOMAP":"",t.bumpMap?"#define USE_BUMPMAP":"",t.normalMap?"#define USE_NORMALMAP":"",t.normalMapObjectSpace?"#define USE_NORMALMAP_OBJECTSPACE":"",t.normalMapTangentSpace?"#define USE_NORMALMAP_TANGENTSPACE":"",t.displacementMap?"#define USE_DISPLACEMENTMAP":"",t.emissiveMap?"#define USE_EMISSIVEMAP":"",t.anisotropy?"#define USE_ANISOTROPY":"",t.anisotropyMap?"#define USE_ANISOTROPYMAP":"",t.clearcoatMap?"#define USE_CLEARCOATMAP":"",t.clearcoatRoughnessMap?"#define USE_CLEARCOAT_ROUGHNESSMAP":"",t.clearcoatNormalMap?"#define USE_CLEARCOAT_NORMALMAP":"",t.iridescenceMap?"#define USE_IRIDESCENCEMAP":"",t.iridescenceThicknessMap?"#define USE_IRIDESCENCE_THICKNESSMAP":"",t.specularMap?"#define USE_SPECULARMAP":"",t.specularColorMap?"#define USE_SPECULAR_COLORMAP":"",t.specularIntensityMap?"#define USE_SPECULAR_INTENSITYMAP":"",t.roughnessMap?"#define USE_ROUGHNESSMAP":"",t.metalnessMap?"#define USE_METALNESSMAP":"",t.alphaMap?"#define USE_ALPHAMAP":"",t.alphaHash?"#define USE_ALPHAHASH":"",t.transmission?"#define USE_TRANSMISSION":"",t.transmissionMap?"#define USE_TRANSMISSIONMAP":"",t.thicknessMap?"#define USE_THICKNESSMAP":"",t.sheenColorMap?"#define USE_SHEEN_COLORMAP":"",t.sheenRoughnessMap?"#define USE_SHEEN_ROUGHNESSMAP":"",t.mapUv?"#define MAP_UV "+t.mapUv:"",t.alphaMapUv?"#define ALPHAMAP_UV "+t.alphaMapUv:"",t.lightMapUv?"#define LIGHTMAP_UV "+t.lightMapUv:"",t.aoMapUv?"#define AOMAP_UV "+t.aoMapUv:"",t.emissiveMapUv?"#define EMISSIVEMAP_UV "+t.emissiveMapUv:"",t.bumpMapUv?"#define BUMPMAP_UV "+t.bumpMapUv:"",t.normalMapUv?"#define NORMALMAP_UV "+t.normalMapUv:"",t.displacementMapUv?"#define DISPLACEMENTMAP_UV "+t.displacementMapUv:"",t.metalnessMapUv?"#define METALNESSMAP_UV "+t.metalnessMapUv:"",t.roughnessMapUv?"#define ROUGHNESSMAP_UV "+t.roughnessMapUv:"",t.anisotropyMapUv?"#define ANISOTROPYMAP_UV "+t.anisotropyMapUv:"",t.clearcoatMapUv?"#define CLEARCOATMAP_UV "+t.clearcoatMapUv:"",t.clearcoatNormalMapUv?"#define CLEARCOAT_NORMALMAP_UV "+t.clearcoatNormalMapUv:"",t.clearcoatRoughnessMapUv?"#define CLEARCOAT_ROUGHNESSMAP_UV "+t.clearcoatRoughnessMapUv:"",t.iridescenceMapUv?"#define IRIDESCENCEMAP_UV "+t.iridescenceMapUv:"",t.iridescenceThicknessMapUv?"#define IRIDESCENCE_THICKNESSMAP_UV "+t.iridescenceThicknessMapUv:"",t.sheenColorMapUv?"#define SHEEN_COLORMAP_UV "+t.sheenColorMapUv:"",t.sheenRoughnessMapUv?"#define SHEEN_ROUGHNESSMAP_UV "+t.sheenRoughnessMapUv:"",t.specularMapUv?"#define SPECULARMAP_UV "+t.specularMapUv:"",t.specularColorMapUv?"#define SPECULAR_COLORMAP_UV "+t.specularColorMapUv:"",t.specularIntensityMapUv?"#define SPECULAR_INTENSITYMAP_UV "+t.specularIntensityMapUv:"",t.transmissionMapUv?"#define TRANSMISSIONMAP_UV "+t.transmissionMapUv:"",t.thicknessMapUv?"#define THICKNESSMAP_UV "+t.thicknessMapUv:"",t.vertexTangents&&t.flatShading===!1?"#define USE_TANGENT":"",t.vertexColors?"#define USE_COLOR":"",t.vertexAlphas?"#define USE_COLOR_ALPHA":"",t.vertexUv1s?"#define USE_UV1":"",t.vertexUv2s?"#define USE_UV2":"",t.vertexUv3s?"#define USE_UV3":"",t.pointsUvs?"#define USE_POINTS_UV":"",t.flatShading?"#define FLAT_SHADED":"",t.skinning?"#define USE_SKINNING":"",t.morphTargets?"#define USE_MORPHTARGETS":"",t.morphNormals&&t.flatShading===!1?"#define USE_MORPHNORMALS":"",t.morphColors?"#define USE_MORPHCOLORS":"",t.morphTargetsCount>0?"#define MORPHTARGETS_TEXTURE_STRIDE "+t.morphTextureStride:"",t.morphTargetsCount>0?"#define MORPHTARGETS_COUNT "+t.morphTargetsCount:"",t.doubleSided?"#define DOUBLE_SIDED":"",t.flipSided?"#define FLIP_SIDED":"",t.shadowMapEnabled?"#define USE_SHADOWMAP":"",t.shadowMapEnabled?"#define "+u:"",t.sizeAttenuation?"#define USE_SIZEATTENUATION":"",t.numLightProbes>0?"#define USE_LIGHT_PROBES":"",t.logarithmicDepthBuffer?"#define USE_LOGDEPTHBUF":"",t.reverseDepthBuffer?"#define USE_REVERSEDEPTHBUF":"","uniform mat4 modelMatrix;","uniform mat4 modelViewMatrix;","uniform mat4 projectionMatrix;","uniform mat4 viewMatrix;","uniform mat3 normalMatrix;","uniform vec3 cameraPosition;","uniform bool isOrthographic;","#ifdef USE_INSTANCING","	attribute mat4 instanceMatrix;","#endif","#ifdef USE_INSTANCING_COLOR","	attribute vec3 instanceColor;","#endif","#ifdef USE_INSTANCING_MORPH","	uniform sampler2D morphTexture;","#endif","attribute vec3 position;","attribute vec3 normal;","attribute vec2 uv;","#ifdef USE_UV1","	attribute vec2 uv1;","#endif","#ifdef USE_UV2","	attribute vec2 uv2;","#endif","#ifdef USE_UV3","	attribute vec2 uv3;","#endif","#ifdef USE_TANGENT","	attribute vec4 tangent;","#endif","#if defined( USE_COLOR_ALPHA )","	attribute vec4 color;","#elif defined( USE_COLOR )","	attribute vec3 color;","#endif","#ifdef USE_SKINNING","	attribute vec4 skinIndex;","	attribute vec4 skinWeight;","#endif",`
3804`].filter(Mp).join(`
3805`),M=[I2(t),"#define SHADER_TYPE "+t.shaderType,"#define SHADER_NAME "+t.shaderName,S,t.useFog&&t.fog?"#define USE_FOG":"",t.useFog&&t.fogExp2?"#define FOG_EXP2":"",t.alphaToCoverage?"#define ALPHA_TO_COVERAGE":"",t.map?"#define USE_MAP":"",t.matcap?"#define USE_MATCAP":"",t.envMap?"#define USE_ENVMAP":"",t.envMap?"#define "+d:"",t.envMap?"#define "+p:"",t.envMap?"#define "+m:"",y?"#define CUBEUV_TEXEL_WIDTH "+y.texelWidth:"",y?"#define CUBEUV_TEXEL_HEIGHT "+y.texelHeight:"",y?"#define CUBEUV_MAX_MIP "+y.maxMip+".0":"",t.lightMap?"#define USE_LIGHTMAP":"",t.aoMap?"#define USE_AOMAP":"",t.bumpMap?"#define USE_BUMPMAP":"",t.normalMap?"#define USE_NORMALMAP":"",t.normalMapObjectSpace?"#define USE_NORMALMAP_OBJECTSPACE":"",t.normalMapTangentSpace?"#define USE_NORMALMAP_TANGENTSPACE":"",t.emissiveMap?"#define USE_EMISSIVEMAP":"",t.anisotropy?"#define USE_ANISOTROPY":"",t.anisotropyMap?"#define USE_ANISOTROPYMAP":"",t.clearcoat?"#define USE_CLEARCOAT":"",t.clearcoatMap?"#define USE_CLEARCOATMAP":"",t.clearcoatRoughnessMap?"#define USE_CLEARCOAT_ROUGHNESSMAP":"",t.clearcoatNormalMap?"#define USE_CLEARCOAT_NORMALMAP":"",t.dispersion?"#define USE_DISPERSION":"",t.iridescence?"#define USE_IR
3805IDESCENCE":"",t.iridescenceMap?"#define USE_IRIDESCENCEMAP":"",t.iridescenceThicknessMap?"#define USE_IRIDESCENCE_THICKNESSMAP":"",t.specularMap?"#define USE_SPECULARMAP":"",t.specularColorMap?"#define USE_SPECULAR_COLORMAP":"",t.specularIntensityMap?"#define USE_SPECULAR_INTENSITYMAP":"",t.roughnessMap?"#define USE_ROUGHNESSMAP":"",t.metalnessMap?"#define USE_METALNESSMAP":"",t.alphaMap?"#define USE_ALPHAMAP":"",t.alphaTest?"#define USE_ALPHATEST":"",t.alphaHash?"#define USE_ALPHAHASH":"",t.sheen?"#define USE_SHEEN":"",t.sheenColorMap?"#define USE_SHEEN_COLORMAP":"",t.sheenRoughnessMap?"#define USE_SHEEN_ROUGHNESSMAP":"",t.transmission?"#define USE_TRANSMISSION":"",t.transmissionMap?"#define USE_TRANSMISSIONMAP":"",t.thicknessMap?"#define USE_THICKNESSMAP":"",t.vertexTangents&&t.flatShading===!1?"#define USE_TANGENT":"",t.vertexColors||t.instancingColor||t.batchingColor?"#define USE_COLOR":"",t.vertexAlphas?"#define USE_COLOR_ALPHA":"",t.vertexUv1s?"#define USE_UV1":"",t.vertexUv2s?"#define USE_UV2":"",t.vertexUv3s?"#define USE_UV3":"",t.pointsUvs?"#define USE_POINTS_UV":"",t.gradientMap?"#define USE_GRADIENTMAP":"",t.flatShading?"#define FLAT_SHADED":"",t.doubleSided?"#define DOUBLE_SIDED":"",t.flipSided?"#define FLIP_SIDED":"",t.shadowMapEnabled?"#define USE_SHADOWMAP":"",t.shadowMapEnabled?"#define "+u:"",t.premultipliedAlpha?"#define PREMULTIPLIED_ALPHA":"",t.numLightProbes>0?"#define USE_LIGHT_PROBES":"",t.decodeVideoTexture?"#define DECODE_VIDEO_TEXTURE":"",t.decodeVideoTextureEmissive?"#define DECODE_VIDEO_TEXTURE_EMISSIVE":"",t.logarithmicDepthBuffer?"#define USE_LOGDEPTHBUF":"",t.reverseDepthBuffer?"#define USE_REVERSEDEPTHBUF":"","uniform mat4 viewMatrix;","uniform vec3 cameraPosition;","uniform bool isOrthographic;",t.toneMapping!==Jo?"#define TONE_MAPPING":"",t.toneMapping!==Jo?an.tonemapping_pars_fragment:"",t.toneMapping!==Jo?ZL("toneMapping",t.toneMapping):"",t.dithering?"#define DITHERING":"",t.opaque?"#define OPAQUE":"",an.colorspace_pars_fragment,QL("linearToOutputTexel",t.outputColorSpace),e6(),t.useDepthPacking?"#define DEPTH_PACKING "+t.depthPacking:"",`
3806`].filter(Mp).join(`
3807`)),o=rx(o),o=b2(o,t),o=C2(o,t),l=rx(l),l=b2(l,t),l=C2(l,t),o=T2(o),l=T2(l),t.isRawShaderMaterial!==!0&&(T=`#version 300 es
3808`,A=[v,"#define attribute in","#define varying out","#define texture2D texture"].join(`
3809`)+`
3810`+A,M=["#define varying in",t.glslVersion===K_?"":"layout(location = 0) out highp vec4 pc_fragColor;",t.glslVersion===K_?"":"#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(`
3811`)+`
3812`+M);const I=T+A+o,P=T+M+l,k=w2(i,i.VERTEX_SHADER,I),O=w2(i,i.FRAGMENT_SHADER,P);i.attachShader(E,k),i.attachShader(E,O),t.index0AttributeName!==void 0?i.bindAttribLocation(E,0,t.index0AttributeName):t.morphTargets===!0&&i.bindAttribLocation(E,0,"position"),i.linkProgram(E);function N(V){if(r.debug.checkShaderErrors){const te=i.getProgramInfoLog(E).trim(),ne=i.getShaderInfoLog(k).trim(),ce=i.getShaderInfoLog(O).trim();let me=!0,he=!0;if(i.getProgramParameter(E,i.LINK_STATUS)===!1)if(me=!1,typeof r.debug.onShaderError=="function")r.debug.onShaderError(i,E,k,O);else{const ge=E2(i,k,"vertex"),U=E2(i,O,"fragment");console.error("THREE.WebGLProgram: Shader Error "+i.getError()+" - VALIDATE_STATUS "+i.getProgramParameter(E,i.VALIDATE_STATUS)+`
3813
3814Material Name: `+V.name+`
3815Material Type: `+V.type+`
3816
3817Program Info Log: `+te+`
3818`+ge+`
3819`+U)}else te!==""?console.warn("THREE.WebGLProgram: Program Info Log:",te):(ne===""||ce==="")&&(he=!1);he&&(V.diagnostics={runnable:me,programLog:te,vertexShader:{log:ne,prefix:A},fragmentShader:{log:ce,prefix:M}})}i.deleteShader(k),i.deleteShader(O),H=new Mg(i,E),F=r6(i,E)}let H;this.getUniforms=function(){return H===void 0&&N(this),H};let F;this.getAttributes=function(){return F===void 0&&N(this),F};let L=t.rendererExtensionParallelShaderCompile===!1;return this.isReady=function(){return L===!1&&(L=i.getProgramParameter(E,$L)),L},this.destroy=function(){n.releaseStatesOfProgram(this),i.deleteProgram(E),this.program=void 0},this.type=t.shaderType,this.name=t.shaderName,this.id=KL++,this.cacheKey=e,this.usedTimes=1,this.program=E,this.vertexShader=k,this.fragmentShader=O,this}let m6=0;class g6{constructor(){this.shaderCache=new Map,this.materialCache=new Map}update(e){const t=e.vertexShader,n=e.fragmentShader,i=this._getShaderStage(t),s=this._getShaderStage(n),o=this._getShaderCacheForMaterial(e);return o.has(i)===!1&&(o.add(i),i.usedTimes++),o.has(s)===!1&&(o.add(s),s.usedTimes++),this}remove(e){const t=this.materialCache.get(e);for(const n of t)n.usedTimes--,n.usedTimes===0&&this.shaderCache.delete(n.code);return this.materialCache.delete(e),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;let n=t.get(e);return n===void 0&&(n=new Set,t.set(e,n)),n}_getShaderStage(e){const t=this.shaderCache;let n=t.get(e);return n===void 0&&(n=new y6(e),t.set(e,n)),n}}class y6{constructor(e){this.id=m6++,this.code=e,this.usedTimes=0}}function v6(r,e,t,n,i,s,o){const l=new wu,u=new g6,d=new Set,p=[],m=i.logarithmicDepthBuffer,y=i.vertexTextures;let v=i.precision;const S={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 E(F){return d.add(F),F===0?"uv":`uv${F}`}function A(F,L,V,te,ne){const ce=te.fog,me=ne.geometry,he=F.isMeshStandardMaterial?te.environment:null,ge=(F.isMeshStandardMaterial?t:e).get(F.envMap||he),U=ge&&ge.mapping===Vd?ge.image.height:null,Z=S[F.type];F.precision!==null&&(v=i.getMaxPrecision(F.precision),v!==F.precision&&console.warn("THREE.WebGLProgram.getParameters:",F.precision,"not supported, using",v,"instead."));const q=me.morphAttributes.position||me.morphAttributes.normal||me.morphAttributes.color,X=q!==void 0?q.length:0;let se=0;me.morphAttributes.position!==void 0&&(se=1),me.morphAttributes.normal!==void 0&&(se=2),me.morphAttributes.color!==void 0&&(se=3);let Le,pe,Ae,Re;if(Z){const un=_o[Z];Le=un.vertexShader,pe=un.fragmentShader}else Le=F.vertexShader,pe=F.fragmentShader,u.update(F),Ae=u.getVertexShaderID(F),Re=u.getFragmentShaderID(F);const Ie=r.getRenderTarget(),Ge=r.state.buffers.depth.getReversed(),qe=ne.isInstancedMesh===!0,lt=ne.isBatchedMesh===!0,Pt=!!F.map,Be=!!F.matc
vendor: 71,743 bytes, lines 3819-3871
3819ap,Oe=!!ge,K=!!F.aoMap,pt=!!F.lightMap,Fe=!!F.bumpMap,st=!!F.normalMap,Ve=!!F.displacementMap,St=!!F.emissiveMap,$e=!!F.metalnessMap,J=!!F.roughnessMap,G=F.anisotropy>0,ee=F.clearcoat>0,ye=F.dispersion>0,Pe=F.iridescence>0,be=F.sheen>0,et=F.transmission>0,Je=G&&!!F.anisotropyMap,Qe=ee&&!!F.clearcoatMap,Ht=ee&&!!F.clearcoatNormalMap,Ue=ee&&!!F.clearcoatRoughnessMap,ut=Pe&&!!F.iridescenceMap,Ct=Pe&&!!F.iridescenceThicknessMap,Rt=be&&!!F.sheenColorMap,ht=be&&!!F.sheenRoughnessMap,$t=!!F.specularMap,kt=!!F.specularColorMap,pn=!!F.specularIntensityMap,ue=et&&!!F.transmissionMap,Ze=et&&!!F.thicknessMap,Ce=!!F.gradientMap,De=!!F.alphaMap,ot=F.alphaTest>0,nt=!!F.alphaHash,Gt=!!F.extensions;let Bn=Jo;F.toneMapped&&(Ie===null||Ie.isXRRenderTarget===!0)&&(Bn=r.toneMapping);const tr={shaderID:Z,shaderType:F.type,shaderName:F.name,vertexShader:Le,fragmentShader:pe,defines:F.defines,customVertexShaderID:Ae,customFragmentShaderID:Re,isRawShaderMaterial:F.isRawShaderMaterial===!0,glslVersion:F.glslVersion,precision:v,batching:lt,batchingColor:lt&&ne._colorsTexture!==null,instancing:qe,instancingColor:qe&&ne.instanceColor!==null,instancingMorph:qe&&ne.morphTexture!==null,supportsVertexTextures:y,outputColorSpace:Ie===null?r.outputColorSpace:Ie.isXRRenderTarget===!0?Ie.texture.colorSpace:Pu,alphaToCoverage:!!F.alphaToCoverage,map:Pt,matcap:Be,envMap:Oe,envMapMode:Oe&&ge.mapping,envMapCubeUVHeight:U,aoMap:K,lightMap:pt,bumpMap:Fe,normalMap:st,displacementMap:y&&Ve,emissiveMap:St,normalMapObjectSpace:st&&F.normalMapType===Vb,normalMapTangentSpace:st&&F.normalMapType===ac,metalnessMap:$e,roughnessMap:J,anisotropy:G,anisotropyMap:Je,clearcoat:ee,clearcoatMap:Qe,clearcoatNormalMap:Ht,clearcoatRoughnessMap:Ue,dispersion:ye,iridescence:Pe,iridescenceMap:ut,iridescenceThicknessMap:Ct,sheen:be,sheenColorMap:Rt,sheenRoughnessMap:ht,specularMap:$t,specularColorMap:kt,specularIntensityMap:pn,transmission:et,transmissionMap:ue,thicknessMap:Ze,gradientMap:Ce,opaque:F.transparent===!1&&F.blending===xu&&F.alphaToCoverage===!1,alphaMap:De,alphaTest:ot,alphaHash:nt,combine:F.combine,mapUv:Pt&&E(F.map.channel),aoMapUv:K&&E(F.aoMap.channel),lightMapUv:pt&&E(F.lightMap.channel),bumpMapUv:Fe&&E(F.bumpMap.channel),normalMapUv:st&&E(F.normalMap.channel),displacementMapUv:Ve&&E(F.displacementMap.channel),emissiveMapUv:St&&E(F.emissiveMap.channel),metalnessMapUv:$e&&E(F.metalnessMap.channel),roughnessMapUv:J&&E(F.roughnessMap.channel),anisotropyMapUv:Je&&E(F.anisotropyMap.channel),clearcoatMapUv:Qe&&E(F.clearcoatMap.channel),clearcoatNormalMapUv:Ht&&E(F.clearcoatNormalMap.channel),clearcoatRoughnessMapUv:Ue&&E(F.clearcoatRoughnessMap.channel),iridescenceMapUv:ut&&E(F.iridescenceMap.channel),iridescenceThicknessMapUv:Ct&&E(F.iridescenceThicknessMap.channel),sheenColorMapUv:Rt&&E(F.sheenColorMap.channel),sheenRoughnessMapUv:ht&&E(F.sheenRoughnessMap.channel),specularMapUv:$t&&E(F.specularMap.channel),specularColorMapUv:kt&&E(F.specularColorMap.channel),specularIntensityMapUv:pn&&E(F.specularIntensityMap.channel),transmissionMapUv:ue&&E(F.transmissionMap.channel),thicknessMapUv:Ze&&E(F.thicknessMap.channel),alphaMapUv:De&&E(F.alphaMap.channel),vertexTangents:!!me.attributes.tangent&&(st||G),vertexColors:F.vertexColors,vertexAlphas:F.vertexColors===!0&&!!me.attributes.color&&me.attributes.color.itemSize===4,pointsUvs:ne.isPoints===!0&&!!me.attributes.uv&&(Pt||De),fog:!!ce,useFog:F.fog===!0,fogExp2:!!ce&&ce.isFogExp2,flatShading:F.flatShading===!0,sizeAttenuation:F.sizeAttenuation===!0,logarithmicDepthBuffer:m,reverseDepthBuffer:Ge,skinning:ne.isSkinnedMesh===!0,morphTargets:me.morphAttributes.position!==void 0,morphNormals:me.morphAttributes.normal!==void 0,morphColors:me.morphAttributes.color!==void 0,morphTargetsCount:X,morphTextureStride:se,numDirLights:L.directional.length,numPointLights:L.point.length,numSpotLights:L.spot.length,numSpotLightMaps:L.spotLightMap.length,numRectAreaLights:L.rectArea.length,numHemiLights:L.hemi.length,numDirLightShadows:L.directionalShadowMap.length,numPointLightShadows:L.pointShadowMap.length,numSpotLightShadows:L.spotShadowMap.length,numSpotLightShadowsWithMaps:L.numSpotLightShadowsWithMaps,numLightProbes:L.numLightProbes,numClippingPlanes:o.numPlanes,numClipIntersection:o.numIntersection,dithering:F.dithering,shadowMapEnabled:r.shadowMap.enabled&&V.length>0,shadowMapType:r.shadowMap.type,toneMapping:Bn,decodeVideoTexture:Pt&&F.map.isVideoTexture===!0&&yn.getTransfer(F.map.colorSpace)===Cn,decodeVideoTextureEmissive:St&&F.emissiveMap.isVideoTexture===!0&&yn.getTransfer(F.emissiveMap.colorSpace)===Cn,premultipliedAlpha:F.premultipliedAlpha,doubleSided:F.side===xo,flipSided:F.side===Ni,useDepthPacking:F.depthPacking>=0,depthPacking:F.depthPacking||0,index0AttributeName:F.index0AttributeName,extensionClipCullDistance:Gt&&F.extensions.clipCullDistance===!0&&n.has("WEBGL_clip_cull_distance"),extensionMultiDraw:(Gt&&F.extensions.multiDraw===!0||lt)&&n.has("WEBGL_multi_draw"),rendererExtensionParallelShaderCompile:n.has("KHR_parallel_shader_compile"),customProgramCacheKey:F.customProgramCacheKey()};return tr.vertexUv1s=d.has(1),tr.vertexUv2s=d.has(2),tr.vertexUv3s=d.has(3),d.clear(),tr}function M(F){const L=[];if(F.shaderID?L.push(F.shaderID):(L.push(F.customVertexShaderID),L.push(F.customFragmentShaderID)),F.defines!==void 0)for(const V in F.defines)L.push(V),L.push(F.defines[V]);return F.isRawShaderMaterial===!1&&(T(L,F),I(L,F),L.push(r.outputColorSpace)),L.push(F.customProgramCacheKey),L.join()}function T(F,L){F.push(L.precision),F.push(L.outputColorSpace),F.push(L.envMapMode),F.push(L.envMapCubeUVHeight),F.push(L.mapUv),F.push(L.alphaMapUv),F.push(L.lightMapUv),F.push(L.aoMapUv),F.push(L.bumpMapUv),F.push(L.normalMapUv),F.push(L.displacementMapUv),F.push(L.emissiveMapUv),F.push(L.metalnessMapUv),F.push(L.roughnessMapUv),F.push(L.anisotropyMapUv),F.push(L.clearcoatMapUv),F.push(L.clearcoatNormalMapUv),F.push(L.clearcoatRoughnessMapUv),F.push(L.iridescenceMapUv),F.push(L.iridescenceThicknessMapUv),F.push(L.sheenColorMapUv),F.push(L.sheenRoughnessMapUv),F.push(L.specularMapUv),F.push(L.specularColorMapUv),F.push(L.specularIntensityMapUv),F.push(L.transmissionMapUv),F.push(L.thicknessMapUv),F.push(L.combine),F.push(L.fogExp2),F.push(L.sizeAttenuation),F.push(L.morphTargetsCount),F.push(L.morphAttributeCount),F.push(L.numDirLights),F.push(L.numPointLights),F.push(L.numSpotLights),F.push(L.numSpotLightMaps),F.push(L.numHemiLights),F.push(L.numRectAreaLights),F.push(L.numDirLightShadows),F.push(L.numPointLightShadows),F.push(L.numSpotLightShadows),F.push(L.numSpotLightShadowsWithMaps),F.push(L.numLightProbes),F.push(L.shadowMapType),F.push(L.toneMapping),F.push(L.numClippingPlanes),F.push(L.numClipIntersection),F.push(L.depthPacking)}function I(F,L){l.disableAll(),L.supportsVertexTextures&&l.enable(0),L.instancing&&l.enable(1),L.instancingColor&&l.enable(2),L.instancingMorph&&l.enable(3),L.matcap&&l.enable(4),L.envMap&&l.enable(5),L.normalMapObjectSpace&&l.enable(6),L.normalMapTangentSpace&&l.enable(7),L.clearcoat&&l.enable(8),L.iridescence&&l.enable(9),L.alphaTest&&l.enable(10),L.vertexColors&&l.enable(11),L.vertexAlphas&&l.enable(12),L.vertexUv1s&&l.enable(13),L.vertexUv2s&&l.enable(14),L.vertexUv3s&&l.enable(15),L.vertexTangents&&l.enable(16),L.anisotropy&&l.enable(17),L.alphaHash&&l.enable(18),L.batching&&l.enable(19),L.dispersion&&l.enable(20),L.batchingColor&&l.enable(21),F.push(l.mask),l.disableAll(),L.fog&&l.enable(0),L.useFog&&l.enable(1),L.flatShading&&l.enable(2),L.logarithmicDepthBuffer&&l.enable(3),L.reverseDepthBuffer&&l.enable(4),L.skinning&&l.enable(5),L.morphTargets&&l.enable(6),L.morphNormals&&l.enable(7),L.morphColors&&l.enable(8),L.premultipliedAlpha&&l.enable(9),L.shadowMapEnabled&&l.enable(10),L.doubleSided&&l.enable(11),L.flipSided&&l.enable(12),L.useDepthPacking&&l.enable(13),L.dithering&&l.enable(14),L.transmission&&l.enable(15),L.sheen&&l.enable(16),L.opaque&&l.enable(17),L.pointsUvs&&l.enable(18),L.decodeVideoTexture&&l.enable(19),L.decodeVideoTextureEmissive&&l.enable(20),L.alphaToCoverage&&l.enable(21),F.push(l.mask)}function P(F){const L=S[F.type];let V;if(L){const te=_o[L];V=sC.clone(te.uniforms)}else V=F.uniforms;return V}function k(F,L){let V;for(let te=0,ne=p.length;te<ne;te++){const ce=p[te];if(ce.cacheKey===L){V=ce,++V.usedTimes;break}}return V===void 0&&(V=new p6(r,L,F,s),p.push(V)),V}function O(F){if(--F.usedTimes===0){const L=p.indexOf(F);p[L]=p[p.length-1],p.pop(),F.destroy()}}function N(F){u.remove(F)}function H(){u.dispose()}return{getParameters:A,getProgramCacheKey:M,getUniforms:P,acquireProgram:k,releaseProgram:O,releaseShaderCache:N,programs:p,dispose:H}}function _6(){let r=new WeakMap;function e(o){return r.has(o)}function t(o){let l=r.get(o);return l===void 0&&(l={},r.set(o,l)),l}function n(o){r.delete(o)}function i(o,l,u){r.get(o)[l]=u}function s(){r=new WeakMap}return{has:e,get:t,remove:n,update:i,dispose:s}}function x6(r,e){return r.groupOrder!==e.groupOrder?r.groupOrder-e.groupOrder:r.renderOrder!==e.renderOrder?r.renderOrder-e.renderOrder:r.material.id!==e.material.id?r.material.id-e.material.id:r.z!==e.z?r.z-e.z:r.id-e.id}function P2(r,e){return r.groupOrder!==e.groupOrder?r.groupOrder-e.groupOrder:r.renderOrder!==e.renderOrder?r.renderOrder-e.renderOrder:r.z!==e.z?e.z-r.z:r.id-e.id}function R2(){const r=[];let e=0;const t=[],n=[],i=[];function s(){e=0,t.length=0,n.length=0,i.length=0}function o(m,y,v,S,E,A){let M=r[e];return M===void 0?(M={id:m.id,object:m,geometry:y,material:v,groupOrder:S,renderOrder:m.renderOrder,z:E,group:A},r[e]=M):(M.id=m.id,M.object=m,M.geometry=y,M.material=v,M.groupOrder=S,M.renderOrder=m.renderOrder,M.z=E,M.group=A),e++,M}function l(m,y,v,S,E,A){const M=o(m,y,v,S,E,A);v.transmission>0?n.push(M):v.transparent===!0?i.push(M):t.push(M)}function u(m,y,v,S,E,A){const M=o(m,y,v,S,E,A);v.transmission>0?n.unshift(M):v.transparent===!0?i.unshift(M):t.unshift(M)}function d(m,y){t.length>1&&t.sort(m||x6),n.length>1&&n.sort(y||P2),i.length>1&&i.sort(y||P2)}function p(){for(let m=e,y=r.length;m<y;m++){const v=r[m];if(v.id===null)break;v.id=null,v.object=null,v.geometry=null,v.material=null,v.group=null}}return{opaque:t,transmissive:n,transparent:i,init:s,push:l,unshift:u,finish:p,sort:d}}function M6(){let r=new WeakMap;function e(n,i){const s=r.get(n);let o;return s===void 0?(o=new R2,r.set(n,[o])):i>=s.length?(o=new R2,s.push(o)):o=s[i],o}function t(){r=new WeakMap}return{get:e,dispose:t}}function S6(){const r={};return{get:function(e){if(r[e.id]!==void 0)return r[e.id];let t;switch(e.type){case"DirectionalLight":t={direction:new $,color:new tt};break;case"SpotLight":t={position:new $,direction:new $,color:new tt,distance:0,coneCos:0,penumbraCos:0,decay:0};break;case"PointLight":t={position:new $,color:new tt,distance:0,decay:0};break;case"HemisphereLight":t={direction:new $,skyColor:new tt,groundColor:new tt};break;case"RectAreaLight":t={color:new tt,position:new $,halfWidth:new $,halfHeight:new $};break}return r[e.id]=t,t}}}function w6(){const r={};return{get:function(e){if(r[e.id]!==void 0)return r[e.id];let t;switch(e.type){case"DirectionalLight":t={shadowIntensity:1,shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new Ne};break;case"SpotLight":t={shadowIntensity:1,shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new Ne};break;case"PointLight":t={shadowIntensity:1,shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new Ne,shadowCameraNear:1,shadowCameraFar:1e3};break}return r[e.id]=t,t}}}let A6=0;function E6(r,e){return(e.castShadow?2:0)-(r.castShadow?2:0)+(e.map?1:0)-(r.map?1:0)}function b6(r){const e=new S6,t=w6(),n={version:0,hash:{directionalLength:-1,pointLength:-1,spotLength:-1,rectAreaLength:-1,hemiLength:-1,numDirectionalShadows:-1,numPointShadows:-1,numSpotShadows:-1,numSpotMaps:-1,numLightProbes:-1},ambient:[0,0,0],probe:[],directional:[],directionalShadow:[],directionalShadowMap:[],directionalShadowMatrix:[],spot:[],spotLightMap:[],spotShadow:[],spotShadowMap:[],spotLightMatrix:[],rectArea:[],rectAreaLTC1:null,rectAreaLTC2:null,point:[],pointShadow:[],pointShadowMap:[],pointShadowMatrix:[],hemi:[],numSpotLightShadowsWithMaps:0,numLightProbes:0};for(let d=0;d<9;d++)n.probe.push(new $);const i=new $,s=new Nt,o=new Nt;function l(d){let p=0,m=0,y=0;for(let F=0;F<9;F++)n.probe[F].set(0,0,0);let v=0,S=0,E=0,A=0,M=0,T=0,I=0,P=0,k=0,O=0,N=0;d.sort(E6);for(let F=0,L=d.length;F<L;F++){const V=d[F],te=V.color,ne=V.intensity,ce=V.distance,me=V.shadow&&V.shadow.map?V.shadow.map.texture:null;if(V.isAmbientLight)p+=te.r*ne,m+=te.g*ne,y+=te.b*ne;else if(V.isLightProbe){for(let he=0;he<9;he++)n.probe[he].addScaledVector(V.sh.coefficients[he],ne);N++}else if(V.isDirectionalLight){const he=e.get(V);if(he.color.copy(V.color).multiplyScalar(V.intensity),V.castShadow){const ge=V.shadow,U=t.get(V);U.shadowIntensity=ge.intensity,U.shadowBias=ge.bias,U.shadowNormalBias=ge.normalBias,U.shadowRadius=ge.radius,U.shadowMapSize=ge.mapSize,n.directionalShadow[v]=U,n.directionalShadowMap[v]=me,n.directionalShadowMatrix[v]=V.shadow.matrix,T++}n.directional[v]=he,v++}else if(V.isSpotLight){const he=e.get(V);he.position.setFromMatrixPosition(V.matrixWorld),he.color.copy(te).multiplyScalar(ne),he.distance=ce,he.coneCos=Math.cos(V.angle),he.penumbraCos=Math.cos(V.angle*(1-V.penumbra)),he.decay=V.decay,n.spot[E]=he;const ge=V.shadow;if(V.map&&(n.spotLightMap[k]=V.map,k++,ge.updateMatrices(V),V.castShadow&&O++),n.spotLightMatrix[E]=ge.matrix,V.castShadow){const U=t.get(V);U.shadowIntensity=ge.intensity,U.shadowBias=ge.bias,U.shadowNormalBias=ge.normalBias,U.shadowRadius=ge.radius,U.shadowMapSize=ge.mapSize,n.spotShadow[E]=U,n.spotShadowMap[E]=me,P++}E++}else if(V.isRectAreaLight){const he=e.get(V);he.color.copy(te).multiplyScalar(ne),he.halfWidth.set(V.width*.5,0,0),he.halfHeight.set(0,V.height*.5,0),n.rectArea[A]=he,A++}else if(V.isPointLight){const he=e.get(V);if(he.color.copy(V.color).multiplyScalar(V.intensity),he.distance=V.distance,he.decay=V.decay,V.castShadow){const ge=V.shadow,U=t.get(V);U.shadowIntensity=ge.intensity,U.shadowBias=ge.bias,U.shadowNormalBias=ge.normalBias,U.shadowRadius=ge.radius,U.shadowMapSize=ge.mapSize,U.shadowCameraNear=ge.camera.near,U.shadowCameraFar=ge.camera.far,n.pointShadow[S]=U,n.pointShadowMap[S]=me,n.pointShadowMatrix[S]=V.shadow.matrix,I++}n.point[S]=he,S++}else if(V.isHemisphereLight){const he=e.get(V);he.skyColor.copy(V.color).multiplyScalar(ne),he.groundColor.copy(V.groundColor).multiplyScalar(ne),n.hemi[M]=he,M++}}A>0&&(r.has("OES_texture_float_linear")===!0?(n.rectAreaLTC1=it.LTC_FLOAT_1,n.rectAreaLTC2=it.LTC_FLOAT_2):(n.rectAreaLTC1=it.LTC_HALF_1,n.rectAreaLTC2=it.LTC_HALF_2)),n.ambient[0]=p,n.ambient[1]=m,n.ambient[2]=y;const H=n.hash;(H.directionalLength!==v||H.pointLength!==S||H.spotLength!==E||H.rectAreaLength!==A||H.hemiLength!==M||H.numDirectionalShadows!==T||H.numPointShadows!==I||H.numSpotShadows!==P||H.numSpotMaps!==k||H.numLightProbes!==N)&&(n.directional.length=v,n.spot.length=E,n.rectArea.length=A,n.point.length=S,n.hemi.length=M,n.directionalShadow.length=T,n.directionalShadowMap.length=T,n.pointShadow.length=I,n.pointShadowMap.length=I,n.spotShadow.length=P,n.spotShadowMap.length=P,n.directionalShadowMatrix.length=T,n.pointShadowMatrix.length=I,n.spotLightMatrix.length=P+k-O,n.spotLightMap.length=k,n.numSpotLightShadowsWithMaps=O,n.numLightProbes=N,H.directionalLength=v,H.pointLength=S,H.spotLength=E,H.rectAreaLength=A,H.hemiLength=M,H.numDirectionalShadows=T,H.numPointShadows=I,H.numSpotShadows=P,H.numSpotMaps=k,H.numLightProbes=N,n.version=A6++)}function u(d,p){let m=0,y=0,v=0,S=0,E=0;const A=p.matrixWorldInverse;for(let M=0,T=d.length;M<T;M++){const I=d[M];if(I.isDirectionalLight){const P=n.directional[m];P.direction.setFromMatrixPosition(I.matrixWorld),i.setFromMatrixPosition(I.target.matrixWorld),P.direction.sub(i),P.direction.transformDirection(A),m++}else if(I.isSpotLight){const P=n.spot[v];P.position.setFromMatrixPosition(I.matrixWorld),P.position.applyMatrix4(A),P.direction.setFromMatrixPosition(I.matrixWorld),i.setFromMatrixPosition(I.target.matrixWorld),P.direction.sub(i),P.direction.transformDirection(A),v++}else if(I.isRectAreaLight){const P=n.rectArea[S];P.position.setFromMatrixPosition(I.matrixWorld),P.position.applyMatrix4(A),o.identity(),s.copy(I.matrixWorld),s.premultiply(A),o.extractRotation(s),P.halfWidth.set(I.width*.5,0,0),P.halfHeight.set(0,I.height*.5,0),P.halfWidth.applyMatrix4(o),P.halfHeight.applyMatrix4(o),S++}else if(I.isPointLight){const P=n.point[y];P.position.setFromMatrixPosition(I.matrixWorld),P.position.applyMatrix4(A),y++}else if(I.isHemisphereLight){const P=n.hemi[E];P.direction.setFromMatrixPosition(I.matrixWorld),P.direction.transformDirection(A),E++}}}return{setup:l,setupView:u,state:n}}function B2(r){const e=new b6(r),t=[],n=[];function i(p){d.camera=p,t.length=0,n.length=0}function s(p){t.push(p)}function o(p){n.push(p)}function l(){e.setup(t)}function u(p){e.setupView(t,p)}const d={lightsArray:t,shadowsArray:n,camera:null,lights:e,transmissionRenderTarget:{}};return{init:i,state:d,setupLights:l,setupLightsView:u,pushLight:s,pushShadow:o}}function C6(r){let e=new WeakMap;function t(i,s=0){const o=e.get(i);let l;return o===void 0?(l=new B2(r),e.set(i,[l])):s>=o.length?(l=new B2(r),o.push(l)):l=o[s],l}function n(){e=new WeakMap}return{get:t,dispose:n}}const T6=`void main() {
3820	gl_Position = vec4( position, 1.0 );
3821}`,I6=`uniform sampler2D shadow_pass;
3822uniform vec2 resolution;
3823uniform float radius;
3824#include <packing>
3825void main() {
3826	const float samples = float( VSM_SAMPLES );
3827	float mean = 0.0;
3828	float squared_mean = 0.0;
3829	float uvStride = samples <= 1.0 ? 0.0 : 2.0 / ( samples - 1.0 );
3830	float uvStart = samples <= 1.0 ? 0.0 : - 1.0;
3831	for ( float i = 0.0; i < samples; i ++ ) {
3832		float uvOffset = uvStart + i * uvStride;
3833		#ifdef HORIZONTAL_PASS
3834			vec2 distribution = unpackRGBATo2Half( texture2D( shadow_pass, ( gl_FragCoord.xy + vec2( uvOffset, 0.0 ) * radius ) / resolution ) );
3835			mean += distribution.x;
3836			squared_mean += distribution.y * distribution.y + distribution.x * distribution.x;
3837		#else
3838			float depth = unpackRGBAToDepth( texture2D( shadow_pass, ( gl_FragCoord.xy + vec2( 0.0, uvOffset ) * radius ) / resolution ) );
3839			mean += depth;
3840			squared_mean += depth * depth;
3841		#endif
3842	}
3843	mean = mean / samples;
3844	squared_mean = squared_mean / samples;
3845	float std_dev = sqrt( squared_mean - mean * mean );
3846	gl_FragColor = pack2HalfToRGBA( vec2( mean, std_dev ) );
3847}`;function P6(r,e,t){let n=new am;const i=new Ne,s=new Ne,o=new xn,l=new fM({depthPacking:Gb}),u=new pM,d={},p=t.maxTextureSize,m={[Qo]:Ni,[Ni]:Qo,[xo]:xo},y=new So({defines:{VSM_SAMPLES:8},uniforms:{shadow_pass:{value:null},resolution:{value:new Ne},radius:{value:4}},vertexShader:T6,fragmentShader:I6}),v=y.clone();v.defines.HORIZONTAL_PASS=1;const S=new Jt;S.setAttribute("position",new vn(new Float32Array([-1,-1,.5,3,-1,.5,-1,3,.5]),3));const E=new hr(S,y),A=this;this.enabled=!1,this.autoUpdate=!0,this.needsUpdate=!1,this.type=Oy;let M=this.type;this.render=function(O,N,H){if(A.enabled===!1||A.autoUpdate===!1&&A.needsUpdate===!1||O.length===0)return;const F=r.getRenderTarget(),L=r.getActiveCubeFace(),V=r.getActiveMipmapLevel(),te=r.state;te.setBlending(Ya),te.buffers.color.setClear(1,1,1,1),te.buffers.depth.setTest(!0),te.setScissorTest(!1);const ne=M!==vo&&this.type===vo,ce=M===vo&&this.type!==vo;for(let me=0,he=O.length;me<he;me++){const ge=O[me],U=ge.shadow;if(U===void 0){console.warn("THREE.WebGLShadowMap:",ge,"has no shadow.");continue}if(U.autoUpdate===!1&&U.needsUpdate===!1)continue;i.copy(U.mapSize);const Z=U.getFrameExtents();if(i.multiply(Z),s.copy(U.mapSize),(i.x>p||i.y>p)&&(i.x>p&&(s.x=Math.floor(p/Z.x),i.x=s.x*Z.x,U.mapSize.x=s.x),i.y>p&&(s.y=Math.floor(p/Z.y),i.y=s.y*Z.y,U.mapSize.y=s.y)),U.map===null||ne===!0||ce===!0){const X=this.type!==vo?{minFilter:zr,magFilter:zr}:{};U.map!==null&&U.map.dispose(),U.map=new Hs(i.x,i.y,X),U.map.texture.name=ge.name+".shadowMap",U.camera.updateProjectionMatrix()}r.setRenderTarget(U.map),r.clear();const q=U.getViewportCount();for(let X=0;X<q;X++){const se=U.getViewport(X);o.set(s.x*se.x,s.y*se.y,s.x*se.z,s.y*se.w),te.viewport(o),U.updateMatrices(ge,X),n=U.getFrustum(),P(N,H,U.camera,ge,this.type)}U.isPointLightShadow!==!0&&this.type===vo&&T(U,H),U.needsUpdate=!1}M=this.type,A.needsUpdate=!1,r.setRenderTarget(F,L,V)};function T(O,N){const H=e.update(E);y.defines.VSM_SAMPLES!==O.blurSamples&&(y.defines.VSM_SAMPLES=O.blurSamples,v.defines.VSM_SAMPLES=O.blurSamples,y.needsUpdate=!0,v.needsUpdate=!0),O.mapPass===null&&(O.mapPass=new Hs(i.x,i.y)),y.uniforms.shadow_pass.value=O.map.texture,y.uniforms.resolution.value=O.mapSize,y.uniforms.radius.value=O.radius,r.setRenderTarget(O.mapPass),r.clear(),r.renderBufferDirect(N,null,H,y,E,null),v.uniforms.shadow_pass.value=O.mapPass.texture,v.uniforms.resolution.value=O.mapSize,v.uniforms.radius.value=O.radius,r.setRenderTarget(O.map),r.clear(),r.renderBufferDirect(N,null,H,v,E,null)}function I(O,N,H,F){let L=null;const V=H.isPointLight===!0?O.customDistanceMaterial:O.customDepthMaterial;if(V!==void 0)L=V;else if(L=H.isPointLight===!0?u:l,r.localClippingEnabled&&N.clipShadows===!0&&Array.isArray(N.clippingPlanes)&&N.clippingPlanes.length!==0||N.displacementMap&&N.displacementScale!==0||N.alphaMap&&N.alphaTest>0||N.map&&N.alphaTest>0){const te=L.uuid,ne=N.uuid;let ce=d[te];ce===void 0&&(ce={},d[te]=ce);let me=ce[ne];me===void 0&&(me=L.clone(),ce[ne]=me,N.addEventListener("dispose",k)),L=me}if(L.visible=N.visible,L.wireframe=N.wireframe,F===vo?L.side=N.shadowSide!==null?N.shadowSide:N.side:L.side=N.shadowSide!==null?N.shadowSide:m[N.side],L.alphaMap=N.alphaMap,L.alphaTest=N.alphaTest,L.map=N.map,L.clipShadows=N.clipShadows,L.clippingPlanes=N.clippingPlanes,L.clipIntersection=N.clipIntersection,L.displacementMap=N.displacementMap,L.displacementScale=N.displacementScale,L.displacementBias=N.displacementBias,L.wireframeLinewidth=N.wireframeLinewidth,L.linewidth=N.linewidth,H.isPointLight===!0&&L.isMeshDistanceMaterial===!0){const te=r.properties.get(L);te.light=H}return L}function P(O,N,H,F,L){if(O.visible===!1)return;if(O.layers.test(N.layers)&&(O.isMesh||O.isLine||O.isPoints)&&(O.castShadow||O.receiveShadow&&L===vo)&&(!O.frustumCulled||n.intersectsObject(O))){O.modelViewMatrix.multiplyMatrices(H.matrixWorldInverse,O.matrixWorld);const ne=e.update(O),ce=O.material;if(Array.isArray(ce)){const me=ne.groups;for(let he=0,ge=me.length;he<ge;he++){const U=me[he],Z=ce[U.materialIndex];if(Z&&Z.visible){const q=I(O,Z,F,L);O.onBeforeShadow(r,O,N,H,ne,q,U),r.renderBufferDirect(H,null,ne,q,O,U),O.onAfterShadow(r,O,N,H,ne,q,U)}}}else if(ce.visible){const me=I(O,ce,F,L);O.onBeforeShadow(r,O,N,H,ne,me,null),r.renderBufferDirect(H,null,ne,me,O,null),O.onAfterShadow(r,O,N,H,ne,me,null)}}const te=O.children;for(let ne=0,ce=te.length;ne<ce;ne++)P(te[ne],N,H,F,L)}function k(O){O.target.removeEventListener("dispose",k);for(const H in d){const F=d[H],L=O.target.uuid;L in F&&(F[L].dispose(),delete F[L])}}}const R6={[Pg]:Rg,[Bg]:Lg,[Og]:Ng,[Cu]:Dg,[Rg]:Pg,[Lg]:Bg,[Ng]:Og,[Dg]:Cu};function B6(r,e){function t(){let ue=!1;const Ze=new xn;let Ce=null;const De=new xn(0,0,0,0);return{setMask:function(ot){Ce!==ot&&!ue&&(r.colorMask(ot,ot,ot,ot),Ce=ot)},setLocked:function(ot){ue=ot},setClear:function(ot,nt,Gt,Bn,tr){tr===!0&&(ot*=Bn,nt*=Bn,Gt*=Bn),Ze.set(ot,nt,Gt,Bn),De.equals(Ze)===!1&&(r.clearColor(ot,nt,Gt,Bn),De.copy(Ze))},reset:function(){ue=!1,Ce=null,De.set(-1,0,0,0)}}}function n(){let ue=!1,Ze=!1,Ce=null,De=null,ot=null;return{setReversed:function(nt){if(Ze!==nt){const Gt=e.get("EXT_clip_control");Ze?Gt.clipControlEXT(Gt.LOWER_LEFT_EXT,Gt.ZERO_TO_ONE_EXT):Gt.clipControlEXT(Gt.LOWER_LEFT_EXT,Gt.NEGATIVE_ONE_TO_ONE_EXT);const Bn=ot;ot=null,this.setClear(Bn)}Ze=nt},getReversed:function(){return Ze},setTest:function(nt){nt?Ie(r.DEPTH_TEST):Ge(r.DEPTH_TEST)},setMask:function(nt){Ce!==nt&&!ue&&(r.depthMask(nt),Ce=nt)},setFunc:function(nt){if(Ze&&(nt=R6[nt]),De!==nt){switch(nt){case Pg:r.depthFunc(r.NEVER);break;case Rg:r.depthFunc(r.ALWAYS);break;case Bg:r.depthFunc(r.LESS);break;case Cu:r.depthFunc(r.LEQUAL);break;case Og:r.depthFunc(r.EQUAL);break;case Dg:r.depthFunc(r.GEQUAL);break;case Lg:r.depthFunc(r.GREATER);break;case Ng:r.depthFunc(r.NOTEQUAL);break;default:r.depthFunc(r.LEQUAL)}De=nt}},setLocked:function(nt){ue=nt},setClear:function(nt){ot!==nt&&(Ze&&(nt=1-nt),r.clearDepth(nt),ot=nt)},reset:function(){ue=!1,Ce=null,De=null,ot=null,Ze=!1}}}function i(){let ue=!1,Ze=null,Ce=null,De=null,ot=null,nt=null,Gt=null,Bn=null,tr=null;return{setTest:function(un){ue||(un?Ie(r.STENCIL_TEST):Ge(r.STENCIL_TEST))},setMask:function(un){Ze!==un&&!ue&&(r.stencilMask(un),Ze=un)},setFunc:function(un,Hr,Gr){(Ce!==un||De!==Hr||ot!==Gr)&&(r.stencilFunc(un,Hr,Gr),Ce=un,De=Hr,ot=Gr)},setOp:function(un,Hr,Gr){(nt!==un||Gt!==Hr||Bn!==Gr)&&(r.stencilOp(un,Hr,Gr),nt=un,Gt=Hr,Bn=Gr)},setLocked:function(un){ue=un},setClear:function(un){tr!==un&&(r.clearStencil(un),tr=un)},reset:function(){ue=!1,Ze=null,Ce=null,De=null,ot=null,nt=null,Gt=null,Bn=null,tr=null}}}const s=new t,o=new n,l=new i,u=new WeakMap,d=new WeakMap;let p={},m={},y=new WeakMap,v=[],S=null,E=!1,A=null,M=null,T=null,I=null,P=null,k=null,O=null,N=new tt(0,0,0),H=0,F=!1,L=null,V=null,te=null,ne=null,ce=null;const me=r.getParameter(r.MAX_COMBINED_TEXTURE_IMAGE_UNITS);let he=!1,ge=0;const U=r.getParameter(r.VERSION);U.indexOf("WebGL")!==-1?(ge=parseFloat(/^WebGL (\d)/.exec(U)[1]),he=ge>=1):U.indexOf("OpenGL ES")!==-1&&(ge=parseFloat(/^OpenGL ES (\d)/.exec(U)[1]),he=ge>=2);let Z=null,q={};const X=r.getParameter(r.SCISSOR_BOX),se=r.getParameter(r.VIEWPORT),Le=new xn().fromArray(X),pe=new xn().fromArray(se);function Ae(ue,Ze,Ce,De){const ot=new Uint8Array(4),nt=r.createTexture();r.bindTexture(ue,nt),r.texParameteri(ue,r.TEXTURE_MIN_FILTER,r.NEAREST),r.texParameteri(ue,r.TEXTURE_MAG_FILTER,r.NEAREST);for(let Gt=0;Gt<Ce;Gt++)ue===r.TEXTURE_3D||ue===r.TEXTURE_2D_ARRAY?r.texImage3D(Ze,0,r.RGBA,1,1,De,0,r.RGBA,r.UNSIGNED_BYTE,ot):r.texImage2D(Ze+Gt,0,r.RGBA,1,1,0,r.RGBA,r.UNSIGNED_BYTE,ot);return nt}const Re={};Re[r.TEXTURE_2D]=Ae(r.TEXTURE_2D,r.TEXTURE_2D,1),Re[r.TEXTURE_CUBE_MAP]=Ae(r.TEXTURE_CUBE_MAP,r.TEXTURE_CUBE_MAP_POSITIVE_X,6),Re[r.TEXTURE_2D_ARRAY]=Ae(r.TEXTURE_2D_ARRAY,r.TEXTURE_2D_ARRAY,1,1),Re[r.TEXTURE_3D]=Ae(r.TEXTURE_3D,r.TEXTURE_3D,1,1),s.setClear(0,0,0,1),o.setClear(1),l.setClear(0),Ie(r.DEPTH_TEST),o.setFunc(Cu),Fe(!1),st(V_),Ie(r.CULL_FACE),K(Ya);function Ie(ue){p[ue]!==!0&&(r.enable(ue),p[ue]=!0)}function Ge(ue){p[ue]!==!1&&(r.disable(ue),p[ue]=!1)}function qe(ue,Ze){return m[ue]!==Ze?(r.bindFramebuffer(ue,Ze),m[ue]=Ze,ue===r.DRAW_FRAMEBUFFER&&(m[r.FRAMEBUFFER]=Ze),ue===r.FRAMEBUFFER&&(m[r.DRAW_FRAMEBUFFER]=Ze),!0):!1}function lt(ue,Ze){let Ce=v,De=!1;if(ue){Ce=y.get(Ze),Ce===void 0&&(Ce=[],y.set(Ze,Ce));const ot=ue.textures;if(Ce.length!==ot.length||Ce[0]!==r.COLOR_ATTACHMENT0){for(let nt=0,Gt=ot.length;nt<Gt;nt++)Ce[nt]=r.COLOR_ATTACHMENT0+nt;Ce.length=ot.length,De=!0}}else Ce[0]!==r.BACK&&(Ce[0]=r.BACK,De=!0);De&&r.drawBuffers(Ce)}function Pt(ue){return S!==ue?(r.useProgram(ue),S=ue,!0):!1}const Be={[ql]:r.FUNC_ADD,[db]:r.FUNC_SUBTRACT,[fb]:r.FUNC_REVERSE_SUBTRACT};Be[pb]=r.MIN,Be[mb]=r.MAX;const Oe={[gb]:r.ZERO,[yb]:r.ONE,[vb]:r.SRC_COLOR,[Tg]:r.SRC_ALPHA,[Ab]:r.SRC_ALPHA_SATURATE,[Sb]:r.DST_COLOR,[xb]:r.DST_ALPHA,[_b]:r.ONE_MINUS_SRC_COLOR,[Ig]:r.ONE_MINUS_SRC_ALPHA,[wb]:r.ONE_MINUS_DST_COLOR,[Mb]:r.ONE_MINUS_DST_ALPHA,[Eb]:r.CONSTANT_COLOR,[bb]:r.ONE_MINUS_CONSTANT_COLOR,[Cb]:r.CONSTANT_ALPHA,[Tb]:r.ONE_MINUS_CONSTANT_ALPHA};function K(ue,Ze,Ce,De,ot,nt,Gt,Bn,tr,un){if(ue===Ya){E===!0&&(Ge(r.BLEND),E=!1);return}if(E===!1&&(Ie(r.BLEND),E=!0),ue!==hb){if(ue!==A||un!==F){if((M!==ql||P!==ql)&&(r.blendEquation(r.FUNC_ADD),M=ql,P=ql),un)switch(ue){case xu:r.blendFuncSeparate(r.ONE,r.ONE_MINUS_SRC_ALPHA,r.ONE,r.ONE_MINUS_SRC_ALPHA);break;case Cg:r.blendFunc(r.ONE,r.ONE);break;case W_:r.blendFuncSeparate(r.ZERO,r.ONE_MINUS_SRC_COLOR,r.ZERO,r.ONE);break;case X_:r.blendFuncSeparate(r.ZERO,r.SRC_COLOR,r.ZERO,r.SRC_ALPHA);break;default:console.error("THREE.WebGLState: Invalid blending: ",ue);break}else switch(ue){case xu:r.blendFuncSeparate(r.SRC_ALPHA,r.ONE_MINUS_SRC_ALPHA,r.ONE,r.ONE_MINUS_SRC_ALPHA);break;case Cg:r.blendFunc(r.SRC_ALPHA,r.ONE);break;case W_:r.blendFuncSeparate(r.ZERO,r.ONE_MINUS_SRC_COLOR,r.ZERO,r.ONE);break;case X_:r.blendFunc(r.ZERO,r.SRC_COLOR);break;default:console.error("THREE.WebGLState: Invalid blending: ",ue);break}T=null,I=null,k=null,O=null,N.set(0,0,0),H=0,A=ue,F=un}return}ot=ot||Ze,nt=nt||Ce,Gt=Gt||De,(Ze!==M||ot!==P)&&(r.blendEquationSeparate(Be[Ze],Be[ot]),M=Ze,P=ot),(Ce!==T||De!==I||nt!==k||Gt!==O)&&(r.blendFuncSeparate(Oe[Ce],Oe[De],Oe[nt],Oe[Gt]),T=Ce,I=De,k=nt,O=Gt),(Bn.equals(N)===!1||tr!==H)&&(r.blendColor(Bn.r,Bn.g,Bn.b,tr),N.copy(Bn),H=tr),A=ue,F=!1}function pt(ue,Ze){ue.side===xo?Ge(r.CULL_FACE):Ie(r.CULL_FACE);let Ce=ue.side===Ni;Ze&&(Ce=!Ce),Fe(Ce),ue.blending===xu&&ue.transparent===!1?K(Ya):K(ue.blending,ue.blendEquation,ue.blendSrc,ue.blendDst,ue.blendEquationAlpha,ue.blendSrcAlpha,ue.blendDstAlpha,ue.blendColor,ue.blendAlpha,ue.premultipliedAlpha),o.setFunc(ue.depthFunc),o.setTest(ue.depthTest),o.setMask(ue.depthWrite),s.setMask(ue.colorWrite);const De=ue.stencilWrite;l.setTest(De),De&&(l.setMask(ue.stencilWriteMask),l.setFunc(ue.stencilFunc,ue.stencilRef,ue.stencilFuncMask),l.setOp(ue.stencilFail,ue.stencilZFail,ue.stencilZPass)),St(ue.polygonOffset,ue.polygonOffsetFactor,ue.polygonOffsetUnits),ue.alphaToCoverage===!0?Ie(r.SAMPLE_ALPHA_TO_COVERAGE):Ge(r.SAMPLE_ALPHA_TO_COVERAGE)}function Fe(ue){L!==ue&&(ue?r.frontFace(r.CW):r.frontFace(r.CCW),L=ue)}function st(ue){ue!==lb?(Ie(r.CULL_FACE),ue!==V&&(ue===V_?r.cullFace(r.BACK):ue===cb?r.cullFace(r.FRONT):r.cullFace(r.FRONT_AND_BACK))):Ge(r.CULL_FACE),V=ue}function Ve(ue){ue!==te&&(he&&r.lineWidth(ue),te=ue)}function St(ue,Ze,Ce){ue?(Ie(r.POLYGON_OFFSET_FILL),(ne!==Ze||ce!==Ce)&&(r.polygonOffset(Ze,Ce),ne=Ze,ce=Ce)):Ge(r.POLYGON_OFFSET_FILL)}function $e(ue){ue?Ie(r.SCISSOR_TEST):Ge(r.SCISSOR_TEST)}function J(ue){ue===void 0&&(ue=r.TEXTURE0+me-1),Z!==ue&&(r.activeTexture(ue),Z=ue)}function G(ue,Ze,Ce){Ce===void 0&&(Z===null?Ce=r.TEXTURE0+me-1:Ce=Z);let De=q[Ce];De===void 0&&(De={type:void 0,texture:void 0},q[Ce]=De),(De.type!==ue||De.texture!==Ze)&&(Z!==Ce&&(r.activeTexture(Ce),Z=Ce),r.bindTexture(ue,Ze||Re[ue]),De.type=ue,De.texture=Ze)}function ee(){const ue=q[Z];ue!==void 0&&ue.type!==void 0&&(r.bindTexture(ue.type,null),ue.type=void 0,ue.texture=void 0)}function ye(){try{r.compressedTexImage2D.apply(r,arguments)}catch(ue){console.error("THREE.WebGLState:",ue)}}function Pe(){try{r.compressedTexImage3D.apply(r,arguments)}catch(ue){console.error("THREE.WebGLState:",ue)}}function be(){try{r.texSubImage2D.apply(r,arguments)}catch(ue){console.error("THREE.WebGLState:",ue)}}function et(){try{r.texSubImage3D.apply(r,arguments)}catch(ue){console.error("THREE.WebGLState:",ue)}}function Je(){try{r.compressedTexSubImage2D.apply(r,arguments)}catch(ue){console.error("THREE.WebGLState:",ue)}}function Qe(){try{r.compressedTexSubImage3D.apply(r,arguments)}catch(ue){console.error("THREE.WebGLState:",ue)}}function Ht(){try{r.texStorage2D.apply(r,arguments)}catch(ue){console.error("THREE.WebGLState:",ue)}}function Ue(){try{r.texStorage3D.apply(r,arguments)}catch(ue){console.error("THREE.WebGLState:",ue)}}function ut(){try{r.texImage2D.apply(r,arguments)}catch(ue){console.error("THREE.WebGLState:",ue)}}function Ct(){try{r.texImage3D.apply(r,arguments)}catch(ue){console.error("THREE.WebGLState:",ue)}}function Rt(ue){Le.equals(ue)===!1&&(r.scissor(ue.x,ue.y,ue.z,ue.w),Le.copy(ue))}function ht(ue){pe.equals(ue)===!1&&(r.viewport(ue.x,ue.y,ue.z,ue.w),pe.copy(ue))}function $t(ue,Ze){let Ce=d.get(Ze);Ce===void 0&&(Ce=new WeakMap,d.set(Ze,Ce));let De=Ce.get(ue);De===void 0&&(De=r.getUniformBlockIndex(Ze,ue.name),Ce.set(ue,De))}function kt(ue,Ze){const De=d.get(Ze).get(ue);u.get(Ze)!==De&&(r.uniformBlockBinding(Ze,De,ue.__bindingPointIndex),u.set(Ze,De))}function pn(){r.disable(r.BLEND),r.disable(r.CULL_FACE),r.disable(r.DEPTH_TEST),r.disable(r.POLYGON_OFFSET_FILL),r.disable(r.SCISSOR_TEST),r.disable(r.STENCIL_TEST),r.disable(r.SAMPLE_ALPHA_TO_COVERAGE),r.blendEquation(r.FUNC_ADD),r.blendFunc(r.ONE,r.ZERO),r.blendFuncSeparate(r.ONE,r.ZERO,r.ONE,r.ZERO),r.blendColor(0,0,0,0),r.colorMask(!0,!0,!0,!0),r.clearColor(0,0,0,0),r.depthMask(!0),r.depthFunc(r.LESS),o.setReversed(!1),r.clearDepth(1),r.stencilMask(4294967295),r.stencilFunc(r.ALWAYS,0,4294967295),r.stencilOp(r.KEEP,r.KEEP,r.KEEP),r.clearStencil(0),r.cullFace(r.BACK),r.frontFace(r.CCW),r.polygonOffset(0,0),r.activeTexture(r.TEXTURE0),r.bindFramebuffer(r.FRAMEBUFFER,null),r.bindFramebuffer(r.DRAW_FRAMEBUFFER,null),r.bindFramebuffer(r.READ_FRAMEBUFFER,null),r.useProgram(null),r.lineWidth(1),r.scissor(0,0,r.canvas.width,r.canvas.height),r.viewport(0,0,r.canvas.width,r.canvas.height),p={},Z=null,q={},m={},y=new WeakMap,v=[],S=null,E=!1,A=null,M=null,T=null,I=null,P=null,k=null,O=null,N=new tt(0,0,0),H=0,F=!1,L=null,V=null,te=null,ne=null,ce=null,Le.set(0,0,r.canvas.width,r.canvas.height),pe.set(0,0,r.canvas.width,r.canvas.height),s.reset(),o.reset(),l.reset()}return{buffers:{color:s,depth:o,stencil:l},enable:Ie,disable:Ge,bindFramebuffer:qe,drawBuffers:lt,useProgram:Pt,setBlending:K,setMaterial:pt,setFlipSided:Fe,setCullFace:st,setLineWidth:Ve,setPolygonOffset:St,setScissorTest:$e,activeTexture:J,bindTexture:G,unbindTexture:ee,compressedTexImage2D:ye,compressedTexImage3D:Pe,texImage2D:ut,texImage3D:Ct,updateUBOMapping:$t,uniformBlockBinding:kt,texStorage2D:Ht,texStorage3D:Ue,texSubImage2D:be,texSubImage3D:et,compressedTexSubImage2D:Je,compressedTexSubImage3D:Qe,scissor:Rt,viewport:ht,reset:pn}}function O6(r,e,t,n,i,s,o){const l=e.has("WEBGL_multisampled_render_to_texture")?e.get("WEBGL_multisampled_render_to_texture"):null,u=typeof navigator>"u"?!1:/OculusBrowser/g.test(navigator.userAgent),d=new Ne,p=new WeakMap;let m;const y=new WeakMap;let v=!1;try{v=typeof OffscreenCanvas<"u"&&new OffscreenCanvas(1,1).getContext("2d")!==null}catch{}function S(J,G){return v?new OffscreenCanvas(J,G):Hp("canvas")}function E(J,G,ee){let ye=1;const Pe=$e(J);if((Pe.width>ee||Pe.height>ee)&&(ye=ee/Math.max(Pe.width,Pe.height)),ye<1)if(typeof HTMLImageElement<"u"&&J instanceof HTMLImageElement||typeof HTMLCanvasElement<"u"&&J instanceof HTMLCanvasElement||typeof ImageBitmap<"u"&&J instanceof ImageBitmap||typeof VideoFrame<"u"&&J instanceof VideoFrame){const be=Math.floor(ye*Pe.width),et=Math.floor(ye*Pe.height);m===void 0&&(m=S(be,et));const Je=G?S(be,et):m;return Je.width=be,Je.height=et,Je.getContext("2d").drawImage(J,0,0,be,et),console.warn("THREE.WebGLRenderer: Texture has been resized from ("+Pe.width+"x"+Pe.height+") to ("+be+"x"+et+")."),Je}else return"data"in J&&console.warn("THREE.WebGLRenderer: Image in DataTexture is too big ("+Pe.width+"x"+Pe.height+")."),J;return J}function A(J){return J.generateMipmaps}function M(J){r.generateMipmap(J)}function T(J){return J.isWebGLCubeRenderTarget?r.TEXTURE_CUBE_MAP:J.isWebGL3DRenderTarget?r.TEXTURE_3D:J.isWebGLArrayRenderTarget||J.isCompressedArrayTexture?r.TEXTURE_2D_ARRAY:r.TEXTURE_2D}function I(J,G,ee,ye,Pe=!1){if(J!==null){if(r[J]!==void 0)return r[J];console.warn("THREE.WebGLRenderer: Attempt to use non-existing WebGL internal format '"+J+"'")}let be=G;if(G===r.RED&&(ee===r.FLOAT&&(be=r.R32F),ee===r.HALF_FLOAT&&(be=r.R16F),ee===r.UNSIGNED_BYTE&&(be=r.R8)),G===r.RED_INTEGER&&(ee===r.UNSIGNED_BYTE&&(be=r.R8UI),ee===r.UNSIGNED_SHORT&&(be=r.R16UI),ee===r.UNSIGNED_INT&&(be=r.R32UI),ee===r.BYTE&&(be=r.R8I),ee===r.SHORT&&(be=r.R16I),ee===r.INT&&(be=r.R32I)),G===r.RG&&(ee===r.FLOAT&&(be=r.RG32F),ee===r.HALF_FLOAT&&(be=r.RG16F),ee===r.UNSIGNED_BYTE&&(be=r.RG8)),G===r.RG_INTEGER&&(ee===r.UNSIGNED_BYTE&&(be=r.RG8UI),ee===r.UNSIGNED_SHORT&&(be=r.RG16UI),ee===r.UNSIGNED_INT&&(be=r.RG32UI),ee===r.BYTE&&(be=r.RG8I),ee===r.SHORT&&(be=r.RG16I),ee===r.INT&&(be=r.RG32I)),G===r.RGB_INTEGER&&(ee===r.UNSIGNED_BYTE&&(be=r.RGB8UI),ee===r.UNSIGNED_SHORT&&(be=r.RGB16UI),ee===r.UNSIGNED_INT&&(be=r.RGB32UI),ee===r.BYTE&&(be=r.RGB8I),ee===r.SHORT&&(be=r.RGB16I),ee===r.INT&&(be=r.RGB32I)),G===r.RGBA_INTEGER&&(ee===r.UNSIGNED_BYTE&&(be=r.RGBA8UI),ee===r.UNSIGNED_SHORT&&(be=r.RGBA16UI),ee===r.UNSIGNED_INT&&(be=r.RGBA32UI),ee===r.BYTE&&(be=r.RGBA8I),ee===r.SHORT&&(be=r.RGBA16I),ee===r.INT&&(be=r.RGBA32I)),G===r.RGB&&ee===r.UNSIGNED_INT_5_9_9_9_REV&&(be=r.RGB9_E5),G===r.RGBA){const et=Pe?Up:yn.getTransfer(ye);ee===r.FLOAT&&(be=r.RGBA32F),ee===r.HALF_FLOAT&&(be=r.RGBA16F),ee===r.UNSIGNED_BYTE&&(be=et===Cn?r.SRGB8_ALPHA8:r.RGBA8),ee===r.UNSIGNED_SHORT_4_4_4_4&&(be=r.RGBA4),ee===r.UNSIGNED_SHORT_5_5_5_1&&(be=r.RGB5_A1)}return(be===r.R16F||be===r.R32F||be===r.RG16F||be===r.RG32F||be===r.RGBA16F||be===r.RGBA32F)&&e.get("EXT_color_buffer_float"),be}function P(J,G){let ee;return J?G===null||G===tl||G===Tu?ee=r.DEPTH24_STENCIL8:G===Di?ee=r.DEPTH32F_STENCIL8:G===Dd&&(ee=r.DEPTH24_STENCIL8,console.warn("DepthTexture: 16 bit depth attachment is not supported with stencil. Using 24-bit attachment.")):G===null||G===tl||G===Tu?ee=r.DEPTH_COMPONENT24:G===Di?ee=r.DEPTH_COMPONENT32F:G===Dd&&(ee=r.DEPTH_COMPONENT16),ee}function k(J,G){return A(J)===!0||J.isFramebufferTexture&&J.minFilter!==zr&&J.minFilter!==Zn?Math.log2(Math.max(G.width,G.height))+1:J.mipmaps!==void 0&&J.mipmaps.length>0?J.mipmaps.length:J.isCompressedTexture&&Array.isArray(J.image)?G.mipmaps.length:1}function O(J){const G=J.target;G.removeEventListener("dispose",O),H(G),G.isVideoTexture&&p.delete(G)}function N(J){const G=J.target;G.removeEventListener("dispose",N),L(G)}function H(J){const G=n.get(J);if(G.__webglInit===void 0)return;const ee=J.source,ye=y.get(ee);if(ye){const Pe=ye[G.__cacheKey];Pe.usedTimes--,Pe.usedTimes===0&&F(J),Object.keys(ye).length===0&&y.delete(ee)}n.remove(J)}function F(J){const G=n.get(J);r.deleteTexture(G.__webglTexture);const ee=J.source,ye=y.get(ee);delete ye[G.__cacheKey],o.memory.textures--}function L(J){const G=n.get(J);if(J.depthTexture&&(J.depthTexture.dispose(),n.remove(J.depthTexture)),J.isWebGLCubeRenderTarget)for(let ye=0;ye<6;ye++){if(Array.isArray(G.__webglFramebuffer[ye]))for(let Pe=0;Pe<G.__webglFramebuffer[ye].length;Pe++)r.deleteFramebuffer(G.__webglFramebuffer[ye][Pe]);else r.deleteFramebuffer(G.__webglFramebuffer[ye]);G.__webglDepthbuffer&&r.deleteRenderbuffer(G.__webglDepthbuffer[ye])}else{if(Array.isArray(G.__webglFramebuffer))for(let ye=0;ye<G.__webglFramebuffer.length;ye++)r.deleteFramebuffer(G.__webglFramebuffer[ye]);else r.deleteFramebuffer(G.__webglFramebuffer);if(G.__webglDepthbuffer&&r.deleteRenderbuffer(G.__webglDepthbuffer),G.__webglMultisampledFramebuffer&&r.deleteFramebuffer(G.__webglMultisampledFramebuffer),G.__webglColorRenderbuffer)for(let ye=0;ye<G.__webglColorRenderbuffer.length;ye++)G.__webglColorRenderbuffer[ye]&&r.deleteRenderbuffer(G.__webglColorRenderbuffer[ye]);G.__webglDepthRenderbuffer&&r.deleteRenderbuffer(G.__webglDepthRenderbuffer)}const ee=J.textures;for(let ye=0,Pe=ee.length;ye<Pe;ye++){const be=n.get(ee[ye]);be.__webglTexture&&(r.deleteTexture(be.__webglTexture),o.memory.textures--),n.remove(ee[ye])}n.remove(J)}let V=0;function te(){V=0}function ne(){const J=V;return J>=i.maxTextures&&console.warn("THREE.WebGLTextures: Trying to use "+J+" texture units while this GPU supports only "+i.maxTextures),V+=1,J}function ce(J){const G=[];return G.push(J.wrapS),G.push(J.wrapT),G.push(J.wrapR||0),G.push(J.magFilter),G.push(J.minFilter),G.push(J.anisotropy),G.push(J.internalFormat),G.push(J.format),G.push(J.type),G.push(J.generateMipmaps),G.push(J.premultiplyAlpha),G.push(J.flipY),G.push(J.unpackAlignment),G.push(J.colorSpace),G.join()}function me(J,G){const ee=n.get(J);if(J.isVideoTexture&&Ve(J),J.isRenderTargetTexture===!1&&J.version>0&&ee.__version!==J.version){const ye=J.image;if(ye===null)console.warn("THREE.WebGLRenderer: Texture marked for update but no image data found.");else if(ye.complete===!1)console.warn("THREE.WebGLRenderer: Texture marked for update but image is incomplete");else{pe(ee,J,G);return}}t.bindTexture(r.TEXTURE_2D,ee.__webglTexture,r.TEXTURE0+G)}function he(J,G){const ee=n.get(J);if(J.version>0&&ee.__version!==J.version){pe(ee,J,G);return}t.bindTexture(r.TEXTURE_2D_ARRAY,ee.__webglTexture,r.TEXTURE0+G)}function ge(J,G){const ee=n.get(J);if(J.version>0&&ee.__version!==J.version){pe(ee,J,G);return}t.bindTexture(r.TEXTURE_3D,ee.__webglTexture,r.TEXTURE0+G)}function U(J,G){const ee=n.get(J);if(J.version>0&&ee.__version!==J.version){Ae(ee,J,G);return}t.bindTexture(r.TEXTURE_CUBE_MAP,ee.__webglTexture,r.TEXTURE0+G)}const Z={[ec]:r.REPEAT,[ys]:r.CLAMP_TO_EDGE,[Od]:r.MIRRORED_REPEAT},q={[zr]:r.NEAREST,[Ly]:r.NEAREST_MIPMAP_NEAREST,[fu]:r.NEAREST_MIPMAP_LINEAR,[Zn]:r.LINEAR,[Cd]:r.LINEAR_MIPMAP_NEAREST,[js]:r.LINEAR_MIPMAP_LINEAR},X={[Wb]:r.NEVER,[qb]:r.ALWAYS,[Xb]:r.LESS,[Qx]:r.LEQUAL,[Jb]:r.EQUAL,[Yb]:r.GEQUAL,[$b]:r.GREATER,[Kb]:r.NOTEQUAL};function se(J,G){if(G.type===Di&&e.has("OES_texture_float_linear")===!1&&(G.magFilter===Zn||G.magFilter===Cd||G.magFilter===fu||G.magFilter===js||G.minFilter===Zn||G.minFilter===Cd||G.minFilter===fu||G.minFilter===js)&&console.warn("THREE.WebGLRenderer: Unable to use linear filtering with floating point textures. OES_texture_float_linear not supported on this device."),r.texParameteri(J,r.TEXTURE_WRAP_S,Z[G.wrapS]),r.texParameteri(J,r.TEXTURE_WRAP_T,Z[G.wrapT]),(J===r.TEXTURE_3D||J===r.TEXTURE_2D_ARRAY)&&r.texParameteri(J,r.TEXTURE_WRAP_R,Z[G.wrapR]),r.texParameteri(J,r.TEXTURE_MAG_FILTER,q[G.magFilter]),r.texParameteri(J,r.TEXTURE_MIN_FILTER,q[G.minFilter]),G.compareFunction&&(r.texParameteri(J,r.TEXTURE_COMPARE_MODE,r.COMPARE_REF_TO_TEXTURE),r.texParameteri(J,r.TEXTURE_COMPARE_FUNC,X[G.compareFunction])),e.has("EXT_texture_filter_anisotropic")===!0){if(G.magFilter===zr||G.minFilter!==fu&&G.minFilter!==js||G.type===Di&&e.has("OES_texture_float_linear")===!1)return;if(G.anisotropy>1||n.get(G).__currentAnisotropy){const ee=e.get("EXT_texture_filter_anisotropic");r.texParameterf(J,ee.TEXTURE_MAX_ANISOTROPY_EXT,Math.min(G.anisotropy,i.getMaxAnisotropy())),n.get(G).__currentAnisotropy=G.anisotropy}}}function Le(J,G){let ee=!1;J.__webglInit===void 0&&(J.__webglInit=!0,G.addEventListener("dispose",O));const ye=G.source;let Pe=y.get(ye);Pe===void 0&&(Pe={},y.set(ye,Pe));const be=ce(G);if(be!==J.__cacheKey){Pe[be]===void 0&&(Pe[be]={texture:r.createTexture(),usedTimes:0},o.memory.textures++,ee=!0),Pe[be].usedTimes++;const et=Pe[J.__cacheKey];et!==void 0&&(Pe[J.__cacheKey].usedTimes--,et.usedTimes===0&&F(G)),J.__cacheKey=be,J.__webglTexture=Pe[be].texture}return ee}function pe(J,G,ee){let ye=r.TEXTURE_2D;(G.isDataArrayTexture||G.isCompressedArrayTexture)&&(ye=r.TEXTURE_2D_ARRAY),G.isData3DTexture&&(ye=r.TEXTURE_3D);const Pe=Le(J,G),be=G.source;t.bindTexture(ye,J.__webglTexture,r.TEXTURE0+ee);const et=n.get(be);if(be.version!==et.__version||Pe===!0){t.activeTexture(r.TEXTURE0+ee);const Je=yn.getPrimaries(yn.workingColorSpace),Qe=G.colorSpace===Wa?null:yn.getPrimaries(G.colorSpace),Ht=G.colorSpace===Wa||Je===Qe?r.NONE:r.BROWSER_DEFAULT_WEBGL;r.pixelStorei(r.UNPACK_FLIP_Y_WEBGL,G.flipY),r.pixelStorei(r.UNPACK_PREMULTIPLY_ALPHA_WEBGL,G.premultiplyAlpha),r.pixelStorei(r.UNPACK_ALIGNMENT,G.unpackAlignment),r.pixelStorei(r.UNPACK_COLORSPACE_CONVERSION_WEBGL,Ht);let Ue=E(G.image,!1,i.maxTextureSize);Ue=St(G,Ue);const ut=s.convert(G.format,G.colorSpace),Ct=s.convert(G.type);let Rt=I(G.internalFormat,ut,Ct,G.colorSpace,G.isVideoTexture);se(ye,G);let ht;const $t=G.mipmaps,kt=G.isVideoTexture!==!0,pn=et.__version===void 0||Pe===!0,ue=be.dataReady,Ze=k(G,Ue);if(G.isDepthTexture)Rt=P(G.format===Iu,G.type),pn&&(kt?t.texStorage2D(r.TEXTURE_2D,1,Rt,Ue.width,Ue.height):t.texImage2D(r.TEXTURE_2D,0,Rt,Ue.width,Ue.height,0,ut,Ct,null));else if(G.isDataTexture)if($t.length>0){kt&&pn&&t.texStorage2D(r.TEXTURE_2D,Ze,Rt,$t[0].width,$t[0].height);for(let Ce=0,De=$t.length;Ce<De;Ce++)ht=$t[Ce],kt?ue&&t.texSubImage2D(r.TEXTURE_2D,Ce,0,0,ht.width,ht.height,ut,Ct,ht.data):t.texImage2D(r.TEXTURE_2D,Ce,Rt,ht.width,ht.height,0,ut,Ct,ht.data);G.generateMipmaps=!1}else kt?(pn&&t.texStorage2D(r.TEXTURE_2D,Ze,Rt,Ue.width,Ue.height),ue&&t.texSubImage2D(r.TEXTURE_2D,0,0,0,Ue.width,Ue.height,ut,Ct,Ue.data)):t.texImage2D(r.TEXTURE_2D,0,Rt,Ue.width,Ue.height,0,ut,Ct,Ue.data);else if(G.isCompressedTexture)if(G.isCompressedArrayTexture){kt&&pn&&t.texStorage3D(r.TEXTURE_2D_ARRAY,Ze,Rt,$t[0].width,$t[0].height,Ue.depth);for(let Ce=0,De=$t.length;Ce<De;Ce++)if(ht=$t[Ce],G.format!==hi)if(ut!==null)if(kt){if(ue)if(G.layerUpdates.size>0){const ot=tx(ht.width,ht.height,G.format,G.type);for(const nt of G.layerUpdates){const Gt=ht.data.subarray(nt*ot/ht.data.BYTES_PER_ELEMENT,(nt+1)*ot/ht.data.BYTES_PER_ELEMENT);t.compressedTexSubImage3D(r.TEXTURE_2D_ARRAY,Ce,0,0,nt,ht.width,ht.height,1,ut,Gt)}G.clearLayerUpdates()}else t.compressedTexSubImage3D(r.TEXTURE_2D_ARRAY,Ce,0,0,0,ht.width,ht.height,Ue.depth,ut,ht.data)}else t.compressedTexImage3D(r.TEXTURE_2D_ARRAY,Ce,Rt,ht.width,ht.height,Ue.depth,0,ht.data,0,0);else console.warn("THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .uploadTexture()");else kt?ue&&t.texSubImage3D(r.TEXTURE_2D_ARRAY,Ce,0,0,0,ht.width,ht.height,Ue.depth,ut,Ct,ht.data):t.texImage3D(r.TEXTURE_2D_ARRAY,Ce,Rt,ht.width,ht.height,Ue.depth,0,ut,Ct,ht.data)}else{kt&&pn&&t.texStorage2D(r.TEXTURE_2D,Ze,Rt,$t[0].width,$t[0].height);for(let Ce=0,De=$t.length;Ce<De;Ce++)ht=$t[Ce],G.format!==hi?ut!==null?kt?ue&&t.compressedTexSubImage2D(r.TEXTURE_2D,Ce,0,0,ht.width,ht.height,ut,ht.data):t.compressedTexImage2D(r.TEXTURE_2D,Ce,Rt,ht.width,ht.height,0,ht.data):console.warn("THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .uploadTexture()"):kt?ue&&t.texSubImage2D(r.TEXTURE_2D,Ce,0,0,ht.width,ht.height,ut,Ct,ht.data):t.texImage2D(r.TEXTURE_2D,Ce,Rt,ht.width,ht.height,0,ut,Ct,ht.data)}else if(G.isDataArrayTexture)if(kt){if(pn&&t.texStorage3D(r.TEXTURE_2D_ARRAY,Ze,Rt,Ue.width,Ue.height,Ue.depth),ue)if(G.layerUpdates.size>0){const Ce=tx(Ue.width,Ue.height,G.format,G.type);for(const De of G.layerUpdates){const ot=Ue.data.subarray(De*Ce/Ue.data.BYTES_PER_ELEMENT,(De+1)*Ce/Ue.data.BYTES_PER_ELEMENT);t.texSubImage3D(r.TEXTURE_2D_ARRAY,0,0,0,De,Ue.width,Ue.height,1,ut,Ct,ot)}G.clearLayerUpdates()}else t.texSubImage3D(r.TEXTURE_2D_ARRAY,0,0,0,0,Ue.width,Ue.height,Ue.depth,ut,Ct,Ue.data)}else t.texImage3D(r.TEXTURE_2D_ARRAY,0,Rt,Ue.width,Ue.height,Ue.depth,0,ut,Ct,Ue.data);else if(G.isData3DTexture)kt?(pn&&t.texStorage3D(r.TEXTURE_3D,Ze,Rt,Ue.width,Ue.height,Ue.depth),ue&&t.texSubImage3D(r.TEXTURE_3D,0,0,0,0,Ue.width,Ue.height,Ue.depth,ut,Ct,Ue.data)):t.texImage3D(r.TEXTURE_3D,0,Rt,Ue.width,Ue.height,Ue.depth,0,ut,Ct,Ue.data);else if(G.isFramebufferTexture){if(pn)if(kt)t.texStorage2D(r.TEXTURE_2D,Ze,Rt,Ue.width,Ue.height);else{let Ce=Ue.width,De=Ue.height;for(let ot=0;ot<Ze;ot++)t.texImage2D(r.TEXTURE_2D,ot,Rt,Ce,De,0,ut,Ct,null),Ce>>=1,De>>=1}}else if($t.length>0){if(kt&&pn){const Ce=$e($t[0]);t.texStorage2D(r.TEXTURE_2D,Ze,Rt,Ce.width,Ce.height)}for(let Ce=0,De=$t.length;Ce<De;Ce++)ht=$t[Ce],kt?ue&&t.texSubImage2D(r.TEXTURE_2D,Ce,0,0,ut,Ct,ht):t.texImage2D(r.TEXTURE_2D,Ce,Rt,ut,Ct,ht);G.generateMipmaps=!1}else if(kt){if(pn){const Ce=$e(Ue);t.texStorage2D(r.TEXTURE_2D,Ze,Rt,Ce.width,Ce.height)}ue&&t.texSubImage2D(r.TEXTURE_2D,0,0,0,ut,Ct,Ue)}else t.texImage2D(r.TEXTURE_2D,0,Rt,ut,Ct,Ue);A(G)&&M(ye),et.__version=be.version,G.onUpdate&&G.onUpdate(G)}J.__version=G.version}function Ae(J,G,ee){if(G.image.length!==6)return;const ye=Le(J,G),Pe=G.source;t.bindTexture(r.TEXTURE_CUBE_MAP,J.__webglTexture,r.TEXTURE0+ee);const be=n.get(Pe);if(Pe.version!==be.__version||ye===!0){t.activeTexture(r.TEXTURE0+ee);const et=yn.getPrimaries(yn.workingColorSpace),Je=G.colorSpace===Wa?null:yn.getPrimaries(G.colorSpace),Qe=G.colorSpace===Wa||et===Je?r.NONE:r.BROWSER_DEFAULT_WEBGL;r.pixelStorei(r.UNPACK_FLIP_Y_WEBGL,G.flipY),r.pixelStorei(r.UNPACK_PREMULTIPLY_ALPHA_WEBGL,G.premultiplyAlpha),r.pixelStorei(r.UNPACK_ALIGNMENT,G.unpackAlignment),r.pixelStorei(r.UNPACK_COLORSPACE_CONVERSION_WEBGL,Qe);const Ht=G.isCompressedTexture||G.image[0].isCompressedTexture,Ue=G.image[0]&&G.image[0].isDataTexture,ut=[];for(let De=0;De<6;De++)!Ht&&!Ue?ut[De]=E(G.image[De],!0,i.maxCubemapSize):ut[De]=Ue?G.image[De].image:G.image[De],ut[De]=St(G,ut[De]);const Ct=ut[0],Rt=s.convert(G.format,G.colorSpace),ht=s.convert(G.type),$t=I(G.internalFormat,Rt,ht,G.colorSpace),kt=G.isVideoTexture!==!0,pn=be.__version===void 0||ye===!0,ue=Pe.dataReady;let Ze=k(G,Ct);se(r.TEXTURE_CUBE_MAP,G);let Ce;if(Ht){kt&&pn&&t.texStorage2D(r.TEXTURE_CUBE_MAP,Ze,$t,Ct.width,Ct.height);for(let De=0;De<6;De++){Ce=ut[De].mipmaps;for(let ot=0;ot<Ce.length;ot++){const nt=Ce[ot];G.format!==hi?Rt!==null?kt?ue&&t.compressedTexSubImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+De,ot,0,0,nt.width,nt.height,Rt,nt.data):t.compressedTexImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+De,ot,$t,nt.width,nt.height,0,nt.data):console.warn("THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .setTextureCube()"):kt?ue&&t.texSubImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+De,ot,0,0,nt.width,nt.height,Rt,ht,nt.data):t.texImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+De,ot,$t,nt.width,nt.height,0,Rt,ht,nt.data)}}}else{if(Ce=G.mipmaps,kt&&pn){Ce.length>0&&Ze++;const De=$e(ut[0]);t.texStorage2D(r.TEXTURE_CUBE_MAP,Ze,$t,De.width,De.height)}for(let De=0;De<6;De++)if(Ue){kt?ue&&t.texSubImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+De,0,0,0,ut[De].width,ut[De].height,Rt,ht,ut[De].data):t.texImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+De,0,$t,ut[De].width,ut[De].height,0,Rt,ht,ut[De].data);for(let ot=0;ot<Ce.length;ot++){const Gt=Ce[ot].image[De].image;kt?ue&&t.texSubImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+De,ot+1,0,0,Gt.width,Gt.height,Rt,ht,Gt.data):t.texImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+De,ot+1,$t,Gt.width,Gt.height,0,Rt,ht,Gt.data)}}else{kt?ue&&t.texSubImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+De,0,0,0,Rt,ht,ut[De]):t.texImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+De,0,$t,Rt,ht,ut[De]);for(let ot=0;ot<Ce.length;ot++){const nt=Ce[ot];kt?ue&&t.texSubImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+De,ot+1,0,0,Rt,ht,nt.image[De]):t.texImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+De,ot+1,$t,Rt,ht,nt.image[De])}}}A(G)&&M(r.TEXTURE_CUBE_MAP),be.__version=Pe.version,G.onUpdate&&G.onUpdate(G)}J.__version=G.version}function Re(J,G,ee,ye,Pe,be){const et=s.convert(ee.format,ee.colorSpace),Je=s.convert(ee.type),Qe=I(ee.internalFormat,et,Je,ee.colorSpace),Ht=n.get(G),Ue=n.get(ee);if(Ue.__renderTarget=G,!Ht.__hasExternalTextures){const ut=Math.max(1,G.width>>be),Ct=Math.max(1,G.height>>be);Pe===r.TEXTURE_3D||Pe===r.TEXTURE_2D_ARRAY?t.texImage3D(Pe,be,Qe,ut,Ct,G.depth,0,et,Je,null):t.texImage2D(Pe,be,Qe,ut,Ct,0,et,Je,null)}t.bindFramebuffer(r.FRAMEBUFFER,J),st(G)?l.framebufferTexture2DMultisampleEXT(r.FRAMEBUFFER,ye,Pe,Ue.__webglTexture,0,Fe(G)):(Pe===r.TEXTURE_2D||Pe>=r.TEXTURE_CUBE_MAP_POSITIVE_X&&Pe<=r.TEXTURE_CUBE_MAP_NEGATIVE_Z)&&r.framebufferTexture2D(r.FRAMEBUFFER,ye,Pe,Ue.__webglTexture,be),t.bindFramebuffer(r.FRAMEBUFFER,null)}function Ie(J,G,ee){if(r.bindRenderbuffer(r.RENDERBUFFER,J),G.depthBuffer){const ye=G.depthTexture,Pe=ye&&ye.isDepthTexture?ye.type:null,be=P(G.stencilBuffer,Pe),et=G.stencilBuffer?r.DEPTH_STENCIL_ATTACHMENT:r.DEPTH_ATTACHMENT,Je=Fe(G);st(G)?l.renderbufferStorageMultisampleEXT(r.RENDERBUFFER,Je,be,G.width,G.height):ee?r.renderbufferStorageMultisample(r.RENDERBUFFER,Je,be,G.width,G.height):r.renderbufferStorage(r.RENDERBUFFER,be,G.width,G.height),r.framebufferRenderbuffer(r.FRAMEBUFFER,et,r.RENDERBUFFER,J)}else{const ye=G.textures;for(let Pe=0;Pe<ye.length;Pe++){const be=ye[Pe],et=s.convert(be.format,be.colorSpace),Je=s.convert(be.type),Qe=I(be.internalFormat,et,Je,be.colorSpace),Ht=Fe(G);ee&&st(G)===!1?r.renderbufferStorageMultisample(r.RENDERBUFFER,Ht,Qe,G.width,G.height):st(G)?l.renderbufferStorageMultisampleEXT(r.RENDERBUFFER,Ht,Qe,G.width,G.height):r.renderbufferStorage(r.RENDERBUFFER,Qe,G.width,G.height)}}r.bindRenderbuffer(r.RENDERBUFFER,null)}function Ge(J,G){if(G&&G.isWebGLCubeRenderTarget)throw new Error("Depth Texture with cube render targets is not supported");if(t.bindFramebuffer(r.FRAMEBUFFER,J),!(G.depthTexture&&G.depthTexture.isDepthTexture))throw new Error("renderTarget.depthTexture must be an instance of THREE.DepthTexture");const ye=n.get(G.depthTexture);ye.__renderTarget=G,(!ye.__webglTexture||G.depthTexture.image.width!==G.width||G.depthTexture.image.height!==G.height)&&(G.depthTexture.image.width=G.width,G.depthTexture.image.height=G.height,G.depthTexture.needsUpdate=!0),me(G.depthTexture,0);const Pe=ye.__webglTexture,be=Fe(G);if(G.depthTexture.format===Mu)st(G)?l.framebufferTexture2DMultisampleEXT(r.FRAMEBUFFER,r.DEPTH_ATTACHMENT,r.TEXTURE_2D,Pe,0,be):r.framebufferTexture2D(r.FRAMEBUFFER,r.DEPTH_ATTACHMENT,r.TEXTURE_2D,Pe,0);else if(G.depthTexture.format===Iu)st(G)?l.framebufferTexture2DMultisampleEXT(r.FRAMEBUFFER,r.DEPTH_STENCIL_ATTACHMENT,r.TEXTURE_2D,Pe,0,be):r.framebufferTexture2D(r.FRAMEBUFFER,r.DEPTH_STENCIL_ATTACHMENT,r.TEXTURE_2D,Pe,0);else throw new Error("Unknown depthTexture format")}function qe(J){const G=n.get(J),ee=J.isWebGLCubeRenderTarget===!0;if(G.__boundDepthTexture!==J.depthTexture){const ye=J.depthTexture;if(G.__depthDisposeCallback&&G.__depthDisposeCallback(),ye){const Pe=()=>{delete G.__boundDepthTexture,delete G.__depthDisposeCallback,ye.removeEventListener("dispose",Pe)};ye.addEventListener("dispose",Pe),G.__depthDisposeCallback=Pe}G.__boundDepthTexture=ye}if(J.depthTexture&&!G.__autoAllocateDepthBuffer){if(ee)throw new Error("target.depthTexture not supported in Cube render targets");Ge(G.__webglFramebuffer,J)}else if(ee){G.__webglDepthbuffer=[];for(let ye=0;ye<6;ye++)if(t.bindFramebuffer(r.FRAMEBUFFER,G.__webglFramebuffer[ye]),G.__webglDepthbuffer[ye]===void 0)G.__webglDepthbuffer[ye]=r.createRenderbuffer(),Ie(G.__webglDepthbuffer[ye],J,!1);else{const Pe=J.stencilBuffer?r.DEPTH_STENCIL_ATTACHMENT:r.DEPTH_ATTACHMENT,be=G.__webglDepthbuffer[ye];r.bindRenderbuffer(r.RENDERBUFFER,be),r.framebufferRenderbuffer(r.FRAMEBUFFER,Pe,r.RENDERBUFFER,be)}}else if(t.bindFramebuffer(r.FRAMEBUFFER,G.__webglFramebuffer),G.__webglDepthbuffer===void 0)G.__webglDepthbuffer=r.createRenderbuffer(),Ie(G.__webglDepthbuffer,J,!1);else{const ye=J.stencilBuffer?r.DEPTH_STENCIL_ATTACHMENT:r.DEPTH_ATTACHMENT,Pe=G.__webglDepthbuffer;r.bindRenderbuffer(r.RENDERBUFFER,Pe),r.framebufferRenderbuffer(r.FRAMEBUFFER,ye,r.RENDERBUFFER,Pe)}t.bindFramebuffer(r.FRAMEBUFFER,null)}function lt(J,G,ee){const ye=n.get(J);G!==void 0&&Re(ye.__webglFramebuffer,J,J.texture,r.COLOR_ATTACHMENT0,r.TEXTURE_2D,0),ee!==void 0&&qe(J)}function Pt(J){const G=J.texture,ee=n.get(J),ye=n.get(G);J.addEventListener("dispose",N);const Pe=J.textures,be=J.isWebGLCubeRenderTarget===!0,et=Pe.length>1;if(et||(ye.__webglTexture===void 0&&(ye.__webglTexture=r.createTexture()),ye.__version=G.version,o.memory.textures++),be){ee.__webglFramebuffer=[];for(let Je=0;Je<6;Je++)if(G.mipmaps&&G.mipmaps.length>0){ee.__webglFramebuffer[Je]=[];for(let Qe=0;Qe<G.mipmaps.length;Qe++)ee.__webglFramebuffer[Je][Qe]=r.createFramebuffer()}else ee.__webglFramebuffer[Je]=r.createFramebuffer()}else{if(G.mipmaps&&G.mipmaps.length>0){ee.__webglFramebuffer=[];for(let Je=0;Je<G.mipmaps.length;Je++)ee.__webglFramebuffer[Je]=r.createFramebuffer()}else ee.__webglFramebuffer=r.createFramebuffer();if(et)for(let Je=0,Qe=Pe.length;Je<Qe;Je++){const Ht=n.get(Pe[Je]);Ht.__webglTexture===void 0&&(Ht.__webglTexture=r.createTexture(),o.memory.textures++)}if(J.samples>0&&st(J)===!1){ee.__webglMultisampledFramebuffer=r.createFramebuffer(),ee.__webglColorRenderbuffer=[],t.bindFramebuffer(r.FRAMEBUFFER,ee.__webglMultisampledFramebuffer);for(let Je=0;Je<Pe.length;Je++){const Qe=Pe[Je];ee.__webglColorRenderbuffer[Je]=r.createRenderbuffer(),r.bindRenderbuffer(r.RENDERBUFFER,ee.__webglColorRenderbuffer[Je]);const Ht=s.convert(Qe.format,Qe.colorSpace),Ue=s.convert(Qe.type),ut=I(Qe.internalFormat,Ht,Ue,Qe.colorSpace,J.isXRRenderTarget===!0),Ct=Fe(J);r.renderbufferStorageMultisample(r.RENDERBUFFER,Ct,ut,J.width,J.height),r.framebufferRenderbuffer(r.FRAMEBUFFER,r.COLOR_ATTACHMENT0+Je,r.RENDERBUFFER,ee.__webglColorRenderbuffer[Je])}r.bindRenderbuffer(r.RENDERBUFFER,null),J.depthBuffer&&(ee.__webglDepthRenderbuffer=r.createRenderbuffer(),Ie(ee.__webglDepthRenderbuffer,J,!0)),t.bindFramebuffer(r.FRAMEBUFFER,null)}}if(be){t.bindTexture(r.TEXTURE_CUBE_MAP,ye.__webglTexture),se(r.TEXTURE_CUBE_MAP,G);for(let Je=0;Je<6;Je++)if(G.mipmaps&&G.mipmaps.length>0)for(let Qe=0;Qe<G.mipmaps.length;Qe++)Re(ee.__webglFramebuffer[Je][Qe],J,G,r.COLOR_ATTACHMENT0,r.TEXTURE_CUBE_MAP_POSITIVE_X+Je,Qe);else Re(ee.__webglFramebuffer[Je],J,G,r.COLOR_ATTACHMENT0,r.TEXTURE_CUBE_MAP_POSITIVE_X+Je,0);A(G)&&M(r.TEXTURE_CUBE_MAP),t.unbindTexture()}else if(et){for(let Je=0,Qe=Pe.length;Je<Qe;Je++){const Ht=Pe[Je],Ue=n.get(Ht);t.bindTexture(r.TEXTURE_2D,Ue.__webglTexture),se(r.TEXTURE_2D,Ht),Re(ee.__webglFramebuffer,J,Ht,r.COLOR_ATTACHMENT0+Je,r.TEXTURE_2D,0),A(Ht)&&M(r.TEXTURE_2D)}t.unbindTexture()}else{let Je=r.TEXTURE_2D;if((J.isWebGL3DRenderTarget||J.isWebGLArrayRenderTarget)&&(Je=J.isWebGL3DRenderTarget?r.TEXTURE_3D:r.TEXTURE_2D_ARRAY),t.bindTexture(Je,ye.__webglTexture),se(Je,G),G.mipmaps&&G.mipmaps.length>0)for(let Qe=0;Qe<G.mipmaps.length;Qe++)Re(ee.__webglFramebuffer[Qe],J,G,r.COLOR_ATTACHMENT0,Je,Qe);else Re(ee.__webglFramebuffer,J,G,r.COLOR_ATTACHMENT0,Je,0);A(G)&&M(Je),t.unbindTexture()}J.depthBuffer&&qe(J)}function Be(J){const G=J.textures;for(let ee=0,ye=G.length;ee<ye;ee++){const Pe=G[ee];if(A(Pe)){const be=T(J),et=n.get(Pe).__webglTexture;t.bindTexture(be,et),M(be),t.unbindTexture()}}}const Oe=[],K=[];function pt(J){if(J.samples>0){if(st(J)===!1){const G=J.textures,ee=J.width,ye=J.height;let Pe=r.COLOR_BUFFER_BIT;const be=J.stencilBuffer?r.DEPTH_STENCIL_ATTACHMENT:r.DEPTH_ATTACHMENT,et=n.get(J),Je=G.length>1;if(Je)for(let Qe=0;Qe<G.length;Qe++)t.bindFramebuffer(r.FRAMEBUFFER,et.__webglMultisampledFramebuffer),r.framebufferRenderbuffer(r.FRAMEBUFFER,r.COLOR_ATTACHMENT0+Qe,r.RENDERBUFFER,null),t.bindFramebuffer(r.FRAMEBUFFER,et.__webglFramebuffer),r.framebufferTexture2D(r.DRAW_FRAMEBUFFER,r.COLOR_ATTACHMENT0+Qe,r.TEXTURE_2D,null,0);t.bindFramebuffer(r.READ_FRAMEBUFFER,et.__webglMultisampledFramebuffer),t.bindFramebuffer(r.DRAW_FRAMEBUFFER,et.__webglFramebuffer);for(let Qe=0;Qe<G.length;Qe++){if(J.resolveDepthBuffer&&(J.depthBuffer&&(Pe|=r.DEPTH_BUFFER_BIT),J.stencilBuffer&&J.resolveStencilBuffer&&(Pe|=r.STENCIL_BUFFER_BIT)),Je){r.framebufferRenderbuffer(r.READ_FRAMEBUFFER,r.COLOR_ATTACHMENT0,r.RENDERBUFFER,et.__webglColorRenderbuffer[Qe]);const Ht=n.get(G[Qe]).__webglTexture;r.framebufferTexture2D(r.DRAW_FRAMEBUFFER,r.COLOR_ATTACHMENT0,r.TEXTURE_2D,Ht,0)}r.blitFramebuffer(0,0,ee,ye,0,0,ee,ye,Pe,r.NEAREST),u===!0&&(Oe.length=0,K.length=0,Oe.push(r.COLOR_ATTACHMENT0+Qe),J.depthBuffer&&J.resolveDepthBuffer===!1&&(Oe.push(be),K.push(be),r.invalidateFramebuffer(r.DRAW_FRAMEBUFFER,K)),r.invalidateFramebuffer(r.READ_FRAMEBUFFER,Oe))}if(t.bindFramebuffer(r.READ_FRAMEBUFFER,null),t.bindFramebuffer(r.DRAW_FRAMEBUFFER,null),Je)for(let Qe=0;Qe<G.length;Qe++){t.bindFramebuffer(r.FRAMEBUFFER,et.__webglMultisampledFramebuffer),r.framebufferRenderbuffer(r.FRAMEBUFFER,r.COLOR_ATTACHMENT0+Qe,r.RENDERBUFFER,et.__webglColorRenderbuffer[Qe]);const Ht=n.get(G[Qe]).__webglTexture;t.bindFramebuffer(r.FRAMEBUFFER,et.__webglFramebuffer),r.framebufferTexture2D(r.DRAW_FRAMEBUFFER,r.COLOR_ATTACHMENT0+Qe,r.TEXTURE_2D,Ht,0)}t.bindFramebuffer(r.DRAW_FRAMEBUFFER,et.__webglMultisampledFramebuffer)}else if(J.depthBuffer&&J.resolveDepthBuffer===!1&&u){const G=J.stencilBuffer?r.DEPTH_STENCIL_ATTACHMENT:r.DEPTH_ATTACHMENT;r.invalidateFramebuffer(r.DRAW_FRAMEBUFFER,[G])}}}function Fe(J){return Math.min(i.maxSamples,J.samples)}function st(J){const G=n.get(J);return J.samples>0&&e.has("WEBGL_multisampled_render_to_texture")===!0&&G.__useRenderToTexture!==!1}function Ve(J){const G=o.render.frame;p.get(J)!==G&&(p.set(J,G),J.update())}function St(J,G){const ee=J.colorSpace,ye=J.format,Pe=J.type;return J.isCompressedTexture===!0||J.isVideoTexture===!0||ee!==Pu&&ee!==Wa&&(yn.getTransfer(ee)===Cn?(ye!==hi||Pe!==Mo)&&console.warn("THREE.WebGLTextures: sRGB encoded textures have to use RGBAFormat and UnsignedByteType."):console.error("THREE.WebGLTextures: Unsupported texture color space:",ee)),G}function $e(J){return typeof HTMLImageElement<"u"&&J instanceof HTMLImageElement?(d.width=J.naturalWidth||J.width,d.height=J.naturalHeight||J.height):typeof VideoFrame<"u"&&J instanceof VideoFrame?(d.width=J.displayWidth,d.height=J.displayHeight):(d.width=J.width,d.height=J.height),d}this.allocateTextureUnit=ne,this.resetTextureUnits=te,this.setTexture2D=me,this.setTexture2DArray=he,this.setTexture3D=ge,this.setTextureCube=U,this.rebindTextures=lt,this.setupRenderTarget=Pt,this.updateRenderTargetMipmap=Be,this.updateMultisampleRenderTarget=pt,this.setupDepthRenderbuffer=qe,this.setupFrameBufferTexture=Re,this.useMultisampledRTT=st}function tT(r,e){function t(n,i=Wa){let s;const o=yn.getTransfer(i);if(n===Mo)return r.UNSIGNED_BYTE;if(n===Fy)return r.UNSIGNED_SHORT_4_4_4_4;if(n===ky)return r.UNSIGNED_SHORT_5_5_5_1;if(n===Gx)return r.UNSIGNED_INT_5_9_9_9_REV;if(n===zx)return r.BYTE;if(n===Hx)return r.SHORT;if(n===Dd)return r.UNSIGNED_SHORT;if(n===Ny)return r.INT;if(n===tl)return r.UNSIGNED_INT;if(n===Di)return r.FLOAT;if(n===ju)return r.HALF_FLOAT;if(n===Vx)return r.ALPHA;if(n===Wx)return r.RGB;if(n===hi)return r.RGBA;if(n===Xx)return r.LUMINANCE;if(n===Jx)return r.LUMINANCE_ALPHA;if(n===Mu)return r.DEPTH_COMPONENT;if(n===Iu)return r.DEPTH_STENCIL;if(n===Uy)return r.RED;if(n===nm)return r.RED_INTEGER;if(n===$x)return r.RG;if(n===jy)return r.RG_INTEGER;if(n===zy)return r.RGBA_INTEGER;if(n===Ap||n===Ep||n===bp||n===Cp)if(o===Cn)if(s=e.get("WEBGL_compressed_texture_s3tc_srgb"),s!==null){if(n===Ap)return s.COMPRESSED_SRGB_S3TC_DXT1_EXT;if(n===Ep)return s.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT;if(n===bp)return s.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT;if(n===Cp)return s.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT}else return null;else if(s=e.get("WEBGL_compressed_texture_s3tc"),s!==null){if(n===Ap)return s.COMPRESSED_RGB_S3TC_DXT1_EXT;if(n===Ep)return s.COMPRESSED_RGBA_S3TC_DXT1_EXT;if(n===bp)return s.COMPRESSED_RGBA_S3TC_DXT3_EXT;if(n===Cp)return s.COMPRESSED_RGBA_S3TC_DXT5_EXT}else return null;if(n===Fg||n===kg||n===Ug||n===jg)if(s=e.get("WEBGL_compressed_texture_pvrtc"),s!==null){if(n===Fg)return s.COMPRESSED_RGB_PVRTC_4BPPV1_IMG;if(n===kg)return s.COMPRESSED_RGB_PVRTC_2BPPV1_IMG;if(n===Ug)return s.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;if(n===jg)return s.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG}else return null;if(n===zg||n===Hg||n===Gg)if(s=e.get("WEBGL_compressed_texture_etc"),s!==null){if(n===zg||n===Hg)return o===Cn?s.COMPRESSED_SRGB8_ETC2:s.COMPRESSED_RGB8_ETC2;if(n===Gg)return o===Cn?s.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC:s.COMPRESSED_RGBA8_ETC2_EAC}else return null;if(n===Vg||n===Wg||n===Xg||n===Jg||n===$g||n===Kg||n===Yg||n===qg||n===Qg||n===Zg||n===ey||n===ty||n===ny||n===ry)if(s=e.get("WEBGL_compressed_texture_astc"),s!==null){if(n===Vg)return o===Cn?s.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR:s.COMPRESSED_RGBA_ASTC_4x4_KHR;if(n===Wg)return o===Cn?s.COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR:s.COMPRESSED_RGBA_ASTC_5x4_KHR;if(n===Xg)return o===Cn?s.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR:s.COMPRESSED_RGBA_ASTC_5x5_KHR;if(n===Jg)return o===Cn?s.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR:s.COMPRESSED_RGBA_ASTC_6x5_KHR;if(n===$g)return o===Cn?s.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR:s.COMPRESSED_RGBA_ASTC_6x6_KHR;if(n===Kg)return o===Cn?s.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR:s.COMPRESSED_RGBA_ASTC_8x5_KHR;if(n===Yg)return o===Cn?s.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR:s.COMPRESSED_RGBA_ASTC_8x6_KHR;if(n===qg)return o===Cn?s.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR:s.COMPRESSED_RGBA_ASTC_8x8_KHR;if(n===Qg)return o===Cn?s.COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR:s.COMPRESSED_RGBA_ASTC_10x5_KHR;if(n===Zg)return o===Cn?s.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR:s.COMPRESSED_RGBA_ASTC_10x6_KHR;if(n===ey)return o===Cn?s.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR:s.COMPRESSED_RGBA_ASTC_10x8_KHR;if(n===ty)return o===Cn?s.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR:s.COMPRESSED_RGBA_ASTC_10x10_KHR;if(n===ny)return o===Cn?s.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR:s.COMPRESSED_RGBA_ASTC_12x10_KHR;if(n===ry)return o===Cn?s.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR:s.COMPRESSED_RGBA_ASTC_12x12_KHR}else return null;if(n===Tp||n===iy||n===sy)if(s=e.get("EXT_texture_compression_bptc"),s!==null){if(n===Tp)return o===Cn?s.COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT:s.COMPRESSED_RGBA_BPTC_UNORM_EXT;if(n===iy)return s.COMPRESSED_RGB_BPTC_SIGNED_FLOAT_EXT;if(n===sy)return s.COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_EXT}else return null;if(n===Kx||n===oy||n===ay||n===ly)if(s=e.get("EXT_texture_compression_rgtc"),s!==null){if(n===Tp)return s.COMPRESSED_RED_RGTC1_EXT;if(n===oy)return s.COMPRESSED_SIGNED_RED_RGTC1_EXT;if(n===ay)return s.COMPRESSED_RED_GREEN_RGTC2_EXT;if(n===ly)return s.COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT}else return null;return n===Tu?r.UNSIGNED_INT_24_8:r[n]!==void 0?r[n]:null}return{convert:t}}const D6={type:"move"};class Vv{constructor(){this._targetRay=null,this._grip=null,this._hand=null}getHandSpace(){return this._hand===null&&(this._hand=new $a,this._hand.matrixAutoUpdate=!1,this._hand.visible=!1,this._hand.joints={},this._hand.inputState={pinching:!1}),this._hand}getTargetRaySpace(){return this._targetRay===null&&(this._targetRay=new $a,this._targetRay.matrixAutoUpdate=!1,this._targetRay.visible=!1,this._targetRay.hasLinearVelocity=!1,this._targetRay.linearVelocity=new $,this._targetRay.hasAngularVelocity=!1,this._targetRay.angularVelocity=new $),this._targetRay}getGripSpace(){return this._grip===null&&(this._grip=new $a,this._grip.matrixAutoUpdate=!1,this._grip.visible=!1,this._grip.hasLinearVelocity=!1,this._grip.linearVelocity=new $,this._grip.hasAngularVelocity=!1,this._grip.angularVelocity=new $),this._grip}dispatchEvent(e){return this._targetRay!==null&&this._targetRay.dispatchEvent(e),this._grip!==null&&this._grip.dispatchEvent(e),this._hand!==null&&this._hand.dispatchEvent(e),this}connect(e){if(e&&e.hand){const t=this._hand;if(t)for(const n of e.hand.values())this._getHandJoint(t,n)}return this.dispatchEvent({type:"connected",data:e}),this}disconnect(e){return this.dispatchEvent({type:"disconnected",data:e}),this._targetRay!==null&&(this._targetRay.visible=!1),this._grip!==null&&(this._grip.visible=!1),this._hand!==null&&(this._hand.visible=!1),this}update(e,t,n){let i=null,s=null,o=null;const l=this._targetRay,u=this._grip,d=this._hand;if(e&&t.session.visibilityState!=="visible-blurred"){if(d&&e.hand){o=!0;for(const E of e.hand.values()){const A=t.getJointPose(E,n),M=this._getHandJoint(d,E);A!==null&&(M.matrix.fromArray(A.transform.matrix),M.matrix.decompose(M.position,M.rotation,M.scale),M.matrixWorldNeedsUpdate=!0,M.jointRadius=A.radius),M.visible=A!==null}const p=d.joints["index-finger-tip"],m=d.joints["thumb-tip"],y=p.position.distanceTo(m.position),v=.02,S=.005;d.inputState.pinching&&y>v+S?(d.inputState.pinching=!1,this.dispatchEvent({type:"pinchend",handedness:e.handedness,target:this})):!d.inputState.pinching&&y<=v-S&&(d.inputState.pinching=!0,this.dispatchEvent({type:"pinchstart",handedness:e.handedness,target:this}))}else u!==null&&e.gripSpace&&(s=t.getPose(e.gripSpace,n),s!==null&&(u.matrix.fromArray(s.transform.matrix),u.matrix.decompose(u.position,u.rotation,u.scale),u.matrixWorldNeedsUpdate=!0,s.linearVelocity?(u.hasLinearVelocity=!0,u.linearVelocity.copy(s.linearVelocity)):u.hasLinearVelocity=!1,s.angularVelocity?(u.hasAngularVelocity=!0,u.angularVelocity.copy(s.angularVelocity)):u.hasAngularVelocity=!1));l!==null&&(i=t.getPose(e.targetRaySpace,n),i===null&&s!==null&&(i=s),i!==null&&(l.matrix.fromArray(i.transform.matrix),l.matrix.decompose(l.position,l.rotation,l.scale),l.matrixWorldNeedsUpdate=!0,i.linearVelocity?(l.hasLinearVelocity=!0,l.linearVelocity.copy(i.linearVelocity)):l.hasLinearVelocity=!1,i.angularVelocity?(l.hasAngularVelocity=!0,l.angularVelocity.copy(i.angularVelocity)):l.hasAngularVelocity=!1,this.dispatchEvent(D6)))}return l!==null&&(l.visible=i!==null),u!==null&&(u.visible=s!==null),d!==null&&(d.visible=o!==null),this}_getHandJoint(e,t){if(e.joints[t.jointName]===void 0){const n=new $a;n.matrixAutoUpdate=!1,n.visible=!1,e.joints[t.jointName]=n,e.add(n)}return e.joints[t.jointName]}}const L6=`
3848void main() {
3849
3850	gl_Position = vec4( position, 1.0 );
3851
3852}`,N6=`
3853uniform sampler2DArray depthColor;
3854uniform float depthWidth;
3855uniform float depthHeight;
3856
3857void main() {
3858
3859	vec2 coord = vec2( gl_FragCoord.x / depthWidth, gl_FragCoord.y / depthHeight );
3860
3861	if ( coord.x >= 1.0 ) {
3862
3863		gl_FragDepth = texture( depthColor, vec3( coord.x - 1.0, coord.y, 1 ) ).r;
3864
3865	} else {
3866
3867		gl_FragDepth = texture( depthColor, vec3( coord.x, coord.y, 0 ) ).r;
3868
3869	}
3870
3871}`;class F6{constructor(){this.texture=null,this.mesh=null,this.depthNear=0,this.depthFar=0}init(e,t,n){if(this.texture===null){const i=new Gn,s=e.properties.get(i);s.__webglTexture=t.texture,(t.depthNear!=n.depthNear||t.depthFar!=n.depthFar)&&(this.depthNear=t.depthNear,this.depthFar=t.depthFar),this.texture=i}}getMesh(e){if(this.texture!==null&&this.mesh===null){const t=e.cameras[0].viewport,n=new So({vertexShader:L6,fragmentShader:N6,uniforms:{depthColor:{value:this.texture},depthWidth:{value:t.z},depthHeight:{value:t.w}}});this.mesh=new hr(new Jd(20,20),n)}return this.mesh}reset(){this.texture=null,this.mesh=null}getDepthTexture(){return this.texture}}class k6 extends ta{constructor(e,t){super();const n=this;let i=null,s=1,o=null,l="local-floor",u=1,d=null,p=null,m=null,y=null,v=null,S=null;const E=new F6,A=t.getContextAttributes();let M=null,T=null;const I=[],P=[],k=new Ne;let O=null;const N=new _r;N.viewport=new xn;const H=new _r;H.viewport=new xn;const F=[N,H],L=new VC;let V=null,te=null;this.cameraAutoUpdate=!0,this.enabled=!1,this.isPresenting=!1,this.getController=function(pe){let Ae=I[pe];return Ae===void 0&&(Ae=new Vv,I[pe]=Ae),Ae.getTargetRaySpace()},this.getControllerGrip=function(pe){let Ae=I[pe];return Ae===void 0&&(Ae=new Vv,I[pe]=Ae),Ae.getGripSpace()},this.getHand=function(pe){let Ae=I[pe];return Ae===void 0&&(Ae=new Vv,I[pe]=Ae),Ae.getHandSpace()};function ne(pe){const Ae=P.indexOf(pe.inputSource);if(Ae===-1)return;const Re=I[Ae];Re!==void 0&&(Re.update(pe.inputSource,pe.frame,d||o),Re.dispatchEvent({type:pe.type,data:pe.inputSource}))}function ce(){i.removeEventListener("select",ne),i.removeEventListener("selectstart",ne),i.removeEventListener("selectend",ne),i.removeEventListener("squeeze",ne),i.removeEventListener("squeezestart",ne),i.removeEventListener("squeezeend",ne),i.removeEventListener("end",ce),i.removeEventListener("inputsourceschange",me);for(let pe=0;pe<I.length;pe++){const Ae=P[pe];Ae!==null&&(P[pe]=null,I[pe].disconnect(Ae))}V=null,te=null,E.reset(),e.setRenderTarget(M),v=null,y=null,m=null,i=null,T=null,Le.stop(),n.isPresenting=!1,e.setPixelRatio(O),e.setSize(k.width,k.height,!1),n.dispatchEvent({type:"sessionend"})}this.setFramebufferScaleFactor=function(pe){s=pe,n.isPresenting===!0&&console.warn("THREE.WebXRManager: Cannot change framebuffer scale while presenting.")},this.setReferenceSpaceType=function(pe){l=pe,n.isPresenting===!0&&console.warn("THREE.WebXRManager: Cannot change reference space type while presenting.")},this.getReferenceSpace=function(){return d||o},this.setReferenceSpace=function(pe){d=pe},this.getBaseLayer=function(){return y!==null?y:v},this.getBinding=function(){return m},this.getFrame=function(){return S}
vendor: 6,553 bytes, line 3871
3871,this.getSession=function(){return i},this.setSession=async function(pe){if(i=pe,i!==null){if(M=e.getRenderTarget(),i.addEventListener("select",ne),i.addEventListener("selectstart",ne),i.addEventListener("selectend",ne),i.addEventListener("squeeze",ne),i.addEventListener("squeezestart",ne),i.addEventListener("squeezeend",ne),i.addEventListener("end",ce),i.addEventListener("inputsourceschange",me),A.xrCompatible!==!0&&await t.makeXRCompatible(),O=e.getPixelRatio(),e.getSize(k),i.renderState.layers===void 0){const Ae={antialias:A.antialias,alpha:!0,depth:A.depth,stencil:A.stencil,framebufferScaleFactor:s};v=new XRWebGLLayer(i,t,Ae),i.updateRenderState({baseLayer:v}),e.setPixelRatio(1),e.setSize(v.framebufferWidth,v.framebufferHeight,!1),T=new Hs(v.framebufferWidth,v.framebufferHeight,{format:hi,type:Mo,colorSpace:e.outputColorSpace,stencilBuffer:A.stencil})}else{let Ae=null,Re=null,Ie=null;A.depth&&(Ie=A.stencil?t.DEPTH24_STENCIL8:t.DEPTH_COMPONENT24,Ae=A.stencil?Iu:Mu,Re=A.stencil?Tu:tl);const Ge={colorFormat:t.RGBA8,depthFormat:Ie,scaleFactor:s};m=new XRWebGLBinding(i,t),y=m.createProjectionLayer(Ge),i.updateRenderState({layers:[y]}),e.setPixelRatio(1),e.setSize(y.textureWidth,y.textureHeight,!1),T=new Hs(y.textureWidth,y.textureHeight,{format:hi,type:Mo,depthTexture:new Ky(y.textureWidth,y.textureHeight,Re,void 0,void 0,void 0,void 0,void 0,void 0,Ae),stencilBuffer:A.stencil,colorSpace:e.outputColorSpace,samples:A.antialias?4:0,resolveDepthBuffer:y.ignoreDepthValues===!1})}T.isXRRenderTarget=!0,this.setFoveation(u),d=null,o=await i.requestReferenceSpace(l),Le.setContext(i),Le.start(),n.isPresenting=!0,n.dispatchEvent({type:"sessionstart"})}},this.getEnvironmentBlendMode=function(){if(i!==null)return i.environmentBlendMode},this.getDepthTexture=function(){return E.getDepthTexture()};function me(pe){for(let Ae=0;Ae<pe.removed.length;Ae++){const Re=pe.removed[Ae],Ie=P.indexOf(Re);Ie>=0&&(P[Ie]=null,I[Ie].disconnect(Re))}for(let Ae=0;Ae<pe.added.length;Ae++){const Re=pe.added[Ae];let Ie=P.indexOf(Re);if(Ie===-1){for(let qe=0;qe<I.length;qe++)if(qe>=P.length){P.push(Re),Ie=qe;break}else if(P[qe]===null){P[qe]=Re,Ie=qe;break}if(Ie===-1)break}const Ge=I[Ie];Ge&&Ge.connect(Re)}}const he=new $,ge=new $;function U(pe,Ae,Re){he.setFromMatrixPosition(Ae.matrixWorld),ge.setFromMatrixPosition(Re.matrixWorld);const Ie=he.distanceTo(ge),Ge=Ae.projectionMatrix.elements,qe=Re.projectionMatrix.elements,lt=Ge[14]/(Ge[10]-1),Pt=Ge[14]/(Ge[10]+1),Be=(Ge[9]+1)/Ge[5],Oe=(Ge[9]-1)/Ge[5],K=(Ge[8]-1)/Ge[0],pt=(qe[8]+1)/qe[0],Fe=lt*K,st=lt*pt,Ve=Ie/(-K+pt),St=Ve*-K;if(Ae.matrixWorld.decompose(pe.position,pe.quaternion,pe.scale),pe.translateX(St),pe.translateZ(Ve),pe.matrixWorld.compose(pe.position,pe.quaternion,pe.scale),pe.matrixWorldInverse.copy(pe.matrixWorld).invert(),Ge[10]===-1)pe.projectionMatrix.copy(Ae.projectionMatrix),pe.projectionMatrixInverse.copy(Ae.projectionMatrixInverse);else{const $e=lt+Ve,J=Pt+Ve,G=Fe-St,ee=st+(Ie-St),ye=Be*Pt/J*$e,Pe=Oe*Pt/J*$e;pe.projectionMatrix.makePerspective(G,ee,ye,Pe,$e,J),pe.projectionMatrixInverse.copy(pe.projectionMatrix).invert()}}function Z(pe,Ae){Ae===null?pe.matrixWorld.copy(pe.matrix):pe.matrixWorld.multiplyMatrices(Ae.matrixWorld,pe.matrix),pe.matrixWorldInverse.copy(pe.matrixWorld).invert()}this.updateCamera=function(pe){if(i===null)return;let Ae=pe.near,Re=pe.far;E.texture!==null&&(E.depthNear>0&&(Ae=E.depthNear),E.depthFar>0&&(Re=E.depthFar)),L.near=H.near=N.near=Ae,L.far=H.far=N.far=Re,(V!==L.near||te!==L.far)&&(i.updateRenderState({depthNear:L.near,depthFar:L.far}),V=L.near,te=L.far),N.layers.mask=pe.layers.mask|2,H.layers.mask=pe.layers.mask|4,L.layers.mask=N.layers.mask|H.layers.mask;const Ie=pe.parent,Ge=L.cameras;Z(L,Ie);for(let qe=0;qe<Ge.length;qe++)Z(Ge[qe],Ie);Ge.length===2?U(L,N,H):L.projectionMatrix.copy(N.projectionMatrix),q(pe,L,Ie)};function q(pe,Ae,Re){Re===null?pe.matrix.copy(Ae.matrixWorld):(pe.matrix.copy(Re.matrixWorld),pe.matrix.invert(),pe.matrix.multiply(Ae.matrixWorld)),pe.matrix.decompose(pe.position,pe.quaternion,pe.scale),pe.updateMatrixWorld(!0),pe.projectionMatrix.copy(Ae.projectionMatrix),pe.projectionMatrixInverse.copy(Ae.projectionMatrixInverse),pe.isPerspectiveCamera&&(pe.fov=Fd*2*Math.atan(1/pe.projectionMatrix.elements[5]),pe.zoom=1)}this.getCamera=function(){return L},this.getFoveation=function(){if(!(y===null&&v===null))return u},this.setFoveation=function(pe){u=pe,y!==null&&(y.fixedFoveation=pe),v!==null&&v.fixedFoveation!==void 0&&(v.fixedFoveation=pe)},this.hasDepthSensing=function(){return E.texture!==null},this.getDepthSensingMesh=function(){return E.getMesh(L)};let X=null;function se(pe,Ae){if(p=Ae.getViewerPose(d||o),S=Ae,p!==null){const Re=p.views;v!==null&&(e.setRenderTargetFramebuffer(T,v.framebuffer),e.setRenderTarget(T));let Ie=!1;Re.length!==L.cameras.length&&(L.cameras.length=0,Ie=!0);for(let qe=0;qe<Re.length;qe++){const lt=Re[qe];let Pt=null;if(v!==null)Pt=v.getViewport(lt);else{const Oe=m.getViewSubImage(y,lt);Pt=Oe.viewport,qe===0&&(e.setRenderTargetTextures(T,Oe.colorTexture,y.ignoreDepthValues?void 0:Oe.depthStencilTexture),e.setRenderTarget(T))}let Be=F[qe];Be===void 0&&(Be=new _r,Be.layers.enable(qe),Be.viewport=new xn,F[qe]=Be),Be.matrix.fromArray(lt.transform.matrix),Be.matrix.decompose(Be.position,Be.quaternion,Be.scale),Be.projectionMatrix.fromArray(lt.projectionMatrix),Be.projectionMatrixInverse.copy(Be.projectionMatrix).invert(),Be.viewport.set(Pt.x,Pt.y,Pt.width,Pt.height),qe===0&&(L.matrix.copy(Be.matrix),L.matrix.decompose(L.position,L.quaternion,L.scale)),Ie===!0&&L.cameras.push(Be)}const Ge=i.enabledFeatures;if(Ge&&Ge.includes("depth-sensing")){const qe=m.getDepthInformation(Re[0]);qe&&qe.isValid&&qe.texture&&E.init(e,qe,i.renderState)}}for(let Re=0;Re<I.length;Re++){const Ie=P[Re],Ge=I[Re];Ie!==null&&Ge!==void 0&&Ge.update(Ie,Ae,d||o)}X&&X(pe,Ae),Ae.detectedPlanes&&n.dispatchEvent({type:"planesdetected",data:Ae}),S=null}const Le=new YC;Le.setAnimationLoop(se),this.setAnimationLoop=function(pe){X=pe},this.dispose=function(){}}}const lu=new Ms,U6=new Nt;function j6(r,e){function t(A,M){A.matrixAutoUpdate===!0&&A.updateMatrix(),M.value.copy(A.matrix)}function n(A,M){M.color.getRGB(A.fogColor.value,iC(r)),M.isFog?(A.fogNear.value=M.near,A.fogFar.value=M.far):M.isFogExp2&&(A.fogDensity.value=M.density)}function i(A,M,T,I,P){M.isMeshBasicMaterial||M.isMeshLambertMaterial?s(A,M):M.isMeshToonMaterial?(s(A,M),m(A,M)):M.isMeshPhongMaterial?(s(A,M),p(A,M)):M.isMeshStandardMaterial?(s(A,M),y(A,M),M.isMeshPhysicalMaterial&&v(A,M,P)):M.isMeshMat
vendor: 42,018 bytes, line 3871
3871capMaterial?(s(A,M),S(A,M)):M.isMeshDepthMaterial?s(A,M):M.isMeshDistanceMaterial?(s(A,M),E(A,M)):M.isMeshNormalMaterial?s(A,M):M.isLineBasicMaterial?(o(A,M),M.isLineDashedMaterial&&l(A,M)):M.isPointsMaterial?u(A,M,T,I):M.isSpriteMaterial?d(A,M):M.isShadowMaterial?(A.color.value.copy(M.color),A.opacity.value=M.opacity):M.isShaderMaterial&&(M.uniformsNeedUpdate=!1)}function s(A,M){A.opacity.value=M.opacity,M.color&&A.diffuse.value.copy(M.color),M.emissive&&A.emissive.value.copy(M.emissive).multiplyScalar(M.emissiveIntensity),M.map&&(A.map.value=M.map,t(M.map,A.mapTransform)),M.alphaMap&&(A.alphaMap.value=M.alphaMap,t(M.alphaMap,A.alphaMapTransform)),M.bumpMap&&(A.bumpMap.value=M.bumpMap,t(M.bumpMap,A.bumpMapTransform),A.bumpScale.value=M.bumpScale,M.side===Ni&&(A.bumpScale.value*=-1)),M.normalMap&&(A.normalMap.value=M.normalMap,t(M.normalMap,A.normalMapTransform),A.normalScale.value.copy(M.normalScale),M.side===Ni&&A.normalScale.value.negate()),M.displacementMap&&(A.displacementMap.value=M.displacementMap,t(M.displacementMap,A.displacementMapTransform),A.displacementScale.value=M.displacementScale,A.displacementBias.value=M.displacementBias),M.emissiveMap&&(A.emissiveMap.value=M.emissiveMap,t(M.emissiveMap,A.emissiveMapTransform)),M.specularMap&&(A.specularMap.value=M.specularMap,t(M.specularMap,A.specularMapTransform)),M.alphaTest>0&&(A.alphaTest.value=M.alphaTest);const T=e.get(M),I=T.envMap,P=T.envMapRotation;I&&(A.envMap.value=I,lu.copy(P),lu.x*=-1,lu.y*=-1,lu.z*=-1,I.isCubeTexture&&I.isRenderTargetTexture===!1&&(lu.y*=-1,lu.z*=-1),A.envMapRotation.value.setFromMatrix4(U6.makeRotationFromEuler(lu)),A.flipEnvMap.value=I.isCubeTexture&&I.isRenderTargetTexture===!1?-1:1,A.reflectivity.value=M.reflectivity,A.ior.value=M.ior,A.refractionRatio.value=M.refractionRatio),M.lightMap&&(A.lightMap.value=M.lightMap,A.lightMapIntensity.value=M.lightMapIntensity,t(M.lightMap,A.lightMapTransform)),M.aoMap&&(A.aoMap.value=M.aoMap,A.aoMapIntensity.value=M.aoMapIntensity,t(M.aoMap,A.aoMapTransform))}function o(A,M){A.diffuse.value.copy(M.color),A.opacity.value=M.opacity,M.map&&(A.map.value=M.map,t(M.map,A.mapTransform))}function l(A,M){A.dashSize.value=M.dashSize,A.totalSize.value=M.dashSize+M.gapSize,A.scale.value=M.scale}function u(A,M,T,I){A.diffuse.value.copy(M.color),A.opacity.value=M.opacity,A.size.value=M.size*T,A.scale.value=I*.5,M.map&&(A.map.value=M.map,t(M.map,A.uvTransform)),M.alphaMap&&(A.alphaMap.value=M.alphaMap,t(M.alphaMap,A.alphaMapTransform)),M.alphaTest>0&&(A.alphaTest.value=M.alphaTest)}function d(A,M){A.diffuse.value.copy(M.color),A.opacity.value=M.opacity,A.rotation.value=M.rotation,M.map&&(A.map.value=M.map,t(M.map,A.mapTransform)),M.alphaMap&&(A.alphaMap.value=M.alphaMap,t(M.alphaMap,A.alphaMapTransform)),M.alphaTest>0&&(A.alphaTest.value=M.alphaTest)}function p(A,M){A.specular.value.copy(M.specular),A.shininess.value=Math.max(M.shininess,1e-4)}function m(A,M){M.gradientMap&&(A.gradientMap.value=M.gradientMap)}function y(A,M){A.metalness.value=M.metalness,M.metalnessMap&&(A.metalnessMap.value=M.metalnessMap,t(M.metalnessMap,A.metalnessMapTransform)),A.roughness.value=M.roughness,M.roughnessMap&&(A.roughnessMap.value=M.roughnessMap,t(M.roughnessMap,A.roughnessMapTransform)),M.envMap&&(A.envMapIntensity.value=M.envMapIntensity)}function v(A,M,T){A.ior.value=M.ior,M.sheen>0&&(A.sheenColor.value.copy(M.sheenColor).multiplyScalar(M.sheen),A.sheenRoughness.value=M.sheenRoughness,M.sheenColorMap&&(A.sheenColorMap.value=M.sheenColorMap,t(M.sheenColorMap,A.sheenColorMapTransform)),M.sheenRoughnessMap&&(A.sheenRoughnessMap.value=M.sheenRoughnessMap,t(M.sheenRoughnessMap,A.sheenRoughnessMapTransform))),M.clearcoat>0&&(A.clearcoat.value=M.clearcoat,A.clearcoatRoughness.value=M.clearcoatRoughness,M.clearcoatMap&&(A.clearcoatMap.value=M.clearcoatMap,t(M.clearcoatMap,A.clearcoatMapTransform)),M.clearcoatRoughnessMap&&(A.clearcoatRoughnessMap.value=M.clearcoatRoughnessMap,t(M.clearcoatRoughnessMap,A.clearcoatRoughnessMapTransform)),M.clearcoatNormalMap&&(A.clearcoatNormalMap.value=M.clearcoatNormalMap,t(M.clearcoatNormalMap,A.clearcoatNormalMapTransform),A.clearcoatNormalScale.value.copy(M.clearcoatNormalScale),M.side===Ni&&A.clearcoatNormalScale.value.negate())),M.dispersion>0&&(A.dispersion.value=M.dispersion),M.iridescence>0&&(A.iridescence.value=M.iridescence,A.iridescenceIOR.value=M.iridescenceIOR,A.iridescenceThicknessMinimum.value=M.iridescenceThicknessRange[0],A.iridescenceThicknessMaximum.value=M.iridescenceThicknessRange[1],M.iridescenceMap&&(A.iridescenceMap.value=M.iridescenceMap,t(M.iridescenceMap,A.iridescenceMapTransform)),M.iridescenceThicknessMap&&(A.iridescenceThicknessMap.value=M.iridescenceThicknessMap,t(M.iridescenceThicknessMap,A.iridescenceThicknessMapTransform))),M.transmission>0&&(A.transmission.value=M.transmission,A.transmissionSamplerMap.value=T.texture,A.transmissionSamplerSize.value.set(T.width,T.height),M.transmissionMap&&(A.transmissionMap.value=M.transmissionMap,t(M.transmissionMap,A.transmissionMapTransform)),A.thickness.value=M.thickness,M.thicknessMap&&(A.thicknessMap.value=M.thicknessMap,t(M.thicknessMap,A.thicknessMapTransform)),A.attenuationDistance.value=M.attenuationDistance,A.attenuationColor.value.copy(M.attenuationColor)),M.anisotropy>0&&(A.anisotropyVector.value.set(M.anisotropy*Math.cos(M.anisotropyRotation),M.anisotropy*Math.sin(M.anisotropyRotation)),M.anisotropyMap&&(A.anisotropyMap.value=M.anisotropyMap,t(M.anisotropyMap,A.anisotropyMapTransform))),A.specularIntensity.value=M.specularIntensity,A.specularColor.value.copy(M.specularColor),M.specularColorMap&&(A.specularColorMap.value=M.specularColorMap,t(M.specularColorMap,A.specularColorMapTransform)),M.specularIntensityMap&&(A.specularIntensityMap.value=M.specularIntensityMap,t(M.specularIntensityMap,A.specularIntensityMapTransform))}function S(A,M){M.matcap&&(A.matcap.value=M.matcap)}function E(A,M){const T=e.get(M).light;A.referencePosition.value.setFromMatrixPosition(T.matrixWorld),A.nearDistance.value=T.shadow.camera.near,A.farDistance.value=T.shadow.camera.far}return{refreshFogUniforms:n,refreshMaterialUniforms:i}}function z6(r,e,t,n){let i={},s={},o=[];const l=r.getParameter(r.MAX_UNIFORM_BUFFER_BINDINGS);function u(T,I){const P=I.program;n.uniformBlockBinding(T,P)}function d(T,I){let P=i[T.id];P===void 0&&(S(T),P=p(T),i[T.id]=P,T.addEventListener("dispose",A));const k=I.program;n.updateUBOMapping(T,k);const O=e.render.frame;s[T.id]!==O&&(y(T),s[T.id]=O)}function p(T){const I=m();T.__bindingPointIndex=I;const P=r.createBuffer(),k=T.__size,O=T.usage;return r.bindBuffer(r.UNIFORM_BUFFER,P),r.bufferData(r.UNIFORM_BUFFER,k,O),r.bindBuffer(r.UNIFORM_BUFFER,null),r.bindBufferBase(r.UNIFORM_BUFFER,I,P),P}function m(){for(let T=0;T<l;T++)if(o.indexOf(T)===-1)return o.push(T),T;return console.error("THREE.WebGLRenderer: Maximum number of simultaneously usable uniforms groups reached."),0}function y(T){const I=i[T.id],P=T.uniforms,k=T.__cache;r.bindBuffer(r.UNIFORM_BUFFER,I);for(let O=0,N=P.length;O<N;O++){const H=Array.isArray(P[O])?P[O]:[P[O]];for(let F=0,L=H.length;F<L;F++){const V=H[F];if(v(V,O,F,k)===!0){const te=V.__offset,ne=Array.isArray(V.value)?V.value:[V.value];let ce=0;for(let me=0;me<ne.length;me++){const he=ne[me],ge=E(he);typeof he=="number"||typeof he=="boolean"?(V.__data[0]=he,r.bufferSubData(r.UNIFORM_BUFFER,te+ce,V.__data)):he.isMatrix3?(V.__data[0]=he.elements[0],V.__data[1]=he.elements[1],V.__data[2]=he.elements[2],V.__data[3]=0,V.__data[4]=he.elements[3],V.__data[5]=he.elements[4],V.__data[6]=he.elements[5],V.__data[7]=0,V.__data[8]=he.elements[6],V.__data[9]=he.elements[7],V.__data[10]=he.elements[8],V.__data[11]=0):(he.toArray(V.__data,ce),ce+=ge.storage/Float32Array.BYTES_PER_ELEMENT)}r.bufferSubData(r.UNIFORM_BUFFER,te,V.__data)}}}r.bindBuffer(r.UNIFORM_BUFFER,null)}function v(T,I,P,k){const O=T.value,N=I+"_"+P;if(k[N]===void 0)return typeof O=="number"||typeof O=="boolean"?k[N]=O:k[N]=O.clone(),!0;{const H=k[N];if(typeof O=="number"||typeof O=="boolean"){if(H!==O)return k[N]=O,!0}else if(H.equals(O)===!1)return H.copy(O),!0}return!1}function S(T){const I=T.uniforms;let P=0;const k=16;for(let N=0,H=I.length;N<H;N++){const F=Array.isArray(I[N])?I[N]:[I[N]];for(let L=0,V=F.length;L<V;L++){const te=F[L],ne=Array.isArray(te.value)?te.value:[te.value];for(let ce=0,me=ne.length;ce<me;ce++){const he=ne[ce],ge=E(he),U=P%k,Z=U%ge.boundary,q=U+Z;P+=Z,q!==0&&k-q<ge.storage&&(P+=k-q),te.__data=new Float32Array(ge.storage/Float32Array.BYTES_PER_ELEMENT),te.__offset=P,P+=ge.storage}}}const O=P%k;return O>0&&(P+=k-O),T.__size=P,T.__cache={},this}function E(T){const I={boundary:0,storage:0};return typeof T=="number"||typeof T=="boolean"?(I.boundary=4,I.storage=4):T.isVector2?(I.boundary=8,I.storage=8):T.isVector3||T.isColor?(I.boundary=16,I.storage=12):T.isVector4?(I.boundary=16,I.storage=16):T.isMatrix3?(I.boundary=48,I.storage=48):T.isMatrix4?(I.boundary=64,I.storage=64):T.isTexture?console.warn("THREE.WebGLRenderer: Texture samplers can not be part of an uniforms group."):console.warn("THREE.WebGLRenderer: Unsupported uniform value type.",T),I}function A(T){const I=T.target;I.removeEventListener("dispose",A);const P=o.indexOf(I.__bindingPointIndex);o.splice(P,1),r.deleteBuffer(i[I.id]),delete i[I.id],delete s[I.id]}function M(){for(const T in i)r.deleteBuffer(i[T]);o=[],i={},s={}}return{bind:u,update:d,dispose:M}}class RM{constructor(e={}){const{canvas:t=eC(),context:n=null,depth:i=!0,stencil:s=!1,alpha:o=!1,antialias:l=!1,premultipliedAlpha:u=!0,preserveDrawingBuffer:d=!1,powerPreference:p="default",failIfMajorPerformanceCaveat:m=!1,reverseDepthBuffer:y=!1}=e;this.isWebGLRenderer=!0;let v;if(n!==null){if(typeof WebGLRenderingContext<"u"&&n instanceof WebGLRenderingContext)throw new Error("THREE.WebGLRenderer: WebGL 1 is not supported since r163.");v=n.getContextAttributes().alpha}else v=o;const S=new Uint32Array(4),E=new Int32Array(4);let A=null,M=null;const T=[],I=[];this.domElement=t,this.debug={checkShaderErrors:!0,onShaderError:null},this.autoClear=!0,this.autoClearColor=!0,this.autoClearDepth=!0,this.autoClearStencil=!0,this.sortObjects=!0,this.clippingPlanes=[],this.localClippingEnabled=!1,this._outputColorSpace=Zi,this.toneMapping=Jo,this.toneMappingExposure=1;const P=this;let k=!1,O=0,N=0,H=null,F=-1,L=null;const V=new xn,te=new xn;let ne=null;const ce=new tt(0);let me=0,he=t.width,ge=t.height,U=1,Z=null,q=null;const X=new xn(0,0,he,ge),se=new xn(0,0,he,ge);let Le=!1;const pe=new am;let Ae=!1,Re=!1;const Ie=new Nt,Ge=new Nt,qe=new $,lt=new xn,Pt={background:null,fog:null,environment:null,overrideMaterial:null,isScene:!0};let Be=!1;function Oe(){return H===null?U:1}let K=n;function pt(W,de){return t.getContext(W,de)}try{const W={alpha:!0,depth:i,stencil:s,antialias:l,premultipliedAlpha:u,preserveDrawingBuffer:d,powerPreference:p,failIfMajorPerformanceCaveat:m};if("setAttribute"in t&&t.setAttribute("data-engine",`three.js r${em}`),t.addEventListener("webglcontextlost",De,!1),t.addEventListener("webglcontextrestored",ot,!1),t.addEventListener("webglcontextcreationerror",nt,!1),K===null){const de="webgl2";if(K=pt(de,W),K===null)throw pt(de)?new Error("Error creating WebGL context with your selected attributes."):new Error("Error creating WebGL context.")}}catch(W){throw console.error("THREE.WebGLRenderer: "+W.message),W}let Fe,st,Ve,St,$e,J,G,ee,ye,Pe,be,et,Je,Qe,Ht,Ue,ut,Ct,Rt,ht,$t,kt,pn,ue;function Ze(){Fe=new QD(K),Fe.init(),kt=new tT(K,Fe),st=new XD(K,Fe,e,kt),Ve=new B6(K,Fe),st.reverseDepthBuffer&&y&&Ve.buffers.depth.setReversed(!0),St=new tL(K),$e=new _6,J=new O6(K,Fe,Ve,$e,st,kt,St),G=new $D(P),ee=new qD(P),ye=new lB(K),pn=new VD(K,ye),Pe=new ZD(K,ye,St,pn),be=new rL(K,Pe,ye,St),Rt=new nL(K,st,J),Ue=new JD($e),et=new v6(P,G,ee,Fe,st,pn,Ue),Je=new j6(P,$e),Qe=new M6,Ht=new C6(Fe),Ct=new GD(P,G,ee,Ve,be,v,u),ut=new P6(P,be,st),ue=new z6(K,St,st,Ve),ht=new WD(K,Fe,St),$t=new eL(K,Fe,St),St.programs=et.programs,P.capabilities=st,P.extensions=Fe,P.properties=$e,P.renderLists=Qe,P.shadowMap=ut,P.state=Ve,P.info=St}Ze();const Ce=new k6(P,K);this.xr=Ce,this.getContext=function(){return K},this.getContextAttributes=function(){return K.getContextAttributes()},this.forceContextLoss=function(){const W=Fe.get("WEBGL_lose_context");W&&W.loseContext()},this.forceContextRestore=function(){const W=Fe.get("WEBGL_lose_context");W&&W.restoreContext()},this.getPixelRatio=function(){return U},this.setPixelRatio=function(W){W!==void 0&&(U=W,this.setSize(he,ge,!1))},this.getSize=function(W){return W.set(he,ge)},this.setSize=function(W,de,Me=!0){if(Ce.isPresenting){console.warn("THREE.WebGLRenderer: Can't change size while VR device is presenting.");return}he=W,ge=de,t.width=Math.floor(W*U),t.height=Math.floor(de*U),Me===!0&&(t.style.width=W+"px",t.style.height=de+"px"),this.setViewport(0,0,W,de)},this.getDrawingBufferSize=function(W){return W.set(he*U,ge*U).floor()},this.setDrawingBufferSize=function(W,de,Me){he=W,ge=de,U=Me,t.width=Math.floor(W*Me),t.height=Math.floor(de*Me),this.setViewport(0,0,W,de)},this.getCurrentViewport=function(W){return W.copy(V)},this.getViewport=function(W){return W.copy(X)},this.setViewport=function(W,de,Me,we){W.isVector4?X.set(W.x,W.y,W.z,W.w):X.set(W,de,Me,we),Ve.viewport(V.copy(X).multiplyScalar(U).round())},this.getScissor=function(W){return W.copy(se)},this.setScissor=function(W,de,Me,we){W.isVector4?se.set(W.x,W.y,W.z,W.w):se.set(W,de,Me,we),Ve.scissor(te.copy(se).multiplyScalar(U).round())},this.getScissorTest=function(){return Le},this.setScissorTest=function(W){Ve.setScissorTest(Le=W)},this.setOpaqueSort=function(W){Z=W},this.setTransparentSort=function(W){q=W},this.getClearColor=function(W){return W.copy(Ct.getClearColor())},this.setClearColor=function(){Ct.setClearColor.apply(Ct,arguments)},this.getClearAlpha=function(){return Ct.getClearAlpha()},this.setClearAlpha=function(){Ct.setClearAlpha.apply(Ct,arguments)},this.clear=function(W=!0,de=!0,Me=!0){let we=0;if(W){let oe=!1;if(H!==null){const ze=H.texture.format;oe=ze===zy||ze===jy||ze===nm}if(oe){const ze=H.texture.type,Ye=ze===Mo||ze===tl||ze===Dd||ze===Tu||ze===Fy||ze===ky,ct=Ct.getClearColor(),mt=Ct.getClearAlpha(),Ut=ct.r,Bt=ct.g,yt=ct.b;Ye?(S[0]=Ut,S[1]=Bt,S[2]=yt,S[3]=mt,K.clearBufferuiv(K.COLOR,0,S)):(E[0]=Ut,E[1]=Bt,E[2]=yt,E[3]=mt,K.clearBufferiv(K.COLOR,0,E))}else we|=K.COLOR_BUFFER_BIT}de&&(we|=K.DEPTH_BUFFER_BIT),Me&&(we|=K.STENCIL_BUFFER_BIT,this.state.buffers.stencil.setMask(4294967295)),K.clear(we)},this.clearColor=function(){this.clear(!0,!1,!1)},this.clearDepth=function(){this.clear(!1,!0,!1)},this.clearStencil=function(){this.clear(!1,!1,!0)},this.dispose=function(){t.removeEventListener("webglcontextlost",De,!1),t.removeEventListener("webglcontextrestored",ot,!1),t.removeEventListener("webglcontextcreationerror",nt,!1),Ct.dispose(),Qe.dispose(),Ht.dispose(),$e.dispose(),G.dispose(),ee.dispose(),be.dispose(),pn.dispose(),ue.dispose(),et.dispose(),Ce.dispose(),Ce.removeEventListener("sessionstart",al),Ce.removeEventListener("sessionend",Po),ws.stop()};function De(W){W.preventDefault(),console.log("THREE.WebGLRenderer: Context Lost."),k=!0}function ot(){console.log("THREE.WebGLRenderer: Context Restored."),k=!1;const W=St.autoReset,de=ut.enabled,Me=ut.autoUpdate,we=ut.needsUpdate,oe=ut.type;Ze(),St.autoReset=W,ut.enabled=de,ut.autoUpdate=Me,ut.needsUpdate=we,ut.type=oe}function nt(W){console.error("THREE.WebGLRenderer: A WebGL context could not be created. Reason: ",W.statusMessage)}function Gt(W){const de=W.target;de.removeEventListener("dispose",Gt),Bn(de)}function Bn(W){tr(W),$e.remove(W)}function tr(W){const de=$e.get(W).programs;de!==void 0&&(de.forEach(function(Me){et.releaseProgram(Me)}),W.isShaderMaterial&&et.releaseShaderCache(W))}this.renderBufferDirect=function(W,de,Me,we,oe,ze){de===null&&(de=Pt);const Ye=oe.isMesh&&oe.matrixWorld.determinant()<0,ct=$u(W,de,Me,we,oe);Ve.setMaterial(we,Ye);let mt=Me.index,Ut=1;if(we.wireframe===!0){if(mt=Pe.getWireframeAttribute(Me),mt===void 0)return;Ut=2}const Bt=Me.drawRange,yt=Me.attributes.position;let dt=Bt.start*Ut,Tt=(Bt.start+Bt.count)*Ut;ze!==null&&(dt=Math.max(dt,ze.start*Ut),Tt=Math.min(Tt,(ze.start+ze.count)*Ut)),mt!==null?(dt=Math.max(dt,0),Tt=Math.min(Tt,mt.count)):yt!=null&&(dt=Math.max(dt,0),Tt=Math.min(Tt,yt.count));const rn=Tt-dt;if(rn<0||rn===1/0)return;pn.setup(oe,we,ct,Me,mt);let sn,zt=ht;if(mt!==null&&(sn=ye.get(mt),zt=$t,zt.setIndex(sn)),oe.isMesh)we.wireframe===!0?(Ve.setLineWidth(we.wireframeLinewidth*Oe()),zt.setMode(K.LINES)):zt.setMode(K.TRIANGLES);else if(oe.isLine){let wt=we.linewidth;wt===void 0&&(wt=1),Ve.setLineWidth(wt*Oe()),oe.isLineSegments?zt.setMode(K.LINES):oe.isLineLoop?zt.setMode(K.LINE_LOOP):zt.setMode(K.LINE_STRIP)}else oe.isPoints?zt.setMode(K.POINTS):oe.isSprite&&zt.setMode(K.TRIANGLES);if(oe.isBatchedMesh)if(oe._multiDrawInstances!==null)zt.renderMultiDrawInstances(oe._multiDrawStarts,oe._multiDrawCounts,oe._multiDrawCount,oe._multiDrawInstances);else if(Fe.get("WEBGL_multi_draw"))zt.renderMultiDraw(oe._multiDrawStarts,oe._multiDrawCounts,oe._multiDrawCount);else{const wt=oe._multiDrawStarts,En=oe._multiDrawCounts,jt=oe._multiDrawCount,nr=mt?ye.get(mt).bytesPerElement:1,Fi=$e.get(we).currentProgram.getUniforms();for(let Rr=0;Rr<jt;Rr++)Fi.setValue(K,"_gl_DrawID",Rr),zt.render(wt[Rr]/nr,En[Rr])}else if(oe.isInstancedMesh)zt.renderInstances(dt,rn,oe.count);else if(Me.isInstancedBufferGeometry){const wt=Me._maxInstanceCount!==void 0?Me._maxInstanceCount:1/0,En=Math.min(Me.instanceCount,wt);zt.renderInstances(dt,rn,En)}else zt.render(dt,rn)};function un(W,de,Me){W.transparent===!0&&W.side===xo&&W.forceSinglePass===!1?(W.side=Ni,W.needsUpdate=!0,ll(W,de,Me),W.side=Qo,W.needsUpdate=!0,ll(W,de,Me),W.side=xo):ll(W,de,Me)}this.compile=function(W,de,Me=null){Me===null&&(Me=W),M=Ht.get(Me),M.init(de),I.push(M),Me.traverseVisible(function(oe){oe.isLight&&oe.layers.test(de.layers)&&(M.pushLight(oe),oe.castShadow&&M.pushShadow(oe))}),W!==Me&&W.traverseVisible(function(oe){oe.isLight&&oe.layers.test(de.layers)&&(M.pushLight(oe),oe.castShadow&&M.pushShadow(oe))}),M.setupLights();const we=new Set;return W.traverse(function(oe){if(!(oe.isMesh||oe.isPoints||oe.isLine||oe.isSprite))return;const ze=oe.material;if(ze)if(Array.isArray(ze))for(let Ye=0;Ye<ze.length;Ye++){const ct=ze[Ye];un(ct,Me,oe),we.add(ct)}else un(ze,Me,oe),we.add(ze)}),I.pop(),M=null,we},this.compileAsync=function(W,de,Me=null){const we=this.compile(W,de,Me);return new Promise(oe=>{function ze(){if(we.forEach(function(Ye){$e.get(Ye).currentProgram.isReady()&&we.delete(Ye)}),we.size===0){oe(W);return}setTimeout(ze,10)}Fe.get("KHR_parallel_shader_compile")!==null?ze():setTimeout(ze,10)})};let Hr=null;function Gr(W){Hr&&Hr(W)}function al(){ws.stop()}function Po(){ws.start()}const ws=new YC;ws.setAnimationLoop(Gr),typeof self<"u"&&ws.setContext(self),this.setAnimationLoop=function(W){Hr=W,Ce.setAnimationLoop(W),W===null?ws.stop():ws.start()},Ce.addEventListener("sessionstart",al),Ce.addEventListener("sessionend",Po),this.render=function(W,de){if(de!==void 0&&de.isCamera!==!0){console.error("THREE.WebGLRenderer.render: camera is not an instance of THREE.Camera.");return}if(k===!0)return;if(W.matrixWorldAutoUpdate===!0&&W.updateMatrixWorld(),de.parent===null&&de.matrixWorldAutoUpdate===!0&&de.updateMatrixWorld(),Ce.enabled===!0&&Ce.isPresenting===!0&&(Ce.cameraAutoUpdate===!0&&Ce.updateCamera(de),de=Ce.getCamera()),W.isScene===!0&&W.onBeforeRender(P,W,de,H),M=Ht.get(W,I.length),M.init(de),I.push(M),Ge.multiplyMatrices(de.projectionMatrix,de.matrixWorldInverse),pe.setFromProjectionMatrix(Ge),Re=this.localClippingEnabled,Ae=Ue.init(this.clippingPlanes,Re),A=Qe.get(W,T.length),A.init(),T.push(A),Ce.enabled===!0&&Ce.isPresenting===!0){const ze=P.xr.getDepthSensingMesh();ze!==null&&ns(ze,de,-1/0,P.sortObjects)}ns(W,de,0,P.sortObjects),A.finish(),P.sortObjects===!0&&A.sort(Z,q),Be=Ce.enabled===!1||Ce.isPresenting===!1||Ce.hasDepthSensing()===!1,Be&&Ct.addToRenderList(A,W),this.info.render.frame++,Ae===!0&&Ue.beginShadows();const Me=M.state.shadowsArray;ut.render(Me,W,de),Ae===!0&&Ue.endShadows(),this.info.autoReset===!0&&this.info.reset();const we=A.opaque,oe=A.transmissive;if(M.setupLights(),de.isArrayCamera){const ze=de.cameras;if(oe.length>0)for(let Ye=0,ct=ze.length;Ye<ct;Ye++){const mt=ze[Ye];rs(we,oe,W,mt)}Be&&Ct.render(W);for(let Ye=0,ct=ze.length;Ye<ct;Ye++){const mt=ze[Ye];ra(A,W,mt,mt.viewport)}}else oe.length>0&&rs(we,oe,W,de),Be&&Ct.render(W),ra(A,W,de);H!==null&&(J.updateMultisampleRenderTarget(H),J.updateRenderTargetMipmap(H)),W.isScene===!0&&W.onAfterRender(P,W,de),pn.resetDefaultState(),F=-1,L=null,I.pop(),I.length>0?(M=I[I.length-1],Ae===!0&&Ue.setGlobalState(P.clippingPlanes,M.state.camera)):M=null,T.pop(),T.length>0?A=T[T.length-1]:A=null};function ns(W,de,Me,we){if(W.visible===!1)return;if(W.layers.test(de.layers)){if(W.isGroup)Me=W.renderOrder;else if(W.isLOD)W.autoUpdate===!0&&W.update(de);else if(W.isLight)M.pushLight(W),W.castShadow&&M.pushShadow(W);else if(W.isSprite){if(!W.frustumCulled||pe.intersectsSprite(W)){we&&lt.setFromMatrixPosition(W.matrixWorld).applyMatrix4(Ge);const Ye=be.update(W),ct=W.material;ct.visible&&A.push(W,Ye,ct,Me,lt.z,null)}}else if((W.isMesh||W.isLine||W.isPoints)&&(!W.frustumCulled||pe.intersectsObject(W))){const Ye=be.update(W),ct=W.material;if(we&&(W.boundingSphere!==void 0?(W.boundingSphere===null&&W.computeBoundingSphere(),lt.copy(W.boundingSphere.center)):(Ye.boundingSphere===null&&Ye.computeBoundingSphere(),lt.copy(Ye.boundingSphere.center)),lt.applyMatrix4(W.matrixWorld).applyMatrix4(Ge)),Array.isArray(ct)){const mt=Ye.groups;for(let Ut=0,Bt=mt.length;Ut<Bt;Ut++){const yt=mt[Ut],dt=ct[yt.materialIndex];dt&&dt.visible&&A.push(W,Ye,dt,Me,lt.z,yt)}}else ct.visible&&A.push(W,Ye,ct,Me,lt.z,null)}}const ze=W.children;for(let Ye=0,ct=ze.length;Ye<ct;Ye++)ns(ze[Ye],de,Me,we)}function ra(W,de,Me,we){const oe=W.opaque,ze=W.transmissive,Ye=W.transparent;M.setupLightsView(Me),Ae===!0&&Ue.setGlobalState(P.clippingPlanes,Me),we&&Ve.viewport(V.copy(we)),oe.length>0&&Ro(oe,de,Me),ze.length>0&&Ro(ze,de,Me),Ye.length>0&&Ro(Ye,de,Me),Ve.buffers.depth.setTest(!0),Ve.buffers.depth.setMask(!0),Ve.buffers.color.setMask(!0),Ve.setPolygonOffset(!1)}function rs(W,de,Me,we){if((Me.isScene===!0?Me.overrideMaterial:null)!==null)return;M.state.transmissionRenderTarget[we.id]===void 0&&(M.state.transmissionRenderTarget[we.id]=new Hs(1,1,{generateMipmaps:!0,type:Fe.has("EXT_color_buffer_half_float")||Fe.has("EXT_color_buffer_float")?ju:Mo,minFilter:js,samples:4,stencilBuffer:s,resolveDepthBuffer:!1,resolveStencilBuffer:!1,colorSpace:yn.workingColorSpace}));const ze=M.state.transmissionRenderTarget[we.id],Ye=we.viewport||V;ze.setSize(Ye.z,Ye.w);const ct=P.getRenderTarget();P.setRenderTarget(ze),P.getClearColor(ce),me=P.getClearAlpha(),me<1&&P.setClearColor(16777215,.5),P.clear(),Be&&Ct.render(Me);const mt=P.toneMapping;P.toneMapping=Jo;const Ut=we.viewport;if(we.viewport!==void 0&&(we.viewport=void 0),M.setupLightsView(we),Ae===!0&&Ue.setGlobalState(P.clippingPlanes,we),Ro(W,Me,we),J.updateMultisampleRenderTarget(ze),J.updateRenderTargetMipmap(ze),Fe.has("WEBGL_multisampled_render_to_texture")===!1){let Bt=!1;for(let yt=0,dt=de.length;yt<dt;yt++){const Tt=de[yt],rn=Tt.object,sn=Tt.geometry,zt=Tt.material,wt=Tt.group;if(zt.side===xo&&rn.layers.test(we.layers)){const En=zt.side;zt.side=Ni,zt.needsUpdate=!0,Xu(rn,Me,we,sn,zt,wt),zt.side=En,zt.needsUpdate=!0,Bt=!0}}Bt===!0&&(J.updateMultisampleRenderTarget(ze),J.updateRenderTargetMipmap(ze))}P.setRenderTarget(ct),P.setClearColor(ce,me),Ut!==void 0&&(we.viewport=Ut),P.toneMapping=mt}function Ro(W,de,Me){const we=de.isScene===!0?de.overrideMaterial:null;for(let oe=0,ze=W.length;oe<ze;oe++){const Ye=W[oe],ct=Ye.object,mt=Ye.geometry,Ut=we===null?Ye.material:we,Bt=Ye.group;ct.layers.test(Me.layers)&&Xu(ct,de,Me,mt,Ut,Bt)}}function Xu(W,de,Me,we,oe,ze){W.onBeforeRender(P,de,Me,we,oe,ze),W.modelViewMatrix.multiplyMatrices(Me.matrixWorldInverse,W.matrixWorld),W.normalMatrix.getNormalMatrix(W.modelViewMatrix),oe.onBeforeRender(P,de,Me,we,W,ze),oe.transparent===!0&&oe.side===xo&&oe.forceSinglePass===!1?(oe.side=Ni,oe.needsUpdate=!0,P.renderBufferDirect(Me,de,we,oe,W,ze),oe.side=Qo,oe.needsUpdate=!0,P.renderBufferDirect(Me,de,we,oe,W,ze),oe.side=xo):P.renderBufferDirect(Me,de,we,oe,W,ze),W.onAfterRender(P,de,Me,we,oe,ze)}function ll(W,de,Me){de.isScene!==!0&&(de=Pt);const we=$e.get(W),oe=M.state.lights,ze=M.state.shadowsArray,Ye=oe.state.version,ct=et.getParameters(W,oe.state,ze,de,Me),mt=et.getProgramCacheKey(ct);let Ut=we.programs;we.environment=W.isMeshStandardMaterial?de.environment:null,we.fog=de.fog,we.envMap=(W.isMeshStandardMaterial?ee:G).get(W.envMap||we.environment),we.envMapRotation=we.environment!==null&&W.envMap===null?de.environmentRotation:W.envMapRotation,Ut===void 0&&(W.addEventListener("dispose",Gt),Ut=new Map,we.programs=Ut);let Bt=Ut.get(mt);if(Bt!==void 0){if(we.currentProgram===Bt&&we.lightsStateVersion===Ye)return As(W,ct),Bt}else ct.uniforms=et.getUniforms(W),W.onBeforeCompile(ct,P),Bt=et.acquireProgram(ct,mt),Ut.set(mt,Bt),we.uniforms=ct.uniforms;const yt=we.uniforms;return(!W.isShaderMaterial&&!W.isRawShaderMaterial||W.clipping===!0)&&(yt.clippingPlanes=Ue.uniform),As(W,ct),we.needsLights=Yu(W),we.lightsStateVersion=Ye,we.needsLights&&(yt.ambientLightColor.value=oe.state.ambient,yt.lightProbe.value=oe.state.probe,yt.directionalLights.value=oe.state.directional,yt.directionalLightShadows.value=oe.state.directionalShadow,yt.spotLights.value=oe.state.spot,yt.spotLightShadows.value=oe.state.spotShadow,yt.rectAreaLights.value=oe.state.rectArea,yt.ltc_1.value=oe.state.rectAreaLTC1,yt.ltc_2.value=oe.state.rectAreaLTC2,yt.pointLights.value=oe.state.point,yt.pointLightShadows.value=oe.state.pointShadow,yt.hemisphereLights.value=oe.state.hemi,yt.directionalShadowMap.value=oe.state.directionalShadowMap,yt.directionalShadowMatrix.value=oe.state.directionalShadowMatrix,yt.spotShadowMap.value=oe.state.spotShadowMap,yt.spotLightMatrix.value=oe.state.spotLightMatrix,yt.spotLightMap.value=oe.state.spotLightMap,yt.pointShadowMap.value=oe.state.pointShadowMap,yt.pointShadowMatrix.value=oe.state.pointShadowMatrix),we.currentProgram=Bt,we.uniformsList=null,Bt}function Ju(W){if(W.uniformsList===null){const de=W.currentProgram.getUniforms();W.uniformsList=Mg.seqWithValue(de.seq,W.uniforms)}return W.uniformsList}function As(W,de){const Me=$e.get(W);Me.outputColorSpace=de.outputColorSpace,Me.batching=de.batching,Me.batchingColor=de.batchingColor,Me.instancing=de.instancing,Me.instancingColor=de.instancingColor,Me.instancingMorph=de.instancingMorph,Me.skinning=de.skinning,Me.morphTargets=de.morphTargets,Me.morphNormals=de.morphNormals,Me.morphColors=de.morphColors,Me.morphTargetsCount=de.morphTargetsCount,Me.numClippingPlanes=de.numClippingPlanes,Me.numIntersection=de.numClipIntersection,Me.vertexAlphas=de.vertexAlphas,Me.vertexTangents=de.vertexTangents,Me.toneMapping=de.toneMapping}function $u(W,de,Me,we,oe){de.isScene!==!0&&(de=Pt),J.resetTextureUnits();const ze=de.fog,Ye=we.isMeshStandardMaterial?de.environment:null,ct=H===null?P.outputColorSpace:H.isXRRenderTarget===!0?H.texture.colorSpace:Pu,mt=(we.isMeshStandardMaterial?ee:G).get(we.envMap||Ye),Ut=we.vertexColors===!0&&!!Me.attributes.color&&Me.attributes.color.itemSize===4,Bt=!!Me.attributes.tangent&&(!!we.normalMap||we.anisotropy>0),yt=!!Me.morphAttributes.position,dt=!!Me.morphAttributes.normal,Tt=!!Me.morphAttributes.color;let rn=Jo;we.toneMapped&&(H===null||H.isXRRenderTarget===!0)&&(rn=P.toneMapping);const sn=Me.morphAttributes.position||Me.morphAttributes.normal||Me.morphAttributes.color,zt=sn!==void 0?sn.length:0,wt=$e.get(we),En=M.state.lights;if(Ae===!0&&(Re===!0||W!==L)){const Jn=W===L&&we.id===F;Ue.setState(we,W,Jn)}let jt=!1;we.version===wt.__version?(wt.needsLights&&wt.lightsStateVersion!==En.state.version||wt.outputColorSpace!==ct||oe.isBatchedMesh&&wt.batching===!1||!oe.isBatchedMesh&&wt.batching===!0||oe.isBatchedMesh&&wt.batchingColor===!0&&oe.colorTexture===null||oe.isBatchedMesh&&wt.batchingColor===!1&&oe.colorTexture!==null||oe.isInstancedMesh&&wt.instancing===!1||!oe.isInstancedMesh&&wt.instancing===!0||oe.isSkinnedMesh&&wt.skinning===!1||!oe.isSkinnedMesh&&wt.skinning===!0||oe.isInstancedMesh&&wt.instancingColor===!0&&oe.instanceColor===null||oe.isInstancedMesh&&wt.instancingColor===!1&&oe.instanceColor!==null||oe.isInstancedMesh&&wt.instancingMorph===!0&&oe.morphTexture===null||oe.isInstancedMesh&&wt.instancingMorph===!1&&oe.morphTexture!==null||wt.envMap!==mt||we.fog===!0&&wt.fog!==ze||wt.numClippingPlanes!==void 0&&(wt.numClippingPlanes!==Ue.numPlanes||wt.numIntersection!==Ue.numIntersection)||wt.vertexAlphas!==Ut||wt.vertexTangents!==Bt||wt.morphTargets!==yt||wt.morphNormals!==dt||wt.morphColors!==Tt||wt.toneMapping!==rn||wt.morphTargetsCount!==zt)&&(jt=!0):(jt=!0,wt.__version=we.version);let nr=wt.currentProgram;jt===!0&&(nr=ll(we,de,oe));let Fi=!1,Rr=!1,Es=!1;const Sn=nr.getUniforms(),On=wt.uniforms;if(Ve.useProgram(nr.program)&&(Fi=!0,Rr=!0,Es=!0),we.id!==F&&(F=we.id,Rr=!0),Fi||L!==W){Ve.buffers.depth.getReversed()?(Ie.copy(W.projectionMatrix),LP(Ie),NP(Ie),Sn.setValue(K,"projectionMatrix",Ie)):Sn.setValue(K,"projectionMatrix",W.projectionMatrix),Sn.setValue(K,"viewMatrix",W.matrixWorldInverse);const Or=Sn.map.cameraPosition;Or!==void 0&&Or.setValue(K,qe.setFromMatrixPosition(W.matrixWorld)),st.logarithmicDepthBuffer&&Sn.setValue(K,"logDepthBufFC",2/(Math.log(W.far+1)/Math.LN2)),(we.isMeshPhongMaterial||we.isMeshToonMaterial||we.isMeshLambertMaterial||we.isMeshBasicMaterial||we.isMeshStandardMaterial||we.isShaderMaterial)&&Sn.setValue(K,"isOrthographic",W.isOrthographicCamera===!0),L!==W&&(L=W,Rr=!0,Es=!0)}if(oe.isSkinnedMesh){Sn.setOptional(K,oe,"bindMatrix"),Sn.setOptional(K,oe,"bindMatrixInverse");const Jn=oe.skeleton;Jn&&(Jn.boneTexture===null&&Jn.computeBoneTexture(),Sn.setValue(K,"boneTexture",Jn.boneTexture,J))}oe.isBatchedMesh&&(Sn.setOptional(K,oe,"batchingTexture"),Sn.setValue(K,"batchingTexture",oe._matricesTexture,J),Sn.setOptional(K,oe,"batchingIdTexture"),Sn.setValue(K,"batchingIdTexture",oe._indirectTexture,J),Sn.setOptional(K,oe,"batchingColorTexture"),oe._colorsTexture!==null&&Sn.setValue(K,"batchingColorTexture",oe._colorsTexture,J));const Br=Me.morphAttributes;if((Br.position!==void 0||Br.normal!==void 0||Br.color!==void 0)&&Rt.update(oe,Me,nr),(Rr||wt.receiveShadow!==oe.receiveShadow)&&(wt.receiveShadow=oe.receiveShadow,Sn.setValue(K,"receiveShadow",oe.receiveShadow)),we.isMeshGouraudMaterial&&we.envMap!==null&&(On.envMap.value=mt,On.flipEnvMap.value=mt.isCubeTexture&&mt.isRenderTargetTexture===!1?-1:1),we.isMeshStandardMaterial&&we.envMap===null&&de.environment!==null&&(On.envMapIntensity.value=de.environmentIntensity),Rr&&(Sn.setValue(K,"toneMappingExposure",P.toneMappingExposure),wt.needsLights&&Ku(On,Es),ze&&we.fog===!0&&Je.refreshFogUniforms(On,ze),Je.refreshMaterialUniforms(On,we,U,ge,M.state.transmissionRenderTarget[W.id]),Mg.upload(K,Ju(wt),On,J)),we.isShaderMaterial&&we.uniformsNeedUpdate===!0&&(Mg.upload(K,Ju(wt),On,J),we.uniformsNeedUpdate=!1),we.isSpriteMaterial&&Sn.setValue(K,"center",oe.center),Sn.setValue(K,"modelViewMatrix",oe.modelViewMatrix),Sn.setValue(K,"normalMatrix",oe.normalMatrix),Sn.setValue(K,"modelMatrix",oe.matrixWorld),we.isShaderMaterial||we.isRawShaderMaterial){const Jn=we.uniformsGroups;for(let Or=0,bs=Jn.length;Or<bs;Or++){const en=Jn[Or];ue.update(en,nr),ue.bind(en,nr)}}return nr}function Ku(W,de){W.ambientLightColor.needsUpdate=de,W.lightProbe.needsUpdate=de,W.directionalLights.needsUpdate=de,W.directionalLightShadows.needsUpdate=de,W.pointLights.needsUpdate=de,W.pointLightShadows.needsUpdate=de,W.spotLights.needsUpdate=de,W.spotLightShadows.needsUpdate=de,W.rectAreaLights.needsUpdate=de,W.hemisphereLights.needsUpdate=de}function Yu(W){return W.isMeshLambertMaterial||W.isMeshToonMaterial||W.isMeshPhongMaterial||W.isMeshStandardMaterial||W.isShadowMaterial||W.isShaderMaterial&&W.lights===!0}this.getActiveCubeFace=function(){return O},this.getActiveMipmapLevel=function(){return N},this.getRenderTarget=function(){return H},this.setRenderTargetTextures=function(W,de,Me){$e.get(W.texture).__webglTexture=de,$e.get(W.depthTexture).__webglTexture=Me;const we=$e.get(W);we.__hasExternalTextures=!0,we.__autoAllocateDepthBuffer=Me===void 0,we.__autoAllocateDepthBuffer||Fe.has("WEBGL_multisampled_render_to_texture")===!0&&(console.warn("THREE.WebGLRenderer: Render-to-texture extension was disabled because an external texture was provided"),we.__useRenderToTexture=!1)},this.setRenderTargetFramebuffer=function(W,de){const Me=$e.get(W);Me.__webglFramebuffer=de,Me.__useDefaultFramebuffer=de===void 0},this.setRenderTarget=function(W,de=0,Me=0){H=W,O=de,N=Me;let we=!0,oe=null,ze=!1,Ye=!1;if(W){const mt=$e.get(W);if(mt.__useDefaultFramebuffer!==void 0)Ve.bindFramebuffer(K.FRAMEBUFFER,null),we=!1;else if(mt.__webglFramebuffer===void 0)J.setupRenderTarget(W);else if(mt.__hasExternalTextures)J.rebindTextures(W,$e.get(W.texture).__webglTexture,$e.get(W.depthTexture).__webglTexture);else if(W.depthBuffer){const yt=W.depthTexture;if(mt.__boundDepthTexture!==yt){if(yt!==null&&$e.has(yt)&&(W.width!==yt.image.width||W.height!==yt.image.height))throw new Error("WebGLRenderTarget: Attached DepthTexture is initialized to the incorrect size.");J.setupDepthRenderbuffer(W)}}const Ut=W.texture;(Ut.isData3DTexture||Ut.isDataArrayTexture||Ut.isCompressedArrayTexture)&&(Ye=!0);const Bt=$e.get(W).__webglFramebuffer;W.isWebGLCubeRenderTarget?(Array.isArray(Bt[de])?oe=Bt[de][Me]:oe=Bt[de],ze=!0):W.samples>0&&J.useMultisampledRTT(W)===!1?oe=$e.get(W).__webglMultisampledFramebuffer:Array.isArray(Bt)?oe=Bt[Me]:oe=Bt,V.copy(W.viewport),te.copy(W.scissor),ne=W.scissorTest}else V.copy(X).multiplyScalar(U).floor(),te.copy(se).multiplyScalar(U).floor(),ne=Le;if(Ve.bindFramebuffer(K.FRAMEBUFFER,oe)&&we&&Ve.drawBuffers(W,oe),Ve.viewport(V),Ve.scissor(te),Ve.setScissorTest(ne),ze){const mt=$e.get(W.texture);K.framebufferTexture2D(K.FRAMEBUFFER,K.COLOR_ATTACHMENT0,K.TEXTURE_CUBE_MAP_POSITIVE_X+de,mt.__webglTexture,Me)}else if(Ye){const mt=$e.get(W.texture),Ut=de||0;K.framebufferTextureLayer(K.FRAMEBUFFER,K.COLOR_ATTACHMENT0,mt.__webglTexture,Me||0,Ut)}F=-1},this.readRenderTargetPixels=function(W,de,Me,we,oe,ze,Ye){if(!(W&&W.isWebGLRenderTarget)){console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.");return}let ct=$e.get(W).__webglFramebuffer;if(W.isWebGLCubeRenderTarget&&Ye!==void 0&&(ct=ct[Ye]),ct){Ve.bindFramebuffer(K.FRAMEBUFFER,ct);try{const mt=W.texture,Ut=mt.format,Bt=mt.type;if(!st.textureFormatReadable(Ut)){console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in RGBA or implementation defined format.");return}if(!st.textureTypeReadable(Bt)){console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in UnsignedByteType or implementation defined type.");return}de>=0&&de<=W.width-we&&Me>=0&&Me<=W.height-oe&&K.readPixels(de,Me,we,oe,kt.convert(Ut),kt.convert(Bt),ze)}finally{const mt=H!==null?$e.get(H).__webglFramebuffer:null;Ve.bindFramebuffer(K.FRAMEBUFFER,mt)}}},this.readRenderTargetPixelsAsync=async function(W,de,Me,we,oe,ze,Ye){if(!(W&&W.isWebGLRenderTarget))throw new Error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.");let ct=$e.get(W).__webglFramebuffer;if(W.isWebGLCubeRenderTarget&&Ye!==void 0&&(ct=ct[Ye]),ct){const mt=W.texture,Ut=mt.format,Bt=mt.type;if(!st.textureFormatReadable(Ut))throw new Error("THREE.WebGLRenderer.readRenderTargetPixelsAsync: renderTarget is not in RGBA or implementation defined format.");if(!st.textureTypeReadable(Bt))throw new Error("THREE.WebGLRenderer.readRenderTargetPixelsAsync: renderTarget is not in UnsignedByteType or implementation defined type.");if(de>=0&&de<=W.width-we&&Me>=0&&Me<=W.height-oe){Ve.bindFramebuffer(K.FRAMEBUFFER,ct);const yt=K.createBuffer();K.bindBuffer(K.PIXEL_PACK_BUFFER,yt),K.bufferData(K.PIXEL_PACK_BUFFER,ze.byteLength,K.STREAM_READ),K.readPixels(de,Me,we,oe,kt.convert(Ut),kt.convert(Bt),0);const dt=H!==null?$e.get(H).__webglFramebuffer:null;Ve.bindFramebuffer(K.FRAMEBUFFER,dt);const Tt=K.fenceSync(K.SYNC_GPU_COMMANDS_COMPLETE,0);return K.flush(),await DP(K,Tt,4),K.bindBuffer(K.PIXEL_PACK_BUFFER,yt),K.getBufferSubData(K.PIXEL_PACK_BUFFER,0,ze),K.deleteBuffer(yt),K.deleteSync(Tt),ze}else throw new Error("THREE.WebGLRenderer.readRenderTargetPixelsAsync: requested read bounds are out of range.")}},this.copyFramebufferToTexture=function(W,de=null,Me=0){W.isTexture!==!0&&(_d("WebGLRenderer: copyFramebufferToTexture function signature has changed."),de=arguments[0]||null,W=arguments[1]);const we=Math.pow(2,-Me),oe=Math.floor(W.image.width*we),ze=Math.floor(W.image.height*we),Ye=de!==null?de.x:0,ct=de!==null?de.y:0;J.setTexture2D(W,0),K.copyTexSubImage2D(K.TEXTURE_2D,Me,0,0,Ye,ct,oe,ze),Ve.unbindTexture()};const qu=K.createFramebuffer(),Qu=K.createFramebuffer();this.copyTextureToTexture=function(W,de,Me=null,we=null,oe=0,ze=null){W.isTexture!==!0&&(_d("WebGLRenderer: copyTextureToTexture function signature has changed."),we=arguments[0]||null,W=arguments[1],de=arguments[2],ze=arguments[3]||0,Me=null),ze===null&&(oe!==0?(_d("WebGLRenderer: copyTextureToTexture function signature has changed to support src and dst mipmap levels."),ze=oe,oe=0):ze=0);let Ye,ct,mt,Ut,Bt,yt,dt,Tt,rn;const sn=W.isCompressedTexture?W.mipmaps[ze]:W.image;if(Me!==null)Ye=Me.max.x-Me.min.x,ct=Me.max.y-Me.min.y,mt=Me.isBox3?Me.max.z-Me.min.z:1,Ut=Me.min.x,Bt=Me.min.y,yt=Me.isBox3?Me.min.z:0;else{const Br=Math.pow(2,-oe);Ye=Math.floor(sn.width*Br),ct=Math.floor(sn.height*Br),W.isDataArrayTexture?mt=sn.depth:W.isData3DTexture?mt=Math.floor(sn.depth*Br):mt=1,Ut=0,Bt=0,yt=0}we!==null?(dt=we.x,Tt=we.y,rn=we.z):(dt=0,Tt=0,rn=0);const zt=kt.convert(de.format),wt=kt.convert(de.type);let En;de.isData3DTexture?(J.setTexture3D(de,0),En=K.TEXTURE_3D):de.isDataArrayTexture||de.isCompressedArrayTexture?(J.setTexture2DArray(de,0),En=K.TEXTURE_2D_ARRAY):(J.setTexture2D(de,0),En=K.TEXTURE_2D),K.pixelStorei(K.UNPACK_FLIP_Y_WEBGL,de.flipY),K.pixelStorei(K.UNPACK_PREMULTIPLY_ALPHA_WEBGL,de.premultiplyAlpha),K.pixelStorei(K.UNPACK_ALIGNMENT,de.unpackAlignment);const jt=K.getParameter(K.UNPACK_ROW_LENGTH),nr=K.getParameter(K.UNPACK_IMAGE_HEIGHT),Fi=K.getParameter(K.UNPACK_SKIP_PIXELS),Rr=K.getParameter(K.UNPACK_SKIP_ROWS),Es=K.getParameter(K.UNPACK_SKIP_IMAGES);K.pixelStorei(K.UNPACK_ROW_LENGTH,sn.width),K.pixelStorei(K.UNPACK_IMAGE_HEIGHT,sn.height),K.pixelStorei(K.UNPACK_SKIP_PIXELS,Ut),K.pixelStorei(K.UNPACK_SKIP_ROWS,Bt),K.pixelStorei(K.UNPACK_SKIP_IMAGES,yt);const Sn=W.isDataArrayTexture||W.isData3DTexture,On=de.isDataArrayTexture||de.isData3DTexture;if(W.isDepthTexture){const Br=$e.get(W),Jn=$e.get(de),Or=$e.get(Br.__renderTarget),bs=$e.get(Jn.__renderTarget);Ve.bindFramebuffer(K.READ_FRAMEBUFFER,Or.__webglFramebuffer),Ve.bindFramebuffer(K.DRAW_FRAMEBUFFER,bs.__webglFramebuffer);for(let en=0;en<mt;en++)Sn&&(K.framebufferTextureLayer(K.READ_FRAMEBUFFER,K.COLOR_ATTACHMENT0,$e.get(W).__webglTexture,oe,yt+en),K.framebufferTextureLayer(K.DRAW_FRAMEBUFFER,K.COLOR_ATTACHMENT0,$e.get(de).__webglTexture,ze,rn+en)),K.blitFramebuffer(Ut,Bt,Ye,ct,dt,Tt,Ye,ct,K.DEPTH_BUFFER_BIT,K.NEAREST);Ve.bindFramebuffer(K.READ_FRAMEBUFFER,null),Ve.bindFramebuffer(K.DRAW_FRAMEBUFFER,null)}else if(oe!==0||W.isRenderTargetTexture||$e.has(W)){const Br=$e.get(W),Jn=$e.get(de);Ve.bindFramebuffer(K.READ_FRAMEBUFFER,qu),Ve.bindFramebuffer(K.DRAW_FRAMEBUFFER,Qu);for(let Or=0;Or<mt;Or++)Sn?K.framebufferTextureLayer(K.READ_FRAMEBUFFER,K.COLOR_ATTACHMENT0,Br.__webglTexture,oe,yt+Or):K.framebufferTexture2D(K.READ_FRAMEBUFFER,K.COLOR_ATTACHMENT0,K.TEXTURE_2D,Br.__webglTexture,oe),On?K.framebufferTextureLayer(K.DRAW_FRAMEBUFFER,K.COLOR_ATTACHMENT0,Jn.__webglTexture,ze,rn+Or):K.framebufferTexture2D(K.DRAW_FRAMEBUFFER,K.COLOR_ATTACHMENT0,K.TEXTURE_2D,Jn.__webglTexture,ze),oe!==0?K.blitFramebuffer(Ut,Bt,Ye,ct,dt,Tt,Ye,ct,K.COLOR_BUFFER_BIT,K.NEAREST):On?K.copyTexSubImage3D(En,ze,dt,Tt,rn+Or,Ut,Bt,Ye,ct):K.copyTexSubImage2D(En,ze,dt,Tt,Ut,Bt,Ye,ct);Ve.bindFramebuffer(K.READ_FRAMEBUFFER,null),Ve.bindFramebuffer(K.DRAW_FRAMEBUFFER,null)}else On?W.isDataTexture||W.isData3DTexture?K.texSubImage3D(En,ze,dt,Tt,rn,Ye,ct,mt,zt,wt,sn.data):de.isCompressedArrayTexture?K.compressedTexSubImage3D(En,ze,dt,Tt,rn,Ye,ct,mt,zt,sn.data):K.texSubImage3D(En,ze,dt,Tt,rn,Ye,ct,mt,zt,wt,sn):W.isDataTexture?K.texSubImage2D(K.TEXTURE_2D,ze,dt,Tt,Ye,ct,zt,wt,sn.data):W.isCompressedTexture?K.compressedTexSubImage2D(K.TEXTURE_2D,ze,dt,Tt,sn.width,sn.height,zt,sn.data):K.texSubImage2D(K.TEXTURE_2D,ze,dt,Tt,Ye,ct,zt,wt,sn);K.pixelStorei(K.UNPACK_ROW_LENGTH,jt),K.pixelStorei(K.UNPACK_IMAGE_HEIGHT,nr),K.pixelStorei(K.UNPACK_SKIP_PIXELS,Fi),K.pixelStorei(K.UNPACK_SKIP_ROWS,Rr),K.pixelStorei(K.UNPACK_SKIP_IMAGES,Es),ze===0&&de.generateMipmaps&&K.generateMipmap(En),Ve.unbindTexture()},this.copyTextureToTexture3D=function(W,de,Me=null,we=null,oe=0){return W.isTexture!==!0&&(_d("WebGLRenderer: copyTextureToTexture3D function signature has changed."),Me=arguments[0]||null,we=arguments[1]||null,W=arguments[2],de=arguments[3],oe=arguments[4]||0),_d('WebGLRenderer: copyTextureToTexture3D function has been deprecated. Use "copyTextureToTexture" instead.'),this.copyTextureToTexture(W,de,Me,we,oe)},this.initRenderTarget=function(W){$e.get(W).__webglFramebuffer===void 0&&J.setupRenderTarget(W)},this.initTexture=function(W){W.isCubeTexture?J.setTextureCube(W,0):W.isData3DTexture?J.setTexture3D(W,0):W.isDataArrayTexture||W.isCompressedArrayTexture?J.setTexture2DArray(W,0):J.setTexture2D(W,0),Ve.unbindTexture()},this.resetState=function(){O=0,N=0,H=null,Ve.reset(),pn.reset()},typeof __THREE_DEVTOOLS__<"u"&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("observe",{detail:this}))}get coordinateSystem(){return Xo}get outputColorSpace(){return this._outputColorSpace}
3871set outputColorSpace(e){this._outputColorSpace=e;const t=this.getContext();t.drawingBufferColorspace=yn._getDrawingBufferColorSpace(e),t.unpackColorSpace=yn._getUnpackColorSpace()}}const H6=Object.freeze(Object.defineProperty({__proto__:null,ACESFilmicToneMapping:jx,AddEquation:ql,AddOperation:Pb,AdditiveAnimationBlendMode:Yx,AdditiveBlending:Cg,AgXToneMapping:Lb,AlphaFormat:Vx,AlwaysCompare:qb,AlwaysDepth:Rg,AlwaysStencilFunc:$_,AmbientLight:FC,AnimationAction:JC,AnimationClip:Ud,AnimationLoader:i5,AnimationMixer:R5,AnimationObjectGroup:I5,AnimationUtils:e5,ArcCurve:dC,ArrayCamera:VC,ArrowHelper:Q5,AttachedBindMode:J_,Audio:WC,AudioAnalyser:_5,AudioContext:AM,AudioListener:g5,AudioLoader:f5,AxesHelper:Z5,BackSide:Ni,BasicDepthPacking:Hb,BasicShadowMap:ub,BatchedMesh:hC,Bone:Xy,BooleanKeyframeTrack:Hu,Box2:k5,Box3:pi,Box3Helper:Y5,BoxGeometry:zu,BoxHelper:K5,BufferAttribute:vn,BufferGeometry:Jt,BufferGeometryLoader:HC,ByteType:zx,Cache:Ka,Camera:rm,CameraHelper:$5,CanvasTexture:AR,CapsuleGeometry:qy,CatmullRomCurve3:fC,CineonToneMapping:Ob,CircleGeometry:Qy,ClampToEdgeWrapping:ys,Clock:EM,Color:tt,ColorKeyframeTrack:yM,ColorManagement:yn,CompressedArrayTexture:SR,CompressedCubeTexture:wR,CompressedTexture:$y,CompressedTextureLoader:s5,ConeGeometry:Zy,ConstantAlphaFactor:Cb,ConstantColorFactor:Eb,Controls:tB,CubeCamera:oC,CubeReflectionMapping:el,CubeRefractionMapping:Zl,CubeTexture:im,CubeTextureLoader:o5,CubeUVReflectionMapping:Vd,CubicBezierCurve:lM,CubicBezierCurve3:pC,CubicInterpolant:BC,CullFaceBack:V_,CullFaceFront:cb,CullFaceFrontBack:jI,CullFaceNone:lb,Curve:Co,CurvePath:gC,CustomBlending:hb,CustomToneMapping:Db,CylinderGeometry:Xd,Cylindrical:F5,Data3DTexture:eM,DataArrayTexture:Gy,DataTexture:$o,DataTextureLoader:a5,DataUtils:qP,DecrementStencilOp:qI,DecrementWrapStencilOp:ZI,DefaultLoadingManager:LC,DepthFormat:Mu,DepthStencilFormat:Iu,DepthTexture:Ky,DetachedBindMode:Fb,DirectionalLight:wM,DirectionalLightHelper:J5,DiscreteInterpolant:OC,DodecahedronGeometry:e1,DoubleSide:xo,DstAlphaFactor:xb,DstColorFactor:Sb,DynamicCopyUsage:pP,DynamicDrawUsage:lP,DynamicReadUsage:hP,EdgesGeometry:yC,EllipseCurve:Yy,EqualCompare:Jb,EqualDepth:Og,EqualStencilFunc:rP,EquirectangularReflectionMapping:Np,EquirectangularRefractionMapping:Fp,Euler:Ms,EventDispatcher:ta,ExtrudeGeometry:n1,FileLoader:Ss,Float16BufferAttribute:rR,Float32BufferAttribute:Et,FloatType:Di,Fog:Wy,FogExp2:Vy,FramebufferTexture:MR,FrontSide:Qo,Frustum:am,GLBufferAttribute:L5,GLSL1:gP,GLSL3:K_,GreaterCompare:$b,GreaterDepth:Lg,GreaterEqualCompare:Yb,GreaterEqualDepth:Dg,GreaterEqualStencilFunc:aP,GreaterStencilFunc:sP,GridHelper:W5,Group:$a,HalfFloatType:ju,HemisphereLight:NC,HemisphereLightHelper:V5,IcosahedronGeometry:r1,ImageBitmapLoader:GC,ImageLoader:$p,ImageUtils:tC,IncrementStencilOp:YI,IncrementWrapStencilOp:QI,InstancedBufferAttribute:Ru,InstancedBufferGeometry:zC,InstancedInterleavedBuffer:D5,InstancedMesh:sM,Int16BufferAttribute:tR,Int32BufferAttribute:nR,Int8BufferAttribute:QP,IntType:Ny,InterleavedBuffer:sm,InterleavedBufferAttribute:tc,Interpolant:$d,InterpolateDiscrete:Ld,InterpolateLinear:Nd,InterpolateSmooth:xg,InvertStencilOp:eP,KeepStencilOp:uu,KeyframeTrack:To,LOD:uC,LatheGeometry:cm,Layers:wu,LessCompare:Xb,LessDepth:Bg,LessEqualCompare:Qx,LessEqualDepth:Cu,LessEqualStencilFunc:iP,LessStencilFunc:nP,Light:cc,LightProbe:jC,Line:nl,Line3:U5,LineBasicMaterial:mi,LineCurve:cM,LineCurve3:mC,LineDashedMaterial:IC,LineLoop:oM,LineSegments:bo,LinearFilter:Zn,LinearInterpolant:gM,LinearMipMapLinearFilter:VI,LinearMipMapNearestFilter:GI,LinearMipmapLinearFilter:js,LinearMipmapNearestFilter:Cd,LinearSRGBColorSpace:Pu,LinearToneMapping:Rb,LinearTransfer:Up,Loader:gi,LoaderUtils:Ql,LoadingManager:vM,LoopOnce:kb,LoopPingPong:jb,LoopRepeat:Ub,LuminanceAlphaFormat:Jx,LuminanceFormat:Xx,MOUSE:kI,Material:xr,MaterialLoader:u1,MathUtils:Qb,Matrix2:IM,Matrix3:Qt,Matrix4:Nt,MaxEquation:mb,Mesh:hr,MeshBasicMaterial:vs,MeshDepthMaterial:fM,MeshDistanceMaterial:pM,MeshLambertMaterial:CC,MeshMatcapMaterial:TC,MeshNormalMaterial:bC,MeshPhongMaterial:AC,MeshPhysicalMaterial:Gs,MeshStandardMaterial:dm,MeshToonMaterial:EC,MinEquation:pb,MirroredRepeatWrapping:Od,MixOperation:Ib,MultiplyBlending:X_,MultiplyOperation:tm,NearestFilter:zr,NearestMipMapLinearFilter:HI,NearestMipMapNearestFilter:zI,NearestMipmapLinearFilter:fu,NearestMipmapNearestFilter:Ly,NeutralToneMapping:Nb,NeverCompare:Wb,NeverDepth:Pg,NeverStencilFunc:tP,NoBlending:Ya,NoColorSpace:Wa,NoToneMapping:Jo,NormalAnimationBlendMode:Hy,NormalBlending:xu,NotEqualCompare:Kb,NotEqualDepth:Ng,NotEqualStencilFunc:oP,NumberKeyframeTrack:Ou,Object3D:fn,ObjectLoader:h5,ObjectSpaceNormalMap:Vb,OctahedronGeometry:um,OneFactor:yb,OneMinusConstantAlphaFactor:Tb,OneMinusConstantColorFactor:bb,OneMinusDstAlphaFactor:Mb,OneMinusDstColorFactor:wb,OneMinusSrcAlphaFactor:Ig,OneMinusSrcColorFactor:_b,Orthogra
vendor: 32,059 bytes, lines 3871-3899
3871phicCamera:Kd,PCFShadowMap:Oy,PCFSoftShadowMap:wp,PMREMGenerator:nx,Path:Vp,PerspectiveCamera:_r,Plane:Yl,PlaneGeometry:Jd,PlaneHelper:q5,PointLight:SM,PointLightHelper:H5,Points:Jy,PointsMaterial:lm,PolarGridHelper:X5,PolyhedronGeometry:lc,PositionalAudio:v5,PropertyBinding:gn,PropertyMixer:XC,QuadraticBezierCurve:uM,QuadraticBezierCurve3:hM,Quaternion:fi,QuaternionKeyframeTrack:Du,QuaternionLinearInterpolant:DC,RED_GREEN_RGTC2_Format:ay,RED_RGTC1_Format:Kx,REVISION:em,RGBADepthPacking:Gb,RGBAFormat:hi,RGBAIntegerFormat:zy,RGBA_ASTC_10x10_Format:ty,RGBA_ASTC_10x5_Format:Qg,RGBA_ASTC_10x6_Format:Zg,RGBA_ASTC_10x8_Format:ey,RGBA_ASTC_12x10_Format:ny,RGBA_ASTC_12x12_Format:ry,RGBA_ASTC_4x4_Format:Vg,RGBA_ASTC_5x4_Format:Wg,RGBA_ASTC_5x5_Format:Xg,RGBA_ASTC_6x5_Format:Jg,RGBA_ASTC_6x6_Format:$g,RGBA_ASTC_8x5_Format:Kg,RGBA_ASTC_8x6_Format:Yg,RGBA_ASTC_8x8_Format:qg,RGBA_BPTC_Format:Tp,RGBA_ETC2_EAC_Format:Gg,RGBA_PVRTC_2BPPV1_Format:jg,RGBA_PVRTC_4BPPV1_Format:Ug,RGBA_S3TC_DXT1_Format:Ep,RGBA_S3TC_DXT3_Format:bp,RGBA_S3TC_DXT5_Format:Cp,RGBDepthPacking:XI,RGBFormat:Wx,RGBIntegerFormat:WI,RGB_BPTC_SIGNED_Format:iy,RGB_BPTC_UNSIGNED_Format:sy,RGB_ETC1_Format:zg,RGB_ETC2_Format:Hg,RGB_PVRTC_2BPPV1_Format:kg,RGB_PVRTC_4BPPV1_Format:Fg,RGB_S3TC_DXT1_Format:Ap,RGDepthPacking:JI,RGFormat:$x,RGIntegerFormat:jy,RawShaderMaterial:wC,Ray:Wd,Raycaster:$C,RectAreaLight:kC,RedFormat:Uy,RedIntegerFormat:nm,ReinhardToneMapping:Bb,RenderTarget:nC,RepeatWrapping:ec,ReplaceStencilOp:KI,ReverseSubtractEquation:fb,RingGeometry:i1,SIGNED_RED_GREEN_RGTC2_Format:ly,SIGNED_RED_RGTC1_Format:oy,SRGBColorSpace:Zi,SRGBTransfer:Cn,Scene:Gp,ShaderChunk:an,ShaderLib:_o,ShaderMaterial:So,ShadowMaterial:SC,Shape:Au,ShapeGeometry:s1,ShapePath:eB,ShapeUtils:Ko,ShortType:Hx,Skeleton:om,SkeletonHelper:z5,SkinnedMesh:iM,Source:gu,Sphere:ei,SphereGeometry:hm,Spherical:N5,SphericalHarmonics3:UC,SplineCurve:dM,SpotLight:MM,SpotLightHelper:j5,Sprite:cC,SpriteMaterial:rM,SrcAlphaFactor:Tg,SrcAlphaSaturateFactor:Ab,SrcColorFactor:vb,StaticCopyUsage:fP,StaticDrawUsage:jp,StaticReadUsage:uP,StereoCamera:p5,StreamCopyUsage:mP,StreamDrawUsage:cP,StreamReadUsage:dP,StringKeyframeTrack:Gu,SubtractEquation:db,SubtractiveBlending:W_,TOUCH:UI,TangentSpaceNormalMap:ac,TetrahedronGeometry:o1,Texture:Gn,TextureLoader:_M,TextureUtils:oB,TorusGeometry:a1,TorusKnotGeometry:l1,Triangle:es,TriangleFanDrawMode:cy,TriangleStripDrawMode:qx,TrianglesDrawMode:zb,TubeGeometry:c1,UVMapping:Dy,Uint16BufferAttribute:tM,Uint32BufferAttribute:nM,Uint8BufferAttribute:ZP,Uint8ClampedBufferAttribute:eR,Uniform:TM,UniformsGroup:O5,UniformsLib:it,UniformsUtils:sC,UnsignedByteType:Mo,UnsignedInt248Type:Tu,UnsignedInt5999Type:Gx,UnsignedIntType:tl,UnsignedShort4444Type:Fy,UnsignedShort5551Type:ky,UnsignedShortType:Dd,VSMShadowMap:vo,Vector2:Ne,Vector3:$,Vector4:xn,VectorKeyframeTrack:Lu,VideoTexture:xR,WebGL3DRenderTarget:zP,WebGLArrayRenderTarget:jP,WebGLCoordinateSystem:Xo,WebGLCubeRenderTarget:aC,WebGLMultipleRenderTargets:aB,WebGLRenderTarget:Hs,WebGLRenderer:RM,WebGLUtils:tT,WebGPUCoordinateSystem:zp,WireframeGeometry:MC,WrapAroundEnding:kp,ZeroCurvatureEnding:pu,ZeroFactor:gb,ZeroSlopeEnding:mu,ZeroStencilOp:$I,createCanvasElement:eC},Symbol.toStringTag,{value:"Module"}));var Wv={exports:{}},Jl={};/**
3872 * @license React
3873 * react-reconciler-constants.production.min.js
3874 *
3875 * Copyright (c) Facebook, Inc. and its affiliates.
3876 *
3877 * This source code is licensed under the MIT license found in the
3878 * LICENSE file in the root directory of this source tree.
3879 */var O2;function G6(){return O2||(O2=1,Jl.ConcurrentRoot=1,Jl.ContinuousEventPriority=4,Jl.DefaultEventPriority=16,Jl.DiscreteEventPriority=1,Jl.IdleEventPriority=536870912,Jl.LegacyRoot=0),Jl}var D2;function V6(){return D2||(D2=1,Wv.exports=G6()),Wv.exports}var Ed=V6();function W6(r){let e;const t=new Set,n=(d,p)=>{const m=typeof d=="function"?d(e):d;if(m!==e){const y=e;e=p?m:Object.assign({},e,m),t.forEach(v=>v(e,y))}},i=()=>e,s=(d,p=i,m=Object.is)=>{console.warn("[DEPRECATED] Please use `subscribeWithSelector` middleware");let y=p(e);function v(){const S=p(e);if(!m(y,S)){const E=y;d(y=S,E)}}return t.add(v),()=>t.delete(v)},u={setState:n,getState:i,subscribe:(d,p,m)=>p||m?s(d,p,m):(t.add(d),()=>t.delete(d)),destroy:()=>t.clear()};return e=r(n,i,u),u}const X6=typeof window>"u"||!window.navigator||/ServerSideRendering|^Deno\//.test(window.navigator.userAgent),L2=X6?z.useEffect:z.useLayoutEffect;function nT(r){const e=typeof r=="function"?W6(r):r,t=(n=e.getState,i=Object.is)=>{const[,s]=z.useReducer(A=>A+1,0),o=e.getState(),l=z.useRef(o),u=z.useRef(n),d=z.useRef(i),p=z.useRef(!1),m=z.useRef();m.current===void 0&&(m.current=n(o));let y,v=!1;(l.current!==o||u.current!==n||d.current!==i||p.current)&&(y=n(o),v=!i(m.current,y)),L2(()=>{v&&(m.current=y),l.current=o,u.current=n,d.current=i,p.current=!1});const S=z.useRef(o);L2(()=>{const A=()=>{try{const T=e.getState(),I=u.current(T);d.current(m.current,I)||(l.current=T,m.current=I,s())}catch{p.current=!0,s()}},M=e.subscribe(A);return e.getState()!==S.current&&A(),M},[]);const E=v?y:m.current;return z.useDebugValue(E),E};return Object.assign(t,e),t[Symbol.iterator]=function(){console.warn("[useStore, api] = create() is deprecated and will be removed in v4");const n=[t,e];return{next(){const i=n.length<=0;return{value:n.shift(),done:i}}}},t}const J6=r=>typeof r=="object"&&typeof r.then=="function",vu=[];function rT(r,e,t=(n,i)=>n===i){if(r===e)return!0;if(!r||!e)return!1;const n=r.length;if(e.length!==n)return!1;for(let i=0;i<n;i++)if(!t(r[i],e[i]))return!1;return!0}function iT(r,e=null,t=!1,n={}){e===null&&(e=[r]);for(const s of vu)if(rT(e,s.keys,s.equal)){if(t)return;if(Object.prototype.hasOwnProperty.call(s,"error"))throw s.error;if(Object.prototype.hasOwnProperty.call(s,"response"))return n.lifespan&&n.lifespan>0&&(s.timeout&&clearTimeout(s.timeout),s.timeout=setTimeout(s.remove,n.lifespan)),s.response;if(!t)throw s.promise}const i={keys:e,equal:n.equal,remove:()=>{const s=vu.indexOf(i);s!==-1&&vu.splice(s,1)},promise:(J6(r)?r:r(...e)).then(s=>{i.response=s,n.lifespan&&n.lifespan>0&&(i.timeout=setTimeout(i.remove,n.lifespan))}).catch(s=>i.error=s)};if(vu.push(i),!t)throw i.promise}const $6=(r,e,t)=>iT(r,e,!1,t),K6=(r,e,t)=>void iT(r,e,!0,t),Y6=r=>{if(r===void 0||r.length===0)vu.splice(0,vu.length);else{const e=vu.find(t=>rT(r,t.keys,t.equal));e&&e.remove()}};var Xv={exports:{}},Jv={exports:{}},$v={};/**
3880 * @license React
3881 * scheduler.production.min.js
3882 *
3883 * Copyright (c) Facebook, Inc. and its affiliates.
3884 *
3885 * This source code is licensed under the MIT license found in the
3886 * LICENSE file in the root directory of this source tree.
3887 */var N2;function q6(){return N2||(N2=1,function(r){function e(U,Z){var q=U.length;U.push(Z);e:for(;0<q;){var X=q-1>>>1,se=U[X];if(0<i(se,Z))U[X]=Z,U[q]=se,q=X;else break e}}function t(U){return U.length===0?null:U[0]}function n(U){if(U.length===0)return null;var Z=U[0],q=U.pop();if(q!==Z){U[0]=q;e:for(var X=0,se=U.length,Le=se>>>1;X<Le;){var pe=2*(X+1)-1,Ae=U[pe],Re=pe+1,Ie=U[Re];if(0>i(Ae,q))Re<se&&0>i(Ie,Ae)?(U[X]=Ie,U[Re]=q,X=Re):(U[X]=Ae,U[pe]=q,X=pe);else if(Re<se&&0>i(Ie,q))U[X]=Ie,U[Re]=q,X=Re;else break e}}return Z}function i(U,Z){var q=U.sortIndex-Z.sortIndex;return q!==0?q:U.id-Z.id}if(typeof performance=="object"&&typeof performance.now=="function"){var s=performance;r.unstable_now=function(){return s.now()}}else{var o=Date,l=o.now();r.unstable_now=function(){return o.now()-l}}var u=[],d=[],p=1,m=null,y=3,v=!1,S=!1,E=!1,A=typeof setTimeout=="function"?setTimeout:null,M=typeof clearTimeout=="function"?clearTimeout:null,T=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function I(U){for(var Z=t(d);Z!==null;){if(Z.callback===null)n(d);else if(Z.startTime<=U)n(d),Z.sortIndex=Z.expirationTime,e(u,Z);else break;Z=t(d)}}function P(U){if(E=!1,I(U),!S)if(t(u)!==null)S=!0,he(k);else{var Z=t(d);Z!==null&&ge(P,Z.startTime-U)}}function k(U,Z){S=!1,E&&(E=!1,M(H),H=-1),v=!0;var q=y;try{for(I(Z),m=t(u);m!==null&&(!(m.expirationTime>Z)||U&&!V());){var X=m.callback;if(typeof X=="function"){m.callback=null,y=m.priorityLevel;var se=X(m.expirationTime<=Z);Z=r.unstable_now(),typeof se=="function"?m.callback=se:m===t(u)&&n(u),I(Z)}else n(u);m=t(u)}if(m!==null)var Le=!0;else{var pe=t(d);pe!==null&&ge(P,pe.startTime-Z),Le=!1}return Le}finally{m=null,y=q,v=!1}}var O=!1,N=null,H=-1,F=5,L=-1;function V(){return!(r.unstable_now()-L<F)}function te(){if(N!==null){var U=r.unstable_now();L=U;var Z=!0;try{Z=N(!0,U)}finally{Z?ne():(O=!1,N=null)}}else O=!1}var ne;if(typeof T=="function")ne=function(){T(te)};else if(typeof MessageChannel<"u"){var ce=new MessageChannel,me=ce.port2;ce.port1.onmessage=te,ne=function(){me.postMessage(null)}}else ne=function(){A(te,0)};function he(U){N=U,O||(O=!0,ne())}function ge(U,Z){H=A(function(){U(r.unstable_now())},Z)}r.unstable_IdlePriority=5,r.unstable_ImmediatePriority=1,r.unstable_LowPriority=4,r.unstable_NormalPriority=3,r.unstable_Profiling=null,r.unstable_UserBlockingPriority=2,r.unstable_cancelCallback=function(U){U.callback=null},r.unstable_continueExecution=function(){S||v||(S=!0,he(k))},r.unstable_forceFrameRate=function(U){0>U||125<U?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):F=0<U?Math.floor(1e3/U):5},r.unstable_getCurrentPriorityLevel=function(){return y},r.unstable_getFirstCallbackNode=function(){return t(u)},r.unstable_next=function(U){switch(y){case 1:case 2:case 3:var Z=3;break;default:Z=y}var q=y;y=Z;try{return U()}finally{y=q}},r.unstable_pauseExecution=function(){},r.unstable_requestPaint=function(){},r.unstable_runWithPriority=function(U,Z){switch(U){case 1:case 2:case 3:case 4:case 5:break;default:U=3}var q=y;y=U;try{return Z()}finally{y=q}},r.unstable_scheduleCallback=function(U,Z,q){var X=r.unstable_now();switch(typeof q=="object"&&q!==null?(q=q.delay,q=typeof q=="number"&&0<q?X+q:X):q=X,U){case 1:var se=-1;break;case 2:se=250;break;case 5:se=1073741823;break;case 4:se=1e4;break;default:se=5e3}return se=q+se,U={id:p++,callback:Z,priorityLevel:U,startTime:q,expirationTime:se,sortIndex:-1},q>X?(U.sortIndex=q,e(d,U),t(u)===null&&U===t(d)&&(E?(M(H),H=-1):E=!0,ge(P,q-X))):(U.sortIndex=se,e(u,U),S||v||(S=!0,he(k))),U},r.unstable_shouldYield=V,r.unstable_wrapCallback=function(U){var Z=y;return function(){var q=y;y=Z;try{return U.apply(this,arguments)}finally{y=q}}}}($v)),$v}var F2;function Q6(){return F2||(F2=1,Jv.exports=q6()),Jv.exports}/**
3888 * @license React
3889 * react-reconciler.production.min.js
3890 *
3891 * Copyright (c) Facebook, Inc. and its affiliates.
3892 *
3893 * This source code is licensed under the MIT license found in the
3894 * LICENSE file in the root directory of this source tree.
3895 */var Kv,k2;function Z6(){return k2||(k2=1,Kv=function(e){var t={},n=By(),i=Q6(),s=Object.assign;function o(h){for(var f="https://reactjs.org/docs/error-decoder.html?invariant="+h,x=1;x<arguments.length;x++)f+="&args[]="+encodeURIComponent(arguments[x]);return"Minified React error #"+h+"; visit "+f+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var l=n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,u=Symbol.for("react.element"),d=Symbol.for("react.portal"),p=Symbol.for("react.fragment"),m=Symbol.for("react.strict_mode"),y=Symbol.for("react.profiler"),v=Symbol.for("react.provider"),S=Symbol.for("react.context"),E=Symbol.for("react.forward_ref"),A=Symbol.for("react.suspense"),M=Symbol.for("react.suspense_list"),T=Symbol.for("react.memo"),I=Symbol.for("react.lazy"),P=Symbol.for("react.offscreen"),k=Symbol.iterator;function O(h){return h===null||typeof h!="object"?null:(h=k&&h[k]||h["@@iterator"],typeof h=="function"?h:null)}function N(h){if(h==null)return null;if(typeof h=="function")return h.displayName||h.name||null;if(typeof h=="string")return h;switch(h){case p:return"Fragment";case d:return"Portal";case y:return"Profiler";case m:return"StrictMode";case A:return"Suspense";case M:return"SuspenseList"}if(typeof h=="object")switch(h.$$typeof){case S:return(h.displayName||"Context")+".Consumer";case v:return(h._context.displayName||"Context")+".Provider";case E:var f=h.render;return h=h.displayName,h||(h=f.displayName||f.name||"",h=h!==""?"ForwardRef("+h+")":"ForwardRef"),h;case T:return f=h.displayName||null,f!==null?f:N(h.type)||"Memo";case I:f=h._payload,h=h._init;try{return N(h(f))}catch{}}return null}function H(h){var f=h.type;switch(h.tag){case 24:return"Cache";case 9:return(f.displayName||"Context")+".Consumer";case 10:return(f._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return h=f.render,h=h.displayName||h.name||"",f.displayName||(h!==""?"ForwardRef("+h+")":"ForwardRef");case 7:return"Fragment";case 5:return f;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return N(f);case 8:return f===m?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof f=="function")return f.displayName||f.name||null;if(typeof f=="string")return f}return null}function F(h){var f=h,x=h;if(h.alternate)for(;f.return;)f=f.return;else{h=f;do f=h,f.flags&4098&&(x=f.return),h=f.return;while(h)}return f.tag===3?x:null}function L(h){if(F(h)!==h)throw Error(o(188))}function V(h){var f=h.alternate;if(!f){if(f=F(h),f===null)throw Error(o(188));return f!==h?null:h}for(var x=h,b=f;;){var R=x.return;if(R===null)break;var D=R.alternate;if(D===null){if(b=R.return,b!==null){x=b;continue}break}if(R.child===D.child){for(D=R.child;D;){if(D===x)return L(R),h;if(D===b)return L(R),f;D=D.sibling}throw Error(o(188))}if(x.return!==b.return)x=R,b=D;else{for(var Y=!1,le=R.child;le;){if(le===x){Y=!0,x=R,b=D;break}if(le===b){Y=!0,b=R,x=D;break}le=le.sibling}if(!Y){for(le=D.child;le;){if(le===x){Y=!0,x=D,b=R;break}if(le===b){Y=!0,b=D,x=R;break}le=le.sibling}if(!Y)throw Error(o(189))}}if(x.alternate!==b)throw Error(o(190))}if(x.tag!==3)throw Error(o(188));return x.stateNode.current===x?h:f}function te(h){return h=V(h),h!==null?ne(h):null}function ne(h){if(h.tag===5||h.tag===6)return h;for(h=h.child;h!==null;){var f=ne(h);if(f!==null)return f;h=h.sibling}return null}function ce(h){if(h.tag===5||h.tag===6)return h;for(h=h.child;h!==null;){if(h.tag!==4){var f=ce(h);if(f!==null)return f}h=h.sibling}return null}var me=Array.isArray,he=e.getPublicInstance,ge=e.getRootHostContext,U=e.getChildHostContext,Z=e.prepareForCommit,q=e.resetAfterCommit,X=e.createInstance,se=e.appendInitialChild,Le=e.finalizeInitialChildren,pe=e.prepareUpdate,Ae=e.shouldSetTextContent,Re=e.createTextInstance,Ie=e.scheduleTimeout,Ge=e.cancelTimeout,qe=e.noTimeout,lt=e.isPrimaryRenderer,Pt=e.supportsMutation,Be=e.supportsPersistence,Oe=e.supportsHydration,K=e.getInstanceFromNode,pt=e.preparePortalMount,Fe=e.getCurrentEventPriority,st=e.detachDeletedInstance,Ve=e.supportsMicrotasks,St=e.scheduleMicrotask,$e=e.supportsTestSelectors,J=e.findFiberRoot,G=e.getBoundingRect,ee=e.getTextContent,ye=e.isHiddenSubtree,Pe=e.matchAccessibilityRole,be=e.setFocusIfFocusable,et=e.setupIntersectionObserver,Je=e.appendChild,Qe=e.appendChildToContainer,Ht=e.commitTextUpdate,Ue=e.commitMount,ut=e.commitUpdate,Ct=e.insertBefore,Rt=e.insertInContainerBefore,ht=e.removeChild,$t=e.removeChildFromContainer,kt=e.resetTextContent,pn=e.hideInstance,ue=e.hideTextInstance,Ze=e.unhideInstance,Ce=e.unhideTextInstance,De=e.clearContainer,ot=e.cloneInstance,nt=e.createContainerChildSet,Gt=e.appendChildToContainerChildSet,Bn=e.finalizeContainerChildren,tr=e.replaceContainerChildren,un=e.cloneHiddenInstance,Hr=e.cloneHiddenTextInstance,Gr=e.canHydrateInstance,al=e.canHydrateTextInstance,Po=e.canHydrateSuspenseInstance,ws=e.isSuspenseInstancePending,ns=e.isSuspenseInstanceFallback,ra=e.registerSuspenseInstanceRetry,rs=e.getNextHydratableSibling,Ro=e.getFirstHydratableChild,Xu=e.getFirstHydratableChildWithinContainer,ll=e.getFirstHydratableChildWithinSuspenseInstance,Ju=e.hydrateInstance,As=e.hydrateTextInstance,$u=e.hydrateSuspenseInstance,Ku=e.getNextHydratableInstanceAfterSuspenseInstance,Yu=e.commitHydratedContainer,qu=e.commitHydratedSuspenseInstance,Qu=e.clearSuspenseBoundary,W=e.clearSuspenseBoundaryFromContainer,de=e.shouldDeleteUnhydratedTailInstances,Me=e.didNotMatchHydratedContainerTextInstance,we=e.didNotMatchHydratedTextInstance,oe;function ze(h){if(oe===void 0)try{throw Error()}catch(x){var f=x.stack.trim().match(/\n( *(at )?)/);oe=f&&f[1]||""}return`
3896`+oe+h}var Ye=!1;function ct(h,f){if(!h||Ye)return"";Ye=!0;var x=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(f)if(f=function(){throw Error()},Object.defineProperty(f.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(f,[])}catch(We){var b=We}Reflect.construct(h,[],f)}else{try{f.call()}catch(We){b=We}h.call(f.prototype)}else{try{throw Error()}catch(We){b=We}h()}}catch(We){if(We&&b&&typeof We.stack=="string"){for(var R=We.stack.split(`
3897`),D=b.stack.split(`
3898`),Y=R.length-1,le=D.length-1;1<=Y&&0<=le&&R[Y]!==D[le];)le--;for(;1<=Y&&0<=le;Y--,le--)if(R[Y]!==D[le]){if(Y!==1||le!==1)do if(Y--,le--,0>le||R[Y]!==D[le]){var Te=`
3899`+R[Y].replace(" at new "," at ");return h.displayName&&Te.includes("<anonymous>")&&(Te=Te.replace("<anonymous>",h.displayName)),Te}while(1<=Y&&0<=le);break}}}finally{Ye=!1,Error.prepareStackTrace=x}return(h=h?h.displayName||h.name:"")?ze(h):""}var mt=Object.prototype.hasOwnProperty,Ut=[],Bt=-1;function yt(h){return{current:h}}function dt(h){0>Bt||(h.current=Ut[Bt],Ut[Bt]=null,Bt--)}function Tt(h,f){Bt++,Ut[Bt]=h.current,h.current=f}var rn={},sn=yt(rn),zt=yt(!1),wt=rn;function En(h,f){var x=h.type.contextTypes;if(!x)return rn;var b=h.stateNode;if(b&&b.__reactInternalMemoizedUnmaskedChildContext===f)return b.__reactInternalMemoizedMaskedChildContext;var R={},D;for(D in x)R[D]=f[D];return b&&(h=h.stateNode,h.__reactInternalMemoizedUnmaskedChildContext=f,h.__reactInternalMemoizedMaskedChildContext=R),R}function jt(h){return h=h.childContextTypes,h!=null}function nr(){dt(zt),dt(sn)}function Fi(h,f,x){if(sn.current!==rn)throw Error(o(168));Tt(sn,f),Tt(zt,x)}function Rr(h,f,x){var b=h.stateNode;if(f=f.childContextTypes,typeof b.getChildContext!="function")return x;b=b.getChildContext();for(var R in b)if(!(R in f))throw Error(o(108,H(h)||"Unknown",R));return s({},x,b)}function Es(h){return h=(h=h.stateNode)&&h.__reactInternalMemoizedMergedChildContext||rn,wt=sn.current,Tt(sn,h),Tt(zt,zt.current),!0}function Sn(h,f,x){var b=h.stateNode;if(!b)throw Error(o(169));x?(h=Rr(h,f,wt),b.__reactInternalMemoizedMergedChildContext=h,dt(zt),dt(sn),Tt(sn,h)):dt(zt),Tt(zt,x)}var On=Math.clz32?Math.clz32:Or,Br=Math.log,Jn=Math.LN2;function Or(h){return h>>>=0,h===0?32:31-(Br(h)/Jn|0)|0}var bs=64,en=4194304;function cl(h){switch(h&-h){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return h&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return h&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return h}}function hc(h,f){var x=h.pendingLanes;if(x===0)return 0;var b=0,R=h.suspendedLanes,D=h.pingedLanes,Y=x&268435455;if(Y!==0){var le=Y&~R;le!==0?b=cl(le):(D&=Y,D!==0&&(b=cl(D)))}else Y=x&~R,Y!==0?b=cl(Y):D!==0&&(b=cl(D));if(b===0)return 0;if(f!==0&&f!==b&&!(f&R)&&(R=b&-b,D=f&-f,R>=D||R===16&&(D&4194240)!==0))return f;if(b&4&&(b|=x&16),f=h.entangledLanes,f!==0)for(h=h.entanglements,f&=b;0<f;)x=31-On(f),R=1<<x,b|=h[x],f&=~R;return b}function sf(h,f){switch(h){case 1:case 2:case 4:return f+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return f+5e3;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return-1;case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function wm(h,f){for(var x=h.suspendedLanes,b=h.pingedLanes,R=h.expirationTimes,D=h.pendingLanes;0<D;){var Y=31-On(D),le=1<<Y,Te=R[Y];Te===-1?(!(le&x)||le&b)&&(R[Y]=sf(le,f)):Te<=f&&(h.expiredLanes|=le),D&=~le}}function Zu(h){return h=h.pendingLanes&-1073741825,h!==0?h:h&1073741824?1073741824:0}function eh(h){for(var f=[],x=0;31>x;x++)f.push(h);return f}function ia(h,f,x){h.pendingLanes|=f,f!==536870912&&(h.suspendedLanes=0,h.pingedLanes=0),h=h.eventTimes,f=31-On(f),h[f]=x}function th(h,f){var x=h.pendingLanes&~f;h.pendingLanes=f,h.suspendedLanes=0,h.pingedLanes=0,h.expiredLanes&=f,h.mutableReadLanes&=f,h.entangledLanes&=f,f=h.entanglements;var b=h.eventTimes;for(h=h.expirationTimes;0<x;){var R=31-On(x),D=1<<R;f[R]=0,b[R]=-1,h[R]=-1,x&=~D}}function Cs(h,f){var x=h.entangledLanes|=f;for(h=h.entanglements;x;){var b=31-On(x),R=1<<b;R&f|h[b]&f&&(h[b]|=f),x&=~R}}var on=0;function Ws(h){return h&=-h,1<h?4<h?h&268435455?16:536870912:4:1}var sa=i.unstable_scheduleCallback,ul=i.unstable_cancelCallback,Bo=i.unstable_shouldYield,w1=i.unstable_requestPaint,ar=i.unstable_now,oa=i.unstable_ImmediatePriority,A1=i.unstable_UserBlockingPriority,nh=i.unstable_NormalPriority,rh=i.unstable_IdlePriority,dc=null,Ts=null;function fc(h){if(Ts&&typeof Ts.onCommitFiberRoot=="function")try{Ts.onCommitFiberRoot(dc,h,void 0,(h.current.flags&128)===128)}catch{}}function pc(h,f){return h===f&&(h!==0||1/h===1/f)||h!==h&&f!==f}var Vr=typeof Object.is=="function"?Object.is:pc,ki=null,ih=!1,of=!1;function sh(h){ki===null?ki=[h]:ki.push(h)}function oh(h){ih=!0,sh(h)}function Ui(){if(!of&&ki!==null){of=!0;var h=0,f=on;try{var x=ki;for(on=1;h<x.length;h++){var b=x[h];do b=b(!0);while(b!==null)}ki=null,ih=!1}catch(R){throw ki!==null&&(ki=ki.slice(h+1)),sa(oa,Ui),R}finally{on=f,of=!1}}return null}var Am=l.ReactCurrentBatchConfig;function is(h,f){if(Vr(h,f))return!0;if(typeof h!="object"||h===null||typeof f!="object"||f===null)return!1;var x=Object.keys(h),b=Object.keys(f);if(x.length!==b.length)return!1;for(b=0;b<x.length;b++){var R=x[b];if(!mt.call(f,R)||!Vr(h[R],f[R]))return!1}return!0}function af(h){switch(h.tag){case 5:return ze(h.type);case 16:return ze("Lazy");case 13:return ze("Suspense");case 19:return ze("SuspenseList");case 0:case 2:case 15:return h=ct(h.type,!1),h;case 11:return h=ct(h.type.render,!1),h;case 1:return h=ct(h.type,!0),h;default:return""}}function ti(h,f){if(h&&h.defaultProps){f=s({},f),h=h.defaultProps;for(var x in h)f[x]===void 0&&(f[x]=h[x]);return f}return f}var mc=yt(null),aa=null,Xs=null,ah=null;function Wr(){ah=Xs=aa=null}function la(h,f,x){lt?(Tt(mc,f._currentValue),f._currentValue=x):(Tt(mc,f._currentValue2),f._currentValue2=x)}function gc(h){var f=mc.current;dt(mc),lt?h._currentValue=f:h._currentValue2=f}function ca(h,f,x){for(;h!==null;){var b=h.alternate;if((h.childLanes&f)!==f?(h.childLanes|=f,b!==null&&(b.childLanes|=f)):b!==null&&(b.childLanes&f)!==f&&(b.childLanes|=f),h===x)break;h=h.return}}function hl(h,f){aa=h,ah=Xs=null,h=h.dependencies,h!==null&&h.firstContext!==null&&(h.lanes&f&&(mr=!0),h.firstContext=null)}function ni(h){var f=lt?h._currentValue:h._currentValue2;if(ah!==h)if(h={context:h,memoizedValue:f,next:null},Xs===null){if(aa===null)throw Error(o(308));Xs=h,aa.dependencies={lanes:0,firstContext:h}}else Xs=Xs.next=h;return f}var ji=null,zi=!1;function dl(h){h.updateQueue={baseState:h.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function lf(h,f){h=h.updateQueue,f.updateQueue===h&&(f.updateQueue={baseState:h.baseState,firstBaseUpdate:h.firstBaseUpdate,lastBaseUpdate:h.lastBaseUpdate,shared:h.shared,effects:h.effects})}function Js(h,f){return{eventTime:h,lane:f,tag:0,payload:null,callback:null,next:null}}function Oo(h,f){var x=h.updateQueue;x!==null&&(x=x.shared,Kn!==null&&h.mode&1&&!(qt&2)?(h=x.interleaved,h===null?(f.next=f,ji===null?ji=[x]:ji.push(x)):(f.next=h.next,h.next=f),x.interleaved=f):(h=x.pending,h===null?f.next=f:(f.next=h.next,h.next=f),x.pending=f))}function lh(h,f,x){if(f=f.updateQueue,f!==null&&(f=f.shared,(x&4194240)!==0)){var b=f.lanes;b&=h.pendingLanes,x|=b,f.lanes=x,Cs(h,x)}}function ch(h,f){var x=h.updateQueue,b=h.alternate;if(b!==null&&(b=b.updateQueue,x===b)){var R=null,D=null;if(x=x.firstBaseUpdate,x!==null){do{var Y={eventTime:x.eventTime,lane:x.lane,tag:x.tag,payload:x.payload,callback:x.callback,next:null};D===null?R=D=Y:D=D.next=Y,x=x.next}while(x!==null);D===null?R=D=f:D=D.next=f}else R=D=f;x={baseState:b.baseState,firstBaseUpdate:R,lastBaseUpdate:D,shared:b.shared,effects:b.effects},h.updateQueue=x;return}h=x.lastBaseUpdate,h===null?x.firstBaseUpdate=f:h.next=f,x.lastBaseUpdate=f}function uh(h,f,x,b){var R=h.updateQueue;zi=!1;var D=R.firstBaseUpdate,Y=R.lastBaseUpdate,le=R.shared.pending;if(le!==null){R.shared.pending=null;var Te=le,We=Te.next;Te.next=null,Y===null?D=We:Y.next=We,Y=Te;var gt=h.alternate;gt!==null&&(gt=gt.updateQueue,le=gt.lastBaseUpdate,le!==Y&&(le===null?gt.firstBaseUpdate=We:le.next=We,gt.lastBaseUpdate=Te))}if(D!==null){var Wt=R.baseState;Y=0,gt=We=Te=null,le=D;do{var Ot=le.lane,tn=le.eventTime;if((b&Ot)===Ot){gt!==null&&(gt=gt.next={eventTime:tn,lane:0,tag:le.tag,payload:le.payload,callback:le.callback,next:null});e:{var at=h,Cr=le;switch(Ot=f,tn=x,Cr.tag){case 1:if(at=Cr.payload,typeof at=="function"){Wt=at.call(tn,Wt,Ot);break e}Wt=at;break e;case 3:at.flags=at.flags&-65537|128;case 0:if(at=Cr.payload,Ot=typeof at=="function"?at.call(tn,Wt,Ot):at,Ot==null)break e;Wt=s({},Wt,Ot);break e;case 2:zi=!0}}le.callback!==null&&le.lane!==0&&(h.flags|=64,Ot=R.effects,Ot===null?R.effects=[le]:Ot.push(le))}else tn={eventTime:tn,lane:Ot,tag:le.tag,payload:le.payload,callback:le.callback,next:null},gt===null?(We=gt=tn,Te=Wt):gt=gt.next=tn,Y|=Ot;if(le=le.next,le===null){if(le=R.shared.pending,le===null)break;Ot=le,le=Ot.next,Ot.next=null,R.lastBaseUpdate=Ot,R.shared.pending=null}}while(!0);if(gt===null&&(Te=Wt),R.baseState=Te,R.firstBaseUpdate=We,R.lastBaseUpdate=gt,f=R.shared.interleaved,f!==null){R=f;do Y|=R.lane,R=R.next;while(R!==f)}else D===null&&(R.shared.lanes=0);Bs|=Y,h.lanes=Y,h.memoizedState=Wt}}function Em(h,f,x){if(h=f.effects,f.effects=null,h!==null)for(f=0;f<h.length;f++){var b=h[f],R=b.callback;if(R!==null){if(b.callback=null,b=x,typeof R!="function")throw Error(o(191,R));R.call(b)}}}var bm=new n.Component().refs;function cf(h,f,x,b){f=h.memoizedState,x=x(b,f),x=x==null?f:s({},f,x),h.memoizedState=x,h.lanes===0&&(h.updateQueue.baseState=x)}var hh={isMounted:function(h){return(h=h._reactInternals)?F(h)===h:!1},enqueueSetState:function(h,f,x){h=h._reactInternals;var b=mn(),R=hs(h),D=Js(b,R);D.payload=f,x!=null&&(D.callback=x),Oo(h,D),f=Nr(h,R,b),f!==null&&lh(f,h,R)},enqueueReplaceState:function(h,f,x){h=h._reactInternals;var b=mn(),R=hs(h),D=Js(b,R);D.tag=1,D.payload=f,x!=null&&(D.callback=x),Oo(h,D),f=Nr(h,R,b),f!==null&&lh(f,h,R)},enqueueForceUpdate:function(h,f){h=h._reactInternals;var x=mn(),b=hs(h),R=Js(x,b);R.tag=2,f!=null&&(R.callback=f),Oo(h,R),f=Nr(h,b,x),f!==null&&lh(f,h,b)}};function uf(h,f,x,b,R,D,Y){return h=h.stateNode,typeof h.shouldComponentUpdate=="function"?h.shouldComponentUpdate(b,D,Y):f.prototype&&f.prototype.isPureReactComponent?!is(x,b)||!is(R,D):!0}function Cm(h,f,x){var b=!1,R=rn,D=f.contextType;return typeof D=="object"&&D!==null?D=ni(D):(R=jt(f)?wt:sn.current,b=f.contextTypes,D=(b=b!=null)?En(h,R):rn),f=new f(x,D),h.memoizedState=f.state!==null&&f.state!==void 0?f.state:null,f.updater=hh,h.stateNode=f,f._reactInternals=h,b&&(h=h.stateNode,h.__reactInternalMemoizedUnmaskedChildContext=R,h.__reactInternalMemoizedMaskedChildContext=D),f}function Tm(h,f,x,b){h=f.state,typeof f.componentWillReceiveProps=="function"&&f.componentWillReceiveProps(x,b),typeof f.UNSAFE_componentWillReceiveProps=="function"&&f.UNSAFE_componentWillReceiveProps(x,b),f.state!==h&&hh.enqueueReplaceState(f,f.state,null)}function hf(h,f,x,b){var R=h.stateNode;R.props=x,R.state=h.memoizedState,R.refs=bm,dl(h);var D=f.contextType;typeof D=="object"&&D!==null?R.context=ni(D):(D=jt(f)?wt:sn.current,R.context=En(h,D)),R.state=h.memoizedState,D=f.getDerivedStateFromProps,typeof D=="function"&&(cf(h,f,D,x),R.state=h.memoizedState),typeof f.getDerivedStateFromProps=="function"||typeof R.getSnapshotBeforeUpdate=="function"||typeof R.UNSAFE_componentWillMount!="function"&&typeof R.componentWillMount!="function"||(f=R.state,typeof R.componentWillMount=="function"&&R.componentWillMount(),typeof R.UNSAFE_componentWillMount=="function"&&R.UNSAFE_componentWillMount(),f!==R.state&&hh.enqueueReplaceState(R,R.state,null),uh(h,x,R,b),R.state=h.memoizedState),typeof R.componentDidMount=="function"&&(h.flags|=4194308)}var fl=[],Do=0,dh=null,fh=0,Hi=[],vi=0,ua=null,$s=1,Ks="";function ha(h,f){fl[Do++]=fh,fl[Do++]=dh,dh=h,fh=f}function Im(h,f,x){Hi[vi++]=$s,Hi[vi++]=Ks,Hi[vi++]=ua,ua=h;var b=$s;h=Ks;var R=32-On(b)-1;b&=~(1<<R),x+=1;var D=32-On(f)+R;if(30<D){var Y=R-R%5;D=(b&(1<<Y)-1).toString(32),b>>=Y,R-=Y,$s=1<<32-On(f)+R|x<<R|b,Ks=D+h}else $s=1<<D|x<<R|b,Ks=h}function df(h){h.return!==null&&(ha(h,1),Im(h,1,0))}function ff(h){for(;h===dh;)dh=fl[--Do],fl[Do]=null,fh=fl[--Do],fl[Do]=null;for(;h===ua;)ua=Hi[--vi],Hi[vi]=null,Ks=Hi[--vi],Hi[vi]=null,$s=Hi[--vi],Hi[vi]=null}var Xr=null,Sr=null,Nn=!1,pl=!1,Gi=null;function pf(h,f){var x=Ei(5,null,null,0);x.elementType="DELETED",x.stateNode=f,x.return=h,f=h.deletions,f===null?(h.deletions=[x],h.flags|=16):f.push(x)}function mf(h,f){switch(h.tag){case 5:return f=Gr(f,h.type,h.pendingProps),f!==null?(h.stateNode=f,Xr=h,Sr=Ro(f),!0):!1;case 6:return f=al(f,h.pendingProps),f!==null?(h.stateNode=f,Xr=h,Sr=null,!0):!1;case 13:if(f=Po(f),f!==null){var x=ua!==null?{id:$s,overflow:Ks}:null;return h.memoizedState={dehydrated:f,treeContext:x,retryLane:1073741824},x=Ei(18,null,null,0),x.stateNode=f,x.return=h,h.child=x,Xr=h,Sr=null,!0}return!1;default:return!1}}function ph(h){return(h.mode&1)!==0&&(h.flags&128)===0}function Lo(h){if(Nn){var f=Sr;if(f){var x=f;if(!mf(h,f)){if(ph(h))throw Error(o(418));f=rs(x);var b=Xr;f&&mf(h,f)?pf(b,x):(h.flags=h.flags&-4097|2,Nn=!1,Xr=h)}}else{if(ph(h))throw Error(o(418));h.flags=h.flags&-4097|2,Nn=!1,Xr=h}}}function Pm(h){for(h=h.return;h!==null&&h.tag!==5&&h.tag!==3&&h.tag!==13;)h=h.return;Xr=h}function yc(h){if(!Oe||h!==Xr)return!1;if(!Nn)return Pm(h),Nn=!0,!1;if(h.tag!==3&&(h.tag!==5||de(h.type)&&!Ae(h.type,h.memoizedProps))){var f=Sr;if(f){if(ph(h)){for(h=Sr;h;)h=rs(h);throw Error(o(418))}for(;f;)pf(h,f),f=rs(f)}}if(Pm(h),h.tag===13){if(!Oe)throw Error(o(316));if(h=h.memoizedState,h=h!==null?h.dehydrated:null,!h)throw Error(o(317));Sr=Ku(h)}else Sr=Xr?rs(h.stateNode):null;return!0}function ml(){Oe&&(Sr=Xr=null,pl=Nn=!1)}function mh(h){Gi===null?Gi=[h]:Gi.push(h)}function gl(h,f,x){if(h=x.ref,h!==null&&typeof h!="function"&&typeof h!="object"){if(x._owner){if(x=x._owner,x){if(x.tag!==1)throw Error(o(309));var b=x.stateNode}if(!b)throw Error(o(147,h));var R=b,D=""+h;return f!==null&&f.ref!==null&&typeof f.ref=="function"&&f.ref._stringRef===D?f.ref:(f=function(Y){var le=R.refs;le===bm&&(le=R.refs={}),Y===null?delete le[D]:le[D]=Y},f._stringRef=D,f)}if(typeof h!="string")throw Error(o(284));if(!x._owner)throw Error(o(290,h))}return h}function No(h,f){throw h=Object.prototype.toString.call(f),Error(o(31,h==="[object Object]"?"object with keys {"+Object.keys(f).join(", ")+"}":h))}function yl(h){var f=h._init;return f(h._payload)}function Rm(h){function f(xe,fe){if(h){var Ee=xe.deletions;Ee===null?(xe.deletions=[fe],xe.flags|=16):Ee.push(fe)}}function x(xe,fe){if(!h)return null;for(;
vendor: 5,039 bytes, line 3899
3899fe!==null;)f(xe,fe),fe=fe.sibling;return null}function b(xe,fe){for(xe=new Map;fe!==null;)fe.key!==null?xe.set(fe.key,fe):xe.set(fe.index,fe),fe=fe.sibling;return xe}function R(xe,fe){return xe=co(xe,fe),xe.index=0,xe.sibling=null,xe}function D(xe,fe,Ee){return xe.index=Ee,h?(Ee=xe.alternate,Ee!==null?(Ee=Ee.index,Ee<fe?(xe.flags|=2,fe):Ee):(xe.flags|=2,fe)):(xe.flags|=1048576,fe)}function Y(xe){return h&&xe.alternate===null&&(xe.flags|=2),xe}function le(xe,fe,Ee,rt){return fe===null||fe.tag!==6?(fe=Hh(Ee,xe.mode,rt),fe.return=xe,fe):(fe=R(fe,Ee),fe.return=xe,fe)}function Te(xe,fe,Ee,rt){var At=Ee.type;return At===p?gt(xe,fe,Ee.props.children,rt,Ee.key):fe!==null&&(fe.elementType===At||typeof At=="object"&&At!==null&&At.$$typeof===I&&yl(At)===fe.type)?(rt=R(fe,Ee.props),rt.ref=gl(xe,fe,Ee),rt.return=xe,rt):(rt=zh(Ee.type,Ee.key,Ee.props,null,xe.mode,rt),rt.ref=gl(xe,fe,Ee),rt.return=xe,rt)}function We(xe,fe,Ee,rt){return fe===null||fe.tag!==4||fe.stateNode.containerInfo!==Ee.containerInfo||fe.stateNode.implementation!==Ee.implementation?(fe=Gh(Ee,xe.mode,rt),fe.return=xe,fe):(fe=R(fe,Ee.children||[]),fe.return=xe,fe)}function gt(xe,fe,Ee,rt,At){return fe===null||fe.tag!==7?(fe=Oa(Ee,xe.mode,rt,At),fe.return=xe,fe):(fe=R(fe,Ee),fe.return=xe,fe)}function Wt(xe,fe,Ee){if(typeof fe=="string"&&fe!==""||typeof fe=="number")return fe=Hh(""+fe,xe.mode,Ee),fe.return=xe,fe;if(typeof fe=="object"&&fe!==null){switch(fe.$$typeof){case u:return Ee=zh(fe.type,fe.key,fe.props,null,xe.mode,Ee),Ee.ref=gl(xe,null,fe),Ee.return=xe,Ee;case d:return fe=Gh(fe,xe.mode,Ee),fe.return=xe,fe;case I:var rt=fe._init;return Wt(xe,rt(fe._payload),Ee)}if(me(fe)||O(fe))return fe=Oa(fe,xe.mode,Ee,null),fe.return=xe,fe;No(xe,fe)}return null}function Ot(xe,fe,Ee,rt){var At=fe!==null?fe.key:null;if(typeof Ee=="string"&&Ee!==""||typeof Ee=="number")return At!==null?null:le(xe,fe,""+Ee,rt);if(typeof Ee=="object"&&Ee!==null){switch(Ee.$$typeof){case u:return Ee.key===At?Te(xe,fe,Ee,rt):null;case d:return Ee.key===At?We(xe,fe,Ee,rt):null;case I:return At=Ee._init,Ot(xe,fe,At(Ee._payload),rt)}if(me(Ee)||O(Ee))return At!==null?null:gt(xe,fe,Ee,rt,null);No(xe,Ee)}return null}function tn(xe,fe,Ee,rt,At){if(typeof rt=="string"&&rt!==""||typeof rt=="number")return xe=xe.get(Ee)||null,le(fe,xe,""+rt,At);if(typeof rt=="object"&&rt!==null){switch(rt.$$typeof){case u:return xe=xe.get(rt.key===null?Ee:rt.key)||null,Te(fe,xe,rt,At);case d:return xe=xe.get(rt.key===null?Ee:rt.key)||null,We(fe,xe,rt,At);case I:var Kt=rt._init;return tn(xe,fe,Ee,Kt(rt._payload),At)}if(me(rt)||O(rt))return xe=xe.get(Ee)||null,gt(fe,xe,rt,At,null);No(fe,rt)}return null}function at(xe,fe,Ee,rt){for(var At=null,Kt=null,Xt=fe,dn=fe=0,ir=null;Xt!==null&&dn<Ee.length;dn++){Xt.index>dn?(ir=Xt,Xt=null):ir=Xt.sibling;var hn=Ot(xe,Xt,Ee[dn],rt);if(hn===null){Xt===null&&(Xt=ir);break}h&&Xt&&hn.alternate===null&&f(xe,Xt),fe=D(hn,fe,dn),Kt===null?At=hn:Kt.sibling=hn,Kt=hn,Xt=ir}if(dn===Ee.length)return x(xe,Xt),Nn&&ha(xe,dn),At;if(Xt===null){for(;dn<Ee.length;dn++)Xt=Wt(xe,Ee[dn],rt),Xt!==null&&(fe=D(Xt,fe,dn),Kt===null?At=Xt:Kt.sibling=Xt,Kt=Xt);return Nn&&ha(xe,dn),At}for(Xt=b(xe,Xt);dn<Ee.length;dn++)ir=tn(Xt,xe,dn,Ee[dn],rt),ir!==null&&(h&&ir.alternate!==null&&Xt.delete(ir.key===null?dn:ir.key),fe=D(ir,fe,dn),Kt===null?At=ir:Kt.sibling=ir,Kt=ir);return h&&Xt.forEach(function(uo){return f(xe,uo)}),Nn&&ha(xe,dn),At}function Cr(xe,fe,Ee,rt){var At=O(Ee);if(typeof At!="function")throw Error(o(150));if(Ee=At.call(Ee),Ee==null)throw Error(o(151));for(var Kt=At=null,Xt=fe,dn=fe=0,ir=null,hn=Ee.next();Xt!==null&&!hn.done;dn++,hn=Ee.next()){Xt.index>dn?(ir=Xt,Xt=null):ir=Xt.sibling;var uo=Ot(xe,Xt,hn.value,rt);if(uo===null){Xt===null&&(Xt=ir);break}h&&Xt&&uo.alternate===null&&f(xe,Xt),fe=D(uo,fe,dn),Kt===null?At=uo:Kt.sibling=uo,Kt=uo,Xt=ir}if(hn.done)return x(xe,Xt),Nn&&ha(xe,dn),At;if(Xt===null){for(;!hn.done;dn++,hn=Ee.next())hn=Wt(xe,hn.value,rt),hn!==null&&(fe=D(hn,fe,dn),Kt===null?At=hn:Kt.sibling=hn,Kt=hn);return Nn&&ha(xe,dn),At}for(Xt=b(xe,Xt);!hn.done;dn++,hn=Ee.next())hn=tn(Xt,xe,dn,hn.value,rt),hn!==null&&(h&&hn.alternate!==null&&Xt.delete(hn.key===null?dn:hn.key),fe=D(hn,fe,dn),Kt===null?At=hn:Kt.sibling=hn,Kt=hn);return h&&Xt.forEach(function(Xf){return f(xe,Xf)}),Nn&&ha(xe,dn),At}function bi(xe,fe,Ee,rt){if(typeof Ee=="object"&&Ee!==null&&Ee.type===p&&Ee.key===null&&(Ee=Ee.props.children),typeof Ee=="object"&&Ee!==null){switch(Ee.$$typeof){case u:e:{for(var At=Ee.key,Kt=fe;Kt!==null;){if(Kt.key===At){if(At=Ee.type,At===p){if(Kt.tag===7){x(xe,Kt.sibling),fe=R(Kt,Ee.props.children),fe.return=xe,xe=fe;break e}}else if(Kt.elementType===At||typeof At=="object"&&At!==null&&At.$$typeof===I&&yl(At)===Kt.type){x(xe,Kt.sibling),fe=R(Kt,Ee.props),fe.ref=gl(xe,Kt,Ee),fe.return=xe,xe=fe;break e}x(xe,Kt);break}else f(xe,Kt);Kt=Kt.sibling}Ee.type===p?(fe=Oa(Ee.props.children,xe.mode,rt,Ee.key),fe.return=xe,xe=fe):(rt=zh(Ee.type,Ee.key,Ee.props,null,xe.mode,rt),rt.ref=gl(xe,fe,Ee),rt.return=xe,xe=rt)}return Y(xe);case d:e:{for(Kt=Ee.key;
vendor: 128,387 bytes, lines 3899-3913
3899fe!==null;){if(fe.key===Kt)if(fe.tag===4&&fe.stateNode.containerInfo===Ee.containerInfo&&fe.stateNode.implementation===Ee.implementation){x(xe,fe.sibling),fe=R(fe,Ee.children||[]),fe.return=xe,xe=fe;break e}else{x(xe,fe);break}else f(xe,fe);fe=fe.sibling}fe=Gh(Ee,xe.mode,rt),fe.return=xe,xe=fe}return Y(xe);case I:return Kt=Ee._init,bi(xe,fe,Kt(Ee._payload),rt)}if(me(Ee))return at(xe,fe,Ee,rt);if(O(Ee))return Cr(xe,fe,Ee,rt);No(xe,Ee)}return typeof Ee=="string"&&Ee!==""||typeof Ee=="number"?(Ee=""+Ee,fe!==null&&fe.tag===6?(x(xe,fe.sibling),fe=R(fe,Ee),fe.return=xe,xe=fe):(x(xe,fe),fe=Hh(Ee,xe.mode,rt),fe.return=xe,xe=fe),Y(xe)):x(xe,fe)}return bi}var Ys=Rm(!0),Bm=Rm(!1),vl={},ri=yt(vl),da=yt(vl),fa=yt(vl);function ss(h){if(h===vl)throw Error(o(174));return h}function gh(h,f){Tt(fa,f),Tt(da,h),Tt(ri,vl),h=ge(f),dt(ri),Tt(ri,h)}function _l(){dt(ri),dt(da),dt(fa)}function Om(h){var f=ss(fa.current),x=ss(ri.current);f=U(x,h.type,f),x!==f&&(Tt(da,h),Tt(ri,f))}function gf(h){da.current===h&&(dt(ri),dt(da))}var jn=yt(0);function yh(h){for(var f=h;f!==null;){if(f.tag===13){var x=f.memoizedState;if(x!==null&&(x=x.dehydrated,x===null||ws(x)||ns(x)))return f}else if(f.tag===19&&f.memoizedProps.revealOrder!==void 0){if(f.flags&128)return f}else if(f.child!==null){f.child.return=f,f=f.child;continue}if(f===h)break;for(;f.sibling===null;){if(f.return===null||f.return===h)return null;f=f.return}f.sibling.return=f.return,f=f.sibling}return null}var _i=[];function pa(){for(var h=0;h<_i.length;h++){var f=_i[h];lt?f._workInProgressVersionPrimary=null:f._workInProgressVersionSecondary=null}_i.length=0}var vc=l.ReactCurrentDispatcher,xi=l.ReactCurrentBatchConfig,ma=0,zn=null,dr=null,fr=null,vh=!1,Is=!1,ga=0,_c=0;function pr(){throw Error(o(321))}function _h(h,f){if(f===null)return!1;for(var x=0;x<f.length&&x<h.length;x++)if(!Vr(h[x],f[x]))return!1;return!0}function xl(h,f,x,b,R,D){if(ma=D,zn=f,f.memoizedState=null,f.updateQueue=null,f.lanes=0,vc.current=h===null||h.memoizedState===null?Sf:wf,h=x(b,R),Is){D=0;do{if(Is=!1,ga=0,25<=D)throw Error(o(301));D+=1,fr=dr=null,f.updateQueue=null,vc.current=Af,h=x(b,R)}while(Is)}if(vc.current=Al,f=dr!==null&&dr.next!==null,ma=0,fr=dr=zn=null,vh=!1,f)throw Error(o(300));return h}function Fo(){var h=ga!==0;return ga=0,h}function os(){var h={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return fr===null?zn.memoizedState=fr=h:fr=fr.next=h,fr}function as(){if(dr===null){var h=zn.alternate;h=h!==null?h.memoizedState:null}else h=dr.next;var f=fr===null?zn.memoizedState:fr.next;if(f!==null)fr=f,dr=h;else{if(h===null)throw Error(o(310));dr=h,h={memoizedState:dr.memoizedState,baseState:dr.baseState,baseQueue:dr.baseQueue,queue:dr.queue,next:null},fr===null?zn.memoizedState=fr=h:fr=fr.next=h}return fr}function Ps(h,f){return typeof f=="function"?f(h):f}function xc(h){var f=as(),x=f.queue;if(x===null)throw Error(o(311));x.lastRenderedReducer=h;var b=dr,R=b.baseQueue,D=x.pending;if(D!==null){if(R!==null){var Y=R.next;R.next=D.next,D.next=Y}b.baseQueue=R=D,x.pending=null}if(R!==null){D=R.next,b=b.baseState;var le=Y=null,Te=null,We=D;do{var gt=We.lane;if((ma&gt)===gt)Te!==null&&(Te=Te.next={lane:0,action:We.action,hasEagerState:We.hasEagerState,eagerState:We.eagerState,next:null}),b=We.hasEagerState?We.eagerState:h(b,We.action);else{var Wt={lane:gt,action:We.action,hasEagerState:We.hasEagerState,eagerState:We.eagerState,next:null};Te===null?(le=Te=Wt,Y=b):Te=Te.next=Wt,zn.lanes|=gt,Bs|=gt}We=We.next}while(We!==null&&We!==D);Te===null?Y=b:Te.next=le,Vr(b,f.memoizedState)||(mr=!0),f.memoizedState=b,f.baseState=Y,f.baseQueue=Te,x.lastRenderedState=b}if(h=x.interleaved,h!==null){R=h;do D=R.lane,zn.lanes|=D,Bs|=D,R=R.next;while(R!==h)}else R===null&&(x.lanes=0);return[f.memoizedState,x.dispatch]}function Mc(h){var f=as(),x=f.queue;if(x===null)throw Error(o(311));x.lastRenderedReducer=h;var b=x.dispatch,R=x.pending,D=f.memoizedState;if(R!==null){x.pending=null;var Y=R=R.next;do D=h(D,Y.action),Y=Y.next;while(Y!==R);Vr(D,f.memoizedState)||(mr=!0),f.memoizedState=D,f.baseQueue===null&&(f.baseState=D),x.lastRenderedState=D}return[D,b]}function yf(){}function vf(h,f){var x=zn,b=as(),R=f(),D=!Vr(b.memoizedState,R);if(D&&(b.memoizedState=R,mr=!0),b=b.queue,Ml(qs.bind(null,x,b,h),[h]),b.getSnapshot!==f||D||fr!==null&&fr.memoizedState.tag&1){if(x.flags|=2048,wc(9,xf.bind(null,x,b,R,f),void 0,null),Kn===null)throw Error(o(349));ma&30||_f(x,f,R)}return R}function _f(h,f,x){h.flags|=16384,h={getSnapshot:f,value:x},f=zn.updateQueue,f===null?(f={lastEffect:null,stores:null},zn.updateQueue=f,f.stores=[h]):(x=f.stores,x===null?f.stores=[h]:x.push(h))}function xf(h,f,x,b){f.value=x,f.getSnapshot=b,xh(f)&&Nr(h,1,-1)}function qs(h,f,x){return x(function(){xh(f)&&Nr(h,1,-1)})}function xh(h){var f=h.getSnapshot;h=h.value;try{var x=f();return!Vr(h,x)}catch{return!0}}function Sc(h){var f=os();return typeof h=="function"&&(h=h()),f.memoizedState=f.baseState=h,h={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:Ps,lastRenderedState:h},f.queue=h,h=h.dispatch=E1.bind(null,zn,h),[f.memoizedState,h]}function wc(h,f,x,b){return h={tag:h,create:f,destroy:x,deps:b,next:null},f=zn.updateQueue,f===null?(f={lastEffect:null,stores:null},zn.updateQueue=f,f.lastEffect=h.next=h):(x=f.lastEffect,x===null?f.lastEffect=h.next=h:(b=x.next,x.next=h,h.next=b,f.lastEffect=h)),h}function Dm(){return as().memoizedState}function ko(h,f,x,b){var R=os();zn.flags|=h,R.memoizedState=wc(1|f,x,void 0,b===void 0?null:b)}function Mh(h,f,x,b){var R=as();b=b===void 0?null:b;var D=void 0;if(dr!==null){var Y=dr.memoizedState;if(D=Y.destroy,b!==null&&_h(b,Y.deps)){R.memoizedState=wc(f,x,D,b);return}}zn.flags|=h,R.memoizedState=wc(1|f,x,D,b)}function Sh(h,f){return ko(8390656,8,h,f)}function Ml(h,f){return Mh(2048,8,h,f)}function Tn(h,f){return Mh(4,2,h,f)}function wh(h,f){return Mh(4,4,h,f)}function Ac(h,f){if(typeof f=="function")return h=h(),f(h),function(){f(null)};if(f!=null)return h=h(),f.current=h,function(){f.current=null}}function Sl(h,f,x){return x=x!=null?x.concat([h]):null,Mh(4,4,Ac.bind(null,f,h),x)}function Ah(){}function Eh(h,f){var x=as();f=f===void 0?null:f;var b=x.memoizedState;return b!==null&&f!==null&&_h(f,b[1])?b[0]:(x.memoizedState=[h,f],h)}function wl(h,f){var x=as();f=f===void 0?null:f;var b=x.memoizedState;return b!==null&&f!==null&&_h(f,b[1])?b[0]:(h=h(),x.memoizedState=[h,f],h)}function bh(h,f){var x=on;on=x!==0&&4>x?x:4,h(!0);var b=xi.transition;xi.transition={};try{h(!1),f()}finally{on=x,xi.transition=b}}function ya(){return as().memoizedState}function Lm(h,f,x){var b=hs(h);x={lane:b,action:x,hasEagerState:!1,eagerState:null,next:null},Nm(h)?Mf(f,x):(Ec(h,f,x),x=mn(),h=Nr(h,b,x),h!==null&&bc(h,f,b))}function E1(h,f,x){var b=hs(h),R={lane:b,action:x,hasEagerState:!1,eagerState:null,next:null};if(Nm(h))Mf(f,R);else{Ec(h,f,R);var D=h.alternate;if(h.lanes===0&&(D===null||D.lanes===0)&&(D=f.lastRenderedReducer,D!==null))try{var Y=f.lastRenderedState,le=D(Y,x);if(R.hasEagerState=!0,R.eagerState=le,Vr(le,Y))return}catch{}finally{}x=mn(),h=Nr(h,b,x),h!==null&&bc(h,f,b)}}function Nm(h){var f=h.alternate;return h===zn||f!==null&&f===zn}function Mf(h,f){Is=vh=!0;var x=h.pending;x===null?f.next=f:(f.next=x.next,x.next=f),h.pending=f}function Ec(h,f,x){Kn!==null&&h.mode&1&&!(qt&2)?(h=f.interleaved,h===null?(x.next=x,ji===null?ji=[f]:ji.push(f)):(x.next=h.next,h.next=x),f.interleaved=x):(h=f.pending,h===null?x.next=x:(x.next=h.next,h.next=x),f.pending=x)}function bc(h,f,x){if(x&4194240){var b=f.lanes;b&=h.pendingLanes,x|=b,f.lanes=x,Cs(h,x)}}var Al={readContext:ni,useCallback:pr,useContext:pr,useEffect:pr,useImperativeHandle:pr,useInsertionEffect:pr,useLayoutEffect:pr,useMemo:pr,useReducer:pr,useRef:pr,useState:pr,useDebugValue:pr,useDeferredValue:pr,useTransition:pr,useMutableSource:pr,useSyncExternalStore:pr,useId:pr,unstable_isNewReconciler:!1},Sf={readContext:ni,useCallback:function(h,f){return os().memoizedState=[h,f===void 0?null:f],h},useContext:ni,useEffect:Sh,useImperativeHandle:function(h,f,x){return x=x!=null?x.concat([h]):null,ko(4194308,4,Ac.bind(null,f,h),x)},useLayoutEffect:function(h,f){return ko(4194308,4,h,f)},useInsertionEffect:function(h,f){return ko(4,2,h,f)},useMemo:function(h,f){var x=os();return f=f===void 0?null:f,h=h(),x.memoizedState=[h,f],h},useReducer:function(h,f,x){var b=os();return f=x!==void 0?x(f):f,b.memoizedState=b.baseState=f,h={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:h,lastRenderedState:f},b.queue=h,h=h.dispatch=Lm.bind(null,zn,h),[b.memoizedState,h]},useRef:function(h){var f=os();return h={current:h},f.memoizedState=h},useState:Sc,useDebugValue:Ah,useDeferredValue:function(h){var f=Sc(h),x=f[0],b=f[1];return Sh(function(){var R=xi.transition;xi.transition={};try{b(h)}finally{xi.transition=R}},[h]),x},useTransition:function(){var h=Sc(!1),f=h[0];return h=bh.bind(null,h[1]),os().memoizedState=h,[f,h]},useMutableSource:function(){},useSyncExternalStore:function(h,f,x){var b=zn,R=os();if(Nn){if(x===void 0)throw Error(o(407));x=x()}else{if(x=f(),Kn===null)throw Error(o(349));ma&30||_f(b,f,x)}R.memoizedState=x;var D={value:x,getSnapshot:f};return R.queue=D,Sh(qs.bind(null,b,D,h),[h]),b.flags|=2048,wc(9,xf.bind(null,b,D,x,f),void 0,null),x},useId:function(){var h=os(),f=Kn.identifierPrefix;if(Nn){var x=Ks,b=$s;x=(b&~(1<<32-On(b)-1)).toString(32)+x,f=":"+f+"R"+x,x=ga++,0<x&&(f+="H"+x.toString(32)),f+=":"}else x=_c++,f=":"+f+"r"+x.toString(32)+":";return h.memoizedState=f},unstable_isNewReconciler:!1},wf={readContext:ni,useCallback:Eh,useContext:ni,useEffect:Ml,useImperativeHandle:Sl,useInsertionEffect:Tn,useLayoutEffect:wh,useMemo:wl,useReducer:xc,useRef:Dm,useState:function(){return xc(Ps)},useDebugValue:Ah,useDeferredValue:function(h){var f=xc(Ps),x=f[0],b=f[1];return Ml(function(){var R=xi.transition;xi.transition={};try{b(h)}finally{xi.transition=R}},[h]),x},useTransition:function(){var h=xc(Ps)[0],f=as().memoizedState;return[h,f]},useMutableSource:yf,useSyncExternalStore:vf,useId:ya,unstable_isNewReconciler:!1},Af={readContext:ni,useCallback:Eh,useContext:ni,useEffect:Ml,useImperativeHandle:Sl,useInsertionEffect:Tn,useLayoutEffect:wh,useMemo:wl,useReducer:Mc,useRef:Dm,useState:function(){return Mc(Ps)},useDebugValue:Ah,useDeferredValue:function(h){var f=Mc(Ps),x=f[0],b=f[1];return Ml(function(){var R=xi.transition;xi.transition={};try{b(h)}finally{xi.transition=R}},[h]),x},useTransition:function(){var h=Mc(Ps)[0],f=as().memoizedState;return[h,f]},useMutableSource:yf,useSyncExternalStore:vf,useId:ya,unstable_isNewReconciler:!1};function Ef(h,f){try{var x="",b=f;do x+=af(b),b=b.return;while(b);var R=x}catch(D){R=`
3900Error generating stack: `+D.message+`
3901`+D.stack}return{value:h,source:f,stack:R}}function Ch(h,f){try{console.error(f.value)}catch(x){setTimeout(function(){throw x})}}var b1=typeof WeakMap=="function"?WeakMap:Map;function Fm(h,f,x){x=Js(-1,x),x.tag=3,x.payload={element:null};var b=f.value;return x.callback=function(){Pl||(Pl=!0,Ln=b),Ch(h,f)},x}function Th(h,f,x){x=Js(-1,x),x.tag=3;var b=h.type.getDerivedStateFromError;if(typeof b=="function"){var R=f.value;x.payload=function(){return b(R)},x.callback=function(){Ch(h,f)}}var D=h.stateNode;return D!==null&&typeof D.componentDidCatch=="function"&&(x.callback=function(){Ch(h,f),typeof b!="function"&&(us===null?us=new Set([this]):us.add(this));var Y=f.stack;this.componentDidCatch(f.value,{componentStack:Y!==null?Y:""})}),x}function Qs(h,f,x){var b=h.pingCache;if(b===null){b=h.pingCache=new b1;var R=new Set;b.set(f,R)}else R=b.get(f),R===void 0&&(R=new Set,b.set(f,R));R.has(x)||(R.add(x),h=Gf.bind(null,h,f,x),f.then(h,h))}function bf(h){do{var f;if((f=h.tag===13)&&(f=h.memoizedState,f=f!==null?f.dehydrated!==null:!0),f)return h;h=h.return}while(h!==null);return null}function va(h,f,x,b,R){return h.mode&1?(h.flags|=65536,h.lanes=R,h):(h===f?h.flags|=65536:(h.flags|=128,x.flags|=131072,x.flags&=-52805,x.tag===1&&(x.alternate===null?x.tag=17:(f=Js(-1,1),f.tag=2,Oo(x,f))),x.lanes|=1),h)}function lr(h){h.flags|=4}function El(h,f){if(h!==null&&h.child===f.child)return!0;if(f.flags&16)return!1;for(h=f.child;h!==null;){if(h.flags&12854||h.subtreeFlags&12854)return!1;h=h.sibling}return!0}var Mi,_a,Ih,Ph;if(Pt)Mi=function(h,f){for(var x=f.child;x!==null;){if(x.tag===5||x.tag===6)se(h,x.stateNode);else if(x.tag!==4&&x.child!==null){x.child.return=x,x=x.child;continue}if(x===f)break;for(;x.sibling===null;){if(x.return===null||x.return===f)return;x=x.return}x.sibling.return=x.return,x=x.sibling}},_a=function(){},Ih=function(h,f,x,b,R){if(h=h.memoizedProps,h!==b){var D=f.stateNode,Y=ss(ri.current);x=pe(D,x,h,b,R,Y),(f.updateQueue=x)&&lr(f)}},Ph=function(h,f,x,b){x!==b&&lr(f)};else if(Be){Mi=function(h,f,x,b){for(var R=f.child;R!==null;){if(R.tag===5){var D=R.stateNode;x&&b&&(D=un(D,R.type,R.memoizedProps,R)),se(h,D)}else if(R.tag===6)D=R.stateNode,x&&b&&(D=Hr(D,R.memoizedProps,R)),se(h,D);else if(R.tag!==4){if(R.tag===22&&R.memoizedState!==null)D=R.child,D!==null&&(D.return=R),Mi(h,R,!0,!0);else if(R.child!==null){R.child.return=R,R=R.child;continue}}if(R===f)break;for(;R.sibling===null;){if(R.return===null||R.return===f)return;R=R.return}R.sibling.return=R.return,R=R.sibling}};var Uo=function(h,f,x,b){for(var R=f.child;R!==null;){if(R.tag===5){var D=R.stateNode;x&&b&&(D=un(D,R.type,R.memoizedProps,R)),Gt(h,D)}else if(R.tag===6)D=R.stateNode,x&&b&&(D=Hr(D,R.memoizedProps,R)),Gt(h,D);else if(R.tag!==4){if(R.tag===22&&R.memoizedState!==null)D=R.child,D!==null&&(D.return=R),Uo(h,R,!0,!0);else if(R.child!==null){R.child.return=R,R=R.child;continue}}if(R===f)break;for(;R.sibling===null;){if(R.return===null||R.return===f)return;R=R.return}R.sibling.return=R.return,R=R.sibling}};_a=function(h,f){var x=f.stateNode;if(!El(h,f)){h=x.containerInfo;var b=nt(h);Uo(b,f,!1,!1),x.pendingChildren=b,lr(f),Bn(h,b)}},Ih=function(h,f,x,b,R){var D=h.stateNode,Y=h.memoizedProps;if((h=El(h,f))&&Y===b)f.stateNode=D;else{var le=f.stateNode,Te=ss(ri.current),We=null;Y!==b&&(We=pe(le,x,Y,b,R,Te)),h&&We===null?f.stateNode=D:(D=ot(D,We,x,Y,b,f,h,le),Le(D,x,b,R,Te)&&lr(f),f.stateNode=D,h?lr(f):Mi(D,f,!1,!1))}},Ph=function(h,f,x,b){x!==b?(h=ss(fa.current),x=ss(ri.current),f.stateNode=Re(b,h,x,f),lr(f)):f.stateNode=h.stateNode}}else _a=function(){},Ih=function(){},Ph=function(){};function Zs(h,f){if(!Nn)switch(h.tailMode){case"hidden":f=h.tail;for(var x=null;f!==null;)f.alternate!==null&&(x=f),f=f.sibling;x===null?h.tail=null:x.sibling=null;break;case"collapsed":x=h.tail;for(var b=null;x!==null;)x.alternate!==null&&(b=x),x=x.sibling;b===null?f||h.tail===null?h.tail=null:h.tail.sibling=null:b.sibling=null}}function $n(h){var f=h.alternate!==null&&h.alternate.child===h.child,x=0,b=0;if(f)for(var R=h.child;R!==null;)x|=R.lanes|R.childLanes,b|=R.subtreeFlags&14680064,b|=R.flags&14680064,R.return=h,R=R.sibling;else for(R=h.child;R!==null;)x|=R.lanes|R.childLanes,b|=R.subtreeFlags,b|=R.flags,R.return=h,R=R.sibling;return h.subtreeFlags|=b,h.childLanes=x,f}function Rh(h,f,x){var b=f.pendingProps;switch(ff(f),f.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return $n(f),null;case 1:return jt(f.type)&&nr(),$n(f),null;case 3:return b=f.stateNode,_l(),dt(zt),dt(sn),pa(),b.pendingContext&&(b.context=b.pendingContext,b.pendingContext=null),(h===null||h.child===null)&&(yc(f)?lr(f):h===null||h.memoizedState.isDehydrated&&!(f.flags&256)||(f.flags|=1024,Gi!==null&&(Uc(Gi),Gi=null))),_a(h,f),$n(f),null;case 5:gf(f),x=ss(fa.current);var R=f.type;if(h!==null&&f.stateNode!=null)Ih(h,f,R,b,x),h.ref!==f.ref&&(f.flags|=512,f.flags|=2097152);else{if(!b){if(f.stateNode===null)throw Error(o(166));return $n(f),null}if(h=ss(ri.current),yc(f)){if(!Oe)throw Error(o(175));h=Ju(f.stateNode,f.type,f.memoizedProps,x,h,f,!pl),f.updateQueue=h,h!==null&&lr(f)}else{var D=X(R,b,x,h,f);Mi(D,f,!1,!1),f.stateNode=D,Le(D,R,b,x,h)&&lr(f)}f.ref!==null&&(f.flags|=512,f.flags|=2097152)}return $n(f),null;case 6:if(h&&f.stateNode!=null)Ph(h,f,h.memoizedProps,b);else{if(typeof b!="string"&&f.stateNode===null)throw Error(o(166));if(h=ss(fa.current),x=ss(ri.current),yc(f)){if(!Oe)throw Error(o(176));if(h=f.stateNode,b=f.memoizedProps,(x=As(h,b,f,!pl))&&(R=Xr,R!==null))switch(D=(R.mode&1)!==0,R.tag){case 3:Me(R.stateNode.containerInfo,h,b,D);break;case 5:we(R.type,R.memoizedProps,R.stateNode,h,b,D)}x&&lr(f)}else f.stateNode=Re(b,h,x,f)}return $n(f),null;case 13:if(dt(jn),b=f.memoizedState,Nn&&Sr!==null&&f.mode&1&&!(f.flags&128)){for(h=Sr;h;)h=rs(h);return ml(),f.flags|=98560,f}if(b!==null&&b.dehydrated!==null){if(b=yc(f),h===null){if(!b)throw Error(o(318));if(!Oe)throw Error(o(344));if(h=f.memoizedState,h=h!==null?h.dehydrated:null,!h)throw Error(o(317));$u(h,f)}else ml(),!(f.flags&128)&&(f.memoizedState=null),f.flags|=4;return $n(f),null}return Gi!==null&&(Uc(Gi),Gi=null),f.flags&128?(f.lanes=x,f):(b=b!==null,x=!1,h===null?yc(f):x=h.memoizedState!==null,b&&!x&&(f.child.flags|=8192,f.mode&1&&(h===null||jn.current&1?Wn===0&&(Wn=3):kh())),f.updateQueue!==null&&(f.flags|=4),$n(f),null);case 4:return _l(),_a(h,f),h===null&&pt(f.stateNode.containerInfo),$n(f),null;case 10:return gc(f.type._context),$n(f),null;case 17:return jt(f.type)&&nr(),$n(f),null;case 19:if(dt(jn),R=f.memoizedState,R===null)return $n(f),null;if(b=(f.flags&128)!==0,D=R.rendering,D===null)if(b)Zs(R,!1);else{if(Wn!==0||h!==null&&h.flags&128)for(h=f.child;h!==null;){if(D=yh(h),D!==null){for(f.flags|=128,Zs(R,!1),h=D.updateQueue,h!==null&&(f.updateQueue=h,f.flags|=4),f.subtreeFlags=0,h=x,b=f.child;b!==null;)x=b,R=h,x.flags&=14680066,D=x.alternate,D===null?(x.childLanes=0,x.lanes=R,x.child=null,x.subtreeFlags=0,x.memoizedProps=null,x.memoizedState=null,x.updateQueue=null,x.dependencies=null,x.stateNode=null):(x.childLanes=D.childLanes,x.lanes=D.lanes,x.child=D.child,x.subtreeFlags=0,x.deletions=null,x.memoizedProps=D.memoizedProps,x.memoizedState=D.memoizedState,x.updateQueue=D.updateQueue,x.type=D.type,R=D.dependencies,x.dependencies=R===null?null:{lanes:R.lanes,firstContext:R.firstContext}),b=b.sibling;return Tt(jn,jn.current&1|2),f.child}h=h.sibling}R.tail!==null&&ar()>Ho&&(f.flags|=128,b=!0,Zs(R,!1),f.lanes=4194304)}else{if(!b)if(h=yh(D),h!==null){if(f.flags|=128,b=!0,h=h.updateQueue,h!==null&&(f.updateQueue=h,f.flags|=4),Zs(R,!0),R.tail===null&&R.tailMode==="hidden"&&!D.alternate&&!Nn)return $n(f),null}else 2*ar()-R.renderingStartTime>Ho&&x!==1073741824&&(f.flags|=128,b=!0,Zs(R,!1),f.lanes=4194304);R.isBackwards?(D.sibling=f.child,f.child=D):(h=R.last,h!==null?h.sibling=D:f.child=D,R.last=D)}return R.tail!==null?(f=R.tail,R.rendering=f,R.tail=f.sibling,R.renderingStartTime=ar(),f.sibling=null,h=jn.current,Tt(jn,b?h&1|2:h&1),f):($n(f),null);case 22:case 23:return jc(),b=f.memoizedState!==null,h!==null&&h.memoizedState!==null!==b&&(f.flags|=8192),b&&f.mode&1?Lr&1073741824&&($n(f),Pt&&f.subtreeFlags&6&&(f.flags|=8192)):$n(f),null;case 24:return null;case 25:return null}throw Error(o(156,f.tag))}var Cf=l.ReactCurrentOwner,mr=!1;function Vn(h,f,x,b){f.child=h===null?Bm(f,null,x,b):Ys(f,h.child,x,b)}function In(h,f,x,b,R){x=x.render;var D=f.ref;return hl(f,R),b=xl(h,f,x,b,D,R),x=Fo(),h!==null&&!mr?(f.updateQueue=h.updateQueue,f.flags&=-2053,h.lanes&=~R,ii(h,f,R)):(Nn&&x&&df(f),f.flags|=1,Vn(h,f,b,R),f.child)}function bn(h,f,x,b,R){if(h===null){var D=x.type;return typeof D=="function"&&!jh(D)&&D.defaultProps===void 0&&x.compare===null&&x.defaultProps===void 0?(f.tag=15,f.type=D,eo(h,f,D,b,R)):(h=zh(x.type,null,b,f,f.mode,R),h.ref=f.ref,h.return=f,f.child=h)}if(D=h.child,!(h.lanes&R)){var Y=D.memoizedProps;if(x=x.compare,x=x!==null?x:is,x(Y,b)&&h.ref===f.ref)return ii(h,f,R)}return f.flags|=1,h=co(D,b),h.ref=f.ref,h.return=f,f.child=h}function eo(h,f,x,b,R){if(h!==null&&is(h.memoizedProps,b)&&h.ref===f.ref)if(mr=!1,(h.lanes&R)!==0)h.flags&131072&&(mr=!0);else return f.lanes=h.lanes,ii(h,f,R);return to(h,f,x,b,R)}function wr(h,f,x){var b=f.pendingProps,R=b.children,D=h!==null?h.memoizedState:null;if(b.mode==="hidden")if(!(f.mode&1))f.memoizedState={baseLanes:0,cachePool:null},Tt(Ta,Lr),Lr|=x;else if(x&1073741824)f.memoizedState={baseLanes:0,cachePool:null},b=D!==null?D.baseLanes:x,Tt(Ta,Lr),Lr|=b;else return h=D!==null?D.baseLanes|x:x,f.lanes=f.childLanes=1073741824,f.memoizedState={baseLanes:h,cachePool:null},f.updateQueue=null,Tt(Ta,Lr),Lr|=h,null;else D!==null?(b=D.baseLanes|x,f.memoizedState=null):b=x,Tt(Ta,Lr),Lr|=b;return Vn(h,f,R,x),f.child}function Jr(h,f){var x=f.ref;(h===null&&x!==null||h!==null&&h.ref!==x)&&(f.flags|=512,f.flags|=2097152)}function to(h,f,x,b,R){var D=jt(x)?wt:sn.current;return D=En(f,D),hl(f,R),x=xl(h,f,x,b,D,R),b=Fo(),h!==null&&!mr?(f.updateQueue=h.updateQueue,f.flags&=-2053,h.lanes&=~R,ii(h,f,R)):(Nn&&b&&df(f),f.flags|=1,Vn(h,f,x,R),f.child)}function xa(h,f,x,b,R){if(jt(x)){var D=!0;Es(f)}else D=!1;if(hl(f,R),f.stateNode===null)h!==null&&(h.alternate=null,f.alternate=null,f.flags|=2),Cm(f,x,b),hf(f,x,b,R),b=!0;else if(h===null){var Y=f.stateNode,le=f.memoizedProps;Y.props=le;var Te=Y.context,We=x.contextType;typeof We=="object"&&We!==null?We=ni(We):(We=jt(x)?wt:sn.current,We=En(f,We));var gt=x.getDerivedStateFromProps,Wt=typeof gt=="function"||typeof Y.getSnapshotBeforeUpdate=="function";Wt||typeof Y.UNSAFE_componentWillReceiveProps!="function"&&typeof Y.componentWillReceiveProps!="function"||(le!==b||Te!==We)&&Tm(f,Y,b,We),zi=!1;var Ot=f.memoizedState;Y.state=Ot,uh(f,b,Y,R),Te=f.memoizedState,le!==b||Ot!==Te||zt.current||zi?(typeof gt=="function"&&(cf(f,x,gt,b),Te=f.memoizedState),(le=zi||uf(f,x,le,b,Ot,Te,We))?(Wt||typeof Y.UNSAFE_componentWillMount!="function"&&typeof Y.componentWillMount!="function"||(typeof Y.componentWillMount=="function"&&Y.componentWillMount(),typeof Y.UNSAFE_componentWillMount=="function"&&Y.UNSAFE_componentWillMount()),typeof Y.componentDidMount=="function"&&(f.flags|=4194308)):(typeof Y.componentDidMount=="function"&&(f.flags|=4194308),f.memoizedProps=b,f.memoizedState=Te),Y.props=b,Y.state=Te,Y.context=We,b=le):(typeof Y.componentDidMount=="function"&&(f.flags|=4194308),b=!1)}else{Y=f.stateNode,lf(h,f),le=f.memoizedProps,We=f.type===f.elementType?le:ti(f.type,le),Y.props=We,Wt=f.pendingProps,Ot=Y.context,Te=x.contextType,typeof Te=="object"&&Te!==null?Te=ni(Te):(Te=jt(x)?wt:sn.current,Te=En(f,Te));var tn=x.getDerivedStateFromProps;(gt=typeof tn=="function"||typeof Y.getSnapshotBeforeUpdate=="function")||typeof Y.UNSAFE_componentWillReceiveProps!="function"&&typeof Y.componentWillReceiveProps!="function"||(le!==Wt||Ot!==Te)&&Tm(f,Y,b,Te),zi=!1,Ot=f.memoizedState,Y.state=Ot,uh(f,b,Y,R);var at=f.memoizedState;le!==Wt||Ot!==at||zt.current||zi?(typeof tn=="function"&&(cf(f,x,tn,b),at=f.memoizedState),(We=zi||uf(f,x,We,b,Ot,at,Te)||!1)?(gt||typeof Y.UNSAFE_componentWillUpdate!="function"&&typeof Y.componentWillUpdate!="function"||(typeof Y.componentWillUpdate=="function"&&Y.componentWillUpdate(b,at,Te),typeof Y.UNSAFE_componentWillUpdate=="function"&&Y.UNSAFE_componentWillUpdate(b,at,Te)),typeof Y.componentDidUpdate=="function"&&(f.flags|=4),typeof Y.getSnapshotBeforeUpdate=="function"&&(f.flags|=1024)):(typeof Y.componentDidUpdate!="function"||le===h.memoizedProps&&Ot===h.memoizedState||(f.flags|=4),typeof Y.getSnapshotBeforeUpdate!="function"||le===h.memoizedProps&&Ot===h.memoizedState||(f.flags|=1024),f.memoizedProps=b,f.memoizedState=at),Y.props=b,Y.state=at,Y.context=Te,b=We):(typeof Y.componentDidUpdate!="function"||le===h.memoizedProps&&Ot===h.memoizedState||(f.flags|=4),typeof Y.getSnapshotBeforeUpdate!="function"||le===h.memoizedProps&&Ot===h.memoizedState||(f.flags|=1024),b=!1)}return Dr(h,f,x,b,D,R)}function Dr(h,f,x,b,R,D){Jr(h,f);var Y=(f.flags&128)!==0;if(!b&&!Y)return R&&Sn(f,x,!1),ii(h,f,D);b=f.stateNode,Cf.current=f;var le=Y&&typeof x.getDerivedStateFromError!="function"?null:b.render();return f.flags|=1,h!==null&&Y?(f.child=Ys(f,h.child,null,D),f.child=Ys(f,null,le,D)):Vn(h,f,le,D),f.memoizedState=b.state,R&&Sn(f,x,!0),f.child}function Cc(h){var f=h.stateNode;f.pendingContext?Fi(h,f.pendingContext,f.pendingContext!==f.context):f.context&&Fi(h,f.context,!1),gh(h,f.containerInfo)}function Tf(h,f,x,b,R){return ml(),mh(R),f.flags|=256,Vn(h,f,x,b),f.child}var Tc={dehydrated:null,treeContext:null,retryLane:0};function Ma(h){return{baseLanes:h,cachePool:null}}function If(h,f,x){var b=f.pendingProps,R=jn.current,D=!1,Y=(f.flags&128)!==0,le;if((le=Y)||(le=h!==null&&h.memoizedState===null?!1:(R&2)!==0),le?(D=!0,f.flags&=-129):(h===null||h.memoizedState!==null)&&(R|=1),Tt(jn,R&1),h===null)return Lo(f),h=f.memoizedState,h!==null&&(h=h.dehydrated,h!==null)?(f.mode&1?ns(h)?f.lanes=8:f.lanes=1073741824:f.lanes=1,null):(R=b.children,h=b.fallback,D?(b=f.mode,D=f.child,R={mode:"hidden",children:R},!(b&1)&&D!==null?(D.childLanes=0,D.pendingProps=R):D=Gc(R,b,0,null),h=Oa(h,b,x,null),D.return=f,h.return=f,D.sibling=h,f.child=D,f.child.memoizedState=Ma(x),f.memoizedState=Tc,h):ls(f,R));if(R=h.memoizedState,R!==null){if(le=R.dehydrated,le!==null){if(Y)return f.flags&256?(f.flags&=-257,Pc(h,f,x,Error(o(422)))):f.memoizedState!==null?(f.child=h.child,f.flags|=128,null):(D=b.fallback,R=f.mode,b=Gc({mode:"visible",children:b.children},R,0,null),D=Oa(D,R,x,null),D.flags|=2,b.return=f,D.return=f,b.sibling=D,f.child=b,f.mode&1&&Ys(f,h.child,null,x),f.child.memoizedState=Ma(x),f.memoizedState=Tc,D);if(!(f.mode&1))f=Pc(h,f,x,null);else if(ns(le))f=Pc(h,f,x,Error(o(419)));else if(b=(x&h.childLanes)!==0,mr||b){if(b=Kn,b!==null){switch(x&-x){case 4:D=2;break;case 16:D=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:D=32;break;case 536870912:D=268435456;break;default:D=0}b=D&(b.suspendedLanes|x)?0:D,b!==0&&b!==R.retryLane&&(R.retryLane=b,Nr(h,b,-1))}kh(),f=Pc(h,f,x,Error(o(421)))}else ws(le)?(f.flags|=128,f.child=h.child,f=Hm.bind(null,h),ra(le,f),f=null):(x=R.treeContext,Oe&&(Sr=ll(le),Xr=f,Nn=!0,Gi=null,pl=!1,x!==null&&(Hi[vi++]=$s,Hi[vi++]=Ks,Hi[vi++]=ua,$s=x.id,Ks=x.overflow,ua=f)),f=ls(f,f.pendingProps.children),f.flags|=4096);return f}return D?(b=Bh(h,f,b.children,b.fallback,x),D=f.child,R=h.child.memoizedState,D.memoizedState=R===null?Ma(x):{baseLanes:R.baseLanes|x,cachePool:null},D.childLanes=h.childLanes&~x,f.memoizedState=Tc,b):(x=Ic(h,f,b.children,x),f.memoizedState=null,x)}return D?(b=Bh(h,f,b.children,b.fallback,x),D=f.child,R=h.child.memoizedState,D.memoizedState=R===null?Ma(x):{baseLanes:R.baseLanes|x,cachePool:null},D.childLanes=h.childLanes&~x,f.memoizedState=Tc,b):(x=Ic(h,f,b.children,x),f.memoizedState=null,x)}function ls(h,f){return f=Gc({mode:"visible",children:f},h.mode,0,null),f.return=h,h.child=f}function Ic(h,f,x,b){var R=h.child;return h=R.sibling,x=co(R,{mode:"visible",children:x}),!(f.mode&1)&&(x.lanes=b),x.return=f,x.sibling=null,h!==null&&(b=f.deletions,b===null?(f.deletions=[h],f.flags|=16):b.push(h)),f.child=x}function Bh(h,f,x,b,R){var D=f.mode;h=h.child;var Y=h.sibling,le={mode:"hidden",children:x};return!(D&1)&&f.child!==h?(x=f.child,x.childLanes=0,x.pendingProps=le,f.deletions=null):(x=co(h,le),x.subtreeFlags=h.subtreeFlags&14680064),Y!==null?b=co(Y,b):(b=Oa(b,D,R,null),b.flags|=2),b.return=f,x.return=f,x.sibling=b,f.child=x,b}function Pc(h,f,x,b){return b!==null&&mh(b),Ys(f,h.child,null,x),h=ls(f,f.pendingProps.children),h.flags|=2,f.memoizedState=null,h}function km(h,f,x){h.lanes|=f;var b=h.alternate;b!==null&&(b.lanes|=f),ca(h.return,f,x)}function Rs(h,f,x,b,R){var D=h.memoizedState;D===null?h.memoizedState={isBackwards:f,rendering:null,renderingStartTime:0,last:b,tail:x,tailMode:R}:(D.isBackwards=f,D.rendering=null,D.renderingStartTime=0,D.last=b,D.tail=x,D.tailMode=R)}function Sa(h,f,x){var b=f.pendingProps,R=b.revealOrder,D=b.tail;if(Vn(h,f,b.children,x),b=jn.current,b&2)b=b&1|2,f.flags|=128;else{if(h!==null&&h.flags&128)e:for(h=f.child;h!==null;){if(h.tag===13)h.memoizedState!==null&&km(h,x,f);else if(h.tag===19)km(h,x,f);else if(h.child!==null){h.child.return=h,h=h.child;continue}if(h===f)break e;for(;h.sibling===null;){if(h.return===null||h.return===f)break e;h=h.return}h.sibling.return=h.return,h=h.sibling}b&=1}if(Tt(jn,b),!(f.mode&1))f.memoizedState=null;else switch(R){case"forwards":for(x=f.child,R=null;x!==null;)h=x.alternate,h!==null&&yh(h)===null&&(R=x),x=x.sibling;x=R,x===null?(R=f.child,f.child=null):(R=x.sibling,x.sibling=null),Rs(f,!1,R,x,D);break;case"backwards":for(x=null,R=f.child,f.child=null;R!==null;){if(h=R.alternate,h!==null&&yh(h)===null){f.child=R;break}h=R.sibling,R.sibling=x,x=R,R=h}Rs(f,!0,x,null,D);break;case"together":Rs(f,!1,null,null,void 0);break;default:f.memoizedState=null}return f.child}function ii(h,f,x){if(h!==null&&(f.dependencies=h.dependencies),Bs|=f.lanes,!(x&f.childLanes))return null;if(h!==null&&f.child!==h.child)throw Error(o(153));if(f.child!==null){for(h=f.child,x=co(h,h.pendingProps),f.child=x,x.return=f;h.sibling!==null;)h=h.sibling,x=x.sibling=co(h,h.pendingProps),x.return=f;x.sibling=null}return f.child}function Oh(h,f,x){switch(f.tag){case 3:Cc(f),ml();break;case 5:Om(f);break;case 1:jt(f.type)&&Es(f);break;case 4:gh(f,f.stateNode.containerInfo);break;case 10:la(f,f.type._context,f.memoizedProps.value);break;case 13:var b=f.memoizedState;if(b!==null)return b.dehydrated!==null?(Tt(jn,jn.current&1),f.flags|=128,null):x&f.child.childLanes?If(h,f,x):(Tt(jn,jn.current&1),h=ii(h,f,x),h!==null?h.sibling:null);Tt(jn,jn.current&1);break;case 19:if(b=(x&f.childLanes)!==0,h.flags&128){if(b)return Sa(h,f,x);f.flags|=128}var R=f.memoizedState;if(R!==null&&(R.rendering=null,R.tail=null,R.lastEffect=null),Tt(jn,jn.current),b)break;return null;case 22:case 23:return f.lanes=0,wr(h,f,x)}return ii(h,f,x)}function Dh(h,f){switch(ff(f),f.tag){case 1:return jt(f.type)&&nr(),h=f.flags,h&65536?(f.flags=h&-65537|128,f):null;case 3:return _l(),dt(zt),dt(sn),pa(),h=f.flags,h&65536&&!(h&128)?(f.flags=h&-65537|128,f):null;case 5:return gf(f),null;case 13:if(dt(jn),h=f.memoizedState,h!==null&&h.dehydrated!==null){if(f.alternate===null)throw Error(o(340));ml()}return h=f.flags,h&65536?(f.flags=h&-65537|128,f):null;case 19:return dt(jn),null;case 4:return _l(),null;case 10:return gc(f.type._context),null;case 22:case 23:return jc(),null;case 24:return null;default:return null}}var $r=!1,gr=!1,wa=typeof WeakSet=="function"?WeakSet:Set,Ke=null;function Vi(h,f){var x=h.ref;if(x!==null)if(typeof x=="function")try{x(null)}catch(b){Yr(h,f,b)}else x.current=null}function no(h,f,x){try{x()}catch(b){Yr(h,f,b)}}var Pf=!1;function Rf(h,f){for(Z(h.containerInfo),Ke=f;Ke!==null;)if(h=Ke,f=h.child,(h.subtreeFlags&1028)!==0&&f!==null)f.return=h,Ke=f;else for(;Ke!==null;){h=Ke;try{var x=h.alternate;if(h.flags&1024)switch(h.tag){case 0:case 11:case 15:break;case 1:if(x!==null){var b=x.memoizedProps,R=x.memoizedState,D=h.stateNode,Y=D.getSnapshotBeforeUpdate(h.elementType===h.type?b:ti(h.type,b),R);D.__reactInternalSnapshotBeforeUpdate=Y}break;case 3:Pt&&De(h.stateNode.containerInfo);break;case 5:case 6:case 4:case 17:break;default:throw Error(o(163))}}catch(le){Yr(h,h.return,le)}if(f=h.sibling,f!==null){f.return=h.return,Ke=f;break}Ke=h.return}return x=Pf,Pf=!1,x}function ro(h,f,x){var b=f.updateQueue;if(b=b!==null?b.lastEffect:null,b!==null){var R=b=b.next;do{if((R.tag&h)===h){var D=R.destroy;R.destroy=void 0,D!==void 0&&no(f,x,D)}R=R.next}while(R!==b)}}function Ar(h,f){if(f=f.updateQueue,f=f!==null?f.lastEffect:null,f!==null){var x=f=f.next;do{if((x.tag&h)===h){var b=x.create;x.destroy=b()}x=x.next}while(x!==f)}}function Kr(h){var f=h.ref;if(f!==null){var x=h.stateNode;switch(h.tag){case 5:h=he(x);break;default:h=x}typeof f=="function"?f(h):f.current=h}}function Dn(h,f,x){if(Ts&&typeof Ts.onCommitFiberUnmount=="function")try{Ts.onCommitFiberUnmount(dc,f)}catch{}switch(f.tag){case 0:case 11:case 14:case 15:if(h=f.updateQueue,h!==null&&(h=h.lastEffect,h!==null)){var b=h=h.next;do{var R=b,D=R.destroy;R=R.tag,D!==void 0&&(R&2||R&4)&&no(f,x,D),b=b.next}while(b!==h)}break;case 1:if(Vi(f,x),h=f.stateNode,typeof h.componentWillUnmount=="function")try{h.props=f.memoizedProps,h.state=f.memoizedState,h.componentWillUnmount()}catch(Y){Yr(f,x,Y)}break;case 5:Vi(f,x);break;case 4:Pt?Df(h,f,x):Be&&Be&&(f=f.stateNode.containerInfo,x=nt(f),tr(f,x))}}function Wi(h,f,x){for(var b=f;;)if(Dn(h,b,x),b.child===null||Pt&&b.tag===4){if(b===f)break;for(;b.sibling===null;){if(b.return===null||b.return===f)return;b=b.return}b.sibling.return=b.return,b=b.sibling}else b.child.return=b,b=b.child}function Bf(h){var f=h.alternate;f!==null&&(h.alternate=null,Bf(f)),h.child=null,h.deletions=null,h.sibling=null,h.tag===5&&(f=h.stateNode,f!==null&&st(f)),h.stateNode=null,h.return=null,h.dependencies=null,h.memoizedProps=null,h.memoizedState=null,h.pendingProps=null,h.stateNode=null,h.updateQueue=null}function Of(h){return h.tag===5||h.tag===3||h.tag===4}function Lh(h){e:for(;;){for(;h.sibling===null;){if(h.return===null||Of(h.return))return null;h=h.return}for(h.sibling.return=h.return,h=h.sibling;h.tag!==5&&h.tag!==6&&h.tag!==18;){if(h.flags&2||h.child===null||h.tag===4)continue e;h.child.return=h,h=h.child}if(!(h.flags&2))return h.stateNode}}function Nh(h){if(Pt){e:{for(var f=h.return;f!==null;){if(Of(f))break e;f=f.return}throw Error(o(160))}var x=f;switch(x.tag){case 5:f=x.stateNode,x.flags&32&&(kt(f),x.flags&=-33),x=Lh(h),bl(h,x,f);break;case 3:case 4:f=x.stateNode.containerInfo,x=Lh(h),Fh(h,x,f);break;default:throw Error(o(161))}}}function Fh(h,f,x){var b=h.tag;if(b===5||b===6)h=h.stateNode,f?Rt(x,h,f):Qe(x,h);else if(b!==4&&(h=h.child,h!==null))for(Fh(h,f,x),h=h.sibling;h!==null;)Fh(h,f,x),h=h.sibling}function bl(h,f,x){var b=h.tag;if(b===5||b===6)h=h.stateNode,f?Ct(x,h,f):Je(x,h);else if(b!==4&&(h=h.child,h!==null))for(bl(h,f,x),h=h.sibling;h!==null;)bl(h,f,x),h=h.sibling}function Df(h,f,x){for(var b=f,R=!1,D,Y;;){if(!R){R=b.return;e:for(;;){if(R===null)throw Error(o(160));switch(D=R.stateNode,R.tag){case 5:Y=!1;break e;case 3:D=D.containerInfo,Y=!0;break e;case 4:D=D.containerInfo,Y=!0;break e}R=R.return}R=!0}if(b.tag===5||b.tag===6)Wi(h,b,x),Y?$t(D,b.stateNode):ht(D,b.stateNode);else if(b.tag===18)Y?W(D,b.stateNode):Qu(D,b.stateNode);else if(b.tag===4){if(b.child!==null){D=b.stateNode.containerInfo,Y=!0,b.child.return=b,b=b.child;continue}}else if(Dn(h,b,x),b.child!==null){b.child.return=b,b=b.child;continue}if(b===f)break;for(;b.sibling===null;){if(b.return===null||b.return===f)return;b=b.return,b.tag===4&&(R=!1)}b.sibling.return=b.return,b=b.sibling}}function jo(h,f){if(Pt){switch(f.tag){case 0:case 11:case 14:case 15:ro(3,f,f.return),Ar(3,f),ro(5,f,f.return);return;case 1:return;case 5:var x=f.stateNode;if(x!=null){var b=f.memoizedProps;h=h!==null?h.memoizedProps:b;var R=f.type,D=f.updateQueue;f.updateQueue=null,D!==null&&ut(x,D,R,h,b,f)}return;case 6:if(f.stateNode===null)throw Error(o(162));x=f.memoizedProps,Ht(f.stateNode,h!==null?h.memoizedProps:x,x);return;case 3:Oe&&h!==null&&h.memoizedState.isDehydrated&&Yu(f.stateNode.containerInfo);return;case 12:return;case 13:Cl(f);return;case 19:Cl(f);return;case 17:return}throw Error(o(163))}switch(f.tag){case 0:case 11:case 14:case 15:ro(3,f,f.return),Ar(3,f),ro(5,f,f.return);return;case 12:return;case 13:Cl(f);return;case 19:Cl(f);return;case 3:Oe&&h!==null&&h.memoizedState.isDehydrated&&Yu(f.stateNode.containerInfo);break;case 22:case 23:return}e:if(Be){switch(f.tag){case 1:case 5:case 6:break e;case 3:case 4:f=f.stateNode,tr(f.containerInfo,f.pendingChildren);break e}throw Error(o(163))}}function Cl(h){var f=h.updateQueue;if(f!==null){h.updateQueue=null;var x=h.stateNode;x===null&&(x=h.stateNode=new wa),f.forEach(function(b){var R=Gm.bind(null,h,b);x.has(b)||(x.add(b),b.then(R,R))})}}function C1(h,f){for(Ke=f;Ke!==null;){f=Ke;var x=f.deletions;if(x!==null)for(var b=0;b<x.length;b++){var R=x[b];try{var D=h;Pt?Df(D,R,f):Wi(D,R,f);var Y=R.alternate;Y!==null&&(Y.return=null),R.return=null}catch(At){Yr(R,f,At)}}if(x=f.child,f.subtreeFlags&12854&&x!==null)x.return=f,Ke=x;else for(;Ke!==null;){f=Ke;try{var le=f.flags;if(le&32&&Pt&&kt(f.stateNode),le&512){var Te=f.alternate;if(Te!==null){var We=Te.ref;We!==null&&(typeof We=="function"?We(null):We.current=null)}}if(le&8192)switch(f.tag){case 13:if(f.memoizedState!==null){var gt=f.alternate;(gt===null||gt.memoizedState===null)&&(Fc=ar())}break;case 22:var Wt=f.memoizedState!==null,Ot=f.alternate,tn=Ot!==null&&Ot.memoizedState!==null;if(x=f,Pt){e:if(b=x,R=Wt,D=null,Pt)for(var at=b;;){if(at.tag===5){if(D===null){D=at;var Cr=at.stateNode;R?pn(Cr):Ze(at.stateNode,at.memoizedProps)}}else if(at.tag===6){if(D===null){var bi=at.stateNode;R?ue(bi):Ce(bi,at.memoizedProps)}}else if((at.tag!==22&&at.tag!==23||at.memoizedState===null||at===b)&&at.child!==null){at.child.return=at,at=at.child;continue}if(at===b)break;for(;at.sibling===null;){if(at.return===null||at.return===b)break e;D===at&&(D=null),at=at.return}D===at&&(D=null),at.sibling.return=at.return,at=at.sibling}}if(Wt&&!tn&&x.mode&1){Ke=x;for(var xe=x.child;xe!==null;){for(x=Ke=xe;Ke!==null;){b=Ke;var fe=b.child;switch(b.tag){case 0:case 11:case 14:case 15:ro(4,b,b.return);break;case 1:Vi(b,b.return);var Ee=b.stateNode;if(typeof Ee.componentWillUnmount=="function"){var rt=b.return;try{Ee.props=b.memoizedProps,Ee.state=b.memoizedState,Ee.componentWillUnmount()}catch(At){Yr(b,rt,At)}}break;case 5:Vi(b,b.return);break;case 22:if(b.memoizedState!==null){Nf(x);continue}}fe!==null?(fe.return=b,Ke=fe):Nf(x)}xe=xe.sibling}}}switch(le&4102){case 2:Nh(f),f.flags&=-3;break;case 6:Nh(f),f.flags&=-3,jo(f.alternate,f);break;case 4096:f.flags&=-4097;break;case 4100:f.flags&=-4097,jo(f.alternate,f);break;case 4:jo(f.alternate,f)}}catch(At){Yr(f,f.return,At)}if(x=f.sibling,x!==null){x.return=f.return,Ke=x;break}Ke=f.return}}}function Rc(h,f,x){Ke=h,Bc(h)}function Bc(h,f,x){for(var b=(h.mode&1)!==0;Ke!==null;){var R=Ke,D=R.child;if(R.tag===22&&b){var Y=R.memoizedState!==null||$r;if(!Y){var le=R.alternate,Te=le!==null&&le.memoizedState!==null||gr;le=$r;var We=gr;if($r=Y,(gr=Te)&&!We)for(Ke=R;Ke!==null;)Y=Ke,Te=Y.child,Y.tag===22&&Y.memoizedState!==null?Aa(R):Te!==null?(Te.return=Y,Ke=Te):Aa(R);for(;D!==null;)Ke=D,Bc(D),D=D.sibling;Ke=R,$r=le,gr=We}Lf(h)}else R.subtreeFlags&8772&&D!==null?(D.return=R,Ke=D):Lf(h)}}function Lf(h){for(;Ke!==null;){var f=Ke;if(f.flags&8772){var x=f.alternate;try{if(f.flags&8772)switch(f.tag){case 0:case 11:case 15:gr||Ar(5,f);break;case 1:var b=f.stateNode;if(f.flags&4&&!gr)if(x===null)b.componentDidMount();else{var R=f.elementType===f.type?x.memoizedProps:ti(f.type,x.memoizedProps);b.componentDidUpdate(R,x.memoizedState,b.__reactInternalSnapshotBeforeUpdate)}var D=f.updateQueue;D!==null&&Em(f,D,b);break;case 3:var Y=f.updateQueue;if(Y!==null){if(x=null,f.child!==null)switch(f.child.tag){case 5:x=he(f.child.stateNode);break;case 1:x=f.child.stateNode}Em(f,Y,x)}break;case 5:var le=f.stateNode;x===null&&f.flags&4&&Ue(le,f.type,f.memoizedProps,f);break;case 6:break;case 4:break;case 12:break;case 13:if(Oe&&f.memoizedState===null){var Te=f.alternate;if(Te!==null){var We=Te.memoizedState;if(We!==null){var gt=We.dehydrated;gt!==null&&qu(gt)}}}break;case 19:case 17:case 21:case 22:case 23:break;default:throw Error(o(163))}gr||f.flags&512&&Kr(f)}catch(Wt){Yr(f,f.return,Wt)}}if(f===h){Ke=null;break}if(x=f.sibling,x!==null){x.return=f.return,Ke=x;break}Ke=f.return}}function Nf(h){for(;Ke!==null;){var f=Ke;if(f===h){Ke=null;break}var x=f.sibling;if(x!==null){x.return=f.return,Ke=x;break}Ke=f.return}}function Aa(h){for(;Ke!==null;){var f=Ke;try{switch(f.tag){case 0:case 11:case 15:var x=f.return;try{Ar(4,f)}catch(Te){Yr(f,x,Te)}break;case 1:var b=f.stateNode;if(typeof b.componentDidMount=="function"){var R=f.return;try{b.componentDidMount()}catch(Te){Yr(f,R,Te)}}var D=f.return;try{Kr(f)}catch(Te){Yr(f,D,Te)}break;case 5:var Y=f.return;try{Kr(f)}catch(Te){Yr(f,Y,Te)}}}catch(Te){Yr(f,f.return,Te)}if(f===h){Ke=null;break}var le=f.sibling;if(le!==null){le.return=f.return,Ke=le;break}Ke=f.return}}var Oc=0,Ea=1,ba=2,io=3,Tl=4;if(typeof Symbol=="function"&&Symbol.for){var Ca=Symbol.for;Oc=Ca("selector.component"),Ea=Ca("selector.has_pseudo_class"),ba=Ca("selector.role"),io=Ca("selector.test_id"),Tl=Ca("selector.text")}function Dc(h){var f=K(h);if(f!=null){if(typeof f.memoizedProps["data-testname"]!="string")throw Error(o(364));return f}if(h=J(h),h===null)throw Error(o(362));return h.stateNode.current}function Lc(h,f){switch(f.$$typeof){case Oc:if(h.type===f.value)return!0;break;case Ea:e:{f=f.value,h=[h,0];for(var x=0;x<h.length;){var b=h[x++],R=h[x++],D=f[R];if(b.tag!==5||!ye(b)){for(;D!=null&&Lc(b,D);)R++,D=f[R];if(R===f.length){f=!0;break e}else for(b=b.child;b!==null;)h.push(b,R),b=b.sibling}}f=!1}return f;case ba:if(h.tag===5&&Pe(h.stateNode,f.value))return!0;break;case Tl:if((h.tag===5||h.tag===6)&&(h=ee(h),h!==null&&0<=h.indexOf(f.value)))return!0;break;case io:if(h.tag===5&&(h=h.memoizedProps["data-testname"],typeof h=="string"&&h.toLowerCase()===f.value.toLowerCase()))return!0;break;default:throw Error(o(365))}return!1}function zo(h){switch(h.$$typeof){case Oc:return"<"+(N(h.value)||"Unknown")+">";case Ea:return":has("+(zo(h)||"")+")";case ba:return'[role="'+h.value+'"]';case Tl:return'"'+h.value+'"';case io:return'[data-testname="'+h.value+'"]';default:throw Error(o(365))}}function Si(h,f){var x=[];h=[h,0];for(var b=0;b<h.length;){var R=h[b++],D=h[b++],Y=f[D];if(R.tag!==5||!ye(R)){for(;Y!=null&&Lc(R,Y);)D++,Y=f[D];if(D===f.length)x.push(R);else for(R=R.child;R!==null;)h.push(R,D),R=R.sibling}}return x}function so(h,f){if(!$e)throw Error(o(363));h=Dc(h),h=Si(h,f),f=[],h=Array.from(h);for(var x=0;x<h.length;){var b=h[x++];if(b.tag===5)ye(b)||f.push(b.stateNode);else for(b=b.child;b!==null;)h.push(b),b=b.sibling}return f}var Ff=Math.ceil,Nc=l.ReactCurrentDispatcher,cs=l.ReactCurrentOwner,wn=l.ReactCurrentBatchConfig,qt=0,Kn=null,An=null,Fn=0,Lr=0,Ta=yt(0),Wn=0,Il=null,Bs=0,wi=0,Ia=0,oo=null,rr=null,Fc=0,Ho=1/0;function Pa(){Ho=ar()+500}var Pl=!1,Ln=null,us=null,Rl=!1,Os=null,Ra=0,Ba=0,ao=null,Pn=-1,Xn=0;function mn(){return qt&6?ar():Pn!==-1?Pn:Pn=ar()}function hs(h){return h.mode&1?qt&2&&Fn!==0?Fn&-Fn:Am.transition!==null?(Xn===0&&(h=bs,bs<<=1,!(bs&4194240)&&(bs=64),Xn=h),Xn):(h=on,h!==0?h:Fe()):1}function Nr(h,f,x){if(50<Ba)throw Ba=0,ao=null,Error(o(185));var b=Go(h,f);return b===null?null:(ia(b,f,x),(!(qt&2)||b!==Kn)&&(b===Kn&&(!(qt&2)&&(wi|=f),Wn===4&&br(b,Fn)),si(b,x),f===1&&qt===0&&!(h.mode&1)&&(Pa(),ih&&Ui())),b)}function Go(h,f){h.lanes|=f;var x=h.alternate;for(x!==null&&(x.lanes|=f),x=h,h=h.return;h!==null;)h.childLanes|=f,x=h.alternate,x!==null&&(x.childLanes|=f),x=h,h=h.return;return x.tag===3?x.stateNode:null}function si(h,f){var x=h.callbackNode;wm(h,f);var b=hc(h,h===Kn?Fn:0);if(b===0)x!==null&&ul(x),h.callbackNode=null,h.callbackPriority=0;else if(f=b&-b,h.callbackPriority!==f){if(x!=null&&ul(x),f===1)h.tag===0?oh(Ai.bind(null,h)):sh(Ai.bind(null,h)),Ve?St(function(){qt===0&&Ui()}):sa(oa,Ui),x=null;else{switch(Ws(b)){case 1:x=oa;break;case 4:x=A1;break;case 16:x=nh;break;case 536870912:x=rh;break;default:x=nh}x=Uh(x,Er.bind(null,h))}h.callbackPriority=f,h.callbackNode=x}}function Er(h,f){if(Pn=-1,Xn=0,qt&6)throw Error(o(327));var x=h.callbackNode;if(Ds()&&h.callbackNode!==x)return null;var b=hc(h,h===Kn?Fn:0);if(b===0)return null;if(b&30||b&h.expiredLanes||f)f=zc(h,b);else{f=b;var R=qt;qt|=2;var D=jf();(Kn!==h||Fn!==f)&&(Pa(),lo(h,f));do try{jm();break}catch(le){Uf(h,le)}while(!0);Wr(),Nc.current=D,qt=R,An!==null?f=0:(Kn=null,Fn=0,f=Wn)}if(f!==0){if(f===2&&(R=Zu(h),R!==0&&(b=R,f=kc(h,R))),f===1)throw x=Il,lo(h,0),br(h,b),si(h,ar()),x;if(f===6)br(h,b);else{if(R=h.current.alternate,!(b&30)&&!kf(R)&&(f=zc(h,b),f===2&&(D=Zu(h),D!==0&&(b=D,f=kc(h,D))),f===1))throw x=Il,lo(h,0),br(h,b),si(h,ar()),x;switch(h.finishedWork=R,h.finishedLanes=b,f){case 0:case 1:throw Error(o(345));case 2:ds(h,rr);break;case 3:if(br(h,b),(b&130023424)===b&&(f=Fc+500-ar(),10<f)){if(hc(h,0)!==0)break;if(R=h.suspendedLanes,(R&b)!==b){mn(),h.pingedLanes|=h.suspendedLanes&R;break}h.timeoutHandle=Ie(ds.bind(null,h,rr),f);break}ds(h,rr);break;case 4:if(br(h,b),(b&4194240)===b)break;for(f=h.eventTimes,R=-1;0<b;){var Y=31-On(b);D=1<<Y,Y=f[Y],Y>R&&(R=Y),b&=~D}if(b=R,b=ar()-b,b=(120>b?120:480>b?480:1080>b?1080:1920>b?1920:3e3>b?3e3:4320>b?4320:1960*Ff(b/1960))-b,10<b){h.timeoutHandle=Ie(ds.bind(null,h,rr),b);break}ds(h,rr);break;case 5:ds(h,rr);break;default:throw Error(o(329))}}}return si(h,ar()),h.callbackNode===x?Er.bind(null,h):null}function kc(h,f){var x=oo;return h.current.memoizedState.isDehydrated&&(lo(h,f).flags|=256),h=zc(h,f),h!==2&&(f=rr,rr=x,f!==null&&Uc(f)),h}function Uc(h){rr===null?rr=h:rr.push.apply(rr,h)}function kf(h){for(var f=h;;){if(f.flags&16384){var x=f.updateQueue;if(x!==null&&(x=x.stores,x!==null))for(var b=0;b<x.length;b++){var R=x[b],D=R.getSnapshot;R=R.value;try{if(!Vr(D(),R))return!1}catch{return!1}}}if(x=f.child,f.subtreeFlags&16384&&x!==null)x.return=f,f=x;else{if(f===h)break;for(;f.sibling===null;){if(f.return===null||f.return===h)return!0;f=f.return}f.sibling.return=f.return,f=f.sibling}}return!0}function br(h,f){for(f&=~Ia,f&=~wi,h.suspendedLanes|=f,h.pingedLanes&=~f,h=h.expirationTimes;0<f;){var x=31-On(f),b=1<<x;h[x]=-1,f&=~b}}function Ai(h){if(qt&6)throw Error(o(327));Ds();var f=hc(h,0);if(!(f&1))return si(h,ar()),null;var x=zc(h,f);if(h.tag!==0&&x===2){var b=Zu(h);b!==0&&(f=b,x=kc(h,b))}if(x===1)throw x=Il,lo(h,0),br(h,f),si(h,ar()),x;if(x===6)throw Error(o(345));return h.finishedWork=h.current.alternate,h.finishedLanes=f,ds(h,rr),si(h,ar()),null}function Bl(h){Os!==null&&Os.tag===0&&!(qt&6)&&Ds();var f=qt;qt|=1;var x=wn.transition,b=on;try{if(wn.transition=null,on=1,h)return h()}finally{on=b,wn.transition=x,qt=f,!(qt&6)&&Ui()}}function jc(){Lr=Ta.current,dt(Ta)}function lo(h,f){h.finishedWork=null,h.finishedLanes=0;var x=h.timeoutHandle;if(x!==qe&&(h.timeoutHandle=qe,Ge(x)),An!==null)for(x=An.return;x!==null;){var b=x;switch(ff(b),b.tag){case 1:b=b.type.childContextTypes,b!=null&&nr();break;case 3:_l(),dt(zt),dt(sn),pa();break;case 5:gf(b);break;case 4:_l();break;case 13:dt(jn);break;case 19:dt(jn);break;case 10:gc(b.type._context);break;case 22:case 23:jc()}x=x.return}if(Kn=h,An=h=co(h.current,null),Fn=Lr=f,Wn=0,Il=null,Ia=wi=Bs=0,rr=oo=null,ji!==null){for(f=0;f<ji.length;f++)if(x=ji[f],b=x.interleaved,b!==null){x.interleaved=null;var R=b.next,D=x.pending;if(D!==null){var Y=D.next;D.next=R,b.next=Y}x.pending=b}ji=null}return h}function Uf(h,f){do{var x=An;try{if(Wr(),vc.current=Al,vh){for(var b=zn.memoizedState;b!==null;){var R=b.queue;R!==null&&(R.pending=null),b=b.next}vh=!1}if(ma=0,fr=dr=zn=null,Is=!1,ga=0,cs.current=null,x===null||x.return===null){Wn=1,Il=f,An=null;break}e:{var D=h,Y=x.return,le=x,Te=f;if(f=Fn,le.flags|=32768,Te!==null&&typeof Te=="object"&&typeof Te.then=="function"){var We=Te,gt=le,Wt=gt.tag;if(!(gt.mode&1)&&(Wt===0||Wt===11||Wt===15)){var Ot=gt.alternate;Ot?(gt.updateQueue=Ot.updateQueue,gt.memoizedState=Ot.memoizedState,gt.lanes=Ot.lanes):(gt.updateQueue=null,gt.memoizedState=null)}var tn=bf(Y);if(tn!==null){tn.flags&=-257,va(tn,Y,le,D,f),tn.mode&1&&Qs(D,We,f),f=tn,Te=We;var at=f.updateQueue;if(at===null){var Cr=new Set;Cr.add(Te),f.updateQueue=Cr}else at.add(Te);break e}else{if(!(f&1)){Qs(D,We,f),kh();break e}Te=Error(o(426))}}else if(Nn&&le.mode&1){var bi=bf(Y);if(bi!==null){!(bi.flags&65536)&&(bi.flags|=256),va(bi,Y,le,D,f),mh(Te);break e}}D=Te,Wn!==4&&(Wn=2),oo===null?oo=[D]:oo.push(D),Te=Ef(Te,le),le=Y;do{switch(le.tag){case 3:le.flags|=65536,f&=-f,le.lanes|=f;var xe=Fm(le,Te,f);ch(le,xe);break e;case 1:D=Te;var fe=le.type,Ee=le.stateNode;if(!(le.flags&128)&&(typeof fe.getDerivedStateFromError=="function"||Ee!==null&&typeof Ee.componentDidCatch=="function"&&(us===null||!us.has(Ee)))){le.flags|=65536,f&=-f,le.lanes|=f;var rt=Th(le,D,f);ch(le,rt);break e}}le=le.return}while(le!==null)}Hf(x)}catch(At){f=At,An===x&&x!==null&&(An=x=x.return);continue}break}while(!0)}function jf(){var h=Nc.current;return Nc.current=Al,h===null?Al:h}function kh(){(Wn===0||Wn===3||Wn===2)&&(Wn=4),Kn===null||!(Bs&268435455)&&!(wi&268435455)||br(Kn,Fn)}function zc(h,f){var x=qt;qt|=2;var b=jf();Kn===h&&Fn===f||lo(h,f);do try{Um();break}catch(R){Uf(h,R)}while(!0);if(Wr(),qt=x,Nc.current=b,An!==null)throw Error(o(261));return Kn=null,Fn=0,Wn}function Um(){for(;An!==null;)zf(An)}function jm(){for(;An!==null&&!Bo();)zf(An)}function zf(h){var f=Wf(h.alternate,h,Lr);h.memoizedProps=h.pendingProps,f===null?Hf(h):An=f,cs.current=null}function Hf(h){var f=h;do{var x=f.alternate;if(h=f.return,f.flags&32768){if(x=Dh(x,f),x!==null){x.flags&=32767,An=x;return}if(h!==null)h.flags|=32768,h.subtreeFlags=0,h.deletions=null;else{Wn=6,An=null;return}}else if(x=Rh(x,f,Lr),x!==null){An=x;return}if(f=f.sibling,f!==null){An=f;return}An=f=h}while(f!==null);Wn===0&&(Wn=5)}function ds(h,f){var x=on,b=wn.transition;try{wn.transition=null,on=1,zm(h,f,x)}finally{wn.transition=b,on=x}return null}function zm(h,f,x){do Ds();while(Os!==null);if(qt&6)throw Error(o(327));var b=h.finishedWork,R=h.finishedLanes;if(b===null)return null;if(h.finishedWork=null,h.finishedLanes=0,b===h.current)throw Error(o(177));h.callbackNode=null,h.callbackPriority=0;var D=b.lanes|b.childLanes;if(th(h,D),h===Kn&&(An=Kn=null,Fn=0),!(b.subtreeFlags&2064)&&!(b.flags&2064)||Rl||(Rl=!0,Uh(nh,function(){return Ds(),null})),D=(b.flags&15990)!==0,b.subtreeFlags&15990||D){D=wn.transition,wn.transition=null;var Y=on;on=1;var le=qt;qt|=4,cs.current=null,Rf(h,b),C1(h,b),q(h.containerInfo),h.current=b,Rc(b),w1(),qt=le,on=Y,wn.transition=D}else h.current=b;if(Rl&&(Rl=!1,Os=h,Ra=R),D=h.pendingLanes,D===0&&(us=null),fc(b.stateNode),si(h,ar()),f!==null)for(x=h.onRecoverableError,b=0;b<f.length;b++)x(f[b]);if(Pl)throw Pl=!1,h=Ln,Ln=null,h;return Ra&1&&h.tag!==0&&Ds(),D=h.pendingLanes,D&1?h===ao?Ba++:(Ba=0,ao=h):Ba=0,Ui(),null}function Ds(){if(Os!==null){var h=Ws(Ra),f=wn.transition,x=on;try{if(wn.transition=null,on=16>h?16:h,Os===null)var b=!1;else{if(h=Os,Os=null,Ra=0,qt&6)throw Error(o(331));var R=qt;for(qt|=4,Ke=h.current;Ke!==null;){var D=Ke,Y=D.child;if(Ke.flags&16){var le=D.deletions;if(le!==null){for(var Te=0;Te<le.length;Te++){var We=le[Te];for(Ke=We;Ke!==null;){var gt=Ke;switch(gt.tag){case 0:case 11:case 15:ro(8,gt,D)}var Wt=gt.child;if(Wt!==null)Wt.return=gt,Ke=Wt;else for(;Ke!==null;){gt=Ke;var Ot=gt.sibling,tn=gt.return;if(Bf(gt),gt===We){Ke=null;break}if(Ot!==null){Ot.return=tn,Ke=Ot;break}Ke=tn}}}var at=D.alternate;if(at!==null){var Cr=at.child;if(Cr!==null){at.child=null;do{var bi=Cr.sibling;Cr.sibling=null,Cr=bi}while(Cr!==null)}}Ke=D}}if(D.subtreeFlags&2064&&Y!==null)Y.return=D,Ke=Y;else e:for(;Ke!==null;){if(D=Ke,D.flags&2048)switch(D.tag){case 0:case 11:case 15:ro(9,D,D.return)}var xe=D.sibling;if(xe!==null){xe.return=D.return,Ke=xe;break e}Ke=D.return}}var fe=h.current;for(Ke=fe;Ke!==null;){Y=Ke;var Ee=Y.child;if(Y.subtreeFlags&2064&&Ee!==null)Ee.return=Y,Ke=Ee;else e:for(Y=fe;Ke!==null;){if(le=Ke,le.flags&2048)try{switch(le.tag){case 0:case 11:case 15:Ar(9,le)}}catch(At){Yr(le,le.return,At)}if(le===Y){Ke=null;break e}var rt=le.sibling;if(rt!==null){rt.return=le.return,Ke=rt;break e}Ke=le.return}}if(qt=R,Ui(),Ts&&typeof Ts.onPostCommitFiberRoot=="function")try{Ts.onPostCommitFiberRoot(dc,h)}catch{}b=!0}return b}finally{on=x,wn.transition=f}}return!1}function Hc(h,f,x){f=Ef(x,f),f=Fm(h,f,1),Oo(h,f),f=mn(),h=Go(h,1),h!==null&&(ia(h,1,f),si(h,f))}function Yr(h,f,x){if(h.tag===3)Hc(h,h,x);else for(;f!==null;){if(f.tag===3){Hc(f,h,x);break}else if(f.tag===1){var b=f.stateNode;if(typeof f.type.getDerivedStateFromError=="function"||typeof b.componentDidCatch=="function"&&(us===null||!us.has(b))){h=Ef(x,h),h=Th(f,h,1),Oo(f,h),h=mn(),f=Go(f,1),f!==null&&(ia(f,1,h),si(f,h));break}}f=f.return}}function Gf(h,f,x){var b=h.pingCache;b!==null&&b.delete(f),f=mn(),h.pingedLanes|=h.suspendedLanes&x,Kn===h&&(Fn&x)===x&&(Wn===4||Wn===3&&(Fn&130023424)===Fn&&500>ar()-Fc?lo(h,0):Ia|=x),si(h,f)}function Vf(h,f){f===0&&(h.mode&1?(f=en,en<<=1,!(en&130023424)&&(en=4194304)):f=1);var x=mn();h=Go(h,f),h!==null&&(ia(h,f,x),si(h,x))}function Hm(h){var f=h.memoizedState,x=0;f!==null&&(x=f.retryLane),Vf(h,x)}function Gm(h,f){var x=0;switch(h.tag){case 13:var b=h.stateNode,R=h.memoizedState;R!==null&&(x=R.retryLane);break;case 19:b=h.stateNode;break;default:throw Error(o(314))}b!==null&&b.delete(f),Vf(h,x)}var Wf;Wf=function(h,f,x){if(h!==null)if(h.memoizedProps!==f.pendingProps||zt.current)mr=!0;else{if(!(h.lanes&x)&&!(f.flags&128))return mr=!1,Oh(h,f,x);mr=!!(h.flags&131072)}else mr=!1,Nn&&f.flags&1048576&&Im(f,fh,f.index);switch(f.lanes=0,f.tag){case 2:var b=f.type;h!==null&&(h.alternate=null,f.alternate=null,f.flags|=2),h=f.pendingProps;var R=En(f,sn.current);hl(f,x),R=xl(null,f,b,h,R,x);var D=Fo();return f.flags|=1,typeof R=="object"&&R!==null&&typeof R.render=="function"&&R.$$typeof===void 0?(f.tag=1,f.memoizedState=null,f.updateQueue=null,jt(b)?(D=!0,Es(f)):D=!1,f.memoizedState=R.state!==null&&R.state!==void 0?R.state:null,dl(f),R.updater=hh,f.stateNode=R,R._reactInternals=f,hf(f,b,h,x),f=Dr(null,f,b,!0,D,x)):(f.tag=0,Nn&&D&&df(f),Vn(null,f,R,x),f=f.child),f;case 16:b=f.elementType;e:{switch(h!==null&&(h.alternate=null,f.alternate=null,f.flags|=2),h=f.pendingProps,R=b._init,b=R(b._payload),f.type=b,R=f.tag=T1(b),h=ti(b,h),R){case 0:f=to(null,f,b,h,x);break e;case 1:f=xa(null,f,b,h,x);break e;case 11:f=In(null,f,b,h,x);break e;case 14:f=bn(null,f,b,ti(b.type,h),x);break e}throw Error(o(306,b,""))}return f;case 0:return b=f.type,R=f.pendingProps,R=f.elementType===b?R:ti(b,R),to(h,f,b,R,x);case 1:return b=f.type,R=f.pendingProps,R=f.elementType===b?R:ti(b,R),xa(h,f,b,R,x);case 3:e:{if(Cc(f),h===null)throw Error(o(387));b=f.pendingProps,D=f.memoizedState,R=D.element,lf(h,f),uh(f,b,null,x);var Y=f.memoizedState;if(b=Y.element,Oe&&D.isDehydrated)if(D={element:b,isDehydrated:!1,cache:Y.cache,transitions:Y.transitions},f.updateQueue.baseState=D,f.memoizedState=D,f.flags&256){R=Error(o(423)),f=Tf(h,f,b,x,R);break e}else if(b!==R){R=Error(o(424)),f=Tf(h,f,b,x,R);break e}else for(Oe&&(Sr=Xu(f.stateNode.containerInfo),Xr=f,Nn=!0,Gi=null,pl=!1),x=Bm(f,null,b,x),f.child=x;x;)x.flags=x.flags&-3|4096,x=x.sibling;else{if(ml(),b===R){f=ii(h,f,x);break e}Vn(h,f,b,x)}f=f.child}return f;case 5:return Om(f),h===null&&Lo(f),b=f.type,R=f.pendingProps,D=h!==null?h.memoizedProps:null,Y=R.children,Ae(b,R)?Y=null:D!==null&&Ae(b,D)&&(f.flags|=32),Jr(h,f),Vn(h,f,Y,x),f.child;case 6:return h===null&&Lo(f),null;case 13:return If(h,f,x);case 4:return gh(f,f.stateNode.containerInfo),b=f.pendingProps,h===null?f.child=Ys(f,null,b,x):Vn(h,f,b,x),f.child;case 11:return b=f.type,R=f.pendingProps,R=f.elementType===b?R:ti(b,R),In(h,f,b,R,x);case 7:return Vn(h,f,f.pendingProps,x),f.child;case 8:return Vn(h,f,f.pendingProps.children,x),f.child;case 12:return Vn(h,f,f.pendingProps.children,x),f.child;case 10:e:{if(b=f.type._context,R=f.pendingProps,D=f.memoizedProps,Y=R.value,la(f,b,Y),D!==null)if(Vr(D.value,Y)){if(D.children===R.children&&!zt.current){f=ii(h,f,x);break e}}else for(D=f.child,D!==null&&(D.return=f);D!==null;){var le=D.dependencies;if(le!==null){Y=D.child;for(var Te=le.firstContext;Te!==null;){if(Te.context===b){if(D.tag===1){Te=Js(-1,x&-x),Te.tag=2;var We=D.updateQueue;if(We!==null){We=We.shared;var gt=We.pending;gt===null?Te.next=Te:(Te.next=gt.next,gt.next=Te),We.pending=Te}}D.lanes|=x,Te=D.alternate,Te!==null&&(Te.lanes|=x),ca(D.return,x,f),le.lanes|=x;break}Te=Te.next}}else if(D.tag===10)Y=D.type===f.type?null:D.child;else if(D.tag===18){if(Y=D.return,Y===null)throw Error(o(341));Y.lanes|=x,le=Y.alternate,le!==null&&(le.lanes|=x),ca(Y,x,f),Y=D.sibling}else Y=D.child;if(Y!==null)Y.return=D;else for(Y=D;Y!==null;){if(Y===f){Y=null;break}if(D=Y.sibling,D!==null){D.return=Y.return,Y=D;break}Y=Y.return}D=Y}Vn(h,f,R.children,x),f=f.child}return f;case 9:return R=f.type,b=f.pendingProps.children,hl(f,x),R=ni(R),b=b(R),f.flags|=1,Vn(h,f,b,x),f.child;case 14:return b=f.type,R=ti(b,f.pendingProps),R=ti(b.type,R),bn(h,f,b,R,x);case 15:return eo(h,f,f.type,f.pendingProps,x);case 17:return b=f.type,R=f.pendingProps,R=f.elementType===b?R:ti(b,R),h!==null&&(h.alternate=null,f.alternate=null,f.flags|=2),f.tag=1,jt(b)?(h=!0,Es(f)):h=!1,hl(f,x),Cm(f,b,R),hf(f,b,R,x),Dr(null,f,b,!0,h,x);case 19:return Sa(h,f,x);case 22:return wr(h,f,x)}throw Error(o(156,f.tag))};function Uh(h,f){return sa(h,f)}function Vm(h,f,x,b){this.tag=h,this.key=x,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=f,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=b,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Ei(h,f,x,b){return new Vm(h,f,x,b)}function jh(h){return h=h.prototype,!(!h||!h.isReactComponent)}function T1(h){if(typeof h=="function")return jh(h)?1:0;if(h!=null){if(h=h.$$typeof,h===E)return 11;if(h===T)return 14}return 2}function co(h,f){var x=h.alternate;return x===null?(x=Ei(h.tag,f,h.key,h.mode),x.elementType=h.elementType,x.type=h.type,x.stateNode=h.stateNode,x.alternate=h,h.alternate=x):(x.pendingProps=f,x.type=h.type,x.flags=0,x.subtreeFlags=0,x.deletions=null),x.flags=h.flags&14680064,x.childLanes=h.childLanes,x.lanes=h.lanes,x.child=h.child,x.memoizedProps=h.memoizedProps,x.memoizedState=h.memoizedState,x.updateQueue=h.updateQueue,f=h.dependencies,x.dependencies=f===null?null:{lanes:f.lanes,firstContext:f.firstContext},x.sibling=h.sibling,x.index=h.index,x.ref=h.ref,x}function zh(h,f,x,b,R,D){var Y=2;if(b=h,typeof h=="function")jh(h)&&(Y=1);else if(typeof h=="string")Y=5;else e:switch(h){case p:return Oa(x.children,R,D,f);case m:Y=8,R|=8;break;case y:return h=Ei(12,x,f,R|2),h.elementType=y,h.lanes=D,h;case A:return h=Ei(13,x,f,R),h.elementType=A,h.lanes=D,h;case M:return h=Ei(19,x,f,R),h.elementType=M,h.lanes=D,h;case P:return Gc(x,R,D,f);default:if(typeof h=="object"&&h!==null)switch(h.$$typeof){case v:Y=10;break e;case S:Y=9;break e;case E:Y=11;break e;case T:Y=14;break e;case I:Y=16,b=null;break e}throw Error(o(130,h==null?h:typeof h,""))}return f=Ei(Y,x,f,R),f.elementType=h,f.type=b,f.lanes=D,f}function Oa(h,f,x,b){return h=Ei(7,h,b,f),h.lanes=x,h}function Gc(h,f,x,b){return h=Ei(22,h,b,f),h.elementType=P,h.lanes=x,h.stateNode={},h}function Hh(h,f,x){return h=Ei(6,h,null,f),h.lanes=x,h}function Gh(h,f,x){return f=Ei(4,h.children!==null?h.children:[],h.key,f),f.lanes=x,f.stateNode={containerInfo:h.containerInfo,pendingChildren:null,implementation:h.implementation},f}function Vh(h,f,x,b,R){this.tag=f,this.containerInfo=h,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=qe,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=eh(0),this.expirationTimes=eh(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=eh(0),this.identifierPrefix=b,this.onRecoverableError=R,Oe&&(this.mutableSourceEagerHydrationData=null)}function Wm(h,f,x,b,R,D,Y,le,Te){return h=new Vh(h,f,x,le,Te),f===1?(f=1,D===!0&&(f|=8)):f=0,D=Ei(3,null,null,f),h.current=D,D.stateNode=h,D.memoizedState={element:b,isDehydrated:x,cache:null,transitions:null},dl(D),h}function Xm(h){if(!h)return rn;h=h._reactInternals;e:{if(F(h)!==h||h.tag!==1)throw Error(o(170));var f=h;do{switch(f.tag){case 3:f=f.stateNode.context;break e;case 1:if(jt(f.type)){f=f.stateNode.__reactInternalMemoizedMergedChildContext;break e}}f=f.return}while(f!==null);throw Error(o(171))}if(h.tag===1){var x=h.type;if(jt(x))return Rr(h,x,f)}return f}function Jm(h){var f=h._reactInternals;if(f===void 0)throw typeof h.render=="function"?Error(o(188)):(h=Object.keys(h).join(","),Error(o(268,h)));return h=te(f),h===null?null:h.stateNode}function Xi(h,f){if(h=h.memoizedState,h!==null&&h.dehydrated!==null){var x=h.retryLane;h.retryLane=x!==0&&x<f?x:f}}function Vc(h,f){Xi(h,f),(h=h.alternate)&&Xi(h,f)}function Wh(h){return h=te(h),h===null?null:h.stateNode}function $m(){return null}return t.attemptContinuousHydration=function(h){if(h.tag===13){var f=mn();Nr(h,134217728,f),Vc(h,134217728)}},t.attemptHydrationAtCurrentPriority=function(h){if(h.tag===13){var f=mn(),x=hs(h);Nr(h,x,f),Vc(h,x)}},t.attemptSynchronousHydration=function(h){switch(h.tag){case 3:var f=h.stateNode;if(f.current.memoizedState.isDehydrated){var x=cl(f.pendingLanes);x!==0&&(Cs(f,x|1),si(f,ar()),!(qt&6)&&(Pa(),Ui()))}break;case 13:var b=mn();Bl(function(){return Nr(h,1,b)}),Vc(h,1)}},t.batchedUpdates=function(h,f){var x=qt;qt|=1;try{return h(f)}finally{qt=x,qt===0&&(Pa(),ih&&Ui())}},t.createComponentSelector=function(h){return{$$typeof:Oc,value:h}},t.createContainer=function(h,f,x,b,R,D,Y){return Wm(h,f,!1,null,x,b,R,D,Y)},t.createHasPseudoClassSelector=function(h){return{$$typeof:Ea,value:h}},t.createHydrationContainer=function(h,f,x,b,R,D,Y,le,Te){return h=Wm(x,b,!0,h,R,D,Y,le,Te),h.context=Xm(null),x=h.current,b=mn(),R=hs(x),D=Js(b,R),D.callback=f??null,Oo(x,D),h.current.lanes=R,ia(h,R,b),si(h,b),h},t.createPortal=function(h,f,x){var b=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:d,key:b==null?null:""+b,children:h,containerInfo:f,implementation:x}},t.createRoleSelector=function(h){return{$$typeof:ba,value:h}},t.createTestNameSelector=function(h){return{$$typeof:io,value:h}},t.createTextSelector=function(h){return{$$typeof:Tl,value:h}},t.deferredUpdates=function(h){var f=on,x=wn.transition;try{return wn.transition=null,on=16,h()}finally{on=f,wn.transition=x}},t.discreteUpdates=function(h,f,x,b,R){var D=on,Y=wn.transition;try{return wn.transition=null,on=1,h(f,x,b,R)}finally{on=D,wn.transition=Y,qt===0&&Pa()}},t.findAllNodes=so,t.findBoundingRects=function(h,f){if(!$e)throw Error(o(363));f=so(h,f),h=[];for(var x=0;x<f.length;x++)h.push(G(f[x]));for(f=h.length-1;0<f;f--){x=h[f];for(var b=x.x,R=b+x.width,D=x.y,Y=D+x.height,le=f-1;0<=le;le--)if(f!==le){var Te=h[le],We=Te.x,gt=We+Te.width,Wt=Te.y,Ot=Wt+Te.height;if(b>=We&&D>=Wt&&R<=gt&&Y<=Ot){h.splice(f,1);break}else if(b!==We||x.width!==Te.width||Ot<D||Wt>Y){if(!(D!==Wt||x.height!==Te.height||gt<b||We>R)){We>b&&(Te.width+=We-b,Te.x=b),gt<R&&(Te.width=R-We),h.splice(f,1);break}}else{Wt>D&&(Te.height+=Wt-D,Te.y=D),Ot<Y&&(Te.height=Y-Wt),h.splice(f,1);break}}}return h},t.findHostInstance=Jm,t.findHostInstanceWithNoPortals=function(h){return h=V(h),h=h!==null?ce(h):null,h===null?null:h.stateNode},t.findHostInstanceWithWarning=function(h){return Jm(h)},t.flushControlled=function(h){var f=qt;qt|=1;var x=wn.transition,b=on;try{wn.transition=null,on=1,h()}finally{on=b,wn.transition=x,qt=f,qt===0&&(Pa(),Ui())}},t.flushPassiveEffects=Ds,t.flushSync=Bl,t.focusWithin=function(h,f){if(!$e)throw Error(o(363));for(h=Dc(h),f=Si(h,f),f=Array.from(f),h=0;h<f.length;){var x=f[h++];if(!ye(x)){if(x.tag===5&&be(x.stateNode))return!0;for(x=x.child;x!==null;)f.push(x),x=x.sibling}}return!1},t.getCurrentUpdatePriority=function(){return on},t.getFindAllNodesFailureDescription=function(h,f){if(!$e)throw Error(o(363));var x=0,b=[];h=[Dc(h),0];for(var R=0;R<h.length;){var D=h[R++],Y=h[R++],le=f[Y];if((D.tag!==5||!ye(D))&&(Lc(D,le)&&(b.push(zo(le)),Y++,Y>x&&(x=Y)),Y<f.length))for(D=D.child;D!==null;)h.push(D,Y),D=D.sibling}if(x<f.length){for(h=[];x<f.length;x++)h.push(zo(f[x]));return`findAllNodes was able to match part of the selector:
3902  `+(b.join(" > ")+`
3903
3904No matching component was found for:
3905  `)+h.join(" > ")}return null},t.getPublicRootInstance=function(h){if(h=h.current,!h.child)return null;switch(h.child.tag){case 5:return he(h.child.stateNode);default:return h.child.stateNode}},t.injectIntoDevTools=function(h){if(h={bundleType:h.bundleType,version:h.version,rendererPackageName:h.rendererPackageName,rendererConfig:h.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:l.ReactCurrentDispatcher,findHostInstanceByFiber:Wh,findFiberByHostInstance:h.findFiberByHostInstance||$m,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.0.0-fc46dba67-20220329"},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u")h=!1;else{var f=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(f.isDisabled||!f.supportsFiber)h=!0;else{try{dc=f.inject(h),Ts=f}catch{}h=!!f.checkDCE}}return h},t.isAlreadyRendering=function(){return!1},t.observeVisibleRects=function(h,f,x,b){if(!$e)throw Error(o(363));h=so(h,f);var R=et(h,x,b).disconnect;return{disconnect:function(){R()}}},t.registerMutableSourceForHydration=function(h,f){var x=f._getVersion;x=x(f._source),h.mutableSourceEagerHydrationData==null?h.mutableSourceEagerHydrationData=[f,x]:h.mutableSourceEagerHydrationData.push(f,x)},t.runWithPriority=function(h,f){var x=on;try{return on=h,f()}finally{on=x}},t.shouldError=function(){return null},t.shouldSuspend=function(){return!1},t.updateContainer=function(h,f,x,b){var R=f.current,D=mn(),Y=hs(R);return x=Xm(x),f.context===null?f.context=x:f.pendingContext=x,f=Js(D,Y),f.payload={element:h},b=b===void 0?null:b,b!==null&&(f.callback=b),Oo(R,f),h=Nr(R,Y,D),h!==null&&lh(h,R,Y),Y},t}),Kv}var U2;function e9(){return U2||(U2=1,Xv.exports=Z6()),Xv.exports}var t9=e9();const n9=oc(t9);var Yv={exports:{}},qv={};/**
3906 * @license React
3907 * scheduler.production.min.js
3908 *
3909 * Copyright (c) Facebook, Inc. and its affiliates.
3910 *
3911 * This source code is licensed under the MIT license found in the
3912 * LICENSE file in the root directory of this source tree.
3913 */var j2;function r9(){return j2||(j2=1,function(r){function e(U,Z){var q=U.length;U.push(Z);e:for(;0<q;){var X=q-1>>>1,se=U[X];if(0<i(se,Z))U[X]=Z,U[q]=se,q=X;else break e}}function t(U){return U.length===0?null:U[0]}function n(U){if(U.length===0)return null;var Z=U[0],q=U.pop();if(q!==Z){U[0]=q;e:for(var X=0,se=U.length,Le=se>>>1;X<Le;){var pe=2*(X+1)-1,Ae=U[pe],Re=pe+1,Ie=U[Re];if(0>i(Ae,q))Re<se&&0>i(Ie,Ae)?(U[X]=Ie,U[Re]=q,X=Re):(U[X]=Ae,U[pe]=q,X=pe);else if(Re<se&&0>i(Ie,q))U[X]=Ie,U[Re]=q,X=Re;else break e}}return Z}function i(U,Z){var q=U.sortIndex-Z.sortIndex;return q!==0?q:U.id-Z.id}if(typeof performance=="object"&&typeof performance.now=="function"){var s=performance;r.unstable_now=function(){return s.now()}}else{var o=Date,l=o.now();r.unstable_now=function(){return o.now()-l}}var u=[],d=[],p=1,m=null,y=3,v=!1,S=!1,E=!1,A=typeof setTimeout=="function"?setTimeout:null,M=typeof clearTimeout=="function"?clearTimeout:null,T=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function I(U){for(var Z=t(d);Z!==null;){if(Z.callback===null)n(d);else if(Z.startTime<=U)n(d),Z.sortIndex=Z.expirationTime,e(u,Z);else break;Z=t(d)}}function P(U){if(E=!1,I(U),!S)if(t(u)!==null)S=!0,he(k);else{var Z=t(d);Z!==null&&ge(P,Z.startTime-U)}}function k(U,Z){S=!1,E&&(E=!1,M(H),H=-1),v=!0;var q=y;try{for(I(Z),m=t(u);m!==null&&(!(m.expirationTime>Z)||U&&!V());){var X=m.callback;if(typeof X=="function"){m.callback=null,y=m.priorityLevel;var se=X(m.expirationTime<=Z);Z=r.unstable_now(),typeof se=="function"?m.callback=se:m===t(u)&&n(u),I(Z)}else n(u);m=t(u)}if(m!==null)var Le=!0;else{var pe=t(d);pe!==null&&ge(P,pe.startTime-Z),Le=!1}return Le}finally{m=null,y=q,v=!1}}var O=!1,N=null,H=-1,F=5,L=-1;function V(){return!(r.unstable_now()-L<F)}function te(){if(N!==null){var U=r.unstable_now();L=U;var Z=!0;try{Z=N(!0,U)}finally{Z?ne():(O=!1,N=null)}}else O=!1}var ne;if(typeof T=="function")ne=function(){T(te)};else if(typeof MessageChannel<"u"){var ce=new MessageChannel,me=ce.port2;ce.port1.onmessage=te,ne=function(){me.postMessage(null)}}else ne=function(){A(te,0)};function he(U){N=U,O||(O=!0,ne())}function ge(U,Z){H=A(function(){U(r.unstable_now())},Z)}r.unstable_IdlePriority=5,r.unstable_ImmediatePriority=1,r.unstable_LowPriority=4,r.unstable_NormalPriority=3,r.unstable_Profiling=null,r.unstable_UserBlockingPriority=2,r.unstable_cancelCallback=function(U){U.callback=null},r.unstable_continueExecution=function(){S||v||(S=!0,he(k))},r.unstable_forceFrameRate=function(U){0>U||125<U?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):F=0<U?Math.floor(1e3/U):5},r.unstable_getCurrentPriorityLevel=function(){return y},r.unstable_getFirstCallbackNode=function(){return t(u)},r.unstable_next=function(U){switch(y){case 1:case 2:case 3:var Z=3;break;default:Z=y}var q=y;y=Z;try{return U()}finally{y=q}},r.unstable_pauseExecution=function(){},r.unstable_requestPaint=function(){},r.unstable_runWithPriority=function(U,Z){switch(U){case 1:case 2:case 3:case 4:case 5:break;default:U=3}var q=y;y=U;try{return Z()}finally{y=q}},r.unstable_scheduleCallback=function(U,Z,q){var X=r.unstable_now();switch(typeof q=="object"&&q!==null?(q=q.delay,q=typeof q=="number"&&0<q?X+q:X):q=X,U){case 1:var se=-1;break;case 2:se=250;break;case 5:se=1073741823;break;case 4:se=1e4;break;default:se=5e3}return se=q+se,U={id:p++,callback:Z,priorityLevel:U,startTime:q,expirationTime:se,sortIndex:-1},q>X?(U.sortIndex=q,e(d,U),t(u)===null&&U===t(d)&&(E?(M(H),H=-1):E=!0,ge(P,q-X))):(U.sortIndex=se,e(u,U),S||v||(S=!0,he(k))),U},r.unstable_shouldYield=V,r.unstable_wrapCallback=function(U){var Z=y;return function(){var q=y;y=Z;try{return U.apply(this,arguments)}finally{y=q}}}}(qv)),qv}var z2;function i9(){return z2||(z2=1,Yv.exports=r9()),Yv.exports}var H2=i9();const BM={},s9=r=>void Object.assign(BM,r);function o9(r,e){function t(p,{args:m=[],attach:y,...v},S){let E=`${p[0].toUpperCase()}${p.slice(1)}`,A;if(p==="primitive"){if(v.object===void 0)throw new Error("R3F: Primitives without 'object' are invalid!");const M=v.object;A=xd(M,{type:p,root:S,attach:y,primitive:!0})}else{const M=BM[E];if(!M)throw new Error(`R3F: ${E} is not part of the THREE namespace! Did you forget to extend? See: https://docs.pmnd.rs/react-three-fiber/api/objects#using-3rd-party-objects-declaratively`);if(!Array.isArray(m))throw new Error("R3F: The args prop must be an array!");A=xd(new M(...m),{type:p,root:S,attach:y,memoizedProps:{args:m}})}return A.__r3f.attach===void 0&&(A instanceof Jt?A.__r3f.attach="geometry":A instanceof xr&&(A.__r3f.attach="material")),E!=="inject"&&e_(A,v),A}function n(p,m){let y=!1;if(m){var v,S;(v=m.__r3f)!=null&&v.attach?Zv(p,m,m.__r3f.attach):m.isObject3D&&p.isObject3D&&(p.add(m),y=!0),y||(S=p.__r3f)==null||S.objects.push(m),m.__r3f||xd(m,{}),m.__r3f.parent=p,sx(m),Md(m)}}function i(p,m,y){let v=!1;if(m){var S,E;if((S=m.__r3f)!=null&&S.attach)Zv(p,m,m.__r3f.attach);else if(m.isObject3D&&p.isObject3D){m.parent=p,m.dispatchEvent({type:"added"}),p.dispatchEvent({type:"childadded",child:m});const A=p.children.filter(T=>T!==m),M=A.indexOf(y);p.children=[...A.slice(0,M),m,...A.slice(M)],v=!0}v||(E=p.__r3f)==null||E.objects.push(m),m.__r3f||xd(m,{}),m.__r3f.parent=p,sx(m),Md(m)}}function s(p,m,y=!1){p&&[...p].forEach(v=>o(m,v,y))}function o(p,m,y){if(m){var v,S,E;if(m.__r3f&&(m.__r3f.parent=null),(v=p.__r3f)!=null&&v.objects&&(p.__r3f.objects=p.__r3f.objects.filter(P=>P!==m)),(S=m.__r3f)!=null&&S.attach)J2(p,m,m.__r3f.attach);else if(m.isObject3D&&p.isObject3D){var A;p.remove(m),(A=m.__r3f)!=null&&A.root&&m9(Sg(m),m)}const T=(E=m.__r3f)==null?void 0:E.primitive,I=!T&&(y===void 0?m.dispose!==null:y);if(!T){var M;s((M=m.__r3f)==null?void 0:M.objects,m,I),s(m.children,m,I)}if(delete m.__r3f,I&&m.dispose&&m.type!=="Scene"){const P=()=>{try{m.dispose()}catch{}};typeof IS_REACT_ACT_ENVIRONMENT>"u"?H2.unstable_scheduleCallback(H2.unstable_IdlePriority,P):P()}Md(p)}}function l(p,m,y,v){var S;const E=(S=p.__r3f)==null?void 0:S.parent;if(!E)return;const A=t(m,y,p.__r3f.root);if(p.children){for(const M of p.children)M.__r3f&&n(A,M);p.children=p.children.filter(M=>!M.__r3f)}p.__r3f.objects.forEach(M=>n(A,M)),p.__r3f.objects=[],p.__r3f.autoRemovedBeforeAppend||o(E,p),A.parent&&(A.__r3f.autoRemovedBeforeAppend=!0),n(E,A),A.raycast&&A.__r3f.eventCount&&Sg(A).getState().internal.interaction.push(A),[v,v.alternate].forEach(M=>{M!==null&&(M.stateNode=A,M.ref&&(typeof M.ref=="function"?M.ref(A):M.ref.current=A))})}const u=()=>{};return{reconciler:n9({createInstance:t,removeChild:o,appendChild:n,appendInitialChild:n,insertBefore:i,supportsMutation:!0,isPrimaryRenderer:!1,supportsPersistence:!1,supportsHydration:!1,noTimeout:-1,appendChildToContainer:(p,m)=>{if(!m)return;const y=p.getState().scene;y.__r3f&&(y.__r3f.root=p,n(y,m))},removeChildFromContainer:(p,m)=>{m&&o(p.getState().scene,m)},insertInContainerBefore:(p,m,y)=>{if(!m||!y)return;const v=p.getState().scene;v.__r3f&&i(v,m,y)},getRootHostContext:()=>null,getChildHostContext:p=>p,finalizeInitialChildren(p){var m;return!!((m=p==null?void 0:p.__r3f)!=null?m:{}).handlers},prepareUpdate(p,m,y,v){var S;if(((S=p==null?void 0:p.__r3f)!=null?S:{}).primitive&&v.object&&v.object!==p)return[!0];{const{args:A=[],children:M,...T}=v,{args:I=[],children:P,...k}=y;if(!Array.isArray(A))throw new Error("R3F: the args prop must be an array!");if(A.some((N,H)=>N!==I[H]))return[!0];const O=hT(p,T,k,!0);return O.changes.length?[!1,O]:null}},commitUpdate(p,[m,y],v,S,E,A){m?l(p,v,E,A):e_(p,y)},commitMount(p,m,y,v){var S;const E=(S=p.__r3f)!=null?S:{};p.raycast&&E.handlers&&E.eventCount&&Sg(p).getState().internal.interaction.push(p)},getPublicInstance:p=>p,prepareForCommit:()=>null,preparePortalMount:p=>xd(p.getState().scene),resetAfterCommit:()=>{},shouldSetTextContent:()=>!1,clearContainer:()=>!1,hideInstance(p){var m;const{attach:y,parent:v}=(m=p.__r3f)!=null?m:{};y&&v&&J2(v,p,y),p.isObject3D&&(p.visible=!1),Md(p)},unhideInstance(p,m){var y;const{attach:v,parent:S}=(y=p.__r3f)!=null?y:{};v&&S&&Zv(S,p,v),(p.isObject3D&&m.visible==null||m.visible)&&(p.visible=!0),Md(p)},createTextInstance:u,hideTextInstance:u,unhideTextInstance:u,getCurrentEventPriority:()=>e?e():Ed.DefaultEventPriority,beforeActiveInstanceBlur:()=>{},afterActiveInstanceBlur:()=>{},detachDeletedInstance:()=>{},now:typeof performance<"u"&&kn.fun(performance.now)?performance.now:kn.fun(Date.now)?Date.now:()=>0,scheduleTimeout:kn.fun(setTimeout)?setTimeout:void 0,cancelTimeout:kn.fun(clearTimeout)?clearTimeout:void 0}),applyProps:e_}}var G2,V2;const Qv=r=>"colorSpace"in r||"outputColorSpace"in r,sT=()=>{var r;return(r=BM.ColorManagement)!=null?r:null},oT=r=>r&&r.isOrthographicCamera,a9=r=>r&&r.hasOwnProperty("current"),fm=typeof window<"u"&&((G2=window.document)!=null&&G2.createElement||((V2=window.navigator)==null?void 0:V2.product)==="ReactNative")?z.useLayoutEffect:z.useEffect;function aT(r){const e=z.useRef(r);return fm(()=>void(e.current=r),[r]),e}function l9({set:r}){return fm(()=>(r(new Promise(()=>null)),()=>r(!1)),[r]),null}class lT extends z.Component{constructor(...e){super(...e),this.state={error:!1}}componentDidCatch(e){this.props.set(e)}render(){return this.state.error?null:this.props.children}}lT.getDerivedStateFromError=()=>({error:!0});const cT="__default",W2=new Map,c9=r=>r&&!!r.memoized&&!!r.changes;function uT(r){var e;const t=typeof window<"u"?(e=window.devicePixelRatio)!=null?e:2:1;return Array.isArray(r)?Math.min(Math.max(r[0],t),r[1]):r}const dp=r=>{var e;return(e=r.__r3f)==null?void 0:e.root.getState()};function Sg(r){let e=r.__r3f.root;for(;e.getState().previousRoot;)e=e.getState().previousRoot;return e}const kn={obj:r=>r===Object(r)&&!kn.arr(r)&&typeof r!="function",fun:r=>typeof r=="function",str:r=>typeof r=="string",num:r=>typeof r=="number",boo:r=>typeof r=="boolean",und:r=>r===void 0,arr:r=>Array.isArray(r),equ(r,e,{arrays:t="shallow",objects:n="reference",strict:i=!0}={}){if(typeof r!=typeof e||!!r!=!!e)return!1;if(kn.str(r)||kn.num(r)||kn.boo(r))return r===e;const s=kn.obj(r);if(s&&n==="reference")return r===e;const o=kn.arr(r);if(o&&t==="reference")return r===e;if((o||s)&&r===e)return!0;let l;for(l in r)if(!(l in e))return!1;if(s&&t==="shallow"&&n==="shallow"){for(l in i?e:r)if(!kn.equ(r[l],e[l],{strict:i,objects:"reference"}))return!1}else for(l in i?e:r)if(r[l]!==e[l])return!1;if(kn.und(l)){if(o&&r.length===0&&e.length===0||s&&Object.keys(r).length===0&&Object.keys(e).length===0)return!0;if(r!==e)return!1}return!0}};function u9(r){const e={nodes:{},materials:{}};return r&&r.traverse(t=>{t.name&&(e.nodes[t.name]=t),t.material&&!e.materials[t.material.name]&&(e.materials[t.material.name]=t.material)}),e}function h9(r){r.dispose&&r.type!=="Scene"&&r.dispose();for(const e in r)e.dispose==null||e.dispose(),delete r[e]}function xd(r,e){const t=r;return t.__r3f={type:"",root:null,previousAttach:null,memoizedProps:{},eventCount:0,handlers:{},objects:[],parent:null,...e},r}function ix(r,e){let t=r;if(e.includes("-")){const n=e.split("-"),i=n.pop();return t=n.reduce((s,o)=>s[o],r),{target:t,key:i}}else return{target:t,key:e}}const X2=/-\d+$/;function Zv(r,e,t){if(kn.str(t)){if(X2.test(t)){const s=t.replace(X2,""),{target:o,key:l}=ix(r,s);Array.isArray(o[l])||(o[l]=[])}const{target:n,key:i}=ix(r,t);e.__r3f.previousAttach=n[i],n[i]=e}else e.__r3f.previousAttach=t(r,e)}function J2(r,e,t){var n,i;if(kn.str(t)){const{target:s,key:o}=ix(r,t),l=e.__r3f.previousAttach;l===void 0?delete s[o]:s[o]=l}else(n=e.__r3f)==null||n.previousAttach==null||n.previousAttach(r,e);(i=e.__r3f)==null||delete i.previousAttach}function hT(r,{children:e,key:t,ref:n,...i},{children:s,key:o,ref:l,...u}={},d=!1){const p=r.__r3f,m=Object.entries(i),y=[];if(d){const S=Object.keys(u);for(let E=0;E<S.length;E++)i.hasOwnProperty(S[E])||m.unshift([S[E],cT+"remove"])}m.forEach(([S,E])=>{var A;if((A=r.__r3f)!=null&&A.primitive&&S==="object"||kn.equ(E,u[S]))return;if(/^on(Pointer|Click|DoubleClick|ContextMenu|Wheel)/.test(S))return y.push([S,E,!0,[]]);let M=[];S.includes("-")&&(M=S.split("-")),y.push([S,E,!1,M]);for(const T in i){const I=i[T];T.startsWith(`${S}-`)&&y.push([T,I,!1,T.split("-")])}});const v={...i};return p!=null&&p.memoizedProps&&p!=null&&p.memoizedProps.args&&(v.args=p.memoizedProps.args),p!=null&&p.memoizedProps&&p!=null&&p.memoizedProps.attach&&(v.attach=p.memoizedProps.attach),{memoized:v,changes:y}}const d9=typeof process<"u"&&!1;function e_(r,e){var t;const n=r.__r3f,i=n==null?void 0:n.root,s=i==null||i.getState==null?void 0:i.getState(),{memoized:o,changes:l}=c9(e)?e:hT(r,e),u=n==null?void 0:n.eventCount;r.__r3f&&(r.__r3f.memoizedProps=o);for(let p=0;p<l.length;p++){let[m,y,v,S]=l[p];if(Qv(r)){const T="srgb",I="srgb-linear";m==="encoding"?(m="colorSpace",y=y===3001?T:I):m==="outputEncoding"&&(m="outputColorSpace",y=y===3001?T:I)}let E=r,A=E[m];if(S.length&&(A=S.reduce((M,T)=>M[T],r),!(A&&A.set))){const[M,...T]=S.reverse();E=T.reverse().reduce((I,P)=>I[P],r),m=M}if(y===cT+"remove")if(E.constructor){let M=W2.get(E.constructor);M||(M=new E.constructor,W2.set(E.constructor,M)),y=M[m]}else y=0;if(v&&n)y?n.handlers[m]=y:delete n.handlers[m],n.eventCount=Object.keys(n.handlers).length;else if(A&&A.set&&(A.copy||A instanceof wu)){if(Array.isArray(y))A.fromArray?A.fromArray(y):A.set(...y);else if(A.copy&&y&&y.constructor&&(d9?A.constructor.name===y.constructor.name:A.constructor===y.constructor))A.copy(y);else if(y!==void 0){const M=A instanceof tt;!M&&A.setScalar?A.setScalar(y):A instanceof wu&&y instanceof wu?A.mask=y.mask:A.set(y),!sT()&&s&&!s.linear&&M&&A.convertSRGBToLinear()}}else if(E[m]=y,E[m]instanceof Gn&&E[m].format===hi&&E[m].type===Mo&&s){const M=E[m];Qv(M)&&Qv(s.gl)?M.colorSpace=s.gl.outputColorSpace:M.encoding=s.gl.outputEncoding}Md(r)}if(n&&n.parent&&r.raycast&&u!==n.eventCount){const p=Sg(r).getState().internal,m=p.interaction.indexOf(r);m>-1&&p.interaction.splice(m,1),n.eventCount&&p.interaction.push(r)}return!(l.length===1&&l[0][0]==="onUpdate")&&l.length&&(t=r.__r3f)!=null&&t.parent&&sx(r),r}function Md(r){var e,t;const n=(e=r.__r3f)==null||(t=e.root)==null||t.getState==null?void 0:t.getState();n&&n.internal.frames===0&&n.invalidate()}function sx(r){r.onUpdate==null||r.onUpdate(r)}function f9(r,e){r.manual||(oT(r)?(r.left=e.width/-2,r.right=e.width/2,r.top=e.height/2,r.bottom=e.height/-2):r.aspect=e.width/e.height,r.updateProjectionMatrix(),r.updateMatrixWorld())}function ag(r){return(r.eventObject||r.object).uuid+"/"+r.index+r.instanceId}function p9(){var r;const e=typeof self<"u"&&self||typeof window<"u"&&window;if(!e)return Ed.DefaultEventPriority;switch((r=e.event)==null?void 0:r.type){case"click":case"contextmenu":case"dblclick":case"pointercancel":case"pointerdown":case"pointerup":return Ed.DiscreteEventPriority;case"pointermove":case"pointerout":case"pointerover":case"pointerenter":case"pointerleave":case"wheel":return Ed.ContinuousEventPriority;default:return Ed.DefaultEventPriority}}function dT(r,e,t,n){const i=t.get(e);i&&(t.delete(e),t.size===0&&(r.delete(n),i.target.releasePointerCapture(n)))}function m9(r,e){const{internal:t}=r.getState();t.interaction=t.interaction.filter(n=>n!==e),t.initialHits=t.initialHits.filter(n=>n!==e),t.hovered.forEach((n,i)=>{(n.eventObject===e||n.object===e)&&t.hovered.delete(i)}),t.capturedMap.forEach((n,i)=>{dT(t.capturedMap,e,n,i)})}function g9(r){function e(u){const{internal:d}=r.getState(),p=u.offsetX-d.initialClick[0],m=u.offsetY-d.initialClick[1];return Math.round(Math.sqrt(p*p+m*m))}function t(u){return u.filter(d=>["Move","Over","Enter","Out","Leave"].some(p=>{var m;return(m=d.__r3f)==null?void 0:m.handlers["onPointer"+p]}))}function n(u,d){const p=r.getState(),m=new Set,y=[],v=d?d(p.internal.interaction):p.internal.interaction;for(let M=0;M<v.length;M++){const T=dp(v[M]);T&&(T.raycaster.camera=void 0)}p.previousRoot||p.events.compute==null||p.events.compute(u,p);function S(M){const T=dp(M);if(!T||!T.events.enabled||T.raycaster.camera===null)return[];if(T.raycaster.camera===void 0){var I;T.events.compute==null||T.events.compute(u,T,(I=T.previousRoot)==null?void 0:I.getState()),T.raycaster.camera===void 0&&(T.raycaster.camera=null)}return T.raycaster.camera?T.raycaster.intersectObject(M,!0):[]}let E=v.flatMap(S).sort((M,T)=>{const I=dp(M.object),P=dp(T.object);return!I||!P?M.distance-T.distance:P.events.priority-I.events.priority||M.distance-T.distance}).filter(M=>{const T=ag(M);return m.has(T)?!1:(m.add(T),!0)});p.events.filter&&(E=p.events.filter(E,p));for(const M of E){let T=M.object;for(;T;){var A;(A=T.__r3f)!=null&&A.eventCount&&y.push({...M,eventObject:T}),T=T.parent}}if("pointerId"in u&&p.internal.capturedMap.has(u.pointerId))for(let M of p.internal.capturedMap.get(u.pointerId).values())m.has(ag(M.intersection))||y.push(M.intersection);return y}function i(u,d,p,m){const y=r.getState();if(u.length){const v={stopped:!1};for(const S of u){const E=dp(S.object)||y,{raycaster:A,pointer:M,camera:T,internal:I}=E,P=new $(M.x,M.y,0).unproject(T),k=L=>{var V,te;return(V=(te=I.capturedMap.get(L))==null?void 0:te.has(S.eventObject))!=null?V:!1},O=L=>{const V={intersection:S,target:d.target};I.capturedMap.has(L)?I.capturedMap.get(L).set(S.eventObject,V):I.capturedMap.set(L,new Map([[S.eventObject,V]])),d.target.setPointerCapture(L)},N=L=>{const V=I.capturedMap.get(L);V&&dT(I.capturedMap,S.eventObject,V,L)};let H={};for(let L in d){let V=d[L];typeof V!="function"&&(H[L]=V)}let F={...S,...H,pointer:M,intersections:u,stopped:v.stopped,delta:p,unprojectedPoint:P,ray:A.ray,camera:T,stopPropagation(){const L="pointerId"in d&&I.capturedMap.get(d.pointerId);if((!L||L.has(S.eventObject))&&(F.stopped=v.stopped=!0,I.hovered.size&&Array.from(I.hovered.values()).find(V=>V.eventObject===S.eventObject))){const V=u.slice(0,u.indexOf(S));s([...V,S])}},target:{hasPointerCapture:k,setPointerCapture:O,releasePointerCapture:N},currentTarget:{hasPointerCapture:k,setPointerCapture:O,releasePointerCapture:N},nativeEvent:d};if(m(F),v.stopped===!0)break}}return u}function s(u){const{internal:d}=r.getState();for(const p of d.hovered.values())if(!u.length||!u.find(m=>m.object===p.object&&m.index===p.index&&m.instanceId===p.instanceId)){const y=p.eventObject.__r3f,v=y==null?void 0:y.handlers;if(d.hovered.delete(ag(p)),y!=null&&y.eventCount){const S={...p,intersections:u};v.onPointerOut==null||v.onPointerOut(S),v.onPointerLeave==null||v.onPointerLeave(S)}}}function o(u,d){for(let p=0;p<d.length;p++){const m=d[p].__r3f;m==null||m.handlers.onPointerMissed==null||m.handlers.onPointerMissed(u)}}function l(u){switch(u){case"onPointerLeave":case"onPointerCancel":return()=>s([]);case"onLostPointerCapture":return d=>{const{internal:p}=r.getState();"pointerId"in d&&p.capturedMap.has(d.pointerId)&&requestAnimationFrame(()=>{p.capturedMap.has(d.pointerId)&&(p.capturedMap.delete(d.pointerId),s([]))})}}return function(p){const{onPointerMissed:m,internal:y}=r.getState();y.lastEvent.current=p;const v=u==="onPointerMove",S=u==="onClick"||u==="onContextMenu"||u==="onDoubleClick",A=n(p,v?t:void 0),M=S?e(p):0;u==="onPointerDown"&&(y.initialClick=[p.offsetX,p.offsetY],y.initialHits=A.map(I=>I.eventObject)),S&&!A.length&&M<=2&&(o(p,y.interaction),m&&m(p)),v&&s(A);function T(I){const P=I.eventObject,k=P.__r3f,O=k==null?void 0:k.handlers;if(k!=null&&k.eventCount)if(v){if(O.onPointerOver||O.onPointerEnter||O.onPointerOut||O.onPointerLeave){const N=ag(I),H=y.hovered.get(N);H?H.stopped&&I.stopPropagation():(y.hovered.set(N,I),O.onPointerOver==null||O.onPointerOver(I),O.onPointerEnter==null||O.onPointerEnter(I))}O.onPointerMove==null||O.onPointerMove(I)}else{const N=O[u];N?(!S||y.initialHits.includes(P))&&(o(p,y.interaction.filter(H=>!y.initialHits.includes(H))),N(I)):S&&y.initialHits.includes(P)&&o(p,y.interaction.filter(H=>!y.initialHits.includes(H)))}}i(A,p,M,T)}}return{handlePointer:l}}const fT=r=>!!(r!=null&&r.render),pT=z.createContext(null),y9=(r,e)=>{const t=nT((l,u)=>{const d=new $,p=new $,m=new $;function y(M=u().camera,T=p,I=u().size){const{width:P,height:k,top:O,left:N}=I,H=P/k;T instanceof $?m.copy(T):m.set(...T);const F=M.getWorldPosition(d).distanceTo(m);if(oT(M))return{width:P/M.zoom,height:k/M.zoom,top:O,left:N,factor:1,distance:F,aspect:H};{const L=M.fov*Math.PI/180,V=2*Math.tan(L/2)*F,te=V*(P/k);return{width:te,height:V,top:O,left:N,factor:P/te,distance:F,aspect:H}}}let v;const S=M=>l(T=>({performance:{...T.performance,current:M}})),E=new Ne;return{set:l,get:u,gl:null,camera:null,raycaster:null,events:{priority:1,enabled:!0,connected:!1},xr:null,scene:null,invalidate:(M=1)=>r(u(),M),advance:(M,T)=>e(M,T,u()),legacy:!1,linear:!1,flat:!1,controls:null,clock:new EM,pointer:E,mouse:E,frameloop:"always",onPointerMissed:void 0,performance:{current:1,min:.5,max:1,debounce:200,regress:()=>{const M=u();v&&clearTimeout(v),M.performance.current!==M.performance.min&&S(M.performance.min),v=setTimeout(()=>S(u().performance.max),M.performance.debounce)}},size:{width:0,height:0,top:0,left:0,updateStyle:!1},viewport:{initialDpr:0,dpr:0,width:0,height:0,top:0,left:0,aspect:0,distance:0,factor:0,getCurrentViewport:y},setEvents:M=>l(T=>({...T,events:{...T.events,...M}})),setSize:(M,T,I,P,k)=>{const O=u().camera,N={width:M,height:T,top:P||0,left:k||0,updateStyle:I};l(H=>({size:N,viewport:{...H.viewport,...y(O,p,N)}}))},setDpr:M=>l(T=>{const I=uT(M);return{viewport:{...T.viewport,dpr:I,initialDpr:T.viewport.initialDpr||I}}}),setFrameloop:(M="always")=>{const T=u().clock;T.stop(),T.elapsedTime=0,M!=="never"&&(T.start(),T.elapsedTime=0),l(()=>({frameloop:M}))},previousRoot:void 0,internal:{active:!1,priority:0,frames:0,lastEvent:z.createRef(),interaction:[],hovered:new Map,subscribers:[],initialClick:[0,0],initialHits:[],capturedMap:new Map,subscribe:(M,T,I)=>{const P=u().internal;return P.priority=P.priority+(T>0?1:0),P.subscribers.push({ref:M,priority:T,store:I}),P.subscribers=P.subscribers.sort((k,O)=>k.priority-O.priority),()=>{const k=u().internal;k!=null&&k.subscribers&&(k.priority=k.priority-(T>0?1:0),k.subscribers=k.subscribers.filter(O=>O.ref!==M))}}}}}),n=t.getState();let i=n.size,s=n.viewport.dpr,o=n.camera;return t.subscribe(()=>{const{camera:l,size:u,viewport:d,gl:p,set:m}=t.getState();if(u.width!==i.width||u.height!==i.height||d.dpr!==s){var y;i=u,s=d.dpr,f9(l,u),p.setPixelRatio(d.dpr);const v=(y=u.updateStyle)!=null?y:typeof HTMLCanvasElement<"u"&&p.domElement instanceof HTMLCanvasElement;p.setSize(u.width,u.height,v)}l!==o&&(o=l,m(v=>({viewport:{...v.viewport,...v.viewport.getCurrentViewport(l)}})))}),t.subscribe(l=>r(l)),t};let lg,v9=new Set,_9=new Set,x9=new Set;function t_(r,e){if(r.size)for(const{callback:t}of r.values())t(e)}function fp(r,e){switch(r){case"before":return t_(v9,e);case"after":return t_(_9,e);case"tail":return t_(x9,e)}}let n_,r_;function i_(r,e,t){let n=e.clock.getDelta();for(e.frameloop==="never"&&typeof r=="number"&&(n=r-e.clock.elapsedTime,e.clock.oldTime=e.clock.elapsedTime,e.clock.elapsedTime=r),n_=e.internal.subscribers,lg=0;lg<n_.length;lg++)r_=n_[lg],r_.ref.current(r_.store.getState(),n,t);return!e.internal.priority&&e.gl.render&&e.gl.render(e.scene,e.camera),e.internal.frames=Math.max(0,e.internal.frames-1),e.frameloop==="always"?1:e.internal.frames}function M9(r){let e=!1,t=!1,n,i,s;function o(d){i=requestAnimationFrame(o),e=!0,n=0,fp("before",d),t=!0;for(const m of r.values()){var p;s=m.store.getState(),s.internal.active&&(s.frameloop==="always"||s.internal.frames>0)&&!((p=s.gl.xr)!=null&&p.isPresenting)&&(n+=i_(d,s))}if(t=!1,fp("after",d),n===0)return fp("tail",d),e=!1,cancelAnimationFrame(i)}function l(d,p=1){var m;if(!d)return r.forEach(y=>l(y.store.getState(),p));(m=d.gl.xr)!=null&&m.isPresenting||!d.internal.active||d.frameloop==="never"||(p>1?d.internal.frames=Math.min(60,d.internal.frames+p):t?d.internal.frames=2:d.internal.frames=1,e||(e=!0,requestAnimationFrame(o)))}function u(d,p=!0,m,y){if(p&&fp("before",d),m)i_(d,m,y);else for(const v of r.values())i_(d,v.store.getState());p&&fp("after",d)}return{loop:o,invalidate:l,advance:u}}function mT(){const r=z.useContext(pT);if(!r)throw new Error("R3F: Hooks can only be used within the Canvas component!");return r}function Id(r=t=>t,e){return mT()(r,e)}function OM(r,e=0){const t=mT(),n=t.getState().internal.subscribe,i=aT(r);return fm(()=>n(i,e,t),[e,n,t]),null}const $2=new WeakMap;function gT(r,e){return function(t,...n){let i=$2.get(t);return i||(i=new t,$2.set(t,i)),r&&r(i),Promise.all(n.map(s=>new Promise((o,l)=>i.load(s,u=>{u.scene&&Object.assign(u,u9(u.scene)),o(u)},e,u=>l(new Error(`Could not load ${s}: ${u==null?void 0:u.message}`))))))}}function pm(r,e,t,n){const i=Array.isArray(e)?e:[e],s=$6(gT(t,n),[r,...i],{equal:kn.equ});return Array.isArray(e)?s:s[0]}pm.preload=function(r,e,t){const n=Array.isArray(e)?e:[e];return K6(gT(t),[r,...n])};pm.clear=function(r,e){const t=Array.isArray(e)?e:[e];return Y6([r,...t])};const jd=new Map,{invalidate:K2,advance:Y2}=M9(jd),{reconciler:fy,applyProps:pd}=o9(jd,p9),md={objects:"shallow",strict:!1},S9=(r,e)=>{const t=typeof r=="function"?r(e):r;return fT(t)?t:new RM({powerPreference:"high-performance",canvas:e,antialias:!0,alpha:!0,...r})};function w9(r,e){const t=typeof HTMLCanvasElement<"u"&&r instanceof HTMLCanvasElement;if(e){const{width:n,height:i,top:s,left:o,updateStyle:l=t}=e;return{width:n,height:i,top:s,left:o,updateStyle:l}}else if(typeof HTMLCanvasElement<"u"&&r instanceof HTMLCanvasElement&&r.parentElement){const{width:n,height:i,top:s,left:o}=r.parentElement.getBoundingClientRect();return{width:n,height:i,top:s,left:o,updateStyle:t}}else if(typeof OffscreenCanvas<"u"&&r instanceof OffscreenCanvas)return{width:r.width,height:r.height,top:0,left:0,updateStyle:t};return{width:0,height:0,top:0,left:0}}function A9(r){const e=jd.get(r),t=e==null?void 0:e.fiber,n=e==null?void 0:e.store;e&&console.warn("R3F.createRoot should only be called once!");const i=typeof reportError=="function"?reportError:console.error,s=n||y9(K2,Y2),o=t||fy.createContainer(s,Ed.ConcurrentRoot,null,!1,null,"",i,null);e||jd.set(r,{fiber:o,store:s});let l,u=!1,d;return{configure(p={}){let{gl:m,size:y,scene:v,events:S,onCreated:E,shadows:A=!1,linear:M=!1,flat:T=!1,legacy:I=!1,orthographic:P=!1,frameloop:k="always",dpr:O=[1,2],performance:N,raycaster:H,camera:F,onPointerMissed:L}=p,V=s.getState(),te=V.gl;V.gl||V.set({gl:te=S9(m,r)});let ne=V.raycaster;ne||V.set({raycaster:ne=new $C});const{params:ce,...me}=H||{};if(kn.equ(me,ne,md)||pd(ne,{...me}),kn.equ(ce,ne.params,md)||pd(ne,{params:{...ne.params,...ce}}),!V.camera||V.camera===d&&!kn.equ(d,F,md)){d=F;const q=F instanceof rm,X=q?F:P?new Kd(0,0,0,0,.1,1e3):new _r(75,0,.1,1e3);q||(X.position.z=5,F&&(pd(X,F),("aspect"in F||"left"in F||"right"in F||"bottom"in F||"top"in F)&&(X.manual=!0,X.updateProjectionMatrix())),!V.camera&&!(F!=null&&F.rotation)&&X.lookAt(0,0,0)),V.set({camera:X}),ne.camera=X}if(!V.scene){let q;v instanceof Gp?q=v:(q=new Gp,v&&pd(q,v)),V.set({scene:xd(q)})}if(!V.xr){var he;const q=(Le,pe)=>{const Ae=s.getState();Ae.frameloop!=="never"&&Y2(Le,!0,Ae,pe)},X=()=>{const Le=s.getState();Le.gl.xr.enabled=Le.gl.xr.isPresenting,Le.gl.xr.setAnimationLoop(Le.gl.xr.isPresenting?q:null),Le.gl.xr.isPresenting||K2(Le)},se={connect(){const Le=s.getState().gl;Le.xr.addEventListener("sessionstart",X),Le.xr.addEventListener("sessionend",X)},disconnect(){const Le=s.getState().gl;Le.xr.removeEventListener("sessionstart",X),Le.xr.removeEventListener("sessionend",X)}};typeof((he=te.xr)==null?void 0:he.addEventListener)=="function"&&se.connect(),V.set({xr:se})}if(te.shadowMap){const q=te.shadowMap.enabled,X=te.shadowMap.type;if(te.shadowMap.enabled=!!A,kn.boo(A))te.shadowMap.type=wp;else if(kn.str(A)){var ge;const se={basic:ub,percentage:Oy,soft:wp,variance:vo};te.shadowMap.type=(ge=se[A])!=null?ge:wp}else kn.obj(A)&&Object.assign(te.shadowMap,A);(q!==te.shadowMap.enabled||X!==te.shadowMap.type)&&(te.shadowMap.needsUpdate=!0)}const U=sT();U&&("enabled"in U?U.enabled=!I:"legacyMode"in U&&(U.legacyMode=I)),u||pd(te,{outputEncoding:M?3e3:3001,toneMapping:T?Jo:jx}),V.legacy!==I&&V.set(()=>({legacy:I})),V.linear!==M&&V.set(()=>({linear:M})),V.flat!==T&&V.set(()=>({flat:T})),m&&!kn.fun(m)&&!fT(m)&&!kn.equ(m,te,md)&&pd(te,m),S&&!V.events.handlers&&V.set({events:S(s)});const Z=w9(r,y);return kn.equ(Z,V.size,md)||V.setSize(Z.width,Z.height,Z.updateStyle,Z.top,Z.left),O&&V.viewport.dpr!==uT(O)&&V.setDpr(O),V.frameloop!==k&&V.setFrameloop(k),V.onPointerMissed||V.set({onPointerMissed:L}),N&&!kn.equ(N,V.performance,md)&&V.set(q=>({performance:{...q.performance,...N}})),l=E,u=!0,this},render(p){return u||this.configure(),fy.updateContainer(_.jsx(E9,{store:s,children:p,onCreated:l,rootElement:r}),o,null,()=>{}),s},unmount(){yT(r)}}}function E9({store:r,children:e,onCreated:t,rootElement:n}){return fm(()=>{const i=r.getState();i.set(s=>({internal:{...s.internal,active:!0}})),t&&t(i),r.getState().events.connected||i.events.connect==null||i.events.connect(n)},[]),_.jsx(pT.Provider,{value:r,children:e})}function yT(r,e){const t=jd.get(r),n=t==null?void 0:t.fiber;if(n){const i=t==null?void 0:t.store.getState();i&&(i.internal.active=!1),fy.updateContainer(null,n,null,()=>{i&&setTimeout(()=>{try{var s,o,l,u;i.events.disconnect==null||i.events.disconnect(),(s=i.gl)==null||(o=s.renderLists)==null||o.dispose==null||o.dispose(),(l=i.gl)==null||l.forceContextLoss==null||l.forceContextLoss(),(u=i.gl)!=null&&u.xr&&i.xr.disconnect(),h9(i),jd.delete(r)}catch{}},500)})}}fy.injectIntoDevTools({bundleType:0,rendererPackageName:"@react-three/fiber",version:z.version});const s_={onClick:["click",!1],onContextMenu:["contextmenu",!1],onDoubleClick:["dblclick",!1],onWheel:["wheel",!0],onPointerDown:["pointerdown",!0],onPointerUp:["pointerup",!0],onPointerLeave:["pointerleave",!0],onPointerMove:["pointermove",!0],onPointerCancel:["pointercancel",!0],onLostPointerCapture:["lostpointercapture",!0]};function b9(r){const{handlePointer:e}=g9(r);return{priority:1,enabled:!0,compute(t,n,i){n.pointer.set(t.offsetX/n.size.width*2-1,-(t.offsetY/n.size.height)*2+1),n.raycaster.setFromCamera(n.pointer,n.camera)},connected:void 0,handlers:Object.keys(s_).reduce((t,n)=>({...t,[n]:e(n)}),{}),update:()=>{var t;const{events:n,internal:i}=r.getState();(t=i.lastEvent)!=null&&t.current&&n.handlers&&n.handlers.onPointerMove(i.lastEvent.current)},connect:t=>{var n;const{set:i,events:s}=r.getState();s.disconnect==null||s.disconnect(),i(o=>({events:{...o.events,connected:t}})),Object.entries((n=s.handlers)!=null?n:[]).forEach(([o,l])=>{const[u,d]=s_[o];t.addEventListener(u,l,{passive:d})})},disconnect:()=>{const{set:t,events:n}=r.getState();if(n.connected){var i;Object.entries((i=n.handlers)!=null?i:[]).forEach(([s,o])=>{if(n&&n.connected instanceof HTMLElement){const[l]=s_[s];n.connected.removeEventListener(l,o)}}),t(s=>({events:{...s.events,connected:void 0}}))}}}}var o_,q2;function C9(){if(q2)return o_;q2=1;function r(e,t,n){var i,s,o,l,u;t==null&&(t=100);function d(){var m=Date.now()-l;m<t&&m>=0?i=setTimeout(d,t-m):(i=null,n||(u=e.apply(o,s),o=s=null))}var p=function(){o=this,s=arguments,l=Date.now();var m=n&&!i;return i||(i=setTimeout(d,t)),m&&(u=e.apply(o,s),o=s=null),u};return p.clear=function(){i&&(clearTimeout(i),i=null)},p.flush=function(){i&&(u=e.apply(o,s),o=s=null,clearTimeout(i),i=null)},p}return r.debounce=r,o_=r,o_}var T9=C9();const Q2=oc(T9);var I9=Object.defineProperty,P9=Object.defineProperties,R9=Object.getOwnPropertyDescriptors,Z2=Object.getOwnPropertySymbols,B9=Object.prototype.hasOwnProperty,O9=Object.prototype.propertyIsEnumerable,eA=(r,e,t)=>e in r?I9(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,tA=(r,e)=>{for(var t in e||(e={}))B9.call(e,t)&&eA(r,t,e[t]);if(Z2)for(var t of Z2(e))O9.call(e,t)&&eA(r,t,e[t]);return r},D9=(r,e)=>P9(r,R9(e)),nA,rA;typeof window<"u"&&((nA=window.document)!=null&&nA.createElement||((rA=window.navigator)==null?void 0:rA.product)==="ReactNative")?z.useLayoutEffect:z.useEffect;function vT(r,e,t){if(!r)return;if(t(r)===!0)return r;let n=r.child;for(;n;){const i=vT(n,e,t);if(i)return i;n=n.sibling}}function _T(r){try{return Object.defineProperties(r,{_currentRenderer:{get(){return null},set(){}},_currentRenderer2:{get(){return null},set(){}}})}catch{return r}}const iA=console.error;console.error=function(){const r=[...arguments].join("");if(r!=null&&r.startsWith("Warning:")&&r.includes("useContext")){console.error=iA;return}return iA.apply(this,arguments)};const DM=_T(z.createContext(null));class xT extends z.Component{render(){return z.createElement(DM.Provider,{value:this._reactInternals},this.props.children)}}function L9(){const r=z.useContext(DM);if(r===null)throw new Error("its-fine: useFiber must be called within a <FiberProvider />!");const e=z.useId();return z.useMemo(()=>{for(const n of[r,r==null?void 0:r.alternate]){if(!n)continue;const i=vT(n,!1,s=>{let o=s.memoizedState;for(;o;){if(o.memoizedState===e)return!0;o=o.next}});if(i)return i}},[r,e])}function N9(){const r=L9(),[e]=z.useState(()=>new Map);e.clear();let t=r;for(;t;){if(t.type&&typeof t.type=="object"){const i=t.type._context===void 0&&t.type.Provider===t.type?t.type:t.type._context;i&&i!==DM&&!e.has(i)&&e.set(i,z.useContext(_T(i)))}t=t.return}return e}function F9(){const r=N9();return z.useMemo(()=>Array.from(r.keys()).reduce((e,t)=>n=>z.createElement(e,null,z.createElement(t.Provider,D9(tA({},n),{value:r.get(t)}))),e=>z.createElement(xT,tA({},e))),[r])}function k9({debounce:r,scroll:e,polyfill:t,offsetSize:n}={debounce:0,scroll:!1,offsetSize:!1}){const i=t||typeof window<"u"&&window.ResizeObserver,[s,o]=z.useState({left:0,top:0,width:0,height:0,bottom:0,right:0,x:0,y:0});if(!i)return s.width=1280,s.height=800,[()=>{},s,()=>{}];const l=z.useRef({element:null,scrollContainers:null,resizeObserver:null,lastBounds:s,orientationHandler:null}),u=r?typeof r=="number"?r:r.scroll:null,d=r?typeof r=="number"?r:r.resize:null,p=z.useRef(!1);z.useEffect(()=>(p.current=!0,()=>void(p.current=!1)));const[m,y,v]=z.useMemo(()=>{const M=()=>{if(!l.current.element)return;const{left:T,top:I,width:P,height:k,bottom:O,right:N,x:H,y:F}=l.current.element.getBoundingClientRect(),L={left:T,top:I,width:P,height:k,bottom:O,right:N,x:H,y:F};l.current.element instanceof HTMLElement&&n&&(L.height=l.current.element.offsetHeight,L.width=l.current.element.offsetWidth),Object.freeze(L),p.current&&!H9(l.current.lastBounds,L)&&o(l.current.lastBounds=L)};return[M,d?Q2(M,d):M,u?Q2(M,u):M]},[o,n,u,d]);function S(){l.current.scrollContainers&&(l.current.scrollContainers.forEach(M=>M.removeEventListener("scroll",v,!0)),l.current.scrollContainers=null),l.current.resizeObserver&&(l.current.resizeObserver.disconnect(),l.current.resizeObserver=null),l.current.orientationHandler&&("orientation"in screen&&"removeEventListener"in screen.orientation?screen.orientation.removeEventListener("change",l.current.orientationHandler):"onorientationchange"in window&&window.removeEventListener("orientationchange",l.current.orientationHandler))}function E(){var M;l.current.element&&(l.current.resizeObserver=new i(y),(M=l.current.resizeObserver)==null||M.observe(l.current.element),e&&l.current.scrollContainers&&l.current.scrollContainers.forEach(T=>T.addEventListener("scroll",v,{capture:!0,passive:!0})),l.current.orientationHandler=()=>{v()},"orientation"in screen&&"addEventListener"in screen.orientation?screen.orientation.addEventListener("change",l.current.orientationHandler):"onorientationchange"in window&&window.addEventListener("orientationchange",l.current.orientationHandler))}const A=M=>{!M||M===l.current.element||(S(),l.current.element=M,l.current.scrollContainers=MT(M),E())};return j9(v,!!e),U9(y),z.useEffect(()=>{S(),E()},[e,v,y]),z.useEffect(()=>S,[]),[A,s,m]}function U9(r){z.useEffect(()=>{const e=r;return window.addEventListener("resize",e),()=>void window.removeEventListener("resize",e)},[r])}function j9(r,e){z.useEffect(()=>{if(e){const t=r;return window.addEventListener("scroll",t,{capture:!0,passive:!0}),()=>void window.removeEventListener("scroll",t,!0)}},[r,e])}function MT(r){const e=[];if(!r||r===document.body)return e;const{overflow:t,overflowX:n,overflowY:i}=window.getComputedStyle(r);return[t,n,i].some(s=>s==="auto"||s==="scroll")&&e.push(r),[...e,...MT(r.parentElement)]}const z9=["x","y","top","bottom","left","right","width","height"],H9=(r,e)=>z9.every(t=>r[t]===e[t]),G9=z.forwardRef(function({children:e,fallback:t,resize:n,style:i,gl:s,events:o=b9,eventSource:l,eventPrefix:u,shadows:d,linear:p,flat:m,legacy:y,orthographic:v,frameloop:S,dpr:E,performance:A,raycaster:M,camera:T,scene:I,onPointerMissed:P,onCreated:k,...O},N){z.useMemo(()=>s9(H6),[]);const H=F9(),[F,L]=k9({scroll:!0,debounce:{scroll:50,resize:0},...n}),V=z.useRef(null),te=z.useRef(null);z.useImperativeHandle(N,()=>V.current);const ne=aT(P),[ce,me]=z.useState(!1),[he,ge]=z.useState(!1);if(ce)throw ce;if(he)throw he;const U=z.useRef(null);fm(()=>{const q=V.current;L.width>0&&L.height>0&&q&&(U.current||(U.current=A9(q)),U.current.configure({gl:s,events:o,shadows:d,linear:p,flat:m,legacy:y,orthographic:v,frameloop:S,dpr:E,performance:A,raycaster:M,camera:T,scene:I,size:L,onPointerMissed:(...X)=>ne.current==null?void 0:ne.current(...X),onCreated:X=>{X.events.connect==null||X.events.connect(l?a9(l)?l.current:l:te.current),u&&X.setEvents({compute:(se,Le)=>{const pe=se[u+"X"],Ae=se[u+"Y"];Le.pointer.set(pe/Le.size.width*2-1,-(Ae/Le.size.height)*2+1),Le.raycaster.setFromCamera(Le.pointer,Le.camera)}}),k==null||k(X)}}),U.current.render(_.jsx(H,{children:_.jsx(lT,{set:ge,children:_.jsx(z.Suspense,{fallback:_.jsx(l9,{set:me}),children:e})})})))}),z.useEffect(()=>{const q=V.current;if(q)return()=>yT(q)},[]);const Z=l?"none":"auto";return _.jsx("div",{ref:te,style:{position:"relative",width:"100%",height:"100%",overflow:"hidden",pointerEvents:Z,...i},...O,children:_.jsx("div",{ref:F,style:{width:"100%",height:"100%"},children:_.jsx("canvas",{ref:V,style:{display:"block"},children:t})})})}),sA=z.forwardRef(function(e,t){return _.jsx(xT,{children:_.jsx(G9,{...e,ref:t})})});function ox(){return ox=Object.assign?Object.assign.bind():function(r){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var n in t)({}).hasOwnProperty.call(t,n)&&(r[n]=t[n])}return r},ox.apply(null,arguments)}function V9(r,e,t){return Math.max(e,Math.min(r,t))}const di={toVector(r,e){return r===void 0&&(r=e),Array.isArray(r)?r:[r,r]},add(r,e){return[r[0]+e[0],r[1]+e[1]]},sub(r,e){return[r[0]-e[0],r[1]-e[1]]},addTo(r,e){r[0]+=e[0],r[1]+=e[1]},subTo(r,e){r[0]-=e[0],r[1]-=e[1]}};function oA(r,e,t){return e===0||Math.abs(e)===1/0?Math.pow(r,t*5):r*e*t/(e+t*r)}function aA(r,e,t,n=.15){return n===0?V9(r,e,t):r<e?-oA(e-r,t-e,n)+e:r>t?+oA(r-t,t-e,n)+t:r}function W9(r,[e,t],[n,i]){const[[s,o],[l,u]]=r;return[aA(e,s,o,n),aA(t,l,u,i)]}function X9(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}function J9(r){var e=X9(r,"string");return typeof e=="symbol"?e:String(e)}function Qi(r,e,t){return e=J9(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function lA(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function er(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?lA(Object(t),!0).forEach(function(n){Qi(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):lA(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}const ST={pointer:{start:"down",change:"move",end:"up"},mouse:{start:"down",change:"move",end:"up"},touch:{start:"start",change:"move",end:"end"},gesture:{start:"start",change:"change",end:"end"}};function cA(r){return r?r[0].toUpperCase()+r.slice(1):""}const $9=["enter","leave"];function K9(r=!1,e){return r&&!$9.includes(e)}function Y9(r,e="",t=!1){const n=ST[r],i=n&&n[e]||e;return"on"+cA(r)+cA(i)+(K9(t,i)?"Capture":"")}const q9=["gotpointercapture","lostpointercapture"];function Q9(r){let e=r.substring(2).toLowerCase();const t=!!~e.indexOf("passive");t&&(e=e.replace("passive",""));const n=q9.includes(e)?"capturecapture":"capture",i=!!~e.indexOf(n);return i&&(e=e.replace("capture","")),{device:e,capture:i,passive:t}}function Z9(r,e=""){const t=ST[r],n=t&&t[e]||e;return r+n}function d1(r){return"touches"in r}function wT(r){return d1(r)?"touch":"pointerType"in r?r.pointerType:"mouse"}function eN(r){return Array.from(r.touches).filter(e=>{var t,n;return e.target===r.currentTarget||((t=r.currentTarget)===null||t===void 0||(n=t.contains)===null||n===void 0?void 0:n.call(t,e.target))})}function tN(r){return r.type==="touchend"||r.type==="touchcancel"?r.changedTouches:r.targetTouches}function AT(r){return d1(r)?tN(r)[0]:r}function nN(r){return eN(r).map(e=>e.identifier)}function a_(r){const e=AT(r);return d1(r)?e.identifier:e.pointerId}function uA(r){const e=AT(r);return[e.clientX,e.clientY]}function rN(r){const e={};if("buttons"in r&&(e.buttons=r.buttons),"shiftKey"in r){const{shiftKey:t,altKey:n,metaKey:i,ctrlKey:s}=r;Object.assign(e,{shiftKey:t,altKey:n,metaKey:i,ctrlKey:s})}return e}function py(r,...e){return typeof r=="function"?r(...e):r}function iN(){}function sN(...r){return r.length===0?iN:r.length===1?r[0]:function(){let e;for(const t of r)e=t.apply(this,arguments)||e;return e}}function hA(r,e){return Object.assign({},e,r||{})}const oN=32;class aN{constructor(e,t,n){this.ctrl=e,this.args=t,this.key=n,this.state||(this.state={},this.computeValues([0,0]),this.computeInitial(),this.init&&this.init(),this.reset())}get state(){return this.ctrl.state[this.key]}set state(e){this.ctrl.state[this.key]=e}get shared(){return this.ctrl.state.shared}get eventStore(){return this.ctrl.gestureEventStores[this.key]}get timeoutStore(){return this.ctrl.gestureTimeoutStores[this.key]}get config(){return this.ctrl.config[this.key]}get sharedConfig(){return this.ctrl.config.shared}get handler(){return this.ctrl.handlers[this.key]}reset(){const{state:e,shared:t,ingKey:n,args:i}=this;t[n]=e._active=e.active=e._blocked=e._force=!1,e._step=[!1,!1],e.intentional=!1,e._movement=[0,0],e._distance=[0,0],e._direction=[0,0],e._delta=[0,0],e._bounds=[[-1/0,1/0],[-1/0,1/0]],e.args=i,e.axis=void 0,e.memo=void 0,e.elapsedTime=e.timeDelta=0,e.direction=[0,0],e.distance=[0,0],e.overflow=[0,0],e._movementBound=[!1,!1],e.velocity=[0,0],e.movement=[0,0],e.delta=[0,0],e.timeStamp=0}start(e){const t=this.state,n=this.config;t._active||(this.reset(),this.computeInitial(),t._active=!0,t.target=e.target,t.currentTarget=e.currentTarget,t.lastOffset=n.from?py(n.from,t):t.offset,t.offset=t.lastOffset,t.startTime=t.timeStamp=e.timeStamp)}computeValues(e){const t=this.state;t._values=e,t.values=this.config.transform(e)}computeInitial(){const e=this.state;e._initial=e._values,e.initial=e.values}compute(e){const{state:t,config:n,shared:i}=this;t.args=this.args;let s=0;if(e&&(t.event=e,n.preventDefault&&e.cancelable&&t.event.preventDefault(),t.type=e.type,i.touches=this.ctrl.pointerIds.size||this.ctrl.touchIds.size,i.locked=!!document.pointerLockElement,Object.assign(i,rN(e)),i.down=i.pressed=i.buttons%2===1||i.touches>0,s=e.timeStamp-t.timeStamp,t.timeStamp=e.timeStamp,t.elapsedTime=t.timeStamp-t.startTime),t._active){const O=t._delta.map(Math.abs);di.addTo(t._distance,O)}this.axisIntent&&this.axisIntent(e);const[o,l]=t._movement,[u,d]=n.threshold,{_step:p,values:m}=t;if(n.hasCustomTransform?(p[0]===!1&&(p[0]=Math.abs(o)>=u&&m[0]),p[1]===!1&&(p[1]=Math.abs(l)>=d&&m[1])):(p[0]===!1&&(p[0]=Math.abs(o)>=u&&Math.sign(o)*u),p[1]===!1&&(p[1]=Math.abs(l)>=d&&Math.sign(l)*d)),t.intentional=p[0]!==!1||p[1]!==!1,!t.intentional)return;const y=[0,0];if(n.hasCustomTransform){const[O,N]=m;y[0]=p[0]!==!1?O-p[0]:0,y[1]=p[1]!==!1?N-p[1]:0}else y[0]=p[0]!==!1?o-p[0]:0,y[1]=p[1]!==!1?l-p[1]:0;this.restrictToAxis&&!t._blocked&&this.restrictToAxis(y);const v=t.offset,S=t._active&&!t._blocked||t.active;S&&(t.first=t._active&&!t.active,t.last=!t._active&&t.active,t.active=i[this.ingKey]=t._active,e&&(t.first&&("bounds"in n&&(t._bounds=py(n.bounds,t)),this.setup&&this.setup()),t.movement=y,this.computeOffset()));const[E,A]=t.offset,[[M,T],[I,P]]=t._bounds;t.overflow=[E<M?-1:E>T?1:0,A<I?-1:A>P?1:0],t._movementBound[0]=t.overflow[0]?t._movementBound[0]===!1?t._movement[0]:t._movementBound[0]:!1,t._movementBound[1]=t.overflow[1]?t._movementBound[1]===!1?t._movement[1]:t._movementBound[1]:!1;const k=t._active?n.rubberband||[0,0]:[0,0];if(t.offset=W9(t._bounds,t.offset,k),t.delta=di.sub(t.offset,v),this.computeMovement(),S&&(!t.last||s>oN)){t.delta=di.sub(t.offset,v);const O=t.delta.map(Math.abs);di.addTo(t.distance,O),t.direction=t.delta.map(Math.sign),t._direction=t._delta.map(Math.sign),!t.first&&s>0&&(t.velocity=[O[0]/s,O[1]/s],t.timeDelta=s)}}emit(){const e=this.state,t=this.shared,n=this.config;if(e._active||this.clean(),(e._blocked||!e.intentional)&&!e._force&&!n.triggerAllEvents)return;const i=this.handler(er(er(er({},t),e),{},{[this.aliasKey]:e.values}));i!==void 0&&(e.memo=i)}clean(){this.eventStore.clean(),this.timeoutStore.clean()}}function lN([r,e],t){const n=Math.abs(r),i=Math.abs(e);if(n>i&&n>t)return"x";if(i>n&&i>t)return"y"}class cN extends aN{constructor(...e){super(...e),Qi(this,"aliasKey","xy")}reset(){super.reset(),this.state.axis=void 0}init(){this.state.offset=[0,0],this.state.lastOffset=[0,0]}computeOffset(){this.state.offset=di.add(this.state.lastOffset,this.state.movement)}computeMovement(){this.state.movement=di.sub(this.state.offset,this.state.lastOffset)}axisIntent(e){const t=this.state,n=this.config;if(!t.axis&&e){const i=typeof n.axisThreshold=="object"?n.axisThreshold[wT(e)]:n.axisThreshold;t.axis=lN(t._movement,i)}t._blocked=(n.lockDirection||!!n.axis)&&!t.axis||!!n.axis&&n.axis!==t.axis}restrictToAxis(e){if(this.config.axis||this.config.lockDirection)switch(this.state.axis){case"x":e[1]=0;break;case"y":e[0]=0;break}}}const uN=r=>r,dA=.15,ET={enabled(r=!0){return r},eventOptions(r,e,t){return er(er({},t.shared.eventOptions),r)},preventDefault(r=!1){return r},triggerAllEvents(r=!1){return r},rubberband(r=0){switch(r){case!0:return[dA,dA];case!1:return[0,0];default:return di.toVector(r)}},from(r){if(typeof r=="function")return r;if(r!=null)return di.toVector(r)},transform(r,e,t){const n=r||t.shared.transform;return this.hasCustomTransform=!!n,n||uN},threshold(r){return di.toVector(r,0)}},hN=0,mm=er(er({},ET),{},{axis(r,e,{axis:t}){if(this.lockDirection=t==="lock",!this.lockDirection)return t},axisThreshold(r=hN){return r},bounds(r={}){if(typeof r=="function")return s=>mm.bounds(r(s));if("current"in r)return()=>r.current;if(typeof HTMLElement=="function"&&r instanceof HTMLElement)return r;const{left:e=-1/0,right:t=1/0,top:n=-1/0,bottom:i=1/0}=r;return[[e,t],[n,i]]}}),fA={ArrowRight:(r,e=1)=>[r*e,0],ArrowLeft:(r,e=1)=>[-1*r*e,0],ArrowUp:(r,e=1)=>[0,-1*r*e],ArrowDown:(r,e=1)=>[0,r*e]};class dN extends cN{constructor(...e){super(...e),Qi(this,"ingKey","dragging")}reset(){super.reset();const e=this.state;e._pointerId=void 0,e._pointerActive=!1,e._keyboardActive=!1,e._preventScroll=!1,e._delayed=!1,e.swipe=[0,0],e.tap=!1,e.canceled=!1,e.cancel=this.cancel.bind(this)}setup(){const e=this.state;if(e._bounds instanceof HTMLElement){const t=e._bounds.getBoundingClientRect(),n=e.currentTarget.getBoundingClientRect(),i={left:t.left-n.left+e.offset[0],right:t.right-n.right+e.offset[0],top:t.top-n.top+e.offset[1],bottom:t.bottom-n.bottom+e.offset[1]};e._bounds=mm.bounds(i)}}cancel(){const e=this.state;e.canceled||(e.canceled=!0,e._active=!1,setTimeout(()=>{this.compute(),this.emit()},0))}setActive(){this.state._active=this.state._pointerActive||this.state._keyboardActive}clean(){this.pointerClean(),this.state._pointerActive=!1,this.state._keyboardActive=!1,super.clean()}pointerDown(e){const t=this.config,n=this.state;if(e.buttons!=null&&(Array.isArray(t.pointerButtons)?!t.pointerButtons.includes(e.buttons):t.pointerButtons!==-1&&t.pointerButtons!==e.buttons))return;const i=this.ctrl.setEventIds(e);t.pointerCapture&&e.target.setPointerCapture(e.pointerId),!(i&&i.size>1&&n._pointerActive)&&(this.start(e),this.setupPointer(e),n._pointerId=a_(e),n._pointerActive=!0,this.computeValues(uA(e)),this.computeInitial(),t.preventScrollAxis&&wT(e)!=="mouse"?(n._active=!1,this.setupScrollPrevention(e)):t.delay>0?(this.setupDelayTrigger(e),t.triggerAllEvents&&(this.compute(e),this.emit())):this.startPointerDrag(e))}startPointerDrag(e){const t=this.state;t._active=!0,t._preventScroll=!0,t._delayed=!1,this.compute(e),this.emit()}pointerMove(e){const t=this.state,n=this.config;if(!t._pointerActive)return;const i=a_(e);if(t._pointerId!==void 0&&i!==t._pointerId)return;const s=uA(e);if(document.pointerLockElement===e.target?t._delta=[e.movementX,e.movementY]:(t._delta=di.sub(s,t._values),this.computeValues(s)),di.addTo(t._movement,t._delta),this.compute(e),t._delayed&&t.intentional){this.timeoutStore.remove("dragDelay"),t.active=!1,this.startPointerDrag(e);return}if(n.preventScrollAxis&&!t._preventScroll)if(t.axis)if(t.axis===n.preventScrollAxis||n.preventScrollAxis==="xy"){t._active=!1,this.clean();return}else{this.timeoutStore.remove("startPointerDrag"),this.startPointerDrag(e);return}else return;this.emit()}pointerUp(e){this.ctrl.setEventIds(e);try{this.config.pointerCapture&&e.target.hasPointerCapture(e.pointerId)&&e.target.releasePointerCapture(e.pointerId)}catch{}const t=this.state,n=this.config;if(!t._active||!t._pointerActive)return;const i=a_(e);if(t._pointerId!==void 0&&i!==t._pointerId)return;this.state._pointerActive=!1,this.setActive(),this.compute(e);const[s,o]=t._distance;if(t.tap=s<=n.tapsThreshold&&o<=n.tapsThreshold,t.tap&&n.filterTaps)t._force=!0;else{const[l,u]=t._delta,[d,p]=t._movement,[m,y]=n.swipe.velocity,[v,S]=n.swipe.distance,E=n.swipe.duration;if(t.elapsedTime<E){const A=Math.abs(l/t.timeDelta),M=Math.abs(u/t.timeDelta);A>m&&Math.abs(d)>v&&(t.swipe[0]=Math.sign(l)),M>y&&Math.abs(p)>S&&(t.swipe[1]=Math.sign(u))}}this.emit()}pointerClick(e){!this.state.tap&&e.detail>0&&(e.preventDefault(),e.stopPropagation())}setupPointer(e){const t=this.config,n=t.device;t.pointerLock&&e.currentTarget.requestPointerLock(),t.pointerCapture||(this.eventStore.add(this.sharedConfig.window,n,"change",this.pointerMove.bind(this)),this.eventStore.add(this.sharedConfig.window,n,"end",this.pointerUp.bind(this)),this.eventStore.add(this.sharedConfig.window,n,"cancel",this.pointerUp.bind(this)))}pointerClean(){this.config.pointerLock&&document.pointerLockElement===this.state.currentTarget&&document.exitPointerLock()}preventScroll(e){this.state._preventScroll&&e.cancelable&&e.preventDefault()}setupScrollPrevention(e){this.state._preventScroll=!1,fN(e);const t=this.eventStore.add(this.sharedConfig.window,"touch","change",this.preventScroll.bind(this),{passive:!1});this.eventStore.add(this.sharedConfig.window,"touch","end",t),this.eventStore.add(this.sharedConfig.window,"touch","cancel",t),this.timeoutStore.add("startPointerDrag",this.startPointerDrag.bind(this),this.config.preventScrollDelay,e)}setupDelayTrigger(e){this.state._delayed=!0,this.timeoutStore.add("dragDelay",()=>{this.state._step=[0,0],this.startPointerDrag(e)},this.config.delay)}keyDown(e){const t=fA[e.key];if(t){const n=this.state,i=e.shiftKey?10:e.altKey?.1:1;this.start(e),n._delta=t(this.config.keyboardDisplacement,i),n._keyboardActive=!0,di.addTo(n._movement,n._delta),this.compute(e),this.emit()}}keyUp(e){e.key in fA&&(this.state._keyboardActive=!1,this.setActive(),this.compute(e),this.emit())}bind(e){const t=this.config.device;e(t,"start",this.pointerDown.bind(this)),this.config.pointerCapture&&(e(t,"change",this.pointerMove.bind(this)),e(t,"end",this.pointerUp.bind(this)),e(t,"cancel",this.pointerUp.bind(this)),e("lostPointerCapture","",this.pointerUp.bind(this))),this.config.keys&&(e("key","down",this.keyDown.bind(this)),e("key","up",this.keyUp.bind(this))),this.config.filterTaps&&e("click","",this.pointerClick.bind(this),{capture:!0,passive:!1})}}function fN(r){"persist"in r&&typeof r.persist=="function"&&r.persist()}const gm=typeof window<"u"&&window.document&&window.document.createElement;function bT(){return gm&&"ontouchstart"in window}function pN(){return bT()||gm&&window.navigator.maxTouchPoints>1}function mN(){return gm&&"onpointerdown"in window}function gN(){return gm&&"exitPointerLock"in window.document}function yN(){try{return"constructor"in GestureEvent}catch{return!1}}const Us={isBrowser:gm,gesture:yN(),touch:bT(),touchscreen:pN(),pointer:mN(),pointerLock:gN()},vN=250,_N=180,xN=.5,MN=50,SN=250,wN=10,pA={mouse:0,touch:0,pen:8},AN=er(er({},mm),{},{device(r,e,{pointer:{touch:t=!1,lock:n=!1,mouse:i=!1}={}}){return this.pointerLock=n&&Us.pointerLock,Us.touch&&t?"touch":this.pointerLock?"mouse":Us.pointer&&!i?"pointer":Us.touch?"touch":"mouse"},preventScrollAxis(r,e,{preventScroll:t}){if(this.preventScrollDelay=typeof t=="number"?t:t||t===void 0&&r?vN:void 0,!(!Us.touchscreen||t===!1))return r||(t!==void 0?"y":void 0)},pointerCapture(r,e,{pointer:{capture:t=!0,buttons:n=1,keys:i=!0}={}}){return this.pointerButtons=n,this.keys=i,!this.pointerLock&&this.device==="pointer"&&t},threshold(r,e,{filterTaps:t=!1,tapsThreshold:n=3,axis:i=void 0}){const s=di.toVector(r,t?n:i?1:0);return this.filterTaps=t,this.tapsThreshold=n,s},swipe({velocity:r=xN,distance:e=MN,duration:t=SN}={}){return{velocity:this.transform(di.toVector(r)),distance:this.transform(di.toVector(e)),duration:t}},delay(r=0){switch(r){case!0:return _N;case!1:return 0;default:return r}},axisThreshold(r){return r?er(er({},pA),r):pA},keyboardDisplacement(r=wN){return r}});er(er({},ET),{},{device(r,e,{shared:t,pointer:{touch:n=!1}={}}){if(t.target&&!Us.touch&&Us.gesture)return"gesture";if(Us.touch&&n)return"touch";if(Us.touchscreen){if(Us.pointer)return"pointer";if(Us.touch)return"touch"}},bounds(r,e,{scaleBounds:t={},angleBounds:n={}}){const i=o=>{const l=hA(py(t,o),{min:-1/0,max:1/0});return[l.min,l.max]},s=o=>{const l=hA(py(n,o),{min:-1/0,max:1/0});return[l.min,l.max]};return typeof t!="function"&&typeof n!="function"?[i(),s()]:o=>[i(o),s(o)]},threshold(r,e,t){return this.lockDirection=t.axis==="lock",di.toVector(r,this.lockDirection?[.1,3]:0)},modifierKey(r){return r===void 0?"ctrlKey":r},pinchOnWheel(r=!0){return r}});er(er({},mm),{},{mouseOnly:(r=!0)=>r});er(er({},mm),{},{mouseOnly:(r=!0)=>r});const CT=new Map,ax=new Map;function EN(r){CT.set(r.key,r.engine),ax.set(r.key,r.resolver)}const bN={key:"drag",engine:dN,resolver:AN};function CN(r,e){if(r==null)return{};var t={},n=Object.keys(r),i,s;for(s=0;s<n.length;s++)i=n[s],!(e.indexOf(i)>=0)&&(t[i]=r[i]);return t}function TN(r,e){if(r==null)return{};var t=CN(r,e),n,i;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(r);for(i=0;i<s.length;i++)n=s[i],!(e.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(r,n)&&(t[n]=r[n])}return t}const IN={target(r){if(r)return()=>"current"in r?r.current:r},enabled(r=!0){return r},window(r=Us.isBrowser?window:void 0){return r},eventOptions({passive:r=!0,capture:e=!1}={}){return{passive:r,capture:e}},transform(r){return r}},PN=["target","eventOptions","window","enabled","transform"];function wg(r={},e){const t={};for(const[n,i]of Object.entries(e))switch(typeof i){case"function":t[n]=i.call(t,r[n],n,r);break;case"object":t[n]=wg(r[n],i);break;case"boolean":i&&(t[n]=r[n]);break}return t}function RN(r,e,t={}){const n=r,{target:i,eventOptions:s,window:o,enabled:l,transform:u}=n,d=TN(n,PN);if(t.shared=wg({target:i,eventOptions:s,window:o,enabled:l,transform:u},IN),e){const p=ax.get(e);t[e]=wg(er({shared:t.shared},d),p)}else for(const p in d){const m=ax.get(p);m&&(t[p]=wg(er({shared:t.shared},d[p]),m))}return t}class TT{constructor(e,t){Qi(this,"_listeners",new Set),this._ctrl=e,this._gestureKey=t}add(e,t,n,i,s){const o=this._listeners,l=Z9(t,n),u=this._gestureKey?this._ctrl.config[this._gestureKey].eventOptions:{},d=er(er({},u),s);e.addEventListener(l,i,d);const p=()=>{e.removeEventListener(l,i,d),o.delete(p)};return o.add(p),p}clean(){this._listeners.forEach(e=>e()),this._listeners.clear()}}class BN{constructor(){Qi(this,"_timeouts",new Map)}add(e,t,n=140,...i){this.remove(e),this._timeouts.set(e,window.setTimeout(t,n,...i))}remove(e){const t=this._timeouts.get(e);t&&window.clearTimeout(t)}clean(){this._timeouts.forEach(e=>void window.clearTimeout(e)),this._timeouts.clear()}}class ON{constructor(e){Qi(this,"gestures",new Set),Qi(this,"_targetEventStore",new TT(this)),Qi(this,"gestureEventStores",{}),Qi(this,"gestureTimeoutStores",{}),Qi(this,"handlers",{}),Qi(this,"config",{}),Qi(this,"pointerIds",new Set),Qi(this,"touchIds",new Set),Qi(this,"state",{shared:{shiftKey:!1,metaKey:!1,ctrlKey:!1,altKey:!1}}),DN(this,e)}setEventIds(e){if(d1(e))return this.touchIds=new Set(nN(e)),this.touchIds;if("pointerId"in e)return e.type==="pointerup"||e.type==="pointercancel"?this.pointerIds.delete(e.pointerId):e.type==="pointerdown"&&this.pointerIds.add(e.pointerId),this.pointerIds}applyHandlers(e,t){this.handlers=e,this.nativeHandlers=t}applyConfig(e,t){this.config=RN(e,t,this.config)}clean(){this._targetEventStore.clean();for(const e of this.gestures)this.gestureEventStores[e].clean(),this.gestureTimeoutStores[e].clean()}effect(){return this.config.shared.target&&this.bind(),()=>this._targetEventStore.clean()}bind(...e){const t=this.config.shared,n={};let i;if(!(t.target&&(i=t.target(),!i))){if(t.enabled){for(const o of this.gestures){const l=this.config[o],u=mA(n,l.eventOptions,!!i);if(l.enabled){const d=CT.get(o);new d(this,e,o).bind(u)}}const s=mA(n,t.eventOptions,!!i);for(const o in this.nativeHandlers)s(o,"",l=>this.nativeHandlers[o](er(er({},this.state.shared),{},{event:l,args:e})),void 0,!0)}for(const s in n)n[s]=sN(...n[s]);if(!i)return n;for(const s in n){const{device:o,capture:l,passive:u}=Q9(s);this._targetEventStore.add(i,o,"",n[s],{capture:l,passive:u})}}}}function gd(r,e){r.gestures.add(e),r.gestureEventStores[e]=new TT(r,e),r.gestureTimeoutStores[e]=new BN}function DN(r,e){e.drag&&gd(r,"drag"),e.wheel&&gd(r,"wheel"),e.scroll&&gd(r,"scroll"),e.move&&gd(r,"move"),e.pinch&&gd(r,"pinch"),e.hover&&gd(r,"hover")}const mA=(r,e,t)=>(n,i,s,o={},l=!1)=>{var u,d;const p=(u=o.capture)!==null&&u!==void 0?u:e.capture,m=(d=o.passive)!==null&&d!==void 0?d:e.passive;let y=l?n:Y9(n,i,p);t&&m&&(y+="Passive"),r[y]=r[y]||[],r[y].push(s)};function LN(r,e={},t,n){const i=re.useMemo(()=>new ON(r),[]);if(i.applyHandlers(r,n),i.applyConfig(e,t),re.useEffect(i.effect.bind(i)),re.useEffect(()=>i.clean.bind(i),[]),e.target===void 0)return i.bind.bind(i)}function NN(r,e){return EN(bN),LN({drag:r},e||{},"drag")}const FN=parseInt(em.replace(/\D+/g,""));function gA(r,e){if(e===zb)return console.warn("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Geometry already defined as triangles."),r;if(e===cy||e===qx){let t=r.getIndex();if(t===null){const o=[],l=r.getAttribute("position");if(l!==void 0){for(let u=0;u<l.count;u++)o.push(u);r.setIndex(o),t=r.getIndex()}else return console.error("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Undefined position attribute. Processing not possible."),r}const n=t.count-2,i=[];if(t)if(e===cy)for(let o=1;o<=n;o++)i.push(t.getX(0)),i.push(t.getX(o)),i.push(t.getX(o+1));else for(let o=0;o<n;o++)o%2===0?(i.push(t.getX(o)),i.push(t.getX(o+1)),i.push(t.getX(o+2))):(i.push(t.getX(o+2)),i.push(t.getX(o+1)),i.push(t.getX(o)));i.length/3!==n&&console.error("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Unable to generate correct amount of triangles.");const s=r.clone();return s.setIndex(i),s.clearGroups(),s}else return console.error("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Unknown draw mode:",e),r}function my(r){if(typeof TextDecoder<"u")return new TextDecoder().decode(r);let e="";for(let t=0,n=r.length;t<n;t++)e+=String.fromCharCode(r[t]);try{return decodeURIComponent(escape(e))}catch{return e}}const _u="srgb",Qa="srgb-linear",yA=3001,kN=3e3;class LM extends gi{constructor(e){super(e),this.dracoLoader=null,this.ktx2Loader=null,this.meshoptDecoder=null,this.pluginCallbacks=[],this.register(function(t){return new GN(t)}),this.register(function(t){return new VN(t)}),this.register(function(t){return new ZN(t)}),this.register(function(t){return new e7(t)}),this.register(function(t){return new t7(t)}),this.register(function(t){return new XN(t)}),this.register(function(t){return new JN(t)}),this.register(function(t){return new $N(t)}),this.register(function(t){return new KN(t)}),this.register(function(t){return new HN(t)}),this.register(function(t){return new YN(t)}),this.register(function(t){return new WN(t)}),this.register(function(t){return new QN(t)}),this.register(function(t){return new qN(t)}),this.register(function(t){return new jN(t)}),this.register(function(t){return new n7(t)}),this.register(function(t){return new r7(t)})}load(e,t,n,i){const s=this;let o;if(this.resourcePath!=="")o=this.resourcePath;else if(this.path!==""){const d=Ql.extractUrlBase(e);o=Ql.resolveURL(d,this.path)}else o=Ql.extractUrlBase(e);this.manager.itemStart(e);const l=function(d){i?i(d):console.error(d),s.manager.itemError(e),s.manager.itemEnd(e)},u=new Ss(this.manager);u.setPath(this.path),u.setResponseType("arraybuffer"),u.setRequestHeader(this.requestHeader),u.setWithCredentials(this.withCredentials),u.load(e,function(d){try{s.parse(d,o,function(p){t(p),s.manager.itemEnd(e)},l)}catch(p){l(p)}},n,l)}setDRACOLoader(e){return this.dracoLoader=e,this}setDDSLoader(){throw new Error('THREE.GLTFLoader: "MSFT_texture_dds" no longer supported. Please update to "KHR_texture_basisu".')}setKTX2Loader(e){return this.ktx2Loader=e,this}setMeshoptDecoder(e){return this.meshoptDecoder=e,this}register(e){return this.pluginCallbacks.indexOf(e)===-1&&this.pluginCallbacks.push(e),this}unregister(e){return this.pluginCallbacks.indexOf(e)!==-1&&this.pluginCallbacks.splice(this.pluginCallbacks.indexOf(e),1),this}parse(e,t,n,i){let s;const o={},l={};if(typeof e=="string")s=JSON.parse(e);else if(e instanceof ArrayBuffer)if(my(new Uint8Array(e.slice(0,4)))===IT){try{o[cn.KHR_BINARY_GLTF]=new i7(e)}catch(p){i&&i(p);return}
vendor: 13,856 bytes, line 3913
3913s=JSON.parse(o[cn.KHR_BINARY_GLTF].content)}else s=JSON.parse(my(new Uint8Array(e)));else s=e;if(s.asset===void 0||s.asset.version[0]<2){i&&i(new Error("THREE.GLTFLoader: Unsupported asset. glTF versions >=2.0 are supported."));return}const u=new y7(s,{path:t||this.resourcePath||"",crossOrigin:this.crossOrigin,requestHeader:this.requestHeader,manager:this.manager,ktx2Loader:this.ktx2Loader,meshoptDecoder:this.meshoptDecoder});u.fileLoader.setRequestHeader(this.requestHeader);for(let d=0;d<this.pluginCallbacks.length;d++){const p=this.pluginCallbacks[d](u);p.name||console.error("THREE.GLTFLoader: Invalid plugin found: missing name"),l[p.name]=p,o[p.name]=!0}if(s.extensionsUsed)for(let d=0;d<s.extensionsUsed.length;++d){const p=s.extensionsUsed[d],m=s.extensionsRequired||[];switch(p){case cn.KHR_MATERIALS_UNLIT:o[p]=new zN;break;case cn.KHR_DRACO_MESH_COMPRESSION:o[p]=new s7(s,this.dracoLoader);break;case cn.KHR_TEXTURE_TRANSFORM:o[p]=new o7;break;case cn.KHR_MESH_QUANTIZATION:o[p]=new a7;break;default:m.indexOf(p)>=0&&l[p]===void 0&&console.warn('THREE.GLTFLoader: Unknown extension "'+p+'".')}}u.setExtensions(o),u.setPlugins(l),u.parse(n,i)}parseAsync(e,t){const n=this;return new Promise(function(i,s){n.parse(e,t,i,s)})}}function UN(){let r={};return{get:function(e){return r[e]},add:function(e,t){r[e]=t},remove:function(e){delete r[e]},removeAll:function(){r={}}}}const cn={KHR_BINARY_GLTF:"KHR_binary_glTF",KHR_DRACO_MESH_COMPRESSION:"KHR_draco_mesh_compression",KHR_LIGHTS_PUNCTUAL:"KHR_lights_punctual",KHR_MATERIALS_CLEARCOAT:"KHR_materials_clearcoat",KHR_MATERIALS_DISPERSION:"KHR_materials_dispersion",KHR_MATERIALS_IOR:"KHR_materials_ior",KHR_MATERIALS_SHEEN:"KHR_materials_sheen",KHR_MATERIALS_SPECULAR:"KHR_materials_specular",KHR_MATERIALS_TRANSMISSION:"KHR_materials_transmission",KHR_MATERIALS_IRIDESCENCE:"KHR_materials_iridescence",KHR_MATERIALS_ANISOTROPY:"KHR_materials_anisotropy",KHR_MATERIALS_UNLIT:"KHR_materials_unlit",KHR_MATERIALS_VOLUME:"KHR_materials_volume",KHR_TEXTURE_BASISU:"KHR_texture_basisu",KHR_TEXTURE_TRANSFORM:"KHR_texture_transform",KHR_MESH_QUANTIZATION:"KHR_mesh_quantization",KHR_MATERIALS_EMISSIVE_STRENGTH:"KHR_materials_emissive_strength",EXT_MATERIALS_BUMP:"EXT_materials_bump",EXT_TEXTURE_WEBP:"EXT_texture_webp",EXT_TEXTURE_AVIF:"EXT_texture_avif",EXT_MESHOPT_COMPRESSION:"EXT_meshopt_compression",EXT_MESH_GPU_INSTANCING:"EXT_mesh_gpu_instancing"};class jN{constructor(e){this.parser=e,this.name=cn.KHR_LIGHTS_PUNCTUAL,this.cache={refs:{},uses:{}}}_markDefs(){const e=this.parser,t=this.parser.json.nodes||[];for(let n=0,i=t.length;n<i;n++){const s=t[n];s.extensions&&s.extensions[this.name]&&s.extensions[this.name].light!==void 0&&e._addNodeRef(this.cache,s.extensions[this.name].light)}}_loadLight(e){const t=this.parser,n="light:"+e;let i=t.cache.get(n);if(i)return i;const s=t.json,u=((s.extensions&&s.extensions[this.name]||{}).lights||[])[e];let d;const p=new tt(16777215);u.color!==void 0&&p.setRGB(u.color[0],u.color[1],u.color[2],Qa);const m=u.range!==void 0?u.range:0;switch(u.type){case"directional":d=new wM(p),d.target.position.set(0,0,-1),d.add(d.target);break;case"point":d=new SM(p),d.distance=m;break;case"spot":d=new MM(p),d.distance=m,u.spot=u.spot||{},u.spot.innerConeAngle=u.spot.innerConeAngle!==void 0?u.spot.innerConeAngle:0,u.spot.outerConeAngle=u.spot.outerConeAngle!==void 0?u.spot.outerConeAngle:Math.PI/4,d.angle=u.spot.outerConeAngle,d.penumbra=1-u.spot.innerConeAngle/u.spot.outerConeAngle,d.target.position.set(0,0,-1),d.add(d.target);break;default:throw new Error("THREE.GLTFLoader: Unexpected light type: "+u.type)}return d.position.set(0,0,0),d.decay=2,Ga(d,u),u.intensity!==void 0&&(d.intensity=u.intensity),d.name=t.createUniqueName(u.name||"light_"+e),i=Promise.resolve(d),t.cache.add(n,i),i}getDependency(e,t){if(e==="light")return this._loadLight(t)}createNodeAttachment(e){const t=this,n=this.parser,s=n.json.nodes[e],l=(s.extensions&&s.extensions[this.name]||{}).light;return l===void 0?null:this._loadLight(l).then(function(u){return n._getNodeRef(t.cache,l,u)})}}class zN{constructor(){this.name=cn.KHR_MATERIALS_UNLIT}getMaterialType(){return vs}extendParams(e,t,n){const i=[];e.color=new tt(1,1,1),e.opacity=1;const s=t.pbrMetallicRoughness;if(s){if(Array.isArray(s.baseColorFactor)){const o=s.baseColorFactor;e.color.setRGB(o[0],o[1],o[2],Qa),e.opacity=o[3]}s.baseColorTexture!==void 0&&i.push(n.assignTexture(e,"map",s.baseColorTexture,_u))}return Promise.all(i)}}class HN{constructor(e){this.parser=e,this.name=cn.KHR_MATERIALS_EMISSIVE_STRENGTH}extendMaterialParams(e,t){const i=this.parser.json.materials[e];if(!i.extensions||!i.extensions[this.name])return Promise.resolve();const s=i.extensions[this.name].emissiveStrength;return s!==void 0&&(t.emissiveIntensity=s),Promise.resolve()}}class GN{constructor(e){this.parser=e,this.name=cn.KHR_MATERIALS_CLEARCOAT}getMaterialType(e){const n=this.parser.json.materials[e];return!n.extensions||!n.extensions[this.name]?null:Gs}extendMaterialParams(e,t){const n=this.parser,i=n.json.materials[e];if(!i.extensions||!i.extensions[this.name])return Promise.resolve();const s=[],o=i.extensions[this.name];if(o.clearcoatFactor!==void 0&&(t.clearcoat=o.clearcoatFactor),o.clearcoatTexture!==void 0&&s.push(n.assignTexture(t,"clearcoatMap",o.clearcoatTexture)),o.clearcoatRoughnessFactor!==void 0&&(t.clearcoatRoughness=o.clearcoatRoughnessFactor),o.clearcoatRoughnessTexture!==void 0&&s.push(n.assignTexture(t,"clearcoatRoughnessMap",o.clearcoatRoughnessTexture)),o.clearcoatNormalTexture!==void 0&&(s.push(n.assignTexture(t,"clearcoatNormalMap",o.clearcoatNormalTexture)),o.clearcoatNormalTexture.scale!==void 0)){const l=o.clearcoatNormalTexture.scale;t.clearcoatNormalScale=new Ne(l,l)}return Promise.all(s)}}class VN{constructor(e){this.parser=e,this.name=cn.KHR_MATERIALS_DISPERSION}getMaterialType(e){const n=this.parser.json.materials[e];return!n.extensions||!n.extensions[this.name]?null:Gs}extendMaterialParams(e,t){const i=this.parser.json.materials[e];if(!i.extensions||!i.extensions[this.name])return Promise.resolve();const s=i.extensions[this.name];return t.dispersion=s.dispersion!==void 0?s.dispersion:0,Promise.resolve()}}class WN{constructor(e){this.parser=e,this.name=cn.KHR_MATERIALS_IRIDESCENCE}getMaterialType(e){const n=this.parser.json.materials[e];return!n.extensions||!n.extensions[this.name]?null:Gs}extendMaterialParams(e,t){const n=this.parser,i=n.json.materials[e];if(!i.extensions||!i.extensions[this.name])return Promise.resolve();const s=[],o=i.extensions[this.name];return o.iridescenceFactor!==void 0&&(t.iridescence=o.iridescenceFactor),o.iridescenceTexture!==void 0&&s.push(n.assignTexture(t,"iridescenceMap",o.iridescenceTexture)),o.iridescenceIor!==void 0&&(t.iridescenceIOR=o.iridescenceIor),t.iridescenceThicknessRange===void 0&&(t.iridescenceThicknessRange=[100,400]),o.iridescenceThicknessMinimum!==void 0&&(t.iridescenceThicknessRange[0]=o.iridescenceThicknessMinimum),o.iridescenceThicknessMaximum!==void 0&&(t.iridescenceThicknessRange[1]=o.iridescenceThicknessMaximum),o.iridescenceThicknessTexture!==void 0&&s.push(n.assignTexture(t,"iridescenceThicknessMap",o.iridescenceThicknessTexture)),Promise.all(s)}}class XN{constructor(e){this.parser=e,this.name=cn.KHR_MATERIALS_SHEEN}getMaterialType(e){const n=this.parser.json.materials[e];return!n.extensions||!n.extensions[this.name]?null:Gs}extendMaterialParams(e,t){const n=this.parser,i=n.json.materials[e];if(!i.extensions||!i.extensions[this.name])return Promise.resolve();const s=[];t.sheenColor=new tt(0,0,0),t.sheenRoughness=0,t.sheen=1;const o=i.extensions[this.name];if(o.sheenColorFactor!==void 0){const l=o.sheenColorFactor;t.sheenColor.setRGB(l[0],l[1],l[2],Qa)}return o.sheenRoughnessFactor!==void 0&&(t.sheenRoughness=o.sheenRoughnessFactor),o.sheenColorTexture!==void 0&&s.push(n.assignTexture(t,"sheenColorMap",o.sheenColorTexture,_u)),o.sheenRoughnessTexture!==void 0&&s.push(n.assignTexture(t,"sheenRoughnessMap",o.sheenRoughnessTexture)),Promise.all(s)}}class JN{constructor(e){this.parser=e,this.name=cn.KHR_MATERIALS_TRANSMISSION}getMaterialType(e){const n=this.parser.json.materials[e];return!n.extensions||!n.extensions[this.name]?null:Gs}extendMaterialParams(e,t){const n=this.parser,i=n.json.materials[e];if(!i.extensions||!i.extensions[this.name])return Promise.resolve();const s=[],o=i.extensions[this.name];return o.transmissionFactor!==void 0&&(t.transmission=o.transmissionFactor),o.transmissionTexture!==void 0&&s.push(n.assignTexture(t,"transmissionMap",o.transmissionTexture)),Promise.all(s)}}class $N{constructor(e){this.parser=e,this.name=cn.KHR_MATERIALS_VOLUME}getMaterialType(e){const n=this.parser.json.materials[e];return!n.extensions||!n.extensions[this.name]?null:Gs}extendMaterialParams(e,t){const n=this.parser,i=n.json.materials[e];if(!i.extensions||!i.extensions[this.name])return Promise.resolve();const s=[],o=i.extensions[this.name];t.thickness=o.thicknessFactor!==void 0?o.thicknessFactor:0,o.thicknessTexture!==void 0&&s.push(n.assignTexture(t,"thicknessMap",o.thicknessTexture)),t.attenuationDistance=o.attenuationDistance||1/0;const l=o.attenuationColor||[1,1,1];return t.attenuationColor=new tt().setRGB(l[0],l[1],l[2],Qa),Promise.all(s)}}class KN{constructor(e){this.parser=e,this.name=cn.KHR_MATERIALS_IOR}getMaterialType(e){const n=this.parser.json.materials[e];return!n.extensions||!n.extensions[this.name]?null:Gs}extendMaterialParams(e,t){const i=this.parser.json.materials[e];if(!i.extensions||!i.extensions[this.name])return Promise.resolve();const s=i.extensions[this.name];return t.ior=s.ior!==void 0?s.ior:1.5,Promise.resolve()}}class YN{constructor(e){this.parser=e,this.name=cn.KHR_MATERIALS_SPECULAR}getMaterialType(e){const n=this.parser.json.materials[e];return!n.extensions||!n.extensions[this.name]?null:Gs}extendMaterialParams(e,t){const n=this.parser,i=n.json.materials[e];if(!i.extensions||!i.extensions[this.name])return Promise.resolve();const s=[],o=i.extensions[this.name];t.specularIntensity=o.specularFactor!==void 0?o.specularFactor:1,o.specularTexture!==void 0&&s.push(n.assignTexture(t,"specularIntensityMap",o.specularTexture));const l=o.specularColorFactor||[1,1,1];return t.specularColor=new tt().setRGB(l[0],l[1],l[2],Qa),o.specularColorTexture!==void 0&&s.push(n.assignTexture(t,"specularColorMap",o.specularColorTexture,_u)),Promise.all(s)}}class qN{constructor(e){this.parser=e,this.name=cn.EXT_MATERIALS_BUMP}getMaterialType(e){const n=this.parser.json.materials[e];return!n.extensions||!n.extensions[this.name]?null:Gs}extendMaterialParams(e,t){const n=this.parser,i=n.json.materials[e];if(!i.extensions||!i.extensions[this.name])return Promise.resolve();const s=[],o=i.extensions[this.name];return t.bumpScale=o.bumpFactor!==void 0?o.bumpFactor:1,o.bumpTexture!==void 0&&s.push(n.assignTexture(t,"bumpMap",o.bumpTexture)),Promise.all(s)}}class QN{constructor(e){this.parser=e,this.name=cn.KHR_MATERIALS_ANISOTROPY}getMaterialType(e){const n=this.parser.json.materials[e];return!n.extensions||!n.extensions[this.name]?null:Gs}extendMaterialParams(e,t){const n=this.parser,i=n.json.materials[e];if(!i.extensions||!i.extensions[this.name])return Promise.resolve();const s=[],o=i.extensions[this.name];return o.anisotropyStrength!==void 0&&(t.anisotropy=o.anisotropyStrength),o.anisotropyRotation!==void 0&&(t.anisotropyRotation=o.anisotropyRotation),o.anisotropyTexture!==void 0&&s.push(n.assignTexture(t,"anisotropyMap",o.anisotropyTexture)),Promise.all(s)}}class ZN{constructor(e){this.parser=e,this.name=cn.KHR_TEXTURE_BASISU}loadTexture(e){const t=this.parser,n=t.json,i=n.textures[e];if(!i.extensions||!i.extensions[this.name])return null;const s=i.extensions[this.name],o=t.options.ktx2Loader;if(!o){if(n.extensionsRequired&&n.extensionsRequired.indexOf(this.name)>=0)throw new Error("THREE.GLTFLoader: setKTX2Loader must be called before loading KTX2 textures");return null}return t.loadTextureImage(e,s.source,o)}}class e7{constructor(e){this.parser=e,this.name=cn.EXT_TEXTURE_WEBP,this.isSupported=null}loadTexture(e){const t=this.name,n=this.parser,i=n.json,s=i.textures[e];if(!s.extensions||!s.extensions[t])return null;const o=s.extensions[t],l=i.images[o.source];let u=n.textureLoader;if(l.uri){const d=n.options.manager.getHandler(l.uri);d!==null&&(u=d)}return this.detectSupport().then(function(d){if(d)return n.loadTextureImage(e,o.source,u);if(i.extensionsRequired&&i.extensionsRequired.indexOf(t)>=0)throw new Error("THREE.GLTFLoader: WebP required by asset but unsupported.");return n.loadTexture(e)})}detectSupport(){return this.isSupported||(this.isSupported=new Promise(function(e){const t=new Image;t.src="data:image/webp;base64,UklGRiIAAABXRUJQVlA4IBYAAAAwAQCdASoBAAEADsD+JaQAA3AAAAAA",t.onload=t.onerror=function(){e(t.height===1)}})),this.isSupported}}class t7{constructor(e){this.parser=e,this.name=cn.EXT_TEXTURE_AVIF,this.isSupported=null}loadTexture(e){const t=this.name,n=this.parser,i=n.json,s=i.textures[e];if(!s.extensions||!s.extensions[t])return null;const o=s.extensions[t],l=i.images[o.source];let u=n.textureLoader;if(l.uri){const d=n.options.manager.getHandler(l.uri);d!==null&&(u=d)}return this.detectSupport().then(function(d){if(d)return n.loadTextureImage(e,o.source,u);if(i.extensionsRequired&&i.extensionsRequired.indexOf(t)>=0)throw new Error("THREE.GLTFLoader: AVIF required by asset but unsupported.");return n.loadTexture(e)})}detectSupport(){return this.isSupported||(this.isSupported=new Promise(function(e){const t=new Image;t.src="data:image/avif;base64,AAAAIGZ0eXBhdmlmAAAAAGF2aWZtaWYxbWlhZk1BMUIAAADybWV0YQAAAAAAAAAoaGRscgAAAAAAAAAAcGljdAAAAAAAAAAAAAAAAGxpYmF2aWYAAAAADnBpdG0AAAAAAAEAAAAeaWxvYwAAAABEAAABAAEAAAABAAABGgAAABcAAAAoaWluZgAAAAAAAQAAABppbmZlAgAAAAABAABhdjAxQ29sb3IAAAAAamlwcnAAAABLaXBjbwAAABRpc3BlAAAAAAAAAAEAAAABAAAAEHBpeGkAAAAAAwgICAAAAAxhdj
3913FDgQAMAAAAABNjb2xybmNseAACAAIABoAAAAAXaXBtYQAAAAAAAAABAAEEAQKDBAAAAB9tZGF0EgAKCBgABogQEDQgMgkQAAAAB8dSLfI=",t.onload=t.onerror=function(){e(t.height===1)}})),this.isSupported}}class n7{constructor(e){this.name=cn.EXT_MESHOPT_COMPRESSION,this.parser=e}loadBufferView(e){const t=this.parser.json,n=t.bufferViews[e];if(n.extensions&&n.extensions[this.name]){const i=n.extensions[this.name],s=this.parser.getDependency("buffer",i.buffer),o=this.parser.options.meshoptDecoder;if(!o||!o.supported){if(t.extensionsRequired&&t.extensionsRequired.indexOf(this.name)>=0)throw new Error("THREE.GLTFLoader: setMeshoptDecoder must be called before loading compressed files");return null}return s.then(function(l){const u=i.byteOffset||0,d=i.byteLength||0,p=i.count,m=i.byteStride,y=new Uint8Array(l,u,d);return o.decodeGltfBufferAsync?o.decodeGltfBufferAsync(p,m,y,i.mode,i.filter).then(function(v){return v.buffer}):o.ready.then(function(){const v=new ArrayBuffer(p*m);return o.decodeGltfBuffer(new Uint8Array(v),p,m,y,i.mode,i.filter),v})})}else return null}}class r7{constructor(e){this.name=cn.EXT_MESH_GPU_INSTANCING,this.parser=e}createNodeMesh(e){const t=this.parser.json,n=t.nodes[e];if(!n.extensions||!n.extensions[this.name]||n.mesh===void 0)return null;const i=t.meshes[n.mesh];for(const d of i.primitives)if(d.mode!==ks.TRIANGLES&&d.mode!==ks.TRIANGLE_STRIP&&d.mode!==ks.TRIANGLE_FAN&&d.mode!==void 0)return null;const o=n.extensions[this.name].attributes,l=[],u={};for(const d in o)l.push(this.parser.getDependency("accessor",o[d]).then(p=>(u[d]=p,u[d])));return l.length<1?null:(l.push(this.parser.createNodeMesh(e)),Promise.all(l).then(d=>{const p=d.pop(),m=p.isGroup?p.children:[p],y=d[0].count,v=[];for(const S of m){const E=new Nt,A=new $,M=new fi,T=new $(1,1,1),I=new sM(S.geometry,S.material,y);for(let P=0;P<y;P++)u.TRANSLATION&&A.fromBufferAttribute(u.TRANSLATION,P),u.ROTATION&&M.fromBufferAttribute(u.ROTATION,P),u.SCALE&&T.fromBufferAttribute(u.SCALE,P),I.setMatrixAt(P,E.compose(A,M,T));for(const P in u)if(P==="_COLOR_0"){const k=u[P];I.instanceColor=new Ru(k.array,k.itemSize,k.normalized)}else P!=="TRANSLATION"&&P!=="ROTATION"&&P!=="SCALE"&&S.geometry.setAttribute(P,u[P]);fn.prototype.copy.call(I,S),this.parser.assignFinalMaterial(I),v.push(I)}return p.isGroup?(p.clear(),p.add(...v),p):v[0]}))}}const IT="glTF",pp=12,vA={JSON:1313821514,BIN:5130562};class i7{constructor(e){this.name=cn.KHR_BINARY_GLTF,this.content=null,this.body=null;const t=new DataView(e,0,pp);if(this.header={magic:my(new Uint8Array(e.slice(0,4))),version:t.getUint32(4,!0),length:t.getUint32(8,!0)},this.header.magic!==IT)throw new Error("THREE.GLTFLoader: Unsupported glTF-Binary header.");if(this.header.version<2)throw new Error("THREE.GLTFLoader: Legacy binary file detected.");const n=this.header.length-pp,i=new DataView(e,pp);let s=0;for(;s<n;){const o=i.getUint32(s,!0);s+=4;const l=i.getUint32(s,!0);if(s+=4,l===vA.JSON){const u=new Uint8Array(e,pp+s,o);this.content=my(u)}else if(l===vA.BIN){const u=pp+s;this.body=e.slice(u,u+o)}s+=o}if(this.content===null)throw new Error("THREE.GLTFLoader: JSON content not found.")}}class s7{constructor(e,t){if(!t)throw new Error("THREE.GLTFLoader: No DRACOLoader instance provided.");this.name=cn.KHR_DRACO_MESH_COMPRESSION,this.json=e,this.dracoLoader=t,this.dracoLoader.preload()}decodePrimitive(e,t){const n=this.json,i=this.dracoLoader,s=e.extensions[this.name].bufferView,o=e.extensions[this.name].attributes,l={},u={},d={};for(const p in o){const m=lx[p]||p.toLowerCase();l[m]=o[p]}for(const p in e.attributes){const m=lx[p]||p.toLowerCase();if(o[p]!==void 0){const y=n.accessors[e.attributes[p]],v=Pd[y.componentType];d[m]=v.name,u[m]=y.normalized===!0}}return t.getDependency("bufferView",s).then(function(p){return new Promise(function(m,y){i.decodeDracoFile(p,function(v){for(const S in v.attributes){const E=v.attributes[S],A=u[S];A!==void 0&&(E.normalized=A)}m(v)},l,d,Qa,y)})})}}class o7{constructor(){this.name=cn.KHR_TEXTURE_TRANSFORM}extendTexture(e,t){return(t.texCoord===void 0||t.texCoord===e.channel)&&t.offset===void 0&&t.rotation===void 0&&t.scale===void 0||(e=e.clone(),t.texCoord!==void 0&&(e.channel=t.texCoord),t.offset!==void 0&&e.offset.fromArray(t.offset),t.rotation!==void 0&&(e.rotation=t.rotation),t.scale!==void 0&&e.repeat.fromArray(t.scale),e.needsUpdate=!0),e}}
vendor: 30,282 bytes, lines 3913-3914
3913class a7{constructor(){this.name=cn.KHR_MESH_QUANTIZATION}}class PT extends $d{constructor(e,t,n,i){super(e,t,n,i)}copySampleValue_(e){const t=this.resultBuffer,n=this.sampleValues,i=this.valueSize,s=e*i*3+i;for(let o=0;o!==i;o++)t[o]=n[s+o];return t}interpolate_(e,t,n,i){const s=this.resultBuffer,o=this.sampleValues,l=this.valueSize,u=l*2,d=l*3,p=i-t,m=(n-t)/p,y=m*m,v=y*m,S=e*d,E=S-d,A=-2*v+3*y,M=v-y,T=1-A,I=M-y+m;for(let P=0;P!==l;P++){const k=o[E+P+l],O=o[E+P+u]*p,N=o[S+P+l],H=o[S+P]*p;s[P]=T*k+I*O+A*N+M*H}return s}}const l7=new fi;class c7 extends PT{interpolate_(e,t,n,i){const s=super.interpolate_(e,t,n,i);return l7.fromArray(s).normalize().toArray(s),s}}const ks={FLOAT:5126,FLOAT_MAT3:35675,FLOAT_MAT4:35676,FLOAT_VEC2:35664,FLOAT_VEC3:35665,FLOAT_VEC4:35666,LINEAR:9729,REPEAT:10497,SAMPLER_2D:35678,POINTS:0,LINES:1,LINE_LOOP:2,LINE_STRIP:3,TRIANGLES:4,TRIANGLE_STRIP:5,TRIANGLE_FAN:6,UNSIGNED_BYTE:5121,UNSIGNED_SHORT:5123},Pd={5120:Int8Array,5121:Uint8Array,5122:Int16Array,5123:Uint16Array,5125:Uint32Array,5126:Float32Array},_A={9728:zr,9729:Zn,9984:Ly,9985:Cd,9986:fu,9987:js},xA={33071:ys,33648:Od,10497:ec},l_={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},lx={POSITION:"position",NORMAL:"normal",TANGENT:"tangent",...FN>=152?{TEXCOORD_0:"uv",TEXCOORD_1:"uv1",TEXCOORD_2:"uv2",TEXCOORD_3:"uv3"}:{TEXCOORD_0:"uv",TEXCOORD_1:"uv2"},COLOR_0:"color",WEIGHTS_0:"skinWeight",JOINTS_0:"skinIndex"},$l={scale:"scale",translation:"position",rotation:"quaternion",weights:"morphTargetInfluences"},u7={CUBICSPLINE:void 0,LINEAR:Nd,STEP:Ld},c_={OPAQUE:"OPAQUE",MASK:"MASK",BLEND:"BLEND"};function h7(r){return r.DefaultMaterial===void 0&&(r.DefaultMaterial=new dm({color:16777215,emissive:0,metalness:1,roughness:1,transparent:!1,depthTest:!0,side:Qo})),r.DefaultMaterial}function cu(r,e,t){for(const n in t.extensions)r[n]===void 0&&(e.userData.gltfExtensions=e.userData.gltfExtensions||{},e.userData.gltfExtensions[n]=t.extensions[n])}function Ga(r,e){e.extras!==void 0&&(typeof e.extras=="object"?Object.assign(r.userData,e.extras):console.warn("THREE.GLTFLoader: Ignoring primitive type .extras, "+e.extras))}function d7(r,e,t){let n=!1,i=!1,s=!1;for(let d=0,p=e.length;d<p;d++){const m=e[d];if(m.POSITION!==void 0&&(n=!0),m.NORMAL!==void 0&&(i=!0),m.COLOR_0!==void 0&&(s=!0),n&&i&&s)break}if(!n&&!i&&!s)return Promise.resolve(r);const o=[],l=[],u=[];for(let d=0,p=e.length;d<p;d++){const m=e[d];if(n){const y=m.POSITION!==void 0?t.getDependency("accessor",m.POSITION):r.attributes.position;o.push(y)}if(i){const y=m.NORMAL!==void 0?t.getDependency("accessor",m.NORMAL):r.attributes.normal;l.push(y)}if(s){const y=m.COLOR_0!==void 0?t.getDependency("accessor",m.COLOR_0):r.attributes.color;u.push(y)}}return Promise.all([Promise.all(o),Promise.all(l),Promise.all(u)]).then(function(d){const p=d[0],m=d[1],y=d[2];return n&&(r.morphAttributes.position=p),i&&(r.morphAttributes.normal=m),s&&(r.morphAttributes.color=y),r.morphTargetsRelative=!0,r})}function f7(r,e){if(r.updateMorphTargets(),e.weights!==void 0)for(let t=0,n=e.weights.length;t<n;t++)r.morphTargetInfluences[t]=e.weights[t];if(e.extras&&Array.isArray(e.extras.targetNames)){const t=e.extras.targetNames;if(r.morphTargetInfluences.length===t.length){r.morphTargetDictionary={};for(let n=0,i=t.length;n<i;n++)r.morphTargetDictionary[t[n]]=n}else console.warn("THREE.GLTFLoader: Invalid extras.targetNames length. Ignoring names.")}}function p7(r){let e;const t=r.extensions&&r.extensions[cn.KHR_DRACO_MESH_COMPRESSION];if(t?e="draco:"+t.bufferView+":"+t.indices+":"+u_(t.attributes):e=r.indices+":"+u_(r.attributes)+":"+r.mode,r.targets!==void 0)for(let n=0,i=r.targets.length;n<i;n++)e+=":"+u_(r.targets[n]);return e}function u_(r){let e="";const t=Object.keys(r).sort();for(let n=0,i=t.length;n<i;n++)e+=t[n]+":"+r[t[n]]+";";return e}function cx(r){switch(r){case Int8Array:return 1/127;case Uint8Array:return 1/255;case Int16Array:return 1/32767;case Uint16Array:return 1/65535;default:throw new Error("THREE.GLTFLoader: Unsupported normalized accessor component type.")}}function m7(r){return r.search(/\.jpe?g($|\?)/i)>0||r.search(/^data\:image\/jpeg/)===0?"image/jpeg":r.search(/\.webp($|\?)/i)>0||r.search(/^data\:image\/webp/)===0?"image/webp":"image/png"}const g7=new Nt;class y7{constructor(e={},t={}){this.json=e,this.extensions={},this.plugins={},this.options=t,this.cache=new UN,this.associations=new Map,this.primitiveCache={},this.nodeCache={},this.meshCache={refs:{},uses:{}},this.cameraCache={refs:{},uses:{}},this.lightCache={refs:{},uses:{}},this.sourceCache={},this.textureCache={},this.nodeNamesUsed={};let n=!1,i=!1,s=-1;typeof navigator<"u"&&typeof navigator.userAgent<"u"&&(n=/^((?!chrome|android).)*safari/i.test(navigator.userAgent)===!0,i=navigator.userAgent.indexOf("Firefox")>-1,s=i?navigator.userAgent.match(/Firefox\/([0-9]+)\./)[1]:-1),typeof createImageBitmap>"u"||n||i&&s<98?this.textureLoader=new _M(this.options.manager):this.textureLoader=new GC(this.options.manager),this.textureLoader.setCrossOrigin(this.options.crossOrigin),this.textureLoader.setRequestHeader(this.options.requestHeader),this.fileLoader=new Ss(this.options.manager),this.fileLoader.setResponseType("arraybuffer"),this.options.crossOrigin==="use-credentials"&&this.fileLoader.setWithCredentials(!0)}setExtensions(e){this.extensions=e}setPlugins(e){this.plugins=e}parse(e,t){const n=this,i=this.json,s=this.extensions;this.cache.removeAll(),this.nodeCache={},this._invokeAll(function(o){return o._markDefs&&o._markDefs()}),Promise.all(this._invokeAll(function(o){return o.beforeRoot&&o.beforeRoot()})).then(function(){return Promise.all([n.getDependencies("scene"),n.getDependencies("animation"),n.getDependencies("camera")])}).then(function(o){const l={scene:o[0][i.scene||0],scenes:o[0],animations:o[1],cameras:o[2],asset:i.asset,parser:n,userData:{}};return cu(s,l,i),Ga(l,i),Promise.all(n._invokeAll(function(u){return u.afterRoot&&u.afterRoot(l)})).then(function(){for(const u of l.scenes)u.updateMatrixWorld();e(l)})}).catch(t)}_markDefs(){const e=this.json.nodes||[],t=this.json.skins||[],n=this.json.meshes||[];for(let i=0,s=t.length;i<s;i++){const o=t[i].joints;for(let l=0,u=o.length;l<u;l++)e[o[l]].isBone=!0}for(let i=0,s=e.length;i<s;i++){const o=e[i];o.mesh!==void 0&&(this._addNodeRef(this.meshCache,o.mesh),o.skin!==void 0&&(n[o.mesh].isSkinnedMesh=!0)),o.camera!==void 0&&this._addNodeRef(this.cameraCache,o.camera)}}_addNodeRef(e,t){t!==void 0&&(e.refs[t]===void 0&&(e.refs[t]=e.uses[t]=0),e.refs[t]++)}_getNodeRef(e,t,n){if(e.refs[t]<=1)return n;const i=n.clone(),s=(o,l)=>{const u=this.associations.get(o);u!=null&&this.associations.set(l,u);for(const[d,p]of o.children.entries())s(p,l.children[d])};return s(n,i),i.name+="_instance_"+e.uses[t]++,i}_invokeOne(e){const t=Object.values(this.plugins);t.push(this);for(let n=0;n<t.length;n++){const i=e(t[n]);if(i)return i}return null}_invokeAll(e){const t=Object.values(this.plugins);t.unshift(this);const n=[];for(let i=0;i<t.length;i++){const s=e(t[i]);s&&n.push(s)}return n}getDependency(e,t){const n=e+":"+t;let i=this.cache.get(n);if(!i){switch(e){case"scene":i=this.loadScene(t);break;case"node":i=this._invokeOne(function(s){return s.loadNode&&s.loadNode(t)});break;case"mesh":i=this._invokeOne(function(s){return s.loadMesh&&s.loadMesh(t)});break;case"accessor":i=this.loadAccessor(t);break;case"bufferView":i=this._invokeOne(function(s){return s.loadBufferView&&s.loadBufferView(t)});break;case"buffer":i=this.loadBuffer(t);break;case"material":i=this._invokeOne(function(s){return s.loadMaterial&&s.loadMaterial(t)});break;case"texture":i=this._invokeOne(function(s){return s.loadTexture&&s.loadTexture(t)});break;case"skin":i=this.loadSkin(t);break;case"animation":i=this._invokeOne(function(s){return s.loadAnimation&&s.loadAnimation(t)});break;case"camera":i=this.loadCamera(t);break;default:if(i=this._invokeOne(function(s){return s!=this&&s.getDependency&&s.getDependency(e,t)}),!i)throw new Error("Unknown type: "+e);break}this.cache.add(n,i)}return i}getDependencies(e){let t=this.cache.get(e);if(!t){const n=this,i=this.json[e+(e==="mesh"?"es":"s")]||[];t=Promise.all(i.map(function(s,o){return n.getDependency(e,o)})),this.cache.add(e,t)}return t}loadBuffer(e){const t=this.json.buffers[e],n=this.fileLoader;if(t.type&&t.type!=="arraybuffer")throw new Error("THREE.GLTFLoader: "+t.type+" buffer type is not supported.");if(t.uri===void 0&&e===0)return Promise.resolve(this.extensions[cn.KHR_BINARY_GLTF].body);const i=this.options;return new Promise(function(s,o){n.load(Ql.resolveURL(t.uri,i.path),s,void 0,function(){o(new Error('THREE.GLTFLoader: Failed to load buffer "'+t.uri+'".'))})})}loadBufferView(e){const t=this.json.bufferViews[e];return this.getDependency("buffer",t.buffer).then(function(n){const i=t.byteLength||0,s=t.byteOffset||0;return n.slice(s,s+i)})}loadAccessor(e){const t=this,n=this.json,i=this.json.accessors[e];if(i.bufferView===void 0&&i.sparse===void 0){const o=l_[i.type],l=Pd[i.componentType],u=i.normalized===!0,d=new l(i.count*o);return Promise.resolve(new vn(d,o,u))}const s=[];return i.bufferView!==void 0?s.push(this.getDependency("bufferView",i.bufferView)):s.push(null),i.sparse!==void 0&&(s.push(this.getDependency("bufferView",i.sparse.indices.bufferView)),s.push(this.getDependency("bufferView",i.sparse.values.bufferView))),Promise.all(s).then(function(o){const l=o[0],u=l_[i.type],d=Pd[i.componentType],p=d.BYTES_PER_ELEMENT,m=p*u,y=i.byteOffset||0,v=i.bufferView!==void 0?n.bufferViews[i.bufferView].byteStride:void 0,S=i.normalized===!0;let E,A;if(v&&v!==m){const M=Math.floor(y/v),T="InterleavedBuffer:"+i.bufferView+":"+i.componentType+":"+M+":"+i.count;let I=t.cache.get(T);I||(E=new d(l,M*v,i.count*v/p),I=new sm(E,v/p),t.cache.add(T,I)),A=new tc(I,u,y%v/p,S)}else l===null?E=new d(i.count*u):E=new d(l,y,i.count*u),A=new vn(E,u,S);if(i.sparse!==void 0){const M=l_.SCALAR,T=Pd[i.sparse.indices.componentType],I=i.sparse.indices.byteOffset||0,P=i.sparse.values.byteOffset||0,k=new T(o[1],I,i.sparse.count*M),O=new d(o[2],P,i.sparse.count*u);l!==null&&(A=new vn(A.array.slice(),A.itemSize,A.normalized));for(let N=0,H=k.length;N<H;N++){const F=k[N];if(A.setX(F,O[N*u]),u>=2&&A.setY(F,O[N*u+1]),u>=3&&A.setZ(F,O[N*u+2]),u>=4&&A.setW(F,O[N*u+3]),u>=5)throw new Error("THREE.GLTFLoader: Unsupported itemSize in sparse BufferAttribute.")}}return A})}loadTexture(e){const t=this.json,n=this.options,s=t.textures[e].source,o=t.images[s];let l=this.textureLoader;if(o.uri){const u=n.manager.getHandler(o.uri);u!==null&&(l=u)}return this.loadTextureImage(e,s,l)}loadTextureImage(e,t,n){const i=this,s=this.json,o=s.textures[e],l=s.images[t],u=(l.uri||l.bufferView)+":"+o.sampler;if(this.textureCache[u])return this.textureCache[u];const d=this.loadImageSource(t,n).then(function(p){p.flipY=!1,p.name=o.name||l.name||"",p.name===""&&typeof l.uri=="string"&&l.uri.startsWith("data:image/")===!1&&(p.name=l.uri);const y=(s.samplers||{})[o.sampler]||{};return p.magFilter=_A[y.magFilter]||Zn,p.minFilter=_A[y.minFilter]||js,p.wrapS=xA[y.wrapS]||ec,p.wrapT=xA[y.wrapT]||ec,i.associations.set(p,{textures:e}),p}).catch(function(){return null});return this.textureCache[u]=d,d}loadImageSource(e,t){const n=this,i=this.json,s=this.options;if(this.sourceCache[e]!==void 0)return this.sourceCache[e].then(m=>m.clone());const o=i.images[e],l=self.URL||self.webkitURL;let u=o.uri||"",d=!1;if(o.bufferView!==void 0)u=n.getDependency("bufferView",o.bufferView).then(function(m){d=!0;const y=new Blob([m],{type:o.mimeType});return u=l.createObjectURL(y),u});else if(o.uri===void 0)throw new Error("THREE.GLTFLoader: Image "+e+" is missing URI and bufferView");const p=Promise.resolve(u).then(function(m){return new Promise(function(y,v){let S=y;t.isImageBitmapLoader===!0&&(S=function(E){const A=new Gn(E);A.needsUpdate=!0,y(A)}),t.load(Ql.resolveURL(m,s.path),S,void 0,v)})}).then(function(m){return d===!0&&l.revokeObjectURL(u),Ga(m,o),m.userData.mimeType=o.mimeType||m7(o.uri),m}).catch(function(m){throw console.error("THREE.GLTFLoader: Couldn't load texture",u),m});return this.sourceCache[e]=p,p}assignTexture(e,t,n,i){const s=this;return this.getDependency("texture",n.index).then(function(o){if(!o)return null;if(n.texCoord!==void 0&&n.texCoord>0&&(o=o.clone(),o.channel=n.texCoord),s.extensions[cn.KHR_TEXTURE_TRANSFORM]){const l=n.extensions!==void 0?n.extensions[cn.KHR_TEXTURE_TRANSFORM]:void 0;if(l){const u=s.associations.get(o);o=s.extensions[cn.KHR_TEXTURE_TRANSFORM].extendTexture(o,l),s.associations.set(o,u)}}return i!==void 0&&(typeof i=="number"&&(i=i===yA?_u:Qa),"colorSpace"in o?o.colorSpace=i:o.encoding=i===_u?yA:kN),e[t]=o,o})}assignFinalMaterial(e){const t=e.geometry;let n=e.material;const i=t.attributes.tangent===void 0,s=t.attributes.color!==void 0,o=t.attributes.normal===void 0;if(e.isPoints){const l="PointsMaterial:"+n.uuid;let u=this.cache.get(l);u||(u=new lm,xr.prototype.copy.call(u,n),u.color.copy(n.color),u.map=n.map,u.sizeAttenuation=!1,this.cache.add(l,u)),n=u}else if(e.isLine){const l="LineBasicMaterial:"+n.uuid;let u=this.cache.get(l);u||(u=new mi,xr.prototype.copy.call(u,n),u.color.copy(n.color),u.map=n.map,this.cache.add(l,u)),n=u}if(i||s||o){let l="ClonedMaterial:"+n.uuid+":";i&&(l+="derivative-tangents:"),s&&(l+="vertex-colors:"),o&&(l+="flat-shading:");let u=this.cache.get(l);u||(u=n.clone(),s&&(u.vertexColors=!0),o&&(u.flatShading=!0),i&&(u.normalScale&&(u.normalScale.y*=-1),u.clearcoatNormalScale&&(u.clearcoatNormalScale.y*=-1)),this.cache.add(l,u),this.associations.set(u,this.associations.get(n))),n=u}e.material=n}getMaterialType(){return dm}loadMaterial(e){const t=this,n=this.json,i=this.extensions,s=n.materials[e];let o;const l={},u=s.extensions||{},d=[];if(u[cn.KHR_MATERIALS_UNLIT]){const m=i[cn.KHR_MATERIALS_UNLIT];o=m.getMaterialType(),d.push(m.extendParams(l,s,t))}else{const m=s.pbrMetallicRoughness||{};if(l.color=new tt(1,1,1),l.opacity=1,Array.isArray(m.baseColorFactor)){const y=m.baseColorFactor;l.color.setRGB(y[0],y[1],y[2],Qa),l.opacity=y[3]}m.baseColorTexture!==void 0&&d.push(t.assignTexture(l,"map",m.baseColorTexture,_u)),l.metalness=m.metallicFactor!==void 0?m.metallicFactor:1,l.roughness=m.roughnessFactor!==void 0?m.roughnessFactor:1,m.metallicRoughnessTexture!==void 0&&(d.push(t.assignTexture(l,"metalnessMap",m.metallicRoughnessTexture)),d.push(t.assignTexture(l,"roughnessMap",m.metallicRoughnessTexture))),o=this._invokeOne(function(y){return y.getMaterialType&&y.getMaterialType(e)}),d.push(Promise.all(this._invokeAll(function(y){return y.extendMaterialParams&&y.extendMaterialParams(e,l)})))}s.doubleSided===!0&&(l.side=xo);const p=s.alphaMode||c_.OPAQUE;if(p===c_.BLEND?(l.transparent=!0,l.depthWrite=!1):(l.transparent=!1,p===c_.MASK&&(l.alphaTest=s.alphaCutoff!==void 0?s.alphaCutoff:.5)),s.normalTexture!==void 0&&o!==vs&&(d.push(t.assignTexture(l,"normalMap",s.normalTexture)),l.normalScale=new Ne(1,1),s.normalTexture.scale!==void 0)){const m=s.normalTexture.scale;l.normalScale.set(m,m)}if(s.occlusionTexture!==void 0&&o!==vs&&(d.push(t.assignTexture(l,"aoMap",s.occlusionTexture)),s.occlusionTexture.strength!==void 0&&(l.aoMapIntensity=s.occlusionTexture.strength)),s.emissiveFactor!==void 0&&o!==vs){const m=s.emissiveFactor;l.emissive=new tt().setRGB(m[0],m[1],m[2],Qa)}return s.emissiveTexture!==void 0&&o!==vs&&d.push(t.assignTexture(l,"emissiveMap",s.emissiveTexture,_u)),Promise.all(d).then(function(){const m=new o(l);return s.name&&(m.name=s.name),Ga(m,s),t.associations.set(m,{materials:e}),s.extensions&&cu(i,m,s),m})}createUniqueName(e){const t=gn.sanitizeNodeName(e||"");return t in this.nodeNamesUsed?t+"_"+ ++this.nodeNamesUsed[t]:(this.nodeNamesUsed[t]=0,t)}loadGeometries(e){const t=this,n=this.extensions,i=this.primitiveCache;function s(l){return n[cn.KHR_DRACO_MESH_COMPRESSION].decodePrimitive(l,t).then(function(u){return MA(u,l,t)})}const o=[];for(let l=0,u=e.length;l<u;l++){const d=e[l],p=p7(d),m=i[p];if(m)o.push(m.promise);else{let y;d.extensions&&d.extensions[cn.KHR_DRACO_MESH_COMPRESSION]?y=s(d):y=MA(new Jt,d,t),i[p]={primitive:d,promise:y},o.push(y)}}return Promise.all(o)}loadMesh(e){const t=this,n=this.json,i=this.extensions,s=n.meshes[e],o=s.primitives,l=[];for(let u=0,d=o.length;u<d;u++){const p=o[u].material===void 0?h7(this.cache):this.getDependency("material",o[u].material);l.push(p)}return l.push(t.loadGeometries(o)),Promise.all(l).then(function(u){const d=u.slice(0,u.length-1),p=u[u.length-1],m=[];for(let v=0,S=p.length;v<S;v++){const E=p[v],A=o[v];let M;const T=d[v];if(A.mode===ks.TRIANGLES||A.mode===ks.TRIANGLE_STRIP||A.mode===ks.TRIANGLE_FAN||A.mode===void 0)M=s.isSkinnedMesh===!0?new iM(E,T):new hr(E,T),M.isSkinnedMesh===!0&&M.normalizeSkinWeights(),A.mode===ks.TRIANGLE_STRIP?M.geometry=gA(M.geometry,qx):A.mode===ks.TRIANGLE_FAN&&(M.geometry=gA(M.geometry,cy));else if(A.mode===ks.LINES)M=new bo(E,T);else if(A.mode===ks.LINE_STRIP)M=new nl(E,T);else if(A.mode===ks.LINE_LOOP)M=new oM(E,T);else if(A.mode===ks.POINTS)M=new Jy(E,T);else throw new Error("THREE.GLTFLoader: Primitive mode unsupported: "+A.mode);Object.keys(M.geometry.morphAttributes).length>0&&f7(M,s),M.name=t.createUniqueName(s.name||"mesh_"+e),Ga(M,s),A.extensions&&cu(i,M,A),t.assignFinalMaterial(M),m.push(M)}for(let v=0,S=m.length;v<S;v++)t.associations.set(m[v],{meshes:e,primitives:v});if(m.length===1)return s.extensions&&cu(i,m[0],s),m[0];const y=new $a;s.extensions&&cu(i,y,s),t.associations.set(y,{meshes:e});for(let v=0,S=m.length;v<S;v++)y.add(m[v]);return y})}loadCamera(e){let t;const n=this.json.cameras[e],i=n[n.type];if(!i){console.warn("THREE.GLTFLoader: Missing camera parameters.");return}return n.type==="perspective"?t=new _r(Qb.radToDeg(i.yfov),i.aspectRatio||1,i.znear||1,i.zfar||2e6):n.type==="orthographic"&&(t=new Kd(-i.xmag,i.xmag,i.ymag,-i.ymag,i.znear,i.zfar)),n.name&&(t.name=this.createUniqueName(n.name)),Ga(t,n),Promise.resolve(t)}loadSkin(e){const t=this.json.skins[e],n=[];for(let i=0,s=t.joints.length;i<s;i++)n.push(this._loadNodeShallow(t.joints[i]));return t.inverseBindMatrices!==void 0?n.push(this.getDependency("accessor",t.inverseBindMatrices)):n.push(null),Promise.all(n).then(function(i){const s=i.pop(),o=i,l=[],u=[];for(let d=0,p=o.length;d<p;d++){const m=o[d];if(m){l.push(m);const y=new Nt;s!==null&&y.fromArray(s.array,d*16),u.push(y)}else console.warn('THREE.GLTFLoader: Joint "%s" could not be found.',t.joints[d])}return new om(l,u)})}loadAnimation(e){const t=this.json,n=this,i=t.animations[e],s=i.name?i.name:"animation_"+e,o=[],l=[],u=[],d=[],p=[];for(let m=0,y=i.channels.length;m<y;m++){const v=i.channels[m],S=i.samplers[v.sampler],E=v.target,A=E.node,M=i.parameters!==void 0?i.parameters[S.input]:S.input,T=i.parameters!==void 0?i.parameters[S.output]:S.output;E.node!==void 0&&(o.push(this.getDependency("node",A)),l.push(this.getDependency("accessor",M)),u.push(this.getDependency("accessor",T)),d.push(S),p.push(E))}return Promise.all([Promise.all(o),Promise.all(l),Promise.all(u),Promise.all(d),Promise.all(p)]).then(function(m){const y=m[0],v=m[1],S=m[2],E=m[3],A=m[4],M=[];for(let T=0,I=y.length;T<I;T++){const P=y[T],k=v[T],O=S[T],N=E[T],H=A[T];if(P===void 0)continue;P.updateMatrix&&P.updateMatrix();const F=n._createAnimationTracks(P,k,O,N,H);if(F)for(let L=0;L<F.length;L++)M.push(F[L])}return new Ud(s,void 0,M)})}createNodeMesh(e){const t=this.json,n=this,i=t.nodes[e];return i.mesh===void 0?null:n.getDependency("mesh",i.mesh).then(function(s){const o=n._getNodeRef(n.meshCache,i.mesh,s);return i.weights!==void 0&&o.traverse(function(l){if(l.isMesh)for(let u=0,d=i.weights.length;u<d;u++)l.morphTargetInfluences[u]=i.weights[u]}),o})}loadNode(e){const t=this.json,n=this,i=t.nodes[e],s=n._loadNodeShallow(e),o=[],l=i.children||[];for(let d=0,p=l.length;d<p;d++)o.push(n.getDependency("node",l[d]));const u=i.skin===void 0?Promise.resolve(null):n.getDependency("skin",i.skin);return Promise.all([s,Promise.all(o),u]).then(function(d){const p=d[0],m=d[1],y=d[2];y!==null&&p.traverse(function(v){v.isSkinnedMesh&&v.bind(y,g7)});for(let v=0,S=m.length;v<S;v++)p.add(m[v]);return p})}_loadNodeShallow(e){const t=this.json,n=this.extensions,i=this;if(this.nodeCache[e]!==void 0)return this.nodeCache[e];const s=t.nodes[e],o=s.name?i.createUniqueName(s.name):"",l=[],u=i._invokeOne(function(d){return d.createNodeMesh&&d.createNodeMesh(e)});return u&&l.push(u),s.camera!==void 0&&l.push(i.getDependency("camera",s.camera).then(function(d){return i._getNodeRef(i.cameraCache,s.camera,d)})),i._invokeAll(function(d){return d.createNodeAttachment&&d.createNodeAttachment(e)}).forEach(function(d){l.push(d)}),this.nodeCache[e]=Promise.all(l).then(function(d){let p;if(s.isBone===!0?p=new Xy:d.length>1?p=new $a:d.length===1?p=d[0]:p=new fn,p!==d[0])for(let m=0,y=d.length;m<y;m++)p.add(d[m]);if(s.name&&(p.userData.name=s.name,p.name=o),Ga(p,s),s.extensions&&cu(n,p,s),s.matrix!==void 0){const m=new Nt;m.fromArray(s.matrix),p.applyMatrix4(m)}else s.translation!==void 0&&p.position.fromArray(s.translation),s.rotation!==void 0&&p.quaternion.fromArray(s.rotation),s.scale!==void 0&&p.scale.fromArray(s.scale);return i.associations.has(p)||i.associations.set(p,{}),i.associations.get(p).nodes=e,p}),this.nodeCache[e]}loadScene(e){const t=this.extensions,n=this.json.scenes[e],i=this,s=new $a;n.name&&(s.name=i.createUniqueName(n.name)),Ga(s,n),n.extensions&&cu(t,s,n);const o=n.nodes||[],l=[];for(let u=0,d=o.length;u<d;u++)l.push(i.getDependency("node",o[u]));return Promise.all(l).then(function(u){for(let p=0,m=u.length;p<m;p++)s.add(u[p]);const d=p=>{const m=new Map;for(const[y,v]of i.associations)(y instanceof xr||y instanceof Gn)&&m.set(y,v);return p.traverse(y=>{const v=i.associations.get(y);v!=null&&m.set(y,v)}),m};return i.associations=d(s),s})}_createAnimationTracks(e,t,n,i,s){const o=[],l=e.name?e.name:e.uuid,u=[];$l[s.path]===$l.weights?e.traverse(function(y){y.morphTargetInfluences&&u.push(y.name?y.name:y.uuid)}):u.push(l);let d;switch($l[s.path]){case $l.weights:d=Ou;break;case $l.rotation:d=Du;break;case $l.position:case $l.scale:d=Lu;break;default:switch(n.itemSize){case 1:d=Ou;break;case 2:case 3:default:d=Lu;break}break}const p=i.interpolation!==void 0?u7[i.interpolation]:Nd,m=this._getArrayFromAccessor(n);for(let y=0,v=u.length;y<v;y++){const S=new d(u[y]+"."+$l[s.path],t.array,m,p);i.interpolation==="CUBICSPLINE"&&this._createCubicSplineTrackInterpolant(S),o.push(S)}return o}_getArrayFromAccessor(e){let t=e.array;if(e.normalized){const n=cx(t.constructor),i=new Float32Array(t.length);for(let s=0,o=t.length;s<o;s++)i[s]=t[s]*n;t=i}return t}_createCubicSplineTrackInterpolant(e){e.createInterpolant=function(n){const i=this instanceof Du?c7:PT;return new i(this.times,this.values,this.getValueSize()/3,n)},e.createInterpolant.isInterpolantFactoryMethodGLTFCubicSpline=!0}}function v7(r,e,t){const n=e.attributes,i=new pi;if(n.POSITION!==void 0){const l=t.json.accessors[n.POSITION],u=l.min,d=l.max;if(u!==void 0&&d!==void 0){if(i.set(new $(u[0],u[1],u[2]),new $(d[0],d[1],d[2])),l.normalized){const p=cx(Pd[l.componentType]);i.min.multiplyScalar(p),i.max.multiplyScalar(p)}}else{console.warn("THREE.GLTFLoader: Missing min/max properties for accessor POSITION.");return}}else return;const s=e.targets;if(s!==void 0){const l=new $,u=new $;for(let d=0,p=s.length;d<p;d++){const m=s[d];if(m.POSITION!==void 0){const y=t.json.accessors[m.POSITION],v=y.min,S=y.max;if(v!==void 0&&S!==void 0){if(u.setX(Math.max(Math.abs(v[0]),Math.abs(S[0]))),u.setY(Math.max(Math.abs(v[1]),Math.abs(S[1]))),u.setZ(Math.max(Math.abs(v[2]),Math.abs(S[2]))),y.normalized){const E=cx(Pd[y.componentType]);u.multiplyScalar(E)}l.max(u)}else console.warn("THREE.GLTFLoader: Missing min/max properties for accessor POSITION.")}}i.expandByVector(l)}r.boundingBox=i;const o=new ei;i.getCenter(o.center),o.radius=i.min.distanceTo(i.max)/2,r.boundingSphere=o}function MA(r,e,t){const n=e.attributes,i=[];function s(o,l){return t.getDependency("accessor",o).then(function(u){r.setAttribute(l,u)})}for(const o in n){const l=lx[o]||o.toLowerCase();l in r.attributes||i.push(s(n[o],l))}if(e.indices!==void 0&&!r.index){const o=t.getDependency("accessor",e.indices).then(function(l){r.setIndex(l)});i.push(o)}return Ga(r,e),v7(r,e,t),Promise.all(i).then(function(){return e.targets!==void 0?d7(r,e.targets,t):r})}const h_=new WeakMap;class _7 extends gi{constructor(e){super(e),this.decoderPath="",this.decoderConfig={},this.decoderBinary=null,this.decoderPending=null,this.workerLimit=4,this.workerPool=[],this.workerNextTaskID=1,this.workerSourceURL="",this.defaultAttributeIDs={position:"POSITION",normal:"NORMAL",color:"COLOR",uv:"TEX_COORD"},this.defaultAttributeTypes={position:"Float32Array",normal:"Float32Array",color:"Float32Array",uv:"Float32Array"}}setDecoderPath(e){return this.decoderPath=e,this}setDecoderConfig(e){return this.decoderConfig=e,this}setWorkerLimit(e){return this.workerLimit=e,this}load(e,t,n,i){const s=new Ss(this.manager);s.setPath(this.path),s.setResponseType("arraybuffer"),s.setRequestHeader(this.requestHeader),s.setWithCredentials(this.withCredentials),s.load(e,o=>{const l={attributeIDs:this.defaultAttributeIDs,attributeTypes:this.defaultAttributeTypes,useUniqueIDs:!1};this.decodeGeometry(o,l).then(t).catch(i)},n,i)}decodeDracoFile(e,t,n,i){const s={attributeIDs:n||this.defaultAttributeIDs,attributeTypes:i||this.defaultAttributeTypes,useUniqueIDs:!!n};this.decodeGeometry(e,s).then(t)}decodeGeometry(e,t){for(const u in t.attributeTypes){const d=t.attributeTypes[u];d.BYTES_PER_ELEMENT!==void 0&&(t.attributeTypes[u]=d.name)}const n=JSON.stringify(t);if(h_.has(e)){const u=h_.get(e);if(u.key===n)return u.promise;if(e.byteLength===0)throw new Error("THREE.DRACOLoader: Unable to re-decode a buffer with different settings. Buffer has already been transferred.")}let i;const s=this.workerNextTaskID++,o=e.byteLength,l=this._getWorker(s,o).then(u=>(i=u,new Promise((d,p)=>{i._callbacks[s]={resolve:d,reject:p},i.postMessage({type:"decode",id:s,taskConfig:t,buffer:e},[e])}))).then(u=>this._createGeometry(u.geometry));return l.catch(()=>!0).then(()=>{i&&s&&this._releaseTask(i,s)}),h_.set(e,{key:n,promise:l}),l}_createGeometry(e){const t=new Jt;e.index&&t.setIndex(new vn(e.index.array,1));for(let n=0;n<e.attributes.length;n++){const i=e.attributes[n],s=i.name,o=i.array,l=i.itemSize;t.setAttribute(s,new vn(o,l))}return t}_loadLibrary(e,t){const n=new Ss(this.manager);return n.setPath(this.decoderPath),n.setResponseType(t),n.setWithCredentials(this.withCredentials),new Promise((i,s)=>{n.load(e,i,void 0,s)})}preload(){return this._initDecoder(),this}_initDecoder(){if(this.decoderPending)return this.decoderPending;const e=typeof WebAssembly!="object"||this.decoderConfig.type==="js",t=[];return e?t.push(this._loadLibrary("draco_decoder.js","text")):(t.push(this._loadLibrary("draco_wasm_wrapper.js","text")),t.push(this._loadLibrary("draco_decoder.wasm","arraybuffer"))),this.decoderPending=Promise.all(t).then(n=>{const i=n[0];e||(this.decoderConfig.wasmBinary=n[1]);const s=x7.toString(),o=["/* draco decoder */",i,"","/* worker */",s.substring(s.indexOf("{")+1,s.lastIndexOf("}"))].join(`
3914`);this.workerSourceURL=URL.createObjectURL(new Blob([o]))}),this.decoderPending}_getWorker(e,t){return this._initDecoder().then(()=>{if(this.workerPool.length<this.workerLimit){const i=new Worker(this.workerSourceURL);i._callbacks={},i._taskCosts={},i._taskLoad=0,i.postMessage({type:"init",decoderConfig:this.decoderConfig}),i.onmessage=function(s){const o=s.data;switch(o.type){case"decode":i._callbacks[o.id].resolve(o);break;case"error":i._callbacks[o.id].reject(o);break;default:console.error('THREE.DRACOLoader: Unexpected message, "'+o.type+'"')}},this.workerPool.push(i)}else this.workerPool.sort(function(i,s){return i._taskLoad>s._taskLoad?-1:1});const n=this.workerPool[this.workerPool.length-1];return n._taskCosts[e]=t,n._taskLoad+=t,n})}_releaseTask(e,t){e._taskLoad-=e._taskCosts[t],delete e._callbacks[t],delete e._taskCosts[t]}debug(){console.log("Task load: ",this.workerPool.map(e=>e._taskLoad))}dispose(){for(let e=0;e<this.workerPool.length;++e)this.workerPool[e].terminate();return this.workerPool.length=0,this}}function x7(){let r,e;onmessage=function(o){const l=o.data;switch(l.type){case"init":r=l.decoderConfig,e=new Promise(function(p){r.onModuleLoaded=function(m){p({draco:m})},DracoDecoderModule(r)});break;case"decode":const u=l.buffer,d=l.taskConfig;e.then(p=>{const m=p.draco,y=new m.Decoder,v=new m.DecoderBuffer;v.Init(new Int8Array(u),u.byteLength);try{const S=t(m,y,v,d),E=S.attributes.map(A=>A.array.buffer);S.index&&E.push(S.index.array.buffer),self.postMessage({type:"decode",id:l.id,geometry:S},E)}catch(S){console.error(S),self.postMessage({type:"error",id:l.id,error:S.message})}finally{m.destroy(v),m.destroy(y)}});break}};function t(o,l,u,d){const p=d.attributeIDs,m=d.attributeTypes;let y,v;const S=l.GetEncodedGeometryType(u);if(S===o.TRIANGULAR_MESH)y=new o.Mesh,v=l.DecodeBufferToMesh(u,y);else if(S===o.POINT_CLOUD)y=new o.PointCloud,v=l.DecodeBufferToPointCloud(u,y);else throw new Error("THREE.DRACOLoader: Unexpected geometry type.");if(!v.ok()||y.ptr===0)throw new Error("THREE.DRACOLoader: Decoding failed: "+v.error_msg());const E={index:null,attributes:[]};for(const A in p){const M=self[m[A]];let T,I;if(d.useUniqueIDs)I=p[A],T=l.GetAttributeByUniqueId(y,I);else{if(I=l.GetAttributeId(y,o[p[A]]),I===-1)continue;T=l.GetAttribute(y,I)}E.attributes.push(i(o,l,y,A,M,T))}return S===o.TRIANGULAR_MESH&&(E.index=n(o,l,y)),o.destroy(y),E}function n(o,l,u){const p=u.num_faces()*3,m=p*4,y=o._malloc(m);l.GetTrianglesUInt32Array(u,m,y);const v=new Uint32Array(o.HEAPF32.buffer,y,p).slice();return o._free(y),{array:v,itemSize:1}}function i(o,l,u,d,p,m){const y=m.num_components(),S=u.num_points()*y,E=S*p.BYTES_PER_ELEMENT,A=s(o,p),M=o._malloc(E);l.GetAttributeDataArrayForAllPoints(u,m,A,E,M);const T=new p(o.HEAPF32.buffer,M,S).slice();return o._free(M),{name:d,array:T,itemSize:y}}function s(o,l){switch(l){case Float32Array:return o.DT_FLOAT32;case Int8Array:return o.DT_INT8;case Int16Array:return o.DT_INT16;case Int32Array:return o.DT_INT32;case Uint8Array:return o.DT_UINT8;case Uint16Array:return o.DT_UINT16;case Uint32Array:return o.DT_UINT32}}}let cg;const d_=()=>{if(cg)return cg;
3914const r="B9h9z9tFBBBF8fL9gBB9gLaaaaaFa9gEaaaB9gFaFa9gEaaaFaEMcBFFFGGGEIIILF9wFFFLEFBFKNFaFCx/IFMO/LFVK9tv9t9vq95GBt9f9f939h9z9t9f9j9h9s9s9f9jW9vq9zBBp9tv9z9o9v9wW9f9kv9j9v9kv9WvqWv94h919m9mvqBF8Z9tv9z9o9v9wW9f9kv9j9v9kv9J9u9kv94h919m9mvqBGy9tv9z9o9v9wW9f9kv9j9v9kv9J9u9kv949TvZ91v9u9jvBEn9tv9z9o9v9wW9f9kv9j9v9kv69p9sWvq9P9jWBIi9tv9z9o9v9wW9f9kv9j9v9kv69p9sWvq9R919hWBLn9tv9z9o9v9wW9f9kv9j9v9kv69p9sWvq9F949wBKI9z9iqlBOc+x8ycGBM/qQFTa8jUUUUBCU/EBlHL8kUUUUBC9+RKGXAGCFJAI9LQBCaRKAE2BBC+gF9HQBALAEAIJHOAGlAGTkUUUBRNCUoBAG9uC/wgBZHKCUGAKCUG9JyRVAECFJRICBRcGXEXAcAF9PQFAVAFAclAcAVJAF9JyRMGXGXAG9FQBAMCbJHKC9wZRSAKCIrCEJCGrRQANCUGJRfCBRbAIRTEXGXAOATlAQ9PQBCBRISEMATAQJRIGXAS9FQBCBRtCBREEXGXAOAIlCi9PQBCBRISLMANCU/CBJAEJRKGXGXGXGXGXATAECKrJ2BBAtCKZrCEZfIBFGEBMAKhB83EBAKCNJhB83EBSEMAKAI2BIAI2BBHmCKrHYAYCE6HYy86BBAKCFJAICIJAYJHY2BBAmCIrCEZHPAPCE6HPy86BBAKCGJAYAPJHY2BBAmCGrCEZHPAPCE6HPy86BBAKCEJAYAPJHY2BBAmCEZHmAmCE6Hmy86BBAKCIJAYAmJHY2BBAI2BFHmCKrHPAPCE6HPy86BBAKCLJAYAPJHY2BBAmCIrCEZHPAPCE6HPy86BBAKCKJAYAPJHY2BBAmCGrCEZHPAPCE6HPy86BBAKCOJAYAPJHY2BBAmCEZHmAmCE6Hmy86BBAKCNJAYAmJHY2BBAI2BGHmCKrHPAPCE6HPy86BBAKCVJAYAPJHY2BBAmCIrCEZHPAPCE6HPy86BBAKCcJAYAPJHY2BBAmCGrCEZHPAPCE6HPy86BBAKCMJAYAPJHY2BBAmCEZHmAmCE6Hmy86BBAKCSJAYAmJHm2BBAI2BEHICKrHYAYCE6HYy86BBAKCQJAmAYJHm2BBAICIrCEZHYAYCE6HYy86BBAKCfJAmAYJHm2BBAICGrCEZHYAYCE6HYy86BBAKCbJAmAYJHK2BBAICEZHIAICE6HIy86BBAKAIJRISGMAKAI2BNAI2BBHmCIrHYAYCb6HYy86BBAKCFJAICNJAYJHY2BBAmCbZHmAmCb6Hmy86BBAKCGJAYAmJHm2BBAI2BFHYCIrHPAPCb6HPy86BBAKCEJAmAPJHm2BBAYCbZHYAYCb6HYy86BBAKCIJAmAYJHm2BBAI2BGHYCIrHPAPCb6HPy86BBAKCLJAmAPJHm2BBAYCbZHYAYCb6HYy86BBAKCKJAmAYJHm2BBAI2BEHYCIrHPAPCb6HPy86BBAKCOJAmAPJHm2BBAYCbZHYAYCb6HYy86BBAKCNJAmAYJHm2BBAI2BIHYCIrHPAPCb6HPy86BBAKCVJAmAPJHm2BBAYCbZHYAYCb6HYy86BBAKCcJAmAYJHm2BBAI2BLHYCIrHPAPCb6HPy86BBAKCMJAmAPJHm2BBAYCbZHYAYCb6HYy86BBAKCSJAmAYJHm2BBAI2BKHYCIrHPAPCb6HPy86BBAKCQJAmAPJHm2BBAYCbZHYAYCb6HYy86BBAKCfJAmAYJHm2BBAI2BOHICIrHYAYCb6HYy86BBAKCbJAmAYJHK2BBAICbZHIAICb6HIy86BBAKAIJRISFMAKAI8pBB83BBAKCNJAICNJ8pBB83BBAICTJRIMAtCGJRtAECTJHEAS9JQBMMGXAIQBCBRISEMGXAM9FQBANAbJ2BBRtCBRKAfREEXAEANCU/CBJAKJ2BBHTCFrCBATCFZl9zAtJHt86BBAEAGJREAKCFJHKAM9HQBMMAfCFJRfAIRTAbCFJHbAG9HQBMMABAcAG9sJANCUGJAMAG9sTkUUUBpANANCUGJAMCaJAG9sJAGTkUUUBpMAMCBAIyAcJRcAIQBMC9+RKSFMCBC99AOAIlAGCAAGCA9Ly6yRKMALCU/EBJ8kUUUUBAKM+OmFTa8jUUUUBCoFlHL8kUUUUBC9+RKGXAFCE9uHOCtJAI9LQBCaRKAE2BBHNC/wFZC/gF9HQBANCbZHVCF9LQBALCoBJCgFCUFT+JUUUBpALC84Jha83EBALC8wJha83EBALC8oJha83EBALCAJha83EBALCiJha83EBALCTJha83EBALha83ENALha83EBAEAIJC9wJRcAECFJHNAOJRMGXAF9FQBCQCbAVCF6yRSABRECBRVCBRQCBRfCBRICBRKEXGXAMAcuQBC9+RKSEMGXGXAN2BBHOC/vF9LQBALCoBJAOCIrCa9zAKJCbZCEWJHb8oGIRTAb8oGBRtGXAOCbZHbAS9PQBALAOCa9zAIJCbZCGWJ8oGBAVAbyROAb9FRbGXGXAGCG9HQBABAt87FBABCIJAO87FBABCGJAT87FBSFMAEAtjGBAECNJAOjGBAECIJATjGBMAVAbJRVALCoBJAKCEWJHmAOjGBAmATjGIALAICGWJAOjGBALCoBJAKCFJCbZHKCEWJHTAtjGBATAOjGIAIAbJRIAKCFJRKSGMGXGXAbCb6QBAQAbJAbC989zJCFJRQSFMAM1BBHbCgFZROGXGXAbCa9MQBAMCFJRMSFMAM1BFHbCgBZCOWAOCgBZqROGXAbCa9MQBAMCGJRMSFMAM1BGHbCgBZCfWAOqROGXAbCa9MQBAMCEJRMSFMAM1BEHbCgBZCdWAOqROGXAbCa9MQBAMCIJRMSFMAM2BIC8cWAOqROAMCLJRMMAOCFrCBAOCFZl9zAQJRQMGXGXAGCG9HQBABAt87FBABCIJAQ87FBABCGJAT87FBSFMAEAtjGBAECNJAQjGBAECIJATjGBMALCoBJAKCEWJHOAQjGBAOATjGIALAICGWJAQjGBALCoBJAKCFJCbZHKCEWJHOAtjGBAOAQjGIAICFJRIAKCFJRKSFMGXAOCDF9LQBALAIAcAOCbZJ2BBHbCIrHTlCbZCGWJ8oGBAVCFJHtATyROALAIAblCbZCGWJ8oGBAtAT9FHmJHtAbCbZHTyRbAT9FRTGXGXAGCG9HQBABAV87FBABCIJAb87FBABCGJAO87FBSFMAEAVjGBAECNJAbjGBAECIJAOjGBMALAICGWJAVjGBALCoBJAKCEWJHYAOjGBAYAVjGIALAICFJHICbZCGWJAOjGBALCoBJAKCFJCbZCEWJHYAbjGBAYAOjGIALAIAmJCbZHICGWJAbjGBALCoBJAKCGJCbZHKCEWJHOAVjGBAOAbjGIAKCFJRKAIATJRIAtATJRVSFMAVCBAM2BBHYyHTAOC/+F6HPJROAYCbZRtGXGXAYCIrHmQBAOCFJRbSFMAORbALAIAmlCbZCGWJ8oGBROMGXGXAtQBAbCFJRVSFMAbRVALAIAYlCbZCGWJ8oGBRbMGXGXAP9FQBAMCFJRYSFMAM1BFHYCgFZRTGXGXAYCa9MQBAMCGJRYSFMAM1BGHYCgBZCOWATCgBZqRTGXAYCa9MQBAMCEJRYSFMAM1BEHYCgBZCfWATqRTGXAYCa9MQBAMCIJRYSFMAM1BIHYCgBZCdWATqRTGXAYCa9MQBAMCLJRYSFMAMCKJRYAM2BLC8cWATqRTMATCFrCBATCFZl9zAQJHQRTMGXGXAmCb6QBAYRPSFMAY1BBHMCgFZROGXGXAMCa9MQBAYCFJRPSFMAY1BFHMCgBZCOWAOCgBZqROGXAMCa9MQBAYCGJRPSFMAY1BGHMCgBZCfWAOqROGXAMCa9MQBAYCEJRPSFMAY1BEHMCgBZCdWAOqROGXAMCa9MQBAYCIJRPSFMAYCLJRPAY2BIC8cWAOqROMAOCFrCBAOCFZl9zAQJHQROMGXGXAtCb6QBAPRMSFMAP1BBHMCgFZRbGXGXAMCa9MQBAPCFJRMSFMAP1BFHMCgBZCOWAbCgBZqRbGXAMCa9MQBAPCGJRMSFMAP1BGHMCgBZCfWAbqRbGXAMCa9MQBAPCEJRMSFMAP1BEHMCgBZCdWAbqRbGXAMCa9MQBAPCIJRMSFMAPCLJRMAP2BIC8cWAbqRbMAbCFrCBAbCFZl9zAQJHQRbMGXGXAGCG9HQBABAT87FBABCIJAb87FBABCGJAO87FBSFMAEATjGBAECNJAbjGBAECIJAOjGBMALCoBJAKCEWJHYAOjGBAYATjGIA
3914LAICGWJATjGBALCoBJAKCFJCbZCEWJHYAbjGBAYAOjGIALAICFJHICbZCGWJAOjGBALCoBJAKCGJCbZCEWJHOATjGBAOAbjGIALAIAm9FAmCb6qJHICbZCGWJAbjGBAIAt9FAtCb6qJRIAKCEJRKMANCFJRNABCKJRBAECSJREAKCbZRKAICbZRIAfCEJHfAF9JQBMMCBC99AMAc6yRKMALCoFJ8kUUUUBAKM/tIFGa8jUUUUBCTlRLC9+RKGXAFCLJAI9LQBCaRKAE2BBC/+FZC/QF9HQBALhB83ENAECFJRKAEAIJC98JREGXAF9FQBGXAGCG6QBEXGXAKAE9JQBC9+bMAK1BBHGCgFZRIGXGXAGCa9MQBAKCFJRKSFMAK1BFHGCgBZCOWAICgBZqRIGXAGCa9MQBAKCGJRKSFMAK1BGHGCgBZCfWAIqRIGXAGCa9MQBAKCEJRKSFMAK1BEHGCgBZCdWAIqRIGXAGCa9MQBAKCIJRKSFMAK2BIC8cWAIqRIAKCLJRKMALCNJAICFZCGWqHGAICGrCBAICFrCFZl9zAG8oGBJHIjGBABAIjGBABCIJRBAFCaJHFQBSGMMEXGXAKAE9JQBC9+bMAK1BBHGCgFZRIGXGXAGCa9MQBAKCFJRKSFMAK1BFHGCgBZCOWAICgBZqRIGXAGCa9MQBAKCGJRKSFMAK1BGHGCgBZCfWAIqRIGXAGCa9MQBAKCEJRKSFMAK1BEHGCgBZCdWAIqRIGXAGCa9MQBAKCIJRKSFMAK2BIC8cWAIqRIAKCLJRKMABAICGrCBAICFrCFZl9zALCNJAICFZCGWqHI8oGBJHG87FBAIAGjGBABCGJRBAFCaJHFQBMMCBC99AKAE6yRKMAKM+lLKFaF99GaG99FaG99GXGXAGCI9HQBAF9FQFEXGXGX9DBBB8/9DBBB+/ABCGJHG1BB+yAB1BBHE+yHI+L+TABCFJHL1BBHK+yHO+L+THN9DBBBB9gHVyAN9DBB/+hANAN+U9DBBBBANAVyHcAc+MHMAECa3yAI+SHIAI+UAcAMAKCa3yAO+SHcAc+U+S+S+R+VHO+U+SHN+L9DBBB9P9d9FQBAN+oRESFMCUUUU94REMAGAE86BBGXGX9DBBB8/9DBBB+/Ac9DBBBB9gyAcAO+U+SHN+L9DBBB9P9d9FQBAN+oRGSFMCUUUU94RGMALAG86BBGXGX9DBBB8/9DBBB+/AI9DBBBB9gyAIAO+U+SHN+L9DBBB9P9d9FQBAN+oRGSFMCUUUU94RGMABAG86BBABCIJRBAFCaJHFQBSGMMAF9FQBEXGXGX9DBBB8/9DBBB+/ABCIJHG8uFB+yAB8uFBHE+yHI+L+TABCGJHL8uFBHK+yHO+L+THN9DBBBB9gHVyAN9DB/+g6ANAN+U9DBBBBANAVyHcAc+MHMAECa3yAI+SHIAI+UAcAMAKCa3yAO+SHcAc+U+S+S+R+VHO+U+SHN+L9DBBB9P9d9FQBAN+oRESFMCUUUU94REMAGAE87FBGXGX9DBBB8/9DBBB+/Ac9DBBBB9gyAcAO+U+SHN+L9DBBB9P9d9FQBAN+oRGSFMCUUUU94RGMALAG87FBGXGX9DBBB8/9DBBB+/AI9DBBBB9gyAIAO+U+SHN+L9DBBB9P9d9FQBAN+oRGSFMCUUUU94RGMABAG87FBABCNJRBAFCaJHFQBMMM/SEIEaE99EaF99GXAF9FQBCBREABRIEXGXGX9D/zI818/AICKJ8uFBHLCEq+y+VHKAI8uFB+y+UHO9DB/+g6+U9DBBB8/9DBBB+/AO9DBBBB9gy+SHN+L9DBBB9P9d9FQBAN+oRVSFMCUUUU94RVMAICIJ8uFBRcAICGJ8uFBRMABALCFJCEZAEqCFWJAV87FBGXGXAKAM+y+UHN9DB/+g6+U9DBBB8/9DBBB+/AN9DBBBB9gy+SHS+L9DBBB9P9d9FQBAS+oRMSFMCUUUU94RMMABALCGJCEZAEqCFWJAM87FBGXGXAKAc+y+UHK9DB/+g6+U9DBBB8/9DBBB+/AK9DBBBB9gy+SHS+L9DBBB9P9d9FQBAS+oRcSFMCUUUU94RcMABALCaJCEZAEqCFWJAc87FBGXGX9DBBU8/AOAO+U+TANAN+U+TAKAK+U+THO9DBBBBAO9DBBBB9gy+R9DB/+g6+U9DBBB8/+SHO+L9DBBB9P9d9FQBAO+oRcSFMCUUUU94RcMABALCEZAEqCFWJAc87FBAICNJRIAECIJREAFCaJHFQBMMM9JBGXAGCGrAF9sHF9FQBEXABAB8oGBHGCNWCN91+yAGCi91CnWCUUU/8EJ+++U84GBABCIJRBAFCaJHFQBMMM9TFEaCBCB8oGUkUUBHFABCEJC98ZJHBjGUkUUBGXGXAB8/BCTWHGuQBCaREABAGlCggEJCTrXBCa6QFMAFREMAEM/lFFFaGXGXAFABqCEZ9FQBABRESFMGXGXAGCT9PQBABRESFMABREEXAEAF8oGBjGBAECIJAFCIJ8oGBjGBAECNJAFCNJ8oGBjGBAECSJAFCSJ8oGBjGBAECTJREAFCTJRFAGC9wJHGCb9LQBMMAGCI9JQBEXAEAF8oGBjGBAFCIJRFAECIJREAGC98JHGCE9LQBMMGXAG9FQBEXAEAF2BB86BBAECFJREAFCFJRFAGCaJHGQBMMABMoFFGaGXGXABCEZ9FQBABRESFMAFCgFZC+BwsN9sRIGXGXAGCT9PQBABRESFMABREEXAEAIjGBAECSJAIjGBAECNJAIjGBAECIJAIjGBAECTJREAGC9wJHGCb9LQBMMAGCI9JQBEXAEAIjGBAECIJREAGC98JHGCE9LQBMMGXAG9FQBEXAEAF86BBAECFJREAGCaJHGQBMMABMMMFBCUNMIT9kBB",e="B9h9z9tFBBBFiI9gBB9gLaaaaaFa9gEaaaB9gFaFaEMcBBFBFFGGGEILF9wFFFLEFBFKNFaFCx/aFMO/LFVK9tv9t9vq95GBt9f9f939h9z9t9f9j9h9s9s9f9jW9vq9zBBp9tv9z9o9v9wW9f9kv9j9v9kv9WvqWv94h919m9mvqBG8Z9tv9z9o9v9wW9f9kv9j9v9kv9J9u9kv94h919m9mvqBIy9tv9z9o9v9wW9f9kv9j9v9kv9J9u9kv949TvZ91v9u9jvBLn9tv9z9o9v9wW9f9kv9j9v9kv69p9sWvq9P9jWBKi9tv9z9o9v9wW9f9kv9j9v9kv69p9sWvq9R919hWBOn9tv9z9o9v9wW9f9kv9j9v9kv69p9sWvq9F949wBNI9z9iqlBVc+N9IcIBTEM9+FLa8jUUUUBCTlRBCBRFEXCBRGCBREEXABCNJAGJAECUaAFAGrCFZHIy86BBAEAIJREAGCFJHGCN9HQBMAFCx+YUUBJAE86BBAFCEWCxkUUBJAB8pEN83EBAFCFJHFCUG9HQBMMk8lLbaE97F9+FaL978jUUUUBCU/KBlHL8kUUUUBC9+RKGXAGCFJAI9LQBCaRKAE2BBC+gF9HQBALAEAIJHOAGlAG/8cBBCUoBAG9uC/wgBZHKCUGAKCUG9JyRNAECFJRKCBRVGXEXAVAF9PQFANAFAVlAVANJAF9JyRcGXGXAG9FQBAcCbJHIC9wZHMCE9sRSAMCFWRQAICIrCEJCGrRfCBRbEXAKRTCBRtGXEXGXAOATlAf9PQBCBRKSLMALCU/CBJAtAM9sJRmATAfJRKCBREGXAMCoB9JQBAOAKlC/gB9JQBCBRIEXAmAIJREGXGXGXGXGXATAICKrJ2BBHYCEZfIBFGEBMAECBDtDMIBSEMAEAKDBBIAKDBBBHPCID+MFAPDQBTFtGmEYIPLdKeOnHPCGD+MFAPDQBTFtGmEYIPLdKeOnC0+G+MiDtD9OHdCEDbD8jHPAPDQBFGENVcMILKOSQfbHeD8dBh+BsxoxoUwN0AeD8dFhxoUwkwk+gUa0sHnhTkAnsHnhNkAnsHn7CgFZHiCEWCxkUUBJDBEBAiCx+YUUBJDBBBHeAeDQBBBBBBBBBBBBBBBBAnhAk7CgFZHiCEWCxkUUBJDBEBD9uDQBFGEILKOTtmYPdenDfAdAPD9SDMIBAKCIJAeDeBJAiCx+YUUBJ2BBJRKSGMAEAKDBBNAKDBBBHPCID+MFAPDQBTFtGmEYIPLdKeOnC+P+e+8/4BDtD9OHdCbDbD8jHPAPDQBFGENVcMILKOSQfbHeD8dBh+BsxoxoUwN0AeD8dFhxoUwkwk+gUa0sHnhTkAnsHnhNkAnsHn7CgFZHiCEWCxkUUBJDBEBAiCx+YUUBJDBBBHeAeDQBBBBBBBBBBBBBBBBAnhAk7CgFZHiCEWCxkUUBJDBEBD9uDQBFGEILKOTtmYPdenDfAdAPD9SDMIBAKCNJAeDeBJAiCx+YUUBJ2BBJRKSFMAEAKDBBBDMIBAKCTJRKMGXGXGXGXGXAYCGrCEZfIBFGEBMAECBDtDMITSEMAEAKDBBIAKDBBBHPCID+MFAPDQBTFtGmEYIPLdKeOnHPCGD+MFAPDQBTFtGmEYIPLdKeOnC0+G+MiDtD9OHdCEDbD8jHPAPDQBFGENVcMILKOSQfbHeD8dBh+BsxoxoUwN0AeD8dFhxoUwkwk+gUa0sHnhTkAnsHnhNkAnsHn7CgFZHiCEWCxkUUBJDBEBAiCx+YUUBJDBBBHeAeDQBBBBBBBBBBBBBBBBAnhAk7CgFZHiCEWCxkUUBJDBEBD9uDQBFGEILKOTtmYPdenDfAdAPD9SDMITAKCIJAeDeBJAiCx+YUUBJ2BBJRKSGMAEAKDBBNAKDBBBHPCID+MFAPDQBTFtGmEYIPLdKeOnC+P+e+8/4BDtD9OHdCbDbD8jHPAPDQBFGENVcMILKOSQfbHeD8dBh+BsxoxoUwN0AeD8dFhxoUwkwk+gUa0sHnhTkAnsHnhNkAnsHn7CgFZHiCEWCxkUUBJDBEBAiCx+YUUBJDBBBHeAeDQBBBBBBBBBBBBBBBBAnhAk7CgFZHiCEWCxkUUBJDBEBD9uDQBFGEILKOTtmYPdenDfAdAPD9SDMITAKCNJAeDeBJAiCx+YUUBJ2BBJRKSFMAEAKDBBBDMITAKCTJRKMGXGXGXGXGXAYCIrCEZfIBFGEBMAECBDtDMIASEMAEAKDBBIAKDBBBHPCID+MFAPDQBTFtGmEYIPLdKeOnHPCGD+MFAPDQBTFtGmEYIPLdKeOnC0+G+MiDtD9OHdCEDbD8jHPAPDQBFGENVcMILKOSQfbHeD8dBh+BsxoxoUwN0AeD8dFhxoUwkwk+gUa0sHnhTkAnsHnhNkAnsHn7CgFZHiCEWCxkUUBJDBEBAiCx+YUUBJDBBBHeAeDQBBBBBBBBBBBBBBBBAnhAk7CgFZHiCEWCxkUUBJDBEBD9uDQBFGEILKOTtmYPdenDfAdAPD9SDMIAAKCIJAeDeBJAiCx+YUUBJ2BBJRKSGMAEAKDBBNAKDBBBHPCID+MFAPDQBTFtGmEYIPLdKeOnC+P+e+8/4BDtD9OHdCbDbD8jHPAPDQBFGENVcMILKOSQfbHeD8dBh+BsxoxoUwN0AeD8dFhxoUwkwk+gUa0sHnhTkAnsHnhNkAnsHn7CgFZHiCEWCxkUUBJDBEBAiCx+YUUBJDBBBHeAeDQBBBBBBBBBBBBBBBBAnhAk7CgFZHiCEWCxkUUBJDBEBD9uDQBFGEILKOTtmYPdenDfAdAPD9SDMIAAKCNJAeDeBJAiCx+YUUBJ2BBJRKSFMAEAKDBBBDMIAAKCTJRKMGXGXGXGXGXAYCKrfIBFGEBMAECBDtDMI8wSEMAEAKDBBIAKDBBBHPCID+MFAPDQBTFtGmEYIPLdKeOnHPCGD+MFAPDQBTFtGmEYIPLdKeOnC0+G+MiDtD9OHdCEDbD8jHPAPDQBFGENVcMILKOSQfbHeD8dBh+BsxoxoUwN0AeD8dFhxoUwkwk+gUa0sHnhTkAnsHnhNkAnsHn7CgFZHYCEWCxkUUBJDBEBAYCx+YUUBJDBBBHeAeDQBBBBBBBBBBBBBBBBAnhAk7CgFZHYCEWCxkUUBJDBEBD9uDQBFGEILKOTtmYPdenDfAdAPD9SDMI8wAKCIJAeDeBJAYCx+YUUBJ2BBJRKSGMAEAKDBBNAKDBBBHPCID+MFAPDQBTFtGmEYIPLdKeOnC+P+e+8/4BDtD9OHdCbDbD8jHPAPDQBFGENVcMILKOSQfbHeD8dBh+BsxoxoUwN0AeD8dFhxoUwkwk+gUa0sHnhTkAnsHnhNkAnsHn7CgFZHYCEWCxkUUBJDBEBAYCx+YUUBJDBBBHeAeDQBBBBBBBBBBBBBBBBAnhAk7CgFZHYCEWCxkUUBJDBEBD9uDQBFGEILKOTtmYPdenDfAdAPD9SDMI8wAKCNJAeDeBJAYCx+YUUBJ2BBJRKSFMAEAKDBBBDMI8wAKCTJRKMAICoBJREAICUFJAM9LQFAERIAOAKlC/fB9LQBMMGXAEAM9PQBAECErRIEXGXAOAKlCi9PQBCBRKSOMAmAEJRYGXGXGXGXGXATAECKrJ2BBAICKZrCEZfIBFGEBMAYCBDtDMIBSEMAYAKDBBIAKDBBBHPCID+MFAPDQBTFtGmEYIPLdKeOnHPCGD+MFAPDQBTFtGmEYIPLdKeOnC0+G+MiDtD9OHdCEDbD8jHPAPDQBFGENVcMILKOSQfbHeD8dBh+BsxoxoUwN0AeD8dFhxoUwkwk+gUa0sHnhTkAnsHnhNkAnsHn7CgFZHiCEWCxkUUBJDBEBAiCx+YUUBJDBBBHeAeDQBBBBBBBBBBBBBBBBAnhAk7CgFZHiCEWCxkUUBJDBEBD9uDQBFGEILKOTtmYPdenDfAdAPD9SDMIBAKCIJAeDeBJAiCx+YUUBJ2BBJRKSGMAYAKDBBNAKDBBBHPCID+MFAPDQBTFtGmEYIPLdKeOnC+P+e+8/4BDtD9OHdCbDbD8jHPAPDQBFGENVcMILKOSQfbHeD8dBh+BsxoxoUwN0AeD8dFhxoUwkwk+gUa0sHnhTkAnsHnhNkAnsHn7CgFZHiCEWCxkUUBJDBEBAiCx+YUUBJDBBBHeAeDQBBBBBBBBBBBBBBBBAnhAk7CgFZHiCEWCxkUUBJDBEBD9uDQBFGEILKOTtmYPdenDfAdAPD9SDMIBAKCNJAeDeBJAiCx+YUUBJ2BBJRKSFMAYAKDBBBDMIBAKCTJRKMAICGJRIAECTJHEAM9JQBMMG
3914XAK9FQBAKRTAtCFJHtCI6QGSFMMCBRKSEMGXAM9FQBALCUGJAbJREALAbJDBGBReCBRYEXAEALCU/CBJAYJHIDBIBHdCFD9tAdCFDbHPD9OD9hD9RHdAIAMJDBIBH8ZCFD9tA8ZAPD9OD9hD9RH8ZDQBTFtGmEYIPLdKeOnHpAIAQJDBIBHyCFD9tAyAPD9OD9hD9RHyAIASJDBIBH8cCFD9tA8cAPD9OD9hD9RH8cDQBTFtGmEYIPLdKeOnH8dDQBFTtGEmYILPdKOenHPAPDQBFGEBFGEBFGEBFGEAeD9uHeDyBjGBAEAGJHIAeAPAPDQILKOILKOILKOILKOD9uHeDyBjGBAIAGJHIAeAPAPDQNVcMNVcMNVcMNVcMD9uHeDyBjGBAIAGJHIAeAPAPDQSQfbSQfbSQfbSQfbD9uHeDyBjGBAIAGJHIAeApA8dDQNVi8ZcMpySQ8c8dfb8e8fHPAPDQBFGEBFGEBFGEBFGED9uHeDyBjGBAIAGJHIAeAPAPDQILKOILKOILKOILKOD9uHeDyBjGBAIAGJHIAeAPAPDQNVcMNVcMNVcMNVcMD9uHeDyBjGBAIAGJHIAeAPAPDQSQfbSQfbSQfbSQfbD9uHeDyBjGBAIAGJHIAeAdA8ZDQNiV8ZcpMyS8cQ8df8eb8fHdAyA8cDQNiV8ZcpMyS8cQ8df8eb8fH8ZDQBFTtGEmYILPdKOenHPAPDQBFGEBFGEBFGEBFGED9uHeDyBjGBAIAGJHIAeAPAPDQILKOILKOILKOILKOD9uHeDyBjGBAIAGJHIAeAPAPDQNVcMNVcMNVcMNVcMD9uHeDyBjGBAIAGJHIAeAPAPDQSQfbSQfbSQfbSQfbD9uHeDyBjGBAIAGJHIAeAdA8ZDQNVi8ZcMpySQ8c8dfb8e8fHPAPDQBFGEBFGEBFGEBFGED9uHeDyBjGBAIAGJHIAeAPAPDQILKOILKOILKOILKOD9uHeDyBjGBAIAGJHIAeAPAPDQNVcMNVcMNVcMNVcMD9uHeDyBjGBAIAGJHIAeAPAPDQSQfbSQfbSQfbSQfbD9uHeDyBjGBAIAGJREAYCTJHYAM9JQBMMAbCIJHbAG9JQBMMABAVAG9sJALCUGJAcAG9s/8cBBALALCUGJAcCaJAG9sJAG/8cBBMAcCBAKyAVJRVAKQBMC9+RKSFMCBC99AOAKlAGCAAGCA9Ly6yRKMALCU/KBJ8kUUUUBAKMNBT+BUUUBM+KmFTa8jUUUUBCoFlHL8kUUUUBC9+RKGXAFCE9uHOCtJAI9LQBCaRKAE2BBHNC/wFZC/gF9HQBANCbZHVCF9LQBALCoBJCgFCUF/8MBALC84Jha83EBALC8wJha83EBALC8oJha83EBALCAJha83EBALCiJha83EBALCTJha83EBALha83ENALha83EBAEAIJC9wJRcAECFJHNAOJRMGXAF9FQBCQCbAVCF6yRSABRECBRVCBRQCBRfCBRICBRKEXGXAMAcuQBC9+RKSEMGXGXAN2BBHOC/vF9LQBALCoBJAOCIrCa9zAKJCbZCEWJHb8oGIRTAb8oGBRtGXAOCbZHbAS9PQBALAOCa9zAIJCbZCGWJ8oGBAVAbyROAb9FRbGXGXAGCG9HQBABAt87FBABCIJAO87FBABCGJAT87FBSFMAEAtjGBAECNJAOjGBAECIJATjGBMAVAbJRVALCoBJAKCEWJHmAOjGBAmATjGIALAICGWJAOjGBALCoBJAKCFJCbZHKCEWJHTAtjGBATAOjGIAIAbJRIAKCFJRKSGMGXGXAbCb6QBAQAbJAbC989zJCFJRQSFMAM1BBHbCgFZROGXGXAbCa9MQBAMCFJRMSFMAM1BFHbCgBZCOWAOCgBZqROGXAbCa9MQBAMCGJRMSFMAM1BGHbCgBZCfWAOqROGXAbCa9MQBAMCEJRMSFMAM1BEHbCgBZCdWAOqROGXAbCa9MQBAMCIJRMSFMAM2BIC8cWAOqROAMCLJRMMAOCFrCBAOCFZl9zAQJRQMGXGXAGCG9HQBABAt87FBABCIJAQ87FBABCGJAT87FBSFMAEAtjGBAECNJAQjGBAECIJATjGBMALCoBJAKCEWJHOAQjGBAOATjGIALAICGWJAQjGBALCoBJAKCFJCbZHKCEWJHOAtjGBAOAQjGIAICFJRIAKCFJRKSFMGXAOCDF9LQBALAIAcAOCbZJ2BBHbCIrHTlCbZCGWJ8oGBAVCFJHtATyROALAIAblCbZCGWJ8oGBAtAT9FHmJHtAbCbZHTyRbAT9FRTGXGXAGCG9HQBABAV87FBABCIJAb87FBABCGJAO87FBSFMAEAVjGBAECNJAbjGBAECIJAOjGBMALAICGWJAVjGBALCoBJAKCEWJHYAOjGBAYAVjGIALAICFJHICbZCGWJAOjGBALCoBJAKCFJCbZCEWJHYAbjGBAYAOjGIALAIAmJCbZHICGWJAbjGBALCoBJAKCGJCbZHKCEWJHOAVjGBAOAbjGIAKCFJRKAIATJRIAtATJRVSFMAVCBAM2BBHYyHTAOC/+F6HPJROAYCbZRtGXGXAYCIrHmQBAOCFJRbSFMAORbALAIAmlCbZCGWJ8oGBROMGXGXAtQBAbCFJRVSFMAbRVALAIAYlCbZCGWJ8oGBRbMGXGXAP9FQBAMCFJRYSFMAM1BFHYCgFZRTGXGXAYCa9MQBAMCGJRYSFMAM1BGHYCgBZCOWATCgBZqRTGXAYCa9MQBAMCEJRYSFMAM1BEHYCgBZCfWATqRTGXAYCa9MQBAMCIJRYSFMAM1BIHYCgBZCdWATqRTGXAYCa9MQBAMCLJRYSFMAMCKJRYAM2BLC8cWATqRTMATCFrCBATCFZl9zAQJHQRTMGXGXAmCb6QBAYRPSFMAY1BBHMCgFZROGXGXAMCa9MQBAYCFJRPSFMAY1BFHMCgBZCOWAOCgBZqROGXAMCa9MQBAYCGJRPSFMAY1BGHMCgBZCfWAOqROGXAMCa9MQBAYCEJRPSFMAY1BEHMCgBZCdWAOqROGXAMCa9MQBAYCIJRPSFMAYCLJRPAY2BIC8cWAOqROMAOCFrCBAOCFZl9zAQJHQROMGXGXAtCb6QBAPRMSFMAP1BBHMCgFZRbGXGXAMCa9MQBAPCFJRMSFMAP1BFHMCgBZCOWAbCgBZqRbGXAMCa9MQBAPCGJRMSFMAP1BGHMCgBZCfWAbqRbGXAMCa9MQBAPCEJRMSFMAP1BEHMCgBZCdWAbqRbGXAMCa9MQBAPCIJRMSFMAPCLJRMAP2BIC8cWAbqRbMAbCFrCBAbCFZl9zAQJHQRbMGXGXAGCG9HQBABAT87FBABCIJAb87FBABCGJAO87FBSFMAEATjGBAECNJAbjGBAECIJAOjGBMALCoBJAKCEWJHYAOjGBAYATjGIALAICGWJATjGBALCoBJAKCFJCbZCEWJHYAbjGBAYAOjGIALAICFJHICbZCGWJAOjGBALCoBJAKCGJCbZCEWJHOATjGBAOAbjGIALAIAm9FAmCb6qJHICbZCGWJAbjGBAIAt9FAtCb6qJRIAKCEJRKMANCFJRNABCKJRBAECSJREAKCbZRKAICbZRIAfCEJHfAF9JQBMMCBC99AMAc6yRKMALCoFJ8kUUUUBAKM/tIFGa8jUUUUBCTlRLC9+RKGXAFCLJAI9LQBCaRKAE2BBC/+FZC/QF9HQBALhB83ENAECFJRKAEAIJC98JREGXAF9FQBGXAGCG6QBEXGXAKAE9JQBC9+bMAK1BBHGCgFZRIGXGXAGCa9MQBAKCFJRKSFMAK1BFHGCgBZCOWAICgBZqRIGXAGCa9MQBAKCGJRKSFMAK1BGHGCgBZCfWAIqRIGXAGCa9MQBAKCEJRKSFMAK1BEHGCgBZCdWAIqRIGXAGCa9MQBAKCIJRKSFMAK2BIC8cWAIqRIAKCLJRKMALCNJAICFZCGWqHGAICGrCBAICFrCFZl9zAG8oGBJHIjGBABAIjGBABCIJRBAFCaJHFQBSGMMEXGXAKAE9JQBC9+bMAK1BBHGCgFZRIGXGXAGCa9MQBAKCFJRKSFMAK1BFHGCgBZCOWAICgBZqRIGXAGCa9MQBAKCGJRKSFMAK1BGHGCgBZCfWAIqRIGXAGCa9MQBAKCEJRKSFMAK1BEHGCgBZCdWAIqRIGXAGCa9MQBAKCIJRKSFMAK2BIC8cWAIqRIAKCLJRKMABAICGrCBAICFrCFZl9zALCNJAICFZCGWqHI8oGBJHG87FBAIAGjGBABCGJRBAFCaJHFQBMMCBC99AKAE6yRKMAKM/dLEK97FaF97GXGXAGCI9HQBAF9FQFCBRGEXABABDBBBHECiD+rFCiD+sFD/6FHIAECND+rFCiD+sFD/6FAID/gFAECTD+rFCiD+sFD/6FHLD/gFD/kFD/lFHKCBDtD+2FHOAICUUUU94DtHND9OD9RD/kFHI9DBB/+hDYAIAID/mFAKAKD/mFALAOALAND9OD9RD/kFHIAID/mFD/kFD/kFD/jFD/nFHLD/mF9DBBX9LDYHOD/kFCgFDtD9OAECUUU94DtD9OD9QAIALD/mFAOD/kFCND+rFCU/+EDtD9OD9QAKALD/mFAOD/kFCTD+rFCUU/8ODtD9OD9QDMBBABCTJRBAGCIJHGAF9JQBSGMMAF9FQBCBRGEXABCTJHVAVDBBBHECBDtHOCUU98D8cFCUU98D8cEHND9OABDBBBHKAEDQILKOSQfbPden8c8d8e8fCggFDtD9OD/6FAKAEDQBFGENVcMTtmYi8ZpyHECTD+sFD/6FHID/gFAECTD+rFCTD+sFD/6FHLD/gFD/kFD/lFHE9DB/+g6DYALAEAOD+2FHOALCUUUU94DtHcD9OD9RD/kFHLALD/mFAEAED/mFAIAOAIAcD9OD9RD/kFHEAED/mFD/kFD/kFD/jFD/nFHID/mF9DBBX9LDYHOD/kFCTD+rFALAID/mFAOD/kFCggEDtD9OD9QHLAEAID/mFAOD/kFCaDbCBDnGCBDnECBDnKCBDnOCBDncCBDnMCBDnfCBDnbD9OHEDQNVi8ZcMpySQ8c8dfb8e8fD9QDMBBABAKAND9OALAEDQBFTtGEmYILPdKOenD9QDMBBABCAJRBAGCIJHGAF9JQBMMM/hEIGaF97FaL978jUUUUBCTlREGXAF9FQBCBRIEXAEABDBBBHLABCTJHKDBBBHODQILKOSQfbPden8c8d8e8fHNCTD+sFHVCID+rFDMIBAB9DBBU8/DY9D/zI818/DYAVCEDtD9QD/6FD/nFHVALAODQBFGENVcMTtmYi8ZpyHLCTD+rFCTD+sFD/6FD/mFHOAOD/mFAVALCTD+sFD/6FD/mFHcAcD/mFAVANCTD+rFCTD+sFD/6FD/mFHNAND/mFD/kFD/kFD/lFCBDtD+4FD/jF9DB/+g6DYHVD/mF9DBBX9LDYHLD/kFCggEDtHMD9OAcAVD/mFALD/kFCTD+rFD9QHcANAVD/mFALD/kFCTD+rFAOAVD/mFALD/kFAMD9OD9QHVDQBFTtGEmYILPdKOenHLD8dBAEDBIBDyB+t+J83EBABCNJALD8dFAEDBIBDyF+t+J83EBAKAcAVDQNVi8ZcMpySQ8c8dfb8e8fHVD8dBAEDBIBDyG+t+J83EBABCiJAVD8dFAEDBIBDyE+t+J83EBABCAJRBAICIJHIAF9JQBMMM9jFF97GXAGCGrAF9sHG9FQBCBRFEXABABDBBBHECND+rFCND+sFD/6FAECiD+sFCnD+rFCUUU/8EDtD+uFD/mFDMBBABCTJRBAFCIJHFAG9JQBMMM9TFEaCBCB8oGUkUUBHFABCEJC98ZJHBjGUkUUBGXGXAB8/BCTWHGuQBCaREABAGlCggEJCTrXBCa6QFMAFREMAEMMMFBCUNMIT9tBB",t=new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,3,2,0,0,5,3,1,0,1,12,1,0,10,22,2,12,0,65,0,65,0,65,0,252,10,0,0,11,7,0,65,0,253,15,26,11]),n=new Uint8Array([32,0,65,253,3,1,2,34,4,106,6,5,11,8,7,20,13,33,12,16,128,9,116,64,19,113,127,15,10,21,22,14,255,66,24,54,136,107,18,23,192,26,114,118,132,17,77,101,130,144,27,87,131,44,45,74,156,154,70,167]);if(typeof WebAssembly!="object")return{supported:!1};let i=r;WebAssembly.validate(t)&&(i=e);let s;const o=WebAssembly.instantiate(l(i),{}).then(m=>{s=m.instance,s.exports.__wasm_call_ctors()});function l(m){const y=new Uint8Array(m.length);for(let S=0;S<m.length;++S){const E=m.charCodeAt(S);y[S]=E>96?E-71:E>64?E-65:E>47?E+4:E>46?63:62}let v=0;for(let S=0;S<m.length;++S)y[v++]=y[S]<60?n[y[S]]:(y[S]-60)*64+y[++S];return y.buffer.slice(0,v)}function u(m,y,v,S,E,A){const M=s.exports.sbrk,T=v+3&-4,I=M(T*S),P=M(E.length),k=new Uint8Array(s.exports.memory.buffer);k.set(E,P);const O=m(I,v,S,P,E.length);if(O===0&&A&&A(I,T,S),y.set(k.subarray(I,I+v*S)),M(I-M(0)),O!==0)throw new Error(`Malformed buffer data: ${O}`)}const d={0:"",1:"meshopt_decodeFilterOct",2:"meshopt_decodeFilterQuat",3:"meshopt_decodeFilterExp",NONE:"",OCTAHEDRAL:"meshopt_decodeFilterOct",QUATERNION:"meshopt_decodeFilterQuat",EXPONENTIAL:"meshopt_decodeFilterExp"},p={0:"meshopt_decodeVertexBuffer",1:"meshopt_decodeIndexBuffer",2:"meshopt_decodeIndexSequence",ATTRIBUTES:"meshopt_decodeVertexBuffer",TRIANGLES:"meshopt_decodeIndexBuffer",INDICES:"meshopt_decodeIndexSequence"};return cg={ready:o,supported:!0,decodeVertexBuffer(m,y,v,S,E){u(s.exports.meshopt_decodeVertexBuffer,m,y,v,S,s.exports[d[E]])},decodeIndexBuffer(m,y,v,S){u(s.exports.meshopt_decodeIndexBuffer,m,y,v,S)},decodeIndexSequence(m,y,v,S){u(s.exports.meshopt_decodeIndexSequence,m,y,v,S)},decodeGltfBuffer(m,y,v,S,E,A){u(s.exports[p[E]],m,y,v,S,s.exports[d[A]])}},cg};
3914let ug=null,RT="https://www.gstatic.com/draco/versioned/decoders/1.5.5/";function BT(r=!0,e=!0,t){return n=>{t&&t(n),r&&(ug||(ug=new _7),ug.setDecoderPath(typeof r=="string"?r:RT),n.setDRACOLoader(ug)),e&&n.setMeshoptDecoder(typeof d_=="function"?d_():d_)}}const Vu=(r,e,t,n)=>pm(LM,r,BT(e,t,n));Vu.preload=(r,e,t,n)=>pm.preload(LM,r,BT(e,t,n));Vu.clear=r=>pm.clear(LM,r);Vu.setDecoderPath=r=>{RT=r};function M7(r,e,t){const n=Id(y=>y.size),i=Id(y=>y.viewport),s=typeof r=="number"?r:n.width*i.dpr,o=n.height*i.dpr,l=(typeof r=="number"?t:r)||{},{samples:u=0,depth:d,...p}=l,m=z.useMemo(()=>{const y=new Hs(s,o,{minFilter:Zn,magFilter:Zn,type:ju,...p});return d&&(y.depthTexture=new Ky(s,o,Di)),y.samples=u,y},[]);return z.useLayoutEffect(()=>{m.setSize(s,o),u&&(m.samples=u)},[u,m,s,o]),z.useEffect(()=>()=>m.dispose(),[]),m}const S7=r=>typeof r=="function",SA=z.forwardRef(({envMap:r,resolution:e=256,frames:t=1/0,makeDefault:n,children:i,...s},o)=>{const l=Id(({set:A})=>A),u=Id(({camera:A})=>A),d=Id(({size:A})=>A),p=z.useRef(null);z.useImperativeHandle(o,()=>p.current,[]);const m=z.useRef(null),y=M7(e);z.useLayoutEffect(()=>{s.manual||(p.current.aspect=d.width/d.height)},[d,s]),z.useLayoutEffect(()=>{p.current.updateProjectionMatrix()});let v=0,S=null;const E=S7(i);return OM(A=>{E&&(t===1/0||v<t)&&(m.current.visible=!1,A.gl.setRenderTarget(y),S=A.scene.background,r&&(A.scene.background=r),A.gl.render(A.scene,p.current),A.scene.background=S,A.gl.setRenderTarget(null),m.current.visible=!0,v++)}),z.useLayoutEffect(()=>{if(n){const A=u;return l(()=>({camera:p.current})),()=>l(()=>({camera:A}))}},[p,n,l]),z.createElement(z.Fragment,null,z.createElement("perspectiveCamera",ox({ref:p},s),!E&&i),z.createElement("group",{ref:m},E&&i(y.texture)))});var f_={exports:{}},p_,wA;function w7(){if(wA)return p_;wA=1;var r="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";return p_=r,p_}var m_,AA;function A7(){if(AA)return m_;AA=1;var r=w7();function e(){}function t(){}return t.resetWarningCache=e,m_=function(){function n(o,l,u,d,p,m){if(m!==r){var y=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw y.name="Invariant Violation",y}}n.isRequired=n;function i(){return n}var s={array:n,bigint:n,bool:n,func:n,number:n,object:n,string:n,symbol:n,any:n,arrayOf:i,element:n,elementType:n,instanceOf:i,node:n,objectOf:i,oneOf:i,oneOfType:i,shape:i,exact:i,checkPropTypes:t,resetWarningCache:e};return s.PropTypes=s,s},m_}var EA;function E7(){return EA||(EA=1,f_.exports=A7()()),f_.exports}var b7=E7();const It=oc(b7);var NM=ab();const C7=oc(NM);function bA(r,e){if(typeof r=="function")return r(e);r!=null&&(r.current=e)}function OT(...r){return e=>{let t=!1;const n=r.map(i=>{const s=bA(i,e);return!t&&typeof s=="function"&&(t=!0),s});if(t)return()=>{for(let i=0;i<n.length;i++){const s=n[i];typeof s=="function"?s():bA(r[i],null)}}}}function Wu(...r){return z.useCallback(OT(...r),r)}var DT=z.forwardRef((r,e)=>{const{children:t,...n}=r,i=z.Children.toArray(t),s=i.find(T7);if(s){const o=s.props.children,l=i.map(u=>u===s?z.Children.count(o)>1?z.Children.only(null):z.isValidElement(o)?o.props.children:null:u);return _.jsx(ux,{...n,ref:e,children:z.isValidElement(o)?z.cloneElement(o,void 0,l):null})}return _.jsx(ux,{...n,ref:e,children:t})});DT.displayName="Slot";var ux=z.forwardRef((r,e)=>{const{children:t,...n}=r;if(z.isValidElement(t)){const i=P7(t);return z.cloneElement(t,{...I7(n,t.props),ref:e?OT(e,i):i})}return z.Children.count(t)>1?z.Children.only(null):null});ux.displayName="SlotClone";var LT=({children:r})=>_.jsx(_.Fragment,{children:r});function T7(r){return z.isValidElement(r)&&r.type===LT}function I7(r,e){const t={...e};for(const n in e){const i=r[n],s=e[n];/^on[A-Z]/.test(n)?i&&s?t[n]=(...l)=>{s(...l),i(...l)}:i&&(t[n]=i):n==="style"?t[n]={...i,...s}:n==="className"&&(t[n]=[i,s].filter(Boolean).join(" "))}return{...r,...t}}function P7(r){var n,i;let e=(n=Object.getOwnPropertyDescriptor(r.props,"ref"))==null?void 0:n.get,t=e&&"isReactWarning"in e&&e.
3914isReactWarning;return t?r.ref:(e=(i=Object.getOwnPropertyDescriptor(r,"ref"))==null?void 0:i.get,t=e&&"isReactWarning"in e&&e.isReactWarning,t?r.props.ref:r.props.ref||r.ref)}var R7=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","span","svg","ul"],uc=R7.reduce((r,e)=>{const t=z.forwardRef((n,i)=>{const{asChild:s,...o}=n,l=s?DT:e;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),_.jsx(l,{...o,ref:i})});return t.displayName=`Primitive.${e}`,{...r,[e]:t}},{});function B7(r,e){r&&NM.flushSync(()=>r.dispatchEvent(e))}var Nu=globalThis!=null&&globalThis.document?z.useLayoutEffect:()=>{},O7="Portal",NT=z.forwardRef((r,e)=>{var l;const{container:t,...n}=r,[i,s]=z.useState(!1);Nu(()=>s(!0),[]);const o=t||i&&((l=globalThis==null?void 0:globalThis.document)==null?void 0:l.body);return o?C7.createPortal(_.jsx(uc.div,{...n,ref:e}),o):null});NT.displayName=O7;var D7=NT,CA=Object.prototype.hasOwnProperty;function gy(r,e){var t,n;if(r===e)return!0;if(r&&e&&(t=r.constructor)===e.constructor){if(t===Date)return r.getTime()===e.getTime();if(t===RegExp)return r.toString()===e.toString();if(t===Array){if((n=r.length)===e.length)for(;n--&&gy(r[n],e[n]););return n===-1}if(!t||typeof r=="object"){n=0;for(t in r)if(CA.call(r,t)&&++n&&!CA.call(e,t)||!(t in e)||!gy(r[t],e[t]))return!1;return Object.keys(e).length===n}}return r!==r&&e!==e}function FT(r,e){if(Object.is(r,e))return!0;if(typeof r!="object"||r===null||typeof e!="object"||e===null)return!1;const t=Object.keys(r);if(t.length!==Object.keys(e).length)return!1;for(let n=0;n<t.length;n++)if(!Object.prototype.hasOwnProperty.call(e,t[n])||!Object.is(r[t[n]],e[t[n]]))return!1;return!0}var f1=function(e,t,n,i){this.name=e,this.fn=t,this.args=n,this.modifiers=i};f1.prototype._test=function(e){var t=this.fn;try{Rd(this.modifiers.slice(),t,this)(e)}catch{t=function(){return!1}}try{return Rd(this.modifiers.slice(),t,this)(e)}catch{return!1}};f1.prototype._check=function(e){try{Rd(this.modifiers.slice(),this.fn,this)(e)}catch{if(Rd(this.modifiers.slice(),function(n){return n},this)(!1))return}if(!Rd(this.modifiers.slice(),this.fn,this)(e))throw null};f1.prototype._testAsync=function(e){var t=this;return new Promise(function(n,i){UT(t.modifiers.slice(),t.fn,t)(e).then(function(s){s?n(e):i(null)}).catch(function(s){return i(s)})})};function kT(r,e){return e===void 0&&(e="simple"),typeof r=="object"?r[e]:r}function Rd(r,e,t){if(r.length){var n=r.shift(),i=Rd(r,e,t);return n.perform(i,t)}else return kT(e)}function UT(r,e,t){if(r.length){var n=r.shift(),i=UT(r,e,t);return n.performAsync(i,t)}else return function(s){return Promise.resolve(kT(e,"async")(s))}}var L7=function(e,t,n){this.name=e,this.perform=t,this.performAsync=n},FM=function(r){function e(t,n,i,s){for(var o=[],l=arguments.length-4;l-- >0;)o[l]=arguments[l+4];r.call(this,o),r.captureStackTrace&&r.captureStackTrace(this,e),this.rule=t,this.value=n,this.cause=i,this.target=s}return r&&(e.__proto__=r),e.prototype=Object.create(r&&r.prototype),e.prototype.constructor=e,e}(Error),Zo=function(e,t){e===void 0&&(e=[]),t===void 0&&(t=[]),this.chain=e,this.nextRuleModifiers=t};Zo.prototype._applyRule=function(e,t){var n=this;return function(){for(var i=[],s=arguments.length;s--;)i[s]=arguments[s];return n.chain.push(new f1(t,e.apply(n,i),i,n.nextRuleModifiers)),n.nextRuleModifiers=[],n}};Zo.prototype._applyModifier=function(e,t){return this.nextRuleModifiers.push(new L7(t,e.simple,e.async)),this};Zo.prototype._clone=function(){return new Zo(this.chain.slice(),this.nextRuleModifiers.slice())};Zo.prototype.test=function(e){return this.chain.every(function(t){return t._test(e)})};Zo.prototype.testAll=function(e){var t=[];return this.chain.forEach(function(n){try{n._check(e)}catch(i){t.push(new FM(n,e,i))}}),t};Zo.prototype.check=function(e){this.chain.forEach(function(t){try{t._check(e)}catch(n){throw new FM(t,e,n)}})};Zo.prototype.testAsync=function(e){var t=this;return new Promise(function(n,i){jT(e,t.chain.slice(),n,i)})};function jT(r,e,t,n){if(e.length){var i=e.shift();i._testAsync(r).then(function(){jT(r,e,t,n)},function(s){n(new FM(i,r,s))})}else t(r)}var TA=function(r,e){return e&&typeof r=="string"&&r.trim().length===0?!0:r==null};function N7(r,e){return e===void 0&&(e=!1),{simple:function(t){return TA(t,e)||r.check(t)===void 0},async:function(t){return TA(t,e)||r.testAsync(t)}}}function ts(){return typeof Proxy<"u"?zT(new Zo):hx(new Zo)}var Kp={};ts.extend=function(r){Object.assign(Kp,r)};ts.clearCustomRules=function(){Kp={}};function zT(r){return new Proxy(r,{get:function(t,n){if(n in t)return t[n];var i=zT(r._clone());if(n in yy)return i._applyModifier(yy[n],n);if(n in Kp)return i._applyRule(Kp[n],n);if(n in dx)return i._applyRule(dx[n],n)}})}
3914function hx(r){var e=function(i,s){return Object.keys(i).forEach(function(o){s[o]=function(){for(var l=[],u=arguments.length;u--;)l[u]=arguments[u];var d=hx(s._clone()),p=d._applyRule(i[o],o).apply(void 0,l);return p}}),s},t=e(dx,r),n=e(Kp,t);return Object.keys(yy).forEach(function(i){Object.defineProperty(n,i,{get:function(){var s=hx(n._clone());return s._applyModifier(yy[i],i)}})}),n}var yy={not:{simple:function(r){return function(e){return!r(e)}},async:function(r){return function(e){return Promise.resolve(r(e)).then(function(t){return!t}).catch(function(){return!0})}}},some:{simple:function(r){return function(e){return hg(e).some(function(t){try{return r(t)}catch{return!1}})}},async:function(r){return function(e){return Promise.all(hg(e).map(function(t){try{return r(t).catch(function(){return!1})}catch{return!1}})).then(function(t){return t.some(Boolean)})}}},every:{simple:function(r){return function(e){return e!==!1&&hg(e).every(r)}},async:function(r){return function(e){return Promise.all(hg(e).map(r)).then(function(t){return t.every(Boolean)})}}},strict:{simple:function(r,e){return function(t){return IA(e)&&t&&typeof t=="object"?Object.keys(e.args[0]).length===Object.keys(t).length&&r(t):r(t)}},async:function(r,e){return function(t){return Promise.resolve(r(t)).then(function(n){return IA(e)&&t&&typeof t=="object"?Object.keys(e.args[0]).length===Object.keys(t).length&&n:n}).catch(function(){return!1})}}}};function IA(r){return r&&r.name==="schema"&&r.args.length>0&&typeof r.args[0]=="object"}function hg(r){return typeof r=="string"?r.split(""):r}var dx={equal:function(r){return function(e){return e==r}},exact:function(r){return function(e){return e===r}},number:function(r){return r===void 0&&(r=!0),function(e){return typeof e=="number"&&(r||isFinite(e))}},integer:function(){return function(r){var e=Number.isInteger||F7;return e(r)}},numeric:function(){return function(r){return!isNaN(parseFloat(r))&&isFinite(r)}},string:function(){return yd("string")},boolean:function(){return yd("boolean")},undefined:function(){return yd("undefined")},null:function(){return yd("null")},array:function(){return yd("array")},object:function(){return yd("object")},instanceOf:function(r){return function(e){return e instanceof r}},pattern:function(r){return function(e){return r.test(e)}},lowercase:function(){return function(r){return typeof r=="boolean"||r===r.toLowerCase()&&r.trim()!==""}},uppercase:function(){return function(r){return r===r.toUpperCase()&&r.trim()!==""}},vowel:function(){return function(r){return/^[aeiou]+$/i.test(r)}},consonant:function(){return function(r){return/^(?=[^aeiou])([a-z]+)$/i.test(r)}},first:function(r){return function(e){return e[0]==r}},last:function(r){return function(e){return e[e.length-1]==r}},empty:function(){return function(r){return r.length===0}},length:function(r,e){return function(t){return t.length>=r&&t.length<=(e||r)}},minLength:function(r){return function(e){return e.length>=r}},maxLength:function(r){return function(e){return e.length<=r}},negative:function(){return function(r){return r<0}},positive:function(){return function(r){return r>=0}},between:function(r,e){return function(t){return t>=r&&t<=e}},range:function(r,e){return function(t){return t>=r&&t<=e}},lessThan:function(r){return function(e){return e<r}},lessThanOrEqual:function(r){return function(e){return e<=r}},greaterThan:function(r){return function(e){return e>r}},greaterThanOrEqual:function(r){return function(e){return e>=r}},even:function(){return function(r){return r%2===0}},odd:function(){return function(r){return r%2!==0}},includes:function(r){return function(e){return~e.indexOf(r)}},schema:function(r){return k7(r)},passesAnyOf:function(){for(var r=[],e=arguments.length;e--;)r[e]=arguments[e];return function(t){return r.some(function(n){return n.test(t)})}},optional:N7};function yd(r){return function(e){return Array.isArray(e)&&r==="array"||e===null&&r==="null"||typeof e===r}}function F7(r){return typeof r=="number"&&isFinite(r)&&Math.floor(r)===r}function k7(r){return{simple:function(e){var t=[];if(Object.keys(r).forEach(function(n){var i=r[n];try{i.check((e||{})[n])}catch(s){s.target=n,t.push(s)}}),t.length>0)throw t;return!0},async:function(e){var t=[],n=Object.keys(r).map(function(i){var s=r[i];return s.testAsync((e||{})[i]).catch(function(o){o.target=i,t.push(o)})});return Promise.all(n).then(function(){if(t.length>0)throw t;return!0})}}}var Rn="colors",Ii="sizes",_t="space",U7={gap:_t,gridGap:_t,columnGap:_t,gridColumnGap:_t,rowGap:_t,gridRowGap:_t,inset:_t,insetBlock:_t,insetBlockEnd:_t,insetBlockStart:_t,insetInline:_t,insetInlineEnd:_t,insetInlineStart:_t,margin:_t,marginTop:_t,marginRight:_t,marginBottom:_t,marginLeft:_t,marginBlock:_t,marginBlockEnd:_t,marginBlockStart:_t,marginInline:_t,marginInlineEnd:_t,marginInlineStart:_t,padding:_t,paddingTop:_t,paddingRight:_t,paddingBottom:_t,paddingLeft:_t,paddingBlock:_t,paddingBlockEnd:_t,paddingBlockStart:_t,paddingInline:_t,paddingInlineEnd:_t,paddingInlineStart:_t,top:_t,right:_t,bottom:_t,left:_t,scrollMargin:_t,scrollMarginTop:_t,scrollMarginRight:_t,scrollMarginBottom:_t,scrollMarginLeft:_t,scrollMarginX:_t,scrollMarginY:_t,scrollMarginBlock:_t,scrollMarginBlockEnd:_t,scrollMarginBlockStart:_t,scrollMarginInline:_t,scrollMarginInlineEnd:_t,scrollMarginInlineStart:_t,scrollPadding:_t,scrollPaddingTop:_t,scrollPaddingRight:_t,scrollPaddingBottom:_t,scrollPaddingLeft:_t,scrollPaddingX:_t,scrollPaddingY:_t,scrollPaddingBlock:_t,scrollPaddingBlockEnd:_t,scrollPaddingBlockStart:_t,scrollPaddingInline:_t,scrollPaddingInlineEnd:_t,scrollPaddingInlineStart:_t,fontSize:"fontSizes",background:Rn,backgroundColor:Rn,backgroundImage:Rn,borderImage:Rn,border:Rn,borderBlock:Rn,borderBlockEnd:Rn,borderBlockStart:Rn,borderBottom:Rn,borderBottomColor:Rn,borderColor:Rn,borderInline:
vendor: 4,452 bytes, line 3914
3914Rn,borderInlineEnd:Rn,borderInlineStart:Rn,borderLeft:Rn,borderLeftColor:Rn,borderRight:Rn,borderRightColor:Rn,borderTop:Rn,borderTopColor:Rn,caretColor:Rn,color:Rn,columnRuleColor:Rn,fill:Rn,outline:Rn,outlineColor:Rn,stroke:Rn,textDecorationColor:Rn,fontFamily:"fonts",fontWeight:"fontWeights",lineHeight:"lineHeights",letterSpacing:"letterSpacings",blockSize:Ii,minBlockSize:Ii,maxBlockSize:Ii,inlineSize:Ii,minInlineSize:Ii,maxInlineSize:Ii,width:Ii,minWidth:Ii,maxWidth:Ii,height:Ii,minHeight:Ii,maxHeight:Ii,flexBasis:Ii,gridTemplateColumns:Ii,gridTemplateRows:Ii,borderWidth:"borderWidths",borderTopWidth:"borderWidths",borderRightWidth:"borderWidths",borderBottomWidth:"borderWidths",borderLeftWidth:"borderWidths",borderStyle:"borderStyles",borderTopStyle:"borderStyles",borderRightStyle:"borderStyles",borderBottomStyle:"borderStyles",borderLeftStyle:"borderStyles",borderRadius:"radii",borderTopLeftRadius:"radii",borderTopRightRadius:"radii",borderBottomRightRadius:"radii",borderBottomLeftRadius:"radii",boxShadow:"shadows",textShadow:"shadows",transition:"transitions",zIndex:"zIndices"},j7=(r,e)=>typeof e=="function"?{"()":Function.prototype.toString.call(e)}:e,qd=()=>{const r=Object.create(null);return(e,t,...n)=>{const i=(s=>JSON.stringify(s,j7))(e);return i in r?r[i]:r[i]=t(e,...n)}},Eu=Symbol.for("sxs.internal"),kM=(r,e)=>Object.defineProperties(r,Object.getOwnPropertyDescriptors(e)),PA=r=>{for(const e in r)return!0;return!1},{hasOwnProperty:z7}=Object.prototype,fx=r=>r.includes("-")?r:r.replace(/[A-Z]/g,e=>"-"+e.toLowerCase()),H7=/\s+(?![^()]*\))/,vd=r=>e=>r(...typeof e=="string"?String(e).split(H7):[e]),RA={appearance:r=>({WebkitAppearance:r,appearance:r}),backfaceVisibility:r=>({WebkitBackfaceVisibility:r,backfaceVisibility:r}),backdropFilter:r=>({WebkitBackdropFilter:r,backdropFilter:r}),backgroundClip:r=>({WebkitBackgroundClip:r,backgroundClip:r}),boxDecorationBreak:r=>({WebkitBoxDecorationBreak:r,boxDecorationBreak:r}),clipPath:r=>({WebkitClipPath:r,clipPath:r}),content:r=>({content:r.includes('"')||r.includes("'")||/^([A-Za-z]+\([^]*|[^]*-quote|inherit|initial|none|normal|revert|unset)$/.test(r)?r:`"${r}"`}),hyphens:r=>({WebkitHyphens:r,hyphens:r}),maskImage:r=>({WebkitMaskImage:r,maskImage:r}),maskSize:r=>({WebkitMaskSize:r,maskSize:r}),tabSize:r=>({MozTabSize:r,tabSize:r}),textSizeAdjust:r=>({WebkitTextSizeAdjust:r,textSizeAdjust:r}),userSelect:r=>({WebkitUserSelect:r,userSelect:r}),marginBlock:vd((r,e)=>({marginBlockStart:r,marginBlockEnd:e||r})),marginInline:vd((r,e)=>({marginInlineStart:r,marginInlineEnd:e||r})),maxSize:vd((r,e)=>({maxBlockSize:r,maxInlineSize:e||r})),minSize:vd((r,e)=>({minBlockSize:r,minInlineSize:e||r})),paddingBlock:vd((r,e)=>({paddingBlockStart:r,paddingBlockEnd:e||r})),paddingInline:vd((r,e)=>({paddingInlineStart:r,paddingInlineEnd:e||r}))},g_=/([\d.]+)([^]*)/,G7=(r,e)=>r.length?r.reduce((t,n)=>(t.push(...e.map(i=>i.includes("&")?i.replace(/&/g,/[ +>|~]/.test(n)&&/&.*&/.test(i)?`:is(${n})`:n):n+" "+i)),t),[]):e,V7=(r,e)=>r in W7&&typeof e=="string"?e.replace(/^((?:[^]*[^\w-])?)(fit-content|stretch)((?:[^\w-][^]*)?)$/,(t,n,i,s)=>n+(i==="stretch"?`-moz-available${s};${fx(r)}:${n}-webkit-fill-available`:`-moz-fit-content${s};${fx(r)}:${n}fit-content`)+s):String(e),W7={blockSize:1,height:1,inlineSize:1,maxBlockSize:1,maxHeight:1,maxInlineSize:1,maxWidth:1,minBlockSize:1,minHeight:1,minInlineSize:1,minWidth:1,width:1},rl=r=>r?r+"-":"",HT=(r,e,t)=>r.replace(/([+-])?((?:\d+(?:\.\d*)?|\.\d+)(?:[Ee][+-]?\d+)?)?(\$|--)([$\w-]+)/g,(n,i,s,o,l)=>o=="$"==!!s?n:(i||o=="--"?"calc(":"")+"var(--"+(o==="$"?rl(e)+(l.includes("$")?"":rl(t))+l.replace(/\$/g,"-"):l)+")"+(i||o=="--"?"*"+(i||"")+(s||"1")+")":"")),X7=/\s*,\s*(?![^()]*\))/,J7=Object.prototype.toString,bd=(r,e,t,n,i)=>{let s,o,l;const u=(d,p,m)=>{let y,v;const S=E=>{for(y in E){const T=y.charCodeAt(0)===64,I=T&&Array.isArray(E[y])?E[y]:[E[y]];for(v of I){const P=/[A-Z]/.test(M=y)?M:M.replace(/-[^]/g,O=>O[1].toUpperCase()),k=typeof v=="object"&&v&&v.toString===J7&&(!n.utils[P]||!p.length);if(P in n.utils&&!k){const O=n.utils[P];if(O!==o){o=O,S(O(v)),o=null;continue}}else if(P in RA){const O=RA[P];if(O!==l){l=O,S(O(v)),l=null;continue}}if(T&&(A=y.slice(1)in n.media?"@media "+n.media[y.slice(1)]:y,y=A.replace(/\(\s*([\w-]+)\s*(=|<|<=|>|>=)\s*([\w-]+)\s*(?:(<|<=|>|>=)\s*([\w-]+)\s*)?\)/g,(O,N,H,F,L,V)=>{const te=g_.test(N),ne=.0625*(te?-1:1),[ce,me]=te?[F,N]:[N,F];return"("+(H[0]==="="?"":H[0]===">
3914"===te?"max-":"min-")+ce+":"+(H[0]!=="="&&H.length===1?me.replace(g_,(he,ge,U)=>Number(ge)+ne*(H===">"?1:-1)+U):me)+(L?") and ("+(L[0]===">"?"min-":"max-")+ce+":"+(L.length===1?V.replace(g_,(he,ge,U)=>Number(ge)+ne*(L===">"?-1:1)+U):V):"")+")"})),k){const O=T?m.concat(y):[...m],N=T?[...p]:G7(p,y.split(X7));s!==void 0&&i(BA(...s)),s=void 0,u(v,N,O)}else s===void 0&&(s=[[],p,m]),y=T||y.charCodeAt(0)!==36?y:`--${rl(n.prefix)}${y.slice(1).replace(/\$/g,"-")}`,v=k?v:typeof v=="number"?v&&P in $7?String(v)+"px":String(v):HT(V7(P,v??""),n.prefix,n.themeMap[P]),s[0].push(`${T?`${y} `:`${fx(y)}:`}${v}`)}}var A,M};S(d),s!==void 0&&i(BA(...s)),s=void 0};u(r,e,t)},BA=(r,e,t)=>`${t.map(n=>`${n}{`).join("")}${e.length?`${e.join(",")}{`:""}${r.join(";")}${e.length?"}":""}${Array(t.length?t.length+1:0).join("}")}`,$7={animationDelay:1,animationDuration:1,backgroundSize:1,blockSize:1,border:1,borderBlock:1,borderBlockEnd:1,borderBlockEndWidth:1,borderBlockStart:1,borderBlockStartWidth:1,borderBlockWidth:1,borderBottom:1,borderBottomLeftRadius:1,borderBottomRightRadius:1,borderBottomWidth:1,borderEndEndRadius:1,borderEndStartRadius:1,borderInlineEnd:1,borderInlineEndWidth:1,borderInlineStart:1,borderInlineStartWidth:1,borderInlineWidth:1,borderLeft:1,borderLeftWidth:1,borderRadius:1,borderRight:1,borderRightWidth:1,borderSpacing:1,borderStartEndRadius:1,borderStartStartRadius:1,borderTop:1,borderTopLeftRadius:1,borderTopRightRadius:1,borderTopWidth:1,borderWidth:1,bottom:1,columnGap:1,columnRule:1,columnRuleWidth:1,columnWidth:1,containIntrinsicSize:1,flexBasis:1,fontSize:1,gap:1,gridAutoColumns:1,gridAutoRows:1,gridTemplateColumns:1,gridTemplateRows:1,height:1,inlineSize:1,inset:1,insetBlock:1,insetBlockEnd:1,insetBlockStart:1,insetInline:1,insetInlineEnd:1,insetInlineStart:1,left:1,letterSpacing:1,margin:1,marginBlock:1,marginBlockEnd:1,marginBlockStart:1,marginBottom:1,marginInline:1,marginInlineEnd:1,marginInlineStart:1,marginLeft:1,marginRight:1,marginTop:1,maxBlockSize:1,maxHeight:1,maxInlineSize:1,maxWidth:1,minBlockSize:1,minHeight:1,minInlineSize:1,minWidth:1,offsetDistance:1,offsetRotate:1,outline:1,outlineOffset:1,outlineWidth:1,overflowClipMargin:1,padding:1,paddingBlock:1,paddingBlockEnd:1,paddingBlockStart:1,paddingBottom:1,paddingInline:1,paddingInlineEnd:1,paddingInlineStart:1,paddingLeft:1,paddingRight:1,paddingTop:1,perspective:1,right:1,rowGap:1,scrollMargin:1,scrollMarginBlock:1,scrollMarginBlockEnd:1,scrollMarginBlockStart:1,scrollMarginBottom:1,scrollMarginInline:1,scrollMarginInlineEnd:1,scrollMarginInlineStart:1,scrollMarginLeft:1,scrollMarginRight:1,scrollMarginTop:1,scrollPadding:1,scrollPaddingBlock:1,scrollPaddingBlockEnd:1,scrollPaddingBlockStart:1,scrollPaddingBottom:1,scrollPaddingInline:1,scrollPaddingInlineEnd:1,scrollPaddingInlineStart:1,scrollPaddingLeft:1,scrollPaddingRight:1,scrollPaddingTop:1,shapeMargin:1,textDecoration:1,textDecorationThickness:1,textIndent:1,textUnderlineOffset:1,top:1,transitionDelay:1,transitionDuration:1,verticalAlign:1,width:1,wordSpacing:1},OA=r=>String.fromCharCode(r+(r>25?39:97)),bu=r=>(e=>{let t,n="";for(t=Math.abs(e);t>52;t=t/52|0)n=OA(t%52)+n;return OA(t%52)+n})(((e,t)=>{let n=t.length;for(;n;)e=33*e^t.charCodeAt(--n);return e})(5381,JSON.stringify(r))>>>0),Sp=["themed","global","styled","onevar","resonevar","allvar","inline"],K7=r=>{if(r.href&&!r.href.startsWith(location.origin))return!1;try{return!!r.cssRules}catch{return!1}},Y7=r=>{let e;const t=()=>{const{cssRules:i}=e.sheet;return[].map.call(i,(s,o)=>{const{cssText:l}=s;let u="";if(l.startsWith("--sxs"))return"";if(i[o-1]&&(u=i[o-1].cssText).startsWith("--sxs")){if(!s.cssRules.length)return"";for(const d in e.rules)if(e.rules[d].group===s)return`--sxs{--sxs:${[...e.rules[d].cache].join(" ")}}${l}`;return s.cssRules.length?`${u}${l}`:""}return l}).join("")},n=()=>{if(e){const{rules:l,sheet:u}=e;if(!u.deleteRule){for(;Object(Object(u.cssRules)[0]).type===3;)u.cssRules.splice(0,1);u.cssRules=[]}for(const d in l)delete l[d]}const i=Object(r).styleSheets||[];for(const l of i)if(K7(l)){for(let u=0,d=l.cssRules;d[u];++u){const p=Object(d[u]);if(p.type!==1)continue;const m=Object(d[u+1]);if(m.type!==4)continue;++u;const{cssText:y}=p;if(!y.startsWith("--sxs"))continue;const v=y.slice(14,-3).trim().split(/\s+/),S=Sp[v[0]];S&&(e||(e={sheet:l,reset:n,rules:{},toString:t}),e.rules[S]={group:m,index:u,cache:new Set(v)})}if(e)break}if(!e){const l=(u,d)=>({type:d,cssRules:[],insertRule(p,m){this.cssRules.splice(m,0,l(p,{import:3,undefined:1}[(p.toLowerCase().match(/^@([a-z]+)/)||[])[1]]||4))},get cssText(){return u==="@media{}"?`@media{${[].map.call(this.cssRules,p=>p.cssText).join("")}}`:u}});e={sheet:r?(r.head||r).appendChild(document.createElement("style")).sheet:l("","text/css"),rules:{},reset:n,toString:t}}const{sheet:s,rules:o}=e;for(let l=Sp.length-1;l>=0;--l){const u=Sp[l];if(!o[u]){const d=Sp[l+1],p=o[d]?o[d].index:s.cssRules.length;s.insertRule("@media{}",p),s.insertRule(`--sxs{--sxs:${l}}`,p),o[u]={group:s.cssRules[p+1],index:p,cache:new Set([l])}}q7(o[u])}};return n(),e},q7=r=>{const e=r.group;let t=e.cssRules.length;r.apply=n=>{try{e.insertRule(n,t),++t}catch{}}},mp=Symbol(),Q7=qd(),DA=(r,e)=>Q7(r,()=>(...t)=>{let n={type:null,composers:new Set};for(const i of t)if(i!=null)if(i[Eu]){n.type==null&&(n.type=i[Eu].type);for(const s of i[Eu].composers)n.composers.add(s)}else i.constructor!==Object||i.$$typeof?n.type==null&&(n.type=i):n.composers.add(Z7(i,r));return n.type==null&&(n.type="span"),n.composers.size||n.composers.add(["PJLV",{},[],[],{},[]]),e8(r,n,e)}),Z7=({variants:r,compoundVariants:e,defaultVariants:t,...n},i)=>{const s=`${rl(i.prefix)}c-${bu(n)}`,o=[],l=[],u=Object.create(null),d=[];for(const y in t)u[y]=String(t[y]);if(typeof r=="object"&&r)for(const y in r){p=u,m=y,z7.call(p,m)||(u[y]="undefined");const v=r[y];for(const S in v){const E={[y]:String(S)};String(S)==="undefined"&&d.push(y);const A=v[S],M=[E,A,!PA(A)];o.push(M)}}var p,m;if(typeof e=="object"&&e)for(const y of e){let{css:v,...S}=y;v=typeof v=="object"&&v||{};for(const A in S)S[A]=String(S[A]);const E=[S,v,!PA(v)];l.push(E)}return[s,n,o,l,u,d]},e8=(r,e,t)=>{const[n,i,s,o]=t8(e.composers),l=typeof e.type=="function"||e.type.$$typeof?(m=>{function y(){for(let v=0;v<y[mp].length;v++){const[S,E]=y[mp][v];m.rules[S].apply(E)}return y[mp]=[],null}return y[mp]=[],y.rules={}
vendor: 2,517 bytes, line 3914
3914,Sp.forEach(v=>y.rules[v]={apply:S=>y[mp].push([v,S])}),y})(t):null,u=(l||t).rules,d=`.${n}${i.length>1?`:where(.${i.slice(1).join(".")})`:""}`,p=m=>{m=typeof m=="object"&&m||n8;const{css:y,...v}=m,S={};for(const M in s)if(delete v[M],M in m){let T=m[M];typeof T=="object"&&T?S[M]={"@initial":s[M],...T}:(T=String(T),S[M]=T!=="undefined"||o.has(M)?T:s[M])}else S[M]=s[M];const E=new Set([...i]);for(const[M,T,I,P]of e.composers){t.rules.styled.cache.has(M)||(t.rules.styled.cache.add(M),bd(T,[`.${M}`],[],r,N=>{u.styled.apply(N)}));const k=LA(I,S,r.media),O=LA(P,S,r.media,!0);for(const N of k)if(N!==void 0)for(const[H,F,L]of N){const V=`${M}-${bu(F)}-${H}`;E.add(V);const te=(L?t.rules.resonevar:t.rules.onevar).cache,ne=L?u.resonevar:u.onevar;te.has(V)||(te.add(V),bd(F,[`.${V}`],[],r,ce=>{ne.apply(ce)}))}for(const N of O)if(N!==void 0)for(const[H,F]of N){const L=`${M}-${bu(F)}-${H}`;E.add(L),t.rules.allvar.cache.has(L)||(t.rules.allvar.cache.add(L),bd(F,[`.${L}`],[],r,V=>{u.allvar.apply(V)}))}}if(typeof y=="object"&&y){const M=`${n}-i${bu(y)}-css`;E.add(M),t.rules.inline.cache.has(M)||(t.rules.inline.cache.add(M),bd(y,[`.${M}`],[],r,T=>{u.inline.apply(T)}))}for(const M of String(m.className||"").trim().split(/\s+/))M&&E.add(M);const A=v.className=[...E].join(" ");return{type:e.type,className:A,selector:d,props:v,toString:()=>A,deferredInjector:l}};return kM(p,{className:n,selector:d,[Eu]:e,toString:()=>(t.rules.styled.cache.has(n)||p(),n)})},t8=r=>{let e="";const t=[],n={},i=[];for(const[s,,,,o,l]of r){e===""&&(e=s),t.push(s),i.push(...l);for(const u in o){const d=o[u];(n[u]===void 0||d!=="undefined"||l.includes(d))&&(n[u]=d)}}return[e,t,n,new Set(i)]},LA=(r,e,t,n)=>{const i=[];e:for(let[s,o,l]of r){if(l)continue;let u,d=0,p=!1;for(u in s){const m=s[u];let y=e[u];if(y!==m){if(typeof y!="object"||!y)continue e;{let v,S,E=0;for(const A in y){if(m===String(y[A])){if(A!=="@initial"){const M=A.slice(1);(S=S||[]).push(M in t?t[M]:A.replace(/^@media ?/,"")),p=!0}d+=E,v=!0}++E}if(S&&S.length&&(o={["@media "+S.join(", ")]:o}),!v)continue e}}}(i[d]=i[d]||[]).push([n?"cv":`${u}-${s[u]}`,o,p])}return i},n8={},r8=qd(),i8=(r,e)=>r8(r,()=>(...t)=>{const n=()=>{for(let i of t){i=typeof i=="object"&&i||{};let s=bu(i);if(!e.rules.global.cache.has(s)){if(e.rules.global.cache.add(s),"@import"in i){let o=[].indexOf.call(e.sheet.cssRules,e.rules.themed.group)-1;for(let l of[].concat(i["@import"]))l=l.includes('"')||l.includes("'")?l:`"${l}"`,e.sheet.insertRule(`@import ${l};`,o++);delete i["@import"]}
3914bd(i,[],[],r,o=>{e.rules.global.apply(o)})}}return""};return kM(n,{toString:n})}),s8=qd(),o8=(r,e)=>s8(r,()=>t=>{const n=`${rl(r.prefix)}k-${bu(t)}`,i=()=>{if(!e.rules.global.cache.has(n)){e.rules.global.cache.add(n);const s=[];bd(t,[],[],r,l=>s.push(l));const o=`@keyframes ${n}{${s.join("")}}`;e.rules.global.apply(o)}return n};return kM(i,{get name(){return i()},toString:i})}),a8=class{constructor(r,e,t,n){this.token=r==null?"":String(r),this.value=e==null?"":String(e),this.scale=t==null?"":String(t),this.prefix=n==null?"":String(n)}get computedValue(){return"var("+this.variable+")"}get variable(){return"--"+rl(this.prefix)+rl(this.scale)+this.token}toString(){return this.computedValue}},l8=qd(),c8=(r,e)=>l8(r,()=>(t,n)=>{n=typeof t=="object"&&t||Object(n);const i=`.${t=(t=typeof t=="string"?t:"")||`${rl(r.prefix)}t-${bu(n)}`}`,s={},o=[];for(const u in n){s[u]={};for(const d in n[u]){const p=`--${rl(r.prefix)}${u}-${d}`,m=HT(String(n[u][d]),r.prefix,u);s[u][d]=new a8(d,m,u,r.prefix),o.push(`${p}:${m}`)}}const l=()=>{if(o.length&&!e.rules.themed.cache.has(t)){e.rules.themed.cache.add(t);const u=`${n===r.theme?":root,":""}.${t}{${o.join(";")}}`;e.rules.themed.apply(u)}return t};return{...s,get className(){return l()},selector:i,toString:l}}),u8=qd(),h8=qd(),d8=r=>{const e=(t=>{let n=!1;const i=u8(t,s=>{n=!0;const o="prefix"in(s=typeof s=="object"&&s||{})?String(s.prefix):"",l=typeof s.media=="object"&&s.media||{},u=typeof s.root=="object"?s.root||null:globalThis.document||null,d=typeof s.theme=="object"&&s.theme||{},p={prefix:o,media:l,theme:d,themeMap:typeof s.themeMap=="object"&&s.themeMap||{...U7},utils:typeof s.utils=="object"&&s.utils||{}},m=Y7(u),y={css:DA(p,m),globalCss:i8(p,m),keyframes:o8(p,m),createTheme:c8(p,m),reset(){m.reset(),y.theme.toString()},theme:{},sheet:m,config:p,prefix:o,getCssText:m.toString,toString:m.toString};return String(y.theme=y.createTheme(d)),y});return n||i.reset(),i})(r);return e.styled=(({config:t,sheet:n})=>h8(t,()=>{const i=DA(t,n);return(...s)=>{const o=i(...s),l=o[Eu].type,u=re.forwardRef((d,p)=>{const m=d&&d.as||l,{props:y,deferredInjector:v}=o(d);return delete y.as,y.ref=p,v?re.createElement(re.Fragment,null,re.createElement(m,y),re.createElement(v,null)):re.createElement(m,y)});return u.className=o.className,u.displayName=`Styled.${l.displayName||l.name||l}`,u.selector=o.selector,u.toString=()=>o.selector,u[Eu]=o[Eu],u}}))(e),e};function Va(r,e,{checkForDefaultPrevented:t=!0}={}){return function(i){if(r==null||r(i),t===!1||!i.defaultPrevented)return e==null?void 0:e(i)}}function GT(r,e=[]){let t=[];function n(s,o){const l=z.createContext(o),u=t.length;t=[...t,o];const d=m=>{var M;const{scope:y,children:v,...S}=m,E=((M=y==null?void 0:y[r])==null?void 0:M[u])||l,A=z.useMemo(()=>S,Object.values(S));return _.jsx(E.Provider,{value:A,children:v})};d.displayName=s+"Provider";function p(m,y){var E;const v=((E=y==null?void 0:y[r])==null?void 0:E[u])||l,S=z.useContext(v);if(S)return S;if(o!==void 0)return o;throw new Error(`\`${m}\` must be used within \`${s}\``)}return[d,p]}const i=()=>{const s=t.map(o=>z.createContext(o));return function(l){const u=(l==null?void 0:l[r])||s;return z.useMemo(()=>({[`__scope${r}`]:{...l,[r]:u}}),[l,u])}};return i.scopeName=r,[n,f8(i,...e)]}function f8(...r){const e=r[0];if(r.length===1)return e;const t=()=>{const n=r.map(i=>({useScope:i(),scopeName:i.scopeName}));return function(s){const o=n.reduce((l,{useScope:u,scopeName:d})=>{const m=u(s)[`__scope${d}`];return{...l,...m}},{});return z.useMemo(()=>({[`__scope${e.scopeName}`]:o}),[o])}};return t.scopeName=e.scopeName,t}function Qd(r){const e=z.useRef(r);return z.useEffect(()=>{e.current=r}),z.useMemo(()=>(...t)=>{var n;return(n=e.current)==null?void 0:n.call(e,...t)},[])}function p8(r,e=globalThis==null?void 0:globalThis.document){const t=Qd(r);z.useEffect(()=>{const n=i=>{i.key==="Escape"&&t(i)};return e.addEventListener("keydown",n,{capture:!0}),()=>e.removeEventListener("keydown",n,{capture:!0})},[t,e])}var m8="DismissableLayer",px="dismissableLayer.update",g8="dismissableLayer.pointerDownOutside",y8="dismissableLayer.focusOutside",NA,VT=z.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),WT=z.forwardRef((r,e)=>{const{disableOutsidePointerEvents:t=!1,onEscapeKeyDown:n,onPointerDownOutside:i,onFocusOutside:s,onInteractOutside:o,onDismiss:l,...u}=r,d=z.useContext(VT),[p,m]=z.useState(null),y=(p==null?void 0:p.ownerDocument)??(globalThis==null?void 0:globalThis.document),[,v]=z.useState({}),S=Wu(e,N=>m(N)),E=Array.from(d.layers),[A]=[...d.layersWithOutsidePointerEventsDisabled].slice(-1),M=E.indexOf(A),T=p?E.indexOf(p):-1,I=d.layersWithOutsidePointerEventsDisabled.size>0,P=T>=M,k=x8(N=>{const H=N.target,F=[...d.branches].some(L=>L.contains(H));!P||F||(i==null||i(N),o==null||o(N),N.defaultPrevented||l==null||l())},y),O=M8(N=>{const H=N.target;[...d.branches].some(L=>L.contains(H))||(s==null||s(N),o==null||o(N),N.defaultPrevented||l==null||l())},y);return p8(N=>{T===d.layers.size-1&&(n==null||n(N),!N.defaultPrevented&&l&&(N.preventDefault(),l()))},y),z.useEffect(()=>{if(p)return t&&(d.layersWithOutsidePointerEventsDisabled.size===0&&(NA=y.body.style.pointerEvents,y.body.style.pointerEvents="none"),d.layersWithOutsidePointerEventsDisabled.add(p)),d.layers.add(p),FA(),()=>{t&&d.layersWithOutsidePointerEventsDisabled.size===1&&(y.body.style.pointerEvents=NA)}},[p,y,t,d]),z.useEffect(()=>()=>{p&&(d.layers.delete(p),d.layersWithOutsidePointerEventsDisabled.delete(p),FA())},[p,d]),z.useEffect(()=>{const N=()=>v({});return document.addEventListener(px,N),()=>document.removeEventListener(px,N)},[]),_.jsx(uc.div,{...u,ref:S,style:{pointerEvents:I?P?"auto":"none":void 0,...r.style},onFocusCapture:Va(r.onFocusCapture,O.onFocusCapture),onBlurCapture:Va(r.onBlurCapture,O.onBlurCapture),onPointerDownCapture:Va(r.onPointerDownCapture,k.onPointerDownCapture)})});WT.displayName=m8;var v8="DismissableLayerBranch",_8=z.forwardRef((r,e)=>{const t=z.useContext(VT),n=z.useRef(null),i=Wu(e,n);return z.useEffect(()=>{const s=n.current;if(s)return t.branches.add(s),()=>{t.branches.delete(s)}},[t.branches]),_.jsx(uc.div,{...r,ref:i})});_8.displayName=v8;function x8(r,e=globalThis==null?void 0:globalThis.document){const t=Qd(r),n=z.useRef(!1),i=z.useRef(()=>{});return z.useEffect(()=>{const s=l=>{if(l.target&&!n.current){let u=function(){XT(g8,t,d,{discrete:!0})};const d={originalEvent:l};l.pointerType==="touch"?(e.removeEventListener("click",i.current),i.current=u,e.addEventListener("click",i.current,{once:!0})):u()}else e.removeEventListener("click",i.current);n.current=!1},o=window.setTimeout(()=>{e.addEventListener("pointerdown",s)},0);return()=>{window.clearTimeout(o),e.removeEventListener("pointerdown",s),e.removeEventListener("click",i.current)}},[e,t]),{onPointerDownCapture:()=>n.current=!0}}function M8(r,e=globalThis==null?void 0:globalThis.document){const t=Qd(r),n=z.useRef(!1);return z.useEffect(()=>{const i=s=>{s.target&&!n.current&&XT(y8,t,{originalEvent:s},{discrete:!1})};return e.addEventListener("focusin",i),()=>e.removeEventListener("focusin",i)},[e,t]),{onFocusCapture:()=>n.current=!0,onBlurCapture:()=>n.current=!1}}function FA(){const r=new CustomEvent(px);document.dispatchEvent(r)}function XT(r,e,t,{discrete:n}){const i=t.originalEvent.target,s=new CustomEvent(r,{bubbles:!1,cancelable:!0,detail:t});e&&i.addEventListener(r,e,{once:!0}),n?B7(i,s):i.dispatchEvent(s)}var S8=II.useId||(()=>{}),w8=0;function A8(r){const[e,t]=z.useState(S8());return Nu(()=>{t(n=>n??String(w8++))},[r]),e?`radix-${e}
3914`:""}const E8=["top","right","bottom","left"],nc=Math.min,gs=Math.max,vy=Math.round,dg=Math.floor,Yo=r=>({x:r,y:r}),b8={left:"right",right:"left",bottom:"top",top:"bottom"},C8={start:"end",end:"start"};function mx(r,e,t){return gs(r,nc(e,t))}function il(r,e){return typeof r=="function"?r(e):r}function sl(r){return r.split("-")[0]}function Zd(r){return r.split("-")[1]}function UM(r){return r==="x"?"y":"x"}function jM(r){return r==="y"?"height":"width"}function rc(r){return["top","bottom"].includes(sl(r))?"y":"x"}function zM(r){return UM(rc(r))}function T8(r,e,t){t===void 0&&(t=!1);const n=Zd(r),i=zM(r),s=jM(i);let o=i==="x"?n===(t?"end":"start")?"right":"left":n==="start"?"bottom":"top";return e.reference[s]>e.floating[s]&&(o=_y(o)),[o,_y(o)]}function I8(r){const e=_y(r);return[gx(r),e,gx(e)]}function gx(r){return r.replace(/start|end/g,e=>C8[e])}function P8(r,e,t){const n=["left","right"],i=["right","left"],s=["top","bottom"],o=["bottom","top"];switch(r){case"top":case"bottom":return t?e?i:n:e?n:i;case"left":case"right":return e?s:o;default:return[]}}function R8(r,e,t,n){const i=Zd(r);let s=P8(sl(r),t==="start",n);return i&&(s=s.map(o=>o+"-"+i),e&&(s=s.concat(s.map(gx)))),s}function _y(r){return r.replace(/left|right|bottom|top/g,e=>b8[e])}function B8(r){return{top:0,right:0,bottom:0,left:0,...r}}function JT(r){return typeof r!="number"?B8(r):{top:r,right:r,bottom:r,left:r}}function xy(r){const{x:e,y:t,width:n,height:i}=r;return{width:n,height:i,top:t,left:e,right:e+n,bottom:t+i,x:e,y:t}}function kA(r,e,t){let{reference:n,floating:i}=r;const s=rc(e),o=zM(e),l=jM(o),u=sl(e),d=s==="y",p=n.x+n.width/2-i.width/2,m=n.y+n.height/2-i.height/2,y=n[l]/2-i[l]/2;let v;switch(u){case"top":v={x:p,y:n.y-i.height};break;case"bottom":v={x:p,y:n.y+n.height};break;case"right":v={x:n.x+n.width,y:m};break;case"left":v={x:n.x-i.width,y:m};break;default:v={x:n.x,y:n.y}}switch(Zd(e)){case"start":v[o]-=y*(t&&d?-1:1);break;case"end":v[o]+=y*(t&&d?-1:1);break}return v}const O8=async(r,e,t)=>{const{placement:n="bottom",strategy:i="absolute",middleware:s=[],platform:o}=t,l=s.filter(Boolean),u=await(o.isRTL==null?void 0:o.isRTL(e));let d=await o.getElementRects({reference:r,floating:e,strategy:i}),{x:p,y:m}=kA(d,n,u),y=n,v={},S=0;for(let E=0;E<l.length;E++){const{name:A,fn:M}=l[E],{x:T,y:I,data:P,reset:k}=await M({x:p,y:m,initialPlacement:n,placement:y,strategy:i,middlewareData:v,rects:d,platform:o,elements:{reference:r,floating:e}});p=T??p,m=I??m,v={...v,[A]:{...v[A],...P}},k&&S<=50&&(S++,typeof k=="object"&&(k.placement&&(y=k.placement),k.rects&&(d=k.rects===!0?await o.getElementRects({reference:r,floating:e,strategy:i}):k.rects),{x:p,y:m}=kA(d,y,u)),E=-1)}return{x:p,y:m,placement:y,strategy:i,middlewareData:v}};async function Yp(r,e){var t;e===void 0&&(e={});const{x:n,y:i,platform:s,rects:o,elements:l,strategy:u}=r,{boundary:d="clippingAncestors",rootBoundary:p="viewport",elementContext:m="floating",altBoundary:y=!1,padding:v=0}=il(e,r),S=JT(v),A=l[y?m==="floating"?"reference":"floating":m],M=xy(await s.getClippingRect({element:(t=await(s.isElement==null?void 0:s.isElement(A)))==null||t?A:A.contextElement||await(s.getDocumentElement==null?void 0:s.getDocumentElement(l.floating)),boundary:d,rootBoundary:p,strategy:u})),T=m==="floating"?{x:n,y:i,width:o.floating.width,height:o.floating.height}:o.reference,I=await(s.getOffsetParent==null?void 0:s.getOffsetParent(l.floating)),P=await(s.isElement==null?void 0:s.isElement(I))?await(s.getScale==null?void 0:s.getScale(I))||{x:1,y:1}:{x:1,y:1},k=xy(s.convertOffsetParentRelativeRectToViewportRelativeRect?await s.convertOffsetParentRelativeRectToViewportRelativeRect({elements:l,rect:T,offsetParent:I,strategy:u}):T);return{top:(M.top-k.top+S.top)/P.y,bottom:(k.bottom-M.bottom+S.bottom)/P.y,left:(M.left-k.left+S.left)/P.x,right:(k.right-M.right+S.right)/P.x}}const D8=r=>({name:"arrow",options:r,async fn(e){const{x:t,y:n,placement:i,rects:s,platform:o,elements:l,middlewareData:u}=e,{element:d,padding:p=0}=il(r,e)||{};if(d==null)return{};const m=JT(p),y={x:t,y:n},v=zM(i),S=jM(v),E=await o.getDimensions(d),A=v==="y",M=A?"top":"left",T=A?"bottom":"right",I=A?"clientHeight":"clientWidth",P=s.reference[S]+s.reference[v]-y[v]-s.floating[S],k=y[v]-s.reference[v],O=await(o.getOffsetParent==null?void 0:o.getOffsetParent(d));let N=O?O[I]:0;(!N||!await(o.isElement==null?void 0:o.isElement(O)))&&(N=l.floating[I]||s.floating[S]);const H=P/2-k/2,F=N/2-E[S]/2-1,L=nc(m[M],F),V=nc(m[T],F),te=L,ne=N-E[S]-V,ce=N/2-E[S]/2+H,me=mx(te,ce,ne),he=!u.arrow&&Zd(i)!=null&&ce!==me&&s.reference[S]/2-(ce<te?L:V)-E[S]/2<0,ge=he?ce<te?ce-te:ce-ne:0;return{[v]:y[v]+ge,data:{[v]:me,centerOffset:ce-me-ge,...he&&{alignmentOffset:ge}},reset:he}}}),L8=function(r){return r===void 0&&(r={}),{name:"flip",options:r,async fn(e){var t,n;const{placement:i,middlewareData:s,rects:o,initialPlacement:l,platform:u,elements:d}=e,{mainAxis:p=!0,crossAxis:m=!0,fallbackPlacements:y,fallbackStrategy:v="bestFit",fallbackAxisSideDirection:S="none",flipAlignment:E=!0,...A}=il(r,e);if((t=s.arrow)!=null&&t.alignmentOffset)return{};const M=sl(i),T=rc(l),I=sl(l)===l,P=await(u.isRTL==null?void 0:u.isRTL(d.floating)),k=y||(I||!E?[_y(l)]:I8(l)),O=S!=="none";!y&&O&&k.push(...R8(l,E,S,P));const N=[l,...k],H=await Yp(e,A),F=[];let L=((n=s.flip)==null?void 0:n.overflows)||[];if(p&&F.push(H[M]),m){const ce=T8(i,o,P);F.push(H[ce[0]],H[ce[1]])}if(L=[...L,{placement:i,overflows:F}],!F.every(ce=>ce<=0)){var V,te;const ce=(((V=s.flip)==null?void 0:V.index)||0)+1,me=N[ce];if(me)return{data:{index:ce,overflows:L},reset:{placement:me}};let he=(te=L.filter(ge=>ge.overflows[0]<=0).sort((ge,U)=>ge.overflows[1]-U.overflows[1])[0])==null?void 0:te.placement;if(!he)switch(v){case"bestFit":{var ne;const ge=(ne=L.filter(U=>{if(O){const Z=rc(U.placement);return Z===T||Z==="y"}return!0}).map(U=>[U.placement,U.overflows.filter(Z=>Z>0).reduce((Z,q)=>Z+q,0)]).sort((U,Z)=>U[1]-Z[1])[0])==null?void 0:ne[0];ge&&(he=ge);break}case"initialPlacement":he=l;break}if(i!==he)return{reset:{placement:he}}}return{}}}};function UA(r,e){return{top:r.top-e.height,right:r.right-e.width,bottom:r.bottom-e.height,left:r.left-e.width}}function jA(r){return E8.some(e=>r[e]>=0)}const N8=function(r){return r===void 0&&(r={}),{name:"hide",options:r,async fn(e){const{rects:t}=e,{strategy:n="referenceHidden",...i}=il(r,e);switch(n){case"referenceHidden":{const s=await Yp(e,{...i,elementContext:"reference"}),o=UA(s,t.reference);return{data:{referenceHiddenOffsets:o,referenceHidden:jA(o)}}}case"escaped":{const s=await Yp(e,{...i,altBoundary:!0}),o=UA(s,t.floating);return{data:{escapedOffsets:o,escaped:jA(o)}}}default:return{}}}}};async function F8(r,e){const{placement:t,platform:n,elements:i}=r,s=await(n.isRTL==null?void 0:n.isRTL(i.floating)),o=sl(t),l=Zd(t),u=rc(t)==="y",d=["left","top"].includes(o)?-1:1,p=s&&u?-1:1,m=il(e,r);let{mainAxis:y,crossAxis:v,alignmentAxis:S}=typeof m=="number"?{mainAxis:m,crossAxis:0,alignmentAxis:null}
vendor: 4,877 bytes, line 3914
3914:{mainAxis:m.mainAxis||0,crossAxis:m.crossAxis||0,alignmentAxis:m.alignmentAxis};return l&&typeof S=="number"&&(v=l==="end"?S*-1:S),u?{x:v*p,y:y*d}:{x:y*d,y:v*p}}const k8=function(r){return r===void 0&&(r=0),{name:"offset",options:r,async fn(e){var t,n;const{x:i,y:s,placement:o,middlewareData:l}=e,u=await F8(e,r);return o===((t=l.offset)==null?void 0:t.placement)&&(n=l.arrow)!=null&&n.alignmentOffset?{}:{x:i+u.x,y:s+u.y,data:{...u,placement:o}}}}},U8=function(r){return r===void 0&&(r={}),{name:"shift",options:r,async fn(e){const{x:t,y:n,placement:i}=e,{mainAxis:s=!0,crossAxis:o=!1,limiter:l={fn:A=>{let{x:M,y:T}=A;return{x:M,y:T}}},...u}=il(r,e),d={x:t,y:n},p=await Yp(e,u),m=rc(sl(i)),y=UM(m);let v=d[y],S=d[m];if(s){const A=y==="y"?"top":"left",M=y==="y"?"bottom":"right",T=v+p[A],I=v-p[M];v=mx(T,v,I)}if(o){const A=m==="y"?"top":"left",M=m==="y"?"bottom":"right",T=S+p[A],I=S-p[M];S=mx(T,S,I)}const E=l.fn({...e,[y]:v,[m]:S});return{...E,data:{x:E.x-t,y:E.y-n,enabled:{[y]:s,[m]:o}}}}}},j8=function(r){return r===void 0&&(r={}),{options:r,fn(e){const{x:t,y:n,placement:i,rects:s,middlewareData:o}=e,{offset:l=0,mainAxis:u=!0,crossAxis:d=!0}=il(r,e),p={x:t,y:n},m=rc(i),y=UM(m);let v=p[y],S=p[m];const E=il(l,e),A=typeof E=="number"?{mainAxis:E,crossAxis:0}:{mainAxis:0,crossAxis:0,...E};if(u){const I=y==="y"?"height":"width",P=s.reference[y]-s.floating[I]+A.mainAxis,k=s.reference[y]+s.reference[I]-A.mainAxis;v<P?v=P:v>k&&(v=k)}if(d){var M,T;const I=y==="y"?"width":"height",P=["top","left"].includes(sl(i)),k=s.reference[m]-s.floating[I]+(P&&((M=o.offset)==null?void 0:M[m])||0)+(P?0:A.crossAxis),O=s.reference[m]+s.reference[I]+(P?0:((T=o.offset)==null?void 0:T[m])||0)-(P?A.crossAxis:0);S<k?S=k:S>O&&(S=O)}return{[y]:v,[m]:S}}}},z8=function(r){return r===void 0&&(r={}),{name:"size",options:r,async fn(e){var t,n;const{placement:i,rects:s,platform:o,elements:l}=e,{apply:u=()=>{},...d}=il(r,e),p=await Yp(e,d),m=sl(i),y=Zd(i),v=rc(i)==="y",{width:S,height:E}=s.floating;let A,M;m==="top"||m==="bottom"?(A=m,M=y===(await(o.isRTL==null?void 0:o.isRTL(l.floating))?"start":"end")?"left":"right"):(M=m,A=y==="end"?"top":"bottom");const T=E-p.top-p.bottom,I=S-p.left-p.right,P=nc(E-p[A],T),k=nc(S-p[M],I),O=!e.middlewareData.shift;let N=P,H=k;if((t=e.middlewareData.shift)!=null&&t.enabled.x&&(H=I),(n=e.middlewareData.shift)!=null&&n.enabled.y&&(N=T),O&&!y){const L=gs(p.left,0),V=gs(p.right,0),te=gs(p.top,0),ne=gs(p.bottom,0);v?H=S-2*(L!==0||V!==0?L+V:gs(p.left,p.right)):N=E-2*(te!==0||ne!==0?te+ne:gs(p.top,p.bottom))}await u({...e,availableWidth:H,availableHeight:N});const F=await o.getDimensions(l.floating);return S!==F.width||E!==F.height?{reset:{rects:!0}}:{}}}};function p1(){return typeof window<"u"}function ef(r){return $T(r)?(r.nodeName||"").toLowerCase():"#document"}function xs(r){var e;return(r==null||(e=r.ownerDocument)==null?void 0:e.defaultView)||window}function na(r){var e;return(e=($T(r)?r.ownerDocument:r.document)||window.document)==null?void 0:e.documentElement}function $T(r){return p1()?r instanceof Node||r instanceof xs(r).Node:!1}function wo(r){return p1()?r instanceof Element||r instanceof xs(r).Element:!1}function ea(r){return p1()?r instanceof HTMLElement||r instanceof xs(r).HTMLElement:!1}function zA(r){return!p1()||typeof ShadowRoot>"u"?!1:r instanceof ShadowRoot||r instanceof xs(r).ShadowRoot}function ym(r){const{overflow:e,overflowX:t,overflowY:n,display:i}=Ao(r);return/auto|scroll|overlay|hidden|clip/.test(e+n+t)&&!["inline","contents"].includes(i)}function H8(r){return["table","td","th"].includes(ef(r))}function m1(r){return[":popover-open",":modal"].some(e=>{try{return r.matches(e)}catch{return!1}})}function HM(r){const e=GM(),t=wo(r)?Ao(r):r;return t.transform!=="none"||t.perspective!=="none"||(t.containerType?t.containerType!=="normal":!1)||!e&&(t.backdropFilter?t.backdropFilter!=="none":!1)||!e&&(t.filter?t.filter!=="none":!1)||["transform","perspective","filter"].some(n=>(t.willChange||"").includes(n))||["paint","layout","strict","content"].some(n=>(t.contain||"").includes(n))}function G8(r){let e=ic(r);for(;ea(e)&&!zd(e);){if(HM(e))return e;if(m1(e))return null;e=ic(e)}return null}function GM(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}function zd(r){return["html","body","#document"].includes(ef(r))}function Ao(r){return xs(r).getComputedStyle(r)}function g1(r){return wo(r)?{scrollLeft:r.scrollLeft,scrollTop:r.scrollTop}:{scrollLeft:r.scrollX,scrollTop:r.scrollY}}function ic(r){if(ef(r)==="html")return r;const e=r.assignedSlot||r.parentNode||zA(r)&&r.host||na(r);return zA(e)?e.host:e}function KT(r){const e=ic(r);return zd(e)?r.ownerDocument?r.ownerDocument.body:r.body:ea(e)&&ym(e)?e:KT(e)}function qp(r,e,t){var n;e===void 0&&(e=[]),t===void 0&&(t=!0);const i=KT(r),s=i===((n=r.ownerDocument)==null?void 0:n.body),o=xs(i);if(s){const l=yx(o);
vendor: 7,257 bytes, line 3914
3914return e.concat(o,o.visualViewport||[],ym(i)?i:[],l&&t?qp(l):[])}return e.concat(i,qp(i,[],t))}function yx(r){return r.parent&&Object.getPrototypeOf(r.parent)?r.frameElement:null}function YT(r){const e=Ao(r);let t=parseFloat(e.width)||0,n=parseFloat(e.height)||0;const i=ea(r),s=i?r.offsetWidth:t,o=i?r.offsetHeight:n,l=vy(t)!==s||vy(n)!==o;return l&&(t=s,n=o),{width:t,height:n,$:l}}function VM(r){return wo(r)?r:r.contextElement}function Bd(r){const e=VM(r);if(!ea(e))return Yo(1);const t=e.getBoundingClientRect(),{width:n,height:i,$:s}=YT(e);let o=(s?vy(t.width):t.width)/n,l=(s?vy(t.height):t.height)/i;return(!o||!Number.isFinite(o))&&(o=1),(!l||!Number.isFinite(l))&&(l=1),{x:o,y:l}}const V8=Yo(0);function qT(r){const e=xs(r);return!GM()||!e.visualViewport?V8:{x:e.visualViewport.offsetLeft,y:e.visualViewport.offsetTop}}function W8(r,e,t){return e===void 0&&(e=!1),!t||e&&t!==xs(r)?!1:e}function Fu(r,e,t,n){e===void 0&&(e=!1),t===void 0&&(t=!1);const i=r.getBoundingClientRect(),s=VM(r);let o=Yo(1);e&&(n?wo(n)&&(o=Bd(n)):o=Bd(r));const l=W8(s,t,n)?qT(s):Yo(0);let u=(i.left+l.x)/o.x,d=(i.top+l.y)/o.y,p=i.width/o.x,m=i.height/o.y;if(s){const y=xs(s),v=n&&wo(n)?xs(n):n;let S=y,E=yx(S);for(;E&&n&&v!==S;){const A=Bd(E),M=E.getBoundingClientRect(),T=Ao(E),I=M.left+(E.clientLeft+parseFloat(T.paddingLeft))*A.x,P=M.top+(E.clientTop+parseFloat(T.paddingTop))*A.y;u*=A.x,d*=A.y,p*=A.x,m*=A.y,u+=I,d+=P,S=xs(E),E=yx(S)}}return xy({width:p,height:m,x:u,y:d})}function WM(r,e){const t=g1(r).scrollLeft;return e?e.left+t:Fu(na(r)).left+t}function QT(r,e,t){t===void 0&&(t=!1);const n=r.getBoundingClientRect(),i=n.left+e.scrollLeft-(t?0:WM(r,n)),s=n.top+e.scrollTop;return{x:i,y:s}}function X8(r){let{elements:e,rect:t,offsetParent:n,strategy:i}=r;const s=i==="fixed",o=na(n),l=e?m1(e.floating):!1;if(n===o||l&&s)return t;let u={scrollLeft:0,scrollTop:0},d=Yo(1);const p=Yo(0),m=ea(n);if((m||!m&&!s)&&((ef(n)!=="body"||ym(o))&&(u=g1(n)),ea(n))){const v=Fu(n);d=Bd(n),p.x=v.x+n.clientLeft,p.y=v.y+n.clientTop}const y=o&&!m&&!s?QT(o,u,!0):Yo(0);return{width:t.width*d.x,height:t.height*d.y,x:t.x*d.x-u.scrollLeft*d.x+p.x+y.x,y:t.y*d.y-u.scrollTop*d.y+p.y+y.y}}function J8(r){return Array.from(r.getClientRects())}function $8(r){const e=na(r),t=g1(r),n=r.ownerDocument.body,i=gs(e.scrollWidth,e.clientWidth,n.scrollWidth,n.clientWidth),s=gs(e.scrollHeight,e.clientHeight,n.scrollHeight,n.clientHeight);let o=-t.scrollLeft+WM(r);const l=-t.scrollTop;return Ao(n).direction==="rtl"&&(o+=gs(e.clientWidth,n.clientWidth)-i),{width:i,height:s,x:o,y:l}}function K8(r,e){const t=xs(r),n=na(r),i=t.visualViewport;let s=n.clientWidth,o=n.clientHeight,l=0,u=0;if(i){s=i.width,o=i.height;const d=GM();(!d||d&&e==="fixed")&&(l=i.offsetLeft,u=i.offsetTop)}return{width:s,height:o,x:l,y:u}}function Y8(r,e){const t=Fu(r,!0,e==="fixed"),n=t.top+r.clientTop,i=t.left+r.clientLeft,s=ea(r)?Bd(r):Yo(1),o=r.clientWidth*s.x,l=r.clientHeight*s.y,u=i*s.x,d=n*s.y;return{width:o,height:l,x:u,y:d}}function HA(r,e,t){let n;if(e==="viewport")n=K8(r,t);else if(e==="document")n=$8(na(r));else if(wo(e))n=Y8(e,t);else{const i=qT(r);n={x:e.x-i.x,y:e.y-i.y,width:e.width,height:e.height}}return xy(n)}function ZT(r,e){const t=ic(r);return t===e||!wo(t)||zd(t)?!1:Ao(t).position==="fixed"||ZT(t,e)}function q8(r,e){const t=e.get(r);if(t)return t;let n=qp(r,[],!1).filter(l=>wo(l)&&ef(l)!=="body"),i=null;const s=Ao(r).position==="fixed";let o=s?ic(r):r;for(;wo(o)&&!zd(o);){const l=Ao(o),u=HM(o);!u&&l.position==="fixed"&&(i=null),(s?!u&&!i:!u&&l.position==="static"&&!!i&&["absolute","fixed"].includes(i.position)||ym(o)&&!u&&ZT(r,o))?n=n.filter(p=>p!==o):i=l,o=ic(o)}return e.set(r,n),n}function Q8(r){let{element:e,boundary:t,rootBoundary:n,strategy:i}=r;const o=[...t==="clippingAncestors"?m1(e)?[]:q8(e,this._c):[].concat(t),n],l=o[0],u=o.reduce((d,p)=>{const m=HA(e,p,i);return d.top=gs(m.top,d.top),d.right=nc(m.right,d.right),d.bottom=nc(m.bottom,d.bottom),d.left=gs(m.left,d.left),d},HA(e,l,i));return{width:u.right-u.left,height:u.bottom-u.top,x:u.left,y:u.top}}function Z8(r){const{width:e,height:t}=YT(r);return{width:e,height:t}}function eF(r,e,t){const n=ea(e),i=na(e),s=t==="fixed",o=Fu(r,!0,s,e);let l={scrollLeft:0,scrollTop:0};const u=Yo(0);if(n||!n&&!s)if((ef(e)!=="body"||ym(i))&&(l=g1(e)),n){const y=Fu(e,!0,s,e);u.x=y.x+e.clientLeft,u.y=y.y+e.clientTop}else i&&(u.x=WM(i));const d=i&&!n&&!s?QT(i,l):Yo(0),p=o.left+l.scrollLeft-u.x-d.x,m=o.top+l.scrollTop-u.y-d.y;return{x:p,y:m,width:o.width,height:o.height}}function y_(r){return Ao(r).position==="static"}function GA(r,e){if(!ea(r)||Ao(r).position==="fixed")return null;if(e)return e(r);let t=r.offsetParent;return na(r)===t&&(t=t.ownerDocument.body),t}function e4(r,e){const t=xs(r);if(m1(r))return t;if(!ea(r)){let i=ic(r);for(;i&&!zd(i);){if(wo(i)&&!y_(i))return i;i=ic(i)}return t}let n=GA(r,e);for(;n&&H8(n)&&y_(n);)n=GA(n,e);return n&&zd(n)&&y_(n)&&!HM(n)?t:n||G8(r)||t}const tF=async function(r){const e=this.getOffsetParent||e4,t=this.getDimensions,n=await t(r.floating);return{reference:eF(r.reference,await e(r.floating),r.strategy),floating:{x:0,y:0,width:n.width,height:n.height}}};function nF(r){return Ao(r).direction==="rtl"}const rF={convertOffsetParentRelativeRectToViewportRelativeRect:X8,getDocumentElement:na,getClippingRect:Q8,getOffsetParent:e4,getElementRects:tF,getClientRects:J8,getDimensions:Z8,getScale:Bd,isElement:wo,isRTL:nF};function iF(r,e){let t=null,n;const i=na(r);function s(){var l;clearTimeout(n),(l=t)==null||l.disconnect(),t=null}function o(l,u){l===void 0&&(l=!1),u===void 0&&(u=1),s();const{left:d,top:p,width:m,height:y}=r.getBoundingClientRect();if(l||e(),!m||!y)return;const v=dg(p),S=dg(i.clientWidth-(d+m)),E=dg(i.clientHeight-(p+y)),A=dg(d),T={rootMargin:-v+"px "+-S+"px "+-E+"px "+-A+"px",threshold:gs(0,nc(1,u))||1};let I=!0;function P(k){const O=k[0].intersectionRatio;if(O!==u){if(!I)return o();O?o(!1,O):n=setTimeout(()=>{o(!1,1e-7)},1e3)}I=!1}try{t=new IntersectionObserver(P,{...T,root:i.ownerDocument})}catch{t=new IntersectionObserver(P,T)}t.observe(r)}return o(!0),s}function sF(r,e,t,n){n===void 0&&(n={});const{ancestorScroll:i=!0,ancestorResize:s=!0,elementResize:o=typeof ResizeObserver=="function",layoutShift:l=typeof IntersectionObserver=="function",animationFrame:u=!1}=n,d=VM(r),p=i||s?[...d?qp(d):[],...qp(e)]:[];p.forEach(M=>{i&&M.addEventListener("scroll",t,{passive:!0}),s&&M.addEventListener("resize",t)});const m=d&&l?iF(d,t):null;let y=-1,v=null;o&&(v=new ResizeObserver(M=>{let[T]=M;T&&T.target===d&&v&&(v.unobserve(e),cancelAnimationFrame(y),y=requestAnimationFrame(()=>{var I;(I=v)==null||I.observe(e)})),t()}),d&&!u&&v.observe(d),v.observe(e));let S,E=u?Fu(r):null;u&&A();function A(){const M=Fu(r);E&&(M.x!==E.x||M.y!==E.y||M.width!==E.width||M.height!==E.height)&&t(),E=M,S=requestAnimationFrame(A)}return t(),()=>{var M;p.forEach(T=>{i&&T.removeEventListener("scroll",t),s&&T.removeEventListener("resize",t)}),m==null||m(),(M=v)==null||M.disconnect(),v=null,u&&cancelAnimationFrame(S)}}const oF=k8,aF=U8,lF=L8,cF=z8,uF=N8,VA=D8,hF=j8,dF=(r,e,t)=>{const n=new Map,i={platform:rF,...t},s={...i.platform,_c:n};return O8(r,e,{...i,platform:s})};var Ag=typeof document<"u"?z.useLayoutEffect:z.useEffect;function My(r,e){if(r===e)return!0;
vendor: 6,567 bytes, line 3914
3914if(typeof r!=typeof e)return!1;if(typeof r=="function"&&r.toString()===e.toString())return!0;let t,n,i;if(r&&e&&typeof r=="object"){if(Array.isArray(r)){if(t=r.length,t!==e.length)return!1;for(n=t;n--!==0;)if(!My(r[n],e[n]))return!1;return!0}if(i=Object.keys(r),t=i.length,t!==Object.keys(e).length)return!1;for(n=t;n--!==0;)if(!{}.hasOwnProperty.call(e,i[n]))return!1;for(n=t;n--!==0;){const s=i[n];if(!(s==="_owner"&&r.$$typeof)&&!My(r[s],e[s]))return!1}return!0}return r!==r&&e!==e}function t4(r){return typeof window>"u"?1:(r.ownerDocument.defaultView||window).devicePixelRatio||1}function WA(r,e){const t=t4(r);return Math.round(e*t)/t}function v_(r){const e=z.useRef(r);return Ag(()=>{e.current=r}),e}function fF(r){r===void 0&&(r={});const{placement:e="bottom",strategy:t="absolute",middleware:n=[],platform:i,elements:{reference:s,floating:o}={},transform:l=!0,whileElementsMounted:u,open:d}=r,[p,m]=z.useState({x:0,y:0,strategy:t,placement:e,middlewareData:{},isPositioned:!1}),[y,v]=z.useState(n);My(y,n)||v(n);const[S,E]=z.useState(null),[A,M]=z.useState(null),T=z.useCallback(U=>{U!==O.current&&(O.current=U,E(U))},[]),I=z.useCallback(U=>{U!==N.current&&(N.current=U,M(U))},[]),P=s||S,k=o||A,O=z.useRef(null),N=z.useRef(null),H=z.useRef(p),F=u!=null,L=v_(u),V=v_(i),te=v_(d),ne=z.useCallback(()=>{if(!O.current||!N.current)return;const U={placement:e,strategy:t,middleware:y};V.current&&(U.platform=V.current),dF(O.current,N.current,U).then(Z=>{const q={...Z,isPositioned:te.current!==!1};ce.current&&!My(H.current,q)&&(H.current=q,NM.flushSync(()=>{m(q)}))})},[y,e,t,V,te]);Ag(()=>{d===!1&&H.current.isPositioned&&(H.current.isPositioned=!1,m(U=>({...U,isPositioned:!1})))},[d]);const ce=z.useRef(!1);Ag(()=>(ce.current=!0,()=>{ce.current=!1}),[]),Ag(()=>{if(P&&(O.current=P),k&&(N.current=k),P&&k){if(L.current)return L.current(P,k,ne);ne()}},[P,k,ne,L,F]);const me=z.useMemo(()=>({reference:O,floating:N,setReference:T,setFloating:I}),[T,I]),he=z.useMemo(()=>({reference:P,floating:k}),[P,k]),ge=z.useMemo(()=>{const U={position:t,left:0,top:0};if(!he.floating)return U;const Z=WA(he.floating,p.x),q=WA(he.floating,p.y);return l?{...U,transform:"translate("+Z+"px, "+q+"px)",...t4(he.floating)>=1.5&&{willChange:"transform"}}:{position:t,left:Z,top:q}},[t,l,he.floating,p.x,p.y]);return z.useMemo(()=>({...p,update:ne,refs:me,elements:he,floatingStyles:ge}),[p,ne,me,he,ge])}const pF=r=>{function e(t){return{}.hasOwnProperty.call(t,"current")}return{name:"arrow",options:r,fn(t){const{element:n,padding:i}=typeof r=="function"?r(t):r;return n&&e(n)?n.current!=null?VA({element:n.current,padding:i}).fn(t):{}:n?VA({element:n,padding:i}).fn(t):{}}}},mF=(r,e)=>({...oF(r),options:[r,e]}),gF=(r,e)=>({...aF(r),options:[r,e]}),yF=(r,e)=>({...hF(r),options:[r,e]}),vF=(r,e)=>({...lF(r),options:[r,e]}),_F=(r,e)=>({...cF(r),options:[r,e]}),xF=(r,e)=>({...uF(r),options:[r,e]}),MF=(r,e)=>({...pF(r),options:[r,e]});var SF="Arrow",n4=z.forwardRef((r,e)=>{const{children:t,width:n=10,height:i=5,...s}=r;return _.jsx(uc.svg,{...s,ref:e,width:n,height:i,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:r.asChild?t:_.jsx("polygon",{points:"0,0 30,0 15,10"})})});n4.displayName=SF;var wF=n4;function AF(r){const[e,t]=z.useState(void 0);return Nu(()=>{if(r){t({width:r.offsetWidth,height:r.offsetHeight});const n=new ResizeObserver(i=>{if(!Array.isArray(i)||!i.length)return;const s=i[0];let o,l;if("borderBoxSize"in s){const u=s.borderBoxSize,d=Array.isArray(u)?u[0]:u;o=d.inlineSize,l=d.blockSize}else o=r.offsetWidth,l=r.offsetHeight;t({width:o,height:l})});return n.observe(r,{box:"border-box"}),()=>n.unobserve(r)}else t(void 0)},[r]),e}var XM="Popper",[r4,i4]=GT(XM),[EF,s4]=r4(XM),o4=r=>{const{__scopePopper:e,children:t}=r,[n,i]=z.useState(null);return _.jsx(EF,{scope:e,anchor:n,onAnchorChange:i,children:t})};o4.displayName=XM;var a4="PopperAnchor",l4=z.forwardRef((r,e)=>{const{__scopePopper:t,virtualRef:n,...i}=r,s=s4(a4,t),o=z.useRef(null),l=Wu(e,o);return z.useEffect(()=>{s.onAnchorChange((n==null?void 0:n.current)||o.current)}),n?null:_.jsx(uc.div,{...i,ref:l})});l4.displayName=a4;var JM="PopperContent",[bF,CF]=r4(JM),c4=z.forwardRef((r,e)=>{var Ie,Ge,qe,lt,Pt,Be;const{__scopePopper:t,side:n="bottom",sideOffset:i=0,align:s="center",alignOffset:o=0,arrowPadding:l=0,avoidCollisions:u=!0,collisionBoundary:d=[],collisionPadding:p=0,sticky:m="partial",hideWhenDetached:y=!1,updatePositionStrategy:v="optimized",onPlaced:S,...E}=r,A=s4(JM,t),[M,T]=z.useState(null),I=Wu(e,Oe=>T(Oe)),[P,k]=z.useState(null),O=AF(P),N=(O==null?void 0:O.width)??0,H=(O==null?void 0:O.height)??0,F=n+(s!=="center"?"-"+s:""),L=typeof p=="number"?p:{top:0,right:0,bottom:0,left:0,...p},V=Array.isArray(d)?d:[d],te=V.length>0,ne={padding:L,boundary:V.filter(IF),altBoundary:te},{refs:ce,floatingStyles:me,placement:he,isPositioned:ge,middlewareData:U}=fF({strategy:"fixed",placement:F,whileElementsMounted:(...Oe)=>sF(...Oe,{animationFrame:v==="always"}),elements:{reference:A.anchor},middleware:[mF({mainAxis:i+H,alignmentAxis:o}),u&&gF({mainAxis:!0,crossAxis:!1,limiter:m==="partial"?yF():void 0,...ne}),u&&vF({...ne}),_F({...ne,apply:({elements:Oe,rects:K,availableWidth:pt,availableHeight:Fe})=>{const{width:st,height:Ve}=K.reference,St=Oe.floating.style;St.setProperty("--radix-popper-available-width",`${pt}px`),St.setProperty("--radix-popper-available-height",`${Fe}px`),St.setProperty("--radix-popper-anchor-width",`${st}px`),St.setProperty("--radix-popper-anchor-height",`${Ve}px`)}}),P&&MF({element:P,padding:l}),PF({arrowWidth:N,arrowHeight:H}),y&&xF({strategy:"referenceHidden",...ne})]}),[Z,q]=d4(he),X=Qd(S);Nu(()=>{ge&&(X==null||X())},[ge,X]);const se=(Ie=U.arrow)==null?void 0:Ie.x,Le=(Ge=U.arrow)==null?void 0:Ge.y,pe=((qe=U.arrow)==null?void 0:qe.centerOffset)!==0,[Ae,Re]=z.useState();return Nu(()=>{M&&Re(window.getComputedStyle(M).zIndex)},[M]),_.jsx("div",{ref:ce.setFloating,"data-radix-popper-content-wrapper":"",style:{...me,transform:ge?me.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:Ae,"--radix-popper-transform-origin":[(lt=U.transformOrigin)==null?void 0:lt.x,(Pt=U.transformOrigin)==null?void 0:Pt.y].join(" "),...((Be=U.hide)==null?void 0:Be.referenceHidden)&&{visibility:"hidden",pointerEvents:"none"}},dir:r.dir,children:_.jsx(bF,{scope:t,placedSide:Z,onArrowChange:k,arrowX:se,arrowY:Le,shouldHideArrow:pe,children:_.jsx(uc.div,{"data-side":Z,"data-align":q,...E,ref:I,style:{...E.style,animation:ge?void 0:"none"}})})})});c4.displayName=JM;var u4="PopperArrow",TF={top:"bottom",right:"left",bottom:"top",left:"r
3914ight"},h4=z.forwardRef(function(e,t){const{__scopePopper:n,...i}=e,s=CF(u4,n),o=TF[s.placedSide];return _.jsx("span",{ref:s.onArrowChange,style:{position:"absolute",left:s.arrowX,top:s.arrowY,[o]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[s.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[s.placedSide],visibility:s.shouldHideArrow?"hidden":void 0},children:_.jsx(wF,{...i,ref:t,style:{...i.style,display:"block"}})})});h4.displayName=u4;function IF(r){return r!==null}var PF=r=>({name:"transformOrigin",options:r,fn(e){var A,M,T;const{placement:t,rects:n,middlewareData:i}=e,o=((A=i.arrow)==null?void 0:A.centerOffset)!==0,l=o?0:r.arrowWidth,u=o?0:r.arrowHeight,[d,p]=d4(t),m={start:"0%",center:"50%",end:"100%"}[p],y=(((M=i.arrow)==null?void 0:M.x)??0)+l/2,v=(((T=i.arrow)==null?void 0:T.y)??0)+u/2;let S="",E="";return d==="bottom"?(S=o?m:`${y}px`,E=`${-u}px`):d==="top"?(S=o?m:`${y}px`,E=`${n.floating.height+u}px`):d==="right"?(S=`${-u}px`,E=o?m:`${v}px`):d==="left"&&(S=`${n.floating.width+u}px`,E=o?m:`${v}px`),{data:{x:S,y:E}}}});function d4(r){const[e,t="center"]=r.split("-");return[e,t]}var RF=o4,BF=l4,OF=c4,DF=h4;function LF(r,e){return z.useReducer((t,n)=>e[t][n]??t,r)}var f4=r=>{const{present:e,children:t}=r,n=NF(e),i=typeof t=="function"?t({present:n.isPresent}):z.Children.only(t),s=Wu(n.ref,FF(i));return typeof t=="function"||n.isPresent?z.cloneElement(i,{ref:s}):null};f4.displayName="Presence";function NF(r){const[e,t]=z.useState(),n=z.useRef({}),i=z.useRef(r),s=z.useRef("none"),o=r?"mounted":"unmounted",[l,u]=LF(o,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return z.useEffect(()=>{const d=fg(n.current);s.current=l==="mounted"?d:"none"},[l]),Nu(()=>{const d=n.current,p=i.current;if(p!==r){const y=s.current,v=fg(d);r?u("MOUNT"):v==="none"||(d==null?void 0:d.display)==="none"?u("UNMOUNT"):u(p&&y!==v?"ANIMATION_OUT":"UNMOUNT"),i.current=r}},[r,u]),Nu(()=>{if(e){let d;const p=e.ownerDocument.defaultView??window,m=v=>{const E=fg(n.current).includes(v.animationName);if(v.target===e&&E&&(u("ANIMATION_END"),!i.current)){const A=e.style.animationFillMode;e.style.animationFillMode="forwards",d=p.setTimeout(()=>{e.style.animationFillMode==="forwards"&&(e.style.animationFillMode=A)})}},y=v=>{v.target===e&&(s.current=fg(n.current))};return e.addEventListener("animationstart",y),e.addEventListener("animationcancel",m),e.addEventListener("animationend",m),()=>{p.clearTimeout(d),e.removeEventListener("animationstart",y),e.removeEventListener("animationcancel",m),e.removeEventListener("animationend",m)}}else u("ANIMATION_END")},[e,u]),{isPresent:["mounted","unmountSuspended"].includes(l),ref:z.useCallback(d=>{d&&(n.current=getComputedStyle(d)),t(d)},[])}}function fg(r){return(r==null?void 0:r.animationName)||"none"}function FF(r){var n,i;let e=(n=Object.getOwnPropertyDescriptor(r.props,"ref"))==null?void 0:n.get,t=e&&"isReactWarning"in e&&e.isReactWarning;return t?r.ref:(e=(i=Object.getOwnPropertyDescriptor(r,"ref"))==null?void 0:i.get,t=e&&"isReactWarning"in e&&e.isReactWarning,t?r.props.ref:r.props.ref||r.ref)}function kF({prop:r,defaultProp:e,onChange:t=()=>{}}){const[n,i]=UF({defaultProp:e,onChange:t}),s=r!==void 0,o=s?r:n,l=Qd(t),u=z.useCallback(d=>{if(s){const m=typeof d=="function"?d(r):d;m!==r&&l(m)}else i(d)},[s,r,i,l]);return[o,u]}function UF({defaultProp:r,onChange:e}){const t=z.useState(r),[n]=t,i=z.useRef(n),s=Qd(e);return z.useEffect(()=>{i.current!==n&&(s(n),i.current=n)},[n,i,s]),t}var jF="VisuallyHidden",p4=z.forwardRef((r,e)=>_.jsx(uc.span,{...r,ref:e,style:{position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal",...r.style}}));p4.displayName=jF;var zF=p4,[y1,FV]=GT("Tooltip",[i4]),v1=i4(),HF="TooltipProvider",vx="tooltip.open",[kV,$M]=y1(HF),_1="Tooltip",[GF,x1]=y1(_1),m4=r=>{const{__scopeTooltip:e,children:t,open:n,defaultOpen:i=!1,onOpenChange:s,disableHoverableContent:o,delayDuration:l}=r,u=$M(_1,r.__scopeTooltip),d=v1(e),[p,m]=z.useState(null),y=A8(),v=z.useRef(0),S=o??u.disableHoverableContent,E=l??u.delayDuration,A=z.useRef(!1),[M=!1,T]=k
vendor: 4,742 bytes, line 3914
3914F({prop:n,defaultProp:i,onChange:N=>{N?(u.onOpen(),document.dispatchEvent(new CustomEvent(vx))):u.onClose(),s==null||s(N)}}),I=z.useMemo(()=>M?A.current?"delayed-open":"instant-open":"closed",[M]),P=z.useCallback(()=>{window.clearTimeout(v.current),v.current=0,A.current=!1,T(!0)},[T]),k=z.useCallback(()=>{window.clearTimeout(v.current),v.current=0,T(!1)},[T]),O=z.useCallback(()=>{window.clearTimeout(v.current),v.current=window.setTimeout(()=>{A.current=!0,T(!0),v.current=0},E)},[E,T]);return z.useEffect(()=>()=>{v.current&&(window.clearTimeout(v.current),v.current=0)},[]),_.jsx(RF,{...d,children:_.jsx(GF,{scope:e,contentId:y,open:M,stateAttribute:I,trigger:p,onTriggerChange:m,onTriggerEnter:z.useCallback(()=>{u.isOpenDelayed?O():P()},[u.isOpenDelayed,O,P]),onTriggerLeave:z.useCallback(()=>{S?k():(window.clearTimeout(v.current),v.current=0)},[k,S]),onOpen:P,onClose:k,disableHoverableContent:S,children:t})})};m4.displayName=_1;var _x="TooltipTrigger",g4=z.forwardRef((r,e)=>{const{__scopeTooltip:t,...n}=r,i=x1(_x,t),s=$M(_x,t),o=v1(t),l=z.useRef(null),u=Wu(e,l,i.onTriggerChange),d=z.useRef(!1),p=z.useRef(!1),m=z.useCallback(()=>d.current=!1,[]);return z.useEffect(()=>()=>document.removeEventListener("pointerup",m),[m]),_.jsx(BF,{asChild:!0,...o,children:_.jsx(uc.button,{"aria-describedby":i.open?i.contentId:void 0,"data-state":i.stateAttribute,...n,ref:u,onPointerMove:Va(r.onPointerMove,y=>{y.pointerType!=="touch"&&!p.current&&!s.isPointerInTransitRef.current&&(i.onTriggerEnter(),p.current=!0)}),onPointerLeave:Va(r.onPointerLeave,()=>{i.onTriggerLeave(),p.current=!1}),onPointerDown:Va(r.onPointerDown,()=>{d.current=!0,document.addEventListener("pointerup",m,{once:!0})}),onFocus:Va(r.onFocus,()=>{d.current||i.onOpen()}),onBlur:Va(r.onBlur,i.onClose),onClick:Va(r.onClick,i.onClose)})})});g4.displayName=_x;var VF="TooltipPortal",[UV,WF]=y1(VF,{forceMount:void 0}),Hd="TooltipContent",y4=z.forwardRef((r,e)=>{const t=WF(Hd,r.__scopeTooltip),{forceMount:n=t.forceMount,side:i="top",...s}=r,o=x1(Hd,r.__scopeTooltip);return _.jsx(f4,{present:n||o.open,children:o.disableHoverableContent?_.jsx(v4,{side:i,...s,ref:e}):_.jsx(XF,{side:i,...s,ref:e})})}),XF=z.forwardRef((r,e)=>{const t=x1(Hd,r.__scopeTooltip),n=$M(Hd,r.__scopeTooltip),i=z.useRef(null),s=Wu(e,i),[o,l]=z.useState(null),{trigger:u,onClose:d}=t,p=i.current,{onPointerInTransitChange:m}=n,y=z.useCallback(()=>{l(null),m(!1)},[m]),v=z.useCallback((S,E)=>{const A=S.currentTarget,M={x:S.clientX,y:S.clientY},T=KF(M,A.getBoundingClientRect()),I=YF(M,T),P=qF(E.getBoundingClientRect()),k=ZF([...I,...P]);l(k),m(!0)},[m]);return z.useEffect(()=>()=>y(),[y]),z.useEffect(()=>{if(u&&p){const S=A=>v(A,p),E=A=>v(A,u);return u.addEventListener("pointerleave",S),p.addEventListener("pointerleave",E),()=>{u.removeEventListener("pointerleave",S),p.removeEventListener("pointerleave",E)}}},[u,p,v,y]),z.useEffect(()=>{if(o){const S=E=>{const A=E.target,M={x:E.clientX,y:E.clientY},T=(u==null?void 0:u.contains(A))||(p==null?void 0:p.contains(A)),I=!QF(M,o);T?y():I&&(y(),d())};return document.addEventListener("pointermove",S),()=>document.removeEventListener("pointermove",S)}},[u,p,o,d,y]),_.jsx(v4,{...r,ref:s})}),[JF,$F]=y1(_1,{isInside:!1}),v4=z.forwardRef((r,e)=>{const{__scopeTooltip:t,children:n,"aria-label":i,onEscapeKeyDown:s,onPointerDownOutside:o,...l}=r,u=x1(Hd,t),d=v1(t),{onClose:p}=u;return z.useEffect(()=>(document.addEventListener(vx,p),()=>document.removeEventListener(vx,p)),[p]),z.useEffect(()=>{if(u.trigger){const m=y=>{const v=y.target;v!=null&&v.contains(u.trigger)&&p()};return window.addEventListener("scroll",m,{capture:!0}),()=>window.removeEventListener("scroll",m,{capture:!0})}},[u.trigger,p]),_.jsx(WT,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:s,onPointerDownOutside:o,onFocusOutside:m=>m.preventDefault(),onDismiss:p,children:_.jsxs(OF,{"data-state":u.stateAttribute,...d,...l,ref:e,style:{...l.style,"--radix-tooltip-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-tooltip-content-available-width":"var(--radix-popper-available-width)","--radix-tooltip-content-available-height":"var(--radix-popper-available-height)","--radix-tooltip-trigger-width":"var(--radix-popper-anchor-width)","--radix-tooltip-trigger-height":"var(--radix-popper-anchor-height)"},children:[_.jsx(LT,{children:n}),_.jsx(JF,{scope:t,isInside:!0,children:_.jsx(zF,{id:u.contentId,role:"tooltip",children:i||n})})]})})});y4.displayName=Hd;var _4="TooltipArrow",x4=z.forwardRef((r,e)=>{const{__scopeTooltip:t,...n}=r,i=v1(t);return $F(_4,t).isInside?null:_.jsx(DF,{...i,...n,ref:e})});x4.displayName=_4;function KF(r,e){const t=Math.abs(e.top-r.y),n=Math.abs(e.bottom-r.y),i=Math.abs(e.right-r.x),s=Math.abs(e.left-r.x);
3914switch(Math.min(t,n,i,s)){case s:return"left";case i:return"right";case t:return"top";case n:return"bottom";default:throw new Error("unreachable")}}function YF(r,e,t=5){const n=[];switch(e){case"top":n.push({x:r.x-t,y:r.y+t},{x:r.x+t,y:r.y+t});break;case"bottom":n.push({x:r.x-t,y:r.y-t},{x:r.x+t,y:r.y-t});break;case"left":n.push({x:r.x+t,y:r.y-t},{x:r.x+t,y:r.y+t});break;case"right":n.push({x:r.x-t,y:r.y-t},{x:r.x-t,y:r.y+t});break}return n}function qF(r){const{top:e,right:t,bottom:n,left:i}=r;return[{x:i,y:e},{x:t,y:e},{x:t,y:n},{x:i,y:n}]}function QF(r,e){const{x:t,y:n}=r;let i=!1;for(let s=0,o=e.length-1;s<e.length;o=s++){const l=e[s].x,u=e[s].y,d=e[o].x,p=e[o].y;u>n!=p>n&&t<(d-l)*(n-u)/(p-u)+l&&(i=!i)}return i}function ZF(r){const e=r.slice();return e.sort((t,n)=>t.x<n.x?-1:t.x>n.x?1:t.y<n.y?-1:t.y>n.y?1:0),ek(e)}function ek(r){if(r.length<=1)return r.slice();const e=[];for(let n=0;n<r.length;n++){const i=r[n];for(;e.length>=2;){const s=e[e.length-1],o=e[e.length-2];if((s.x-o.x)*(i.y-o.y)>=(s.y-o.y)*(i.x-o.x))e.pop();else break}e.push(i)}e.pop();const t=[];for(let n=r.length-1;n>=0;n--){const i=r[n];for(;t.length>=2;){const s=t[t.length-1],o=t[t.length-2];if((s.x-o.x)*(i.y-o.y)>=(s.y-o.y)*(i.x-o.x))t.pop();else break}t.push(i)}return t.pop(),e.length===1&&t.length===1&&e[0].x===t[0].x&&e[0].y===t[0].y?e:e.concat(t)}var tk=m4,nk=g4,rk=y4,ik=x4;function sk(r,e){if(r==null)return{};var t={},n=Object.keys(r),i,s;for(s=0;s<n.length;s++)i=n[s],!(e.indexOf(i)>=0)&&(t[i]=r[i]);return t}function Un(r,e){if(r==null)return{};var t=sk(r,e),n,i;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(r);for(i=0;i<s.length;i++)n=s[i],!(e.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(r,n)&&(t[n]=r[n])}return t}let qn;(function(r){r[r.UNSUPPORTED_INPUT=0]="UNSUPPORTED_INPUT",r[r.NO_COMPONENT_FOR_TYPE=1]="NO_COMPONENT_FOR_TYPE",r[r.UNKNOWN_INPUT=2]="UNKNOWN_INPUT",r[r.DUPLICATE_KEYS=3]="DUPLICATE_KEYS",r[r.ALREADY_REGISTERED_TYPE=4]="ALREADY_REGISTERED_TYPE",r[r.CLIPBOARD_ERROR=5]="CLIPBOARD_ERROR",r[r.THEME_ERROR=6]="THEME_ERROR",r[r.PATH_DOESNT_EXIST=7]="PATH_DOESNT_EXIST",r[r.INPUT_TYPE_OVERRIDE=8]="INPUT_TYPE_OVERRIDE",r[r.EMPTY_KEY=9]="EMPTY_KEY"})(qn||(qn={}));const ok={[qn.UNSUPPORTED_INPUT]:(r,e)=>[`An input with type \`${r}\` input was found at path \`${e}\` but it's not supported yet.`],[qn.NO_COMPONENT_FOR_TYPE]:(r,e)=>[`Type \`${r}\` found at path \`${e}\` can't be displayed in panel because no component supports it yet.`],[qn.UNKNOWN_INPUT]:(r,e)=>[`input at path \`${r}\` is not recognized.`,e],[qn.DUPLICATE_KEYS]:(r,e,t)=>[`Key \`${r}\` of path \`${e}\` already exists at path \`${t}\`. Even nested keys need to be unique. Rename one of the keys.`],[qn.ALREADY_REGISTERED_TYPE]:r=>[`Type ${r} has already been registered. You can't register a component with the same type.`],[qn.CLIPBOARD_ERROR]:r=>["Error copying the value",r],[qn.THEME_ERROR]:(r,e)=>[`Error accessing the theme \`${r}.${e}\` value.`],[qn.PATH_DOESNT_EXIST]:r=>[`Error getting the value at path \`${r}\`. There is probably an error in your \`render\` function.`],[qn.PATH_DOESNT_EXIST]:r=>[`Error accessing the value at path \`${r}\``],[qn.INPUT_TYPE_OVERRIDE]:(r,e,t)=>[`Input at path \`${r}\` already exists with type: \`${e}\`. Its type cannot be overridden with type \`${t}\`.`],[qn.EMPTY_KEY]:()=>["Keys can not be empty, if you want to hide a label use whitespace."]};function M4(r,e,...t){const[n,...i]=ok[e](...t);console[r]("LEVA: "+n,...i)}const Ja=M4.bind(null,"warn"),ak=M4.bind(null,"log"),lk=["value"],ck=["schema"],uk=["value"],S4=[],ku={};function XA(r){let{value:e}=r,t=Un(r,lk);for(let n of S4){const i=n(e,t);if(i)return i}}function ol(r,e){let{schema:t}=e,n=Un(e,ck);if(r in ku){Ja(qn.ALREADY_REGISTERED_TYPE,r);return}S4.push((i,s)=>t(i,s)&&r),ku[r]=n}function __(r,e,t,n){const{normalize:i}=ku[r];if(i)return i(e,t,n);if(typeof e!="object"||!("value"in e))return{value:e};const{value:s}=e,o=Un(e,uk);return{value:s,settings:o}}function hk(r,e,t,n,i,s){const{sanitize:o}=ku[r];return o?o(e,t,n,i,s):e}function JA(r,e,t){const{format:n}=ku[r];return n?n(e,t):e}function dk(r,e,t){return e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function $A(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function Zt(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};
3914e%2?$A(Object(t),!0).forEach(function(n){dk(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):$A(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}const sc=(r,e,t)=>r>t?t:r<e?e:r,fk=r=>{if(r===""||typeof r=="number")return r;try{const e=Kl(r);if(!isNaN(e))return e}catch{}return parseFloat(r)},pk=Math.log(10);function KA(r){let e=Math.abs(+String(r).replace(".",""));if(e===0)return .01;for(;e!==0&&e%10===0;)e/=10;const t=Math.floor(Math.log(e)/pk)+1,n=Math.floor(Math.log10(Math.abs(r))),i=Math.pow(10,n-t);return Math.max(i,.001)}const Sy=(r,e,t)=>t===e?0:(sc(r,e,t)-e)/(t-e),wy=(r,e,t)=>r*(t-e)+e,mk=()=>"_"+Math.random().toString(36).substr(2,9),YA=/\(([0-9+\-*/^ .]+)\)/,qA=/(\d+(?:\.\d+)?) ?\^ ?(\d+(?:\.\d+)?)/,QA=/(\d+(?:\.\d+)?) ?\* ?(\d+(?:\.\d+)?)/,ZA=/(\d+(?:\.\d+)?) ?\/ ?(\d+(?:\.\d+)?)/,eE=/(\d+(?:\.\d+)?) ?\+ ?(\d+(?:\.\d+)?)/,tE=/(\d+(?:\.\d+)?) ?- ?(\d+(?:\.\d+)?)/;function Kl(r){if(isNaN(Number(r)))if(YA.test(r)){const e=r.replace(YA,(t,n)=>String(Kl(n)));return Kl(e)}else if(qA.test(r)){const e=r.replace(qA,(t,n,i)=>String(Math.pow(Number(n),Number(i))));return Kl(e)}else if(QA.test(r)){const e=r.replace(QA,(t,n,i)=>String(Number(n)*Number(i)));return Kl(e)}else if(ZA.test(r)){const e=r.replace(ZA,(t,n,i)=>{if(i!=0)return String(Number(n)/Number(i));throw new Error("Division by zero")});return Kl(e)}else if(eE.test(r)){const e=r.replace(eE,(t,n,i)=>String(Number(n)+Number(i)));return Kl(e)}else if(tE.test(r)){const e=r.replace(tE,(t,n,i)=>String(Number(n)-Number(i)));return Kl(e)}else return Number(r);return Number(r)}function gk(r,e){const t=Zt({},r);return e.forEach(n=>n in r&&delete t[n]),t}function yk(r,e){return r.reduce((t,n,i)=>Object.assign(t,{[e[i]]:n}),{})}function w4(r){return Object.prototype.toString.call(r)==="[object Object]"}const vk=r=>w4(r)&&Object.keys(r).length===0;let qo;(function(r){r.BUTTON="BUTTON",r.BUTTON_GROUP="BUTTON_GROUP",r.MONITOR="MONITOR",r.FOLDER="FOLDER"})(qo||(qo={}));let Eo;(function(r){r.SELECT="SELECT",r.IMAGE="IMAGE",r.NUMBER="NUMBER",r.COLOR="COLOR",r.STRING="STRING",r.BOOLEAN="BOOLEAN",r.INTERVAL="INTERVAL",r.VECTOR3D="VECTOR3D",r.VECTOR2D="VECTOR2D"})(Eo||(Eo={}));const _k=["type","__customInput"],xk=["render","label","optional","order","disabled","hint","onChange","onEditStart","onEditEnd","transient"],Mk=["type"];function A4(r,e,t={},n){var i,s;if(typeof r!="object"||Array.isArray(r))return{type:n,input:r,options:Zt({key:e,label:e,optional:!1,disabled:!1,order:0},t)};if("__customInput"in r){const{type:k,__customInput:O}=r,N=Un(r,_k);return A4(O,e,N,k)}const{render:o,label:l,optional:u,order:d=0,disabled:p,hint:m,onChange:y,onEditStart:v,onEditEnd:S,transient:E}
3914=r,A=Un(r,xk),M=Zt({render:o,key:e,label:l??e,hint:m,transient:E??!!y,onEditStart:v,onEditEnd:S,disabled:p,optional:u,order:d},t);let{type:T}=A,I=Un(A,Mk);if(T=n??T,T in qo)return{type:T,input:I,options:M};let P;return n&&w4(I)&&"value"in I?P=I.value:P=vk(I)?void 0:I,{type:T,input:P,options:Zt(Zt({},M),{},{onChange:y,optional:(i=M.optional)!==null&&i!==void 0?i:!1,disabled:(s=M.disabled)!==null&&s!==void 0?s:!1})}}function Sk(r,e,t,n){const i=A4(r,e),{type:s,input:o,options:l}=i;if(s)return s in qo?i:{type:s,input:__(s,o,t,n),options:l};let u=XA(o);return u?{type:u,input:__(u,o,t,n),options:l}:(u=XA({value:o}),u?{type:u,input:__(u,{value:o},t,n),options:l}:!1)}function nE(r,e,t,n,i){const{value:s,type:o,settings:l}=r;r.value=E4({type:o,value:s,settings:l},e,t,n),r.fromPanel=i}const wk=function(e,t,n){this.type="LEVA_ERROR",this.message="LEVA: "+e,this.previousValue=t,this.error=n};function E4({type:r,value:e,settings:t},n,i,s){const o=r!=="SELECT"&&typeof n=="function"?n(e):n;let l;try{l=hk(r,o,t,e,i,s)}catch(u){throw new wk(`The value \`${n}\` did not result in a correct value.`,e,u)}return gy(l,e)?e:l}const b4=(r,e,t=!1)=>{let n=0;return function(){const i=arguments,s=t&&!n,o=()=>r.apply(this,i);window.clearTimeout(n),n=window.setTimeout(o,e),s&&o()}},C4=r=>r.shiftKey?5:r.altKey?1/5:1,Ak=["value"],Ek=["min","max"],bk=r=>{if(typeof r=="number")return!0;if(typeof r=="string"){const e=parseFloat(r);return isNaN(e)?!1:r.substring((""+e).length).trim().length<4}return!1},T4=(r,{min:e=-1/0,max:t=1/0,suffix:n})=>{const i=parseFloat(r);if(r===""||isNaN(i))throw Error("Invalid number");const s=sc(i,e,t);return n?s+n:s},Ck=(r,{pad:e=0,suffix:t})=>{const n=parseFloat(r).toFixed(e);return t?n+t:n},I4=r=>{let{value:e}=r,t=Un(r,Ak);const{min:n=-1/0,max:i=1/0}=t,s=Un(t,Ek);let o=parseFloat(e);const l=typeof e=="string"?e.substring((""+o).length):void 0;o=sc(o,n,i);let u=t.step;u||(Number.isFinite(n)?Number.isFinite(i)?u=+(Math.abs(i-n)/100).toPrecision(1):u=+(Math.abs(o-n)/100).toPrecision(1):Number.isFinite(i)&&(u=+(Math.abs(i-o)/100).toPrecision(1)));const d=u?KA(u)*10:KA(o);u=u||d/10;const p=Math.round(sc(Math.log10(1/d),0,2));return{value:l?o+l:o,settings:Zt({initialValue:o,step:u,pad:p,min:n,max:i,suffix:l},s)}},P4=(r,{step:e,initialValue:t})=>{const n=Math.round((r-t)/e);return t+n*e};var R4=Object.freeze({__proto__:null,schema:bk,sanitize:T4,format:Ck,normalize:I4,sanitizeStep:P4});function Mr(){return Mr=Object.assign?Object.assign.bind():function(r){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(r[n]=t[n])}return r},Mr.apply(this,arguments)}const B4=z.createContext({});function yi(){return z.useContext(B4)}const O4=z.createContext(null),D4=z.createContext(null),L4=z.createContext(null);function vm(){return z.useContext(D4)}function Tk(){return z.useContext(L4)}const Ik=()=>({colors:{elevation1:"#292d39",elevation2:"#181c20",elevation3:"#373c4b",accent1:"#0066dc",accent2:"#007bff",accent3:"#3c93ff",highlight1:"#535760",highlight2:"#8c92a4",highlight3:"#fefefe",vivid1:"#ffcc00",folderWidgetColor:"$highlight2",folderTextColor:"$highlight3",toolTipBackground:"$highlight3",toolTipText:"$elevation2"},radii:{xs:"2px",sm:"3px",lg:"10px"},space:{xs:"3px",sm:"6px",md:"10px",rowGap:"7px",colGap:"7px"},fonts:{mono:"ui-monospace, SFMono-Regular, Menlo, 'Roboto Mono', monospace",sans:"system-ui, sans-serif"},fontSizes:{root:"11px",toolTip:"$root"},sizes:{rootWidth:"280px",controlWidth:"160px",numberInputMinWidth:"38px",scrubberWidth:"8px",scrubberHeight:"16px",rowHeight:"24px",folderTitleHeight:"20px",checkboxSize:"16px",joystickWidth:"100px",joystickHeight:"100px",colorPickerWidth:"$controlWidth",colorPickerHeight:"100px",imagePreviewWidth:"$controlWidth",imagePreviewHeight:"100px",monitorHeight:"60px",titleBarHeight:"39px"},shadows:{level1:"0 0 9px 0 #00000088",level2:"0 4px 14px #00000033"},borderWidths:{root:"0px",input:"1px",focus:"1px",hover:"1px",active:"1px",folder:"1px"},fontWeights:{label:"normal",folder:"normal",button:"normal"}});function pg(r,e){const[t,n]=r.split(" "),i={};return t!=="none"&&(i.boxShadow=`${e.inset?"inset ":""}0 0 0 $borderWidths${[e.key]} $colors${t!=="default"&&t||e.borderColor}`),n&&(i.backgroundColor=n),i}const gp={$inputStyle:()=>r=>pg(r,{key:"$input",borderColor:"$highlight1",inset:!0}
3914),$focusStyle:()=>r=>pg(r,{key:"$focus",borderColor:"$accent2"}),$hoverStyle:()=>r=>pg(r,{key:"$hover",borderColor:"$accent1",inset:!0}),$activeStyle:()=>r=>pg(r,{key:"$active",borderColor:"$accent1",inset:!0})},{styled:Ft,css:jV,createTheme:zV,globalCss:Pk,keyframes:HV}=d8({prefix:"leva",theme:Ik(),utils:Zt(Zt({},gp),{},{$flex:()=>({display:"flex",alignItems:"center"}),$flexCenter:()=>({display:"flex",alignItems:"center",justifyContent:"center"}),$reset:()=>({outline:"none",fontSize:"inherit",fontWeight:"inherit",color:"inherit",fontFamily:"inherit",border:"none",backgroundColor:"transparent",appearance:"none"}),$draggable:()=>({touchAction:"none",WebkitUserDrag:"none",userSelect:"none"}),$focus:r=>({"&:focus":gp.$focusStyle()(r)}),$focusWithin:r=>({"&:focus-within":gp.$focusStyle()(r)}),$hover:r=>({"&:hover":gp.$hoverStyle()(r)}),$active:r=>({"&:active":gp.$activeStyle()(r)})})}),Rk=Pk({".leva__panel__dragged":{WebkitUserDrag:"none",userSelect:"none",input:{userSelect:"none"},"*":{cursor:"ew-resize !important"}}});function Za(r,e){const{theme:t}=z.useContext(O4);if(!(r in t)||!(e in t[r]))return Ja(qn.THEME_ERROR,r,e),"";let n=e;for(;;){let i=t[r][n];if(typeof i=="string"&&i.charAt(0)==="$")n=i.substr(1);else return i}}const N4=Ft("input",{$reset:"",padding:"0 $sm",width:0,minWidth:0,flex:1,height:"100%",variants:{levaType:{number:{textAlign:"right"}},as:{textarea:{padding:"$sm"}}}}),F4=Ft("div",{$draggable:"",height:"100%",$flexCenter:"",position:"relative",padding:"0 $xs",fontSize:"0.8em",opacity:.8,cursor:"default",touchAction:"none",[`& + ${N4}`]:{paddingLeft:0}}),Bk=Ft(F4,{cursor:"ew-resize",marginRight:"-$xs",textTransform:"uppercase",opacity:.3,"&:hover":{opacity:1},variants:{dragging:{true:{backgroundColor:"$accent2",opacity:1}}}}),Ok=Ft("div",{$flex:"",position:"relative",borderRadius:"$sm",overflow:"hidden",color:"inherit",height:"$rowHeight",backgroundColor:"$elevation3",$inputStyle:"$elevation1",$hover:"",$focusWithin:"",variants:{textArea:{true:{height:"auto"}}}}),Dk=["innerLabel","value","onUpdate","onChange","onKeyDown","type","id","inputType","rows"],Lk=["onUpdate"];function KM(r){let{innerLabel:e,value:t,onUpdate:n,onChange:i,onKeyDown:s,type:o,id:l,inputType:u="text",rows:d=0}=r,p=Un(r,Dk);const{id:m,emitOnEditStart:y,emitOnEditEnd:v,disabled:S}=yi(),E=l||m,A=z.useRef(null),M=d>0,T=M?"textarea":"input",I=z.useCallback(O=>N=>{const H=N.currentTarget.value;O(H)},[]);re.useEffect(()=>{const O=A.current,N=I(H=>{n(H),v()});return O==null||O.addEventListener("blur",N),()=>O==null?void 0:O.removeEventListener("blur",N)},[I,n,v]);const P=z.useCallback(O=>{O.key==="Enter"&&I(n)(O)},[I,n]),k=Object.assign({as:T},M?{rows:d}:{},p);return re.createElement(Ok,{textArea:M},e&&typeof e=="string"?re.createElement(F4,null,e):e,re.createElement(N4,Mr({levaType:o,ref:A,id:E,type:u,autoComplete:"off",spellCheck:"false",value:t,onChange:I(i),onFocus:()=>y(),onKeyPress:P,onKeyDown:s,disabled:S},k)))}function Nk(r){let{onUpdate:e}=r,t=Un(r,Lk);const n=z.useCallback(s=>e(fk(s)),[e]),i=z.useCallback(s=>{const o=s.key==="ArrowUp"?1:s.key==="ArrowDown"?-1:0;if(o){s.preventDefault();const l=s.altKey?.1:s.shiftKey?10:1;e(u=>parseFloat(u)+o*l)}},[e]);return re.createElement(KM,Mr({},t,{onUpdate:n,onKeyDown:i,type:"number"}))}const Ay=Ft("div",{}),xx=Ft("div",{position:"relative",background:"$elevation2",transition:"height 300ms ease",variants:{fill:{true:{},false:{}},flat:{false:{},true:{}},isRoot:{true:{},false:{paddingLeft:"$md","&::after":{content:'""',position:"absolute",left:0,top:0,width:"$borderWidths$folder",height:"100%",backgroundColor:"$folderWidgetColor",opacity:.4,transform:"translateX(-50%)"}}}},compoundVariants:[{isRoot:!0,fill:!1,css:{overflowY:"auto",maxHeight:"calc(100vh - 20px - $$titleBarHeight)"}},{isRoot:!0,flat:!1,css:{borderRadius:"$lg"}}]}),Fk=Ft("div",{$flex:"",color:"$folderTextColor",userSelect:"none",cursor:"pointer",height:"$folderTitleHeight",fontWeight:"$folder","> svg":{marginLeft:-4,marginRight:4,cursor:"pointer",fill:"$folderWidgetColor",opacity:.6},"&:hover > svg":{fill:"$folderWidgetColor"},[`&:hover + ${xx}::after`]:{opacity:.6},[`${Ay}:hover > & + ${xx}::after`]:{opacity:.6},[`${Ay}:hover > & > svg`]:{opacity:1}}),k4=Ft("div",{position:"relative",display:"grid",gridTemplateColumns:"100%",rowGap:"$rowGap",transition:"opacity 250ms ease",variants:{toggled:{true:{opacity:1,transitionDelay:"250m
3914s"},false:{opacity:0,transitionDelay:"0ms",pointerEvents:"none"}},isRoot:{true:{"& > div":{paddingLeft:"$md",paddingRight:"$md"},"& > div:first-of-type":{paddingTop:"$sm"},"& > div:last-of-type":{paddingBottom:"$sm"},[`> ${Ay}:not(:first-of-type)`]:{paddingTop:"$sm",marginTop:"$md",borderTop:"$borderWidths$folder solid $colors$elevation1"}}}}}),U4=Ft("div",{position:"relative",zIndex:100,display:"grid",rowGap:"$rowGap",gridTemplateRows:"minmax($sizes$rowHeight, max-content)",alignItems:"center",color:"$highlight2",[`${k4} > &`]:{"&:first-of-type":{marginTop:"$rowGap"},"&:last-of-type":{marginBottom:"$rowGap"}},variants:{disabled:{true:{pointerEvents:"none"},false:{"&:hover,&:focus-within":{color:"$highlight3"}}}}}),j4=Ft(U4,{gridTemplateColumns:"auto $sizes$controlWidth",columnGap:"$colGap"}),kk=Ft("div",{$flex:"",height:"100%",position:"relative",overflow:"hidden","& > div":{marginLeft:"$colGap",padding:"0 $xs",opacity:.4},"& > div:hover":{opacity:.8},"& > div > svg":{display:"none",cursor:"pointer",width:13,minWidth:13,height:13,backgroundColor:"$elevation2"},"&:hover > div > svg":{display:"block"},variants:{align:{top:{height:"100%",alignItems:"flex-start",paddingTop:"$sm"}}}}),Uk=Ft("input",{$reset:"",height:0,width:0,opacity:0,margin:0,"& + label":{position:"relative",$flexCenter:"",height:"100%",userSelect:"none",cursor:"pointer",paddingLeft:2,paddingRight:"$sm",pointerEvents:"auto"},"& + label:after":{content:'""',width:6,height:6,backgroundColor:"$elevation3",borderRadius:"50%",$activeStyle:""},"&:focus + label:after":{$focusStyle:""},"& + label:active:after":{backgroundColor:"$accent1",$focusStyle:""},"&:checked + label:after":{backgroundColor:"$accent1"}}),Mx=Ft("label",{fontWeight:"$label",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap","& > svg":{display:"block"}}),jk=Ft("div",{opacity:1,variants:{disabled:{true:{opacity:.6,pointerEvents:"none",[`& ${Mx}`]:{pointerEvents:"auto"}}}}}),z4=Ft("div",{position:"fixed",top:0,bottom:0,right:0,left:0,zIndex:1e3,userSelect:"none"}),zk=Ft("div",{background:"$toolTipBackground",fontFamily:"$sans",fontSize:"$toolTip",padding:"$xs $sm",color:"$toolTipText",borderRadius:"$xs",boxShadow:"$level2",maxWidth:260}),Hk=Ft(ik,{fill:"$toolTipBackground"});function YM({children:r}){const{className:e}=z.useContext(O4);return re.createElement(D7,{className:e},r)}const Gk=["align"];function Vk(){const{id:r,disable:e,disabled:t}=yi();return re.createElement(re.Fragment,null,re.createElement(Uk,{id:r+"__disable",type:"checkbox",checked:!t,onChange:()=>e(!t)}),re.createElement("label",{htmlFor:r+"__disable"}))}function Wk(r){const{id:e,optional:t,hint:n}=yi(),i=r.htmlFor||(e?{htmlFor:e}:null),s=!n&&typeof r.children=="string"?{title:r.children}:null;return re.createElement(re.Fragment,null,t&&re.createElement(Vk,null),n!==void 0?re.createElement(tk,null,re.createElement(nk,{asChild:!0},re.createElement(Mx,Mr({},i,r))),re.createElement(rk,{side:"top",sideOffset:2},re.createElement(zk,null,n,re.createElement(Hk,null)))):re.createElement(Mx,Mr({},i,s,r)))}function Io(r){let{align:e}=r,t=Un(r,Gk);const{value:n,label:i,key:s,disabled:o}=yi(),{hideCopyButton:l}=Tk(),u=!l&&s!==void 0,[d,p]=z.useState(!1),m=async()=>{try{await navigator.clipboard.writeText(JSON.stringify({[s]:n??""})),p(!0)}catch{Ja(qn.CLIPBOARD_ERROR,{[s]:n})}};return re.createElement(kk,{align:e,onPointerLeave:()=>p(!1)},re.createElement(Wk,t),u&&!o&&re.createElement("div",{title:`Click to copy ${typeof i=="string"?i:s} value`},d?re.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor"},re.createElement("path",{d:"M9 2a1 1 0 000 2h2a1 1 0 100-2H9z"}),re.createElement("path",{fillRule:"evenodd",d:"M4 5a2 2 0 012-2 3 3 0 003 3h2a3 3 0 003-3 2 2 0 012 2v11a2 2 0 01-2 2H6a2 2 0 01-2-2V5zm9.707 5.707a1 1 0 00-1.414-1.414L9 12.586l-1.293-1.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z",clipRule:"evenodd"})):re.createElement("svg",{onClick:m,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor"},re.createElement("path",{d:"M8 3a1 1 0 011-1h2a1 1 0 110 2H9a1 1 0 01-1-1z"}),re.createElement("path",{d:"M6 3a2 2 0 00-2 2v11a2 2 0 002 2h8a2 2 0 002-2V5a2 2 0 00-2-2 3 3 0 01-3 3H9a3 3 0 01-3-3z"}))))}const Xk=["toggled"],Jk=Ft("svg",{fill:"currentColor",transition:"transform 350ms ease, fill 250ms ease"});function qM(r){let{toggled:e}=r,t=Un(r,Xk);return re.createElement(Jk,Mr({width:"9",height:"5",viewBox:"0 0 9 5",xmlns:"http://www.w3.org/2000/svg",style:{transform:`rotate(${e?0:-90}deg)`}},t),re.createElement("path",{d:"M3.8 4.4c.4.3 1 .3 1.4 0L8 1.7A1 1 0 007.4 0H1.6a1 1 0 00-.7 1.7l3 2.7z"}))}const $k=["input"];
3914function Vs(r){let{input:e}=r,t=Un(r,$k);return e?re.createElement(j4,t):re.createElement(U4,t)}function H4({value:r,type:e,settings:t,setValue:n}){const[i,s]=z.useState(JA(e,r,t)),o=z.useRef(r),l=z.useRef(t);l.current=t;const u=z.useCallback(p=>s(JA(e,p,l.current)),[e]),d=z.useCallback(p=>{try{n(p)}catch(m){const{type:y,previousValue:v}=m;if(y!=="LEVA_ERROR")throw m;u(v)}},[u,n]);return z.useEffect(()=>{gy(r,o.current)||u(r),o.current=r},[r,u]),{displayValue:i,onChange:s,onUpdate:d}}function _m(r,e){const{emitOnEditStart:t,emitOnEditEnd:n}=yi();return NN(i=>{i.first&&(document.body.classList.add("leva__panel__dragged"),t==null||t());const s=r(i);return i.last&&(document.body.classList.remove("leva__panel__dragged"),n==null||n()),s},e)}function Kk(r){const e=z.useRef(null),t=z.useRef(null),n=z.useRef(!1);return z.useEffect(()=>{const i=b4(()=>{e.current.width=e.current.offsetWidth*window.devicePixelRatio,e.current.height=e.current.offsetHeight*window.devicePixelRatio,r(e.current,t.current)},250);return window.addEventListener("resize",i),n.current||(i(),n.current=!0),()=>window.removeEventListener("resize",i)},[r]),z.useEffect(()=>{t.current=e.current.getContext("2d")},[]),[e,t]}function G4(){const r=z.useRef(null),e=z.useRef({x:0,y:0}),t=z.useCallback(n=>{Object.assign(e.current,n),r.current&&(r.current.style.transform=`translate3d(${e.current.x}px, ${e.current.y}px, 0)`)},[]);return[r,t]}const Yk=["__refCount"],x_=(r,e)=>{if(!r[e])return null;const t=r[e];return Un(t,Yk)};function qk(r){const e=vm(),[t,n]=z.useState(x_(e.getData(),r)),i=z.useCallback(d=>e.setValueAtPath(r,d,!0),[r,e]),s=z.useCallback(d=>e.setSettingsAtPath(r,d),[r,e]),o=z.useCallback(d=>e.disableInputAtPath(r,d),[r,e]),l=z.useCallback(()=>e.emitOnEditStart(r),[r,e]),u=z.useCallback(()=>e.emitOnEditEnd(r),[r,e]);return z.useEffect(()=>{n(x_(e.getData(),r));const d=e.useStore.subscribe(p=>x_(p.data,r),n,{equalityFn:FT});return()=>d()},[e,r]),[t,{set:i,setSettings:s,disable:o,storeId:e.storeId,emitOnEditStart:l,emitOnEditEnd:u}]}const Qk=Ft("div",{variants:{hasRange:{true:{position:"relative",display:"grid",gridTemplateColumns:"auto $sizes$numberInputMinWidth",columnGap:"$colGap",alignItems:"center"}}}}),V4=Ft("div",{position:"relative",width:"100%",height:2,borderRadius:"$xs",backgroundColor:"$elevation1"}),Sx=Ft("div",{position:"absolute",width:"$scrubberWidth",height:"$scrubberHeight",borderRadius:"$xs",boxShadow:"0 0 0 2px $colors$elevation2",backgroundColor:"$accent2",cursor:"pointer",$active:"none $accent1",$hover:"none $accent3",variants:{position:{left:{borderTopRightRadius:0,borderBottomRightRadius:0,transform:"translateX(calc(-0.5 * ($sizes$scrubberWidth + 4px)))"},right:{borderTopLeftRadius:0,borderBottomLeftRadius:0,transform:"translateX(calc(0.5 * ($sizes$scrubberWidth + 4px)))"}}}}),W4=Ft("div",{position:"relative",$flex:"",height:"100%",cursor:"pointer",touchAction:"none"}),X4=Ft("div",{position:"absolute",height:"100%",backgroundColor:"$accent2"});function Zk({value:r,min:e,max:t,onDrag:n,step:i,initialValue:s}){const o=z.useRef(null),l=z.useRef(null),u=z.useRef(0),d=Za("sizes","scrubberWidth"),p=_m(({event:y,first:v,xy:[S],movement:[E],memo:A})=>{if(v){const{width:T,left:I}=o.current.getBoundingClientRect();u.current=T-parseFloat(d),A=(y==null?void 0:y.target)===l.current?r:wy((S-I)/T,e,t)}const M=A+wy(E/u.current,0,t-e);return n(P4(M,{step:i,initialValue:s})),A}),m=Sy(r,e,t);return re.createElement(W4,Mr({ref:o},p()),re.createElement(V4,null,re.createElement(X4,{style:{left:0,right:`${(1-m)*100}%`}})),re.createElement(Sx,{ref:l,style:{left:`calc(${m} * (100% - ${d}))`}}))}const eU=re.memo(({label:r,onUpdate:e,step:t,innerLabelTrim:n})=>{const[i,s]=z.useState(!1),o=_m(({active:l,delta:[u],event:d,memo:p=0})=>(s(l),p+=u/2,Math.abs(p)>=1&&(e(m=>parseFloat(m)+Math.floor(p)*t*C4(d)),p=0),p));return re.createElement(Bk,Mr({dragging:i,title:r.length>1?r:""},o()),r.slice(0,n))});function J4({label:r,id:e,displayValue:t,onUpdate:n,onChange:i,settings:s,innerLabelTrim:o=1}){const l=o>0&&re.createElement(eU,{label:r,step:s.step,onUpdate:n,innerLabelTrim:o});return re.createElement(Nk,{id:e,value:String(t),onUpdate:n,onChange:i,innerLabel:l})}function tU(){const r=yi(),{label:e,value:t,onUpdate:n,settings:i,id:s}=r,{min:o,max:l}=i,u=l!==1/0&&o!==-1/0;return re.createElement(Vs,{input:!0},re.createElement(Io,null,e),re.createElement(Qk,{hasRange:u},u&&re.createElement(Zk,Mr({value:parseFloat(t),onDrag:n},i)),re.createElement(J4,Mr({},r,{id:s,label:"value",innerLabelTrim:u?0:1}))))}const{sanitizeStep:nU}=R4,rU=Un(R4,["sanitizeStep"]);var iU=Zt({component:tU},rU);const sU=(r,e)=>ts().schema({options:ts().passesAnyOf(ts().object(),ts().array())}).test(e),oU=(r,{values:e})=>
3914{if(e.indexOf(r)<0)throw Error("Selected value doesn't match Select options");return r},aU=(r,{values:e})=>e.indexOf(r),lU=r=>{let{value:e,options:t}=r,n,i;return Array.isArray(t)?(i=t,n=t.map(s=>String(s))):(i=Object.values(t),n=Object.keys(t)),"value"in r?i.includes(e)||(n.unshift(String(e)),i.unshift(e)):e=i[0],Object.values(t).includes(e)||(t[String(e)]=e),{value:e,settings:{keys:n,values:i}}};var cU=Object.freeze({__proto__:null,schema:sU,sanitize:oU,format:aU,normalize:lU});const uU=Ft("div",{$flexCenter:"",position:"relative","> svg":{pointerEvents:"none",position:"absolute",right:"$md"}}),wx=Ft("select",{position:"absolute",top:0,left:0,width:"100%",height:"100%",opacity:0}),hU=Ft("div",{display:"flex",alignItems:"center",width:"100%",height:"$rowHeight",backgroundColor:"$elevation3",borderRadius:"$sm",padding:"0 $sm",cursor:"pointer",[`${wx}:focus + &`]:{$focusStyle:""},[`${wx}:hover + &`]:{$hoverStyle:""}});function dU({displayValue:r,value:e,onUpdate:t,id:n,settings:i,disabled:s}){const{keys:o,values:l}=i,u=z.useRef();return e===l[r]&&(u.current=o[r]),re.createElement(uU,null,re.createElement(wx,{id:n,value:r,onChange:d=>t(l[Number(d.currentTarget.value)]),disabled:s},o.map((d,p)=>re.createElement("option",{key:d,value:p},d))),re.createElement(hU,null,u.current),re.createElement(qM,{toggled:!0}))}function fU(){const{label:r,value:e,displayValue:t,onUpdate:n,id:i,disabled:s,settings:o}=yi();return re.createElement(Vs,{input:!0},re.createElement(Io,null,r),re.createElement(dU,{id:i,value:e,displayValue:t,onUpdate:n,settings:o,disabled:s}))}var pU=Zt({component:fU},cU);const mU=r=>ts().string().test(r),gU=r=>{if(typeof r!="string")throw Error("Invalid string");return r},yU=({value:r,editable:e=!0,rows:t=!1})=>({value:r,settings:{editable:e,rows:typeof t=="number"?t:t?5:0}});var vU=Object.freeze({__proto__:null,schema:mU,sanitize:gU,normalize:yU});const _U=["displayValue","onUpdate","onChange","editable"],xU=Ft("div",{whiteSpace:"pre-wrap"});function MU(r){let{displayValue:e,onUpdate:t,onChange:n,editable:i=!0}=r,s=Un(r,_U);return i?re.createElement(KM,Mr({value:e,onUpdate:t,onChange:n},s)):re.createElement(xU,null,e)}function SU(){const{label:r,settings:e,displayValue:t,onUpdate:n,onChange:i}=yi();return re.createElement(Vs,{input:!0},re.createElement(Io,null,r),re.createElement(MU,Mr({displayValue:t,onUpdate:n,onChange:i},e)))}var wU=Zt({component:SU},vU);const AU=r=>ts().boolean().test(r),EU=r=>{if(typeof r!="boolean")throw Error("Invalid boolean");return r};var bU=Object.freeze({__proto__:null,schema:AU,sanitize:EU});const CU=Ft("div",{position:"relative",$flex:"",height:"$rowHeight",input:{$reset:"",height:0,width:0,opacity:0,margin:0},label:{position:"relative",$flexCenter:"",userSelect:"none",cursor:"pointer",height:"$checkboxSize",width:"$checkboxSize",backgroundColor:"$elevation3",borderRadius:"$sm",$hover:""},"input:focus + label":{$focusStyle:""},"input:focus:checked + label, input:checked + label:hover":{$hoverStyle:"$accent3"},"input + label:active":{backgroundColor:"$accent1"},"input:checked + label:active":{backgroundColor:"$accent1"},"label > svg":{display:"none",width:"90%",height:"90%",stroke:"$highlight3"},"input:checked + label":{backgroundColor:"$accent2"},"input:checked + label > svg":{display:"block"}});function TU({value:r,onUpdate:e,id:t,disabled:n}){return re.createElement(CU,null,re.createElement("input",{id:t,type:"checkbox",checked:r,onChange:i=>e(i.currentTarget.checked),disabled:n}),re.createElement("label",{htmlFor:t},re.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24"},re.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M5 13l4 4L19 7"}))))}function IU(){const{label:r,value:e,onUpdate:t,disabled:n,id:i}=yi();return re.createElement(Vs,{input:!0},re.createElement(Io,null,r),re.createElement(TU,{value:e,onUpdate:t,id:i,disabled:n}))}var PU=Zt({component:IU},bU);const RU=["locked"];function BU({value:r,id:e,valueKey:t,settings:n,onUpdate:i,innerLabelTrim:s}){const o=z.useRef(r[t]);o.current=r[t];const l=z.useCallback(d=>i({[t]:E4({type:"NUMBER",value:o.current,settings:n},d)}),[i,n,t]),u=H4({type:"NUMBER",value:r[t],settings:n,setValue:l});return re.createElement(J4,{id:e,label:t,value:r[t],displayValue:u.displayValue,onUpdate:u.onUpdate,onChange:u.onChange,settings:n,innerLabelTrim:s})}const OU=Ft("div",{display:"grid",columnGap:"$colGap",gridAutoFlow:"column dense",alignItems:"center",variants:{withLock:{true:{gridTemplateColumns:"10px auto","> svg":{cursor:"pointer"}}}}});function DU(r){let{locked:e}=r,t=Un(r,RU);return re.createElement("svg",Mr({width:"10",height:"10",viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg"},t),e?re.createElement("path",{d:"M5 4.63601C5 3.76031 5.24219 3.1054 5.64323 2.67357C6.03934 2.24705 6.64582 1.9783 7.5014 1.9783C8.35745 1.9783 8.96306 2.24652 9.35823 2.67208C9.75838 3.10299 10 3.75708 10 4.63325V5.99999H5V4.63601ZM4 5.99999V4.63601C4 3.58148 4.29339 2.65754 4.91049 1.99307C5.53252 1.32329 6.42675 0.978302 7.5014 0.978302C8.57583 0.978302 9.46952 1.32233 10.091 1.99162C10.7076 2.65557 11 3.57896 11 4.63325V5.99999H12C12.5523 5.99999 13 6.44771 13 6.99999V13C13 13.5523 12.5523 14 12 14H3C2.44772 14 2 13.5523 2 13V6.99999C2 6.44771 2.44772 5.99999 3 5.99999H4ZM3 6.99999H12V13H3V6.99999Z",fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd"}):re.createElement("path",{d:"M9 3.63601C9 2.76044 9.24207 2.11211 9.64154 1.68623C10.0366 1.26502 10.6432 1 11.5014 1C12.4485 1 13.0839 1.30552 13.4722 1.80636C13.8031 2.23312 14 2.84313 14 3.63325H15C15 2.68242 14.7626 1.83856 14.2625 1.19361C13.6389 0.38943 12.6743 0 11.5014 0C10.4294 0 9.53523 0.337871 8.91218 1.0021C8.29351 1.66167 8 2.58135 8 3.63601V6H1C0.447715 6 0 6.44772 0 7V13C0 13.5523 0.447715 14 1 14H10C10.5523 14 11 13.5523 11 13V7C11 6.44772 10.5523 6 10 6H9V3.63601ZM1 7H10V13H1V7Z",fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd"}))}function QM({value:r,onUpdate:e,settings:t,innerLabelTrim:n}){const{id:i,setSettings:s}=yi(),{lock:o,locked:l}=t;return re.createElement(OU,{withLock:o},o&&re.createElement(DU,{locked:l,onClick:()=>s({locked:!l})}),Object.keys(r).map((u,d)=>re.createElement(BU,{id:d===0?i:`${i}.${u}`,key:u,valueKey:u,value:r,settings:t[u],onUpdate:e,innerLabelTrim:n})))}const $4=(r,e)=>{const t={};let n=0,i=1/0;Object.entries(r).forEach(([s,o])=>{t[s]=I4(Zt({value:o},e[s])).settings,n=Math.max(n,t[s].step),i=Math.min(i,t[s].pad)});for(let s in t){const{step:o,min:l,max:u}=e[s]||{};
3914!isFinite(o)&&(!isFinite(l)||!isFinite(u))&&(t[s].step=n,t[s].pad=i)}return t},LU=["lock"],NU=["value"];function FU(r){const e=ts().array().length(r).every.number(),t=n=>{if(!n||typeof n!="object")return!1;const i=Object.values(n);return i.length===r&&i.every(s=>isFinite(s))};return n=>e.test(n)||t(n)}function kU(r){return Array.isArray(r)?"array":"object"}function Bp(r,e,t){return kU(r)===e?r:e==="array"?Object.values(r):yk(r,t)}const UU=(r,e,t)=>{const n=Bp(r,"object",e.keys);for(let o in n)n[o]=T4(n[o],e[o]);const i=Object.keys(n);let s={};if(i.length===e.keys.length)s=n;else{const o=Bp(t,"object",e.keys);if(i.length===1&&e.locked){const l=i[0],u=n[l],d=o[l],p=d!==0?u/d:1;for(let m in o)m===l?s[l]=u:s[m]=o[m]*p}else s=Zt(Zt({},o),n)}return Bp(s,e.format,e.keys)},jU=(r,e)=>Bp(r,"object",e.keys),zU=r=>!!r&&("step"in r||"min"in r||"max"in r);function HU(r,e,t=[]){const{lock:n=!1}=e,i=Un(e,LU),s=Array.isArray(r)?"array":"object",o=s==="object"?Object.keys(r):t,l=Bp(r,"object",o),u=zU(i)?o.reduce((p,m)=>Object.assign(p,{[m]:i}),{}):i,d=$4(l,u);return{value:s==="array"?r:l,settings:Zt(Zt({},d),{},{format:s,keys:o,lock:n,locked:!1})}}function K4(r){return{schema:FU(r.length),normalize:e=>{let{value:t}=e,n=Un(e,NU);return HU(t,n,r)},format:(e,t)=>jU(e,t),sanitize:(e,t,n)=>UU(e,t,n)}}var GU={grad:.9,turn:360,rad:360/(2*Math.PI)},Ha=function(r){return typeof r=="string"?r.length>0:typeof r=="number"},jr=function(r,e,t){return e===void 0&&(e=0),t===void 0&&(t=Math.pow(10,e)),Math.round(t*r)/t+0},zs=function(r,e,t){return e===void 0&&(e=0),t===void 0&&(t=1),r>t?t:r>e?r:e},Y4=function(r){return(r=isFinite(r)?r%360:0)>0?r:r+360},rE=function(r){return{r:zs(r.r,0,255),g:zs(r.g,0,255),b:zs(r.b,0,255),a:zs(r.a)}},M_=function(r){return{r:jr(r.r),g:jr(r.g),b:jr(r.b),a:jr(r.a,3)}},VU=/^#([0-9a-f]{3,8})$/i,mg=function(r){var e=r.toString(16);return e.length<2?"0"+e:e},q4=function(r){var e=r.r,t=r.g,n=r.b,i=r.a,s=Math.max(e,t,n),o=s-Math.min(e,t,n),l=o?s===e?(t-n)/o:s===t?2+(n-e)/o:4+(e-t)/o:0;return{h:60*(l<0?l+6:l),s:s?o/s*100:0,v:s/255*100,a:i}},Q4=function(r){var e=r.h,t=r.s,n=r.v,i=r.a;e=e/360*6,t/=100,n/=100;var s=Math.floor(e),o=n*(1-t),l=n*(1-(e-s)*t),u=n*(1-(1-e+s)*t),d=s%6;return{r:255*[n,l,o,o,u,n][d],g:255*[u,n,n,l,o,o][d],b:255*[o,o,u,n,n,l][d],a:i}},iE=function(r){return{h:Y4(r.h),s:zs(r.s,0,100),l:zs(r.l,0,100),a:zs(r.a)}},sE=function(r){return{h:jr(r.h),s:jr(r.s),l:jr(r.l),a:jr(r.a,3)}},oE=function(r){return Q4((t=(e=r).s,{h:e.h,s:(t*=((n=e.l)<50?n:100-n)/100)>0?2*t/(n+t)*100:0,v:n+t,a:e.a}));var e,t,n},Op=function(r){return{h:(e=q4(r)).h,s:(i=(200-(t=e.s))*(n=e.v)/100)>0&&i<200?t*n/100/(i<=100?i:200-i)*100:0,l:i/2,a:e.a};var e,t,n,i},WU=/^hsla?\(\s*([+-]?\d*\.?\d+)(deg|rad|grad|turn)?\s*,\s*([+-]?\d*\.?\d+)%\s*,\s*([+-]?\d*\.?\d+)%\s*(?:,\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,XU=/^hsla?\(\s*([+-]?\d*\.?\d+)(deg|rad|grad|turn)?\s+([+-]?\d*\.?\d+)%\s+([+-]?\d*\.?\d+)%\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,JU=/^rgba?\(\s*([+-]?\d*\.?\d+)(%)?\s*,\s*([+-]?\d*\.?\d+)(%)?\s*,\s*([+-]?\d*\.?\d+)(%)?\s*(?:,\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,$U=/^rgba?\(\s*([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,Ax={string:[[function(r){var e=VU.exec(r);return e?(r=e[1]).length<=4?{r:parseInt(r[0]+r[0],16),g:parseInt(r[1]+r[1],16),b:parseInt(r[2]+r[2],16),a:r.length===4?jr(parseInt(r[3]+r[3],16)/255,2):1}:r.length===6||r.length===8?{r:parseInt(r.substr(0,2),16),g:parseInt(r.substr(2,2),16),b:parseInt(r.substr(4,2),16),a:r.length===8?jr(parseInt(r.substr(6,2),16)/255,2):1}:null:null},"hex"],[function(r){var e=JU.exec(r)||$U.exec(r);return e?e[2]!==e[4]||e[4]!==e[6]?null:rE({r:Number(e[1])/(e[2]?100/255:1),g:Number(e[3])/(e[4]?100/255:1),b:Number(e[5])/(e[6]?100/255:1),a:e[7]===void 0?1:Number(e[7])/(e[8]?100:1)}):null},"rgb"],[function(r){var e=WU.exec(r)||XU.exec(r);if(!e)return null;var t,n,i=iE({h:(t=e[1],n=e[2],n===void 0&&(n="deg"),Number(t)*(GU[n]||1)),s:Number(e[3]),l:Number(e[4]),a:e[5]===void 0?1:Number(e[5])/(e[6]?100:1)});return oE(i)},"hsl"]],object:[[function(r){var e=r.r,t=r.g,n=r.b,i=r.a,s=i===void 0?1:i;return Ha(e)&&Ha(t)&&Ha(n)?rE({r:Number(e),g:Number(t),b:Number(n),a:Number(s)}):null},"rgb"],[function(r){var e=r.h,t=r.s,n=r.l,i=r.a,s=i===void 0?1:i;if(!Ha(e)||!Ha(t)||!Ha(n))return null;var o=iE({h:Number(e),s:Number(t),l:Number(n),a:Number(s)});return oE(o)},"hsl"],[function(r){var e=r.h,t=r.s,n=r.v,i=r.a,s=i===void 0?1:i;if(!Ha(e)||!Ha(t)||!Ha(n))return null;var o=function(l){return{h:Y4(l.h),s:zs(l.s,0,100),v:zs(l.v,0,100),a:zs(l.a)}}({h:Number(e),s:Number(t),v:Number(n),a:Number(s)});return Q4(o)},"hsv"]]},aE=function(r,e){for(var t=0;t<e.length;t++){var n=e[t][0](r);if(n)return[n,e[t][1]]}return[null,void 0]},Z4=function(r){return typeof r=="string"?aE(r.trim(),Ax.string):typeof r=="object"&&r!==null?aE(r,Ax.object):[null,void 0]}
vendor: 5,016 bytes, line 3914
3914,KU=function(r){return Z4(r)[1]},S_=function(r,e){var t=Op(r);return{h:t.h,s:zs(t.s+100*e,0,100),l:t.l,a:t.a}},w_=function(r){return(299*r.r+587*r.g+114*r.b)/1e3/255},lE=function(r,e){var t=Op(r);return{h:t.h,s:t.s,l:zs(t.l+100*e,0,100),a:t.a}},Ex=function(){function r(e){this.parsed=Z4(e)[0],this.rgba=this.parsed||{r:0,g:0,b:0,a:1}}return r.prototype.isValid=function(){return this.parsed!==null},r.prototype.brightness=function(){return jr(w_(this.rgba),2)},r.prototype.isDark=function(){return w_(this.rgba)<.5},r.prototype.isLight=function(){return w_(this.rgba)>=.5},r.prototype.toHex=function(){return e=M_(this.rgba),t=e.r,n=e.g,i=e.b,o=(s=e.a)<1?mg(jr(255*s)):"","#"+mg(t)+mg(n)+mg(i)+o;var e,t,n,i,s,o},r.prototype.toRgb=function(){return M_(this.rgba)},r.prototype.toRgbString=function(){return e=M_(this.rgba),t=e.r,n=e.g,i=e.b,(s=e.a)<1?"rgba("+t+", "+n+", "+i+", "+s+")":"rgb("+t+", "+n+", "+i+")";var e,t,n,i,s},r.prototype.toHsl=function(){return sE(Op(this.rgba))},r.prototype.toHslString=function(){return e=sE(Op(this.rgba)),t=e.h,n=e.s,i=e.l,(s=e.a)<1?"hsla("+t+", "+n+"%, "+i+"%, "+s+")":"hsl("+t+", "+n+"%, "+i+"%)";var e,t,n,i,s},r.prototype.toHsv=function(){return e=q4(this.rgba),{h:jr(e.h),s:jr(e.s),v:jr(e.v),a:jr(e.a,3)};var e},r.prototype.invert=function(){return Bi({r:255-(e=this.rgba).r,g:255-e.g,b:255-e.b,a:e.a});var e},r.prototype.saturate=function(e){return e===void 0&&(e=.1),Bi(S_(this.rgba,e))},r.prototype.desaturate=function(e){return e===void 0&&(e=.1),Bi(S_(this.rgba,-e))},r.prototype.grayscale=function(){return Bi(S_(this.rgba,-1))},r.prototype.lighten=function(e){return e===void 0&&(e=.1),Bi(lE(this.rgba,e))},r.prototype.darken=function(e){return e===void 0&&(e=.1),Bi(lE(this.rgba,-e))},r.prototype.rotate=function(e){return e===void 0&&(e=15),this.hue(this.hue()+e)},r.prototype.alpha=function(e){return typeof e=="number"?Bi({r:(t=this.rgba).r,g:t.g,b:t.b,a:e}):jr(this.rgba.a,3);var t},r.prototype.hue=function(e){var t=Op(this.rgba);return typeof e=="number"?Bi({h:e,s:t.s,l:t.l,a:t.a}):jr(t.h)},r.prototype.isEqual=function(e){return this.toHex()===Bi(e).toHex()},r}(),Bi=function(r){return r instanceof Ex?r:new Ex(r)},cE=[],YU=function(r){r.forEach(function(e){cE.indexOf(e)<0&&(e(Ex,Ax),cE.push(e))})};function qU(r,e){var t={white:"#ffffff",bisque:"#ffe4c4",blue:"#0000ff",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",antiquewhite:"#faebd7",aqua:"#00ffff",azure:"#f0ffff",whitesmoke:"#f5f5f5",papayawhip:"#ffefd5",plum:"#dda0dd",blanchedalmond:"#ffebcd",black:"#000000",gold:"#ffd700",goldenrod:"#daa520",gainsboro:"#dcdcdc",cornsilk:"#fff8dc",cornflowerblue:"#6495ed",burlywood:"#deb887",aquamarine:"#7fffd4",beige:"#f5f5dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkkhaki:"#bdb76b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",peachpuff:"#ffdab9",darkmagenta:"#8b008b",darkred:"#8b0000",darkorchid:"#9932cc",darkorange:"#ff8c00",darkslateblue:"#483d8b",gray:"#808080",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",deeppink:"#ff1493",deepskyblue:"#00bfff",wheat:"#f5deb3",firebrick:"#b22222",floralwhite:"#fffaf0",ghostwhite:"#f8f8ff",darkviolet:"#9400d3",magenta:"#ff00ff",green:"#008000",dodgerblue:"#1e90ff",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",blueviolet:"#8a2be2",forestgreen:"#228b22",lawngreen:"#7cfc00",indianred:"#cd5c5c",indigo:"#4b0082",fuchsia:"#ff00ff",brown:"#a52a2a",maroon:"#800000",mediumblue:"#0000cd",lightcoral:"#f08080",darkturquoise:"#00ced1",lightcyan:"#e0ffff",ivory:"#fffff0",lightyellow:"#ffffe0",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",linen:"#faf0e6",mediumaquamarine:"#66cdaa",lemonchiffon:"#fffacd",lime:"#00ff00",khaki:"#f0e68c",mediumseagreen:"#3cb371",limegreen:"#32cd32",mediumspringgreen:"#00fa9a",lightskyblue:"#87cefa",lightblue:"#add8e6",midnightblue:"#191970",lightpink:"#ffb6c1",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",mintcream:"#f5fffa",lightslategray:"#778899",lightslategrey:"#778899",navajowhite:"#ffdead",navy:"#000080",mediumvioletred:"#c71585",powderblue:"#b0e0e6",palegoldenrod:"#eee8aa",oldlace:"#fdf5e6",paleturquoise:"#afeeee",mediumturquoise:"#48d1cc",mediumorchid:"#ba55d3",rebeccapurple:"#663399",lightsteelblue:"#b0c4de",mediumslateblue:"#7b68ee",thistle:"#d8bfd8",tan:"#d2b48c",orchid:"#da70d6",mediumpurple:"#9370db",purple:"#800080",pink:"#ffc0cb",skyblue:"#87ceeb",springgreen:"#00ff7f",palegreen:"#98fb98",red:"#ff0000",yellow:"#ffff00",slateblue:"#6a5acd",lavenderblush:"#fff0f5",peru:"#cd853f",palevioletred:"#db7093",violet:"#ee82ee",teal:"#008080",slategray:"#708090",slategrey:"#708090",aliceblue:"#f0f8ff",darkseagreen:"#8fbc8f",darkolivegreen:"#556b2f",greenyellow:"#adff2f",seagreen:"#2e8b57",seashell:"#fff5ee",tomato:"#ff6347",silver:"#c0c0c0",sienna:"#a0522d",lavender:"#e6e6fa",lightgreen:"#90ee90",orange:"#ffa500",orangered:"#ff4500",steelblue:"#4682b4",royalblue:"#4169e1",turquoise:"#40e0d0",yellowgreen:"#9acd32",salmon:"#fa8072",saddlebrown:"#8b4513",s
3914andybrown:"#f4a460",rosybrown:"#bc8f8f",darksalmon:"#e9967a",lightgoldenrodyellow:"#fafad2",snow:"#fffafa",lightgrey:"#d3d3d3",lightgray:"#d3d3d3",dimgray:"#696969",dimgrey:"#696969",olivedrab:"#6b8e23",olive:"#808000"},n={};for(var i in t)n[t[i]]=i;var s={};r.prototype.toName=function(o){if(!(this.rgba.a||this.rgba.r||this.rgba.g||this.rgba.b))return"transparent";var l,u,d=n[this.toHex()];if(d)return d;if(o!=null&&o.closest){var p=this.toRgb(),m=1/0,y="black";if(!s.length)for(var v in t)s[v]=new r(t[v]).toRgb();for(var S in t){var E=(l=p,u=s[S],Math.pow(l.r-u.r,2)+Math.pow(l.g-u.g,2)+Math.pow(l.b-u.b,2));E<m&&(m=E,y=S)}return y}},e.string.push([function(o){var l=o.toLowerCase(),u=l==="transparent"?"#0000":t[l];return u?new r(u).toRgb():null},"name"])}function tf(){return(tf=Object.assign||function(r){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(r[n]=t[n])}return r}).apply(this,arguments)}function ZM(r,e){if(r==null)return{};var t,n,i={},s=Object.keys(r);for(n=0;n<s.length;n++)e.indexOf(t=s[n])>=0||(i[t]=r[t]);return i}function bx(r){var e=z.useRef(r),t=z.useRef(function(n){e.current&&e.current(n)});return e.current=r,t.current}var Gd=function(r,e,t){return e===void 0&&(e=0),t===void 0&&(t=1),r>t?t:r<e?e:r},Dp=function(r){return"touches"in r},Cx=function(r){return r&&r.ownerDocument.defaultView||self},uE=function(r,e,t){var n=r.getBoundingClientRect(),i=Dp(e)?function(s,o){for(var l=0;l<s.length;l++)if(s[l].identifier===o)return s[l];return s[0]}(e.touches,t):e;return{left:Gd((i.pageX-(n.left+Cx(r).pageXOffset))/n.width),top:Gd((i.pageY-(n.top+Cx(r).pageYOffset))/n.height)}},hE=function(r){!Dp(r)&&r.preventDefault()},eS=re.memo(function(r){var e=r.onMove,t=r.onKey,n=ZM(r,["onMove","onKey"]),i=z.useRef(null),s=bx(e),o=bx(t),l=z.useRef(null),u=z.useRef(!1),d=z.useMemo(function(){var v=function(A){hE(A),(Dp(A)?A.touches.length>0:A.buttons>0)&&i.current?s(uE(i.current,A,l.current)):E(!1)},S=function(){return E(!1)};function E(A){var M=u.current,T=Cx(i.current),I=A?T.addEventListener:T.removeEventListener;I(M?"touchmove":"mousemove",v),I(M?"touchend":"mouseup",S)}return[function(A){var M=A.nativeEvent,T=i.current;if(T&&(hE(M),!function(P,k){return k&&!Dp(P)}(M,u.current)&&T)){if(Dp(M)){u.current=!0;var I=M.changedTouches||[];I.length&&(l.current=I[0].identifier)}
vendor: 4,345 bytes, line 3914
3914T.focus(),s(uE(T,M,l.current)),E(!0)}},function(A){var M=A.which||A.keyCode;M<37||M>40||(A.preventDefault(),o({left:M===39?.05:M===37?-.05:0,top:M===40?.05:M===38?-.05:0}))},E]},[o,s]),p=d[0],m=d[1],y=d[2];return z.useEffect(function(){return y},[y]),re.createElement("div",tf({},n,{onTouchStart:p,onMouseDown:p,className:"react-colorful__interactive",ref:i,onKeyDown:m,tabIndex:0,role:"slider"}))}),xm=function(r){return r.filter(Boolean).join(" ")},tS=function(r){var e=r.color,t=r.left,n=r.top,i=n===void 0?.5:n,s=xm(["react-colorful__pointer",r.className]);return re.createElement("div",{className:s,style:{top:100*i+"%",left:100*t+"%"}},re.createElement("div",{className:"react-colorful__pointer-fill",style:{backgroundColor:e}}))},Li=function(r,e,t){return e===void 0&&(e=0),t===void 0&&(t=Math.pow(10,e)),Math.round(t*r)/t},e3=function(r){var e=r.s,t=r.v,n=r.a,i=(200-e)*t/100;return{h:Li(r.h),s:Li(i>0&&i<200?e*t/100/(i<=100?i:200-i)*100:0),l:Li(i/2),a:Li(n,2)}},Tx=function(r){var e=e3(r);return"hsl("+e.h+", "+e.s+"%, "+e.l+"%)"},A_=function(r){var e=e3(r);return"hsla("+e.h+", "+e.s+"%, "+e.l+"%, "+e.a+")"},t3=function(r){var e=r.h,t=r.s,n=r.v,i=r.a;e=e/360*6,t/=100,n/=100;var s=Math.floor(e),o=n*(1-t),l=n*(1-(e-s)*t),u=n*(1-(1-e+s)*t),d=s%6;return{r:Li(255*[n,l,o,o,u,n][d]),g:Li(255*[u,n,n,l,o,o][d]),b:Li(255*[o,o,u,n,n,l][d]),a:Li(i,2)}},n3=function(r){var e=r.r,t=r.g,n=r.b,i=r.a,s=Math.max(e,t,n),o=s-Math.min(e,t,n),l=o?s===e?(t-n)/o:s===t?2+(n-e)/o:4+(e-t)/o:0;return{h:Li(60*(l<0?l+6:l)),s:Li(s?o/s*100:0),v:Li(s/255*100),a:i}},r3=re.memo(function(r){var e=r.hue,t=r.onChange,n=xm(["react-colorful__hue",r.className]);return re.createElement("div",{className:n},re.createElement(eS,{onMove:function(i){t({h:360*i.left})},onKey:function(i){t({h:Gd(e+360*i.left,0,360)})},"aria-label":"Hue","aria-valuenow":Li(e),"aria-valuemax":"360","aria-valuemin":"0"},re.createElement(tS,{className:"react-colorful__hue-pointer",left:e/360,color:Tx({h:e,s:100,v:100,a:1})})))}),i3=re.memo(function(r){var e=r.hsva,t=r.onChange,n={backgroundColor:Tx({h:e.h,s:100,v:100,a:1})};return re.createElement("div",{className:"react-colorful__saturation",style:n},re.createElement(eS,{onMove:function(i){t({s:100*i.left,v:100-100*i.top})},onKey:function(i){t({s:Gd(e.s+100*i.left,0,100),v:Gd(e.v-100*i.top,0,100)})},"aria-label":"Color","aria-valuetext":"Saturation "+Li(e.s)+"%, Brightness "+Li(e.v)+"%"},re.createElement(tS,{className:"react-colorful__saturation-pointer",top:1-e.v/100,left:e.s/100,color:Tx(e)})))}),nS=function(r,e){if(r===e)return!0;for(var t in r)if(r[t]!==e[t])return!1;return!0};function s3(r,e,t){var n=bx(t),i=z.useState(function(){return r.toHsva(e)}),s=i[0],o=i[1],l=z.useRef({color:e,hsva:s});z.useEffect(function(){if(!r.equal(e,l.current.color)){var d=r.toHsva(e);l.current={hsva:d,color:e},o(d)}},[e,r]),z.useEffect(function(){var d;nS(s,l.current.hsva)||r.equal(d=r.fromHsva(s),l.current.color)||(l.current={hsva:s,color:d},n(d))},[s,r,n]);var u=z.useCallback(function(d){o(function(p){return Object.assign({},p,d)})},[]);return[s,u]}var QU=typeof window<"u"?z.useLayoutEffect:z.useEffect,ZU=function(){return typeof __webpack_nonce__<"u"?__webpack_nonce__:void 0},dE=new Map,o3=function(r){QU(function(){var e=r.current?r.current.ownerDocument:document;if(e!==void 0&&!dE.has(e)){var t=e.createElement("style");t.innerHTML=`.react-colorful{position:relative;display:flex;flex-direction:column;width:200px;height:200px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.react-colorful__saturation{position:relative;flex-grow:1;border-color:transparent;border-bottom:12px solid #000;border-radius:8px 8px 0 0;background-image:linear-gradient(0deg,#000,transparent),linear-gradient(90deg,#fff,hsla(0,0%,100%,0))}.react-colorful__alpha-gradient,.react-colorful__pointer-fill{content:"";position:absolute;left:0;top:0;right:0;bottom:0;pointer-events:none;border-radius:inherit}.react-colorful__alpha-gradient,.react-colorful__saturation{box-shadow:inset 0 0 0 1px rgba(0,0,0,.05)}.react-colorful__alpha,.react-colorful__hue{position:relative;height:24px}.react-colorful__hue{background:linear-gradient(90deg,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red)}.react-colorful__last-control{border-radius:0 0 8px 8px}.react-colorful__interactive{position:absolute;
3914left:0;top:0;right:0;bottom:0;border-radius:inherit;outline:none;touch-action:none}.react-colorful__pointer{position:absolute;z-index:1;box-sizing:border-box;width:28px;height:28px;transform:translate(-50%,-50%);background-color:#fff;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,.2)}.react-colorful__interactive:focus .react-colorful__pointer{transform:translate(-50%,-50%) scale(1.1)}.react-colorful__alpha,.react-colorful__alpha-pointer{background-color:#fff;background-image:url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill-opacity=".05"><path d="M8 0h8v8H8zM0 8h8v8H0z"/></svg>')}.react-colorful__saturation-pointer{z-index:3}.react-colorful__hue-pointer{z-index:2}`,dE.set(e,t);var n=ZU();n&&t.setAttribute("nonce",n),e.head.appendChild(t)}},[])},ej=function(r){var e=r.className,t=r.colorModel,n=r.color,i=n===void 0?t.defaultColor:n,s=r.onChange,o=ZM(r,["className","colorModel","color","onChange"]),l=z.useRef(null);o3(l);var u=s3(t,i,s),d=u[0],p=u[1],m=xm(["react-colorful",e]);return re.createElement("div",tf({},o,{ref:l,className:m}),re.createElement(i3,{hsva:d,onChange:p}),re.createElement(r3,{hue:d.h,onChange:p,className:"react-colorful__last-control"}))},tj=function(r){var e=r.className,t=r.hsva,n=r.onChange,i={backgroundImage:"linear-gradient(90deg, "+A_(Object.assign({},t,{a:0}))+", "+A_(Object.assign({},t,{a:1}))+")"},s=xm(["react-colorful__alpha",e]),o=Li(100*t.a);return re.createElement("div",{className:s},re.createElement("div",{className:"react-colorful__alpha-gradient",style:i}),re.createElement(eS,{onMove:function(l){n({a:l.left})},onKey:function(l){n({a:Gd(t.a+l.left)})},"aria-label":"Alpha","aria-valuetext":o+"%","aria-valuenow":o,"aria-valuemin":"0","aria-valuemax":"100"},re.createElement(tS,{className:"react-colorful__alpha-pointer",left:t.a,color:A_(t)})))},nj=function(r){var e=r.className,t=r.colorModel,n=r.color,i=n===void 0?t.defaultColor:n,s=r.onChange,o=ZM(r,["className","colorModel","color","onChange"]),l=z.useRef(null);o3(l);var u=s3(t,i,s),d=u[0],p=u[1],m=xm(["react-colorful",e]);return re.createElement("div",tf({},o,{ref:l,className:m}),re.createElement(i3,{hsva:d,onChange:p}),re.createElement(r3,{hue:d.h,onChange:p}),re.createElement(tj,{hsva:d,onChange:p,className:"react-colorful__last-control"}))},rj={defaultColor:{r:0,g:0,b:0,a:1},toHsva:n3,fromHsva:t3,equal:nS},ij=function(r){return re.createElement(nj,tf({},r,{colorModel:rj}))},sj={defaultColor:{r:0,g:0,b:0},toHsva:function(r){return n3({r:r.r,g:r.g,b:r.b,a:1})},fromHsva:function(r){return{r:(e=t3(r)).r,g:e.g,b:e.b};var e},equal:nS},oj=function(r){return re.createElement(ej,tf({},r,{colorModel:sj}))};function nf(r,e,t,n){function i(s){return s instanceof t?s:new t(function(o){o(s)})}return new(t||(t=Promise))(function(s,o){function l(p){try{d(n.next(p))}catch(m){o(m)}}function u(p){try{d(n.throw(p))}catch(m){o(m)}}function d(p){p.done?s(p.value):i(p.value).then(l,u)}d((n=n.apply(r,e||[])).next())})}function rf(r,e){var t={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},n,i,s,o=Object.create((typeof Iterator=="function"?Iterator:Object).prototype);return o.next=l(0),o.throw=l(1),o.return=l(2),typeof Symbol=="function"&&(o[Symbol.iterator]=function(){return this}),o;function l(d){return function(p){return u([d,p])}}function u(d){if(n)throw new TypeError("Generator is already executing.");for(;o&&(o=0,d[0]&&(t=0)),t;)try{if(n=1,i&&(s=d[0]&2?i.return:d[0]?i.throw||((s=i.return)&&s.call(i),0):i.next)&&!(s=s.call(i,d[1])).done)return s;switch(i=0,s&&(d=[d[0]&2,s.value]),d[0]){case 0:case 1:s=d;break;case 4:return t.label++,{value:d[1],done:!1};case 5:t.label++,i=d[1],d=[0];continue;
3914case 7:d=t.ops.pop(),t.trys.pop();continue;default:if(s=t.trys,!(s=s.length>0&&s[s.length-1])&&(d[0]===6||d[0]===2)){t=0;continue}if(d[0]===3&&(!s||d[1]>s[0]&&d[1]<s[3])){t.label=d[1];break}if(d[0]===6&&t.label<s[1]){t.label=s[1],s=d;break}if(s&&t.label<s[2]){t.label=s[2],t.ops.push(d);break}s[2]&&t.ops.pop(),t.trys.pop();continue}d=e.call(r,t)}catch(p){d=[6,p],i=0}finally{n=s=0}if(d[0]&5)throw d[1];return{value:d[0]?d[1]:void 0,done:!0}}}function aj(r,e){var t=typeof Symbol=="function"&&r[Symbol.iterator];if(!t)return r;var n=t.call(r),i,s=[],o;try{for(;(e===void 0||e-- >0)&&!(i=n.next()).done;)s.push(i.value)}catch(l){o={error:l}}finally{try{i&&!i.done&&(t=n.return)&&t.call(n)}finally{if(o)throw o.error}}return s}function lj(){for(var r=[],e=0;e<arguments.length;e++)r=r.concat(aj(arguments[e]));return r}var cj=new Map([["aac","audio/aac"],["abw","application/x-abiword"],["arc","application/x-freearc"],["avif","image/avif"],["avi","video/x-msvideo"],["azw","application/vnd.amazon.ebook"],["bin","application/octet-stream"],["bmp","image/bmp"],["bz","application/x-bzip"],["bz2","application/x-bzip2"],["cda","application/x-cdf"],["csh","application/x-csh"],["css","text/css"],["csv","text/csv"],["doc","application/msword"],["docx","application/vnd.openxmlformats-officedocument.wordprocessingml.document"],["eot","application/vnd.ms-fontobject"],["epub","application/epub+zip"],["gz","application/gzip"],["gif","image/gif"],["heic","image/heic"],["heif","image/heif"],["htm","text/html"],["html","text/html"],["ico","image/vnd.microsoft.icon"],["ics","text/calendar"],["jar","application/java-archive"],["jpeg","image/jpeg"],["jpg","image/jpeg"],["js","text/javascript"],["json","application/json"],["jsonld","application/ld+json"],["mid","audio/midi"],["midi","audio/midi"],["mjs","text/javascript"],["mp3","audio/mpeg"],["mp4","video/mp4"],["mpeg","video/mpeg"],["mpkg","application/vnd.apple.installer+xml"],["odp","application/vnd.oasis.opendocument.presentation"],["ods","application/vnd.oasis.opendocument.spreadsheet"],["odt","application/vnd.oasis.opendocument.text"],["oga","audio/ogg"],["ogv","video/ogg"],["ogx","application/ogg"],["opus","audio/opus"],["otf","font/otf"],["png","image/png"],["pdf","application/pdf"],["php","application/x-httpd-php"],["ppt","application/vnd.ms-powerpoint"],["pptx","application/vnd.openxmlformats-officedocument.presentationml.presentation"],["rar","application/vnd.rar"],["rtf","application/rtf"],["sh","application/x-sh"],["svg","image/svg+xml"],["swf","application/x-shockwave-flash"],["tar","application/x-tar"],["tif","image/tiff"],["tiff","image/tiff"],["ts","video/mp2t"],["ttf","font/ttf"],["txt","text/plain"],["vsd","application/vnd.visio"],["wav","audio/wav"],["weba","audio/webm"],["webm","video/webm"],["webp","image/webp"],["woff","font/woff"],["woff2","font/woff2"],["xhtml","application/xhtml+xml"],["xls","application/vnd.ms-excel"],["xlsx","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"],["xml","application/xml"],["xul","application/vnd.mozilla.xul+xml"],["zip","application/zip"],["7z","application/x-7z-compressed"],["mkv","video/x-matroska"],["mov","video/quicktime"],["msg","application/vnd.ms-outlook"]]);function Mm(r,e){var t=uj(r);if(typeof t.path!="string"){var n=r.webkitRelativePath;Object.defineProperty(t,"path",{value:typeof e=="string"?e:typeof n=="string"&&n.length>0?n:r.name,writable:!1,configurable:!1,enumerable:!0})}return t}function uj(r){var e=r.name,t=e&&e.lastIndexOf(".")!==-1;if(t&&!r.type){var n=e.split(".").pop().toLowerCase(),i=cj.get(n);i&&Object.defineProperty(r,"type",{value:i,writable:!1,configurable:!1,enumerable:!0})}return r}var hj=[".DS_Store","Thumbs.db"];function dj(r){return nf(this,void 0,void 0,function(){return rf(this,function(e){return Ey(r)&&fj(r)?[2,yj(r.dataTransfer,r.type)]:pj(r)?[2,mj(r)]:Array.isArray(r)&&r.every(function(t){return"getFile"in t&&typeof t.getFile=="function"})?[2,gj(r)]:[2,[]]})})}function fj(r){return Ey(r.dataTransfer)}function pj(r){return Ey(r)&&Ey(r.target)}function Ey(r){return typeof r=="object"&&r!==null}function mj(r){return Ix(r.target.files).map(function(e){return Mm(e)})}function gj(r){return nf(this,void 0,void 0,function(){var e;return rf(this,function(t){switch(t.label){case 0:return[4,Promise.all(r.map(function(n){return n.getFile()}))];case 1:return e=t.sent(),[2,e.map(function(n){return Mm(n)})]}})})}function yj(r,e){return nf(this,void 0,void 0,function(){var t,n;return rf(this,function(i){switch(i.label){case 0:return r===null?[2,[]]:r.items?(t=Ix(r.items).filter(function(s){return s.kind==="file"}),e!=="drop"?[2,t]:[4,Promise.all(t.map(vj))]):[3,2];case 1:return n=i.sent(),[2,fE(a3(n))];case 2:return[2,fE(Ix(r.files).map(function(s){return Mm(s)}))]}})})}function fE(r){return r.filter(function(e){return hj.indexOf(e.name)===-1})}function Ix(r){if(r===null)return[];for(var e=[],t=0;t<r.length;t++){var n=r[t];e.push(n)}return e}function vj(r){if(typeof r.webkitGetAsEntry!="function")return pE(r);var e=r.webkitGetAsEntry();return e&&e.isDirectory?l3(e):pE(r)}function a3(r){return r.reduce(function(e,t){return lj(e,Array.isArray(t)?a3(t):[t])},[])}function pE(r){var e=r.getAsFile();if(!e)return Promise.reject(r+" is not a File");var t=Mm(e);return Promise.resolve(t)}function _j(r){return nf(this,void 0,void 0,function(){return rf(this,function(e){return[2,r.isDirectory?l3(r):xj(r)]})})}function l3(r){var e=r.createReader();return new Promise(function(t,n){var i=[];function s(){var o=this;e.readEntries(function(l){return nf(o,void 0,void 0,function(){var u,d,p;return rf(this,function(m){switch(m.label){case 0:if(l.length)return[3,5];m.label=1;case 1:return m.trys.push([1,3,,4]),[4,Promise.all(i)];case 2:return u=m.sent(),t(u),[3,4];case 3:return d=m.sent(),n(d),[3,4];case 4:return[3,6];case 5:p=Promise.all(l.map(_j)),i.push(p),s(),m.label=6;case 6:return[2]}})})},function(l){n(l)})}s()})}function xj(r){return nf(this,void 0,void 0,function(){return rf(this,function(e){return[2,new Promise(function(t,n){r.file(function(i){var s=Mm(i,r.fullPath);t(s)},function(i){n(i)})})]})})}var gg={},mE;function Mj(){return mE||(mE=1,gg.__esModule=!0,gg.default=function(r,e){if(r&&e){var t=Array.isArray(e)?e:e.split(",");if(t.length===0)return!0;var n=r.name||"",i=(r.type||"").toLowerCase(),s=i.replace(/\/.*$/,"");return t.some(function(o){var l=o.trim().toLowerCase();return l.charAt(0)==="."?n.toLowerCase().endsWith(l):l.endsWith("/*")?s===l.replace(/\/.*$/,""):i===l})}return!0}),gg}var Sj=Mj();const wj=oc(Sj);function gE(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function yE(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};
vendor: 9,767 bytes, lines 3914-3917
3914e%2?gE(Object(t),!0).forEach(function(n){c3(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):gE(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function c3(r,e,t){return e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function vE(r,e){return Cj(r)||bj(r,e)||Ej(r,e)||Aj()}function Aj(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
3915In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Ej(r,e){if(r){if(typeof r=="string")return _E(r,e);var t=Object.prototype.toString.call(r).slice(8,-1);if(t==="Object"&&r.constructor&&(t=r.constructor.name),t==="Map"||t==="Set")return Array.from(r);if(t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return _E(r,e)}}function _E(r,e){(e==null||e>r.length)&&(e=r.length);for(var t=0,n=new Array(e);t<e;t++)n[t]=r[t];return n}function bj(r,e){var t=r==null?null:typeof Symbol<"u"&&r[Symbol.iterator]||r["@@iterator"];if(t!=null){var n=[],i=!0,s=!1,o,l;try{for(t=t.call(r);!(i=(o=t.next()).done)&&(n.push(o.value),!(e&&n.length===e));i=!0);}catch(u){s=!0,l=u}finally{try{!i&&t.return!=null&&t.return()}finally{if(s)throw l}}return n}}function Cj(r){if(Array.isArray(r))return r}var Tj="file-invalid-type",Ij="file-too-large",Pj="file-too-small",Rj="too-many-files",Bj=function(e){e=Array.isArray(e)&&e.length===1?e[0]:e;var t=Array.isArray(e)?"one of ".concat(e.join(", ")):e;return{code:Tj,message:"File type must be ".concat(t)}},xE=function(e){return{code:Ij,message:"File is larger than ".concat(e," ").concat(e===1?"byte":"bytes")}},ME=function(e){return{code:Pj,message:"File is smaller than ".concat(e," ").concat(e===1?"byte":"bytes")}},Oj={code:Rj,message:"Too many files"};function u3(r,e){var t=r.type==="application/x-moz-file"||wj(r,e);return[t,t?null:Bj(e)]}function h3(r,e,t){if(yp(r.size))if(yp(e)&&yp(t)){if(r.size>t)return[!1,xE(t)];if(r.size<e)return[!1,ME(e)]}else{if(yp(e)&&r.size<e)return[!1,ME(e)];if(yp(t)&&r.size>t)return[!1,xE(t)]}return[!0,null]}function yp(r){return r!=null}function Dj(r){var e=r.files,t=r.accept,n=r.minSize,i=r.maxSize,s=r.multiple,o=r.maxFiles;return!s&&e.length>1||s&&o>=1&&e.length>o?!1:e.every(function(l){var u=u3(l,t),d=vE(u,1),p=d[0],m=h3(l,n,i),y=vE(m,1),v=y[0];return p&&v})}function by(r){return typeof r.isPropagationStopped=="function"?r.isPropagationStopped():typeof r.cancelBubble<"u"?r.cancelBubble:!1}function yg(r){return r.dataTransfer?Array.prototype.some.call(r.dataTransfer.types,function(e){return e==="Files"||e==="application/x-moz-file"}):!!r.target&&!!r.target.files}function SE(r){r.preventDefault()}function Lj(r){return r.indexOf("MSIE")!==-1||r.indexOf("Trident/")!==-1}function Nj(r){return r.indexOf("Edge/")!==-1}function Fj(){var r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:window.navigator.userAgent;return Lj(r)||Nj(r)}function Wo(){for(var r=arguments.length,e=new Array(r),t=0;t<r;t++)e[t]=arguments[t];return function(n){for(var i=arguments.length,s=new Array(i>1?i-1:0),o=1;o<i;o++)s[o-1]=arguments[o];return e.some(function(l){return!by(n)&&l&&l.apply(void 0,[n].concat(s)),by(n)})}}function kj(){return"showOpenFilePicker"in window}function Uj(r){return r=typeof r=="string"?r.split(","):r,[{description:"everything",accept:Array.isArray(r)?r.filter(function(e){return e==="audio/*"||e==="video/*"||e==="image/*"||e==="text/*"||/\w+\/[-+.\w]+/g.test(e)}).reduce(function(e,t){return yE(yE({},e),{},c3({},t,[]))},{}):{}}]}function jj(r){return r instanceof DOMException&&(r.name==="AbortError"||r.code===r.ABORT_ERR)}function zj(r){return r instanceof DOMException&&(r.name==="SecurityError"||r.code===r.SECURITY_ERR)}var Hj=["children"],Gj=["open"],Vj=["refKey","role","onKeyDown","onFocus","onBlur","onClick","onDragEnter","onDragOver","onDragLeave","onDrop"],Wj=["refKey","onChange","onClick"];function Xj(r){return Kj(r)||$j(r)||d3(r)||Jj()}function Jj(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
3916In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function $j(r){if(typeof Symbol<"u"&&r[Symbol.iterator]!=null||r["@@iterator"]!=null)return Array.from(r)}function Kj(r){if(Array.isArray(r))return Px(r)}function E_(r,e){return Qj(r)||qj(r,e)||d3(r,e)||Yj()}function Yj(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
3917In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function d3(r,e){if(r){if(typeof r=="string")return Px(r,e);var t=Object.prototype.toString.call(r).slice(8,-1);if(t==="Object"&&r.constructor&&(t=r.constructor.name),t==="Map"||t==="Set")return Array.from(r);if(t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return Px(r,e)}}function Px(r,e){(e==null||e>r.length)&&(e=r.length);for(var t=0,n=new Array(e);t<e;t++)n[t]=r[t];return n}function qj(r,e){var t=r==null?null:typeof Symbol<"u"&&r[Symbol.iterator]||r["@@iterator"];if(t!=null){var n=[],i=!0,s=!1,o,l;try{for(t=t.call(r);!(i=(o=t.next()).done)&&(n.push(o.value),!(e&&n.length===e));i=!0);}catch(u){s=!0,l=u}finally{try{!i&&t.return!=null&&t.return()}finally{if(s)throw l}}return n}}function Qj(r){if(Array.isArray(r))return r}function wE(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function Yn(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?wE(Object(t),!0).forEach(function(n){Rx(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):wE(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function Rx(r,e,t){return e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Cy(r,e){if(r==null)return{};var t=Zj(r,e),n,i;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(r);for(i=0;i<s.length;i++)n=s[i],!(e.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(r,n)&&(t[n]=r[n])}return t}function Zj(r,e){if(r==null)return{};var t={},n=Object.keys(r),i,s;for(s=0;s<n.length;s++)i=n[s],!(e.indexOf(i)>=0)&&(t[i]=r[i]);return t}var rS=z.forwardRef(function(r,e){var t=r.children,n=Cy(r,Hj),i=p3(n),s=i.open,o=Cy(i,Gj);return z.useImperativeHandle(e,function(){return{open:s}},[s]),re.createElement(z.Fragment,null,t(Yn(Yn({},o),{},{open:s})))});rS.displayName="Dropzone";var f3={disabled:!1,getFilesFromEvent:dj,maxSize:1/0,minSize:0,multiple:!0,maxFiles:0,preventDropOnDocument:!0,noClick:!1,noKeyboard:!1,noDrag:!1,noDragEventsBubbling:!1,validator:null,useFsAccessApi:!0};rS.defaultProps=f3;rS.propTypes={children:It.func,accept:It.oneOfType([It.string,It.arrayOf(It.string)]),multiple:It.bool,preventDropOnDocument:It.bool,noClick:It.bool,noKeyboard:It.bool,noDrag:It.bool,noDragEventsBubbling:It.bool,minSize:It.number,maxSize:It.number,maxFiles:It.number,disabled:It.bool,getFilesFromEvent:It.func,onFileDialogCancel:It.func,onFileDialogOpen:It.func,useFsAccessApi:It.bool,onDragEnter:It.func,onDragLeave:It.func,onDragOver:It.func,onDrop:It.func,onDropAccepted:It.func,onDropRejected:It.func,validator:It.func};var Bx={isFocused:!1,isFileDialogActive:!1,isDragActive:!1,isDragAccept:!1,isDragReject:!1,draggedFiles:[],acceptedFiles:[],fileRejections:[]};function p3(){var r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},e=Yn(Yn({},f3),r),t=e.accept,n=e.disabled,i=e.getFilesFromEvent,s=e.maxSize,o=e.minSize,l=e.multiple,u=e.maxFiles,d=e.onDragEnter,p=e.onDragLeave,m=e.onDragOver,y=e.onDrop,v=e.onDropAccepted,S=e.onDropRejected,E=e.onFileDialogCancel,A=e.onFileDialogOpen,M=e.useFsAccessApi,T=e.preventDropOnDocument,I=e.noClick,P=e.noKeyboard,k=e.noDrag,O=e.noDragEventsBubbling,N=e.validator,H=z.useMemo(function(){return typeof A=="function"?A:AE},[A]),F=z.useMemo(function(){return typeof E=="function"?E:AE},[E]),L=z.useRef(null),V=z.useRef(null),te=z.useReducer(ez,Bx),ne=E_(te,2),ce=ne[0],me=ne[1],he=ce.isFocused,ge=ce.isFileDialogActive,U=ce.draggedFiles,Z=z.useRef(typeof window<"u"&&window.isSecureContext&&M&&kj()),q=function(){!Z.current&&ge&&setTimeout(function(){if(V.current){var ye=V.current.files;ye.length||(me({type:"closeDialog"}),F())}},300)};z.useEffect(function(){return window.addEventListener("focus",q,!1),function(){window.removeEventListener("focus",q,!1)}},[V,ge,F,Z]);var X=z.useRef([]),se=function(ye){L.current&&L.current.contains(ye.target)||(ye.preventDefault(),X.current=[])};z.useEffect(function(){return T&&(document.addEventListener("dragover",SE,!1),document.addEventListener("drop",se,!1)),function(){T&&(document.removeEventListener("dragover",SE),document.removeEventListener("drop",se))}},[L,T]);var Le=z.useCallback(function(ee){ee.preventDefault(),ee.persist(),Fe(ee),X.current=[].concat(Xj(X.current),[ee.target]),yg(ee)&&Promise.resolve(i(ee)).then(function(ye){by(ee)&&!O||(me({draggedFiles:ye,isDragActive:!0,type:"setDraggedFiles"}),d&&d(ee))})},[i,d,O]),pe=z.useCallback(function(ee){ee.preventDefault(),ee.persist(),Fe(ee);var ye=yg(ee);if(ye&&ee.dataTransfer)try{ee.dataTransfer.dropEffect="copy"}catch{}return ye&&m&&m(ee),!1},[m,O]),Ae=z.useCallback(function(ee){ee.preventDefault(),ee.persist(),Fe(ee);var ye=X.current.filter(function(be){return L.current&&L.current.contains(be)}),Pe=ye.indexOf(ee.target);Pe!==-1&&ye.splice(Pe,1),X.current=ye,!(ye.length>0)&&(me({isDragActive:!1,type:"setDraggedFiles",draggedFiles:[]}),yg(ee)&&p&&p(ee))},[L,p,O]),Re=z.useCallback(function(ee,ye){var Pe=[],be=[];
3917ee.forEach(function(et){var Je=u3(et,t),Qe=E_(Je,2),Ht=Qe[0],Ue=Qe[1],ut=h3(et,o,s),Ct=E_(ut,2),Rt=Ct[0],ht=Ct[1],$t=N?N(et):null;if(Ht&&Rt&&!$t)Pe.push(et);else{var kt=[Ue,ht];$t&&(kt=kt.concat($t)),be.push({file:et,errors:kt.filter(function(pn){return pn})})}}),(!l&&Pe.length>1||l&&u>=1&&Pe.length>u)&&(Pe.forEach(function(et){be.push({file:et,errors:[Oj]})}),Pe.splice(0)),me({acceptedFiles:Pe,fileRejections:be,type:"setFiles"}),y&&y(Pe,be,ye),be.length>0&&S&&S(be,ye),Pe.length>0&&v&&v(Pe,ye)},[me,l,t,o,s,u,y,v,S,N]),Ie=z.useCallback(function(ee){ee.preventDefault(),ee.persist(),Fe(ee),X.current=[],yg(ee)&&Promise.resolve(i(ee)).then(function(ye){by(ee)&&!O||Re(ye,ee)}),me({type:"reset"})},[i,Re,O]),Ge=z.useCallback(function(){if(Z.current){me({type:"openDialog"}),H();var ee={multiple:l,types:Uj(t)};window.showOpenFilePicker(ee).then(function(ye){return i(ye)}).then(function(ye){Re(ye,null),me({type:"closeDialog"})}).catch(function(ye){jj(ye)?(F(ye),me({type:"closeDialog"})):zj(ye)&&(Z.current=!1,V.current&&(V.current.value=null,V.current.click()))});return}V.current&&(me({type:"openDialog"}),H(),V.current.value=null,V.current.click())},[me,H,F,M,Re,t,l]),qe=z.useCallback(function(ee){!L.current||!L.current.isEqualNode(ee.target)||(ee.key===" "||ee.key==="Enter"||ee.keyCode===32||ee.keyCode===13)&&(ee.preventDefault(),Ge())},[L,Ge]),lt=z.useCallback(function(){me({type:"focus"})},[]),Pt=z.useCallback(function(){me({type:"blur"})},[]),Be=z.useCallback(function(){I||(Fj()?setTimeout(Ge,0):Ge())},[I,Ge]),Oe=function(ye){return n?null:ye},K=function(ye){return P?null:Oe(ye)},pt=function(ye){return k?null:Oe(ye)},Fe=function(ye){O&&ye.stopPropagation()},st=z.useMemo(function(){return function(){var ee=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},ye=ee.refKey,Pe=ye===void 0?"ref":ye,be=ee.role,et=ee.onKeyDown,Je=ee.onFocus,Qe=ee.onBlur,Ht=ee.onClick,Ue=ee.onDragEnter,ut=ee.onDragOver,Ct=ee.onDragLeave,Rt=ee.onDrop,ht=Cy(ee,Vj);return Yn(Yn(Rx({onKeyDown:K(Wo(et,qe)),onFocus:K(Wo(Je,lt)),onBlur:K(Wo(Qe,Pt)),onClick:Oe(Wo(Ht,Be)),onDragEnter:pt(Wo(Ue,Le)),onDragOver:pt(Wo(ut,pe)),onDragLeave:pt(Wo(Ct,Ae)),onDrop:pt(Wo(Rt,Ie)),role:typeof be=="string"&&be!==""?be:"button"},Pe,L),!n&&!P?{tabIndex:0}:{}),ht)}},[L,qe,lt,Pt,Be,Le,pe,Ae,Ie,P,k,n]),Ve=z.useCallback(function(ee){ee.stopPropagation()},[]),St=z.useMemo(function(){return function(){var ee=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},ye=ee.refKey,Pe=ye===void 0?"ref":ye,be=ee.onChange,et=ee.onClick,Je=Cy(ee,Wj),Qe=Rx({accept:t,multiple:l,type:"file",style:{display:"none"},onChange:Oe(Wo(be,Ie)),onClick:Oe(Wo(et,Ve)),tabIndex:-1},Pe,V);return Yn(Yn({},Qe),Je)}},[V,t,l,Ie,n]),$e=U.length,J=$e>0&&Dj({files:U,accept:t,minSize:o,maxSize:s,multiple:l,maxFiles:u}),G=$e>0&&!J;return Yn(Yn({},ce),{},{isDragAccept:J,isDragReject:G,isFocused:he&&!n,getRootProps:st,getInputProps:St,rootRef:L,inputRef:V,open:Oe(Ge)})}function ez(r,e){switch(e.type){case"focus":return Yn(Yn({},r),{},{isFocused:!0});case"blur":return Yn(Yn({},r),{},{isFocused:!1});case"openDialog":return Yn(Yn({},Bx),{},{isFileDialogActive:!0});case"closeDialog":return Yn(Yn({},r),{},{isFileDialogActive:!1});case"setDraggedFiles":var t=e.isDragActive,n=e.draggedFiles;return Yn(Yn({},r),{},{draggedFiles:n,isDragActive:t});case"setFiles":return Yn(Yn({},r),{},{acceptedFiles:e.acceptedFiles,fileRejections:e.fileRejections});case"reset":return Yn({},Bx);default:return r}}function AE(){}const tz=r=>(e,t,n)=>{const i=n.subscribe;return n.subscribe=(o,l,u)=>{let d=o;if(l){const p=(u==null?void 0:u.equalityFn)||Object.is;let m=o(n.getState());d=y=>{const v=o(y);if(!p(m,v)){const S=m;l(m=v,S)}},u!=null&&u.fireImmediately&&l(m,m)}return i(d)},r(e,t,n)};/*!
3918 * isobject <https://github.com/jonschlinkert/isobject>
3919 *
3920 * Copyright (c) 2014-2017, Jon Schlinkert.
3921 * Released under the MIT License.
3922 */var b_,EE;function nz(){return EE||(EE=1,b_=function(e){return e!=null&&typeof e=="object"&&Array.isArray(e)===!1}),b_}/*!
3923 * is-plain-object <https://github.com/jonschlinkert/is-plain-object>
3924 *
3925 * Copyright (c) 2014-2017, Jon Schlinkert.
3926 * Released under the MIT License.
3927 */var C_,bE;function m3(){if(bE)return C_;bE=1;var r=nz();function e(t){return r(t)===!0&&Object.prototype.toString.call(t)==="[object Object]"}return C_=function(n){var i,s;return!(e(n)===!1||(i=n.constructor,typeof i!="function")||(s=i.prototype,e(s)===!1)||s.hasOwnProperty("isPrototypeOf")===!1)},C_}/*!
3928 * is-extendable <https://github.com/jonschlinkert/is-extendable>
3929 *
3930 * Copyright (c) 2015-2017, Jon Schlinkert.
3931 * Released under the MIT License.
3932 */var T_,CE;function iS(){if(CE)return T_;CE=1;var r=m3();return T_=function(t){return r(t)||typeof t=="function"||Array.isArray(t)},T_}/*!
3933 * for-in <https://github.com/jonschlinkert/for-in>
3934 *
3935 * Copyright (c) 2014-2017, Jon Schlinkert.
3936 * Released under the MIT License.
3937 */var I_,TE;function rz(){return TE||(TE=1,I_=function(e,t,n){for(var i in e)if(t.call(n,e[i],i,e)===!1)break}),I_}var P_,IE;function iz(){if(IE)return P_;IE=1;var r=iS(),e=rz();function t(o,l){for(var u=arguments.length,d=0;++d<u;){var p=arguments[d];i(p)&&e(p,n,o)}return o}function n(o,l){if(s(l)){var u=this[l];i(o)&&i(u)?t(u,o):this[l]=o}}function i(o){return r(o)&&!Array.isArray(o)}function s(o){return o!=="__proto__"&&o!=="constructor"&&o!=="prototype"}return P_=t,P_}/*!
3938 * get-value <https://github.com/jonschlinkert/get-value>
3939 *
3940 * Copyright (c) 2014-2015, Jon Schlinkert.
3941 * Licensed under the MIT License.
3942 */var R_,PE;function sz(){if(PE)return R_;PE=1,R_=function(t,n,i,s,o){if(!r(t)||!n)return t;if(n=e(n),i&&(n+="."+e(i)),s&&(n+="."+e(s)),o&&(n+="."+e(o)),n in t)return t[n];for(var l=n.split("."),u=l.length,d=-1;t&&++d<u;){for(var p=l[d];p[p.length-1]==="\\";)p=p.slice(0,-1)+"."+l[++d];t=t[p]}return t};function r(t){return t!==null&&(typeof t=="object"||typeof t=="function")}function e(t){return t?Array.isArray(t)?t.join("."):t:""}return R_}/*!
3943 * assign-symbols <https://github.com/jonschlinkert/assign-symbols>
3944 *
3945 * Copyright (c) 2015, Jon Schlinkert.
3946 * Licensed under the MIT License.
3947 */var B_,RE;function oz(){return RE||(RE=1,B_=function(r,e){if(r===null||typeof r>"u")throw new TypeError("expected first argument to be an object.");if(typeof e>"u"||typeof Symbol>"u"||typeof Object.getOwnPropertySymbols!="function")return r;for(var t=Object.prototype.propertyIsEnumerable,n=Object(r),i=arguments.length,s=0;++s<i;)for(var o=Object(arguments[s]),l=Object.getOwnPropertySymbols(o),u=0;u<l.length;u++){var d=l[u];t.call(o,d)&&(n[d]=o[d])}return n}),B_}var O_,BE;function az(){if(BE)return O_;BE=1;var r=iS(),e=oz();O_=Object.assign||function(l){if(l===null||typeof l>"u")throw new TypeError("Cannot convert undefined or null to object");s(l)||(l={});for(var u=1;u<arguments.length;u++){var d=arguments[u];n(d)&&(d=i(d)),s(d)&&(t(l,d),e(l,d))}return l};function t(l,u){for(var d in u)o(u,d)&&(l[d]=u[d])}function n(l){return l&&typeof l=="string"}function i(l){var u={};for(var d in l)u[d]=l[d];return u}function s(l){return l&&typeof l=="object"||r(l)}function o(l,u){return Object.prototype.hasOwnProperty.call(l,u)}return O_}/*!
3948 * split-string <https://github.com/jonschlinkert/split-string>
3949 *
3950 * Copyright (c) 2015-2017, Jon Schlinkert.
3951 * Released under the MIT License.
3952 */var D_,OE;function lz(){if(OE)return D_;OE=1;var r=az();D_=function(i,s,o){if(typeof i!="string")throw new TypeError("expected a string");typeof s=="function"&&(o=s,s=null),typeof s=="string"&&(s={sep:s});var l=r({sep:"."},s),u=l.quotes||['"',"'","`"],d;l.brackets===!0?d={"<":">","(":")","[":"]","{":"}"}:l.brackets&&(d=l.brackets);var p=[],m=[],y=[""],v=l.sep,S=i.length,E=-1,A;function M(){if(d&&m.length)return d[m[m.length-1]]}for(;++E<S;){var T=i[E],I=i[E+1],P={val:T,idx:E,arr:y,str:i};if(p.push(P),T==="\\"){P.val=n(l,i,E)===!0?T+I:I,P.escaped=!0,typeof o=="function"&&o(P),y[y.length-1]+=P.val,E++;continue}if(d&&d[T]){m.push(T);var k=M(),O=E+1;if(i.indexOf(k,O+1)!==-1)for(;m.length&&O<S;){var N=i[++O];if(N==="\\"){N++;continue}if(u.indexOf(N)!==-1){O=e(i,N,O+1);continue}if(k=M(),m.length&&i.indexOf(k,O+1)===-1)break;if(d[N]){m.push(N);continue}k===N&&m.pop()}if(A=O,A===-1){y[y.length-1]+=T;continue}T=i.slice(E,A+1),P.val=T,P.idx=E=A}if(u.indexOf(T)!==-1){if(A=e(i,T,E+1),A===-1){y[y.length-1]+=T;continue}t(T,l)===!0?T=i.slice(E,A+1):T=i.slice(E+1,A),P.val=T,P.idx=E=A}if(typeof o=="function"&&(o(P,p),T=P.val,E=P.idx),P.val===v&&P.split!==!1){y.push("");continue}y[y.length-1]+=P.val}return y};function e(i,s,o,l){var u=i.indexOf(s,o);return i.charAt(u-1)==="\\"?e(i,s,u+1):u}function t(i,s){return s.keepDoubleQuotes===!0&&i==='"'||s.keepSingleQuotes===!0&&i==="'"?!0:s.keepQuotes}function n(i,s,o){return typeof i.keepEscaping=="function"?i.keepEscaping(s,o):i.keepEscaping===!0||s[o+1]==="\\"}return D_}/*!
3953 * is-extendable <https://github.com/jonschlinkert/is-extendable>
3954 *
3955 * Copyright (c) 2015, Jon Schlinkert.
3956 * Licensed under the MIT License.
3957 */var L_,DE;function cz(){return DE||(DE=1,L_=function(e){return typeof e<"u"&&e!==null&&(typeof e=="object"||typeof e=="function")}),L_}var N_,LE;function uz(){if(LE)return N_;LE=1;var r=cz();N_=function(i){r(i)||(i={});for(var s=arguments.length,o=1;o<s;o++){var l=arguments[o];r(l)&&e(i,l)}return i};function e(n,i){for(var s in i)t(i,s)&&(n[s]=i[s])}function t(n,i){return Object.prototype.hasOwnProperty.call(n,i)}return N_}/*!
3958 * is-extendable <https://github.com/jonschlinkert/is-extendable>
3959 *
3960 * Copyright (c) 2015, Jon Schlinkert.
3961 * Licensed under the MIT License.
3962 */var F_,NE;function hz(){return NE||(NE=1,F_=function(e){return typeof e<"u"&&e!==null&&(typeof e=="object"||typeof e=="function")}),F_}/*!
3963 * set-value <https://github.com/jonschlinkert/set-value>
3964 *
3965 * Copyright (c) 2014-2015, 2017, Jon Schlinkert.
3966 * Released under the MIT License.
3967 */var k_,FE;function dz(){if(FE)return k_;FE=1;var r=lz(),e=uz(),t=m3(),n=hz();k_=function(s,o,l){if(!n(s)||(Array.isArray(o)&&(o=[].concat.apply([],o).join(".")),typeof o!="string"))return s;for(var u=r(o,{sep:".",brackets:!0}).filter(i),d=u.length,p=-1,m=s;++p<d;){var y=u[p];if(p!==d-1){n(m[y])||(m[y]={}),m=m[y];continue}t(m[y])&&t(l)?m[y]=e({},m[y],l):m[y]=l}return s};function i(s){return s!=="__proto__"&&s!=="constructor"&&s!=="prototype"}return k_}var U_,kE;function fz(){if(kE)return U_;kE=1;var r=iS(),e=iz(),t=sz(),n=dz();return U_=function(s,o,l){if(!r(s))throw new TypeError("expected an object");
3967if(typeof o!="string"||l==null)return e.apply(null,arguments);if(typeof l=="string")return n(s,o,l),s;var u=t(s,o);return r(l)&&r(u)&&(l=e({},u,l)),n(s,o,l),s},U_}var pz=fz();const mz=oc(pz),sS=(...r)=>r.filter(Boolean).join(".");function gz(r){const e=r.split(".");return[e.pop(),e.join(".")||void 0]}function yz(r){const e=z.useRef(null),t=z.useRef(null),n=z.useRef(!0);return z.useLayoutEffect(()=>{r||(e.current.style.height="0px",e.current.style.overflow="hidden")},[]),z.useEffect(()=>{if(n.current){n.current=!1;return}let i;const s=e.current,o=()=>{r&&(s.style.removeProperty("height"),s.style.removeProperty("overflow"),t.current.scrollIntoView({behavior:"smooth",block:"nearest"}))};s.addEventListener("transitionend",o,{once:!0});const{height:l}=t.current.getBoundingClientRect();return s.style.height=l+"px",r||(s.style.overflow="hidden",i=window.setTimeout(()=>s.style.height="0px",50)),()=>{s.removeEventListener("transitionend",o),clearTimeout(i)}},[r]),{wrapperRef:e,contentRef:t}}const vz=r=>{const[e,t]=z.useState(r.getVisiblePaths());return z.useEffect(()=>{t(r.getVisiblePaths());const n=r.useStore.subscribe(r.getVisiblePaths,t,{equalityFn:FT});return()=>n()},[r]),e};function g3(r=3){const e=z.useRef(null),t=z.useRef(null),[n,i]=z.useState(!1),s=z.useCallback(()=>i(!0),[]),o=z.useCallback(()=>i(!1),[]);return z.useLayoutEffect(()=>{if(n){const{bottom:l,top:u,left:d}=e.current.getBoundingClientRect(),{height:p}=t.current.getBoundingClientRect(),m=l+p>window.innerHeight-40?"up":"down";t.current.style.position="fixed",t.current.style.zIndex="10000",t.current.style.left=d+"px",m==="down"?t.current.style.top=l+r+"px":t.current.style.bottom=window.innerHeight-u+r+"px"}},[r,n]),{popinRef:e,wrapperRef:t,shown:n,show:s,hide:o}}YU([qU]);const _z={rgb:"toRgb",hsl:"toHsl",hsv:"toHsv",hex:"toHex"};ts.extend({color:()=>r=>Bi(r).isValid()});const xz=r=>ts().color().test(r);function y3(r,{format:e,hasAlpha:t,isString:n}){const i=_z[e]+(n&&e!=="hex"?"String":""),s=r[i]();return typeof s=="object"&&!t?gk(s,["a"]):s}const v3=(r,e)=>{const t=Bi(r);if(!t.isValid())throw Error("Invalid color");return y3(t,e)},Mz=(r,e)=>y3(Bi(r),Zt(Zt({},e),{},{isString:!0,format:"hex"})),Sz=({value:r})=>{const e=KU(r),t=e==="name"?"hex":e,n=typeof r=="object"?"a"in r:e==="hex"&&r.length===8||/^(rgba)|(hsla)|(hsva)/.test(r),i={format:t,hasAlpha:n,isString:typeof r=="string"};return{value:v3(r,i),settings:i}};var wz=Object.freeze({__proto__:null,schema:xz,sanitize:v3,format:Mz,normalize:Sz});const Az=Ft("div",{position:"relative",boxSizing:"border-box",borderRadius:"$sm",overflow:"hidden",cursor:"pointer",height:"$rowHeight",width:"$rowHeight",backgroundColor:"#fff",backgroundImage:`url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill-opacity=".05"><path d="M8 0h8v8H8zM0 8h8v8H0z"/></svg>')`,$inputStyle:"",$hover:"",zIndex:1,variants:{active:{true:{$inputStyle:"$accent1"}}},"&::before":{content:'""',position:"absolute",top:0,bottom:0,right:0,left:0,backgroundColor:"currentColor",zIndex:1}}),Ez=Ft("div",{position:"relative",display:"grid",gridTemplateColumns:"$sizes$rowHeight auto",columnGap:"$colGap",alignItems:"center"}),bz=Ft("div",{width:"$colorPickerWidth",height:"$colorPickerHeight",".react-colorful":{width:"100%",height:"100%",boxShadow:"$level2",cursor:"crosshair"},".react-colorful__saturation":{borderRadius:"$sm $sm 0 0"},".react-colorful__alpha, .react-colorful__hue":{height:10},".react-colorful__last-control":{borderRadius:"0 0 $sm $sm"},".react-colorful__pointer":{height:12,width:12}});function UE(r,e){return e!=="rgb"?Bi(r).toRgb():r}function Cz({value:r,displayValue:e,settings:t,onUpdate:n}){const{emitOnEditStart:i,emitOnEditEnd:s}=yi(),{format:o,hasAlpha:l}=t,{popinRef:u,wrapperRef:d,shown:p,show:m,hide:y}=g3(),v=z.useRef(0),[S,E]=z.useState(()=>UE(r,o)),A=l?ij:oj,M=()=>{E(UE(r,o)),m(),i()},T=()=>{y(),s(),window.clearTimeout(v.current)},I=()=>{v.current=window.setTimeout(T,500)};return z.useEffect(()=>()=>window.clearTimeout(v.current),[]),re.createElement(re.Fragment,null,re.createElement(Az,{ref:u,active:p,onClick:()=>M(),style:{color:e}}),p&&re.createElement(YM,null,re.createElement(z4,{onPointerUp:T}),re.createElement(bz,{ref:d,onMouseEnter:()=>window.clearTimeout(v.current),onMouseLeave:P=>P.buttons===0&&I()},re.createElement(A,{color:S,onChange:n}))))}function Tz(){const{value:r,displayValue:e,label:t,onChange:n,onUpdate:i,settings:s}=yi();return re.createElement(Vs,{input:!0},re.createElement(Io,null,t),re.createElement(Ez,null,re.createElement(Cz,{value:r,displayValue:e,onCh
3967ange:n,onUpdate:i,settings:s}),re.createElement(KM,{value:e,onChange:n,onUpdate:i})))}var Iz=Zt({component:Tz},wz);function Pz(){const{label:r,displayValue:e,onUpdate:t,settings:n}=yi();return re.createElement(Vs,{input:!0},re.createElement(Io,null,r),re.createElement(QM,{value:e,settings:n,onUpdate:t}))}var Rz=Zt({component:Pz},K4(["x","y","z"]));const Bz=Ft("div",{$flexCenter:"",position:"relative",backgroundColor:"$elevation3",borderRadius:"$sm",cursor:"pointer",height:"$rowHeight",width:"$rowHeight",touchAction:"none",$draggable:"",$hover:"","&:active":{cursor:"none"},"&::after":{content:'""',backgroundColor:"$accent2",height:4,width:4,borderRadius:2}}),Oz=Ft("div",{$flexCenter:"",width:"$joystickWidth",height:"$joystickHeight",borderRadius:"$sm",boxShadow:"$level2",position:"fixed",zIndex:1e4,overflow:"hidden",$draggable:"",transform:"translate(-50%, -50%)",variants:{isOutOfBounds:{true:{backgroundColor:"$elevation1"},false:{backgroundColor:"$elevation3"}}},"> div":{position:"absolute",$flexCenter:"",borderStyle:"solid",borderWidth:1,borderColor:"$highlight1",backgroundColor:"$elevation3",width:"80%",height:"80%","&::after,&::before":{content:'""',position:"absolute",zindex:10,backgroundColor:"$highlight1"},"&::before":{width:"100%",height:1},"&::after":{height:"100%",width:1}},"> span":{position:"relative",zindex:100,width:10,height:10,backgroundColor:"$accent2",borderRadius:"50%"}});function Dz({value:r,settings:e,onUpdate:t}){const n=z.useRef(),i=z.useRef(0),s=z.useRef(0),o=z.useRef(1),[l,u]=z.useState(!1),[d,p]=z.useState(!1),[m,y]=G4(),v=z.useRef(null),S=z.useRef(null);z.useLayoutEffect(()=>{if(l){const{top:te,left:ne,width:ce,height:me}=v.current.getBoundingClientRect();S.current.style.left=ne+ce/2+"px",S.current.style.top=te+me/2+"px"}},[l]);const{keys:[E,A],joystick:M}=e,T=M==="invertY"?1:-1,{[E]:{step:I},[A]:{step:P}}=e,k=Za("sizes","joystickWidth"),O=Za("sizes","joystickHeight"),N=parseFloat(k)*.8/2,H=parseFloat(O)*.8/2,F=z.useCallback(()=>{n.current||(p(!0),i.current&&y({x:i.current*N}),s.current&&y({y:s.current*-H}),n.current=window.setInterval(()=>{t(te=>{const ne=I*i.current*o.current,ce=T*P*s.current*o.current;return Array.isArray(te)?{[E]:te[0]+ne,[A]:te[1]+ce}:{[E]:te[E]+ne,[A]:te[A]+ce}})},16))},[N,H,t,y,I,P,E,A,T]),L=z.useCallback(()=>{window.clearTimeout(n.current),n.current=void 0,p(!1)},[]);z.useEffect(()=>{function te(ne){o.current=C4(ne)}return window.addEventListener("keydown",te),window.addEventListener("keyup",te),()=>{window.clearTimeout(n.current),window.removeEventListener("keydown",te),window.removeEventListener("keyup",te)}},[]);const V=_m(({first:te,active:ne,delta:[ce,me],movement:[he,ge]})=>{te&&u(!0);const U=sc(he,-N,N),Z=sc(ge,-H,H);i.current=Math.abs(he)>Math.abs(U)?Math.sign(he-U):0,s.current=Math.abs(ge)>Math.abs(Z)?Math.sign(Z-ge):0;let q=r[E],X=r[A];ne?(i.current||(q+=ce*I*o.current,y({x:U})),s.current||(X-=T*me*P*o.current,y({y:Z})),i.current||s.current?F():L(),t({[E]:q,[A]:X})):(u(!1),i.current=0,s.current=0,y({x:0,y:0}),L())});return re.createElement(Bz,Mr({ref:v},V()),l&&re.createElement(YM,null,re.createElement(Oz,{ref:S,isOutOfBounds:d},re.createElement("div",null),re.createElement("span",{ref:m}))))}const Lz=Ft("div",{display:"grid",columnGap:"$colGap",variants:{withJoystick:{true:{gridTemplateColumns:"$sizes$rowHeight auto"},false:{gridTemplateColumns:"auto"}}}});function Nz(){const{label:r,displayValue:e,onUpdate:t,settings:n}=yi();return re.createElement(Vs,{input:!0},re.createElement(Io,null,r),re.createElement(Lz,{withJoystick:!!n.joystick},n.joystick&&re.createElement(Dz,{value:e,settings:n,onUpdate:t}),re.createElement(QM,{value:e,settings:n,onUpdate:t})))}const Fz=["joystick"],_3=K4(["x","y"]),kz=r=>{let{joystick:e=!0}=r,t=Un(r,Fz);const{value:n,settings:i}=_3.normalize(t);return{value:n,settings:Zt(Zt({},i),{},{joystick:e})}};var Uz=Zt(Zt({component:Nz},_3),{},{normalize:kz});const jz=r=>{if(r!==void 0){if(r instanceof File)try{return URL.createObjectURL(r)}catch{return}if(typeof r=="string"&&r.indexOf("blob:")===0)return r;throw Error("Invalid image format [undefined | blob | File].")}},zz=(r,e)=>typeof e=="object"&&"image"in e,Hz=({image:r})=>({value:r});var Gz=Object.freeze({__proto__:null,sanitize:jz,schema:zz,normalize:Hz});const Vz=Ft("div",{position:"relative",display:"grid",gridTemplateColumns:"$sizes$rowHeight auto 20px",columnGap:"$colGap",alignItems:"center"}),Wz=Ft("div",{$flexCenter:"",overflow:"hidden",height:"$rowHeight",background:"$elevation3",textAlign:"center",color:"inherit",borderRadius:"$sm",outline:"none",userSelect:"none",cursor:"pointer",$inputStyle:"",$hover:"",$focusWithin:"",$active:"$accent1 $elevation1",variants:{isDragAccept:{true:{$inputStyle:"$accent1",backgroundColor:"$elevation1"}}}}),Xz=Ft("div",{boxSizing:"border-box",borderRadius:"$sm",height:"$rowHeight",width:"$rowHeight",$inputStyle:"",backgroundSize:"cover",backgroundPosition:"center",variants:{hasImage:{true:{cursor:"pointer",$hover:"",$active:""}}}}),Jz=Ft("div",{$flexCenter:"",width:"$imagePreviewWidth",height:"$imagePreviewHeight",borderRadius:"$sm",boxShadow:"$level2",pointerEvents:"none",$inputStyle:"",backgroundSize:"cover",backgroundPosition:"center"}
3967),$z=Ft("div",{fontSize:"0.8em",height:"100%",padding:"$rowGap $md"}),Kz=Ft("div",{$flexCenter:"",top:"0",right:"0",marginRight:"$sm",height:"100%",cursor:"pointer",variants:{disabled:{true:{color:"$elevation3",cursor:"default"}}},"&::after,&::before":{content:'""',position:"absolute",height:2,width:10,borderRadius:1,backgroundColor:"currentColor"},"&::after":{transform:"rotate(45deg)"},"&::before":{transform:"rotate(-45deg)"}});function Yz(){const{label:r,value:e,onUpdate:t,disabled:n}=yi(),{popinRef:i,wrapperRef:s,shown:o,show:l,hide:u}=g3(),d=z.useCallback(S=>{S.length&&t(S[0])},[t]),p=z.useCallback(S=>{S.stopPropagation(),t(void 0)},[t]),{getRootProps:m,getInputProps:y,isDragAccept:v}=p3({maxFiles:1,accept:"image/*",onDrop:d,disabled:n});return re.createElement(Vs,{input:!0},re.createElement(Io,null,r),re.createElement(Vz,null,re.createElement(Xz,{ref:i,hasImage:!!e,onPointerDown:()=>!!e&&l(),onPointerUp:u,style:{backgroundImage:e?`url(${e})`:"none"}}),o&&!!e&&re.createElement(YM,null,re.createElement(z4,{onPointerUp:u,style:{cursor:"pointer"}}),re.createElement(Jz,{ref:s,style:{backgroundImage:`url(${e})`}})),re.createElement(Wz,m({isDragAccept:v}),re.createElement("input",y()),re.createElement($z,null,v?"drop image":"click or drop")),re.createElement(Kz,{onClick:p,disabled:!e})))}var qz=Zt({component:Yz},Gz);const jE=ts().number(),Qz=(r,e)=>ts().array().length(2).every.number().test(r)&&ts().schema({min:jE,max:jE}).test(e),Ty=r=>({min:r[0],max:r[1]}),x3=(r,{bounds:[e,t]},n)=>{const i=Array.isArray(r)?Ty(r):r,s={min:n[0],max:n[1]},{min:o,max:l}=Zt(Zt({},s),i);return[sc(Number(o),e,Math.max(e,l)),sc(Number(l),Math.min(t,o),t)]},Zz=({value:r,min:e,max:t})=>{const n={min:e,max:t},i=$4(Ty(r),{min:n,max:n}),s=[e,t],o=Zt(Zt({},i),{},{bounds:s});return{value:x3(Ty(r),o,r),settings:o}};var eH=Object.freeze({__proto__:null,schema:Qz,format:Ty,sanitize:x3,normalize:Zz});const tH=["value","bounds","onDrag"],nH=["bounds"],rH=Ft("div",{display:"grid",columnGap:"$colGap",gridTemplateColumns:"auto calc($sizes$numberInputMinWidth * 2 + $space$rowGap)"});function iH(r){let{value:e,bounds:[t,n],onDrag:i}=r,s=Un(r,tH);const o=z.useRef(null),l=z.useRef(null),u=z.useRef(null),d=z.useRef(0),p=Za("sizes","scrubberWidth"),m=_m(({event:S,first:E,xy:[A],movement:[M],memo:T={}})=>{if(E){const{width:P,left:k}=o.current.getBoundingClientRect();d.current=P-parseFloat(p);const O=(S==null?void 0:S.target)===l.current||(S==null?void 0:S.target)===u.current;T.pos=wy((A-k)/P,t,n);const N=Math.abs(T.pos-e.min)-Math.abs(T.pos-e.max);T.key=N<0||N===0&&T.pos<=e.min?"min":"max",O&&(T.pos=e[T.key])}const I=T.pos+wy(M/d.current,0,n-t);return i({[T.key]:nU(I,s[T.key])}),T}),y=`calc(${Sy(e.min,t,n)} * (100% - ${p} - 8px) + 4px)`,v=`calc(${1-Sy(e.max,t,n)} * (100% - ${p} - 8px) + 4px)`;return re.createElement(W4,Mr({ref:o},m()),re.createElement(V4,null,re.createElement(X4,{style:{left:y,right:v}})),re.createElement(Sx,{position:"left",ref:l,style:{left:y}}),re.createElement(Sx,{position:"right",ref:u,style:{right:v}}))}function sH(){const{label:r,displayValue:e,onUpdate:t,settings:n}=yi(),i=Un(n,nH);return re.createElement(re.Fragment,null,re.createElement(Vs,{input:!0},re.createElement(Io,null,r),re.createElement(rH,null,re.createElement(iH,Mr({value:e},n,{onDrag:t})),re.createElement(QM,{value:e,settings:i,onUpdate:t,innerLabelTrim:0}))))}var oH=Zt({component:sH},eH);const aH=()=>{const r=new Map;return{on:(e,t)=>{let n=r.get(e);n===void 0&&(n=new Set,r.set(e,n)),n.add(t)},off:(e,t)=>{const n=r.get(e);n!==void 0&&(n.delete(t),n.size===0&&r.delete(e))},emit:(e,...t)=>{const n=r.get(e);if(n!==void 0)for(const i of n)i(...t)}}},lH=["type","value"],cH=["onChange","transient","onEditStart","onEditEnd"],uH=function(){const e=nT(tz(()=>({data:{}}))),t=aH();this.storeId=mk(),this.useStore=e;const n={},i=new Set;this.getVisiblePaths=()=>{const o=this.getData(),l=Object.keys(o),u=[];Object.entries(n).forEach(([p,m])=>{m.render&&l.some(y=>y.indexOf(p)===0)&&!m.render(this.get)&&u.push(p+".")});const d=[];return i.forEach(p=>{p in o&&o[p].__refCount>0&&u.every(m=>p.indexOf(m)===-1)&&(!o[p].render||o[p].render(this.get))&&d.push(p)}),d},this.setOrderedPaths=o=>{o.forEach(l=>i.add(l))},this.orderPaths=o=>(this.setOrderedPaths(o),o),this.disposePaths=o=>{e.setState(l=>{const u=l.data;return o.forEach(d=>{if(d in u){const p=u[d];p.__refCount--,p.__refCount===0&&p.type in qo&&delete u[d]}}),{data:u}})},this.dispose=()=>{e.setState(()=>({data:{}}))},this.getFolderSettings=o=>n[o]||{},this.getData=()=>e.getState().data,this.addData=(o,l)=>{e.setState(u=>{const d=u.data;
3967return Object.entries(o).forEach(([p,m])=>{let y=d[p];if(y){const{type:v,value:S}=m,E=Un(m,lH);v!==y.type?Ja(qn.INPUT_TYPE_OVERRIDE,v):((y.__refCount===0||l)&&Object.assign(y,E),y.__refCount++)}else d[p]=Zt(Zt({},m),{},{__refCount:1})}),{data:d}})},this.setValueAtPath=(o,l,u)=>{e.setState(d=>{const p=d.data;return nE(p[o],l,o,this,u),{data:p}})},this.setSettingsAtPath=(o,l)=>{e.setState(u=>{const d=u.data;return d[o].settings=Zt(Zt({},d[o].settings),l),{data:d}})},this.disableInputAtPath=(o,l)=>{e.setState(u=>{const d=u.data;return d[o].disabled=l,{data:d}})},this.set=(o,l)=>{e.setState(u=>{const d=u.data;return Object.entries(o).forEach(([p,m])=>{try{nE(d[p],m,void 0,void 0,l)}catch{}}),{data:d}})},this.getInput=o=>{try{return this.getData()[o]}catch{Ja(qn.PATH_DOESNT_EXIST,o)}},this.get=o=>{var l;return(l=this.getInput(o))===null||l===void 0?void 0:l.value},this.emitOnEditStart=o=>{t.emit(`onEditStart:${o}`,this.get(o),o,Zt(Zt({},this.getInput(o)),{},{get:this.get}))},this.emitOnEditEnd=o=>{t.emit(`onEditEnd:${o}`,this.get(o),o,Zt(Zt({},this.getInput(o)),{},{get:this.get}))},this.subscribeToEditStart=(o,l)=>{const u=`onEditStart:${o}`;return t.on(u,l),()=>t.off(u,l)},this.subscribeToEditEnd=(o,l)=>{const u=`onEditEnd:${o}`;return t.on(u,l),()=>t.off(u,l)};const s=(o,l,u)=>{const d={};return Object.entries(o).forEach(([p,m])=>{if(p==="")return Ja(qn.EMPTY_KEY);let y=sS(l,p);if(m.type===qo.FOLDER){const v=s(m.schema,y,u);Object.assign(d,v),y in n||(n[y]=m.settings)}else if(p in u)Ja(qn.DUPLICATE_KEYS,p,y,u[p].path);else{const v=Sk(m,p,y,d);if(v){const{type:S,options:E,input:A}=v,{onChange:M,transient:T,onEditStart:I,onEditEnd:P}=E,k=Un(E,cH);d[y]=Zt(Zt(Zt({type:S},k),A),{},{fromPanel:!0}),u[p]={path:y,onChange:M,transient:T,onEditStart:I,onEditEnd:P}}else Ja(qn.UNKNOWN_INPUT,y,m)}}),d};this.getDataFromSchema=o=>{const l={};return[s(o,"",l),l]}};new uH;const zE=r=>"__levaInput"in r,hH=(r,e)=>{const t={},n=e?e.toLowerCase():null;return r.forEach(i=>{const[s,o]=gz(i);(!n||s.toLowerCase().indexOf(n)>-1)&&mz(t,o,{[s]:{__levaInput:!0,path:i}})}),t},dH=["type","label","path","valueKey","value","settings","setValue","disabled"];function fH(r){let{type:e,label:t,path:n,valueKey:i,value:s,settings:o,setValue:l,disabled:u}=r,d=Un(r,dH);const{displayValue:p,onChange:m,onUpdate:y}=H4({type:e,value:s,settings:o,setValue:l}),v=ku[e].component;return v?re.createElement(B4.Provider,{value:Zt({key:i,path:n,id:""+n,label:t,displayValue:p,value:s,onChange:m,onUpdate:y,settings:o,setValue:l,disabled:u},d)},re.createElement(jk,{disabled:u},re.createElement(v,null))):(Ja(qn.NO_COMPONENT_FOR_TYPE,e,n),null)}const pH=Ft("button",{display:"block",$reset:"",fontWeight:"$button",height:"$rowHeight",borderStyle:"none",borderRadius:"$sm",backgroundColor:"$elevation1",color:"$highlight1","&:not(:disabled)":{color:"$highlight3",backgroundColor:"$accent2",cursor:"pointer",$hover:"$accent3",$active:"$accent3 $accent1",$focus:""}});function mH({onClick:r,settings:e,label:t}){const n=vm();return re.createElement(Vs,null,re.createElement(pH,{disabled:e.disabled,onClick:()=>r(n.get)},t))}const gH=Ft("div",{$flex:"",justifyContent:"flex-end",gap:"$colGap"}),yH=Ft("button",{$reset:"",cursor:"pointer",borderRadius:"$xs","&:hover":{backgroundColor:"$elevation3"}}),vH=({label:r,opts:e})=>{let t=typeof r=="string"&&r.trim()===""?null:r,n=e;
3967return typeof e.opts=="object"&&(n.label!==void 0&&(t=e.label),n=e.opts),{label:t,opts:n}};function _H(r){const{label:e,opts:t}=vH(r),n=vm();return re.createElement(Vs,{input:!!e},e&&re.createElement(Io,null,e),re.createElement(gH,null,Object.entries(t).map(([i,s])=>re.createElement(yH,{key:i,onClick:()=>s(n.get)},i))))}const xH=Ft("canvas",{height:"$monitorHeight",width:"100%",display:"block",borderRadius:"$sm"}),M3=100;function MH(r,e){r.push(e),r.length>M3&&r.shift()}const SH=z.forwardRef(function({initialValue:r},e){const t=Za("colors","highlight3"),n=Za("colors","elevation2"),i=Za("colors","highlight1"),[s,o]=z.useMemo(()=>[Bi(i).alpha(.4).toRgbString(),Bi(i).alpha(.1).toRgbString()],[i]),l=z.useRef([r]),u=z.useRef(r),d=z.useRef(r),p=z.useRef(),m=z.useCallback((S,E)=>{if(!S)return;const{width:A,height:M}=S,T=new Path2D,I=A/M3,P=M*.05;for(let N=0;N<l.current.length;N++){const H=Sy(l.current[N],u.current,d.current),F=I*N,L=M-H*(M-P*2)-P;T.lineTo(F,L)}E.clearRect(0,0,A,M);const k=new Path2D(T);k.lineTo(I*(l.current.length+1),M),k.lineTo(0,M),k.lineTo(0,0);const O=E.createLinearGradient(0,0,0,M);O.addColorStop(0,s),O.addColorStop(1,o),E.fillStyle=O,E.fill(k),E.strokeStyle=n,E.lineJoin="round",E.lineWidth=14,E.stroke(T),E.strokeStyle=t,E.lineWidth=2,E.stroke(T)},[t,n,s,o]),[y,v]=Kk(m);return z.useImperativeHandle(e,()=>({frame:S=>{(u.current===void 0||S<u.current)&&(u.current=S),(d.current===void 0||S>d.current)&&(d.current=S),MH(l.current,S),p.current=requestAnimationFrame(()=>m(y.current,v.current))}}),[y,v,m]),z.useEffect(()=>()=>cancelAnimationFrame(p.current),[]),re.createElement(xH,{ref:y})}),HE=r=>Number.isFinite(r)?r.toPrecision(2):r.toString(),wH=z.forwardRef(function({initialValue:r},e){const[t,n]=z.useState(HE(r));return z.useImperativeHandle(e,()=>({frame:i=>n(HE(i))}),[]),re.createElement("div",null,t)});function GE(r){return typeof r=="function"?r():r.current}function AH({label:r,objectOrFn:e,settings:t}){const n=z.useRef(),i=z.useRef(GE(e));return z.useEffect(()=>{const s=window.setInterval(()=>{var o;document.hidden||(o=n.current)===null||o===void 0||o.frame(GE(e))},t.interval);return()=>window.clearInterval(s)},[e,t.interval]),re.createElement(Vs,{input:!0},re.createElement(Io,{align:"top"},r),t.graph?re.createElement(SH,{ref:n,initialValue:i.current}):re.createElement(wH,{ref:n,initialValue:i.current}))}const EH=["type","label","key"],bH={[qo.BUTTON]:mH,[qo.BUTTON_GROUP]:_H,[qo.MONITOR]:AH},CH=re.memo(({path:r})=>{const[e,{set:t,setSettings:n,disable:i,storeId:s,emitOnEditStart:o,emitOnEditEnd:l}]=qk(r);if(!e)return null;const{type:u,label:d,key:p}=e,m=Un(e,EH);if(u in qo){const y=bH[u];return re.createElement(y,Mr({label:d,path:r},m))}return u in ku?re.createElement(fH,Mr({key:s+r,type:u,label:d,storeId:s,path:r,valueKey:p,setValue:t,setSettings:n,disable:i,emitOnEditStart:o,emitOnEditEnd:l},m)):(ak(qn.UNSUPPORTED_INPUT,u,r),null)});function TH({toggle:r,toggled:e,name:t}){return re.createElement(Fk,{onClick:()=>r()},re.createElement(qM,{toggled:e}),re.createElement("div",null,t))}const IH=({name:r,path:e,tree:t})=>{const n=vm(),i=sS(e,r),{collapsed:s,color:o}=n.getFolderSettings(i),[l,u]=z.useState(!s),d=z.useRef(null),p=Za("colors","folderWidgetColor"),m=Za("colors","folderTextColor");return z.useLayoutEffect(()=>{d.current.style.setProperty("--leva-colors-folderWidgetColor",o||p),d.current.style.setProperty("--leva-colors-folderTextColor",o||m)},[o,p,m]),re.createElement(Ay,{ref:d},re.createElement(TH,{name:r,toggled:l,toggle:()=>u(y=>!y)}),re.createElement(S3,{parent:i,tree:t,toggled:l}))},S3=re.memo(({isRoot:r=!1,fill:e=!1,flat:t=!1,parent:n,tree:i,toggled:s})=>{const{wrapperRef:o,contentRef:l}=yz(s),u=vm(),d=([m,y])=>{var v;return(zE(y)?(v=u.getInput(y.path))===null||v===void 0?void 0:v.order:u.getFolderSettings(sS(n,m)).order)||0},p=Object.entries(i).sort((m,y)=>d(m)-d(y));return re.createElement(xx,{ref:o,isRoot:r,fill:e,flat:t},re.createElement(k4,{ref:l,isRoot:r,toggled:s},p.map(([m,y])=>zE(y)?re.createElement(CH,{key:y.path,valueKey:y.valueKey,path:y.path}):re.createElement(IH,{key:m,name:m,path:n,tree:y}))))}),PH=Ft("div",{position:"relative",fontFamily:"$mono",fontSize:"$root",color:"$rootText",backgroundColor:"$elevation1",variants:{fill:{false:{position:"fixed",top:"10px",right:"10px",zIndex:1e3,width:"$rootWidth"},true:{position:"relative",width:"100%"}},flat:{false:{borderRadius:"$lg",boxShadow:"$level1"}},oneLineLabels:{true:{[`${j4}`]:{gridTemplateColumns:"auto",gridAutoColumns:"minmax(max-content, 1fr)",gridAutoRows:"minmax($sizes$rowHeight), auto)",rowGap:0,columnGap:0,marginTop:"$rowGap"}}},hideTitleBar:{true:{$$titleBarHeight:"0px"},false:{$$titleBarHeight:"$sizes$titleBarHeight"}}},"&,*,*:after,*:before":{boxSizing:"border-box"},"*::selection":{backgroundColor:"$accent2"}}),w3=40,Iy=Ft("i",{$flexCenter:"",width:w3,userSelect:"none",cursor:"pointer","> svg":{fill:"$highlight1",transition:"transform 350ms ease, fill 250ms ease"},"&:hover > svg":{fill:"$highlight3"},variants:{active:{true:{"> svg":{fill:"$highlight2"}}}}}),RH=Ft("div",{display:"flex",alignItems:"stretch",justifyContent:"space-between",height:"$titleBarHeight",variants:{mode:{drag:{cursor:"grab"}}}}),BH=Ft("div",{$flex:"",position:"relative",width:"100%",overflow:"hidden",transition:"height 250ms ease",color:"$highlight3",paddingLeft:"$md",[`> ${Iy}
3967`]:{height:30},variants:{toggled:{true:{height:30},false:{height:0}}}}),OH=Ft("input",{$reset:"",flex:1,position:"relative",height:30,width:"100%",backgroundColor:"transparent",fontSize:"10px",borderRadius:"$root","&:focus":{},"&::placeholder":{color:"$highlight2"}}),DH=Ft("div",{touchAction:"none",$flexCenter:"",flex:1,"> svg":{fill:"$highlight1"},color:"$highlight1",variants:{drag:{true:{$draggable:"","> svg":{transition:"fill 250ms ease"},"&:hover":{color:"$highlight3"},"&:hover > svg":{fill:"$highlight3"}}},filterEnabled:{false:{paddingRight:w3}}}}),LH=re.forwardRef(({setFilter:r,toggle:e},t)=>{const[n,i]=z.useState(""),s=z.useMemo(()=>b4(r,250),[r]),o=()=>{r(""),i("")},l=u=>{const d=u.currentTarget.value;e(!0),i(d)};return z.useEffect(()=>{s(n)},[n,s]),re.createElement(re.Fragment,null,re.createElement(OH,{ref:t,value:n,placeholder:"[Open filter with CMD+SHIFT+L]",onPointerDown:u=>u.stopPropagation(),onChange:l}),re.createElement(Iy,{onClick:()=>o(),style:{visibility:n?"visible":"hidden"}},re.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",height:"14",width:"14",viewBox:"0 0 20 20",fill:"currentColor"},re.createElement("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z",clipRule:"evenodd"}))))});function NH({setFilter:r,onDrag:e,onDragStart:t,onDragEnd:n,toggle:i,toggled:s,title:o,drag:l,filterEnabled:u,from:d}){const[p,m]=z.useState(!1),y=z.useRef(null);z.useEffect(()=>{var S,E;p?(S=y.current)===null||S===void 0||S.focus():(E=y.current)===null||E===void 0||E.blur()},[p]);const v=_m(({offset:[S,E],first:A,last:M})=>{e({x:S,y:E}),A&&t({x:S,y:E}),M&&n({x:S,y:E})},{filterTaps:!0,from:({offset:[S,E]})=>[(d==null?void 0:d.x)||S,(d==null?void 0:d.y)||E]});return z.useEffect(()=>{const S=E=>{E.key==="L"&&E.shiftKey&&E.metaKey&&m(A=>!A)};return window.addEventListener("keydown",S),()=>window.removeEventListener("keydown",S)},[]),re.createElement(re.Fragment,null,re.createElement(RH,{mode:l?"drag":void 0},re.createElement(Iy,{active:!s,onClick:()=>i()},re.createElement(qM,{toggled:s,width:12,height:8})),re.createElement(DH,Mr({},l?v():{},{drag:l,filterEnabled:u}),o===void 0&&l?re.createElement("svg",{width:"20",height:"10",viewBox:"0 0 28 14",xmlns:"http://www.w3.org/2000/svg"},re.createElement("circle",{cx:"2",cy:"2",r:"2"}),re.createElement("circle",{cx:"14",cy:"2",r:"2"}),re.createElement("circle",{cx:"26",cy:"2",r:"2"}),re.createElement("circle",{cx:"2",cy:"12",r:"2"}),re.createElement("circle",{cx:"14",cy:"12",r:"2"}),re.createElement("circle",{cx:"26",cy:"12",r:"2"})):o),u&&re.createElement(Iy,{active:p,onClick:()=>m(S=>!S)},re.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",height:"20",viewBox:"0 0 20 20"},re.createElement("path",{d:"M9 9a2 2 0 114 0 2 2 0 01-4 0z"}),re.createElement("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm1-13a4 4 0 00-3.446 6.032l-2.261 2.26a1 1 0 101.414 1.415l2.261-2.261A4 4 0 1011 5z",clipRule:"evenodd"})))),re.createElement(BH,{toggled:p},re.createElement(LH,{ref:y,setFilter:r,toggle:i})))}re.memo(({store:r,rootClass:e,fill:t=!1,flat:n=!1,neverHide:i=!1,oneLineLabels:s=!1,titleBar:o={title:void 0,drag:!0,filter:!0,position:void 0,onDrag:void 0,onDragStart:void 0,onDragEnd:void 0},hideCopyButton:l=!1,toggled:u,setToggle:d})=>{var p,m;const y=vz(r),[v,S]=z.useState(""),E=z.useMemo(()=>hH(y,v),[y,v]),[A,M]=G4(),T=i||y.length>0,I=typeof o=="object"&&o.title||void 0,P=typeof o=="object"&&(p=o.drag)!==null&&p!==void 0?p:!0,k=typeof o=="object"&&(m=o.filter)!==null&&m!==void 0?m:!0,O=typeof o=="object"&&o.position||void 0,N=typeof o=="object"&&o.onDrag||void 0,H=typeof o=="object"&&o.onDragStart||void 0,F=typeof o=="object"&&o.onDragEnd||void 0;return re.useEffect(()=>{M({x:O==null?void 0:O.x,y:O==null?void 0:O.y})},[O,M]),Rk(),re.createElement(L4.Provider,{value:{hideCopyButton:l}},re.createElement(PH,{ref:A,className:e,fill:t,flat:n,oneLineLabels:s,hideTitleBar:!o,style:{display:T?"block":"none"}},o&&re.createElement(NH,{onDrag:L=>{M(L),N==null||N(L)},onDragStart:L=>H==null?void 0:H(L),onDragEnd:L=>F==null?void 0:F(L),setFilter:S,toggle:L=>d(V=>
3967L??!V),toggled:u,title:I,drag:P,filterEnabled:k,from:O}),T&&re.createElement(D4.Provider,{value:r},re.createElement(S3,{isRoot:!0,fill:t,flat:n,tree:E,toggled:u}))))});ol(Eo.SELECT,pU);ol(Eo.IMAGE,qz);ol(Eo.NUMBER,iU);ol(Eo.COLOR,Iz);ol(Eo.STRING,wU);ol(Eo.BOOLEAN,PU);ol(Eo.INTERVAL,oH);ol(Eo.VECTOR3D,Rz);ol(Eo.VECTOR2D,Uz);const FH=r=>{const{nodes:e,materials:t}=Vu("/models/isro_chandrayyan-3_mission_lander_module_vikram.glb"),n=z.useRef();return OM(({clock:i})=>{n.current&&(n.current.rotation.y+=.01,n.current.position.x=Math.sin(i.getElapsedTime())*10,n.current.position.z=-1,n.current.position.y=1+Math.sin(i.getElapsedTime()*2)*.5)}),_.jsxs("group",{ref:n,...r,dispose:null,children:[_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:e.VikramDoor_Vikram_0.geometry,material:t.Vikram,position:[0,1.574,-1.083]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:e.VikramNose001_Vikram_0.geometry,material:t.Vikram,position:[0,.674,-.825]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:e.VikramSocket_Vikram_0.geometry,material:t.Vikram,position:[0,.654,0]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:e["Vikram������������_������������_Vikram_0"].geometry,material:t.Vikram,position:[0,1.095,-.824]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:e["VikramBody������������������������_Vikram_0"].geometry,material:t.Vikram}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:e.VikramOriNose_Vikram_0.geometry,material:t.Vikram}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:e.VikramNose002_Vikram_0.geometry,material:t.Vikram,position:[-.8,.674,0]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:e.VikramNose003_Vikram_0.geometry,material:t.Vikram,position:[0,.674,.8]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:e.VikramNose004_Vikram_0.geometry,material:t.Vikram,position:[.8,.674,0]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:e.VikramDoorFastener_Vikram_0.geometry,material:t.Vikram}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:e.VikramLegJoint_Vikram_0.geometry,material:t.Vikram,position:[0,-.014,0]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:e.VikramSolarPanelLeft_Vikram_0.geometry,material:t.Vikram,position:[.876,1.698,-.158],rotation:[0,0,.296]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:e.VikramSolarPanelRight_Vikram_0.geometry,material:t.Vikram,position:[-.889,1.612,-.302],rotation:[0,0,-.295]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:e.VikramSolarPanelBack_Vikram_0.geometry,material:t.Vikram,position:[-.003,1.711,1.04]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:e.VikramBodyCoreFoil_Vikram_0.geometry,material:t.Vikram,position:[0,2.168,0]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:e.VikramBodyPartStarSensor_Vikram_0.geometry,material:t.Vikram,position:[.547,2.151,-1.107],rotation:[.333,.314,0]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:e.VikramBodyPartLHVC_Vikram_0.geometry,material:t.Vikram,position:[.393,2.128,1.435],rotation:[Math.PI/2,0,Math.PI]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:e.VikramBodyPart004_Vikram_0.geometry,material:t.Vikram,position:[0,2.405,0]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:e.VikramBodyPartLDV_Vikram_0.geometry,material:t.Vikram,position:[.804,2.116,.804],rotation:[-.495,-.148,-1.311]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:e.VikramBodyPartLASA_Vikram_0.geometry,material:t.Vikram,position:[1.008,1.313,.786],rotation:[-1.122,-.317,-1.452]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:e.VikramBodyPartKaRA_Vikram_0.geometry,material:t.Vikram,position:[.637,1.302,1.026]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:e.VikramBodyPartReactionWheels_Vikram_0.geometry,material:t.Vikram,position:[-.34,2.437,.377],rotation:[Math.PI,1.34,-M
3967ath.PI]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:e.VikramBodyLRA_Vikram_0.geometry,material:t.Vikram,position:[.145,2.942,-.704]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:e.VikramSolarPanelRightHolder_Vikram_0.geometry,material:t.Vikram,position:[-.831,1.673,-1.311],rotation:[-Math.PI/2,-1.268,0]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:e.VikramBodyPayload_Vikram_0.geometry,material:t.Vikram,position:[-.269,1.9,1.029],rotation:[.778,0,0]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:e.VikramBodyPartLHDAC_Vikram_0.geometry,material:t.Vikram,position:[-.884,1.314,1.075],rotation:[-Math.PI/2,0,-Math.PI]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:e.VikramFootPad001_Vikram_0.geometry,material:t.Vikram}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:e.VikramFootPad002_Vikram_0.geometry,material:t.Vikram,rotation:[0,Math.PI/2,0]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:e.VikramFootPad003_Vikram_0.geometry,material:t.Vikram,rotation:[-Math.PI,0,-Math.PI]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:e.VikramFootPad004_Vikram_0.geometry,material:t.Vikram,rotation:[0,-Math.PI/2,0]})]})};Vu.preload("/models/isro_chandrayyan-3_mission_lander_module_vikram.glb");var vg={},VE;function kH(){if(VE)return vg;VE=1,vg.match=s,vg.parse=o;var r=/(?:(only|not)?\s*([^\s\(\)]+)(?:\s*and)?\s*)?(.+)?/i,e=/\(\s*([^\s\:\)]+)\s*(?:\:\s*([^\s\)]+))?\s*\)/,t=/^(?:(min|max)-)?(.+)/,n=/(em|rem|px|cm|mm|in|pt|pc)?$/,i=/(dpi|dpcm|dppx)?$/;function s(p,m){return o(p).some(function(y){var v=y.inverse,S=y.type==="all"||m.type===y.type;if(S&&v||!(S||v))return!1;var E=y.expressions.every(function(A){var M=A.feature,T=A.modifier,I=A.value,P=m[M];if(!P)return!1;switch(M){case"orientation":case"scan":return P.toLowerCase()===I.toLowerCase();case"width":case"height":case"device-width":case"device-height":I=d(I),P=d(P);break;case"resolution":I=u(I),P=u(P);break;case"aspect-ratio":case"device-aspect-ratio":case"device-pixel-ratio":I=l(I),P=l(P);break;case"grid":case"color":case"color-index":case"monochrome":I=parseInt(I,10)||1,P=parseInt(P,10)||0;break}switch(T){case"min":return P>=I;case"max":return P<=I;default:return P===I}});return E&&!v||!E&&v})}function o(p){return p.split(",").map(function(m){m=m.trim();var y=m.match(r),v=y[1],S=y[2],E=y[3]||"",A={};return A.inverse=!!v&&v.toLowerCase()==="not",A.type=S?S.toLowerCase():"all",E=E.match(/\([^\)]+\)/g)||[],A.expressions=E.map(function(M){var T=M.match(e),I=T[1].toLowerCase().match(t);return{modifier:I[1],feature:I[2],value:T[2]}}),A})}function l(p){var m=Number(p),y;return m||(y=p.match(/^(\d+)\s*\/\s*(\d+)$/),m=y[1]/y[2]),m}function u(p){var m=parseFloat(p),y=String(p).match(i)[1];switch(y){case"dpcm":return m/2.54;case"dppx":return m*96;default:return m}}function d(p){var m=parseFloat(p),y=String(p).match(n)[1];switch(y){case"em":return m*16;case"rem":return m*16;case"cm":return m*96/2.54;case"mm":return m*96/2.54/10;case"in":return m*96;case"pt":return m*72;case"pc":return m*72/12;default:return m}}return vg}var j_,WE;function UH(){if(WE)return j_;WE=1;var r=kH().match,e=typeof window<"u"?window.matchMedia:null;function t(i,s,o){var l=this,u;e&&!o&&(u=e.call(window,i)),u?(this.matches=u.matches,this.media=u.media,u.addListener(m)):(this.matches=r(i,s),this.media=i),this.addListener=d,this.removeListener=p,this.dispose=y;function d(v){u&&u.addListener(v)}function p(v){u&&u.removeListener(v)}function m(v){l.matches=v.matches,l.media=v.media}function y(){u&&u.removeListener(m)}}function n(i,s,o){return new t(i,s,o)}return j_=n,j_}var jH=UH();const zH=oc(jH);var HH=/[A-Z]/g,GH=/^ms-/,z_={};function VH(r){return"-"+r.toLowerCase()}function A3(r){if(z_.hasOwnProperty(r))return z_[r];var e=r.replace(HH,VH);return z_[r]=GH.test(e)?"-"+e:e}function WH(r,e){if(r===e)return!0;if(!r||!e)return!1;const t=Object.keys(r),n=Object.keys(e),i=t.length;if(n.length!==i)return!1;for(let s=0;s<i;s++){const o=t[s];if(r[o]!==e[o]||!Object.prototype.hasOwnProperty.call(e,o))return!1}return!0}const Ri=It.oneOfType([It.string,It.number]),oS={all:It.bool,grid:It.bool,aural:It.bool,braille:It.bool,handheld:It.bool,print:It.bool,projection:It.bool,screen:It.bool,tty:It.bool,tv:It.bool,embossed:It.bool},E3={orientation:It.oneOf(["portrait","landscape"]),scan:It.oneOf(["progressive","interlace"]),aspectRatio:It.string,deviceAspectRatio:It.string,height:Ri,deviceHeight:Ri,width:Ri,deviceWidth:Ri,color:It.bool,colorIndex:It.bool,monochrome:It.bool,resolution:Ri,type:Object.keys(oS)},{type:GV,...XH}=E3,b3={minAspectRatio:It.string,maxAspectRatio:It.string,minDeviceAspectRatio:It.string,maxDeviceAspectRatio:It.string,minHeight:Ri,maxHeight:Ri,minDeviceHeight:Ri,maxDeviceHeight:Ri,minWidth:Ri,maxWidth:Ri,minDeviceWidth:Ri,maxDeviceWidth:Ri,minColor:It.number,maxColor:It.number,minColorIndex:It.number,maxColorIndex:It.number,minMonochrome:It.number,maxMonochrome:It.number,minResolution:Ri,maxResolution:Ri,...XH},JH={...oS,...b3};var $H={all:JH,types:oS,matchers:E3,features:b3};const KH=r=>`not ${r}`,YH=(r,e)=>{const t=A3(r);return typeof e=="number"&&(e=`${e}px`),e===!0?t:e===!1?KH(t):`(${t}: ${e})`},qH=r=>r.join(" and "),QH=r=>{const e=[];return Object.keys($H.all).forEach(t=>{const n=r[t];n!=null&&e.push(YH(t,n))}),qH(e)},ZH=z.createContext(void 0),eG=r=>r.query||QH(r),XE=r=>r?Object.keys(r).reduce((t,n)=>(t[A3(n)]=r[n],t),{}):void 0,C3=()=>{const r=z.useRef(!1);return z.useEffect(()=>{r.current=!0},[]),r.current},tG=r=>{const e=z.useContext(ZH),t=()=>XE(r)||XE(e),[n,i]=z.useState(t);return z.useEffect(()=>{const s=t();WH(n,s)||i(s)},[r,e]),n},nG=r=>{const e=()=>eG(r),[t,n]=z.useState(e);return z.useEffect(()=>{const i=e();t!==i&&n(i)},[r]),t},rG=(r,e)=>{const t=()=>zH(r,e||{},!!e),[n,i]=z.useState(t),s=C3();return z.useEffect(()=>{if(s){const o=t();return i(o),()=>{o&&o.dispose()}}},[r,e]),n},iG=r=>{const[e,t]=z.useState(r.matches);return z.useEffect(()=>{const n=i=>{t(i.matches)};
3967return r.addListener(n),t(r.matches),()=>{r.removeListener(n)}},[r]),e},Py=(r,e,t)=>{const n=tG(e),i=nG(r);if(!i)throw new Error("Invalid or missing MediaQuery!");const s=rG(i,n),o=iG(s),l=C3();return z.useEffect(()=>{l&&t&&t(o)},[o]),z.useEffect(()=>()=>{s&&s.dispose()},[]),o},sG=r=>{const e=Py({query:"(max-width: 1024px)"}),t=Py({query:"(max-width: 768px)"}),{nodes:n,materials:i}=Vu("/models/pc.glb"),s=z.useRef(),[o,l]=z.useState({x:1.5,y:0}),{size:u,viewport:d}=Id(),p=m=>{const y=t?m.clientX/u.width+1:m.clientX/u.width,v=t||e?m.clientX/u.width-1:m.clientX/u.width-1.5;l({x:y,y:v})};return OM(()=>{s.current&&(s.current.rotation.y=o.x*-1,s.current.rotation.x=o.y*-.5)}),_.jsx("group",{ref:s,...r,dispose:null,onPointerMove:p,children:_.jsxs("group",{scale:.01,children:[_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n["Object_782_OnTheFly-bg_0"].geometry,material:i["Material.074_40"],position:[101.601,40.622,244.007],rotation:[-Math.PI/2,.078,Math.PI/2],scale:21.893}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_788_Material057_0.geometry,material:i["Material.074_33"],position:[159.018,47.32,359.936],rotation:[-Math.PI/2,0,Math.PI],scale:19.608}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_798_Material057_0.geometry,material:i["Material.074_33"],position:[122.701,53.533,358.456],rotation:[-Math.PI/2,.163,-Math.PI],scale:19.608}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_800_Material005_0.geometry,material:i["Material.074_32"],position:[190.986,44.577,567.479],rotation:[-Math.PI/2,-.089,-Math.PI],scale:8.872}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_802_Material005_0.geometry,material:i["Material.074_32"],position:[190.868,44.628,565.255],rotation:[-Math.PI/2,-.089,-Math.PI],scale:8.872}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_804_Material005_0.geometry,material:i["Material.074_32"],position:[192.49,44.419,565.412],rotation:[-Math.PI/2,-.089,-Math.PI],scale:8.872}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_806_Material005_0.geometry,material:i["Material.074_32"],position:[192.403,44.401,567.472],rotation:[-Math.PI/2,-.089,-Math.PI],scale:8.872}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_810_Material005_0.geometry,material:i["Material.074_32"],position:[141.038,50.582,552.01],rotation:[-Math.PI/2,0,Math.PI/2],scale:5.713}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_812_Material068_0.geometry,material:i["Material.074_37"],position:[141.038,50.582,532.026],rotation:[-Math.PI/2,0,Math.PI/2],scale:5.713}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_814_Material068_0.geometry,material:i["Material.074_37"],position:[141.038,50.582,514.784],rotation:[-Math.PI/2,0,Math.PI/2],scale:5.713}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_816_Material068_0.geometry,material:i["Material.074_37"],position:[141.038,50.582,498.138],rotation:[-Math.PI/2,0,Math.PI/2],scale:5.713}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_818_Material066_0.geometry,material:i["Material.074_35"],position:[141.038,50.582,480.752],rotation:[-Math.PI/2,0,Math.PI/2],scale:5.713}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_820_Material066_0.geometry,material:i["Material.074_35"],position:[141.038,50.582,463.616],rotation:[-Math.PI/2,0,Math.PI/2],scale:5.713}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_822_Material066_0.geometry,material:i["Material.074_35"],position:[141.038,50.582,443.746],rotation:[-Math.PI/2,0,Math.PI/2],scale:5.713}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_824_Material066_0.geometry,material:i["Material.074_35"],position:[141.649,50.885,427.978],rotation:[-Math.PI/2,0,Math.PI/2],scale:6.158}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_826_Material060_0.geometry,material:i["Material.074_34"],position:[142.095,50.955,409.216],rotation:[-Math.PI/2,0,Math.PI/2],scale:6.158}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_828_Material005_0.geometry,material:i["Material.074_32"],position:[158.03,48.549,561.971],rotation:[-Math.PI/2,0,Math.PI/2],scale:6.414}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_830_Material069_0.geometry,material:i["Material.074_38"],position:[158.03,48.437,543.875],rotation:[-Math.PI/2,0,Math.PI/2],scale:6.414}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_832_Material068_0.geometry,material:i["Material.074_37"],position:[158.03,48.437,528.227],rotation:[-Math.PI/2,0,Math.PI/2],scale:6.414}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_834_Material068_0.geometry,material:i["Material.074_37"],position:[158.03,48.437,509.564],rotation:[-Math.PI/2,0,Math.PI/2],scale:6.414}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_836_Material068_0.geometry,material:i["Material.074_37"],position:[158.03,48.353,494.3
396705],rotation:[-Math.PI/2,0,Math.PI/2],scale:6.414}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_838_Material070_0.geometry,material:i["Material.074_39"],position:[156.657,48.636,594.003],rotation:[-1.588,0,Math.PI/2],scale:2.692}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_840_Material070_0.geometry,material:i["Material.074_39"],position:[192.644,45.65,594.798],rotation:[-Math.PI/2,-.12,Math.PI/2],scale:3.123}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_842_Material066_0.geometry,material:i["Material.074_35"],position:[158.03,48.437,475.976],rotation:[-Math.PI/2,0,Math.PI/2],scale:6.414}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_844_Material066_0.geometry,material:i["Material.074_35"],position:[157.211,48.437,455.625],rotation:[-Math.PI/2,0,Math.PI/2],scale:[6.414,5.272,6.414]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_846_Material066_0.geometry,material:i["Material.074_35"],position:[158.03,48.437,441.26],rotation:[-Math.PI/2,0,Math.PI/2],scale:6.414}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_848_Material060_0.geometry,material:i["Material.074_34"],position:[159.027,48.639,422.071],rotation:[-Math.PI/2,0,Math.PI/2],scale:6.915}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_850_Material070_0.geometry,material:i["Material.074_39"],position:[122.029,53.887,594.924],rotation:[-Math.PI/2,.164,Math.PI/2],scale:4.981}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_852_Material066_0.geometry,material:i["Material.074_35"],position:[175.487,47.269,483.907],rotation:[-Math.PI/2,-.099,Math.PI/2],scale:6.414}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_854_Material068_0.geometry,material:i["Material.074_37"],position:[175.487,47.269,501.887],rotation:[-Math.PI/2,-.099,Math.PI/2],scale:6.414}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_856_Material068_0.geometry,material:i["Material.074_37"],position:[175.487,47.269,519.095],rotation:[-Math.PI/2,-.099,Math.PI/2],scale:6.414}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_858_Material069_0.geometry,material:i["Material.074_38"],position:[175.487,47.269,537.014],rotation:[-Math.PI/2,-.099,Math.PI/2],scale:6.414}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_860_Material005_0.geometry,material:i["Material.074_32"],position:[175.487,47.166,554.659],rotation:[-Math.PI/2,-.099,Math.PI/2],scale:6.414}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_862_Material066_0.geometry,material:i["Material.074_35"],position:[175.487,47.269,467.983],rotation:[-Math.PI/2,-.099,Math.PI/2],scale:6.414}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_864_Material066_0.geometry,material:i["Material.074_35"],position:[175.487,47.269,450.283],rotation:[-Math.PI/2,-.099,Math.PI/2],scale:6.414}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_866_Material070_0.geometry,material:i["Material.074_39"],position:[122.444,53.931,578.061],rotation:[-Math.PI/2,.164,Math.PI/2],scale:4.326}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_868_Material005_0.geometry,material:i["Material.074_32"],position:[122.058,53.851,561.226],rotation:[-Math.PI/2,.164,Math.PI/2],scale:3.17}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_870_Material005_0.geometry,material:i["Material.074_32"],position:[127.008,53.029,560.64],rotation:[-Math.PI/2,.164,Math.PI/2],scale:4.326}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_872_Material057_0.geometry,material:i["Material.074_33"],position:[192.644,45.65,359.946],rotation:[-Math.PI/2,-.12,Math.PI/2],scale:3.123}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_874_Material057_0.geometry,material:i["Material.074_33"],position:[156.285,46.937,363.379],rotation:[-Math.PI/2,0,Math.PI/2],scale:4.006}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_876_Material069_0.geometry,material:i["Material.074_38"],position:[122.484,53.905,543.373],rotation:[-Math.PI/2,.164,Math.PI/2],scale:3.822}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_878_Material069_0.geometry,material:i["Material.074_38"],position:[127.434,53.083,543.258],rotation:[-Math.PI/2,.164,Math.PI/2],scale:4.326}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_880_Material068_0.geometry,material:i["Material.074_37"],position:[122.484,53.745,525.768],rotation:[-Math.PI/2,.164,Math.PI/2],scale:3.822}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_882_Material068_0.geometry,material:i["Material.074_37"],position:[127.434,52.923,525.651],rotation:[-Math.PI/2,.164,Math.PI/2],scale:4.326}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_884_Material070_0.geometry,material:i["Material.074_39"],position:[101.739,56.424,595.272],rotation:[-Math.PI/2,.141,Math.PI/2],scale:4.184}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_886_Material068_0.geometry,material:i["Material.074_37"],position:[122.484,53.852,509.285],rotation:[-Math.PI/2,.164,Math.PI/2],scale:3.822}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_888_Material068_0.geometry,material:i["Material.074_37"],position:[127.434,53.031,508.772],rotation:[-Math.PI/2,.164,Math.PI/2],scale:4.326}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_890_Material066_0.geometry,material:i["Material.074_35"],position:[101.367,56.132,484.341],rotation:[-Math.PI/2,.151,Math.PI/2],scale:4.532}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_892_Material068_0.geometry,material:i["Material.074_37"],position:[101.205,56.942,513.09],rotation:[-Math.PI/2,.105,Math.PI/2],scale:4.451}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_894_Material069_0.geometry,material:i["Material.074_38"],position:[101.205,56.942,530.455],rotation:[-Math.PI/2,.105,Math.PI/2],scale:4.451}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_896_Material005_0.geometry,material:i["Material.074_32"],position:[101.205,56.942,548.203],rotation:[-Math.PI/2,.105,Math.PI/2],scale:4.451}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_898_Material005_0.geometry,material:i["Material.074_32"],position:[101.205,56.942,565.178],rotation:[-Math.PI/2,.105,Math.PI/2],scale:4.451}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_900_Material066_0.geometry,material:i["Material.074_35"],position:[101.367,56.154,466.894],rotation:[-Math.PI/2,.151,Math.PI/2],scale:4.532}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_902_Material066_0.geometry,material:i["Material.074_35"],position:[101.367,56.154,449.367],rotation:[-Math.PI/2,.151,Math.PI/2],scale:4.532}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_904_Material066_0.geometry,material:i["Material.074_35"],position:[101.367,56.154,431.949],rotation:[-Math.PI/2,.151,Math.PI/2],scale:4.532}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_906_Material060_0.geometry,material:i["Material.074_34"],position:[101.473,56.121,402.973],rotation:[-Math.PI/2,.161,Math.PI/2],scale:4.501}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_908_Material057_0.geometry,material:i["Material.074_33"],position:[101.352,56.184,386.481],rotation:[-Math.PI/2,.196,Math.PI/2],scale:4.189}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_910_Material057_0.geometry,material:i["Material.074_33"],position:[101.352,56.184,368.472],rotation:[-Math.PI/2,.196,Math.PI/2],scale:4.189}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_912_Material057_0.geometry,material:i["Material.074_33"],position:[101.352,56.184,351.349],rotation:[-Math.PI/2,.196,Math.PI/2],scale:4.189}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_914_Material068_0.geometry,material:i["Material.074_37"],position:[122.484,53.852,491.651],rotation:[-Math.PI/2,.164,Math.PI/2],scale:3.822}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_916_Material068_0.geometry,material:i["Material.074_37"],position:[127.434,53.03,491.824],rotation:[-Math.PI/2,.164,Math.PI/2],scale:4.326}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_918_Material066_0.geometry,material:i["Material.074_35"],position:[122.484,53.821,473.664],rotation:[-Math.PI/2,.164,Math.PI/2],scale:3.822}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_920_Material066_0.geometry,material:i["Material.074_35"],position:[127.434,52.999,473.405],rotation:[-Math.PI/2,.164,Math.PI/2],scale:4.326}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_922_Material066_0.geometry,material:i["Material.074_35"],position:[122.484,53.851,456.473],rotation:[-Math.PI/2,.164,Math.PI/2],scale:3.822}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_924_Material066_0.geometry,material:i["Material.074_35"],position:[127.434,53.03,456.746],rotation:[-Math.PI/2,.164,Math.PI/2],scale:4.326}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_926_Material066_0.geometry,material:i["Material.074_35"],position:[121.673,54.096,439.122],rotation:[-Math.PI/2,.164,Math.PI/2],scale:[3.822,3.142,3.822]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_928_Material060_0.geometry,material:i["Material.074_34"],position:[120.313,54.212,419.687],rotation:[-Math.PI/2,.164,-Math.PI/2],scale:[3.822,3.142,3.822]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_930_Material066_0.geometry,material:i["Material.074_35"],position:[127.434,53.034,439.361],rotation:[-Math.PI/2,.164,Math.PI/2],scale:4.326}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_932_Material060_0.geometry,material:i["Material.074_34"],position:[127.434,53.03,421.591],rotation:[-Math.PI/2,.164,Math.PI/2],scale:4.326}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_934_Tasten_2_0.geometry,material:i.Tasten_2,position:[186.135,46.575,219.396],rotation:[-Math.PI/2,0,Math.PI/2],scale:4.006}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_936_Material070_0.geometry,material:i["Material.074_39"],position:[173.52,46.999,585.524],rotation:[-1.64,0,-.001],scale:[6.197,8.42,6.209]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_938_Material060_0.geometry,material:i["Material.074_34"],position:[175.034,47.036,400.009],rotation:[-1.571,-.079,1.57],scale:[6.672,4.931,2.742]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_940_Material060_0.geometry,material:i["Material.074_34"],position:[175.034,47.036,434.853],rotation:[-1.571,-.079,1.57],scale:[4.24,4.931,2.742]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_942_Material070_0.geometry,material:i["Material.074_39"],position:[176.052,46.788,584.43],rotation:[-Math.PI/2,-.069,Math.PI/2],scale:[1.861,6.968,6.968]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_944_Material060_0.geometry,material:i["Material.074_34"],position:[175.034,47.036,417.325],rotation:[-1.571,-.079,1.57],scale:[4.24,4.931,2.742]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_946_Tasten_2_0.geometry,material:i.Tasten_2,position:[126.21,53.665,253.133],rotation:[-Math.PI/2,0,Math.PI/2],scale:5.449}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_948_Material067_0.geometry,material:i["Material.074_36"],position:[122.219,53.893,271.172],rotation:[-Math.PI/2,.214,Math.PI/2],scale:2.7}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_950_Material067_0.geometry,material:i["Material.074_36"],position:[192.324,45.452,259.967],rotation:[-Math.PI/2,-.069,Math.PI/2],scale:4.419}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_952_Material067_0.geometry,material:i["Material.074_36"],position:[197.023,45.614,260.99],rotation:[-Math.PI/2,-.069,Math.PI/2],scale:3.792}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_954_Material072_0.geometry,material:i["Material.025"],position:[184.777,33.32,601.234],rotation:[-Math.PI/2,.09,-Math.PI],scale:[5.012,3.876,5.
3967012]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_956_Material072_0.geometry,material:i["Material.025"],position:[164.62,35.132,204.967],rotation:[-Math.PI/2,.089,0],scale:3.129}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_958_Material066_0.geometry,material:i["Material.074_35"],position:[189.418,46.757,488.892],rotation:[-Math.PI/2,-.07,Math.PI/2],scale:[4.951,15.565,11.588]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_960_Material067_0.geometry,material:i["Material.074_36"],position:[140.393,50.323,267.745],rotation:[-Math.PI/2,.077,Math.PI/2],scale:4.079}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_962_Material067_0.geometry,material:i["Material.074_36"],position:[145.186,50.323,270.034],rotation:[-Math.PI/2,.077,Math.PI/2],scale:2.491}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_964_Tasten_2_0.geometry,material:i.Tasten_2,position:[145.186,50.323,234.871],rotation:[-Math.PI/2,.077,Math.PI/2],scale:2.491}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_966_Material060_0.geometry,material:i["Material.074_34"],position:[157.086,48.546,408.618],rotation:[-1.571,-.079,1.57],scale:[6.672,4.931,2.742]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_968_Material060_0.geometry,material:i["Material.074_34"],position:[158.955,48.546,391.27],rotation:[-1.571,-.043,1.57],scale:[6.672,4.931,2.742]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_970_Tasten_2_0.geometry,material:i.Tasten_2,position:[140.393,50.369,250.493],rotation:[-Math.PI/2,.077,Math.PI/2],scale:4.079}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_972_Material057_0.geometry,material:i["Material.074_33"],position:[158.805,47.353,358.081],rotation:[-Math.PI/2,0,Math.PI/2],scale:[3.749,1.659,5.449]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_974_Material057_0.geometry,material:i["Material.074_33"],position:[158.529,47.353,360.205],rotation:[-Math.PI/2,0,Math.PI/2],scale:5.449}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_976_Material070_0.geometry,material:i["Material.074_39"],position:[138.806,50.51,591.899],rotation:[-Math.PI/2,0,Math.PI/2],scale:5.568}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_978_Tasten_2_0.geometry,material:i.Tasten_2,position:[140.393,50.369,233.01],rotation:[-Math.PI/2,.077,Math.PI/2],scale:4.079}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_980_Tasten_2_0.geometry,material:i.Tasten_2,position:[143.95,50.122,251.216],rotation:[-1.494,0,0],scale:[2.491,4.577,2.508]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_982_Material057_0.geometry,material:i["Material.074_33"],position:[100.211,56.325,328.505],rotation:[-Math.PI/2,.163,Math.PI/2],scale:2.522}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_984_Material057_0.geometry,material:i["Material.074_33"],position:[100.211,56.325,310.762],rotation:[-Math.PI/2,.163,Math.PI/2],scale:2.522}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_986_Material057_0.geometry,material:i["Material.074_33"],position:[100.211,56.325,293.444],rotation:[-Math.PI/2,.163,Math.PI/2],scale:2.522}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_988_Material067_0.geometry,material:i["Material.074_36"],position:[158.196,48.546,268.318],rotation:[-1.571,-.043,1.57],scale:[5.119,4.444,2.472]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_990_Material067_0.geometry,material:i["Material.074_36"],position:[162.312,48.546,268.012],rotation:[-1.571,-.043,1.57],scale:[3.213,4.444,2.472]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_992_Tasten_2_0.geometry,material:i.Tasten_2,position:[158.196,48.546,250.902],rotation:[-1.571,-.043,1.57],scale:[5.119,4.444,2.472]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_994_Tasten_2_0.geometry,material:i.Tasten_2,position:[158.196,48.546,233.224],rotation:[-1.571,-.043,1.57],scale:[5.119,4.444,2.472]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_996_Tasten_2_0.geometry,material:i.Tasten_2,position:[162.312,48.546,232.693],rotation:[-1.571,-.043,1.57],scale:[3.213,4.444,2.472]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_998_Tasten_2_0.geometry,material:i.Tasten_2,position:[191.769,45.452,235.883],rotation:[-Math.PI/2,-.069,Math.PI/2],scale:3.252}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_1000_Material070_0.geometry,material:i["Material.074_39"],position:[139.974,50.54,592.705],rotation:[-Math.PI/2,0,Math.PI/2],scale:2.459}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_1002_Material070_0.geometry,material:i["Material.074_39"],position:[141.683,50.51,585.651],rotation:[-Math.PI/2,0,-Math.PI/2],scale:5.568}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_1004_Material070_0.geometry,material:i["Material.074_39"],position:[140.515,50.54,584.845],rotation:[-Math.PI/2,0,-Math.PI/2],scale:2.459}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_1006_Material057_0.geometry,material:i["Material.074_33"],position:[192.324,45.452,402.259],rotation:[-Math.PI/2,-.069,Math.PI/2],scale:2.698}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_1008_Material057_0.geometry,material:i["Material.074_33"],position:[192.324,45.452,377.975],rotation:[-Math.PI/2,-.069,Math.PI/2],scale:2.698}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_1010_Material060_0.geometry,material:i["Material.074_34"],position:[192.115,45.452,422.374],rotation:[-Math.PI/2,-.069,Math.PI/2],scale:2.698}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_1012_Material070_0.geometry,material:i["Material.074_39"],position:[176.052,46.788,581.642],rotation:[-Math.PI/2,-.069,Math.PI/2],scale:[1.861,6.968,6.968]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_1014_Material070_0.geometry,material:i["Material.074_39"],position:[178.056,46.788,584.43],rotation:[-1.502,0,-Math.PI],scale:[2.693,9.468,6.982]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_1016_Material070_0.geometry,material:i["Material.074_39"],position:[178.056,46.788,582.626],rotation:[-1.502,0,-Math.PI],scale:[2.693,9.468,6.982]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_1018_Material070_0.geometry,material:i["Material.074_39"],position:[177.223,46.788,583.339],rotation:[-Math.PI/2,-.069,Math.PI/2],scale:[3.572,6.968,6.968]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_1020_Material057_0.geometry,material:i["Material.074_33"],position:[173.52,47.036,367.415],rotation:[-1.564,0,-.001],scale:[6.197,11.143,6.197]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_1022_Material057_0.geometry,material:i["Material.074_33"],position:[176.257,47.093,365.528],rotation:[-Math.PI/2,-.069,Math.PI/2],scale:[2.188,6.197,6.197]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_1024_Material057_0.geometry,material:i["Material.074_33"],position:[176.257,47.093,362.25],rotation:[-Math.PI/2,-.069,Math.PI/2],scale:[2.188,6.197,6.197]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_1026_Material057_0.geometry,material:i["Material.074_33"],position:[178.04,47.093,365.528],rotation:[-1.502,0,-Math.PI],scale:[2.395,11.125,6.229]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_1028_Material057_0.geometry,material:i["Material.074_33"],position:[178.04,47.093,363.407],rotation:[-1.502,0,-Math.PI],scale:[2.395,11.125,6.229]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_1030_Material057_0.geometry,material:i["Material.074_33"],position:[177.299,47.093,364.245],rotation:[-Math.PI/2,-.069,Math.PI/2],scale:[4.2,6.197,6.197]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_1032_Material057_0.geometry,material:i["Material.074_33"],position:[122.224,53.645,358.725],rotation:[-Math.PI/2,.163,Math.PI/2],scale:5.449}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_1034_Material057_0.geometry,material:i["Material.074_33"],position:[122.224,53.782,328.505],rotation:[-Math.PI/2,.163,Math.PI/2],scale:2.522}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_1036_Material057_0.geometry,material:i["Material.074_33"],position:[122.224,53.782,311.134],rotation:[-Math.PI/2,.163,Math.PI/2],scale:2.522}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_1038_Material057_0.geometry,material:i["Material.074_33"],position:[122.224,53.782,292.768],rotation:[-Math.PI/2,.163,Math.PI/2],scale:2.522}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_1040_Tasten_2_0.geometry,material:i.Tasten_2,position:[152.112,49.615,217.775],rotation:[-Math.PI/2,0,Math.PI/2],scale:5.449}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_1042_Tasten_2_0.geometry,material:i.Tasten_2,position:[123.41,53.509,217.775],rotation:[-Math.PI/2,0,Math.PI/2],scale:5.449}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_1044_Material057_0.geometry,material:i["Material.074_33"],position:[140.393,50.558,328.6],rotation:[-Math.PI/2,.163,Math.PI/2],scale:2.522}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_1046_Material057_0.geometry,material:i["Material.074_33"],position:[140.393,50.558,310.089],rotation:[-Math.PI/2,.163,Math.PI/2],scale:2.522}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_1048_Material057_0.geometry,material:i["Material.074_33"],position:[140.393,50.558,293.029],rotation:[-Math.PI/2,.163,Math.PI/2],scale:2.522}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_1050_Tasten_2_0.geometry,material:i.Tasten_2,position:[126.59,53.665,235.644],rotation:[-Math.PI/2,0,Math.PI/2],scale:5.449}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_1052_Material057_0.geometry,material:i["Material.074_33"],position:[138.832,50.656,360.842],rotation:[-Math.PI/2,.163,Math.PI/2],scale:2.99}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_1054_Material057_0.geometry,material:i["Material.074_33"],position:[138.832,50.519,377.705],rotation:[-Math.PI/2,.043,Math.PI/2],scale:2.99}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_1056_Material073_0.geometry,material:i["Material.073"],position:[138.832,50.625,395.771],rotation:[-Math.PI/2,.043,Math.PI/2],scale:2.99}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_1058_Material057_0.geometry,material:i["Material.074_33"],position:[122.224,53.899,387.246],rotation:[-Math.PI/2,.163,Math.PI/2],scale:4.683}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_1060_Material060_0.geometry,material:i["Material.074_34"],position:[118.88,54.414,404.726],rotation:[-Math.PI/2,.163,Math.PI/2],scale:4.683}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_1062_Tasten_2_0.geometry,material:i.Tasten_2,position:[178.586,47.223,251.216],rotation:[-1.494,-.039,.003],scale:[2.491,4.577,2.508]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_1064_Tasten_2_0.geometry,material:i.Tasten_2,position:[175.034,47.036,250.749],rotation:[-1.571,-.079,1.57],scale:[4.723,4.038,2.74]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_1066_Material067_0.geometry,material:i["Material.074_36"],position:[175.034,47.036,267.898],rotation:[-1.571,-.079,1.57],scale:[4.723,4.038,2.74]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_1068_Material067_0.geometry,material:i["Material.074_36"],position:[180.145,47.436,269.122],rotation:[-1.571,-.079,1.57],scale:[3.03,2.591,1.758]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_1070_Tasten_2_0.geometry,material:i.Tasten_2,position:[175.034,47.036,233.446],rotation:[-1.571,-.079,1.57],scale:[4.723,4.038,2.74]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_1072_Tasten_2_0.geometry,material:i.Tasten_2,position:[180.145,47.583,235.555],rotation:[-1.571,-.079,1.57],scale:[3.03,2.591,1.758]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_1074_Material069_0.geometry,material:i["Material.074_38"],position:[192.115,45.452,545.462],rotation:[-Math.PI/2,-.069,Math.PI/2],scale:2.698}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_808_Material005_0.geometry,material:i["Material.074_32"],position:[140.844,50.582,568.87],rotation:[-Math.PI/2,0,Math.PI/2],scale:6.414}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.aorus_case_fans_aorus_case_fans_0.geometry,material:i["Material.074_0"],position:[89.589,288.681,-355.423],rotation:[0,1.571,0],scale:108.517}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.aorus_case_fans001_aorus_case_fans_0.geometry,material:i["Material.074_0"],position:[69.018,288.681,-355.423],rotation:[0,-1.571,0],scale:108.517}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.aorus_case_fans002_aorus_case_fans_0.geometry,material:i["Material.074_0"],position:[89.589,178.114,-355.423],rotation:[0,1.571,0],scale:108.517}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.aorus_case_fans003_aorus_case_fans_0.geometry,material:i["Material.074_0"],position:[69.018,178.114,-355.423],rotation:[0,-1.571,0],scale:108.517}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.aorus_case_fans004_aorus_case_fans_0.geometry,material:i["Material.074_0"],position:[-241.083,292.602,-334.76],rotation:[0,1.571,0],scale:108.517}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.aorus_case_fans005_aorus_case_fans_0.geometry,material:i["Material.074_0"],position:[-261.653,292.602,-334.76],rotation:[0,-1.571,0],scale:108.517}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.aorus_case_fans006_aorus_case_fans_0.geometry,material:i["Material.074_0"],position:[-171.287,333.894,-355.289],rotation:[Math.PI/2,0,-Math.PI/2],scale:110.314}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.aorus_case_fans007_aorus_case_fans_0.geometry,material:i["Material.074_0"],position:[-171.287,354.805,-355.289],rotation:[Math.PI/2,0,-Math.PI/2],scale:110.314}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.aorus_case_fans008_aorus_case_fans_0.geometry,material:i["Material.074_0"],position:[-44.291,333.894,-355.289],rotation:[Math.PI/2,0,-Math.PI/2],scale:110.314}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.aorus_case_fans009_aorus_case_fans_0.geometry,material:i["Material.074_0"],position:[-44.291,354.805,-355.289],rotation:[Math.PI/2,0,-Math.PI/2],scale:110.314}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.aorus_logotrans
3967pa_aorus_logotranspa_0.geometry,material:i["Material.074_24"],position:[-182.428,181.699,-315.847],scale:[8.646,8.646,9.09]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.BezierCircle_Material104_0.geometry,material:i["Material.104"],position:[87.654,308.188,-282.266],rotation:[-Math.PI/2,Math.PI/2,0],scale:5.703}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.BezierCurve_Material088_0.geometry,material:i["Material.088"],position:[73.034,238.196,-437.388],rotation:[Math.PI,0,Math.PI/2],scale:100}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.BezierCurve001_Material085_0.geometry,material:i["Material.085"],position:[-57.663,118.32,-315.595],rotation:[Math.PI/2,-1.234,0],scale:100}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.BezierCurve002_Material087_0.geometry,material:i["Material.087"],position:[-31.438,183.785,-440.156],rotation:[Math.PI/2,-1.234,0],scale:100}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.BezierCurve003_Material091_0.geometry,material:i["Material.025"],position:[-158.898,127.661,299.394],rotation:[2.464,-Math.PI/2,0],scale:100}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.BezierCurve004_Material099_0.geometry,material:i["Material.025"],position:[-33.393,29.826,-26.834],rotation:[-Math.PI/2,0,0],scale:100}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.BezierCurve005_Material103_0.geometry,material:i["Material.025"],position:[83.413,25.966,360.696],rotation:[-Math.PI/2,0,Math.PI/2],scale:100}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.BezierCurve006_Material106_0.geometry,material:i["Material.025"],position:[-275.73,25.966,569.745],rotation:[-Math.PI/2,0,Math.PI/2],scale:100}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.BezierCurve007_Material105_0.geometry,material:i["Material.025"],position:[-271.339,25.966,569.745],rotation:[-Math.PI/2,0,Math.PI/2],scale:100}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.BezierCurve008_Material107_0.geometry,material:i["Material.025"],position:[-280.431,25.966,28.498],rotation:[Math.PI/2,0,Math.PI/2],scale:100}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.bg2_bg2_0.geometry,material:i["Material.074_29"],position:[-153.705,194.917,83.027],rotation:[1.572,-1.442,1.567],scale:113.034}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n["Color-PewDiePie-Logo_Color-PewDiePie-Logo_0"].geometry,material:i["Material.074_27"],position:[129.541,46.552,-27.476],rotation:[-Math.PI/2,.284,Math.PI/2],scale:12.411}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube_Material_0.geometry,material:i["Material.001"],position:[-61.024,-.556,156.09],rotation:[Math.PI/2,0,-Math.PI],scale:[-368.949,-731.636,-25.976]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube001_Material055_0.geometry,material:i["Material.055"],position:[-138.594,295.654,300.405],rotation:[-Math.PI/2,-.07,Math.PI/2],scale:[325.342,4.051,184.091]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube002_Material044_0.geometry,material:i["Material.044"],position:[-146.706,263.678,300.405],rotation:[Math.PI/2,.122,-Math.PI/2],scale:[-325.342,-14.747,-152.853]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube003_Material001_0.geometry,material:i["Material.025"],position:[-157.131,447.652,300.405],rotation:[-Math.PI/2,-.07,Math.PI/2],scale:[325.342,4.051,31.034]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube004_Material002_0.geometry,material:i["Material.002"],position:[-148.741,180.97,299.246],rotation:[-Math.PI/2,-.07,Math.PI/2],scale:[167.599,17.793,193.498]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube005_Material003_0.geometry,material:i["Material.003"],position:[-186.532,291.564,297.425],rotation:[-Math.PI/2,0,Math.PI/2],scale:[16.32,28.812,12.936]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube006_Material043_0.geometry,material:i["Material.043"],position:[-202.956,-64.822,300.405],rotation:[-Math.PI/2,-.07,Math.PI/2],scale:[40.588,16.64,531.608]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube007_Material037_0.geometry,material:i["Material.037"],position:[-213.018,35.333,296.055],rotation:[Math.PI/2,0,-Math.PI/2],scale:[-193.85,-54.116,-9.321]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube008_Material036_0.geometry,material:i["Material.039"],position:[-80.199,31.648,453.149],rotation:[-Math.PI/2,0,1.249],scale:[49.07,108.779,5.648]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube009_Material039_0.geometry,material:i["Material.039"],position:[-80.199,31.648,163.795],rotation:[-Math.PI/2,0,1.861],scale:[49.07,108.779,5.648]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube010_Material006_0.geometry,material:i["Material.006"],position:[-181.146,31.637,295.796],rotation:[-Math.PI/2,0,3.136],scale:[43.412,96.236,4.997]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube011_Material010_0.geometry,material:i["Material.074"],position:[-85.935,199.7,-353.72],rotation:[-Math.PI/2,0,0],scale:[173.489,89.971,157.347]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube012_Material011_0.geometry,material:i["Material.074"],position:[-85.935,199.7,-353.72],rotation:[-Math.PI/2,0,0],scale:[173.489,89.971,157.347]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube013_Material015_0.geometry,material:i["Material.074"],position:[82.766,33.228,-353.609],rotation:[Math.PI/2,.237,Math.PI],scale:[-5.986,-88.363,-12.138]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube014_Material014_0.geometry,material:i["Material.074"],position:[-253.445,33.228,-353.609],rotation:[Math.PI/2,-.136,-Math.PI],scale:[-5.979,-88.363,-12.152]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube015_Material016_0.geometry,material:i["Material.074_1"],position:[-165.45,224.123,-440.84],rotation:[Math.PI/2,0,-Math.PI],scale:[-89.374,-.699,-106.434]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube016_Material017_0.geometry,material:i["Material.017"],position:[79.294,177.861,-355.562],rotation:[-Math.PI/2,Math.PI/2,0],scale:[50.674,50.674,10]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube017_Material017_0.geometry,material:i["Material.017"],position:[-251.377,292.349,-334.899],rotation:[-Math.PI/2,Math.PI/2,0],scale:[50.674,50.674,10]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube018_Material017_0.geometry,material:i["Material.017"],position:[79.294,288.428,-355.562],rotation:[-Math.PI/2,Math.PI/2,0],scale:[50.674,50.674,10]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube019_Material017_0.geometry,material:i["Material.017"],position:[-171.544,344.359,-355.43],rotation:[Math.PI/2,0,-Math.PI],scale:[51.513,51.513,10.165]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube020_Material020_0.geometry,material:i["Material.074_2"],position:[-96.107,78.826,-363.398],rotation:[-Math.PI/2,0,0],scale:[160.681,73.933,34.312]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube021_Material018_0.geometry,material:i["Material.074"],position:[-108.064,346.353,
3967-354.981],rotation:[-Math.PI/2,0,0],scale:[7.187,57.542,10.785]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube022_Material017_0.geometry,material:i["Material.017"],position:[-44.548,344.359,-355.43],rotation:[Math.PI/2,0,-Math.PI],scale:[51.513,51.513,10.165]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube023_Material021_0.geometry,material:i["Material.074"],position:[93.781,228.59,-355.282],rotation:[Math.PI/2,0,-Math.PI],scale:[-11.991,-59.265,-117.81]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube024_Material022_0.geometry,material:i["Material.074"],position:[-265.096,291.702,-335.09],rotation:[-Math.PI/2,0,0],scale:[6.378,55.458,55.458]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube025_Material023_0.geometry,material:i["Material.023"],position:[-165.45,224.123,-440.84],rotation:[Math.PI/2,0,-Math.PI],scale:[-89.374,-.699,-106.434]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube026_Material024_0.geometry,material:i["Material.024"],position:[-165.45,224.123,-440.84],rotation:[Math.PI/2,0,-Math.PI],scale:[-89.374,-.699,-106.434]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube027_Material008_0.geometry,material:i["Material.074_6"],position:[-96.406,270.963,-430.927],rotation:[Math.PI/2,0,0],scale:[-1.513,-10.916,-44.29]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube028_Material026_0.geometry,material:i["Material.074_7"],position:[-95.71,270.963,-432.409],rotation:[Math.PI/2,0,0],scale:[-1.051,-9.735,-44.411]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube029_Material025_0.geometry,material:i["Material.025"],position:[-96.387,270.963,-432.409],rotation:[Math.PI/2,0,0],scale:[-.25,-9.339,-46.663]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube030_Material026_0.geometry,material:i["Material.074_7"],position:[-96.996,270.963,-451.701],rotation:[Math.PI/2,0,Math.PI],scale:[-1.051,-9.735,-44.411]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube031_Material008_0.geometry,material:i["Material.074_6"],position:[-103.687,270.963,-430.927],rotation:[Math.PI/2,0,0],scale:[-1.513,-10.916,-44.29]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube032_Material026_0.geometry,material:i["Material.074_7"],position:[-102.99,270.963,-432.409],rotation:[Math.PI/2,0,0],scale:[-1.051,-9.735,-44.411]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube033_Material025_0.geometry,material:i["Material.025"],position:[-103.667,270.963,-432.409],rotation:[Math.PI/2,0,0],scale:[-.25,-9.339,-46.663]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube034_Material026_0.geometry,material:i["Material.074_7"],position:[-104.276,270.963,-451.701],rotation:[Math.PI/2,0,Math.PI],scale:[-1.051,-9.735,-44.411]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube035_Material008_0.geometry,material:i["Material.074_6"],position:[-110.551,270.963,-430.927],rotation:[Math.PI/2,0,0],scale:[-1.513,-10.916,-44.29]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube036_Material026_0.geometry,material:i["Material.074_7"],position:[-109.854,270.963,-432.409],rotation:[Math.PI/2,0,0],scale:[-1.051,-9.735,-44.411]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube037_Material025_0.geometry,material:i["Material.025"],position:[-110.532,270.963,-432.409],rotation:[Math.PI/2,0,0],scale:[-.25,-9.339,-46.663]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube038_Material026_0.geometry,material:i["Material.074_7"],position:[-111.14,270.963,-451.701],rotation:[Math.PI/2,0,Math.PI],scale:[-1.051,-9.735,-44.411]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube039_Material008_0.geometry,material:i["Material.074_6"],position:[-117.502,270.963,-430.927],rotation:[Math.PI/2,0,0],scale:[-1.513,-10.916,-44.29]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube040_Material026_0.geometry,material:i["Material.074_7"],position:[-116.805,270.963,-432.409],rotation:[Math.PI/2,0,0],scale:[-1.051,-9.735,-44.411]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube041_Material025_0.geometry,material:i["Material.025"],position:[-117.483,270.963,-432.409],rotation:[Math.PI/2,0,0],scale:[-.25,-9.339,-46.663]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube042_Material026_0.geometry,material:i["Material.074_7"],position:[-118.091,270.963,-451.701],rotation:[Math.PI/2,0,Math.PI],scale:[-1.051,-9.735,-44.411]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube043_Material012_0.geometry,material:i["Material.025"],position:[-219.486,85.339,-71.149],rotation:[-Math.PI/2,0,0],scale:[49.177,29.278,59.658]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube044_Material012_0.geometry,material:i["Material.025"],position:[-219.486,85.339,671.433],rotation:[-Math.PI/2,0,0],scale:[49.177,29.278,59.658]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube045_Material027_0.geometry,material:i["Material.074_8"],position:[-212.14,79.399,-298.228],rotation:[-Math.PI/2,0,0],scale:[35.476,5.166,20.568]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube046_Material034_0.geometry,material:i["Material.034"],position:[-188.16,268.516,-368.194],rotation:[-Math.PI/2,0,0],scale:[9.278,42.446,42.446]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube047_Material033_0.geometry,material:i["Material.034"],position:[-134.664,268.516,-368.194],rotation:[-Math.PI/2,0,0],scale:[9.278,42.446,42.446]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube048_Material035_0.geometry,material:i["Material.074_15"],position:[-161.354,268.242,-368.171],rotation:[-Math.PI/2,0,0],scale:[17.436,39.405,40.075]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube049_Material040_0.geometry,material:i["Material.074_16"],position:[-161.354,268.242,-368.171],rotation:[-Math.PI/2,0,0],scale:[17.436,39.405,40.075]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube050_Material038_0.geometry,material:i["Material.074_16"],position:[-161.354,268.242,-368.171],rotation:[-Math.PI/2,0,0],scale:[17.436,39.405,40.075]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube051_Material042_0.geometry,material:i["Material.042"],position:[-161.354,268.242,-368.171],rotation:[-Math.PI/2,0,0],scale:[17.436,39.405,40.075]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube052_Material047_0.geometry,material:i["Material.025"],position:[83.515,83.276,-355.599],rotation:[-Math.PI/2,0,0],scale:[5.75,46.281,28.867]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube053_Material048_0.geometry,material:i["Material.048"],position:[-165.45,224.123,-440.84],rotation:[Math.PI/2,0,-Math.PI],scale:[-89.374,-.699,-106.434]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube054_Material049_0.geometry,material:i["Material.049"],position:[-165.45,224.123,-440.84],rotation:[Math.PI/2,0,-Math.PI],scale:[-89.374,-.699,-106.434]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube055_Material054_0.geometry,material:i["Material.054"],position:[-122.286,185.076,-370.559],rotation:[-Math.PI/2,0,0],scale:[133.163,54.534,13.174]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube056_Material061_0.geometry,material:i["Material.061"],position:[-127.222,200.081,-370.559],rotation:[-Math.PI/2,0,0],scale:[128.059,52.443,12.669]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube057_Material059_0.geometry,material:i["Material.074_22"],position:[-127.222,200.081,-370.559],rotation:[-Math.PI/2,0,0],scale:[128.059,52.443,12.669]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube058_Material063_0.geometry,material:i["Material.074_23"],position:[-122.591,213.709,-370.429],rotation:[-Math.PI/2,0,0],scale:[133.259,54.504,.809]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube059_Material058_0.geometry,material:i["Material.058"],position:[-127.222,200.081,-370.559],rotation:[-Math.PI/2,0,0],scale:[128.059,52.443,12.669]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube060_Material062_0.geometry,material:i["Material.062"],position:[-123.744,264.277,-316.795],scale:[133.257,53.22,.824]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube061_Material064_0.geometry,material:i["Material.025"],position:[-122.286,185.076,-370.559],rotation:[-Math.PI/2,0,0],scale:[133.163,54.534,13.174]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube062_Material065_0.geometry,material:i["Material.025"],position:[-165.45,224.123,-440.84],rotation:[Math.PI/2,0,-Math.PI],scale:[-89.374,-.699,-106.434]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube063_Material074_0.geometry,material:i["Material.074_25"],position:[111.413,32.495,-27.406],rotation:[-Math.PI/2,0,-Math.PI],scale:[-42.887,-42.887,-22.902]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube064_Material074_0.geometry,material:i["Material.074_25"],position:[111.413,32.447,-27.406],rotation:[-Math.PI/2,0,-Math.PI],scale:[-42.887,-42.887,-22.902]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube065_Material074_0.geometry,material:i["Material.074_25"],position:[111.413,32.495,-27.406],rotation:[-Math.PI/2,.011,-Math.PI],scale:[-42.887,-42.887,-22.902]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube066_Material076_0.geometry,material:i["Material.076"],position:[111.461,32.287,-27.292],rotation:[-Math.PI/2,.011,-Math.PI],scale:[-42.887,-42.887,-22.902]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube06
39677_Material075_0.geometry,material:i["Material.075"],position:[111.413,32.447,-27.406],rotation:[-Math.PI/2,0,-Math.PI],scale:[-42.887,-42.887,-22.902]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube068_Material092_0.geometry,material:i["Material.092"],position:[129.119,44.5,-27.607],rotation:[-Math.PI/2,.284,0],scale:[5.964,5.964,2.081]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube069_Material093_0.geometry,material:i["Material.025"],position:[111.413,32.447,-27.406],rotation:[-Math.PI/2,0,-Math.PI],scale:[-42.887,-44.821,-22.902]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube070_Material100_0.geometry,material:i["Material.025"],position:[-266.849,260.335,-432.751],rotation:[-Math.PI/2,0,0],scale:[7.668,2.324,5.236]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube071_Material101_0.geometry,material:i["Material.025"],position:[-266.849,260.335,-426.843],rotation:[-Math.PI/2,0,0],scale:[7.668,2.324,5.236]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube072_Material078_0.geometry,material:i["Material.025"],position:[111.413,32.447,-27.406],rotation:[-Math.PI/2,0,-Math.PI],scale:[-42.887,-42.887,-22.902]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube073_Material079_0.geometry,material:i["Material.074_6"],position:[111.413,32.447,-27.406],rotation:[-Math.PI/2,0,-Math.PI],scale:[-42.887,-42.887,-22.902]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube074_Material084_0.geometry,material:i["Material.025"],position:[-92.944,206.719,-314.862],rotation:[-Math.PI/2,0,0],scale:[5.642,5.4,4.234]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube075_Material086_0.geometry,material:i["Material.074_26"],position:[-258.007,195.512,-371.511],rotation:[-Math.PI/2,0,0],scale:[1.163,52.435,17.743]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube076_Material080_0.geometry,material:i["Material.074_25"],position:[65.926,34.461,-27.346],rotation:[-Math.PI/2,.234,Math.PI],scale:[-42.887,-42.887,-22.902]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube077_Material083_0.geometry,material:i["Material.025"],position:[-81.678,266.506,-437.411],rotation:[-Math.PI/2,0,0],scale:[2.849,4.872,17.377]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube078_Material083_0.geometry,material:i["Material.025"],position:[70.352,334.375,-437.411],rotation:[-Math.PI/2,0,0],scale:[2.849,4.872,12.046]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube079_Material089_0.geometry,material:i["Material.025"],position:[-269.84,182.61,-338.408],rotation:[-Math.PI/2,0,0],scale:[16.038,9.162,4.326]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube080_Material089_0.geometry,material:i["Material.025"],position:[-158.493,199.975,375.163],rotation:[-Math.PI/2,Math.PI/2,0],scale:[16.038,9.162,4.326]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube081_Material090_0.geometry,material:i["Material.090"],position:[93.215,47.658,-27.747],rotation:[-1.544,-.233,0],scale:[2.623,1.334,2.237]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube082_Material101_0.geometry,material:i["Material.025"],position:[-266.849,274.042,-426.641],rotation:[-Math.PI/2,0,0],scale:[7.668,2.324,5.236]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cube088_Material098_0.geometry,material:i["Material.098"],position:[98.958,38.352,-8.162],rotation:[-Math.PI/2,-.129,0],scale:[5.453,4.946,1.909]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cylinder_Material009_0.geometry,material:i["Material.025"],position:[74.209,51.218,-262.894],scale:[6.077,6.275,2.277]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cylinder001_Material028_0.geometry,material:i["Material.074_11"],position:[-169.225,114.406,-71.644],rotation:[-Math.PI/2,1.554,0],scale:[19.4,19.4,2.506]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cylinder002_Material029_0.geometry,material:i["Material.074_11"],position:[-166.369,70.647,-71.644],rotation:[-1.571,1.536,0],scale:[10.298,10.298,1.33]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cylinder003_Material031_0.geometry,material:i["Material.074_11"],position:[-169.225,114.406,670.937],rotation:[-Math.PI/2,1.554,0],scale:[19.4,19.4,2.506]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cylinder004_Material030_0.geometry,material:i["Material.074_11"],position:[-166.369,70.647,670.937],rotation:[-1.571,1.536,0],scale:[10.298,10.298,1.33]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cylinder005_Material041_0.geometry,material:i["Material.074_17"],position:[-161.139,268.658,-369.024],rotation:[-Math.PI/2,Math.PI/2,0],scale:[32.71,32.71,34.213]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cylinder006_Material050_0.geometry,material:i["Material.074_19"],position:[-209.451,184.616,-370.096],rotation:[-Math.PI/2,0,0],scale:[36.354,38.222,10.575]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cylinder007_Material051_0.geometry,material:i["Material.074_20"],position:[-124.439,184.616,-370.096],rotation:[-Math.PI/2,0,0],scale:[36.354,38.222,10.575]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cylinder008_Material052_0.geometry,material:i["Material.074_19"],position:[-37.777,184.616,-370.096],rotation:[-Math.PI/2,0,0],scale:[36.354,38.222,10.575]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cylinder009_Material081_0.geometry,material:i["Material.025"],position:[77.222,34.525,-28.482],rotation:[0,-.001,0],scale:[11.574,11.574,2.501]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cylinder010_Material077_0.geometry,material:i["Material.077"],position:[77.222,34.525,-27.858],rotation:[0,-.001,0],scale:[11.891,11.891,.393]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cylinder011_Material045_0.geometry,material:i["Material.045"],position:[-173.934,242.501,-421.74],rotation:[.474,0,Math.PI],scale:[2.055,2.055,16.973]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cylinder012_Material082_0.geometry,material:i["Material.082"],position:[77.223,34.525,-28.709],rotation:[0,-.001,0],scale:[10.438,10.438,2.868]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cylinder013_Material094_0.geometry,material:i["Material.094"],position:[83.027,308.225,-282.193],rotation:[-Math.PI/2,Math.PI/2,0],scale:[9.856,9.856,4.879]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cylinder014_Material095_0.geometry,material:i["Material.088"],position:[84.52,280.424,-282.193],rotation:[-Math.PI/2,Math.PI/2,0],scale:[6.544,6.544,3.239]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cylinder015_Material096_0.geometry,material:i["Material.088"],position:[84.52,254.307,-282.193],rotation:[-Math.PI/2,Math.PI/2,0],scale:[6.67,6.67,3.302]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Cylinder016_Material102_0.geometry,material:i["Material.025"],position:[-263.633,248.737,-421.76],rotation:[-Math.PI/2,Math.PI/2,0],scale:[3.07,3.07,5.454]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.gallerymodel_gallerymodel_0.geometry,material:i["Material.074_28"],position:[-142.04,164.813,596.08],rotation:[.441,-1.284,.441],scale:80.689}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.geforcertx_Material056_0.geometry,material:i["Material.056"],position:[-229.271,204.826,-315.957],scale:[10.377,10.377,10.91]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n["gigabyte-logo_gigabyte-logo_0"].geometry,material:i["Material.074_31"],position:[-161.543,449.447,82.082],rotation:[1.571,-1.501,1.571],scale:23.689}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n["gigabyte-logo001_gigabyte-logo_0"].geometry,material:i["Material.074_31"],position:[-122.059,122.824,301.598],rotation:[-Math.PI/2,1.501,Math.PI/2],scale:17.84}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.IOSHIELD_IOSHIELD_0.geometry,material:i["Material.074_3"],position:[-259.689,284.799,-422.491],rotation:[Math.PI/2,-Math.PI/2,0],scale:[26.475,30.855,31.832]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n["maxresdefault_(1)_maxresdefault_(1)_0"].geometry,material:i["Material.074_10"],position:[87.714,83.615,-355.312],rotation:[0,1.571,0],scale:39.411}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n["metal-mesh-500x500_metal-mesh-500x500_0"].geometry,material:i["Material.074_5"],position:[-42.312,356.984,-354.163],rotation:[Math.PI/2,0,Math.PI],scale:[100,133.704,100]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n["metal-mesh-500x500001_metal-mesh-500x500_0"].geometry,material:i["Material.074_5"],position:[-174.205,356.984,-354.163],rotation:[Math.PI/2,0,Math.PI/2],scale:[100,133.705,100]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n["metal-mesh-500x500002_metal-mesh-500x500_0"].geometry,material:i["Material.074_5"],position:[-270.9,291.514,-335.328],rotation:[0,-Math.PI/2,0],scale:[79.555,106.369,79.555]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n["metal-mesh-500x500003_metal-mesh-500x500_0"].geometry,material:i["Material.074_5"],position:[-257.977,182.039,-359.049],rotation:[0,-Math.PI/2,0],scale:[109.082,106.369,79.555]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n["metal-mesh-500x500004_metal-mesh-500x500_0"].geometry,material:i["Material.074_5"],position:[-257.977,220.723,-359.049],rotation:[0,-Math.PI/2,0],scale:[109.082,106.369,79.555]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.MOBOAORUSORANGETRANS_MOBOAORUSORANGETRANS_0.geometry,material:i["Material.074_4"],position:[-235.591,287.747,-423.919],rotation:[0,0,.651
3967],scale:6.343}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.MY_SCREEN_MY_SCREEN_0.geometry,material:i["Material.074_30"],position:[-136.177,300.132,300.405],rotation:[-Math.PI/2,1.501,Math.PI/2],scale:[331.621,348.065,331.621]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.NVIDIA_LOGO_NVIDIA_LOGO_0.geometry,material:i["Material.074_12"],position:[.586,70.428,-289.066],scale:45.189}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_10_Tastatur_Unterseite_0.geometry,material:i.Tastatur_Unterseite,position:[147.709,33.245,403.086],rotation:[-Math.PI,-1.571,0],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_101_Material067_0.geometry,material:i["Material.074_36"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_103_Material070_0.geometry,material:i["Material.074_39"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_105_Tasten_2_0.geometry,material:i.Tasten_2,position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_107_Material070_0.geometry,material:i["Material.074_39"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_109_Material069_0.geometry,material:i["Material.074_38"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_111_Material067_0.geometry,material:i["Material.074_36"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_113_Material068_0.geometry,material:i["Material.074_37"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_115_Material057_0.geometry,material:i["Material.074_33"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_117_Material068_0.geometry,material:i["Material.074_37"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_119_Material057_0.geometry,material:i["Material.074_33"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_12_Tastatur_Unterseite_0.geometry,material:i.Tastatur_Unterseite,position:[147.709,33.245,403.086],rotation:[-Math.PI,-1.571,0],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_121_Material066_0.geometry,material:i["Material.074_35"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_123_Material057_0.geometry,material:i["Material.074_33"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_125_Material066_0.geometry,material:i["Material.074_35"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_127_Material057_0.geometry,material:i["Material.074_33"],position:[147.709,32.601,400.77],rotation:[-Math.PI/2,-1.481,1.571],scale:[154.135,91.415,91.415]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_129_Material066_0.geometry,material:i["Material.074_35"],position:[147.709,32.601,385.792],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_131_Material060_0.geometry,material:i["Material.074_34"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_133_Material060_0.geometry,material:i["Material.074_34"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_135_Material060_0.geometry,material:i["Material.074_34"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_137_Material005_0.geometry,material:i["Material.074_32"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_139_Material005_0.geometry,material:i["Material.074_32"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_14_Material004_0.geometry,material:i["Material.004"],position:[147.709,33.245,403.086],rotation:[-Math.PI,-1.571,0],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_141_Material069_0.geometry,material:i["Material.074_38"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_143_Material068_0.geometry,material:i["Material.074_37"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_145_Material066_0.geometry,material:i["Material.074_35"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_147_Material066_0.geometry,material:i["Material.074_35"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_149_Material005_0.geometry,material:i["Material.074_32"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_151_Material068_0.geometry,material:i["Material.074_37"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_153_Material066_0.geometry,material:i["Material.074_35"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_155_Material068_0.geometry,material:i["Material.074_37"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_157_Material066_0.geometry,material:i["Material.074_35"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_159_Material066_0.geometry,material:i["Material.074_35"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_16_Material004_0.geometry,material:i["Material.004"],position:[147.709,33.245,403.086],rotation:[-Math.PI,-1.571,0],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_161_Material066_0.geometry,material:i["Material.074_35"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_163_Material066_0.geometry,material:i["Material.074_35"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_165_Material066_0.geometry,material:i["Material.074_35"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_167_Material060_0.geometry,material:i["Material.074_34"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_169_Material060_0.geometry,material:i["Material.074_34"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_171_Material005_0.geometry,material:i["Material.074_32"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_173_Material057_0.geometry,material:i["Material.074_33"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_175_Material069_0.geometry,material:i["Material.074_38"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_177_Material068_0.geometry,material:i["Material.074_37"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_179_Material060_0.geometry,material:i["Material.074_34"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_18_Material004_0.geometry,material:i["Material.004"],position:[147.709,33.245,403.086],rotation:[-Math.PI,-1.571,0],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_181_Material057_0.geometry,material:i["Material.074_33"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_183_Material070_0.geometry,material:i["Material.074_39"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_185_Material057_0.geometry,material:i["Material.074_33"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_187_Material057_0.geometry,material:i["Material.074_33"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_189_Material069_0.geometry,material:i["Material.074_38"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_191_Material057_0.geometry,material:i["Material.074_33"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_193_Material057_0.geometry,material:i["Material.074_33"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_195_Material057_0.geometry,material:i["Material.074_33"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_197_Material057_0.geometry,material:i["Material.074_33"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_199_Material057_0.geometry,material:i["Material.074_33"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_20_Material004_0.geometry,material:i["Material.004"],position:[147.709,33.245,403.086],rotation:[-Math.PI,-1.571,0],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_201_Material057_0.geometry,material:i["Material.074_33"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_203_Material060_0.geometry,material:i["Material.074_34"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_205_Material066_0.geometry,material:i["Material.074_35"],position:[147.709,32.578,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_207_Material057_0.geometry,material:i["Material.074_33"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_209_Material070_0.geometry,material:i["Material.074_39"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_211_Material067_0.geometry,material:i["Material.074_36"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_213_Tasten_2_0.geometry,material:i.Tasten_2,position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_215_Material057_0.geometry,material:i["Material.074_33"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_217_Material060_0.geometry,material:i["Material.074_34"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_219_Material060_0.geometry,material:i["Material.074_34"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_22_Material004_0.geometry,material:i["Material.004"],position:[147.709,33.245,403.086],rotation:[-Math.PI,-1.571,0],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_221_Material057_0.geometry,material:i["Material.074_33"],position:[147.709,32.601,400.77],rotation:[-Math.PI/2,-1.481,1.571],scale:[154.135,91.415,91.415]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_223_Material005_0.geometry,material:i["Material.074_32"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_225_Material005_0.geometry,material:i["Material.074_32"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_227_Material069_0.geometry,material:i["Material.074_38"],position:[147.709,32.432,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_229_Material057_0.geometry,material:i["Material.074_33"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_231_Material068_0.geometry,material:i["Material.074_37"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_233_Material057_0.geometry,material:i["Material.074_33"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_235_Material057_0.geometry,material:i["Material.074_33"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_237_Material066_0.geometry,material:i["Material.074_35"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_239_Material066_0.geometry,material:i["Material.074_35"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receive
3967Shadow:!0,geometry:n.Object_24_Tastatur_Seite_0.geometry,material:i.Tastatur_Seite,position:[147.709,33.245,403.086],rotation:[-Math.PI,-1.571,0],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_241_Material070_0.geometry,material:i["Material.074_39"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_243_Material066_0.geometry,material:i["Material.074_35"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_245_Material070_0.geometry,material:i["Material.074_39"],position:[147.709,32.601,289.941],rotation:[-Math.PI/2,-1.481,1.571],scale:[142.89,91.415,91.415]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_247_Material066_0.geometry,material:i["Material.074_35"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_249_Material060_0.geometry,material:i["Material.074_34"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_251_Material070_0.geometry,material:i["Material.074_39"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_253_Material057_0.geometry,material:i["Material.074_33"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_255_Material057_0.geometry,material:i["Material.074_33"],position:[129.141,32.601,395.134],rotation:[-Math.PI/2,-1.481,1.571],scale:[79.314,91.415,91.415]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_257_Material057_0.geometry,material:i["Material.074_33"],position:[129.141,32.601,395.134],rotation:[-Math.PI/2,-1.481,1.571],scale:[79.314,91.415,91.415]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_259_Material060_0.geometry,material:i["Material.074_34"],position:[147.709,32.601,385.749],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_26_Material004_0.geometry,material:i["Material.004"],position:[147.709,33.245,403.086],rotation:[-Math.PI,-1.571,0],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_261_Material060_0.geometry,material:i["Material.074_34"],position:[147.709,32.601,385.718],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_263_Material060_0.geometry,material:i["Material.074_34"],position:[147.709,32.601,385.526],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_265_Material060_0.geometry,material:i["Material.074_34"],position:[125.985,34.792,402.731],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_267_Tasten_2_0.geometry,material:i.Tasten_2,position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_269_Material070_0.geometry,material:i["Material.074_39"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_271_Material070_0.geometry,material:i["Material.074_39"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_273_Material067_0.geometry,material:i["Material.074_36"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_275_Material005_0.geometry,material:i["Material.074_32"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_277_Tasten_2_0.geometry,material:i.Tasten_2,position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_279_Tasten_2_0.geometry,material:i.Tasten_2,position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_28_Material004_0.geometry,material:i["Material.004"],position:[147.709,33.245,403.086],rotation:[-Math.PI,-1.571,0],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_281_Material069_0.geometry,material:i["Material.074_38"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_283_Material068_0.geometry,material:i["Material.074_37"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_285_Material068_0.geometry,material:i["Material.074_37"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_287_Tasten_2_0.geometry,material:i.Tasten_2,position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_289_Material068_0.geometry,material:i["Material.074_37"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_291_Material066_0.geometry,material:i["Material.074_35"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_293_Material066_0.geometry,material:i["Material.074_35"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_295_Tasten_2_0.geometry,material:i.Tasten_2,position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_297_Material067_0.geometry,material:i["Material.074_36"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_299_Material066_0.geometry,material:i["Material.074_35"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_30_Material007_0.geometry,material:i["Material.007"],position:[147.709,33.245,403.086],rotation:[-Math.PI,-1.571,0],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_301_Material060_0.geometry,material:i["Material.074_34"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_303_Tasten_2_0.geometry,material:i.Tasten_2,position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_305_Material060_0.geometry,material:i["Material.074_34"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_307_Tasten_2_0.geometry,material:i.Tasten_2,position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_309_Material057_0.geometry,material:i["Material.074_33"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_311_Tasten_2_0.geometry,material:i.Tasten_2,position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_313_Tasten_2_0.geometry,material:i.Tasten_2,position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_315_Material005_0.geometry,material:i["Material.074_32"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_317_Tasten_2_0.geometry,material:i.Tasten_2,position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_319_Tasten_2_0.geometry,material:i.Tasten_2,position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_32_Material004_0.geometry,material:i["Material.004"],position:[147.709,33.245,403.086],rotation:[-Math.PI,-1.571,0],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_321_Material068_0.geometry,material:i["Material.074_37"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_323_Material057_0.geometry,material:i["Material.074_33"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_325_Material066_0.geometry,material:i["Material.074_35"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_327_Material057_0.geometry,material:i["Material.074_33"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_329_Material066_0.geometry,material:i["Material.074_35"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_331_Material060_0.geometry,material:i["Material.074_34"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_333_Material060_0.geometry,material:i["Material.074_34"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_335_Material005_0.geometry,material:i["Material.074_32"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_337_Material068_0.geometry,material:i["Material.074_37"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_339_Material066_0.geometry,material:i["Material.074_35"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_34_Material004_0.geometry,material:i["Material.004"],position:[147.709,33.245,403.086],rotation:[-Math.PI,-1.571,0],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_341_Material068_0.geometry,material:i["Material.074_37"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_343_Material066_0.geometry,material:i["Material.074_35"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_345_Material066_0.geometry,material:i["Material.074_35"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_347_Material066_0.geometry,material:i["Material.074_35"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_349_Material066_0.geometry,material:i["Material.074_35"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_351_Material060_0.geometry,material:i["Material.074_34"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_353_Material060_0.geometry,material:i["Material.074_34"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_355_Material057_0.geometry,material:i["Material.074_33"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_357_Material069_0.geometry,material:i["Material.074_38"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_359_Material066_0.geometry,material:i["Material.074_35"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_36_Tastatur_Seite_0.geometry,material:i.Tastatur_Seite,position:[147.709,33.245,403.086],rotation:[-Math.PI,-1.571,0],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_361_Material057_0.geometry,material:i["Material.074_33"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_363_Material057_0.geometry,material:i["Material.074_33"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_365_Material057_0.geometry,material:i["Material.074_33"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_367_Material069_0.geometry,material:i["Material.074_38"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_369_Material060_0.geometry,material:i["Material.074_34"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_371_Material070_0.geometry,material:i["Material.074_39"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_373_Material070_0.geometry,material:i["Material.074_39"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_375_Material067_0.geometry,material:i["Material.074_36"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_377_Tasten_2_0.geometry,material:i.Tasten_2,position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_379_Material066_0.geometry,material:i["Material.074_35"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_38_Tastatur_Seite_0.geometry,material:i.Tastatur_Seite,position:[147.709,33.245,403.086],rotation:[-Math.PI,-1.571,0],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_381_Material005_0.geometry,material:i["Material.074_32"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_383_Material005_0.geometry,material:i["Material.074_32"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx
3967("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_385_Material069_0.geometry,material:i["Material.074_38"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_387_Material005_0.geometry,material:i["Material.074_32"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_389_Material068_0.geometry,material:i["Material.074_37"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_391_Material057_0.geometry,material:i["Material.074_33"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_393_Material068_0.geometry,material:i["Material.074_37"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_395_Material057_0.geometry,material:i["Material.074_33"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_397_Material066_0.geometry,material:i["Material.074_35"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_399_Material066_0.geometry,material:i["Material.074_35"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_40_Tastatur_Seite_0.geometry,material:i.Tastatur_Seite,position:[147.709,33.245,403.086],rotation:[-Math.PI,-1.571,0],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_401_Material070_0.geometry,material:i["Material.074_39"],position:[147.709,32.601,289.941],rotation:[-Math.PI/2,-1.481,1.571],scale:[142.89,91.415,91.415]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_403_Material066_0.geometry,material:i["Material.074_35"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_405_Material060_0.geometry,material:i["Material.074_34"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_407_Material070_0.geometry,material:i["Material.074_39"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_409_Material067_0.geometry,material:i["Material.074_36"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_411_Tasten_2_0.geometry,material:i.Tasten_2,position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_413_Material066_0.geometry,material:i["Material.074_35"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_415_Material057_0.geometry,material:i["Material.074_33"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_418_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_42_Tastatur_Seite_0.geometry,material:i.Tastatur_Seite,position:[147.709,33.245,403.086],rotation:[-Math.PI,-1.571,0],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_420_Tasten_0.geometry,material:i["Material.025"],position:[164.917,31.114,386.964],rotation:[-Math.PI/2,-1.481,1.571],scale:[67.569,91.415,91.415]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_422_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_424_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_426_Tasten_0.geometry,material:i["Material.025"],position:[130.241,34.605,390.577],rotation:[-Math.PI/2,-1.481,1.571],scale:[72.766,91.415,91.415]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_428_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_430_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_432_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_434_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_436_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_438_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,402.928],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_44_Tastatur_Seite_0.geometry,material:i.Tastatur_Seite,position:[147.709,33.245,403.086],rotation:[-Math.PI,-1.571,0],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_440_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_442_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_444_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_446_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_448_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_450_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_452_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_454_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_456_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_458_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_460_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_462_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_464_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_466_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_468_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_47_Material005_0.geometry,material:i["Material.074_32"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_470_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_472_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_474_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_476_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_478_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_480_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_482_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_484_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_486_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_488_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_49_Tasten_2_0.geometry,material:i.Tasten_2,position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_490_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_492_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_494_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_496_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_498_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_500_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_502_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_504_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_506_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_508_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_51_Tasten_2_0.geometry,material:i.Tasten_2,position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_510_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_512_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_514_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,385.856],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_516_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,385.856],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_518_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,385.856],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_520_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,385.856],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_522_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,385.856],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_524_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,385.856],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_526_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_528_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,385.856],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_53_Tasten_2_0.geometry,material:i.Tasten_2,position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_530_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_532_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_534_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_536_Tasten_0.geometry,mate
3967rial:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_538_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_540_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_542_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_544_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_546_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_548_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_55_Material057_0.geometry,material:i["Material.074_33"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_550_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_552_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_554_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_556_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_558_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_560_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_562_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_564_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_566_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_568_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_57_Tasten_2_0.geometry,material:i.Tasten_2,position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_570_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_572_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_574_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_576_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_578_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_580_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_582_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_584_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_586_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_588_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_59_Material060_0.geometry,material:i["Material.074_34"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_590_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_592_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_594_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_596_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_598_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_600_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_602_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_604_Material071_0.geometry,material:i["Material.025"],position:[147.709,34.581,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_606_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.296,259.275],rotation:[-Math.PI/2,-1.481,1.571],scale:[157.896,91.415,91.415]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_608_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_61_Tasten_2_0.geometry,material:i.Tasten_2,position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_610_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_612_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_614_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_616_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_618_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_620_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_622_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_624_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_626_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_628_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_63_Material060_0.geometry,material:i["Material.074_34"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_630_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_632_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_634_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_636_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_638_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_640_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_642_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_644_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_646_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_648_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_65_Material066_0.geometry,material:i["Material.074_35"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_650_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_652_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_654_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_656_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_658_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_660_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_662_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_664_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_666_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_668_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_67_Material067_0.geometry,material:i["Material.074_36"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_670_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_672_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_674_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_676_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_678_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_680_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_682_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_684_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_686_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_688_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34
3967.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_69_Material066_0.geometry,material:i["Material.074_35"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_690_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_692_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_694_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_696_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_698_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_700_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_702_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_704_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_706_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_708_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_71_Tasten_2_0.geometry,material:i.Tasten_2,position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_710_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_712_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_714_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_716_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_718_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_720_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_722_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_724_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_726_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_728_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_73_Material057_0.geometry,material:i["Material.074_33"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_730_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_732_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_734_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_736_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_738_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_740_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_742_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_744_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_746_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_748_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_75_Material066_0.geometry,material:i["Material.074_35"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_750_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_752_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_754_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_756_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_758_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_760_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_762_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_764_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_766_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_768_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_77_Material057_0.geometry,material:i["Material.074_33"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_770_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_772_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_774_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_776_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_778_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_780_Tasten_0.geometry,material:i["Material.025"],position:[147.709,34.605,403.086],rotation:[-Math.PI/2,-1.481,1.571],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_784_Material057_0.geometry,material:i["Material.074_33"],position:[174.161,46.923,307.714],rotation:[-Math.PI/2,0,Math.PI/2],scale:49.824}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_786_Material057_0.geometry,material:i["Material.074_33"],position:[191.377,45.228,324.985],rotation:[-Math.PI/2,0,Math.PI],scale:49.824}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_79_Material057_0.geometry,material:i["Material.074_33"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_790_Material057_0.geometry,material:i["Material.074_33"],position:[191.377,45.228,290.099],rotation:[-Math.PI/2,0,0],scale:49.824}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_792_Material057_0.geometry,material:i["Material.074_33"],position:[190.941,45.228,307.684],rotation:[-Math.PI/2,0,-1.538],scale:52.612}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_794_Material070_0.geometry,material:i["Material.074_39"],position:[139.381,50.46,591.26],rotation:[-Math.PI/2,0,-Math.PI],scale:29.266}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_796_Material070_0.geometry,material:i["Material.074_39"],position:[141.108,50.46,586.29],rotation:[-Math.PI/2,0,0],scale:29.266}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_8_Tastatur_Seite_0.geometry,material:i.Tastatur_Seite,position:[147.709,33.245,403.086],rotation:[-Math.PI,-1.571,0],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_81_Material068_0.geometry,material:i["Material.074_37"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_83_Tasten_2_0.geometry,material:i.Tasten_2,position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_85_Material068_0.geometry,material:i["Material.074_37"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_87_Tasten_2_0.geometry,material:i.Tasten_2,position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_89_Material068_0.geometry,material:i["Material.074_37"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_91_Material067_0.geometry,material:i["Material.074_36"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_93_Material069_0.geometry,material:i["Material.074_38"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_95_Tasten_2_0.geometry,material:i.Tasten_2,position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_97_Material005_0.geometry,material:i["Material.074_32"],position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Object_99_Tasten_2_0.geometry,material:i.Tasten_2,position:[147.709,32.601,403.086],rotation:[-Math.PI/2,-1.481,Math.PI/2],scale:91.415}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Plane_Material053_0.geometry,material:i["Material.074_21"],position:[117.182,25.605,-29.165],rotation:[-Math.PI/2,0,0],scale:[124.427,154.111,119.911]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.psuback_psuback_0.geometry,material:i["Material.074_13"],position:[-260.266,77.97,-352.752],rotation:[0,Math.PI/2,0],scale:59.489}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n["rgb-hdd-cover-aorus-v1_rgb-hdd-cover-aorus-v1_0"].geometry,material:i["Material.074_9"],position:[-93.477,83.167,-288.796],scale:36.942}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Sphere_Material019_0.geometry,material:i["Material.025"],position:[-277.544,457.86,-407.854],rotation:[-1.514,0,0],scale:4.86}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Sphere001_Material019_0.geometry,material:i["Material.025"],position:[-277.544,457.86,-439.732],rotation:[-1.62,0,0],scale:4.86}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n["test-aorus-m2-souris-aorus-rgb2_test-aorus-m2-souris-aorus-rgb2"].geometry,material:i["Material.074_18"],position:[-115.854,150.748,-435.223],scale:35.194}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Text_Material046_0.geometry,material:i["Material.046"],position:[-143.804,250.193,-325.724],rotation:[0,0,Math.PI/2],scale:2.436}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Text001_Material097_0.geometry,material:i["Material.025"],position:[87.586,202.482,-275.486],rotation:[-Math.PI/2,Math.PI/2,0],scale:[10.325,8.384,9.718]}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Torus_Material013_0.geometry,material:i["Material.013"],position:[69.926,356.741,-407.005],rotation:[-Math.PI/2,0,0],scale:3.297}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.Torus001_Material032_0.geometry,material:i["Material.032"],position:[69.926,356.741,-423.729],rotation:[-Math.PI/2,0,0],scale:3.297}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.usb_usb_0.geometry,material:i["Material.074_14"],position:[70.473,357.15,-289.695],rotation:[-Math.PI/2,0,Math.PI/2],scale:7.342}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.usb001_usb_0.geometry,material:i["Material.074_14"],position:[70.473,357.15,-321.003],rotation:[-Math.PI/2,0,Math.PI/2],scale:7.342}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.usb002_usb_0.geometry,material:i["Material.074_14"],position:[70.473,357.15,-352.59],rotation:[-Math.PI/2,0,Math.PI/2],scale:7.342}),_.jsx("mesh",{castShadow:!0,receiveShadow:!0,geometry:n.usb003_usb_0.geometry,material:i["Material.074_14"],position:[70.473,357.15,-384.891],rotation:[
3967-Math.PI/2,0,Math.PI/2],scale:7.342})]})})};Vu.preload("/models/pc.glb");const oG=()=>{const r=Py({query:"(max-width: 1024px)"}),e=Py({query:"(max-width: 768px)"}),t=e?[1.9,.3,2.9]:r?[1.2,2.2,1.5]:[1.3,1.3,1.9],n=e?[.4,.4,.4]:r?[.3,.3,.3]:[.3,.3,.3];return _.jsx(_.Fragment,{children:_.jsxs("div",{className:"relative min-h-screen pt-16 md:pt-20 overflow-hidden",children:[_.jsxs("div",{className:"relative z-10 text-center text-white p-3 md:p-8",children:[_.jsxs("h1",{className:"text-2xl md:text-4xl font-bold relative z-20",children:["Hi, I  am Divyansh  Kathuria ",_.jsx("span",{className:"waving-hand",children:"👋"})]}),_.jsx("div",{className:"absolute top-0 left-0 w-full h-full z-0",style:{zIndex:999},children:_.jsx(sA,{children:_.jsxs(z.Suspense,{fallback:null,children:[_.jsx(SA,{makeDefault:!0,position:[1,1,6]}),_.jsx(FH,{}),_.jsx("ambientLight",{intensity:.5}),_.jsx("directionalLight",{position:[10,10,10],intensity:1})]})})})]}),_.jsxs("div",{className:"flex flex-col md:flex-row min-h-screen",children:[_.jsxs("div",{className:"w-full md:w-1/2 p-6 md:p-8 order-2 md:order-1",children:[_.jsx("div",{className:"top-text",children:_.jsx("span",{children:"Wired for Innovation"})}),_.jsxs("div",{className:"wrapper",children:[_.jsx("span",{className:"first-text",children:"I'm"}),_.jsxs("ul",{className:"sec-texts",children:[_.jsx("li",{children:_.jsx("span",{children:"a Developer"})}),_.jsx("li",{children:_.jsx("span",{children:"a Thinker"})}),_.jsx("li",{children:_.jsx("span",{children:"a Solver"})}),_.jsx("li",{children:_.jsx("span",{children:"an Engineer"})})]})]}),_.jsx("div",{children:_.jsx("button",{onClick:()=>window.open("./assets/resume.pdf","_blank"),className:"gradient-button",children:"Download my resume "})})]}),_.jsx("div",{className:"w-full md:w-2/3 flex justify-center md:justify-center items-baseline p-6 md:p-8 order-1 md:order-2",children:_.jsx(sA,{children:_.jsxs(z.Suspense,{fallback:null,children:[_.jsx(SA,{makeDefault:!0,position:[1,1,6]}),_.jsx("group",{children:_.jsx(sG,{scale:n,rotation:[0,0,-.3],position:t})}),_.jsx("ambientLight",{intensity:.5}),_.jsx("directionalLight",{position:[10,10,10],intensity:1})]})})})]})]})})},aG=()=>{const[r,e]=z.useState(null),t=z.useRef(null);z.useEffect(()=>{const s=()=>
3967{if(!t.current)return;const l=window.scrollY+window.innerHeight/2,u=t.current.offsetTop,d=t.current.offsetHeight;window.innerWidth>768?l>=u&&l<u+.12*d?(e(null),n(!0,"Explore my<br>education<br>journey now",!1,!0)):l>=u+.12*d&&l<u+.34*d?(e(1),n(!1,!1)):l>=u+.34*d&&l<u+.5*d?(e(2),n(!1,!1)):l>=u+.5*d&&l<u+.66*d?(e(3),n(!1,!1)):l>=u+.66*d&&l<u+.9*d?(e(4),n(!1,!1)):l>=u+.9*d&&(e(null),n(!0,"Always shine <br>brightly like the<br> Sun",!1,!1)):l>=u+.05*d&&l<u+.1*d?(e(null),n(!0,"Explore my<br>education<br>journey now",!1,"1")):l>=u+.1*d&&l<u+.38*d?(e(1),n(!1,!1)):l>=u+.38*d&&l<u+.5*d?(e(2),n(!1,!1)):l>=u+.5*d&&l<u+.685*d?(e(3),n(!1,!1)):l>=u+.685*d&&l<u+.87*d?(e(4),n(!1,!1)):l>=u+.87*d&&l<u+d&&(e(null),n(!0,"Always shine <br>brightly like the<br> Sun",!1,"4"))},o=()=>{t.current&&(t.current.offsetTop,t.current.offsetHeight)};return window.addEventListener("scroll",s),window.addEventListener("resize",o),s(),o(),()=>{window.removeEventListener("scroll",s),window.removeEventListener("resize",o)}},[]);const n=(s,o,l,u)=>{const d=document.querySelector(".process-section .circle"),p=document.querySelector(".process-section .circle .circle-content p.text");document.querySelector(".process-section .circle .circle-content p.number"),s?(d.classList.remove("small"),document.querySelectorAll(".process-section .single-process").forEach(m=>m.classList.remove("current"))):d.classList.add("small"),o&&(p.innerHTML=o),u?d.classList.add("down-btn"):d.classList.remove("down-btn")},i=s=>{const o=s,l=window.innerWidth>768?.261+.16*o:.173+.193*o,u=t.current.offsetTop+t.current.offsetHeight*l-window.innerHeight/2;window.scrollTo({top:u,behavior:"smooth"})};return _.jsxs("section",{className:"process-section relative w-full",id:"education",ref:t,children:[_.jsx("div",{className:"section-text-start w-full",children:_.jsx("span",{className:"block",children:"Education Journey"})}),_.jsx("div",{className:"container mx-auto",children:_.jsx("div",{className:"row",children:_.jsx("div",{className:"col-md-12",children:_.jsxs("div",{className:"process-scroll-area relative",children:[_.jsx("div",{className:"process-sticky",children:_.jsx("div",{className:"process-moving-relative",children:_.jsx("div",{className:"circle transform-gpu",children:_.jsxs("div",{className:"circle-content",children:[_.jsx("p",{className:"text block"}),_.jsx("div",{className:"step-by-step-button transform-gpu",onClick:s=>{s.preventDefault(),i(1)}})]})})})}),_.jsx("div",{className:"process-moving-path",children:_.jsxs("div",{className:"process-path-svg-relative",children:[_.jsx("div",{className:"mobile-step-start",children:_.jsx("div",{className:"mobile-circle",children:_.jsxs("p",{children:["Explore my",_.jsx("br",{}),"education",_.jsx("br",{}),"journey now"]})})}),_.jsx("div",{className:`single-process process-1 ${r===1?"current":""}`,children:_.jsxs("div",{className:"process-text-wrapper",children:[_.jsx("span",{children:"2015-2022"}),_.jsx("h2",{children:"Amity International School"}),_.jsx("p",{children:"Completed my schooling from Amity International School,where I learned everything from algebra to the fine art of avoiding small talk and still looking busy 🤫"}),_.jsx("div",{className:"next-step","data-target":"1",onClick:s=>{s.preventDefault(),i(1.1)},children:_.jsx("i",{className:"fas fa-chevron-down"})})]})}),_.jsx("div",{className:`single-process process-2 ${r===2?"current":""}`,children:_.jsxs("div",{className:"process-text-wrapper",children:[_.jsx("span",{children:"2022 - Present"}),_.jsx("h2",{children:"Delhi technological University"}),_.jsx("p",{children:"Pursuing my Engineering in ECE at Delhi Technological University, from navigating the chaos of campus life to surviving on minimal sleep 😴"}),_.jsx("div",{className:"next-step","data-target":"2",onClick:s=>{s.preventDefault(),i(2)},children:_.jsx("i",{className:"fas fa-chevron-down"})})]})}),_.jsx("div",{className:`single-process process-3 ${r===3?"current":""}`,children:_.jsxs("div",{className:"process-text-wrapper",children:[_.jsx("span",{children:"2023 - 2024"}),_.jsx("h2",{children:"DTU Rocketry"}),_.jsx("p",{children:"Learned to build model rockets and even wrote the code for the parachute ejection system—because why should SpaceX have all the fun catching rockets? 😎 "}),_.jsx("div",{className:"next-step","data-target":"3",onClick:s=>{s.preventDefault(),i(3)},children:_.jsx("i",{className:"fas fa-chevron-down"})})]})}),_.jsx("div",{className:`single-process process-4 ${r===4?"current":""}`,children:_.jsxs("div",{className:"process-text-wrapper",children:[_.jsx("span",{children:"2024 (may - july)"}),_.jsx("h2",{children:"IIT Dharwad Internship"}),_.jsx("p",{children:"I worked on both the hardware and software implementation to create sequences with low correlation values to reduce cross-talk in wireless devices—because nobody wants their signals gossiping behind their back! 📡"}),_.jsx("div",{className:"next-step","data-target":"4",onClick:s=>{s.preventDefault(),i(4)},children:_.jsx("i",{className:"fas fa-chevron-down"})})]})}),_.jsx("div",{className:"mobile-step-end",children:_.jsx("div",{className:"mobile-circle",children:_.jsxs("p",{children:["The learning process",_.jsx("br",{}),"continues until",_.jsx("br",{})," the day you die."]})})})]})})]})})})})]})},T3=Object.freeze({left:0,top:0,width:16,height:16}),Ry=Object.freeze({rotate:0,vFlip:!1,hFlip:!1}),aS=Object.freeze({...T3,...Ry}),Ox=Object.freeze({...aS,body:"",hidden:!1});function lG(r,e){const t={};!r.hFlip!=!e.hFlip&&(t.hFlip=!0),!r.vFlip!=!e.vFlip&&(t.vFlip=!0);const n=((r.rotate||0)+(e.rotate||0))%4;return n&&(t.rotate=n),t}function JE(r,e){const t=lG(r,e);for(const n in Ox)n in Ry?n in r&&!(n in t)&&(t[n]=Ry[n]):n in e?t[n]=e[n]:n in r&&(t[n]=r[n]);return t}function cG(r,e){const t=r.icons,n=r.aliases||Object.create(null),i=Object.create(null);function s(o){if(t[o])return i[o]=[];if(!(o in i)){i[o]=null;const l=n[o]&&n[o].parent,u=l&&s(l);u&&(i[o]=[l].concat(u))}return i[o]}
3967return Object.keys(t).concat(Object.keys(n)).forEach(s),i}function uG(r,e,t){const n=r.icons,i=r.aliases||Object.create(null);let s={};function o(l){s=JE(n[l]||i[l],s)}return o(e),t.forEach(o),JE(r,s)}function I3(r,e){const t=[];if(typeof r!="object"||typeof r.icons!="object")return t;r.not_found instanceof Array&&r.not_found.forEach(i=>{e(i,null),t.push(i)});const n=cG(r);for(const i in n){const s=n[i];s&&(e(i,uG(r,i,s)),t.push(i))}return t}const hG={provider:"",aliases:{},not_found:{},...T3};function H_(r,e){for(const t in e)if(t in r&&typeof r[t]!=typeof e[t])return!1;return!0}function P3(r){if(typeof r!="object"||r===null)return null;const e=r;if(typeof e.prefix!="string"||!r.icons||typeof r.icons!="object"||!H_(r,hG))return null;const t=e.icons;for(const i in t){const s=t[i];if(!i||typeof s.body!="string"||!H_(s,Ox))return null}const n=e.aliases||Object.create(null);for(const i in n){const s=n[i],o=s.parent;if(!i||typeof o!="string"||!t[o]&&!n[o]||!H_(s,Ox))return null}return e}const R3=/^[a-z0-9]+(-[a-z0-9]+)*$/,M1=(r,e,t,n="")=>{const i=r.split(":");if(r.slice(0,1)==="@"){if(i.length<2||i.length>3)return null;n=i.shift().slice(1)}if(i.length>3||!i.length)return null;if(i.length>1){const l=i.pop(),u=i.pop(),d={provider:i.length>0?i[0]:n,prefix:u,name:l};return e&&!Eg(d)?null:d}const s=i[0],o=s.split("-");if(o.length>1){const l={provider:n,prefix:o.shift(),name:o.join("-")};return e&&!Eg(l)?null:l}if(t&&n===""){const l={provider:n,prefix:"",name:s};return e&&!Eg(l,t)?null:l}return null},Eg=(r,e)=>r?!!((e&&r.prefix===""||r.prefix)&&r.name):!1,$E=Object.create(null);function dG(r,e){return{provider:r,prefix:e,icons:Object.create(null),missing:new Set}}function Uu(r,e){const t=$E[r]||($E[r]=Object.create(null));return t[e]||(t[e]=dG(r,e))}function lS(r,e){return P3(e)?I3(e,(t,n)=>{n?r.icons[t]=n:r.missing.add(t)}):[]}function fG(r,e,t){try{if(typeof t.body=="string")return r.icons[e]={...t},!0}catch{}return!1}let Qp=!1;function B3(r){return typeof r=="boolean"&&(Qp=r),Qp}function KE(r){const e=typeof r=="string"?M1(r,!0,Qp):r;if(e){const t=Uu(e.provider,e.prefix),n=e.name;return t.icons[n]||(t.missing.has(n)?null:void 0)}}function pG(r,e){const t=M1(r,!0,Qp);if(!t)return!1;const n=Uu(t.provider,t.prefix);return e?fG(n,t.name,e):(n.missing.add(t.name),!0)}function mG(r,e){if(typeof r!="object")return!1;if(typeof e!="string"&&(e=r.provider||""),Qp&&!e&&!r.prefix){let i=!1;return P3(r)&&(r.prefix="",I3(r,(s,o)=>{pG(s,o)&&(i=!0)})),i}const t=r.prefix;if(!Eg({provider:e,prefix:t,name:"a"}))return!1;const n=Uu(e,t);return!!lS(n,r)}const O3=Object.freeze({width:null,height:null}),D3=Object.freeze({...O3,...Ry}),gG=/(-?[0-9.]*[0-9]+[0-9.]*)/g,yG=/^-?[0-9.]*[0-9]+[0-9.]*$/g;function YE(r,e,t){if(e===1)return r;if(t=t||100,typeof r=="number")return Math.ceil(r*e*t)/t;if(typeof r!="string")return r;const n=r.split(gG);if(n===null||!n.length)return r;const i=[];let s=n.shift(),o=yG.test(s);for(;;){if(o){const l=parseFloat(s);isNaN(l)?i.push(s):i.push(Math.ceil(l*e*t)/t)}else i.push(s);if(s=n.shift(),s===void 0)return i.join("");o=!o}}function vG(r,e="defs"){let t="";const n=r.indexOf("<"+e);for(;n>=0;){const i=r.indexOf(">",n),s=r.indexOf("</"+e);if(i===-1||s===-1)break;const o=r.indexOf(">",s);if(o===-1)break;t+=r.slice(i+1,s).trim(),r=r.slice(0,n).trim()+r.slice(o+1)}return{defs:t,content:r}}function _G(r,e){return r?"<defs>"+r+"</defs>"+e:e}function xG(r,e,t){const n=vG(r);return _G(n.defs,e+n.content+t)}const MG=r=>r==="unset"||r==="undefined"||r==="none";function SG(r,e){const t={...aS,...r},n={...D3,...e},i={left:t.left,top:t.top,width:t.width,height:t.height};let s=t.body;[t,n].forEach(E=>{const A=[],M=E.hFlip,T=E.vFlip;let I=E.rotate;M?T?I+=2:(A.push("translate("+(i.width+i.left).toString()+" "+(0-i.top).toString()+")"),A.push("scale(-1 1)"),i.top=i.left=0):T&&(A.push("translate("+(0-i.left).toString()+" "+(i.height+i.top).toString()+")"),A.push("scale(1 -1)"),i.top=i.left=0);let P;switch(I<0&&(I-=Math.floor(I/4)*4),I=I%4,I){case 1:P=i.height/2+i.top,A.unshift("rotate(90 "+P.toString()+" "+P.toString()+")");break;case 2:A.unshift("rotate(180 "+(i.width/2+i.left).toString()+" "+(i.height/2+i.top).toString()+")");break;case 3:P=i.width/2+i.left,A.unshift("rotate(-90 "+P.toString()+" "+P.toString()+")");break}I%2===1&&(i.left!==i.top&&(P=i.left,i.left=i.top,i.top=P),i.width!==i.height&&(P=i.width,i.width=i.height,i.height=P)),A.length&&(s=xG(s,'<g transform="'+A.join(" ")+'">',"</g>"))});const o=n.width,l=n.height,u=i.width,d=i.height;let p,m;o===null?(m=l===null?"1em":l==="auto"?d:l,p=YE(m,u/d)):(p=o==="auto"?u:o,m=l===null?YE(p,d/u):l==="auto"?d:l);const y={},v=(E,A)=>{MG(A)||(y[E]=A.toString())};v("width",p),v("height",m);const S=[i.left,i.top,u,d];
3967return y.viewBox=S.join(" "),{attributes:y,viewBox:S,body:s}}const wG=/\sid="(\S+)"/g,AG="IconifyId"+Date.now().toString(16)+(Math.random()*16777216|0).toString(16);let EG=0;function bG(r,e=AG){const t=[];let n;for(;n=wG.exec(r);)t.push(n[1]);if(!t.length)return r;const i="suffix"+(Math.random()*16777216|Date.now()).toString(16);return t.forEach(s=>{const o=typeof e=="function"?e(s):e+(EG++).toString(),l=s.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");r=r.replace(new RegExp('([#;"])('+l+')([")]|\\.[a-z])',"g"),"$1"+o+i+"$3")}),r=r.replace(new RegExp(i,"g"),""),r}const Dx=Object.create(null);function CG(r,e){Dx[r]=e}function Lx(r){return Dx[r]||Dx[""]}function cS(r){let e;if(typeof r.resources=="string")e=[r.resources];else if(e=r.resources,!(e instanceof Array)||!e.length)return null;return{resources:e,path:r.path||"/",maxURL:r.maxURL||500,rotate:r.rotate||750,timeout:r.timeout||5e3,random:r.random===!0,index:r.index||0,dataAfterTimeout:r.dataAfterTimeout!==!1}}const uS=Object.create(null),vp=["https://api.simplesvg.com","https://api.unisvg.com"],bg=[];for(;vp.length>0;)vp.length===1||Math.random()>.5?bg.push(vp.shift()):bg.push(vp.pop());uS[""]=cS({resources:["https://api.iconify.design"].concat(bg)});function TG(r,e){const t=cS(e);return t===null?!1:(uS[r]=t,!0)}function hS(r){return uS[r]}const IG=()=>{let r;try{if(r=fetch,typeof r=="function")return r}catch{}};let qE=IG();function PG(r,e){const t=hS(r);if(!t)return 0;let n;if(!t.maxURL)n=0;else{let i=0;t.resources.forEach(o=>{i=Math.max(i,o.length)});const s=e+".json?icons=";n=t.maxURL-i-t.path.length-s.length}return n}function RG(r){return r===404}const BG=(r,e,t)=>{const n=[],i=PG(r,e),s="icons";let o={type:s,provider:r,prefix:e,icons:[]},l=0;return t.forEach((u,d)=>{l+=u.length+1,l>=i&&d>0&&(n.push(o),o={type:s,provider:r,prefix:e,icons:[]},l=u.length),o.icons.push(u)}),n.push(o),n};function OG(r){if(typeof r=="string"){const e=hS(r);if(e)return e.path}return"/"}const DG=(r,e,t)=>{if(!qE){t("abort",424);return}let n=OG(e.provider);switch(e.type){case"icons":{const s=e.prefix,l=e.icons.join(","),u=new URLSearchParams({icons:l});n+=s+".json?"+u.toString();break}case"custom":{const s=e.uri;n+=s.slice(0,1)==="/"?s.slice(1):s;break}default:t("abort",400);return}let i=503;qE(r+n).then(s=>{const o=s.status;if(o!==200){setTimeout(()=>{t(RG(o)?"abort":"next",o)});return}return i=501,s.json()}).then(s=>{if(typeof s!="object"||s===null){setTimeout(()=>{s===404?t("abort",s):t("next",i)});return}setTimeout(()=>{t("success",s)})}).catch(()=>{t("next",i)})},LG={prepare:BG,send:DG};function NG(r){const e={loaded:[],missing:[],pending:[]},t=Object.create(null);r.sort((i,s)=>i.provider!==s.provider?i.provider.localeCompare(s.provider):i.prefix!==s.prefix?i.prefix.localeCompare(s.prefix):i.name.localeCompare(s.name));let n={provider:"",prefix:"",name:""};return r.forEach(i=>{if(n.name===i.name&&n.prefix===i.prefix&&n.provider===i.provider)return;n=i;const s=i.provider,o=i.prefix,l=i.name,u=t[s]||(t[s]=Object.create(null)),d=u[o]||(u[o]=Uu(s,o));let p;l in d.icons?p=e.loaded:o===""||d.missing.has(l)?p=e.missing:p=e.pending;const m={provider:s,prefix:o,name:l};p.push(m)}),e}function L3(r,e){r.forEach(t=>{const n=t.loaderCallbacks;n&&(t.loaderCallbacks=n.filter(i=>i.id!==e))})}function FG(r){r.pendingCallbacksFlag||(r.pendingCallbacksFlag=!0,setTimeout(()=>{r.pendingCallbacksFlag=!1;const e=r.loaderCallbacks?r.loaderCallbacks.slice(0):[];if(!e.length)return;let t=!1;const n=r.provider,i=r.prefix;e.forEach(s=>{const o=s.icons,l=o.pending.length;o.pending=o.pending.filter(u=>{if(u.prefix!==i)return!0;const d=u.name;if(r.icons[d])o.loaded.push({provider:n,prefix:i,name:d});else if(r.missing.has(d))o.missing.push({provider:n,prefix:i,name:d});else return t=!0,!0;return!1}),o.pending.length!==l&&(t||L3([r],s.id),s.callback(o.loaded.slice(0),o.missing.slice(0),o.pending.slice(0),s.abort))})}))}let kG=0;function UG(r,e,t){const n=kG++,i=L3.bind(null,t,n);if(!e.pending.length)return i;const s={id:n,icons:e,callback:r,abort:i};return t.forEach(o=>{(o.loaderCallbacks||(o.loaderCallbacks=[])).push(s)}),i}function jG(r,e=!0,t=!1){const n=[];return r.forEach(i=>
3967{const s=typeof i=="string"?M1(i,e,t):i;s&&n.push(s)}),n}var zG={resources:[],index:0,timeout:2e3,rotate:750,random:!1,dataAfterTimeout:!1};function HG(r,e,t,n){const i=r.resources.length,s=r.random?Math.floor(Math.random()*i):r.index;let o;if(r.random){let O=r.resources.slice(0);for(o=[];O.length>1;){const N=Math.floor(Math.random()*O.length);o.push(O[N]),O=O.slice(0,N).concat(O.slice(N+1))}o=o.concat(O)}else o=r.resources.slice(s).concat(r.resources.slice(0,s));const l=Date.now();let u="pending",d=0,p,m=null,y=[],v=[];typeof n=="function"&&v.push(n);function S(){m&&(clearTimeout(m),m=null)}function E(){u==="pending"&&(u="aborted"),S(),y.forEach(O=>{O.status==="pending"&&(O.status="aborted")}),y=[]}function A(O,N){N&&(v=[]),typeof O=="function"&&v.push(O)}function M(){return{startTime:l,payload:e,status:u,queriesSent:d,queriesPending:y.length,subscribe:A,abort:E}}function T(){u="failed",v.forEach(O=>{O(void 0,p)})}function I(){y.forEach(O=>{O.status==="pending"&&(O.status="aborted")}),y=[]}function P(O,N,H){const F=N!=="success";switch(y=y.filter(L=>L!==O),u){case"pending":break;case"failed":if(F||!r.dataAfterTimeout)return;break;default:return}if(N==="abort"){p=H,T();return}if(F){p=H,y.length||(o.length?k():T());return}if(S(),I(),!r.random){const L=r.resources.indexOf(O.resource);L!==-1&&L!==r.index&&(r.index=L)}u="completed",v.forEach(L=>{L(H)})}function k(){if(u!=="pending")return;S();const O=o.shift();if(O===void 0){if(y.length){m=setTimeout(()=>{S(),u==="pending"&&(I(),T())},r.timeout);return}T();return}const N={status:"pending",resource:O,callback:(H,F)=>{P(N,H,F)}};y.push(N),d++,m=setTimeout(k,r.rotate),t(O,e,N.callback)}return setTimeout(k),M}function N3(r){const e={...zG,...r};let t=[];function n(){t=t.filter(l=>l().status==="pending")}function i(l,u,d){const p=HG(e,l,u,(m,y)=>{n(),d&&d(m,y)});return t.push(p),p}function s(l){return t.find(u=>l(u))||null}return{query:i,find:s,setIndex:l=>{e.index=l},getIndex:()=>e.index,cleanup:n}}function QE(){}const G_=Object.create(null);function GG(r){if(!G_[r]){const e=hS(r);if(!e)return;const t=N3(e),n={config:e,redundancy:t};G_[r]=n}return G_[r]}function VG(r,e,t){let n,i;if(typeof r=="string"){const s=Lx(r);if(!s)return t(void 0,424),QE;i=s.send;const o=GG(r);o&&(n=o.redundancy)}else{const s=cS(r);if(s){n=N3(s);const o=r.resources?r.resources[0]:"",l=Lx(o);l&&(i=l.send)}}return!n||!i?(t(void 0,424),QE):n.query(e,i,t)().abort}const ZE="iconify2",Zp="iconify",F3=Zp+"-count",eb=Zp+"-version",k3=36e5,WG=168,XG=50;function Nx(r,e){try{return r.getItem(e)}catch{}}function dS(r,e,t){try{return r.setItem(e,t),!0}catch{}}function tb(r,e){try{r.removeItem(e)}catch{}}function Fx(r,e){return dS(r,F3,e.toString())}function kx(r){return parseInt(Nx(r,F3))||0}const S1={local:!0,session:!0},U3={local:new Set,session:new Set};let fS=!1;function JG(r){fS=r}let _g=typeof window>"u"?{}:window;function j3(r){const e=r+"Storage";try{if(_g&&_g[e]&&typeof _g[e].length=="number")return _g[e]}catch{}S1[r]=!1}function z3(r,e){const t=j3(r);if(!t)return;const n=Nx(t,eb);if(n!==ZE){if(n){const l=kx(t);for(let u=0;u<l;u++)tb(t,Zp+u.toString())}dS(t,eb,ZE),Fx(t,0);return}const i=Math.floor(Date.now()/k3)-WG,s=l=>{const u=Zp+l.toString(),d=Nx(t,u);if(typeof d=="string"){try{const p=JSON.parse(d);if(typeof p=="object"&&typeof p.cached=="number"&&p.cached>i&&typeof p.provider=="string"&&typeof p.data=="object"&&typeof p.data.prefix=="string"&&e(p,l))return!0}catch{}tb(t,u)}};let o=kx(t);for(let l=o-1;l>=0;l--)s(l)||(l===o-1?(o--,Fx(t,o)):U3[r].add(l))}function H3(){if(!fS){JG(!0);for(const r in S1)z3(r,e=>{const t=e.data,n=e.provider,i=t.prefix,s=Uu(n,i);if(!lS(s,t).length)return!1;const o=t.lastModified||-1;return s.lastModifiedCached=s.lastModifiedCached?Math.min(s.lastModifiedCached,o):o,!0})}}function $G(r,e){const t=r.lastModifiedCached;if(t&&t>=e)return t===e;if(r.lastModifiedCached=e,t)for(const n in S1)z3(n,i=>{const s=i.data;return i.provider!==r.provider||s.prefix!==r.prefix||s.lastModified===e});return!0}function KG(r,e){fS||H3();function t(n){let i;if(!S1[n]||!(i=j3(n)))return;const s=U3[n];let o;if(s.size)s.delete(o=Array.from(s).shift());else if(o=kx(i),o>=XG||!Fx(i,o+1))return;const l={cached:Math.floor(Date.now()/k3),provider:r.provider,data:e};return dS(i,Zp+o.toString(),JSON.stringify(l))}e.lastModified&&!$G(r,e.lastModified)||Object.keys(e.icons).length&&(e.not_found&&(e=Object.assign({},e),delete e.not_found),t("local")||t("session"))}function nb(){}function YG(r){r.iconsLoaderFlag||(r.iconsLoaderFlag=!0,setTimeout(()=>{r.iconsLoaderFlag=!1,FG(r)}))}function qG(r){const e=[],t=[];return r.forEach(n=>{(n.match(R3)?e:t).push(n)}),{valid:e,invalid:t}}function _p(r,e,t,n){function i(){const s=r.pendingIcons;e.forEach(o=>{s&&s.delete(o),r.icons[o]||r.missing.add(o)})}if(t&&typeof t=="object")try{if(!lS(r,t).length){i();return}n&&KG(r,t)}catch(s){console.error(s)}i(),YG(r)}function rb(r,e){r instanceof Promise?r.then(t=>{e(t)}).catch(()=>{e(null)}):e(r)}function QG(r,e){r.iconsToLoad?r.iconsToLoad=r.iconsToLoad.concat(e).sort():r.iconsToLoad=e,r.iconsQueueFlag||(r.iconsQueueFlag=!0,setTimeout(()=>{r.iconsQueueFlag=!1;const{provider:t,prefix:n}=r,i=r.iconsToLoad;if(delete r.iconsToLoad,!i||!i.length)return;const s=r.loadIcon;if(r.loadIcons&&(i.length>1||!s)){rb(r.loadIcons(i,n,t),p=>{_p(r,i,p,!1)});return}
3967if(s){i.forEach(p=>{const m=s(p,n,t);rb(m,y=>{const v=y?{prefix:n,icons:{[p]:y}}:null;_p(r,[p],v,!1)})});return}const{valid:o,invalid:l}=qG(i);if(l.length&&_p(r,l,null,!1),!o.length)return;const u=n.match(R3)?Lx(t):null;if(!u){_p(r,o,null,!1);return}u.prepare(t,n,o).forEach(p=>{VG(t,p,m=>{_p(r,p.icons,m,!0)})})}))}const ZG=(r,e)=>{const t=jG(r,!0,B3()),n=NG(t);if(!n.pending.length){let u=!0;return e&&setTimeout(()=>{u&&e(n.loaded,n.missing,n.pending,nb)}),()=>{u=!1}}const i=Object.create(null),s=[];let o,l;return n.pending.forEach(u=>{const{provider:d,prefix:p}=u;if(p===l&&d===o)return;o=d,l=p,s.push(Uu(d,p));const m=i[d]||(i[d]=Object.create(null));m[p]||(m[p]=[])}),n.pending.forEach(u=>{const{provider:d,prefix:p,name:m}=u,y=Uu(d,p),v=y.pendingIcons||(y.pendingIcons=new Set);v.has(m)||(v.add(m),i[d][p].push(m))}),s.forEach(u=>{const d=i[u.provider][u.prefix];d.length&&QG(u,d)}),e?UG(e,n,s):nb};function eV(r,e){const t={...r};for(const n in e){const i=e[n],s=typeof i;n in O3?(i===null||i&&(s==="string"||s==="number"))&&(t[n]=i):s===typeof t[n]&&(t[n]=n==="rotate"?i%4:i)}return t}const tV=/[\s,]+/;function nV(r,e){e.split(tV).forEach(t=>{switch(t.trim()){case"horizontal":r.hFlip=!0;break;case"vertical":r.vFlip=!0;break}})}function rV(r,e=0){const t=r.replace(/^-?[0-9.]*/,"");function n(i){for(;i<0;)i+=4;return i%4}if(t===""){const i=parseInt(r);return isNaN(i)?0:n(i)}else if(t!==r){let i=0;switch(t){case"%":i=25;break;case"deg":i=90}if(i){let s=parseFloat(r.slice(0,r.length-t.length));return isNaN(s)?0:(s=s/i,s%1===0?n(s):0)}}return e}function iV(r,e){let t=r.indexOf("xlink:")===-1?"":' xmlns:xlink="http://www.w3.org/1999/xlink"';for(const n in e)t+=" "+n+'="'+e[n]+'"';return'<svg xmlns="http://www.w3.org/2000/svg"'+t+">"+r+"</svg>"}function sV(r){return r.replace(/"/g,"'").replace(/%/g,"%25").replace(/#/g,"%23").replace(/</g,"%3C").replace(/>/g,"%3E").replace(/\s+/g," ")}function oV(r){return"data:image/svg+xml,"+sV(r)}function aV(r){return'url("'+oV(r)+'")'}let Lp;function lV(){try{Lp=window.trustedTypes.createPolicy("iconify",{createHTML:r=>r})}catch{Lp=null}}function cV(r){return Lp===void 0&&lV(),Lp?Lp.createHTML(r):r}const G3={...D3,inline:!1},uV={xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink","aria-hidden":!0,role:"img"},hV={display:"inline-block"},Ux={backgroundColor:"currentColor"},V3={backgroundColor:"transparent"},ib={Image:"var(--svg)",Repeat:"no-repeat",Size:"100% 100%"},sb={WebkitMask:Ux,mask:Ux,background:V3};for(const r in sb){const e=sb[r];for(const t in ib)e[r+t]=ib[t]}const dV={...G3,inline:!0};function ob(r){return r+(r.match(/^[-0-9.]+$/)?"px":"")}const fV=(r,e,t)=>{const n=e.inline?dV:G3,i=eV(n,e),s=e.mode||"svg",o={},l=e.style||{},u={...s==="svg"?uV:{}};if(t){const A=M1(t,!1,!0);if(A){const M=["iconify"],T=["provider","prefix"];for(const I of T)A[I]&&M.push("iconify--"+A[I]);u.className=M.join(" ")}}for(let A in e){const M=e[A];if(M!==void 0)switch(A){case"icon":case"style":case"children":case"onLoad":case"mode":case"ssr":break;case"_ref":u.ref=M;break;case"className":u[A]=(u[A]?u[A]+" ":"")+M;break;case"inline":case"hFlip":case"vFlip":i[A]=M===!0||M==="true"||M===1;break;case"flip":typeof M=="string"&&nV(i,M);break;case"color":o.color=M;break;case"rotate":typeof M=="string"?i[A]=rV(M):typeof M=="number"&&(i[A]=M);break;case"ariaHidden":case"aria-hidden":M!==!0&&M!=="true"&&delete u["aria-hidden"];break;default:n[A]===void 0&&(u[A]=M)}}const d=SG(r,i),p=d.attributes;if(i.inline&&(o.verticalAlign="-0.125em"),s==="svg"){u.style={...o,...l},Object.assign(u,p);let A=0,M=e.id;return typeof M=="string"&&(M=M.replace(/-/g,"_")),u.dangerouslySetInnerHTML={__html:cV(bG(d.body,M?()=>M+"ID"+A++:"iconifyReact"))},z.createElement("svg",u)}const{body:m,width:y,height:v}=r,S=s==="mask"||(s==="bg"?!1:m.indexOf("currentColor")!==-1),E=iV(m,{...p,width:y+"",height:v+""});return u.style={...o,"--svg":aV(E),width:ob(p.width),height:ob(p.height),...hV,...S?Ux:V3,...l},z.createElement("span",u)};B3(!0);CG("",LG);if(typeof document<"u"&&typeof window<"u"){H3();const r=window;if(r.IconifyPreload!==void 0){const e=r.IconifyPreload,t="Invalid IconifyPreload syntax.";
3967typeof e=="object"&&e!==null&&(e instanceof Array?e:[e]).forEach(n=>{try{(typeof n!="object"||n===null||n instanceof Array||typeof n.icons!="object"||typeof n.prefix!="string"||!mG(n))&&console.error(t)}catch{console.error(t)}})}if(r.IconifyProviders!==void 0){const e=r.IconifyProviders;if(typeof e=="object"&&e!==null)for(let t in e){const n="IconifyProviders["+t+"] is invalid.";try{const i=e[t];if(typeof i!="object"||!i||i.resources===void 0)continue;TG(t,i)||console.error(n)}catch{console.error(n)}}}}function W3(r){const[e,t]=z.useState(!!r.ssr),[n,i]=z.useState({});function s(v){if(v){const S=r.icon;if(typeof S=="object")return{name:"",data:S};const E=KE(S);if(E)return{name:S,data:E}}return{name:""}}const[o,l]=z.useState(s(!!r.ssr));function u(){const v=n.callback;v&&(v(),i({}))}function d(v){if(JSON.stringify(o)!==JSON.stringify(v))return u(),l(v),!0}function p(){var v;const S=r.icon;if(typeof S=="object"){d({name:"",data:S});return}const E=KE(S);if(d({name:S,data:E}))if(E===void 0){const A=ZG([S],p);i({callback:A})}else E&&((v=r.onLoad)===null||v===void 0||v.call(r,S))}z.useEffect(()=>(t(!0),u),[]),z.useEffect(()=>{e&&p()},[r.icon,e]);const{name:m,data:y}=o;return y?fV({...aS,...y},r,m):r.children?r.children:z.createElement("span",{})}const Hn=z.forwardRef((r,e)=>W3({...r,_ref:e}));z.forwardRef((r,e)=>W3({inline:!0,...r,_ref:e}));const pV=()=>_.jsxs("div",{children:[_.jsx("h1",{className:"text-white text-3xl p-4 m-6",children:_.jsx("span",{className:"head-text text-white p-4",children:"Skills"})}),_.jsx("section",{id:"tech-skills",className:"d-container full-vh d-flex-col-center ",children:_.jsxs("div",{className:"micro-cards skill-cards d-flex","data-aos":"zoom-in",children:[_.jsxs("div",{className:"micro-card skill-card d-flex-col-center hover",children:[_.jsx("div",{children:_.jsx(Hn,{icon:"devicon:python",width:"40",height:"40",className:"rot"})}),_.jsx("span",{children:"Python"})]}),_.jsxs("div",{className:"micro-card skill-card d-flex-col-center hover",children:[_.jsx("div",{children:_.jsx(Hn,{icon:"vscode-icons:file-type-c",width:"40",height:"40",className:"rot"})}),_.jsx("span",{children:"C"})]}),_.jsxs("div",{className:"micro-card skill-card d-flex-col-center hover",children:[_.jsx("div",{children:_.jsx(Hn,{icon:"vscode-icons:file-type-cpp",width:"40",height:"40",className:"rot"})}),_.jsx("span",{children:"C++"})]}),_.jsxs("div",{className:"micro-card skill-card d-flex-col-center hover",children:[_.jsx("div",{children:_.jsx(Hn,{icon:"vscode-icons:file-type-sql",width:"40",height:"40",className:"rot"})}),_.jsx("span",{children:"SQL"})]}),_.jsxs("div",{className:"micro-card skill-card d-flex-col-center hover",children:[_.jsx(Hn,{icon:"devicon:matlab",width:"40",height:"40",className:"rot"}),_.jsx("span",{children:"MATLAB"})]}),_.jsxs("div",{className:"micro-card skill-card d-flex-col-center hover",children:[_.jsx("div",{children:_.jsx(Hn,{icon:"simple-icons:armkeil",width:"40",height:"40",className:"rot"})}),_.jsx("span",{children:"Keil"})]}),_.jsxs("div",{className:"micro-card skill-card d-flex-col-center hover",children:[_.jsx("div",{children:_.jsx(Hn,{icon:"skill-icons:bootstrap",width:"40",height:"40",className:"rot"})}),_.jsx("span",{children:"Bootstrap"})]}),_.jsxs("div",{className:"micro-card skill-card d-flex-col-center hover",children:[_.jsx("div",{children:_.jsx(Hn,{icon:"vscode-icons:file-type-html",width:"40",height:"40",className:"rot"})}),_.jsx("span",{children:"HTML"})]}),_.jsxs("div",{className:"micro-card skill-card d-flex-col-center hover",children:[_.jsx("div",{children:_.jsx(Hn,{icon:"vscode-icons:file-type-css",width:"40",height:"40",className:"rot"})}),_.jsx("span",{children:"CSS"})]}),_.jsxs("div",{className:"micro-card skill-card d-flex-col-center hover",children:[_.jsx("div",{children:_.jsx(Hn,{icon:"logos:javascript",width:"40",height:"40",className:"rot"})}),_.jsx("span",{children:"Javascript"})]}),_.jsxs("div",{className:"micro-card skill-card d-flex-col-center hover",children:[_.jsx("div",{children:_.jsx(Hn,{icon:"logos:pandas",width:"40",height:"40",className:"rot"})}),_.jsx("span",{className:"rmv",children:"Pandas"})]}),_.jsxs("div",{className:"micro-card skill-card d-flex-col-center hover",children:[_.jsx("div",{children:_.jsx(Hn,{icon:"devicon:numpy",width:"40",height:"40",className:"rot"})}),_.jsx("span",{children:"Numpy"})]}),_.jsxs("div",{className:"micro-card skill-card d-flex-col-center hover",children:[_.jsx("div",{children:_.jsx(Hn,{icon:"devicon:opencv",width:"40",height:"40",className:"rot"})}),_.jsx("span",{children:"OpenCV"})]}),_.jsxs("div",{className:"micro-card skill-card d-flex-col-center hover",children:[_.jsx("div",{children:_.jsx(Hn,{icon:"devicon:scikitlearn",width:"40",height:"40",className:"rot"})}),_.jsx("span",{children:"Sklearn"})]}),_.jsxs("div",{className:"micro-card skill-card d-flex-col-center hover",children:[_.jsx("div",{children:_.jsx(Hn,{icon:"devicon:pytorch",width:"40",height:"40",className:"rot"})}),_.jsx("span",{children:"Pytorch"})]}),_.jsxs("div",{className:"micro-card skill-card d-flex-col-center hover",children:[_.jsx("div",{children:_.jsx(Hn,{icon:"logos:seaborn-icon",width:"40",height:"40",className:"rot"})}),_.jsx("span",{children:"Seaborn"})]}),_.jsxs("div",{className:"micro-card skill-card d-flex-col-center hover",children:[_.jsx("div",{children:_.jsx(Hn,{icon:"logos:tensorflow",width:"40",height:"40",className:"rot"})}),_.jsx("span",{children:"Tensorflow"})]}),_.jsxs("div",{className:"micro-card skill-card d-flex-col-center hover",children:[_.jsx("div",{children:_.jsx(Hn,{icon:"skill-icons:selenium",width:"40",height:"40",className:"rot"})}),_.jsx("span",{children:"Selenium"})]}),_.jsxs("div",{className:"micro-card skill-card d-flex-col-center hover",children:[_.jsx("div",{children:_.jsx(Hn,{icon:"simple-icons:spacy",width:"40",height:"40",className:"rot"})}),_.jsx("span",{children:"Spacy"})]}),_.jsxs("div",{className:"micro-card skill-card d-flex-col-center hover",children:[_.jsx("div",{children:_.jsx(Hn,{icon:"logos:git-icon",width:"40",height:"40",className:"rot"})}),_.jsx("span",{children:"Git"})]}),_.jsxs("div",{className:"micro-card skill-card d-flex-col-center hover",children:[_.jsx("div",{children:_.jsx(Hn,{icon:"mdi:github",width:"40",height:"40",className:"rot"})}),_.jsx("span",{children:"Github"})]}),_.jsxs("div",{className:"micro-card skill-card d-flex-col-center hover",children:[_.jsx("div",{children:_.jsx(Hn,{icon:"logos:linux-tux",width:"40",height:"40",className:"rot"})}),_.jsx("span",{children:"Linux"})]}),_.jsxs("div",{className:"micro-card skill-card d-flex-col-center hover",children:[_.jsx(Hn,{icon:"devicon:vscode",width:"40",height:"40",className:"rot"}),_.jsx("span",{children:"VSCode"})]}),_.jsxs("div",{className:"micro-card skill-card d-flex-col-center hover",children:[_.jsx("div",{children:_.jsx(Hn,{icon:"logos:jupyter",width:"40",height:"40",className:"rot"})}),_.jsx("span",{children:"Jupyter"})]}),_.jsxs("div",{className:"micro-card skill-card d-flex-col-center hover",children:[_.jsx("div",{children:_.jsx(Hn,{icon:"vscode-icons:file-type-assembly",width:"40",height:"40",className:"rot"})}),_.jsx("span",{children:"Assembly"})]})]})})]}),mV=()=>_.jsxs("footer",{className:"c-space pt-7 pb-3 border-t border-black-300 flex justify-between items-center flex-wrap gap-5",children:[_.jsxs("div",{className:"text-white-500 flex gap-2",children:[_.jsx("p",{children:"Terms & Conditions"}),_.jsx("p",{children:"|"}),_.jsx("p",{children:"Privacy Policy"})]}),_.jsxs("div",{className:"flex gap-3",children:[_.jsx("div",{className:"social-icon",children:_.jsx("img",{src:"/assets/github.svg",alt:"github",className:"w-1/2 h-1/2",onClick:()=>window.open("https://github.com/DIVYANSHKATHURIA","_blank")})}),_.jsx("div",{className:"social-icon",children:_.jsx("img",{src:"/assets/linkedin.svg",alt:"linkedin",className:"w-1/2 h-1/2",onClick:()=>window.open("https://linkedin.com/in/divyansh-kathuria","_blank")})})]}),_.jsx("p",{className:"text-white-500",children:"© 2024 Divyansh Kathuria. All rights reserved."})]}),gV=({starCount:r=9e4,animationSpeed:e=4e-4})=>{const t=z.useRef(null),n={x:0,y:0};return z.useEffect(()=>{const i=new Gp,s=new _r(75,window.innerWidth/window.innerHeight,.1,1e3),o=new RM({alpha:!0,antialias:!0});o.setSize(window.innerWidth,window.innerHeight),t.current.appendChild(o.domElement);const l=new Jt,u=new Float32Array(r*3);for(let E=0;E<r*3;E++)u[E]=(Math.random()-.5)*2e3;l.setAttribute("position",new vn(u,3));const d=new _M().load("https://threejs.org/examples/textures/sprites/disc.png"),p=new lm({map:d,size:Math.min(2,window.innerWidth/800),transparent:!0,blending:Cg,depthWrite:!1}),m=new Jy(l,p);i.add(m),s.position.z=800;const y=E=>{n.x=E.clientX/window.innerWidth*2-1,n.y=-(E.clientY/window.innerHeight)*2+1};window.addEventListener("mousemove",y);const v=()=>{m.rotation.y+=e,m.rotation.x+=e/2,m.position.x+=(n.x*10-m.position.x)*.05,m.position.y+=(n.y*10-m.position.y)*.05;const E=m.geometry.attributes.position.array;for(let A=0;A<E.length;A+=3)E[A+1]-=.05,E[A+1]<-1e3&&(E[A+1]=1e3);m.geometry.attributes.position.needsUpdate=!0,o.render(i,s),requestAnimationFrame(v)};v();const S=()=>{o.setSize(window.innerWidth,window.innerHeight),s.aspect=window.innerWidth/window.innerHeight,s.updateProjectionMatrix()};return window.addEventListener("resize",S),()=>{t.current.removeChild(o.domElement),window.removeEventListener("resize",S),window.removeEventListener("mousemove",y),o.dispose(),i.clear()}},[r,e]),_.jsx("div",{ref:t,style:{width:"100%",height:"100vh"}})};function X3(r){var e,t,n="";if(typeof r=="string"||typeof r=="number")n+=r;else if(typeof r=="object")if(Array.isArray(r)){var i=r.length;for(e=0;e<i;e++)r[e]&&(t=X3(r[e]))&&(n&&(n+=" "),n+=t)}else for(t in r)r[t]&&(n&&(n+=" "),n+=t);return n}function yV(){for(var r,e,t=0,n="",i=arguments.length;t<i;t++)(r=arguments[t])&&(e=X3(r))&&(n&&(n+=" "),n+=e);return n}function vV({url:r,image:e,title:t,description:n,buttonText:i}){const s=o=>{window.open(o,"_blank")};return _.jsxs("div",{className:"relative max-w-sm w-full h-[500px] flex flex-col",children:[_.jsx("div",{className:"absolute inset-0 bg-gradient-to-r from-blue-500 to-teal-500 transform scale-[0.9] rounded-2xl blur-3xl"}
3967),_.jsxs("div",{className:"relative flex-grow shadow-xl bg-gray-900 border border-gray-800 px-4 py-8 overflow-hidden rounded-2xl flex flex-col z-10","data-aos":"zoom-in",children:[_.jsx("div",{className:"w-full h-40 mb-4 overflow-hidden rounded-lg z-10",children:_.jsx("img",{className:"w-full h-full object-cover z-100",src:e,alt:t})}),_.jsxs("div",{className:"flex-grow flex flex-col justify-between",children:[_.jsxs("div",{children:[_.jsx("h1",{className:"font-bold text-xl text-white mb-4",children:t}),_.jsx("p",{className:"font-normal text-base text-gray-300 mb-4",children:n})]}),_.jsx("button",{className:"w-full border px-4 py-2 rounded-lg border-gray-500 text-gray-300 hover:bg-gray-800 transition-colors",onClick:()=>s(r),children:i})]}),_.jsx(_V,{number:100})]})]})}const _V=({number:r=20})=>[...new Array(r).fill(!0)].map((e,t)=>_.jsx("span",{className:yV("meteor animate-meteor-effect absolute top-1/2 left-1/2 h-0.5 w-0.5 rounded-[9999px] bg-slate-500 shadow-[0_0_0_1px_#ffffff10] rotate-[215deg]"),style:{top:`${Math.floor(Math.random()*800+-400)}px`,left:`${Math.floor(Math.random()*800+-400)}px`,animationDelay:`${Math.random()*(.8-.2)+.2}s`,animationDuration:`${Math.floor(Math.random()*8+2)}s`}},t));class Sm{constructor(e=0,t="Network Error"){this.status=e,this.text=t}}const xV=()=>{if(!(typeof localStorage>"u"))return{get:r=>Promise.resolve(localStorage.getItem(r)),set:(r,e)=>Promise.resolve(localStorage.setItem(r,e)),remove:r=>Promise.resolve(localStorage.removeItem(r))}},Zr={origin:"https://api.emailjs.com",blockHeadless:!1,storageProvider:xV()},pS=r=>r?typeof r=="string"?{publicKey:r}:r.toString()==="[object Object]"?r:{}:{},MV=(r,e="https://api.emailjs.com")=>{if(!r)return;const t=pS(r);Zr.publicKey=t.publicKey,Zr.blockHeadless=t.blockHeadless,Zr.storageProvider=t.storageProvider,Zr.blockList=t.blockList,Zr.limitRate=t.limitRate,Zr.origin=t.origin||e},J3=async(r,e,t={})=>{const n=await fetch(Zr.origin+r,{method:"POST",headers:t,body:e}),i=await n.text(),s=new Sm(n.status,i);if(n.ok)return s;throw s},$3=(r,e,t)=>{if(!r||typeof r!="string")throw"The public key is required. Visit https://dashboard.emailjs.com/admin/account";if(!e||typeof e!="string")throw"The service ID is required. Visit https://dashboard.emailjs.com/admin";if(!t||typeof t!="string")throw"The template ID is required. Visit https://dashboard.emailjs.com/admin/templates"},SV=r=>{if(r&&r.toString()!=="[object Object]")throw"The template params have to be the object. Visit https://www.emailjs.com/docs/sdk/send/"},K3=r=>r.webdriver||!r.languages||r.languages.length===0,Y3=()=>new Sm(451,"Unavailable For Headless Browser"),wV=(r,e)=>{if(!Array.isArray(r))throw"The BlockList list has to be an array";if(typeof e!="string")throw"The BlockList watchVariable has to be a string"},AV=r=>{var e;return!((e=r.list)!=null&&e.length)||!r.watchVariable},EV=(r,e)=>r instanceof FormData?r.get(e):r[e],q3=(r,e)=>{if(AV(r))return!1;wV(r.list,r.watchVariable);const t=EV(e,r.watchVariable);return typeof t!="string"?!1:r.list.includes(t)},Q3=()=>new Sm(403,"Forbidden"),bV=(r,e)=>{if(typeof r!="number"||r<0)throw"The LimitRate throttle has to be a positive number";if(e&&typeof e!="string")throw"The LimitRate ID has to be a non-empty string"},CV=async(r,e,t)=>{const n=Number(await t.get(r)||0);return e-Date.now()+n},Z3=async(r,e,t)=>{if(!e.throttle||!t)return!1;bV(e.throttle,e.id);const n=e.id||r;return await CV(n,e.throttle,t)>0?!0:(await t.set(n,Date.now().toString()),!1)},eI=()=>new Sm(429,"Too Many Requests"),TV=async(r,e,t,n)=>{const i=pS(n),s=i.publicKey||Zr.publicKey,o=i.blockHeadless||Zr.blockHeadless,l=i.storageProvider||Zr.storageProvider,u={...Zr.blockList,...i.blockList},d={...Zr.limitRate,...i.limitRate};return o&&K3(navigator)?Promise.reject(Y3()):($3(s,r,e),SV(t),t&&q3(u,t)?Promise.reject(Q3()):await Z3(location.pathname,d,l)?Promise.reject(eI()):J3("/api/v1.0/email/send",JSON.stringify({lib_version:"4.4.1",user_id:s,service_id:r,template_id:e,template_params:t}),{"Content-type":"application/json"}))},IV=r=>{if(!r||r.nodeName!=="FORM")throw"The 3rd parameter is expected to be the HTML form element or the style selector of the form"},PV=r=>typeof r=="string"?document.querySelector(r):r,RV=async(r,e,t,n)=>{const i=pS(n),s=i.publicKey||Zr.publicKey,o=i.blockHeadless||Zr.blockHeadless,l=Zr.storageProvider||i.storageProvider,u={...Zr.blockList,...i.blockList},d={...Zr.limitRate,...i.limitRate};if(o&&K3(navigator))return Promise.reject(Y3());const p=PV(t);$3(s,r,e),IV(p);const m=new FormData(p);return q3(u,m)?Promise.reject(Q3()):await Z3(location.pathname,d,l)?Promise.reject(eI()):(m.append("lib_version","4.4.1"),m.append("service_id",r),m.append("template_id",e),m.append("user_id",s),J3("/api/v1.0/email/send-form",m))},BV={init:MV,send:TV,sendForm:RV,EmailJSResponseStatus:Sm},OV=()=>{const r=z.useRef(),[e,t]=z.useState(!1),[n,i]=z.useState({name:"",email:"",message:""}),s=({target:{name:l,value:u}})=>{i({...n,[l]:u})},o=async l=>{l.preventDefault(),t(!0);try{await BV.send("service_1djr0x9","template_96ins5i",{from_name:n.name,to_name:"Divyansh",from_email:n.email,to_email:"divy
3967[email protected]",message:n.message},"bfRYIlRou2NKcy59r"),t(!1),alert("Your message has been successfully sent!")}catch(u){t(!1),console.log(u),alert("Something went wrong!")}};return _.jsx("section",{className:"c-space my-20 relative",children:_.jsxs("div",{className:"relative min-h-screen flex items-center justify-center flex-col",children:[_.jsx("img",{src:"/assets/terminal.png",alt:"",className:"absolute inset-0 w-full h-full object-cover z-0"}),_.jsxs("div",{className:"contact-container z-10 bg-black/50 p-8 rounded-lg shadow-lg",children:[_.jsx("h3",{className:"head-text text-3xl text-white font-bold",children:"Let's Talk"}),_.jsx("p",{className:"text-lg text-gray-300 mt-4",children:"Have questions, opportunities, or just want to say hello? I'm always excited to connect and explore new ideas. Drop me a message using the form below, and I'll get back to you as soon as possible!"}),_.jsxs("form",{ref:r,onSubmit:o,className:"mt-12 flex flex-col space-y-7",children:[_.jsxs("label",{className:"space-y-3",children:[_.jsx("span",{className:"field-label text-white",children:"Full Name"}),_.jsx("input",{type:"text",name:"name",value:n.name,onChange:s,required:!0,className:"field-input p-3 rounded bg-gray-700 text-white w-full"})]}),_.jsxs("label",{className:"space-y-3",children:[_.jsx("span",{className:"field-label text-white",children:"Email"}),_.jsx("input",{type:"email",name:"email",value:n.email,onChange:s,required:!0,className:"field-input p-3 rounded bg-gray-700 text-white w-full"})]}),_.jsxs("label",{className:"space-y-3",children:[_.jsx("span",{className:"field-label text-white",children:"Your Message"}),_.jsx("textarea",{name:"message",value:n.message,onChange:s,required:!0,rows:5,className:"field-input p-3 rounded bg-gray-700 text-white w-full"})]}),_.jsx("button",{className:"field-btn bg-blue-600 text-white py-3 px-6 rounded hover:bg-blue-700 transition",type:"submit",disabled:e,children:e?"Sending...":"Send Message"})]})]})]})})},DV=()=>{const[r,e]=z.useState(!0),t=()=>{e(!0)};return _.jsxs(_.Fragment,{children:[_.jsx("div",{className:"fixed top-0 left-0 w-full h-full",children:_.jsx(gV,{})}),_.jsxs("main",{className:"relative",children:[!r&&_.jsx("div",{className:"fixed inset-0 flex items-center justify-center bg-black z-50",children:_.jsx("video",{src:"/start.mp4",className:"w-full h-full object-cover",autoPlay:!0,muted:!0,onEnded:t})}),_.jsxs("div",{className:`relative z-10 max-w-7xl mx-auto ${r?"opacity-100":"opacity-0"} transition-opacity duration-1000`,children:[_.jsx(FI,{}),_.jsx("div",{id:"home",children:_.jsx(oG,{})}),_.jsx("div",{id:"journey",children:_.jsx(aG,{})}),_.jsx("div",{id:"skills",children:_.jsx(pV,{})}),_.jsxs("div",{id:"my-work",children:[_.jsx("p",{className:"head-text text-white p-4",children:"My Work"}),_.jsx("div",{className:"flex flex-wrap justify-center gap-8 p-4",children:NI.map((n,i)=>_.jsx(vV,{image:n.image,title:n.title,description:n.description,buttonText:n.buttonText,url:n.url},i))})]}),_.jsxs("div",{id:"Contact",children:[_.jsx("p",{className:"head-text text-white p-4 mt-12",children:"Contact"}),_.jsx(OV,{})]}),_.jsx(mV,{})]})]})]})};DI.createRoot(document.getElementById("root")).render(_.jsx(z.StrictMode,{children:_.jsx(DV,{})}));

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.