@epigraph/configurator 2.2.6 → 2.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +98 -98
- package/dist/index.js +20 -20
- package/package.json +89 -89
package/dist/index.js
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
*
|
|
7
7
|
* This source code is licensed under the MIT license found in the
|
|
8
8
|
* LICENSE file in the root directory of this source tree.
|
|
9
|
-
*/var l$6=Symbol.for("react.element"),n$6=Symbol.for("react.portal"),p$8=Symbol.for("react.fragment"),q$
|
|
9
|
+
*/var l$6=Symbol.for("react.element"),n$6=Symbol.for("react.portal"),p$8=Symbol.for("react.fragment"),q$6=Symbol.for("react.strict_mode"),r$6=Symbol.for("react.profiler"),t$4=Symbol.for("react.provider"),u$5=Symbol.for("react.context"),v$3=Symbol.for("react.forward_ref"),w$3=Symbol.for("react.suspense"),x$2=Symbol.for("react.memo"),y$3=Symbol.for("react.lazy"),z$3=Symbol.iterator;function A$3(kt){return kt===null||typeof kt!="object"?null:(kt=z$3&&kt[z$3]||kt["@@iterator"],typeof kt=="function"?kt:null)}var B$4={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},C$4=Object.assign,D$3={};function E$4(kt,_e,Dt){this.props=kt,this.context=_e,this.refs=D$3,this.updater=Dt||B$4}E$4.prototype.isReactComponent={};E$4.prototype.setState=function(kt,_e){if(typeof kt!="object"&&typeof kt!="function"&&kt!=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,kt,_e,"setState")};E$4.prototype.forceUpdate=function(kt){this.updater.enqueueForceUpdate(this,kt,"forceUpdate")};function F$2(){}F$2.prototype=E$4.prototype;function G$4(kt,_e,Dt){this.props=kt,this.context=_e,this.refs=D$3,this.updater=Dt||B$4}var H$4=G$4.prototype=new F$2;H$4.constructor=G$4;C$4(H$4,E$4.prototype);H$4.isPureReactComponent=!0;var I$4=Array.isArray,J$2=Object.prototype.hasOwnProperty,K$3={current:null},L$3={key:!0,ref:!0,__self:!0,__source:!0};function M$3(kt,_e,Dt){var Vt,Gt={},zt=null,jt=null;if(_e!=null)for(Vt in _e.ref!==void 0&&(jt=_e.ref),_e.key!==void 0&&(zt=""+_e.key),_e)J$2.call(_e,Vt)&&!L$3.hasOwnProperty(Vt)&&(Gt[Vt]=_e[Vt]);var Ht=arguments.length-2;if(Ht===1)Gt.children=Dt;else if(1<Ht){for(var Wt=Array(Ht),qt=0;qt<Ht;qt++)Wt[qt]=arguments[qt+2];Gt.children=Wt}if(kt&&kt.defaultProps)for(Vt in Ht=kt.defaultProps,Ht)Gt[Vt]===void 0&&(Gt[Vt]=Ht[Vt]);return{$$typeof:l$6,type:kt,key:zt,ref:jt,props:Gt,_owner:K$3.current}}function N$4(kt,_e){return{$$typeof:l$6,type:kt.type,key:_e,ref:kt.ref,props:kt.props,_owner:kt._owner}}function O$3(kt){return typeof kt=="object"&&kt!==null&&kt.$$typeof===l$6}function escape$1(kt){var _e={"=":"=0",":":"=2"};return"$"+kt.replace(/[=:]/g,function(Dt){return _e[Dt]})}var P$5=/\/+/g;function Q$3(kt,_e){return typeof kt=="object"&&kt!==null&&kt.key!=null?escape$1(""+kt.key):_e.toString(36)}function R$3(kt,_e,Dt,Vt,Gt){var zt=typeof kt;(zt==="undefined"||zt==="boolean")&&(kt=null);var jt=!1;if(kt===null)jt=!0;else switch(zt){case"string":case"number":jt=!0;break;case"object":switch(kt.$$typeof){case l$6:case n$6:jt=!0}}if(jt)return jt=kt,Gt=Gt(jt),kt=Vt===""?"."+Q$3(jt,0):Vt,I$4(Gt)?(Dt="",kt!=null&&(Dt=kt.replace(P$5,"$&/")+"/"),R$3(Gt,_e,Dt,"",function(qt){return qt})):Gt!=null&&(O$3(Gt)&&(Gt=N$4(Gt,Dt+(!Gt.key||jt&&jt.key===Gt.key?"":(""+Gt.key).replace(P$5,"$&/")+"/")+kt)),_e.push(Gt)),1;if(jt=0,Vt=Vt===""?".":Vt+":",I$4(kt))for(var Ht=0;Ht<kt.length;Ht++){zt=kt[Ht];var Wt=Vt+Q$3(zt,Ht);jt+=R$3(zt,_e,Dt,Wt,Gt)}else if(Wt=A$3(kt),typeof Wt=="function")for(kt=Wt.call(kt),Ht=0;!(zt=kt.next()).done;)zt=zt.value,Wt=Vt+Q$3(zt,Ht++),jt+=R$3(zt,_e,Dt,Wt,Gt);else if(zt==="object")throw _e=String(kt),Error("Objects are not valid as a React child (found: "+(_e==="[object Object]"?"object with keys {"+Object.keys(kt).join(", ")+"}":_e)+"). If you meant to render a collection of children, use an array instead.");return jt}function S$4(kt,_e,Dt){if(kt==null)return kt;var Vt=[],Gt=0;return R$3(kt,Vt,"","",function(zt){return _e.call(Dt,zt,Gt++)}),Vt}function T$2(kt){if(kt._status===-1){var _e=kt._result;_e=_e(),_e.then(function(Dt){(kt._status===0||kt._status===-1)&&(kt._status=1,kt._result=Dt)},function(Dt){(kt._status===0||kt._status===-1)&&(kt._status=2,kt._result=Dt)}),kt._status===-1&&(kt._status=0,kt._result=_e)}if(kt._status===1)return kt._result.default;throw kt._result}var U$3={current:null},V$4={transition:null},W$3={ReactCurrentDispatcher:U$3,ReactCurrentBatchConfig:V$4,ReactCurrentOwner:K$3};react_production_min.Children={map:S$4,forEach:function(kt,_e,Dt){S$4(kt,function(){_e.apply(this,arguments)},Dt)},count:function(kt){var _e=0;return S$4(kt,function(){_e++}),_e},toArray:function(kt){return S$4(kt,function(_e){return _e})||[]},only:function(kt){if(!O$3(kt))throw Error("React.Children.only expected to receive a single React element child.");return kt}};react_production_min.Component=E$4;react_production_min.Fragment=p$8;react_production_min.Profiler=r$6;react_production_min.PureComponent=G$4;react_production_min.StrictMode=q$6;react_production_min.Suspense=w$3;react_production_min.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=W$3;react_production_min.cloneElement=function(kt,_e,Dt){if(kt==null)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+kt+".");var Vt=C$4({},kt.props),Gt=kt.key,zt=kt.ref,jt=kt._owner;if(_e!=null){if(_e.ref!==void 0&&(zt=_e.ref,jt=K$3.current),_e.key!==void 0&&(Gt=""+_e.key),kt.type&&kt.type.defaultProps)var Ht=kt.type.defaultProps;for(Wt in _e)J$2.call(_e,Wt)&&!L$3.hasOwnProperty(Wt)&&(Vt[Wt]=_e[Wt]===void 0&&Ht!==void 0?Ht[Wt]:_e[Wt])}var Wt=arguments.length-2;if(Wt===1)Vt.children=Dt;else if(1<Wt){Ht=Array(Wt);for(var qt=0;qt<Wt;qt++)Ht[qt]=arguments[qt+2];Vt.children=Ht}return{$$typeof:l$6,type:kt.type,key:Gt,ref:zt,props:Vt,_owner:jt}};react_production_min.createContext=function(kt){return kt={$$typeof:u$5,_currentValue:kt,_currentValue2:kt,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null},kt.Provider={$$typeof:t$4,_context:kt},kt.Consumer=kt};react_production_min.createElement=M$3;react_production_min.createFactory=function(kt){var _e=M$3.bind(null,kt);return _e.type=kt,_e};react_production_min.createRef=function(){return{current:null}};react_production_min.forwardRef=function(kt){return{$$typeof:v$3,render:kt}};react_production_min.isValidElement=O$3;react_production_min.lazy=function(kt){return{$$typeof:y$3,_payload:{_status:-1,_result:kt},_init:T$2}};react_production_min.memo=function(kt,_e){return{$$typeof:x$2,type:kt,compare:_e===void 0?null:_e}};react_production_min.startTransition=function(kt){var _e=V$4.transition;V$4.transition={};try{kt()}finally{V$4.transition=_e}};react_production_min.unstable_act=function(){throw Error("act(...) is not supported in production builds of React.")};react_production_min.useCallback=function(kt,_e){return U$3.current.useCallback(kt,_e)};react_production_min.useContext=function(kt){return U$3.current.useContext(kt)};react_production_min.useDebugValue=function(){};react_production_min.useDeferredValue=function(kt){return U$3.current.useDeferredValue(kt)};react_production_min.useEffect=function(kt,_e){return U$3.current.useEffect(kt,_e)};react_production_min.useId=function(){return U$3.current.useId()};react_production_min.useImperativeHandle=function(kt,_e,Dt){return U$3.current.useImperativeHandle(kt,_e,Dt)};react_production_min.useInsertionEffect=function(kt,_e){return U$3.current.useInsertionEffect(kt,_e)};react_production_min.useLayoutEffect=function(kt,_e){return U$3.current.useLayoutEffect(kt,_e)};react_production_min.useMemo=function(kt,_e){return U$3.current.useMemo(kt,_e)};react_production_min.useReducer=function(kt,_e,Dt){return U$3.current.useReducer(kt,_e,Dt)};react_production_min.useRef=function(kt){return U$3.current.useRef(kt)};react_production_min.useState=function(kt){return U$3.current.useState(kt)};react_production_min.useSyncExternalStore=function(kt,_e,Dt){return U$3.current.useSyncExternalStore(kt,_e,Dt)};react_production_min.useTransition=function(){return U$3.current.useTransition()};react_production_min.version="18.2.0";react.exports=react_production_min;var reactExports=react.exports;const React=getDefaultExportFromCjs(reactExports);/**
|
|
10
10
|
* @license React
|
|
11
11
|
* react-jsx-runtime.production.min.js
|
|
12
12
|
*
|
|
@@ -14,25 +14,25 @@
|
|
|
14
14
|
*
|
|
15
15
|
* This source code is licensed under the MIT license found in the
|
|
16
16
|
* LICENSE file in the root directory of this source tree.
|
|
17
|
-
*/var f$5=reactExports,k$
|
|
17
|
+
*/var f$5=reactExports,k$3=Symbol.for("react.element"),l$5=Symbol.for("react.fragment"),m$5=Object.prototype.hasOwnProperty,n$5=f$5.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,p$7={key:!0,ref:!0,__self:!0,__source:!0};function q$5(kt,_e,Dt){var Vt,Gt={},zt=null,jt=null;Dt!==void 0&&(zt=""+Dt),_e.key!==void 0&&(zt=""+_e.key),_e.ref!==void 0&&(jt=_e.ref);for(Vt in _e)m$5.call(_e,Vt)&&!p$7.hasOwnProperty(Vt)&&(Gt[Vt]=_e[Vt]);if(kt&&kt.defaultProps)for(Vt in _e=kt.defaultProps,_e)Gt[Vt]===void 0&&(Gt[Vt]=_e[Vt]);return{$$typeof:k$3,type:kt,key:zt,ref:jt,props:Gt,_owner:n$5.current}}reactJsxRuntime_production_min.Fragment=l$5;reactJsxRuntime_production_min.jsx=q$5;reactJsxRuntime_production_min.jsxs=q$5;jsxRuntime.exports=reactJsxRuntime_production_min;var jsxRuntimeExports=jsxRuntime.exports;const addCoreEventListener=(kt,_e,Dt)=>{const Vt=kt.uiSceneStore(zt=>zt.coreWCRef),Gt=reactExports.useCallback(function(zt){Dt(zt.data)},[_e,Dt,Vt]);reactExports.useEffect(()=>{if(Vt)return Vt.addEventListener(_e,Gt),()=>{Vt&&Vt.removeEventListener(_e,Gt)}},[_e,Vt])};var t$3=(kt=>(kt.Release="release",kt.Staging="staging",kt.Dev="dev",kt))(t$3||{});let a$1=class{constructor(_e){this.context="EPIGRAPH-LOGGER",this._allModes={release:{name:"release",allows:["error"]},staging:{name:"staging",allows:["warn","error"]},dev:{name:"dev",allows:["info","warn","error"]}},this._currentMode="release",_e&&(this.context=_e.toLocaleUpperCase())}get modes(){return this._allModes}setCurrentMode(_e){if(!Object.keys(this._allModes).includes(_e)){console.warn(`"${_e}": is not a valid logger mode`);return}this._currentMode=_e}_isLogTypeAllowedInCurrentMode(_e){return this._allModes[this._currentMode].allows.includes(_e)}info({title:_e,details:Dt="",contextOverride:Vt=void 0}){if(!this._isLogTypeAllowedInCurrentMode("info"))return;const Gt=Vt||this.context;console.groupCollapsed(`[${Gt}]: ${_e}`),console.log(Dt),console.groupCollapsed("Traceback..."),console.trace(),console.groupEnd(),console.groupEnd()}warn({title:_e,details:Dt="",contextOverride:Vt=void 0}){if(!this._isLogTypeAllowedInCurrentMode("warn"))return;const Gt=Vt||this.context;console.groupCollapsed(`%c[${Gt}]: ${_e}`,"color: orange;"),console.warn(Dt),console.groupCollapsed("Traceback..."),console.trace(),console.groupEnd(),console.groupEnd()}error({title:_e,details:Dt="",contextOverride:Vt=void 0}){if(!this._isLogTypeAllowedInCurrentMode("error"))return;const Gt=Vt||this.context;console.groupCollapsed(`%c[${Gt}]: ${_e}`,"color: red;"),console.error(Dt),console.groupCollapsed("Traceback..."),console.trace(),console.groupEnd(),console.groupEnd()}table({title:_e,details:Dt={},contextOverride:Vt=void 0,logType:Gt="info"}){if(!this._isLogTypeAllowedInCurrentMode(Gt))return;const zt=Vt||this.context;console.groupCollapsed(`[${zt}]: ${_e}`),console.table(Dt),console.groupCollapsed("Traceback..."),console.trace(),console.groupEnd(),console.groupEnd()}group({title:_e,contextOverride:Dt=void 0,logType:Vt="info"}){if(!this._isLogTypeAllowedInCurrentMode(Vt))return;const Gt=Dt||this.context;console.group(`%c ${Gt} GROUP`,_e)}groupCollapsed({title:_e,contextOverride:Dt=void 0,logType:Vt="info"}){if(!this._isLogTypeAllowedInCurrentMode(Vt))return;const Gt=Dt||this.context;console.groupCollapsed(`%c ${Gt} GROUP`,_e)}groupEnd(){this._isLogTypeAllowedInCurrentMode("info")&&(console.log("----------------------------------"),console.groupEnd())}};var c$7=(kt=>(kt.type="t",kt.identifierType="idt",kt.identifier="id",kt.epigraphSessionId="eid",kt.action="a",kt))(c$7||{});let l$4=class{constructor(_e=window.location.href){this._baseUrl=_e}get baseUrl(){return this._baseUrl}set baseUrl(_e){this._baseUrl=_e}getParameterInUrl(_e){const Dt=new URL(this._baseUrl);let Vt=Dt.searchParams.get(_e);return Vt||(Vt=this.decryptQueryParametersInUrl(Dt).searchParams.get(_e)),Vt}hasParameterInUrl(_e){return!!this.getParameterInUrl(_e)}generateQrCodeUrl(_e={},Dt=!0){const Vt=new URL(this._baseUrl);for(const[Gt,zt]of Object.entries(_e))Vt.searchParams.set(Gt,zt);return Dt&&this.encryptQueryParametersInUrl(Vt),Vt}encryptQueryParametersInUrl(_e){return _e.search=btoa(_e.search),_e}decryptQueryParametersInUrl(_e){let Dt=_e;try{_e.search=atob(_e.search.slice(1)),Dt=_e}catch(Vt){window.epigraph.logger.info({title:`Couldn't decode URL: ${_e}`,details:Vt})}return Dt}};var s$2=(kt=>(kt.DEVELOPMENT="development",kt.STAGING="staging",kt.PRODUCTION="production",kt))(s$2||{});let g$3=class Wp{constructor(_e){if(this._loggerContext="EPIGRAPH",this._isReady=!1,this._logger=new a$1("EPIGRAPH LOGGER"),this._environment=s$2.DEVELOPMENT,this._activeComponentsInSession=new Map,this._staleComponentsInSession=new Map,this._isSessionWebGL2Compatible=!1,window.epigraph)return window.epigraph.registerActiveComponent(_e),window.epigraph;this._isSessionWebGL2Compatible=this._checkIfWebGL2IsAvailable(),window.epigraph=this,window.epigraph.registerActiveComponent(_e),this.logBranding(),this._initializer=_e,this._environment=this._initializer.environment;const Dt=this.getLoggerModeNameFromEnvironment();this._logger.setCurrentMode(Dt),this._urlProcessor=new l$4,this.id=Wp.safeGenerateUuid();const Vt=this._urlProcessor.getParameterInUrl(c$7.epigraphSessionId);this._epigraphSessionId=Vt??Wp.safeGenerateUuid(),this._logger.info({title:"Epigraph Object Ready!!",details:this,contextOverride:this._loggerContext}),this._isReady=!0}get isReady(){return this._isReady}get logger(){return this._logger}get urlProcessor(){return this._urlProcessor}get epigraphSessionId(){return this._epigraphSessionId}get environment(){return this._environment}get initializer(){return this._initializer}get activeComponentsInSession(){return this._activeComponentsInSession}get staleComponentsInSession(){return this._staleComponentsInSession}isSessionWebGL2Compatible(){return this._isSessionWebGL2Compatible}logBranding(){console.group("Powered by: "),console.log("%cEPIGRAPH","font-weight: bold; font-size: 50px; text-shadow: 3px 3px 0 rgb(100,100,100)"),console.log("Visit for more details: www.epigraph.us"),console.groupEnd()}_checkIfWebGL2IsAvailable(){try{const _e=document.createElement("canvas");return!!(window.WebGL2RenderingContext&&_e.getContext("webgl2"))}catch{return!1}}registerActiveComponent(_e){this._activeComponentsInSession.set(_e.uuid,_e),this._logger.info({title:"Registered a new Active Component",details:_e,contextOverride:this._loggerContext})}deregisterActiveComponent(_e){const Dt=this._activeComponentsInSession.get(_e.uuid);Dt&&(this._staleComponentsInSession.set(Dt.uuid,Dt),this._activeComponentsInSession.delete(Dt.uuid),this._logger.info({title:"Deregistered a new Active Component",details:_e,contextOverride:this._loggerContext}))}getLoggerModeNameFromEnvironment(){let _e=t$3.Dev;return this._environment===s$2.STAGING?_e=t$3.Staging:this._environment===s$2.PRODUCTION&&(_e=t$3.Release),_e}static safeGenerateUuid(){let _e="";try{_e=crypto.randomUUID()}catch{console.error("crypto not available. Not generating a UUID")}return _e}static generateXPath(_e){let Dt="",Vt=_e;for(;Vt;){let Gt=1,zt=Vt.previousSibling;for(;zt;)zt.nodeName===Vt.nodeName&&Gt++,zt=zt.previousSibling;Dt=`/${Vt.nodeName.toLowerCase()+(Gt>1?`[${Gt}]`:"")}${Dt}`,Vt=Vt.parentNode}return Dt}};/**
|
|
18
18
|
* @license
|
|
19
19
|
* Copyright 2019 Google LLC
|
|
20
20
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
21
|
-
*/const U$2=globalThis,k$
|
|
21
|
+
*/const U$2=globalThis,k$2=U$2.ShadowRoot&&(U$2.ShadyCSS===void 0||U$2.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,D$2=Symbol(),B$3=new WeakMap;let Q$2=class{constructor(_e,Dt,Vt){if(this._$cssResult$=!0,Vt!==D$2)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=_e,this.t=Dt}get styleSheet(){let _e=this.o;const Dt=this.t;if(k$2&&_e===void 0){const Vt=Dt!==void 0&&Dt.length===1;Vt&&(_e=B$3.get(Dt)),_e===void 0&&((this.o=_e=new CSSStyleSheet).replaceSync(this.cssText),Vt&&B$3.set(Dt,_e))}return _e}toString(){return this.cssText}};const it$1=kt=>new Q$2(typeof kt=="string"?kt:kt+"",void 0,D$2),Ct$1=(kt,..._e)=>{const Dt=kt.length===1?kt[0]:_e.reduce((Vt,Gt,zt)=>Vt+(jt=>{if(jt._$cssResult$===!0)return jt.cssText;if(typeof jt=="number")return jt;throw Error("Value passed to 'css' function must be a 'css' function result: "+jt+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(Gt)+kt[zt+1],kt[0]);return new Q$2(Dt,kt,D$2)},rt$1=(kt,_e)=>{if(k$2)kt.adoptedStyleSheets=_e.map(Dt=>Dt instanceof CSSStyleSheet?Dt:Dt.styleSheet);else for(const Dt of _e){const Vt=document.createElement("style"),Gt=U$2.litNonce;Gt!==void 0&&Vt.setAttribute("nonce",Gt),Vt.textContent=Dt.cssText,kt.appendChild(Vt)}},I$3=k$2?kt=>kt:kt=>kt instanceof CSSStyleSheet?(_e=>{let Dt="";for(const Vt of _e.cssRules)Dt+=Vt.cssText;return it$1(Dt)})(kt):kt;/**
|
|
22
22
|
* @license
|
|
23
23
|
* Copyright 2017 Google LLC
|
|
24
24
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
25
|
-
*/const{is:nt$1,defineProperty:ot$1,getOwnPropertyDescriptor:ht$1,getOwnPropertyNames:at$1,getOwnPropertySymbols:lt$1,getPrototypeOf:ct$1}=Object,M$2=globalThis,V$3=M$2.trustedTypes,dt$1=V$3?V$3.emptyScript:"",pt$1=M$2.reactiveElementPolyfillSupport,S$
|
|
25
|
+
*/const{is:nt$1,defineProperty:ot$1,getOwnPropertyDescriptor:ht$1,getOwnPropertyNames:at$1,getOwnPropertySymbols:lt$1,getPrototypeOf:ct$1}=Object,M$2=globalThis,V$3=M$2.trustedTypes,dt$1=V$3?V$3.emptyScript:"",pt$1=M$2.reactiveElementPolyfillSupport,S$3=(kt,_e)=>kt,R$2={toAttribute(kt,_e){switch(_e){case Boolean:kt=kt?dt$1:null;break;case Object:case Array:kt=kt==null?kt:JSON.stringify(kt)}return kt},fromAttribute(kt,_e){let Dt=kt;switch(_e){case Boolean:Dt=kt!==null;break;case Number:Dt=kt===null?null:Number(kt);break;case Object:case Array:try{Dt=JSON.parse(kt)}catch{Dt=null}}return Dt}},X$3=(kt,_e)=>!nt$1(kt,_e),W$2={attribute:!0,type:String,converter:R$2,reflect:!1,useDefault:!1,hasChanged:X$3};Symbol.metadata??=Symbol("metadata"),M$2.litPropertyMetadata??=new WeakMap;let y$2=class extends HTMLElement{static addInitializer(_e){this._$Ei(),(this.l??=[]).push(_e)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(_e,Dt=W$2){if(Dt.state&&(Dt.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(_e)&&((Dt=Object.create(Dt)).wrapped=!0),this.elementProperties.set(_e,Dt),!Dt.noAccessor){const Vt=Symbol(),Gt=this.getPropertyDescriptor(_e,Vt,Dt);Gt!==void 0&&ot$1(this.prototype,_e,Gt)}}static getPropertyDescriptor(_e,Dt,Vt){const{get:Gt,set:zt}=ht$1(this.prototype,_e)??{get(){return this[Dt]},set(jt){this[Dt]=jt}};return{get:Gt,set(jt){const Ht=Gt?.call(this);zt?.call(this,jt),this.requestUpdate(_e,Ht,Vt)},configurable:!0,enumerable:!0}}static getPropertyOptions(_e){return this.elementProperties.get(_e)??W$2}static _$Ei(){if(this.hasOwnProperty(S$3("elementProperties")))return;const _e=ct$1(this);_e.finalize(),_e.l!==void 0&&(this.l=[..._e.l]),this.elementProperties=new Map(_e.elementProperties)}static finalize(){if(this.hasOwnProperty(S$3("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(S$3("properties"))){const Dt=this.properties,Vt=[...at$1(Dt),...lt$1(Dt)];for(const Gt of Vt)this.createProperty(Gt,Dt[Gt])}const _e=this[Symbol.metadata];if(_e!==null){const Dt=litPropertyMetadata.get(_e);if(Dt!==void 0)for(const[Vt,Gt]of Dt)this.elementProperties.set(Vt,Gt)}this._$Eh=new Map;for(const[Dt,Vt]of this.elementProperties){const Gt=this._$Eu(Dt,Vt);Gt!==void 0&&this._$Eh.set(Gt,Dt)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(_e){const Dt=[];if(Array.isArray(_e)){const Vt=new Set(_e.flat(1/0).reverse());for(const Gt of Vt)Dt.unshift(I$3(Gt))}else _e!==void 0&&Dt.push(I$3(_e));return Dt}static _$Eu(_e,Dt){const Vt=Dt.attribute;return Vt===!1?void 0:typeof Vt=="string"?Vt:typeof _e=="string"?_e.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise(_e=>this.enableUpdating=_e),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach(_e=>_e(this))}addController(_e){(this._$EO??=new Set).add(_e),this.renderRoot!==void 0&&this.isConnected&&_e.hostConnected?.()}removeController(_e){this._$EO?.delete(_e)}_$E_(){const _e=new Map,Dt=this.constructor.elementProperties;for(const Vt of Dt.keys())this.hasOwnProperty(Vt)&&(_e.set(Vt,this[Vt]),delete this[Vt]);_e.size>0&&(this._$Ep=_e)}createRenderRoot(){const _e=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return rt$1(_e,this.constructor.elementStyles),_e}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach(_e=>_e.hostConnected?.())}enableUpdating(_e){}disconnectedCallback(){this._$EO?.forEach(_e=>_e.hostDisconnected?.())}attributeChangedCallback(_e,Dt,Vt){this._$AK(_e,Vt)}_$ET(_e,Dt){const Vt=this.constructor.elementProperties.get(_e),Gt=this.constructor._$Eu(_e,Vt);if(Gt!==void 0&&Vt.reflect===!0){const zt=(Vt.converter?.toAttribute!==void 0?Vt.converter:R$2).toAttribute(Dt,Vt.type);this._$Em=_e,zt==null?this.removeAttribute(Gt):this.setAttribute(Gt,zt),this._$Em=null}}_$AK(_e,Dt){const Vt=this.constructor,Gt=Vt._$Eh.get(_e);if(Gt!==void 0&&this._$Em!==Gt){const zt=Vt.getPropertyOptions(Gt),jt=typeof zt.converter=="function"?{fromAttribute:zt.converter}:zt.converter?.fromAttribute!==void 0?zt.converter:R$2;this._$Em=Gt,this[Gt]=jt.fromAttribute(Dt,zt.type)??this._$Ej?.get(Gt)??null,this._$Em=null}}requestUpdate(_e,Dt,Vt){if(_e!==void 0){const Gt=this.constructor,zt=this[_e];if(Vt??=Gt.getPropertyOptions(_e),!((Vt.hasChanged??X$3)(zt,Dt)||Vt.useDefault&&Vt.reflect&&zt===this._$Ej?.get(_e)&&!this.hasAttribute(Gt._$Eu(_e,Vt))))return;this.C(_e,Dt,Vt)}this.isUpdatePending===!1&&(this._$ES=this._$EP())}C(_e,Dt,{useDefault:Vt,reflect:Gt,wrapped:zt},jt){Vt&&!(this._$Ej??=new Map).has(_e)&&(this._$Ej.set(_e,jt??Dt??this[_e]),zt!==!0||jt!==void 0)||(this._$AL.has(_e)||(this.hasUpdated||Vt||(Dt=void 0),this._$AL.set(_e,Dt)),Gt===!0&&this._$Em!==_e&&(this._$Eq??=new Set).add(_e))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(Dt){Promise.reject(Dt)}const _e=this.scheduleUpdate();return _e!=null&&await _e,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(const[Gt,zt]of this._$Ep)this[Gt]=zt;this._$Ep=void 0}const Vt=this.constructor.elementProperties;if(Vt.size>0)for(const[Gt,zt]of Vt){const{wrapped:jt}=zt,Ht=this[Gt];jt!==!0||this._$AL.has(Gt)||Ht===void 0||this.C(Gt,void 0,zt,Ht)}}let _e=!1;const Dt=this._$AL;try{_e=this.shouldUpdate(Dt),_e?(this.willUpdate(Dt),this._$EO?.forEach(Vt=>Vt.hostUpdate?.()),this.update(Dt)):this._$EM()}catch(Vt){throw _e=!1,this._$EM(),Vt}_e&&this._$AE(Dt)}willUpdate(_e){}_$AE(_e){this._$EO?.forEach(Dt=>Dt.hostUpdated?.()),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(_e)),this.updated(_e)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(_e){return!0}update(_e){this._$Eq&&=this._$Eq.forEach(Dt=>this._$ET(Dt,this[Dt])),this._$EM()}updated(_e){}firstUpdated(_e){}};y$2.elementStyles=[],y$2.shadowRootOptions={mode:"open"},y$2[S$3("elementProperties")]=new Map,y$2[S$3("finalized")]=new Map,pt$1?.({ReactiveElement:y$2}),(M$2.reactiveElementVersions??=[]).push("2.1.0");/**
|
|
26
26
|
* @license
|
|
27
27
|
* Copyright 2017 Google LLC
|
|
28
28
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
29
|
-
*/const L$2=globalThis,H$3=L$2.trustedTypes,q$
|
|
30
|
-
\f\r]`,E$3=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,J$1=/-->/g,K$2=/>/g,f$4=RegExp(`>|${N$
|
|
31
|
-
\f\r"'\`<>=]|("|')|))|$)`,"g"),Z$3=/'/g,F$1=/"/g,et$3=/^(?:script|style|textarea|title)$/i,_t$1=kt=>(_e,...Dt)=>({_$litType$:kt,strings:_e,values:Dt}),xt$1=_t$1(1),g$
|
|
29
|
+
*/const L$2=globalThis,H$3=L$2.trustedTypes,q$4=H$3?H$3.createPolicy("lit-html",{createHTML:kt=>kt}):void 0,Y$2="$lit$",_$2=`lit$${Math.random().toFixed(9).slice(2)}$`,tt$1="?"+_$2,ut$1=`<${tt$1}>`,m$4=document,b$1=()=>m$4.createComment(""),w$2=kt=>kt===null||typeof kt!="object"&&typeof kt!="function",j$1=Array.isArray,$t=kt=>j$1(kt)||typeof kt?.[Symbol.iterator]=="function",N$3=`[
|
|
30
|
+
\f\r]`,E$3=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,J$1=/-->/g,K$2=/>/g,f$4=RegExp(`>|${N$3}(?:([^\\s"'>=/]+)(${N$3}*=${N$3}*(?:[^
|
|
31
|
+
\f\r"'\`<>=]|("|')|))|$)`,"g"),Z$3=/'/g,F$1=/"/g,et$3=/^(?:script|style|textarea|title)$/i,_t$1=kt=>(_e,...Dt)=>({_$litType$:kt,strings:_e,values:Dt}),xt$1=_t$1(1),g$2=Symbol.for("lit-noChange"),c$6=Symbol.for("lit-nothing"),G$3=new WeakMap,A$2=m$4.createTreeWalker(m$4,129);function st$1(kt,_e){if(!j$1(kt)||!kt.hasOwnProperty("raw"))throw Error("invalid template strings array");return q$4!==void 0?q$4.createHTML(_e):_e}const ft$1=(kt,_e)=>{const Dt=kt.length-1,Vt=[];let Gt,zt=_e===2?"<svg>":_e===3?"<math>":"",jt=E$3;for(let Ht=0;Ht<Dt;Ht++){const Wt=kt[Ht];let qt,Xt,Kt=-1,Yt=0;for(;Yt<Wt.length&&(jt.lastIndex=Yt,Xt=jt.exec(Wt),Xt!==null);)Yt=jt.lastIndex,jt===E$3?Xt[1]==="!--"?jt=J$1:Xt[1]!==void 0?jt=K$2:Xt[2]!==void 0?(et$3.test(Xt[2])&&(Gt=RegExp("</"+Xt[2],"g")),jt=f$4):Xt[3]!==void 0&&(jt=f$4):jt===f$4?Xt[0]===">"?(jt=Gt??E$3,Kt=-1):Xt[1]===void 0?Kt=-2:(Kt=jt.lastIndex-Xt[2].length,qt=Xt[1],jt=Xt[3]===void 0?f$4:Xt[3]==='"'?F$1:Z$3):jt===F$1||jt===Z$3?jt=f$4:jt===J$1||jt===K$2?jt=E$3:(jt=f$4,Gt=void 0);const Zt=jt===f$4&&kt[Ht+1].startsWith("/>")?" ":"";zt+=jt===E$3?Wt+ut$1:Kt>=0?(Vt.push(qt),Wt.slice(0,Kt)+Y$2+Wt.slice(Kt)+_$2+Zt):Wt+_$2+(Kt===-2?Ht:Zt)}return[st$1(kt,zt+(kt[Dt]||"<?>")+(_e===2?"</svg>":_e===3?"</math>":"")),Vt]};let C$3=class Tv{constructor({strings:_e,_$litType$:Dt},Vt){let Gt;this.parts=[];let zt=0,jt=0;const Ht=_e.length-1,Wt=this.parts,[qt,Xt]=ft$1(_e,Dt);if(this.el=Tv.createElement(qt,Vt),A$2.currentNode=this.el.content,Dt===2||Dt===3){const Kt=this.el.content.firstChild;Kt.replaceWith(...Kt.childNodes)}for(;(Gt=A$2.nextNode())!==null&&Wt.length<Ht;){if(Gt.nodeType===1){if(Gt.hasAttributes())for(const Kt of Gt.getAttributeNames())if(Kt.endsWith(Y$2)){const Yt=Xt[jt++],Zt=Gt.getAttribute(Kt).split(_$2),Jt=/([.?@])?(.*)/.exec(Yt);Wt.push({type:1,index:zt,name:Jt[2],strings:Zt,ctor:Jt[1]==="."?mt$1:Jt[1]==="?"?yt$1:Jt[1]==="@"?gt$1:T$1}),Gt.removeAttribute(Kt)}else Kt.startsWith(_$2)&&(Wt.push({type:6,index:zt}),Gt.removeAttribute(Kt));if(et$3.test(Gt.tagName)){const Kt=Gt.textContent.split(_$2),Yt=Kt.length-1;if(Yt>0){Gt.textContent=H$3?H$3.emptyScript:"";for(let Zt=0;Zt<Yt;Zt++)Gt.append(Kt[Zt],b$1()),A$2.nextNode(),Wt.push({type:2,index:++zt});Gt.append(Kt[Yt],b$1())}}}else if(Gt.nodeType===8)if(Gt.data===tt$1)Wt.push({type:2,index:zt});else{let Kt=-1;for(;(Kt=Gt.data.indexOf(_$2,Kt+1))!==-1;)Wt.push({type:7,index:zt}),Kt+=_$2.length-1}zt++}}static createElement(_e,Dt){const Vt=m$4.createElement("template");return Vt.innerHTML=_e,Vt}};function v$2(kt,_e,Dt=kt,Vt){if(_e===g$2)return _e;let Gt=Vt!==void 0?Dt._$Co?.[Vt]:Dt._$Cl;const zt=w$2(_e)?void 0:_e._$litDirective$;return Gt?.constructor!==zt&&(Gt?._$AO?.(!1),zt===void 0?Gt=void 0:(Gt=new zt(kt),Gt._$AT(kt,Dt,Vt)),Vt!==void 0?(Dt._$Co??=[])[Vt]=Gt:Dt._$Cl=Gt),Gt!==void 0&&(_e=v$2(kt,Gt._$AS(kt,_e.values),Gt,Vt)),_e}let At$1=class{constructor(_e,Dt){this._$AV=[],this._$AN=void 0,this._$AD=_e,this._$AM=Dt}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(_e){const{el:{content:Dt},parts:Vt}=this._$AD,Gt=(_e?.creationScope??m$4).importNode(Dt,!0);A$2.currentNode=Gt;let zt=A$2.nextNode(),jt=0,Ht=0,Wt=Vt[0];for(;Wt!==void 0;){if(jt===Wt.index){let qt;Wt.type===2?qt=new P$4(zt,zt.nextSibling,this,_e):Wt.type===1?qt=new Wt.ctor(zt,Wt.name,Wt.strings,this,_e):Wt.type===6&&(qt=new vt$1(zt,this,_e)),this._$AV.push(qt),Wt=Vt[++Ht]}jt!==Wt?.index&&(zt=A$2.nextNode(),jt++)}return A$2.currentNode=m$4,Gt}p(_e){let Dt=0;for(const Vt of this._$AV)Vt!==void 0&&(Vt.strings!==void 0?(Vt._$AI(_e,Vt,Dt),Dt+=Vt.strings.length-2):Vt._$AI(_e[Dt])),Dt++}},P$4=class wv{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(_e,Dt,Vt,Gt){this.type=2,this._$AH=c$6,this._$AN=void 0,this._$AA=_e,this._$AB=Dt,this._$AM=Vt,this.options=Gt,this._$Cv=Gt?.isConnected??!0}get parentNode(){let _e=this._$AA.parentNode;const Dt=this._$AM;return Dt!==void 0&&_e?.nodeType===11&&(_e=Dt.parentNode),_e}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(_e,Dt=this){_e=v$2(this,_e,Dt),w$2(_e)?_e===c$6||_e==null||_e===""?(this._$AH!==c$6&&this._$AR(),this._$AH=c$6):_e!==this._$AH&&_e!==g$2&&this._(_e):_e._$litType$!==void 0?this.$(_e):_e.nodeType!==void 0?this.T(_e):$t(_e)?this.k(_e):this._(_e)}O(_e){return this._$AA.parentNode.insertBefore(_e,this._$AB)}T(_e){this._$AH!==_e&&(this._$AR(),this._$AH=this.O(_e))}_(_e){this._$AH!==c$6&&w$2(this._$AH)?this._$AA.nextSibling.data=_e:this.T(m$4.createTextNode(_e)),this._$AH=_e}$(_e){const{values:Dt,_$litType$:Vt}=_e,Gt=typeof Vt=="number"?this._$AC(_e):(Vt.el===void 0&&(Vt.el=C$3.createElement(st$1(Vt.h,Vt.h[0]),this.options)),Vt);if(this._$AH?._$AD===Gt)this._$AH.p(Dt);else{const zt=new At$1(Gt,this),jt=zt.u(this.options);zt.p(Dt),this.T(jt),this._$AH=zt}}_$AC(_e){let Dt=G$3.get(_e.strings);return Dt===void 0&&G$3.set(_e.strings,Dt=new C$3(_e)),Dt}k(_e){j$1(this._$AH)||(this._$AH=[],this._$AR());const Dt=this._$AH;let Vt,Gt=0;for(const zt of _e)Gt===Dt.length?Dt.push(Vt=new wv(this.O(b$1()),this.O(b$1()),this,this.options)):Vt=Dt[Gt],Vt._$AI(zt),Gt++;Gt<Dt.length&&(this._$AR(Vt&&Vt._$AB.nextSibling,Gt),Dt.length=Gt)}_$AR(_e=this._$AA.nextSibling,Dt){for(this._$AP?.(!1,!0,Dt);_e&&_e!==this._$AB;){const Vt=_e.nextSibling;_e.remove(),_e=Vt}}setConnected(_e){this._$AM===void 0&&(this._$Cv=_e,this._$AP?.(_e))}},T$1=class{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(_e,Dt,Vt,Gt,zt){this.type=1,this._$AH=c$6,this._$AN=void 0,this.element=_e,this.name=Dt,this._$AM=Gt,this.options=zt,Vt.length>2||Vt[0]!==""||Vt[1]!==""?(this._$AH=Array(Vt.length-1).fill(new String),this.strings=Vt):this._$AH=c$6}_$AI(_e,Dt=this,Vt,Gt){const zt=this.strings;let jt=!1;if(zt===void 0)_e=v$2(this,_e,Dt,0),jt=!w$2(_e)||_e!==this._$AH&&_e!==g$2,jt&&(this._$AH=_e);else{const Ht=_e;let Wt,qt;for(_e=zt[0],Wt=0;Wt<zt.length-1;Wt++)qt=v$2(this,Ht[Vt+Wt],Dt,Wt),qt===g$2&&(qt=this._$AH[Wt]),jt||=!w$2(qt)||qt!==this._$AH[Wt],qt===c$6?_e=c$6:_e!==c$6&&(_e+=(qt??"")+zt[Wt+1]),this._$AH[Wt]=qt}jt&&!Gt&&this.j(_e)}j(_e){_e===c$6?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,_e??"")}},mt$1=class extends T$1{constructor(){super(...arguments),this.type=3}j(_e){this.element[this.name]=_e===c$6?void 0:_e}},yt$1=class extends T$1{constructor(){super(...arguments),this.type=4}j(_e){this.element.toggleAttribute(this.name,!!_e&&_e!==c$6)}},gt$1=class extends T$1{constructor(_e,Dt,Vt,Gt,zt){super(_e,Dt,Vt,Gt,zt),this.type=5}_$AI(_e,Dt=this){if((_e=v$2(this,_e,Dt,0)??c$6)===g$2)return;const Vt=this._$AH,Gt=_e===c$6&&Vt!==c$6||_e.capture!==Vt.capture||_e.once!==Vt.once||_e.passive!==Vt.passive,zt=_e!==c$6&&(Vt===c$6||Gt);Gt&&this.element.removeEventListener(this.name,this,Vt),zt&&this.element.addEventListener(this.name,this,_e),this._$AH=_e}handleEvent(_e){typeof this._$AH=="function"?this._$AH.call(this.options?.host??this.element,_e):this._$AH.handleEvent(_e)}},vt$1=class{constructor(_e,Dt,Vt){this.element=_e,this.type=6,this._$AN=void 0,this._$AM=Dt,this.options=Vt}get _$AU(){return this._$AM._$AU}_$AI(_e){v$2(this,_e)}};const Et$1=L$2.litHtmlPolyfillSupport;Et$1?.(C$3,P$4),(L$2.litHtmlVersions??=[]).push("3.3.0");const St$1=(kt,_e,Dt)=>{const Vt=Dt?.renderBefore??_e;let Gt=Vt._$litPart$;if(Gt===void 0){const zt=Dt?.renderBefore??null;Vt._$litPart$=Gt=new P$4(_e.insertBefore(b$1(),zt),zt,void 0,Dt??{})}return Gt._$AI(kt),Gt};/**
|
|
32
32
|
* @license
|
|
33
33
|
* Copyright 2017 Google LLC
|
|
34
34
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
35
|
-
*/const z$2=globalThis;let O$2=class extends y$2{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){const _e=super.createRenderRoot();return this.renderOptions.renderBefore??=_e.firstChild,_e}update(_e){const Dt=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(_e),this._$Do=St$1(Dt,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return g$3}};O$2._$litElement$=!0,O$2.finalized=!0,z$2.litElementHydrateSupport?.({LitElement:O$2});const bt=z$2.litElementPolyfillSupport;bt?.({LitElement:O$2});(z$2.litElementVersions??=[]).push("4.2.0");let h$5=class extends HTMLElement{constructor(_e,Dt){super(),this._isReady=!1,this._elementName="epigraph-base-solution-html",this._solutionVersion="",this._loggerContextOverride="[EPIGRAPH BASE SOLUTION]",this.attachShadow({mode:"open"}),this._environment=Dt,this._solutionVersion=_e,this._xPath=g$4.generateXPath(this),this._uuid=g$4.safeGenerateUuid()??this._xPath,new g$4(this),window.epigraph.logger.info({title:"Epigraph Base Solution Ready",contextOverride:this._loggerContextOverride})}get isReady(){return this._isReady}get environment(){return this._environment}get elementName(){return this._elementName}get solutionVersion(){return this._solutionVersion}get uuid(){return this._uuid}get xPath(){return this._xPath}disconnectedCallback(){window.epigraph.deregisterActiveComponent(this)}};const d$2=Symbol("data"),u$5=Symbol("next"),v$2=class Av{constructor(_e){this[d$2]=_e,this[u$5]=null}get data(){return this[d$2]}set next(_e){if(!(_e instanceof Av)&&_e!==null)throw new Error("This node is not an instance of the custom class 'Node'.");this[u$5]=_e}get next(){return this[u$5]}};let g$2=v$2;const h$4=Symbol("head");let m$3=class{constructor(){this[h$4]=null}set head(_e){this[h$4]=_e}get head(){return this[h$4]}addToTail(_e){let Dt=this.head;if(Dt){for(;Dt.next!==null;)Dt=Dt?.next;return Dt.next=new g$2(_e)}return this.head=new g$2(_e)}removeHead(){const _e=this.head;if(_e)return this.head=_e.next,_e.data}};const f$3=Symbol("queue"),o$2=Symbol("size");let l$3=class{constructor(){this[f$3]=new m$3,this[o$2]=0}get queue(){return this[f$3]}get size(){return this[o$2]}enqueue(_e){this.queue.addToTail(_e),this[o$2]++}dequeue(){const _e=this.queue.removeHead();return this[o$2]--,_e}},I$2=class{constructor(_e,Dt){this.name=this.pluginName="GA4-PLUGIN",this.trackingID=_e,this.verboseLogging=Dt,this.queue=new l$3,this.dataLayer=window.dataLayer,this.dataLayerName="dataLayer",this.setupDataLayer(),this.initGtag(this.dataLayerName,this.trackingID)}setupDataLayer(){if(this.dataLayer)return;const _e=this.findGA4ScriptInfo(this.trackingID)?.l;_e&&(this.dataLayerName=_e,this.dataLayer=window[_e])}initGtag(_e="dataLayer",Dt){window.epgDataLayerName=_e,typeof window.gtag!="function"&&(window.gtag=function(){window[window.epgDataLayerName].push(arguments)},window.gtag("js",new Date),window.gtag("config",Dt,{send_page_view:!1}))}async sendEvent(_e,Dt){this.queue.enqueue(_e);let Vt=!0;if(Dt&&(Vt=Dt.hasConsent()),this.dataLayer!==void 0&&Vt)try{await this.dequeueAndSendEvents()}catch(Gt){this.logger(Gt)}else this.logger("Cannot send Google Analytics 4 event: dataLayer is not defined.")}async dequeueAndSendEvents(){let _e=this.queue.size;for(let Dt=0;Dt<_e;Dt++){const Vt=this.queue.dequeue();let Gt={send_to:this.trackingID,event_action:Vt.action,event_category:Vt.category,event_label:Vt.label,epg_event_tag:""};if("parameters"in Vt&&Object.assign(Gt,Vt.parameters),JSON.stringify(Gt).length>459)try{let zt=await this.sendGA4LongParameters(Gt);Gt={send_to:this.trackingID,event_action:Vt.action,event_category:Vt.category,event_label:Vt.label,epg_event_tag:zt}}catch{}gtag("event",Vt.action,Gt),this.logger(`Google Analytics 4 event successfully sent: ${Vt.action}`)}}logger(_e){this.verboseLogging&&console.warn(_e)}getUniquePluginIdentifier(){return this.name+"-"+this.trackingID}setupPlugin(){this.dataLayer!==void 0&&this.dequeueAndSendEvents()}async sendGA4LongParameters(_e){const Dt="https://api.myepigraph.com/api/analytics/ga4/custom",Vt={parameters:_e};try{const Gt=await fetch(Dt,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify(Vt)});if(Gt.ok){const zt=await Gt.json();return zt&&zt.id?zt.id:""}else return""}catch{return""}}findGA4ScriptInfo(_e){const Dt=document.querySelectorAll("script[src]");for(const Vt of Dt){const Gt=Vt.getAttribute("src");if(Gt&&Gt.includes(_e)){const zt=new URL(Gt,location.href),jt=Object.fromEntries(zt.searchParams.entries());return{fullSrc:zt.href,id:jt.id||void 0,l:jt.l||void 0}}}return null}},A$1=class{constructor(_e,Dt,Vt,Gt,zt=!1){this.sessionId=Dt,this.xPath=Vt,this.name=this.pluginName="NEXUS-PLUGIN",this.trackingID=_e,this.verboseLogging=Gt,this.queue=new l$3,this.url=zt?"https://nexus.epigraph.dev/api/analytics/event":"https://api.myepigraph.com/api/analytics/event"}async sendEvent(_e,Dt){this.queue.enqueue(_e);let Vt=!0;Dt&&(Vt=Dt.hasConsent()),Vt&&await this.dequeueAndSendEvents()}async dequeueAndSendEvents(){for(let _e=0;_e<this.queue.size;_e++){const Dt=this.queue.dequeue(),Vt={experience_id:this.trackingID,action:Dt.action,parameters:Dt.parameters};try{return(await fetch(this.url,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","EPG-SESSION-ID":this.sessionId,"EPG-XPATH":this.xPath,Origin:typeof window<"u"?window.location.origin:""},body:JSON.stringify(Vt)})).status,""}catch{return""}}return""}getUniquePluginIdentifier(){return this.name+"-"+this.trackingID}setupPlugin(){}},q$4=class{constructor(_e){this.consentSet=!1,this.consent=!1,this.pluginName="OneTrustConsentPlugin",this.consentIdentifier=_e,this.consent=!1,this.addConsentChangedListener()}hasConsent(){if(this.consentSet)return this.consent;if(window.OnetrustActiveGroups!==void 0){let _e=window.OnetrustActiveGroups;_e!==void 0&&_e.split(",").forEach(Dt=>{Dt===this.consentIdentifier&&(this.consent=!0,this.consentSet=!0)})}return this.consent}addConsentChangedListener(){window.addEventListener("load",()=>{this.hasConsent(),window.OneTrust!==void 0&&typeof window.OneTrust=="object"&&window.OneTrust.OnConsentChanged(()=>{this.consentSet=!1,this.hasConsent()})})}};var p$6=(kt=>(kt.OneTrust="onetrust",kt))(p$6||{});/**
|
|
35
|
+
*/const z$2=globalThis;let O$2=class extends y$2{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){const _e=super.createRenderRoot();return this.renderOptions.renderBefore??=_e.firstChild,_e}update(_e){const Dt=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(_e),this._$Do=St$1(Dt,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return g$2}};O$2._$litElement$=!0,O$2.finalized=!0,z$2.litElementHydrateSupport?.({LitElement:O$2});const bt=z$2.litElementPolyfillSupport;bt?.({LitElement:O$2});(z$2.litElementVersions??=[]).push("4.2.0");let h$5=class extends HTMLElement{constructor(_e,Dt){super(),this._isReady=!1,this._elementName="epigraph-base-solution-html",this._solutionVersion="",this._loggerContextOverride="[EPIGRAPH BASE SOLUTION]",this.attachShadow({mode:"open"}),this._environment=Dt,this._solutionVersion=_e,this._xPath=g$3.generateXPath(this),this._uuid=g$3.safeGenerateUuid()??this._xPath,new g$3(this),window.epigraph.logger.info({title:"Epigraph Base Solution Ready",contextOverride:this._loggerContextOverride})}get isReady(){return this._isReady}get environment(){return this._environment}get elementName(){return this._elementName}get solutionVersion(){return this._solutionVersion}get uuid(){return this._uuid}get xPath(){return this._xPath}disconnectedCallback(){window.epigraph.deregisterActiveComponent(this)}};var o$2=(kt=>(kt.UNAVAILABLE="unavailable",kt.AVAILABLE="available",kt.RESTRICTED="restricted",kt))(o$2||{});const p$6=Symbol("data"),l$3=Symbol("next"),N$2=class Av{constructor(_e){this[p$6]=_e,this[l$3]=null}get data(){return this[p$6]}set next(_e){if(!(_e instanceof Av)&&_e!==null)throw new Error("This node is not an instance of the custom class 'Node'.");this[l$3]=_e}get next(){return this[l$3]}};let g$1=N$2;const d$2=Symbol("head");let P$3=class{constructor(){this[d$2]=null}set head(_e){this[d$2]=_e}get head(){return this[d$2]}addToTail(_e){let Dt=this.head;if(Dt){for(;Dt.next!==null;)Dt=Dt?.next;return Dt.next=new g$1(_e)}return this.head=new g$1(_e)}removeHead(){const _e=this.head;if(_e)return this.head=_e.next,_e.data}};const _$1=Symbol("queue"),h$4=Symbol("size");let m$3=class{constructor(){this[_$1]=new P$3,this[h$4]=0}get queue(){return this[_$1]}get size(){return this[h$4]}enqueue(_e){this.queue.addToTail(_e),this[h$4]++}dequeue(){const _e=this.queue.removeHead();return this[h$4]--,_e}},I$2=class{constructor({trackingID:_e,experienceID:Dt,solution:Vt,verboseLogging:Gt=!1}){this.__status=o$2.UNAVAILABLE,this.__sentEventCount=0,this.__initializationAttempts=0,this.__lastInitializationAttempt=performance.now(),this.__maxInitializationAttempts=10,this.__initializationRetryDelay=2e3,this.__isInitialized=!1,this.__initializationMethod="NONE",this.__nexusFailureReported=!1,this.name=this.pluginName="GA4-PLUGIN",this.trackingID=_e,this.experienceID=Dt,this.solution=Vt,this.verboseLogging=Gt,this.__queue=new m$3,this.initializePlugin()}getStatus(){return this.__status}setStatus(_e){this.__status=_e}getPendingEventCount(){return this.__queue.size}getSentEventCount(){return this.__sentEventCount}getTotalEventCount(){return this.getPendingEventCount()+this.getSentEventCount()}getUniquePluginIdentifier(){return`${this.name}-${this.trackingID}`}setupPlugin(){this.__isInitialized&&this.dataLayer!==void 0&&this.dequeueAndSendEvents()}async sendEvent(_e,Dt){if(this.__queue.enqueue(_e),!Dt){this.__status=o$2.RESTRICTED;return}if(!this.__isInitialized){this.logger("Cannot send analytics event: dataLayer not defined or plugin not initialized.");return}try{await this.dequeueAndSendEvents()}catch(Vt){this.logger(Vt),await this.reportFailureToNexus("EVENT_SEND_ERROR",Vt?.toString()||"Unknown error")}}initializePlugin(){if(this.__isInitialized)return;if(this.__initializationAttempts>=this.__maxInitializationAttempts){this.__nexusFailureReported||(this.reportFailureToNexus("MAX_INITIALIZATION_ATTEMPTS","Maximum initialization attempts reached"),this.__nexusFailureReported=!0);return}const _e=performance.now();if(this.__initializationAttempts>0&&_e-this.__lastInitializationAttempt<this.__initializationRetryDelay)return;this.__lastInitializationAttempt=_e,this.__initializationAttempts++;const Dt=this.detectAndSetupAnalytics();Dt.success?(this.__isInitialized=!0,this.__status=o$2.AVAILABLE,this.__initializationMethod=Dt.method,this.dataLayerName=Dt.dataLayerName,this.dataLayer=window[this.dataLayerName],this.logger(`Successfully initialized ${Dt.method} with dataLayer: ${this.dataLayerName}`),this.__queue.size>0&&this.dequeueAndSendEvents()):(this.logger(`Initialization attempt ${this.__initializationAttempts} failed: ${Dt.error}`),this.__initializationAttempts<this.__maxInitializationAttempts&&setTimeout(()=>{this.initializePlugin()},this.__initializationRetryDelay))}detectAndSetupAnalytics(){const _e=this.detectGTM();if(_e)return this.logger(`GTM detected with container ID: ${_e.containerId}`),{success:!0,method:"GTM",dataLayerName:_e.dataLayerName};const Dt=this.findGA4Info(this.trackingID);if(Dt){const Vt=Dt.l||"dataLayer";return this.logger(`GA4 script found, setting up with dataLayer: ${Vt}`),{success:!0,method:"GA4",dataLayerName:Vt}}return{success:!1,method:"NONE",dataLayerName:"dataLayer",error:"No analytics setup found and unable to create one"}}detectGTM(){const _e=document.querySelectorAll('script[src*="googletagmanager.com/gtm"]');for(const Dt of Array.from(_e)){const Vt=Dt.getAttribute("src");if(Vt){const Gt=Vt.match(/gtm\.js\?id=([^&]+)/);if(Gt&&Gt.length>0){const zt=Vt.match(/&l=([^&]+)/),jt=zt?zt[1]:"dataLayer";return{containerId:Gt[1],dataLayerName:jt}}}}return null}async dequeueAndSendEvents(){if(!this.__isInitialized||!this.dataLayer)return;let _e=this.__queue.size;for(let Dt=0;Dt<_e;Dt++){const Vt=this.__queue.dequeue();try{this.__initializationMethod==="GTM"?(this.sendGTMEvent(Vt),this.__sentEventCount++,this.logger(`Analytics event successfully sent via ${this.__initializationMethod}: ${Vt.eventName}`)):this.__initializationMethod==="GA4"?(this.sendGA4Event(Vt),this.__sentEventCount++,this.logger(`Analytics event successfully sent via ${this.__initializationMethod}: ${Vt.eventName}`)):this.__queue.enqueue(Vt)}catch(Gt){this.logger(`Error sending event ${Vt.eventName}: ${Gt}`),this.__queue.enqueue(Vt)}}}async sendGTMEvent(_e){let Dt=_e.getGTMParameters(this.solution,this.experienceID,this.trackingID);this.isValidPayload(Dt)||(Dt=await this.convertGTMParametersToEpgEventTag(_e.eventName,Dt)),this.dataLayer&&this.dataLayer.push(Dt)}async sendGA4Event(_e){let Dt=_e.getGa4Parameters(this.solution,this.experienceID,this.trackingID);this.isValidPayload(Dt)||(Dt=await this.convertGA4ParametersToEpgEventTag(Dt)),window.gtag("event",_e.eventName,Dt)}isValidPayload(_e){if(Object.keys(_e).length>=25)return!1;for(const[Dt,Vt]of Object.entries(_e))if(Dt!=="items"&&(Dt.length>40||String(Vt).length>100))return!1;return!0}async convertGTMParametersToEpgEventTag(_e,Dt){try{let Vt=await this.sendGA4LongParameters(Dt);return{event:_e,epg_event_tag:Vt,send_to:this.trackingID}}catch{return Dt}}async convertGA4ParametersToEpgEventTag(_e){try{return{epg_event_tag:await this.sendGA4LongParameters(_e),send_to:this.trackingID}}catch{return _e}}logger(_e){this.verboseLogging&&console.warn(_e)}async sendGA4LongParameters(_e){const Dt="https://api.myepigraph.com/api/analytics/ga4/custom",Vt={parameters:_e};try{const Gt=await fetch(Dt,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify(Vt)});return Gt.ok?(await Gt.json())?.id??"":""}catch{return""}}async reportFailureToNexus(_e,Dt){try{const Vt={plugin:"GA4",trackingId:this.trackingID,solution:this.solution,experienceId:this.experienceID,failureType:_e,errorMessage:Dt,timestamp:new Date().toISOString(),url:window.location.href,userAgent:navigator.userAgent};this.logger(`Failure reported to Nexus: ${JSON.stringify(Vt)}`)}catch(Vt){this.logger(`Error reporting failure to Nexus: ${Vt}`)}}findGA4Info(_e){if(window.google_tag_manager&&window.google_tag_manager[_e]){const Vt=window.google_tag_manager[_e];if(Vt&&Vt.dataLayerName)return{fullSrc:"",id:_e,l:Vt.dataLayerName}}const Dt=document.querySelectorAll("script[src]");for(const Vt of Dt){const Gt=Vt.getAttribute("src");if(Gt&&Gt.includes(_e)){const zt=new URL(Gt,location.href),jt=Object.fromEntries(zt.searchParams.entries());return{fullSrc:zt.href,id:jt.id||void 0,l:jt.l||void 0}}}return null}},C$2=class{constructor({trackingID:_e,experienceID:Dt,solution:Vt,sessionId:Gt,xPath:zt,verboseLogging:jt=!1,sendToStaging:Ht=!1}){this.__status=o$2.UNAVAILABLE,this.__sentEventCount=0,this.sessionId=Gt,this.xPath=zt,this.name=this.pluginName="NEXUS-PLUGIN",this.trackingID=_e,this.experienceID=Dt,this.solution=Vt,this.verboseLogging=jt,this.__queue=new m$3,this.url=Ht?"https://nexus.epigraph.dev/api/analytics/event":"https://api.myepigraph.com/api/analytics/event",this.__status=o$2.AVAILABLE}getStatus(){return this.__status}setStatus(_e){this.__status=_e}getPendingEventCount(){return this.__queue.size}getSentEventCount(){return this.__sentEventCount}getTotalEventCount(){return this.getPendingEventCount()+this.getSentEventCount()}getUniquePluginIdentifier(){return this.name+"-"+this.trackingID}setupPlugin(){}async sendEvent(_e,Dt){if(this.__queue.enqueue(_e),!Dt){this.__status=o$2.RESTRICTED;return}await this.dequeueAndSendEvents()}async dequeueAndSendEvents(){for(let _e=0;_e<this.__queue.size;_e++){const Dt=this.__queue.dequeue();Dt.customParameters.solution=this.solution;const Vt={trackingID:this.trackingID,experience_id:this.experienceID,action:Dt.eventName,parameters:Dt.getNexusParameters()};try{return(await fetch(this.url,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","EPG-SESSION-ID":this.sessionId,"EPG-XPATH":this.xPath,Origin:typeof window<"u"?window.location.origin:""},body:JSON.stringify(Vt)})).status,""}catch{return""}this.__sentEventCount++}return""}},A$1=class{constructor(_e){this.consentSet=!1,this.consent=!1,this.pluginName="OneTrustConsentPlugin",this.consentIdentifier=_e,this.consent=!1,this.addConsentChangedListener()}hasConsent(){if(this.consentSet)return this.consent;if(window.OnetrustActiveGroups!==void 0){let _e=window.OnetrustActiveGroups;_e!==void 0&&_e.split(",").forEach(Dt=>{Dt===this.consentIdentifier&&(this.consent=!0,this.consentSet=!0)})}return this.consent}addConsentChangedListener(){window.addEventListener("load",()=>{this.hasConsent(),window.OneTrust!==void 0&&typeof window.OneTrust=="object"&&window.OneTrust.OnConsentChanged(()=>{this.consentSet=!1,this.hasConsent()})})}};var E$2=(kt=>(kt.OneTrust="onetrust",kt))(E$2||{});/**
|
|
36
36
|
* @license
|
|
37
37
|
* Copyright (c) 2023 Epigraph LLC. All Rights Reserved.
|
|
38
38
|
*
|
|
@@ -47,7 +47,7 @@
|
|
|
47
47
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
48
48
|
* See the License for the specific language governing permissions and
|
|
49
49
|
* limitations under the License.
|
|
50
|
-
*/var
|
|
50
|
+
*/var f$3;const c$5=Symbol("analyticsPluginsMap");f$3=c$5;let X$2=class{constructor(_e,Dt){this[f$3]=new Map,this.__consentPlugin=null,_e&&Dt&&(this.__consentPlugin=this.buildConsentPlugin(_e,Dt)),window.addEventListener("epigraphAnalyticsConsentChange",this.__onConsentChangeFromEvent)}__onConsentChangeFromEvent(_e){let Dt=_e;this.__overrideConsent=Dt.detail.hasConsent;for(const Vt of this[c$5].values())this.__hasConsent()||Vt.setStatus(o$2.RESTRICTED)}addEventPlugin(_e){this[c$5].has(_e.getUniquePluginIdentifier())||(this[c$5].set(_e.getUniquePluginIdentifier(),_e),_e.setupPlugin())}__hasConsent(){let _e=!0;return this.__overrideConsent!==void 0?(_e=this.__overrideConsent,_e):(this.__consentPlugin&&(_e=this.__consentPlugin.hasConsent()),_e)}sendEvent(_e){this[c$5].forEach(Dt=>{Dt.sendEvent(_e,this.__hasConsent())})}buildConsentPlugin(_e,Dt){return _e.toLowerCase()===E$2.OneTrust.toLowerCase()?new A$1(Dt):null}},u$4=class{constructor(_e,Dt,Vt,Gt=""){this._success=_e,this._payload=Dt,this._status=Vt,this._message=Gt}get success(){return this._success}get payload(){return this._payload}get status(){return this._status}get message(){return this._message}};function c$4(kt,_e,Dt=""){return new u$4(!0,kt,_e,Dt)}function n$4(kt,_e,Dt=""){return new u$4(!1,kt,_e,Dt)}let P$2=class{constructor(_e="https://api.myepigraph.com/api/",Dt,Vt,Gt="",zt="",jt="v1/"){this.epigraphXPath="",this.epigraphComponentVersion=Gt,this.epigraphSessionId=Vt,this.epigraphXPath=zt,this.baseUrl=_e+jt,this.epgLocation=Dt}async getButtonBySku(_e,Dt=""){const Vt={};Dt!==""&&(Vt.version_id=Dt);const Gt=`experience/button/sku/${_e}`,zt=this.buildNexusUrl(Gt,Vt);return await this.callNexusAPI(zt,"GET")}async getButtonByShopifyVariantId(_e,Dt=""){const Vt={};Dt!==""&&(Vt.version_id=Dt);const Gt=`experience/button/shopify_variant_id/${_e}`,zt=this.buildNexusUrl(Gt,Vt);return await this.callNexusAPI(zt,"GET")}async getButtonByUpc(_e,Dt=""){const Vt={};Dt!==""&&(Vt.version_id=Dt);const Gt=`experience/button/upc/${_e}`,zt=this.buildNexusUrl(Gt,Vt);return await this.callNexusAPI(zt,"GET")}async getButtonByAsin(_e,Dt=""){const Vt={};Dt!==""&&(Vt.version_id=Dt);const Gt=`experience/button/asin/${_e}`,zt=this.buildNexusUrl(Gt,Vt);return await this.callNexusAPI(zt,"GET")}async getViewerBySku(_e,Dt=""){const Vt={};Dt!==""&&(Vt.version_id=Dt);const Gt=`experience/viewer/sku/${_e}`,zt=this.buildNexusUrl(Gt,Vt);return await this.callNexusAPI(zt,"GET")}async getViewerByShopifyVariantId(_e,Dt=""){const Vt={};Dt!==""&&(Vt.version_id=Dt);const Gt=`experience/viewer/shopify_variant_id/${_e}`,zt=this.buildNexusUrl(Gt,Vt);return await this.callNexusAPI(zt,"GET")}async getViewerByUpc(_e,Dt=""){const Vt={};Dt!==""&&(Vt.version_id=Dt);const Gt=`experience/viewer/upc/${_e}`,zt=this.buildNexusUrl(Gt,Vt);return await this.callNexusAPI(zt,"GET")}async getViewerByAsin(_e,Dt=""){const Vt={};Dt!==""&&(Vt.version_id=Dt);const Gt=`experience/viewer/asin/${_e}`,zt=this.buildNexusUrl(Gt,Vt);return await this.callNexusAPI(zt,"GET")}async getTourBySku(_e,Dt=""){const Vt={};Dt!==""&&(Vt.version_id=Dt);const Gt=`experience/tour/sku/${_e}`,zt=this.buildNexusUrl(Gt,Vt);return await this.callNexusAPI(zt,"GET")}async getTourByShopifyVariantId(_e,Dt=""){const Vt={};Dt!==""&&(Vt.version_id=Dt);const Gt=`experience/tour/shopify_variant_id/${_e}`,zt=this.buildNexusUrl(Gt,Vt);return await this.callNexusAPI(zt,"GET")}async getTourByUpc(_e,Dt=""){const Vt={};Dt!==""&&(Vt.version_id=Dt);const Gt=`experience/tour/upc/${_e}`,zt=this.buildNexusUrl(Gt,Vt);return await this.callNexusAPI(zt,"GET")}async getTourByAsin(_e,Dt=""){const Vt={};Dt!==""&&(Vt.version_id=Dt);const Gt=`experience/tour/asin/${_e}`,zt=this.buildNexusUrl(Gt,Vt);return await this.callNexusAPI(zt,"GET")}async getConfiguratorByExperienceId(_e,Dt=""){const Vt={};Dt!==""&&(Vt.version_id=Dt);const Gt=`experience/configurator/experience_id/${_e}`,zt=this.buildNexusUrl(Gt,Vt);return await this.callNexusAPI(zt,"GET")}async getConfiguratorByClientAccessKey(_e,Dt=""){const Vt={};Dt!==""&&(Vt.version_id=Dt);const Gt=`experience/configurator/client_access_key/${_e}`,zt=this.buildNexusUrl(Gt,Vt);return await this.callNexusAPI(zt,"GET")}async getConfiguratorLiteByExperienceId(_e,Dt=""){const Vt={};Dt!==""&&(Vt.version_id=Dt);const Gt=`experience/configurator-lite/experience_id/${_e}`,zt=this.buildNexusUrl(Gt,Vt);return await this.callNexusAPI(zt,"GET")}async getConfiguratorLiteByProjectId(_e,Dt=""){const Vt={};Dt!==""&&(Vt.version_id=Dt);const Gt=`experience/configurator-lite/project_id/${_e}`,zt=this.buildNexusUrl(Gt,Vt);return await this.callNexusAPI(zt,"GET")}async postExperienceSaveAndShare(_e,Dt){const Vt=`experience/${_e}/save`,Gt=this.buildNexusUrl(Vt),zt={save_data:JSON.stringify(Dt)},jt=new Headers;return jt.set("Content-Type","application/json"),await this.callNexusAPI(Gt,"POST",JSON.stringify(zt),jt)}async getExperienceSaveAndShare(_e,Dt){const Vt=`experience/${_e}/save/${Dt}`,Gt=this.buildNexusUrl(Vt);return await this.callNexusAPI(Gt,"GET")}async callNexusAPI(_e,Dt="GET",Vt,Gt=new Headers){Gt=this.addRequiredHeaders(Gt);const zt={method:Dt,body:Vt,headers:Gt};try{const jt=await fetch(_e,zt),Ht=await jt.json();if(!jt.ok){let Wt="Unable to retrieve configurator experience";return Ht.message&&(Wt=Ht.message),Promise.resolve(n$4(Ht,jt.status,Wt))}return Promise.resolve(c$4(Ht,jt.status))}catch{return Promise.resolve(n$4({},500,"Unknown error"))}}buildNexusUrl(_e,Dt={}){let Vt=new URL(this.baseUrl);Vt.pathname+=_e;for(const[Gt,zt]of Object.entries(Dt))Vt.searchParams.set(Gt,zt);return Vt}addRequiredHeaders(_e){return _e.has("accept")||_e.set("accept","application/json"),_e.has("EPG-Location")||_e.set("EPG-location",this.epgLocation),_e.has("EPG-Session-ID")||_e.set("EPG-Session-ID",this.epigraphSessionId),_e.has("EPG-XPATH")||_e.set("EPG-XPATH",this.epigraphXPath),_e.has("EPG-Version")||_e.set("EPG-Version",this.epigraphComponentVersion),_e}};var p$5=(kt=>(kt.PRODUCTION="https://api.myepigraph.com/api/",kt.STAGING="https://nexus.epigraph.dev/api/",kt.LOCAL="https://nexus.test/api/",kt))(p$5||{});/**
|
|
51
51
|
* @license
|
|
52
52
|
* Copyright 2019 Google LLC
|
|
53
53
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
@@ -55,7 +55,7 @@
|
|
|
55
55
|
* @license
|
|
56
56
|
* Copyright 2017 Google LLC
|
|
57
57
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
58
|
-
*/const{is:i$3,defineProperty:e$4,getOwnPropertyDescriptor:h$3,getOwnPropertyNames:r$4,getOwnPropertySymbols:o,getPrototypeOf:n$2}=Object,a=globalThis,c$2=a.trustedTypes,l$2=c$2?c$2.emptyScript:"",p$4=a.reactiveElementPolyfillSupport,d$1=(kt,_e)=>kt,u$3={toAttribute(kt,_e){switch(_e){case Boolean:kt=kt?l$2:null;break;case Object:case Array:kt=kt==null?kt:JSON.stringify(kt)}return kt},fromAttribute(kt,_e){let Dt=kt;switch(_e){case Boolean:Dt=kt!==null;break;case Number:Dt=kt===null?null:Number(kt);break;case Object:case Array:try{Dt=JSON.parse(kt)}catch{Dt=null}}return Dt}},f$2=(kt,_e)=>!i$3(kt,_e),b={attribute:!0,type:String,converter:u$3,reflect:!1,useDefault:!1,hasChanged:f$2};Symbol.metadata??=Symbol("metadata"),a.litPropertyMetadata??=new WeakMap;let y$1=class extends HTMLElement{static addInitializer(_e){this._$Ei(),(this.l??=[]).push(_e)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(_e,Dt=b){if(Dt.state&&(Dt.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(_e)&&((Dt=Object.create(Dt)).wrapped=!0),this.elementProperties.set(_e,Dt),!Dt.noAccessor){const Vt=Symbol(),Gt=this.getPropertyDescriptor(_e,Vt,Dt);Gt!==void 0&&e$4(this.prototype,_e,Gt)}}static getPropertyDescriptor(_e,Dt,Vt){const{get:Gt,set:zt}=h$3(this.prototype,_e)??{get(){return this[Dt]},set(jt){this[Dt]=jt}};return{get:Gt,set(jt){const Ht=Gt?.call(this);zt?.call(this,jt),this.requestUpdate(_e,Ht,Vt)},configurable:!0,enumerable:!0}}static getPropertyOptions(_e){return this.elementProperties.get(_e)??b}static _$Ei(){if(this.hasOwnProperty(d$1("elementProperties")))return;const _e=n$2(this);_e.finalize(),_e.l!==void 0&&(this.l=[..._e.l]),this.elementProperties=new Map(_e.elementProperties)}static finalize(){if(this.hasOwnProperty(d$1("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(d$1("properties"))){const Dt=this.properties,Vt=[...r$4(Dt),...o(Dt)];for(const Gt of Vt)this.createProperty(Gt,Dt[Gt])}const _e=this[Symbol.metadata];if(_e!==null){const Dt=litPropertyMetadata.get(_e);if(Dt!==void 0)for(const[Vt,Gt]of Dt)this.elementProperties.set(Vt,Gt)}this._$Eh=new Map;for(const[Dt,Vt]of this.elementProperties){const Gt=this._$Eu(Dt,Vt);Gt!==void 0&&this._$Eh.set(Gt,Dt)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(_e){const Dt=[];if(Array.isArray(_e)){const Vt=new Set(_e.flat(1/0).reverse());for(const Gt of Vt)Dt.unshift(c$3(Gt))}else _e!==void 0&&Dt.push(c$3(_e));return Dt}static _$Eu(_e,Dt){const Vt=Dt.attribute;return Vt===!1?void 0:typeof Vt=="string"?Vt:typeof _e=="string"?_e.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise(_e=>this.enableUpdating=_e),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach(_e=>_e(this))}addController(_e){(this._$EO??=new Set).add(_e),this.renderRoot!==void 0&&this.isConnected&&_e.hostConnected?.()}removeController(_e){this._$EO?.delete(_e)}_$E_(){const _e=new Map,Dt=this.constructor.elementProperties;for(const Vt of Dt.keys())this.hasOwnProperty(Vt)&&(_e.set(Vt,this[Vt]),delete this[Vt]);_e.size>0&&(this._$Ep=_e)}createRenderRoot(){const _e=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return S$2(_e,this.constructor.elementStyles),_e}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach(_e=>_e.hostConnected?.())}enableUpdating(_e){}disconnectedCallback(){this._$EO?.forEach(_e=>_e.hostDisconnected?.())}attributeChangedCallback(_e,Dt,Vt){this._$AK(_e,Vt)}_$ET(_e,Dt){const Vt=this.constructor.elementProperties.get(_e),Gt=this.constructor._$Eu(_e,Vt);if(Gt!==void 0&&Vt.reflect===!0){const zt=(Vt.converter?.toAttribute!==void 0?Vt.converter:u$3).toAttribute(Dt,Vt.type);this._$Em=_e,zt==null?this.removeAttribute(Gt):this.setAttribute(Gt,zt),this._$Em=null}}_$AK(_e,Dt){const Vt=this.constructor,Gt=Vt._$Eh.get(_e);if(Gt!==void 0&&this._$Em!==Gt){const zt=Vt.getPropertyOptions(Gt),jt=typeof zt.converter=="function"?{fromAttribute:zt.converter}:zt.converter?.fromAttribute!==void 0?zt.converter:u$3;this._$Em=Gt
|
|
58
|
+
*/const{is:i$3,defineProperty:e$4,getOwnPropertyDescriptor:h$3,getOwnPropertyNames:r$4,getOwnPropertySymbols:o,getPrototypeOf:n$2}=Object,a=globalThis,c$2=a.trustedTypes,l$2=c$2?c$2.emptyScript:"",p$4=a.reactiveElementPolyfillSupport,d$1=(kt,_e)=>kt,u$3={toAttribute(kt,_e){switch(_e){case Boolean:kt=kt?l$2:null;break;case Object:case Array:kt=kt==null?kt:JSON.stringify(kt)}return kt},fromAttribute(kt,_e){let Dt=kt;switch(_e){case Boolean:Dt=kt!==null;break;case Number:Dt=kt===null?null:Number(kt);break;case Object:case Array:try{Dt=JSON.parse(kt)}catch{Dt=null}}return Dt}},f$2=(kt,_e)=>!i$3(kt,_e),b={attribute:!0,type:String,converter:u$3,reflect:!1,useDefault:!1,hasChanged:f$2};Symbol.metadata??=Symbol("metadata"),a.litPropertyMetadata??=new WeakMap;let y$1=class extends HTMLElement{static addInitializer(_e){this._$Ei(),(this.l??=[]).push(_e)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(_e,Dt=b){if(Dt.state&&(Dt.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(_e)&&((Dt=Object.create(Dt)).wrapped=!0),this.elementProperties.set(_e,Dt),!Dt.noAccessor){const Vt=Symbol(),Gt=this.getPropertyDescriptor(_e,Vt,Dt);Gt!==void 0&&e$4(this.prototype,_e,Gt)}}static getPropertyDescriptor(_e,Dt,Vt){const{get:Gt,set:zt}=h$3(this.prototype,_e)??{get(){return this[Dt]},set(jt){this[Dt]=jt}};return{get:Gt,set(jt){const Ht=Gt?.call(this);zt?.call(this,jt),this.requestUpdate(_e,Ht,Vt)},configurable:!0,enumerable:!0}}static getPropertyOptions(_e){return this.elementProperties.get(_e)??b}static _$Ei(){if(this.hasOwnProperty(d$1("elementProperties")))return;const _e=n$2(this);_e.finalize(),_e.l!==void 0&&(this.l=[..._e.l]),this.elementProperties=new Map(_e.elementProperties)}static finalize(){if(this.hasOwnProperty(d$1("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(d$1("properties"))){const Dt=this.properties,Vt=[...r$4(Dt),...o(Dt)];for(const Gt of Vt)this.createProperty(Gt,Dt[Gt])}const _e=this[Symbol.metadata];if(_e!==null){const Dt=litPropertyMetadata.get(_e);if(Dt!==void 0)for(const[Vt,Gt]of Dt)this.elementProperties.set(Vt,Gt)}this._$Eh=new Map;for(const[Dt,Vt]of this.elementProperties){const Gt=this._$Eu(Dt,Vt);Gt!==void 0&&this._$Eh.set(Gt,Dt)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(_e){const Dt=[];if(Array.isArray(_e)){const Vt=new Set(_e.flat(1/0).reverse());for(const Gt of Vt)Dt.unshift(c$3(Gt))}else _e!==void 0&&Dt.push(c$3(_e));return Dt}static _$Eu(_e,Dt){const Vt=Dt.attribute;return Vt===!1?void 0:typeof Vt=="string"?Vt:typeof _e=="string"?_e.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise(_e=>this.enableUpdating=_e),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach(_e=>_e(this))}addController(_e){(this._$EO??=new Set).add(_e),this.renderRoot!==void 0&&this.isConnected&&_e.hostConnected?.()}removeController(_e){this._$EO?.delete(_e)}_$E_(){const _e=new Map,Dt=this.constructor.elementProperties;for(const Vt of Dt.keys())this.hasOwnProperty(Vt)&&(_e.set(Vt,this[Vt]),delete this[Vt]);_e.size>0&&(this._$Ep=_e)}createRenderRoot(){const _e=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return S$2(_e,this.constructor.elementStyles),_e}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach(_e=>_e.hostConnected?.())}enableUpdating(_e){}disconnectedCallback(){this._$EO?.forEach(_e=>_e.hostDisconnected?.())}attributeChangedCallback(_e,Dt,Vt){this._$AK(_e,Vt)}_$ET(_e,Dt){const Vt=this.constructor.elementProperties.get(_e),Gt=this.constructor._$Eu(_e,Vt);if(Gt!==void 0&&Vt.reflect===!0){const zt=(Vt.converter?.toAttribute!==void 0?Vt.converter:u$3).toAttribute(Dt,Vt.type);this._$Em=_e,zt==null?this.removeAttribute(Gt):this.setAttribute(Gt,zt),this._$Em=null}}_$AK(_e,Dt){const Vt=this.constructor,Gt=Vt._$Eh.get(_e);if(Gt!==void 0&&this._$Em!==Gt){const zt=Vt.getPropertyOptions(Gt),jt=typeof zt.converter=="function"?{fromAttribute:zt.converter}:zt.converter?.fromAttribute!==void 0?zt.converter:u$3;this._$Em=Gt;const Ht=jt.fromAttribute(Dt,zt.type);this[Gt]=Ht??this._$Ej?.get(Gt)??Ht,this._$Em=null}}requestUpdate(_e,Dt,Vt){if(_e!==void 0){const Gt=this.constructor,zt=this[_e];if(Vt??=Gt.getPropertyOptions(_e),!((Vt.hasChanged??f$2)(zt,Dt)||Vt.useDefault&&Vt.reflect&&zt===this._$Ej?.get(_e)&&!this.hasAttribute(Gt._$Eu(_e,Vt))))return;this.C(_e,Dt,Vt)}this.isUpdatePending===!1&&(this._$ES=this._$EP())}C(_e,Dt,{useDefault:Vt,reflect:Gt,wrapped:zt},jt){Vt&&!(this._$Ej??=new Map).has(_e)&&(this._$Ej.set(_e,jt??Dt??this[_e]),zt!==!0||jt!==void 0)||(this._$AL.has(_e)||(this.hasUpdated||Vt||(Dt=void 0),this._$AL.set(_e,Dt)),Gt===!0&&this._$Em!==_e&&(this._$Eq??=new Set).add(_e))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(Dt){Promise.reject(Dt)}const _e=this.scheduleUpdate();return _e!=null&&await _e,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(const[Gt,zt]of this._$Ep)this[Gt]=zt;this._$Ep=void 0}const Vt=this.constructor.elementProperties;if(Vt.size>0)for(const[Gt,zt]of Vt){const{wrapped:jt}=zt,Ht=this[Gt];jt!==!0||this._$AL.has(Gt)||Ht===void 0||this.C(Gt,void 0,zt,Ht)}}let _e=!1;const Dt=this._$AL;try{_e=this.shouldUpdate(Dt),_e?(this.willUpdate(Dt),this._$EO?.forEach(Vt=>Vt.hostUpdate?.()),this.update(Dt)):this._$EM()}catch(Vt){throw _e=!1,this._$EM(),Vt}_e&&this._$AE(Dt)}willUpdate(_e){}_$AE(_e){this._$EO?.forEach(Dt=>Dt.hostUpdated?.()),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(_e)),this.updated(_e)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(_e){return!0}update(_e){this._$Eq&&=this._$Eq.forEach(Dt=>this._$ET(Dt,this[Dt])),this._$EM()}updated(_e){}firstUpdated(_e){}};y$1.elementStyles=[],y$1.shadowRootOptions={mode:"open"},y$1[d$1("elementProperties")]=new Map,y$1[d$1("finalized")]=new Map,p$4?.({ReactiveElement:y$1}),(a.reactiveElementVersions??=[]).push("2.1.1");/**
|
|
59
59
|
* @license
|
|
60
60
|
* Copyright 2017 Google LLC
|
|
61
61
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
@@ -94,10 +94,10 @@
|
|
|
94
94
|
`+La+kt}var Na=!1;function Oa(kt,_e){if(!kt||Na)return"";Na=!0;var Dt=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(_e)if(_e=function(){throw Error()},Object.defineProperty(_e.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(_e,[])}catch(qt){var Vt=qt}Reflect.construct(kt,[],_e)}else{try{_e.call()}catch(qt){Vt=qt}kt.call(_e.prototype)}else{try{throw Error()}catch(qt){Vt=qt}kt()}}catch(qt){if(qt&&Vt&&typeof qt.stack=="string"){for(var Gt=qt.stack.split(`
|
|
95
95
|
`),zt=Vt.stack.split(`
|
|
96
96
|
`),jt=Gt.length-1,Ht=zt.length-1;1<=jt&&0<=Ht&&Gt[jt]!==zt[Ht];)Ht--;for(;1<=jt&&0<=Ht;jt--,Ht--)if(Gt[jt]!==zt[Ht]){if(jt!==1||Ht!==1)do if(jt--,Ht--,0>Ht||Gt[jt]!==zt[Ht]){var Wt=`
|
|
97
|
-
`+Gt[jt].replace(" at new "," at ");return kt.displayName&&Wt.includes("<anonymous>")&&(Wt=Wt.replace("<anonymous>",kt.displayName)),Wt}while(1<=jt&&0<=Ht);break}}}finally{Na=!1,Error.prepareStackTrace=Dt}return(kt=kt?kt.displayName||kt.name:"")?Ma(kt):""}function Pa(kt){switch(kt.tag){case 5:return Ma(kt.type);case 16:return Ma("Lazy");case 13:return Ma("Suspense");case 19:return Ma("SuspenseList");case 0:case 2:case 15:return kt=Oa(kt.type,!1),kt;case 11:return kt=Oa(kt.type.render,!1),kt;case 1:return kt=Oa(kt.type,!0),kt;default:return""}}function Qa(kt){if(kt==null)return null;if(typeof kt=="function")return kt.displayName||kt.name||null;if(typeof kt=="string")return kt;switch(kt){case ya:return"Fragment";case wa:return"Portal";case Aa:return"Profiler";case za:return"StrictMode";case Ea:return"Suspense";case Fa:return"SuspenseList"}if(typeof kt=="object")switch(kt.$$typeof){case Ca:return(kt.displayName||"Context")+".Consumer";case Ba:return(kt._context.displayName||"Context")+".Provider";case Da:var _e=kt.render;return kt=kt.displayName,kt||(kt=_e.displayName||_e.name||"",kt=kt!==""?"ForwardRef("+kt+")":"ForwardRef"),kt;case Ga:return _e=kt.displayName||null,_e!==null?_e:Qa(kt.type)||"Memo";case Ha:_e=kt._payload,kt=kt._init;try{return Qa(kt(_e))}catch{}}return null}function Ra(kt){var _e=kt.type;switch(kt.tag){case 24:return"Cache";case 9:return(_e.displayName||"Context")+".Consumer";case 10:return(_e._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return kt=_e.render,kt=kt.displayName||kt.name||"",_e.displayName||(kt!==""?"ForwardRef("+kt+")":"ForwardRef");case 7:return"Fragment";case 5:return _e;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return Qa(_e);case 8:return _e===za?"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 _e=="function")return _e.displayName||_e.name||null;if(typeof _e=="string")return _e}return null}function Sa(kt){switch(typeof kt){case"boolean":case"number":case"string":case"undefined":return kt;case"object":return kt;default:return""}}function Ta(kt){var _e=kt.type;return(kt=kt.nodeName)&&kt.toLowerCase()==="input"&&(_e==="checkbox"||_e==="radio")}function Ua(kt){var _e=Ta(kt)?"checked":"value",Dt=Object.getOwnPropertyDescriptor(kt.constructor.prototype,_e),Vt=""+kt[_e];if(!kt.hasOwnProperty(_e)&&typeof Dt<"u"&&typeof Dt.get=="function"&&typeof Dt.set=="function"){var Gt=Dt.get,zt=Dt.set;return Object.defineProperty(kt,_e,{configurable:!0,get:function(){return Gt.call(this)},set:function(jt){Vt=""+jt,zt.call(this,jt)}}),Object.defineProperty(kt,_e,{enumerable:Dt.enumerable}),{getValue:function(){return Vt},setValue:function(jt){Vt=""+jt},stopTracking:function(){kt._valueTracker=null,delete kt[_e]}}}}function Va(kt){kt._valueTracker||(kt._valueTracker=Ua(kt))}function Wa(kt){if(!kt)return!1;var _e=kt._valueTracker;if(!_e)return!0;var Dt=_e.getValue(),Vt="";return kt&&(Vt=Ta(kt)?kt.checked?"true":"false":kt.value),kt=Vt,kt!==Dt?(_e.setValue(kt),!0):!1}function Xa(kt){if(kt=kt||(typeof document<"u"?document:void 0),typeof kt>"u")return null;try{return kt.activeElement||kt.body}catch{return kt.body}}function Ya(kt,_e){var Dt=_e.checked;return A({},_e,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:Dt??kt._wrapperState.initialChecked})}function Za(kt,_e){var Dt=_e.defaultValue==null?"":_e.defaultValue,Vt=_e.checked!=null?_e.checked:_e.defaultChecked;Dt=Sa(_e.value!=null?_e.value:Dt),kt._wrapperState={initialChecked:Vt,initialValue:Dt,controlled:_e.type==="checkbox"||_e.type==="radio"?_e.checked!=null:_e.value!=null}}function ab(kt,_e){_e=_e.checked,_e!=null&&ta(kt,"checked",_e,!1)}function bb(kt,_e){ab(kt,_e);var Dt=Sa(_e.value),Vt=_e.type;if(Dt!=null)Vt==="number"?(Dt===0&&kt.value===""||kt.value!=Dt)&&(kt.value=""+Dt):kt.value!==""+Dt&&(kt.value=""+Dt);else if(Vt==="submit"||Vt==="reset"){kt.removeAttribute("value");return}_e.hasOwnProperty("value")?cb(kt,_e.type,Dt):_e.hasOwnProperty("defaultValue")&&cb(kt,_e.type,Sa(_e.defaultValue)),_e.checked==null&&_e.defaultChecked!=null&&(kt.defaultChecked=!!_e.defaultChecked)}function db(kt,_e,Dt){if(_e.hasOwnProperty("value")||_e.hasOwnProperty("defaultValue")){var Vt=_e.type;if(!(Vt!=="submit"&&Vt!=="reset"||_e.value!==void 0&&_e.value!==null))return;_e=""+kt._wrapperState.initialValue,Dt||_e===kt.value||(kt.value=_e),kt.defaultValue=_e}Dt=kt.name,Dt!==""&&(kt.name=""),kt.defaultChecked=!!kt._wrapperState.initialChecked,Dt!==""&&(kt.name=Dt)}function cb(kt,_e,Dt){(_e!=="number"||Xa(kt.ownerDocument)!==kt)&&(Dt==null?kt.defaultValue=""+kt._wrapperState.initialValue:kt.defaultValue!==""+Dt&&(kt.defaultValue=""+Dt))}var eb=Array.isArray;function fb(kt,_e,Dt,Vt){if(kt=kt.options,_e){_e={};for(var Gt=0;Gt<Dt.length;Gt++)_e["$"+Dt[Gt]]=!0;for(Dt=0;Dt<kt.length;Dt++)Gt=_e.hasOwnProperty("$"+kt[Dt].value),kt[Dt].selected!==Gt&&(kt[Dt].selected=Gt),Gt&&Vt&&(kt[Dt].defaultSelected=!0)}else{for(Dt=""+Sa(Dt),_e=null,Gt=0;Gt<kt.length;Gt++){if(kt[Gt].value===Dt){kt[Gt].selected=!0,Vt&&(kt[Gt].defaultSelected=!0);return}_e!==null||kt[Gt].disabled||(_e=kt[Gt])}_e!==null&&(_e.selected=!0)}}function gb(kt,_e){if(_e.dangerouslySetInnerHTML!=null)throw Error(p$3(91));return A({},_e,{value:void 0,defaultValue:void 0,children:""+kt._wrapperState.initialValue})}function hb(kt,_e){var Dt=_e.value;if(Dt==null){if(Dt=_e.children,_e=_e.defaultValue,Dt!=null){if(_e!=null)throw Error(p$3(92));if(eb(Dt)){if(1<Dt.length)throw Error(p$3(93));Dt=Dt[0]}_e=Dt}_e==null&&(_e=""),Dt=_e}kt._wrapperState={initialValue:Sa(Dt)}}function ib(kt,_e){var Dt=Sa(_e.value),Vt=Sa(_e.defaultValue);Dt!=null&&(Dt=""+Dt,Dt!==kt.value&&(kt.value=Dt),_e.defaultValue==null&&kt.defaultValue!==Dt&&(kt.defaultValue=Dt)),Vt!=null&&(kt.defaultValue=""+Vt)}function jb(kt){var _e=kt.textContent;_e===kt._wrapperState.initialValue&&_e!==""&&_e!==null&&(kt.value=_e)}function kb(kt){switch(kt){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 lb(kt,_e){return kt==null||kt==="http://www.w3.org/1999/xhtml"?kb(_e):kt==="http://www.w3.org/2000/svg"&&_e==="foreignObject"?"http://www.w3.org/1999/xhtml":kt}var mb,nb=function(kt){return typeof MSApp<"u"&&MSApp.execUnsafeLocalFunction?function(_e,Dt,Vt,Gt){MSApp.execUnsafeLocalFunction(function(){return kt(_e,Dt,Vt,Gt)})}:kt}(function(kt,_e){if(kt.namespaceURI!=="http://www.w3.org/2000/svg"||"innerHTML"in kt)kt.innerHTML=_e;else{for(mb=mb||document.createElement("div"),mb.innerHTML="<svg>"+_e.valueOf().toString()+"</svg>",_e=mb.firstChild;kt.firstChild;)kt.removeChild(kt.firstChild);for(;_e.firstChild;)kt.appendChild(_e.firstChild)}});function ob(kt,_e){if(_e){var Dt=kt.firstChild;if(Dt&&Dt===kt.lastChild&&Dt.nodeType===3){Dt.nodeValue=_e;return}}kt.textContent=_e}var pb={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},qb=["Webkit","ms","Moz","O"];Object.keys(pb).forEach(function(kt){qb.forEach(function(_e){_e=_e+kt.charAt(0).toUpperCase()+kt.substring(1),pb[_e]=pb[kt]})});function rb(kt,_e,Dt){return _e==null||typeof _e=="boolean"||_e===""?"":Dt||typeof _e!="number"||_e===0||pb.hasOwnProperty(kt)&&pb[kt]?(""+_e).trim():_e+"px"}function sb(kt,_e){kt=kt.style;for(var Dt in _e)if(_e.hasOwnProperty(Dt)){var Vt=Dt.indexOf("--")===0,Gt=rb(Dt,_e[Dt],Vt);Dt==="float"&&(Dt="cssFloat"),Vt?kt.setProperty(Dt,Gt):kt[Dt]=Gt}}var tb=A({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 ub(kt,_e){if(_e){if(tb[kt]&&(_e.children!=null||_e.dangerouslySetInnerHTML!=null))throw Error(p$3(137,kt));if(_e.dangerouslySetInnerHTML!=null){if(_e.children!=null)throw Error(p$3(60));if(typeof _e.dangerouslySetInnerHTML!="object"||!("__html"in _e.dangerouslySetInnerHTML))throw Error(p$3(61))}if(_e.style!=null&&typeof _e.style!="object")throw Error(p$3(62))}}function vb(kt,_e){if(kt.indexOf("-")===-1)return typeof _e.is=="string";switch(kt){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 wb=null;function xb(kt){return kt=kt.target||kt.srcElement||window,kt.correspondingUseElement&&(kt=kt.correspondingUseElement),kt.nodeType===3?kt.parentNode:kt}var yb=null,zb=null,Ab=null;function Bb(kt){if(kt=Cb(kt)){if(typeof yb!="function")throw Error(p$3(280));var _e=kt.stateNode;_e&&(_e=Db(_e),yb(kt.stateNode,kt.type,_e))}}function Eb(kt){zb?Ab?Ab.push(kt):Ab=[kt]:zb=kt}function Fb(){if(zb){var kt=zb,_e=Ab;if(Ab=zb=null,Bb(kt),_e)for(kt=0;kt<_e.length;kt++)Bb(_e[kt])}}function Gb(kt,_e){return kt(_e)}function Hb(){}var Ib=!1;function Jb(kt,_e,Dt){if(Ib)return kt(_e,Dt);Ib=!0;try{return Gb(kt,_e,Dt)}finally{Ib=!1,(zb!==null||Ab!==null)&&(Hb(),Fb())}}function Kb(kt,_e){var Dt=kt.stateNode;if(Dt===null)return null;var Vt=Db(Dt);if(Vt===null)return null;Dt=Vt[_e];e:switch(_e){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(Vt=!Vt.disabled)||(kt=kt.type,Vt=!(kt==="button"||kt==="input"||kt==="select"||kt==="textarea")),kt=!Vt;break e;default:kt=!1}if(kt)return null;if(Dt&&typeof Dt!="function")throw Error(p$3(231,_e,typeof Dt));return Dt}var Lb=!1;if(ia)try{var Mb={};Object.defineProperty(Mb,"passive",{get:function(){Lb=!0}}),window.addEventListener("test",Mb,Mb),window.removeEventListener("test",Mb,Mb)}catch{Lb=!1}function Nb(kt,_e,Dt,Vt,Gt,zt,jt,Ht,Wt){var qt=Array.prototype.slice.call(arguments,3);try{_e.apply(Dt,qt)}catch(Xt){this.onError(Xt)}}var Ob=!1,Pb=null,Qb=!1,Rb=null,Sb={onError:function(kt){Ob=!0,Pb=kt}};function Tb(kt,_e,Dt,Vt,Gt,zt,jt,Ht,Wt){Ob=!1,Pb=null,Nb.apply(Sb,arguments)}function Ub(kt,_e,Dt,Vt,Gt,zt,jt,Ht,Wt){if(Tb.apply(this,arguments),Ob){if(Ob){var qt=Pb;Ob=!1,Pb=null}else throw Error(p$3(198));Qb||(Qb=!0,Rb=qt)}}function Vb(kt){var _e=kt,Dt=kt;if(kt.alternate)for(;_e.return;)_e=_e.return;else{kt=_e;do _e=kt,_e.flags&4098&&(Dt=_e.return),kt=_e.return;while(kt)}return _e.tag===3?Dt:null}function Wb(kt){if(kt.tag===13){var _e=kt.memoizedState;if(_e===null&&(kt=kt.alternate,kt!==null&&(_e=kt.memoizedState)),_e!==null)return _e.dehydrated}return null}function Xb(kt){if(Vb(kt)!==kt)throw Error(p$3(188))}function Yb(kt){var _e=kt.alternate;if(!_e){if(_e=Vb(kt),_e===null)throw Error(p$3(188));return _e!==kt?null:kt}for(var Dt=kt,Vt=_e;;){var Gt=Dt.return;if(Gt===null)break;var zt=Gt.alternate;if(zt===null){if(Vt=Gt.return,Vt!==null){Dt=Vt;continue}break}if(Gt.child===zt.child){for(zt=Gt.child;zt;){if(zt===Dt)return Xb(Gt),kt;if(zt===Vt)return Xb(Gt),_e;zt=zt.sibling}throw Error(p$3(188))}if(Dt.return!==Vt.return)Dt=Gt,Vt=zt;else{for(var jt=!1,Ht=Gt.child;Ht;){if(Ht===Dt){jt=!0,Dt=Gt,Vt=zt;break}if(Ht===Vt){jt=!0,Vt=Gt,Dt=zt;break}Ht=Ht.sibling}if(!jt){for(Ht=zt.child;Ht;){if(Ht===Dt){jt=!0,Dt=zt,Vt=Gt;break}if(Ht===Vt){jt=!0,Vt=zt,Dt=Gt;break}Ht=Ht.sibling}if(!jt)throw Error(p$3(189))}}if(Dt.alternate!==Vt)throw Error(p$3(190))}if(Dt.tag!==3)throw Error(p$3(188));return Dt.stateNode.current===Dt?kt:_e}function Zb(kt){return kt=Yb(kt),kt!==null?$b(kt):null}function $b(kt){if(kt.tag===5||kt.tag===6)return kt;for(kt=kt.child;kt!==null;){var _e=$b(kt);if(_e!==null)return _e;kt=kt.sibling}return null}var ac=ca.unstable_scheduleCallback,bc=ca.unstable_cancelCallback,cc=ca.unstable_shouldYield,dc=ca.unstable_requestPaint,B$2=ca.unstable_now,ec$1=ca.unstable_getCurrentPriorityLevel,fc=ca.unstable_ImmediatePriority,gc=ca.unstable_UserBlockingPriority,hc=ca.unstable_NormalPriority,ic=ca.unstable_LowPriority,jc=ca.unstable_IdlePriority,kc=null,lc$1=null;function mc(kt){if(lc$1&&typeof lc$1.onCommitFiberRoot=="function")try{lc$1.onCommitFiberRoot(kc,kt,void 0,(kt.current.flags&128)===128)}catch{}}var oc=Math.clz32?Math.clz32:nc,pc=Math.log,qc=Math.LN2;function nc(kt){return kt>>>=0,kt===0?32:31-(pc(kt)/qc|0)|0}var rc=64,sc=4194304;function tc(kt){switch(kt&-kt){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 kt&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return kt&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return kt}}function uc(kt,_e){var Dt=kt.pendingLanes;if(Dt===0)return 0;var Vt=0,Gt=kt.suspendedLanes,zt=kt.pingedLanes,jt=Dt&268435455;if(jt!==0){var Ht=jt&~Gt;Ht!==0?Vt=tc(Ht):(zt&=jt,zt!==0&&(Vt=tc(zt)))}else jt=Dt&~Gt,jt!==0?Vt=tc(jt):zt!==0&&(Vt=tc(zt));if(Vt===0)return 0;if(_e!==0&&_e!==Vt&&!(_e&Gt)&&(Gt=Vt&-Vt,zt=_e&-_e,Gt>=zt||Gt===16&&(zt&4194240)!==0))return _e;if(Vt&4&&(Vt|=Dt&16),_e=kt.entangledLanes,_e!==0)for(kt=kt.entanglements,_e&=Vt;0<_e;)Dt=31-oc(_e),Gt=1<<Dt,Vt|=kt[Dt],_e&=~Gt;return Vt}function vc(kt,_e){switch(kt){case 1:case 2:case 4:return _e+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 _e+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 wc(kt,_e){for(var Dt=kt.suspendedLanes,Vt=kt.pingedLanes,Gt=kt.expirationTimes,zt=kt.pendingLanes;0<zt;){var jt=31-oc(zt),Ht=1<<jt,Wt=Gt[jt];Wt===-1?(!(Ht&Dt)||Ht&Vt)&&(Gt[jt]=vc(Ht,_e)):Wt<=_e&&(kt.expiredLanes|=Ht),zt&=~Ht}}function xc(kt){return kt=kt.pendingLanes&-1073741825,kt!==0?kt:kt&1073741824?1073741824:0}function yc(){var kt=rc;return rc<<=1,!(rc&4194240)&&(rc=64),kt}function zc(kt){for(var _e=[],Dt=0;31>Dt;Dt++)_e.push(kt);return _e}function Ac(kt,_e,Dt){kt.pendingLanes|=_e,_e!==536870912&&(kt.suspendedLanes=0,kt.pingedLanes=0),kt=kt.eventTimes,_e=31-oc(_e),kt[_e]=Dt}function Bc(kt,_e){var Dt=kt.pendingLanes&~_e;kt.pendingLanes=_e,kt.suspendedLanes=0,kt.pingedLanes=0,kt.expiredLanes&=_e,kt.mutableReadLanes&=_e,kt.entangledLanes&=_e,_e=kt.entanglements;var Vt=kt.eventTimes;for(kt=kt.expirationTimes;0<Dt;){var Gt=31-oc(Dt),zt=1<<Gt;_e[Gt]=0,Vt[Gt]=-1,kt[Gt]=-1,Dt&=~zt}}function Cc(kt,_e){var Dt=kt.entangledLanes|=_e;for(kt=kt.entanglements;Dt;){var Vt=31-oc(Dt),Gt=1<<Vt;Gt&_e|kt[Vt]&_e&&(kt[Vt]|=_e),Dt&=~Gt}}var C$1=0;function Dc(kt){return kt&=-kt,1<kt?4<kt?kt&268435455?16:536870912:4:1}var Ec,Fc,Gc,Hc,Ic,Jc=!1,Kc=[],Lc=null,Mc=null,Nc=null,Oc=new Map,Pc=new Map,Qc=[],Rc="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 Sc(kt,_e){switch(kt){case"focusin":case"focusout":Lc=null;break;case"dragenter":case"dragleave":Mc=null;break;case"mouseover":case"mouseout":Nc=null;break;case"pointerover":case"pointerout":Oc.delete(_e.pointerId);break;case"gotpointercapture":case"lostpointercapture":Pc.delete(_e.pointerId)}}function Tc(kt,_e,Dt,Vt,Gt,zt){return kt===null||kt.nativeEvent!==zt?(kt={blockedOn:_e,domEventName:Dt,eventSystemFlags:Vt,nativeEvent:zt,targetContainers:[Gt]},_e!==null&&(_e=Cb(_e),_e!==null&&Fc(_e)),kt):(kt.eventSystemFlags|=Vt,_e=kt.targetContainers,Gt!==null&&_e.indexOf(Gt)===-1&&_e.push(Gt),kt)}function Uc(kt,_e,Dt,Vt,Gt){switch(_e){case"focusin":return Lc=Tc(Lc,kt,_e,Dt,Vt,Gt),!0;case"dragenter":return Mc=Tc(Mc,kt,_e,Dt,Vt,Gt),!0;case"mouseover":return Nc=Tc(Nc,kt,_e,Dt,Vt,Gt),!0;case"pointerover":var zt=Gt.pointerId;return Oc.set(zt,Tc(Oc.get(zt)||null,kt,_e,Dt,Vt,Gt)),!0;case"gotpointercapture":return zt=Gt.pointerId,Pc.set(zt,Tc(Pc.get(zt)||null,kt,_e,Dt,Vt,Gt)),!0}return!1}function Vc(kt){var _e=Wc(kt.target);if(_e!==null){var Dt=Vb(_e);if(Dt!==null){if(_e=Dt.tag,_e===13){if(_e=Wb(Dt),_e!==null){kt.blockedOn=_e,Ic(kt.priority,function(){Gc(Dt)});return}}else if(_e===3&&Dt.stateNode.current.memoizedState.isDehydrated){kt.blockedOn=Dt.tag===3?Dt.stateNode.containerInfo:null;return}}}kt.blockedOn=null}function Xc(kt){if(kt.blockedOn!==null)return!1;for(var _e=kt.targetContainers;0<_e.length;){var Dt=Yc(kt.domEventName,kt.eventSystemFlags,_e[0],kt.nativeEvent);if(Dt===null){Dt=kt.nativeEvent;var Vt=new Dt.constructor(Dt.type,Dt);wb=Vt,Dt.target.dispatchEvent(Vt),wb=null}else return _e=Cb(Dt),_e!==null&&Fc(_e),kt.blockedOn=Dt,!1;_e.shift()}return!0}function Zc(kt,_e,Dt){Xc(kt)&&Dt.delete(_e)}function $c(){Jc=!1,Lc!==null&&Xc(Lc)&&(Lc=null),Mc!==null&&Xc(Mc)&&(Mc=null),Nc!==null&&Xc(Nc)&&(Nc=null),Oc.forEach(Zc),Pc.forEach(Zc)}function ad(kt,_e){kt.blockedOn===_e&&(kt.blockedOn=null,Jc||(Jc=!0,ca.unstable_scheduleCallback(ca.unstable_NormalPriority,$c)))}function bd(kt){function _e(Gt){return ad(Gt,kt)}if(0<Kc.length){ad(Kc[0],kt);for(var Dt=1;Dt<Kc.length;Dt++){var Vt=Kc[Dt];Vt.blockedOn===kt&&(Vt.blockedOn=null)}}for(Lc!==null&&ad(Lc,kt),Mc!==null&&ad(Mc,kt),Nc!==null&&ad(Nc,kt),Oc.forEach(_e),Pc.forEach(_e),Dt=0;Dt<Qc.length;Dt++)Vt=Qc[Dt],Vt.blockedOn===kt&&(Vt.blockedOn=null);for(;0<Qc.length&&(Dt=Qc[0],Dt.blockedOn===null);)Vc(Dt),Dt.blockedOn===null&&Qc.shift()}var cd=ua.ReactCurrentBatchConfig,dd=!0;function ed(kt,_e,Dt,Vt){var Gt=C$1,zt=cd.transition;cd.transition=null;try{C$1=1,fd$1(kt,_e,Dt,Vt)}finally{C$1=Gt,cd.transition=zt}}function gd(kt,_e,Dt,Vt){var Gt=C$1,zt=cd.transition;cd.transition=null;try{C$1=4,fd$1(kt,_e,Dt,Vt)}finally{C$1=Gt,cd.transition=zt}}function fd$1(kt,_e,Dt,Vt){if(dd){var Gt=Yc(kt,_e,Dt,Vt);if(Gt===null)hd(kt,_e,Vt,id,Dt),Sc(kt,Vt);else if(Uc(Gt,kt,_e,Dt,Vt))Vt.stopPropagation();else if(Sc(kt,Vt),_e&4&&-1<Rc.indexOf(kt)){for(;Gt!==null;){var zt=Cb(Gt);if(zt!==null&&Ec(zt),zt=Yc(kt,_e,Dt,Vt),zt===null&&hd(kt,_e,Vt,id,Dt),zt===Gt)break;Gt=zt}Gt!==null&&Vt.stopPropagation()}else hd(kt,_e,Vt,null,Dt)}}var id=null;function Yc(kt,_e,Dt,Vt){if(id=null,kt=xb(Vt),kt=Wc(kt),kt!==null)if(_e=Vb(kt),_e===null)kt=null;else if(Dt=_e.tag,Dt===13){if(kt=Wb(_e),kt!==null)return kt;kt=null}else if(Dt===3){if(_e.stateNode.current.memoizedState.isDehydrated)return _e.tag===3?_e.stateNode.containerInfo:null;kt=null}else _e!==kt&&(kt=null);return id=kt,null}function jd(kt){switch(kt){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(ec$1()){case fc:return 1;case gc:return 4;case hc:case ic:return 16;case jc:return 536870912;default:return 16}default:return 16}}var kd=null,ld=null,md=null;function nd(){if(md)return md;var kt,_e=ld,Dt=_e.length,Vt,Gt="value"in kd?kd.value:kd.textContent,zt=Gt.length;for(kt=0;kt<Dt&&_e[kt]===Gt[kt];kt++);var jt=Dt-kt;for(Vt=1;Vt<=jt&&_e[Dt-Vt]===Gt[zt-Vt];Vt++);return md=Gt.slice(kt,1<Vt?1-Vt:void 0)}function od(kt){var _e=kt.keyCode;return"charCode"in kt?(kt=kt.charCode,kt===0&&_e===13&&(kt=13)):kt=_e,kt===10&&(kt=13),32<=kt||kt===13?kt:0}function pd(){return!0}function qd(){return!1}function rd(kt){function _e(Dt,Vt,Gt,zt,jt){this._reactName=Dt,this._targetInst=Gt,this.type=Vt,this.nativeEvent=zt,this.target=jt,this.currentTarget=null;for(var Ht in kt)kt.hasOwnProperty(Ht)&&(Dt=kt[Ht],this[Ht]=Dt?Dt(zt):zt[Ht]);return this.isDefaultPrevented=(zt.defaultPrevented!=null?zt.defaultPrevented:zt.returnValue===!1)?pd:qd,this.isPropagationStopped=qd,this}return A(_e.prototype,{preventDefault:function(){this.defaultPrevented=!0;var Dt=this.nativeEvent;Dt&&(Dt.preventDefault?Dt.preventDefault():typeof Dt.returnValue!="unknown"&&(Dt.returnValue=!1),this.isDefaultPrevented=pd)},stopPropagation:function(){var Dt=this.nativeEvent;Dt&&(Dt.stopPropagation?Dt.stopPropagation():typeof Dt.cancelBubble!="unknown"&&(Dt.cancelBubble=!0),this.isPropagationStopped=pd)},persist:function(){},isPersistent:pd}),_e}var sd={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(kt){return kt.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},td$2=rd(sd),ud=A({},sd,{view:0,detail:0}),vd=rd(ud),wd,xd,yd,Ad=A({},ud,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:zd,button:0,buttons:0,relatedTarget:function(kt){return kt.relatedTarget===void 0?kt.fromElement===kt.srcElement?kt.toElement:kt.fromElement:kt.relatedTarget},movementX:function(kt){return"movementX"in kt?kt.movementX:(kt!==yd&&(yd&&kt.type==="mousemove"?(wd=kt.screenX-yd.screenX,xd=kt.screenY-yd.screenY):xd=wd=0,yd=kt),wd)},movementY:function(kt){return"movementY"in kt?kt.movementY:xd}}),Bd=rd(Ad),Cd=A({},Ad,{dataTransfer:0}),Dd=rd(Cd),Ed=A({},ud,{relatedTarget:0}),Fd=rd(Ed),Gd=A({},sd,{animationName:0,elapsedTime:0,pseudoElement:0}),Hd=rd(Gd),Id=A({},sd,{clipboardData:function(kt){return"clipboardData"in kt?kt.clipboardData:window.clipboardData}}),Jd=rd(Id),Kd=A({},sd,{data:0}),Ld=rd(Kd),Md={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},Nd={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"},Od={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function Pd(kt){var _e=this.nativeEvent;return _e.getModifierState?_e.getModifierState(kt):(kt=Od[kt])?!!_e[kt]:!1}function zd(){return Pd}var Qd=A({},ud,{key:function(kt){if(kt.key){var _e=Md[kt.key]||kt.key;if(_e!=="Unidentified")return _e}return kt.type==="keypress"?(kt=od(kt),kt===13?"Enter":String.fromCharCode(kt)):kt.type==="keydown"||kt.type==="keyup"?Nd[kt.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:zd,charCode:function(kt){return kt.type==="keypress"?od(kt):0},keyCode:function(kt){return kt.type==="keydown"||kt.type==="keyup"?kt.keyCode:0},which:function(kt){return kt.type==="keypress"?od(kt):kt.type==="keydown"||kt.type==="keyup"?kt.keyCode:0}}),Rd=rd(Qd),Sd=A({},Ad,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),Td=rd(Sd),Ud=A({},ud,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:zd}),Vd=rd(Ud),Wd=A({},sd,{propertyName:0,elapsedTime:0,pseudoElement:0}),Xd=rd(Wd),Yd=A({},Ad,{deltaX:function(kt){return"deltaX"in kt?kt.deltaX:"wheelDeltaX"in kt?-kt.wheelDeltaX:0},deltaY:function(kt){return"deltaY"in kt?kt.deltaY:"wheelDeltaY"in kt?-kt.wheelDeltaY:"wheelDelta"in kt?-kt.wheelDelta:0},deltaZ:0,deltaMode:0}),Zd=rd(Yd),$d=[9,13,27,32],ae$1=ia&&"CompositionEvent"in window,be$1=null;ia&&"documentMode"in document&&(be$1=document.documentMode);var ce=ia&&"TextEvent"in window&&!be$1,de=ia&&(!ae$1||be$1&&8<be$1&&11>=be$1),ee=String.fromCharCode(32),fe=!1;function ge$1(kt,_e){switch(kt){case"keyup":return $d.indexOf(_e.keyCode)!==-1;case"keydown":return _e.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function he(kt){return kt=kt.detail,typeof kt=="object"&&"data"in kt?kt.data:null}var ie=!1;function je(kt,_e){switch(kt){case"compositionend":return he(_e);case"keypress":return _e.which!==32?null:(fe=!0,ee);case"textInput":return kt=_e.data,kt===ee&&fe?null:kt;default:return null}}function ke(kt,_e){if(ie)return kt==="compositionend"||!ae$1&&ge$1(kt,_e)?(kt=nd(),md=ld=kd=null,ie=!1,kt):null;switch(kt){case"paste":return null;case"keypress":if(!(_e.ctrlKey||_e.altKey||_e.metaKey)||_e.ctrlKey&&_e.altKey){if(_e.char&&1<_e.char.length)return _e.char;if(_e.which)return String.fromCharCode(_e.which)}return null;case"compositionend":return de&&_e.locale!=="ko"?null:_e.data;default:return null}}var le={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 me(kt){var _e=kt&&kt.nodeName&&kt.nodeName.toLowerCase();return _e==="input"?!!le[kt.type]:_e==="textarea"}function ne(kt,_e,Dt,Vt){Eb(Vt),_e=oe(_e,"onChange"),0<_e.length&&(Dt=new td$2("onChange","change",null,Dt,Vt),kt.push({event:Dt,listeners:_e}))}var pe=null,qe=null;function re(kt){se(kt,0)}function te$1(kt){var _e=ue(kt);if(Wa(_e))return kt}function ve(kt,_e){if(kt==="change")return _e}var we$1=!1;if(ia){var xe;if(ia){var ye$1="oninput"in document;if(!ye$1){var ze=document.createElement("div");ze.setAttribute("oninput","return;"),ye$1=typeof ze.oninput=="function"}xe=ye$1}else xe=!1;we$1=xe&&(!document.documentMode||9<document.documentMode)}function Ae$1(){pe&&(pe.detachEvent("onpropertychange",Be),qe=pe=null)}function Be(kt){if(kt.propertyName==="value"&&te$1(qe)){var _e=[];ne(_e,qe,kt,xb(kt)),Jb(re,_e)}}function Ce$1(kt,_e,Dt){kt==="focusin"?(Ae$1(),pe=_e,qe=Dt,pe.attachEvent("onpropertychange",Be)):kt==="focusout"&&Ae$1()}function De(kt){if(kt==="selectionchange"||kt==="keyup"||kt==="keydown")return te$1(qe)}function Ee$1(kt,_e){if(kt==="click")return te$1(_e)}function Fe(kt,_e){if(kt==="input"||kt==="change")return te$1(_e)}function Ge(kt,_e){return kt===_e&&(kt!==0||1/kt===1/_e)||kt!==kt&&_e!==_e}var He=typeof Object.is=="function"?Object.is:Ge;function Ie(kt,_e){if(He(kt,_e))return!0;if(typeof kt!="object"||kt===null||typeof _e!="object"||_e===null)return!1;var Dt=Object.keys(kt),Vt=Object.keys(_e);if(Dt.length!==Vt.length)return!1;for(Vt=0;Vt<Dt.length;Vt++){var Gt=Dt[Vt];if(!ja.call(_e,Gt)||!He(kt[Gt],_e[Gt]))return!1}return!0}function Je(kt){for(;kt&&kt.firstChild;)kt=kt.firstChild;return kt}function Ke(kt,_e){var Dt=Je(kt);kt=0;for(var Vt;Dt;){if(Dt.nodeType===3){if(Vt=kt+Dt.textContent.length,kt<=_e&&Vt>=_e)return{node:Dt,offset:_e-kt};kt=Vt}e:{for(;Dt;){if(Dt.nextSibling){Dt=Dt.nextSibling;break e}Dt=Dt.parentNode}Dt=void 0}Dt=Je(Dt)}}function Le(kt,_e){return kt&&_e?kt===_e?!0:kt&&kt.nodeType===3?!1:_e&&_e.nodeType===3?Le(kt,_e.parentNode):"contains"in kt?kt.contains(_e):kt.compareDocumentPosition?!!(kt.compareDocumentPosition(_e)&16):!1:!1}function Me$1(){for(var kt=window,_e=Xa();_e instanceof kt.HTMLIFrameElement;){try{var Dt=typeof _e.contentWindow.location.href=="string"}catch{Dt=!1}if(Dt)kt=_e.contentWindow;else break;_e=Xa(kt.document)}return _e}function Ne$1(kt){var _e=kt&&kt.nodeName&&kt.nodeName.toLowerCase();return _e&&(_e==="input"&&(kt.type==="text"||kt.type==="search"||kt.type==="tel"||kt.type==="url"||kt.type==="password")||_e==="textarea"||kt.contentEditable==="true")}function Oe$1(kt){var _e=Me$1(),Dt=kt.focusedElem,Vt=kt.selectionRange;if(_e!==Dt&&Dt&&Dt.ownerDocument&&Le(Dt.ownerDocument.documentElement,Dt)){if(Vt!==null&&Ne$1(Dt)){if(_e=Vt.start,kt=Vt.end,kt===void 0&&(kt=_e),"selectionStart"in Dt)Dt.selectionStart=_e,Dt.selectionEnd=Math.min(kt,Dt.value.length);else if(kt=(_e=Dt.ownerDocument||document)&&_e.defaultView||window,kt.getSelection){kt=kt.getSelection();var Gt=Dt.textContent.length,zt=Math.min(Vt.start,Gt);Vt=Vt.end===void 0?zt:Math.min(Vt.end,Gt),!kt.extend&&zt>Vt&&(Gt=Vt,Vt=zt,zt=Gt),Gt=Ke(Dt,zt);var jt=Ke(Dt,Vt);Gt&&jt&&(kt.rangeCount!==1||kt.anchorNode!==Gt.node||kt.anchorOffset!==Gt.offset||kt.focusNode!==jt.node||kt.focusOffset!==jt.offset)&&(_e=_e.createRange(),_e.setStart(Gt.node,Gt.offset),kt.removeAllRanges(),zt>Vt?(kt.addRange(_e),kt.extend(jt.node,jt.offset)):(_e.setEnd(jt.node,jt.offset),kt.addRange(_e)))}}for(_e=[],kt=Dt;kt=kt.parentNode;)kt.nodeType===1&&_e.push({element:kt,left:kt.scrollLeft,top:kt.scrollTop});for(typeof Dt.focus=="function"&&Dt.focus(),Dt=0;Dt<_e.length;Dt++)kt=_e[Dt],kt.element.scrollLeft=kt.left,kt.element.scrollTop=kt.top}}var Pe=ia&&"documentMode"in document&&11>=document.documentMode,Qe=null,Re$1=null,Se$1=null,Te$1=!1;function Ue(kt,_e,Dt){var Vt=Dt.window===Dt?Dt.document:Dt.nodeType===9?Dt:Dt.ownerDocument;Te$1||Qe==null||Qe!==Xa(Vt)||(Vt=Qe,"selectionStart"in Vt&&Ne$1(Vt)?Vt={start:Vt.selectionStart,end:Vt.selectionEnd}:(Vt=(Vt.ownerDocument&&Vt.ownerDocument.defaultView||window).getSelection(),Vt={anchorNode:Vt.anchorNode,anchorOffset:Vt.anchorOffset,focusNode:Vt.focusNode,focusOffset:Vt.focusOffset}),Se$1&&Ie(Se$1,Vt)||(Se$1=Vt,Vt=oe(Re$1,"onSelect"),0<Vt.length&&(_e=new td$2("onSelect","select",null,_e,Dt),kt.push({event:_e,listeners:Vt}),_e.target=Qe)))}function Ve(kt,_e){var Dt={};return Dt[kt.toLowerCase()]=_e.toLowerCase(),Dt["Webkit"+kt]="webkit"+_e,Dt["Moz"+kt]="moz"+_e,Dt}var We={animationend:Ve("Animation","AnimationEnd"),animationiteration:Ve("Animation","AnimationIteration"),animationstart:Ve("Animation","AnimationStart"),transitionend:Ve("Transition","TransitionEnd")},Xe={},Ye={};ia&&(Ye=document.createElement("div").style,"AnimationEvent"in window||(delete We.animationend.animation,delete We.animationiteration.animation,delete We.animationstart.animation),"TransitionEvent"in window||delete We.transitionend.transition);function Ze(kt){if(Xe[kt])return Xe[kt];if(!We[kt])return kt;var _e=We[kt],Dt;for(Dt in _e)if(_e.hasOwnProperty(Dt)&&Dt in Ye)return Xe[kt]=_e[Dt];return kt}var $e$1=Ze("animationend"),af=Ze("animationiteration"),bf=Ze("animationstart"),cf=Ze("transitionend"),df=new Map,ef="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 ff(kt,_e){df.set(kt,_e),fa(_e,[kt])}for(var gf=0;gf<ef.length;gf++){var hf=ef[gf],jf=hf.toLowerCase(),kf=hf[0].toUpperCase()+hf.slice(1);ff(jf,"on"+kf)}ff($e$1,"onAnimationEnd");ff(af,"onAnimationIteration");ff(bf,"onAnimationStart");ff("dblclick","onDoubleClick");ff("focusin","onFocus");ff("focusout","onBlur");ff(cf,"onTransitionEnd");ha("onMouseEnter",["mouseout","mouseover"]);ha("onMouseLeave",["mouseout","mouseover"]);ha("onPointerEnter",["pointerout","pointerover"]);ha("onPointerLeave",["pointerout","pointerover"]);fa("onChange","change click focusin focusout input keydown keyup selectionchange".split(" "));fa("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" "));fa("onBeforeInput",["compositionend","keypress","textInput","paste"]);fa("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" "));fa("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" "));fa("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var lf="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(" "),mf=new Set("cancel close invalid load scroll toggle".split(" ").concat(lf));function nf(kt,_e,Dt){var Vt=kt.type||"unknown-event";kt.currentTarget=Dt,Ub(Vt,_e,void 0,kt),kt.currentTarget=null}function se(kt,_e){_e=(_e&4)!==0;for(var Dt=0;Dt<kt.length;Dt++){var Vt=kt[Dt],Gt=Vt.event;Vt=Vt.listeners;e:{var zt=void 0;if(_e)for(var jt=Vt.length-1;0<=jt;jt--){var Ht=Vt[jt],Wt=Ht.instance,qt=Ht.currentTarget;if(Ht=Ht.listener,Wt!==zt&&Gt.isPropagationStopped())break e;nf(Gt,Ht,qt),zt=Wt}else for(jt=0;jt<Vt.length;jt++){if(Ht=Vt[jt],Wt=Ht.instance,qt=Ht.currentTarget,Ht=Ht.listener,Wt!==zt&&Gt.isPropagationStopped())break e;nf(Gt,Ht,qt),zt=Wt}}}if(Qb)throw kt=Rb,Qb=!1,Rb=null,kt}function D$2(kt,_e){var Dt=_e[of];Dt===void 0&&(Dt=_e[of]=new Set);var Vt=kt+"__bubble";Dt.has(Vt)||(pf(_e,kt,2,!1),Dt.add(Vt))}function qf(kt,_e,Dt){var Vt=0;_e&&(Vt|=4),pf(Dt,kt,Vt,_e)}var rf="_reactListening"+Math.random().toString(36).slice(2);function sf(kt){if(!kt[rf]){kt[rf]=!0,da.forEach(function(Dt){Dt!=="selectionchange"&&(mf.has(Dt)||qf(Dt,!1,kt),qf(Dt,!0,kt))});var _e=kt.nodeType===9?kt:kt.ownerDocument;_e===null||_e[rf]||(_e[rf]=!0,qf("selectionchange",!1,_e))}}function pf(kt,_e,Dt,Vt){switch(jd(_e)){case 1:var Gt=ed;break;case 4:Gt=gd;break;default:Gt=fd$1}Dt=Gt.bind(null,_e,Dt,kt),Gt=void 0,!Lb||_e!=="touchstart"&&_e!=="touchmove"&&_e!=="wheel"||(Gt=!0),Vt?Gt!==void 0?kt.addEventListener(_e,Dt,{capture:!0,passive:Gt}):kt.addEventListener(_e,Dt,!0):Gt!==void 0?kt.addEventListener(_e,Dt,{passive:Gt}):kt.addEventListener(_e,Dt,!1)}function hd(kt,_e,Dt,Vt,Gt){var zt=Vt;if(!(_e&1)&&!(_e&2)&&Vt!==null)e:for(;;){if(Vt===null)return;var jt=Vt.tag;if(jt===3||jt===4){var Ht=Vt.stateNode.containerInfo;if(Ht===Gt||Ht.nodeType===8&&Ht.parentNode===Gt)break;if(jt===4)for(jt=Vt.return;jt!==null;){var Wt=jt.tag;if((Wt===3||Wt===4)&&(Wt=jt.stateNode.containerInfo,Wt===Gt||Wt.nodeType===8&&Wt.parentNode===Gt))return;jt=jt.return}for(;Ht!==null;){if(jt=Wc(Ht),jt===null)return;if(Wt=jt.tag,Wt===5||Wt===6){Vt=zt=jt;continue e}Ht=Ht.parentNode}}Vt=Vt.return}Jb(function(){var qt=zt,Xt=xb(Dt),Kt=[];e:{var Yt=df.get(kt);if(Yt!==void 0){var Zt=td$2,Jt=kt;switch(kt){case"keypress":if(od(Dt)===0)break e;case"keydown":case"keyup":Zt=Rd;break;case"focusin":Jt="focus",Zt=Fd;break;case"focusout":Jt="blur",Zt=Fd;break;case"beforeblur":case"afterblur":Zt=Fd;break;case"click":if(Dt.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":Zt=Bd;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":Zt=Dd;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":Zt=Vd;break;case $e$1:case af:case bf:Zt=Hd;break;case cf:Zt=Xd;break;case"scroll":Zt=vd;break;case"wheel":Zt=Zd;break;case"copy":case"cut":case"paste":Zt=Jd;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":Zt=Td}var nn=(_e&4)!==0,rn=!nn&&kt==="scroll",Qt=nn?Yt!==null?Yt+"Capture":null:Yt;nn=[];for(var en=qt,tn;en!==null;){tn=en;var sn=tn.stateNode;if(tn.tag===5&&sn!==null&&(tn=sn,Qt!==null&&(sn=Kb(en,Qt),sn!=null&&nn.push(tf(en,sn,tn)))),rn)break;en=en.return}0<nn.length&&(Yt=new Zt(Yt,Jt,null,Dt,Xt),Kt.push({event:Yt,listeners:nn}))}}if(!(_e&7)){e:{if(Yt=kt==="mouseover"||kt==="pointerover",Zt=kt==="mouseout"||kt==="pointerout",Yt&&Dt!==wb&&(Jt=Dt.relatedTarget||Dt.fromElement)&&(Wc(Jt)||Jt[uf]))break e;if((Zt||Yt)&&(Yt=Xt.window===Xt?Xt:(Yt=Xt.ownerDocument)?Yt.defaultView||Yt.parentWindow:window,Zt?(Jt=Dt.relatedTarget||Dt.toElement,Zt=qt,Jt=Jt?Wc(Jt):null,Jt!==null&&(rn=Vb(Jt),Jt!==rn||Jt.tag!==5&&Jt.tag!==6)&&(Jt=null)):(Zt=null,Jt=qt),Zt!==Jt)){if(nn=Bd,sn="onMouseLeave",Qt="onMouseEnter",en="mouse",(kt==="pointerout"||kt==="pointerover")&&(nn=Td,sn="onPointerLeave",Qt="onPointerEnter",en="pointer"),rn=Zt==null?Yt:ue(Zt),tn=Jt==null?Yt:ue(Jt),Yt=new nn(sn,en+"leave",Zt,Dt,Xt),Yt.target=rn,Yt.relatedTarget=tn,sn=null,Wc(Xt)===qt&&(nn=new nn(Qt,en+"enter",Jt,Dt,Xt),nn.target=tn,nn.relatedTarget=rn,sn=nn),rn=sn,Zt&&Jt)t:{for(nn=Zt,Qt=Jt,en=0,tn=nn;tn;tn=vf(tn))en++;for(tn=0,sn=Qt;sn;sn=vf(sn))tn++;for(;0<en-tn;)nn=vf(nn),en--;for(;0<tn-en;)Qt=vf(Qt),tn--;for(;en--;){if(nn===Qt||Qt!==null&&nn===Qt.alternate)break t;nn=vf(nn),Qt=vf(Qt)}nn=null}else nn=null;Zt!==null&&wf(Kt,Yt,Zt,nn,!1),Jt!==null&&rn!==null&&wf(Kt,rn,Jt,nn,!0)}}e:{if(Yt=qt?ue(qt):window,Zt=Yt.nodeName&&Yt.nodeName.toLowerCase(),Zt==="select"||Zt==="input"&&Yt.type==="file")var cn=ve;else if(me(Yt))if(we$1)cn=Fe;else{cn=De;var un=Ce$1}else(Zt=Yt.nodeName)&&Zt.toLowerCase()==="input"&&(Yt.type==="checkbox"||Yt.type==="radio")&&(cn=Ee$1);if(cn&&(cn=cn(kt,qt))){ne(Kt,cn,Dt,Xt);break e}un&&un(kt,Yt,qt),kt==="focusout"&&(un=Yt._wrapperState)&&un.controlled&&Yt.type==="number"&&cb(Yt,"number",Yt.value)}switch(un=qt?ue(qt):window,kt){case"focusin":(me(un)||un.contentEditable==="true")&&(Qe=un,Re$1=qt,Se$1=null);break;case"focusout":Se$1=Re$1=Qe=null;break;case"mousedown":Te$1=!0;break;case"contextmenu":case"mouseup":case"dragend":Te$1=!1,Ue(Kt,Dt,Xt);break;case"selectionchange":if(Pe)break;case"keydown":case"keyup":Ue(Kt,Dt,Xt)}var hn;if(ae$1)e:{switch(kt){case"compositionstart":var dn="onCompositionStart";break e;case"compositionend":dn="onCompositionEnd";break e;case"compositionupdate":dn="onCompositionUpdate";break e}dn=void 0}else ie?ge$1(kt,Dt)&&(dn="onCompositionEnd"):kt==="keydown"&&Dt.keyCode===229&&(dn="onCompositionStart");dn&&(de&&Dt.locale!=="ko"&&(ie||dn!=="onCompositionStart"?dn==="onCompositionEnd"&&ie&&(hn=nd()):(kd=Xt,ld="value"in kd?kd.value:kd.textContent,ie=!0)),un=oe(qt,dn),0<un.length&&(dn=new Ld(dn,kt,null,Dt,Xt),Kt.push({event:dn,listeners:un}),hn?dn.data=hn:(hn=he(Dt),hn!==null&&(dn.data=hn)))),(hn=ce?je(kt,Dt):ke(kt,Dt))&&(qt=oe(qt,"onBeforeInput"),0<qt.length&&(Xt=new Ld("onBeforeInput","beforeinput",null,Dt,Xt),Kt.push({event:Xt,listeners:qt}),Xt.data=hn))}se(Kt,_e)})}function tf(kt,_e,Dt){return{instance:kt,listener:_e,currentTarget:Dt}}function oe(kt,_e){for(var Dt=_e+"Capture",Vt=[];kt!==null;){var Gt=kt,zt=Gt.stateNode;Gt.tag===5&&zt!==null&&(Gt=zt,zt=Kb(kt,Dt),zt!=null&&Vt.unshift(tf(kt,zt,Gt)),zt=Kb(kt,_e),zt!=null&&Vt.push(tf(kt,zt,Gt))),kt=kt.return}return Vt}function vf(kt){if(kt===null)return null;do kt=kt.return;while(kt&&kt.tag!==5);return kt||null}function wf(kt,_e,Dt,Vt,Gt){for(var zt=_e._reactName,jt=[];Dt!==null&&Dt!==Vt;){var Ht=Dt,Wt=Ht.alternate,qt=Ht.stateNode;if(Wt!==null&&Wt===Vt)break;Ht.tag===5&&qt!==null&&(Ht=qt,Gt?(Wt=Kb(Dt,zt),Wt!=null&&jt.unshift(tf(Dt,Wt,Ht))):Gt||(Wt=Kb(Dt,zt),Wt!=null&&jt.push(tf(Dt,Wt,Ht)))),Dt=Dt.return}jt.length!==0&&kt.push({event:_e,listeners:jt})}var xf=/\r\n?/g,yf=/\u0000|\uFFFD/g;function zf(kt){return(typeof kt=="string"?kt:""+kt).replace(xf,`
|
|
98
|
-
`).replace(yf,"")}function Af(kt,_e,Dt){if(_e=zf(_e),zf(kt)!==_e&&Dt)throw Error(p$3(425))}function Bf(){}var Cf=null,Df=null;function Ef(kt,_e){return kt==="textarea"||kt==="noscript"||typeof _e.children=="string"||typeof _e.children=="number"||typeof _e.dangerouslySetInnerHTML=="object"&&_e.dangerouslySetInnerHTML!==null&&_e.dangerouslySetInnerHTML.__html!=null}var Ff=typeof setTimeout=="function"?setTimeout:void 0,Gf=typeof clearTimeout=="function"?clearTimeout:void 0,Hf=typeof Promise=="function"?Promise:void 0,Jf=typeof queueMicrotask=="function"?queueMicrotask:typeof Hf<"u"?function(kt){return Hf.resolve(null).then(kt).catch(If)}:Ff;function If(kt){setTimeout(function(){throw kt})}function Kf(kt,_e){var Dt=_e,Vt=0;do{var Gt=Dt.nextSibling;if(kt.removeChild(Dt),Gt&&Gt.nodeType===8)if(Dt=Gt.data,Dt==="/$"){if(Vt===0){kt.removeChild(Gt),bd(_e);return}Vt--}else Dt!=="$"&&Dt!=="$?"&&Dt!=="$!"||Vt++;Dt=Gt}while(Dt);bd(_e)}function Lf(kt){for(;kt!=null;kt=kt.nextSibling){var _e=kt.nodeType;if(_e===1||_e===3)break;if(_e===8){if(_e=kt.data,_e==="$"||_e==="$!"||_e==="$?")break;if(_e==="/$")return null}}return kt}function Mf(kt){kt=kt.previousSibling;for(var _e=0;kt;){if(kt.nodeType===8){var Dt=kt.data;if(Dt==="$"||Dt==="$!"||Dt==="$?"){if(_e===0)return kt;_e--}else Dt==="/$"&&_e++}kt=kt.previousSibling}return null}var Nf=Math.random().toString(36).slice(2),Of="__reactFiber$"+Nf,Pf="__reactProps$"+Nf,uf="__reactContainer$"+Nf,of="__reactEvents$"+Nf,Qf="__reactListeners$"+Nf,Rf="__reactHandles$"+Nf;function Wc(kt){var _e=kt[Of];if(_e)return _e;for(var Dt=kt.parentNode;Dt;){if(_e=Dt[uf]||Dt[Of]){if(Dt=_e.alternate,_e.child!==null||Dt!==null&&Dt.child!==null)for(kt=Mf(kt);kt!==null;){if(Dt=kt[Of])return Dt;kt=Mf(kt)}return _e}kt=Dt,Dt=kt.parentNode}return null}function Cb(kt){return kt=kt[Of]||kt[uf],!kt||kt.tag!==5&&kt.tag!==6&&kt.tag!==13&&kt.tag!==3?null:kt}function ue(kt){if(kt.tag===5||kt.tag===6)return kt.stateNode;throw Error(p$3(33))}function Db(kt){return kt[Pf]||null}var Sf=[],Tf=-1;function Uf(kt){return{current:kt}}function E$2(kt){0>Tf||(kt.current=Sf[Tf],Sf[Tf]=null,Tf--)}function G$1(kt,_e){Tf++,Sf[Tf]=kt.current,kt.current=_e}var Vf={},H$1=Uf(Vf),Wf=Uf(!1),Xf=Vf;function Yf(kt,_e){var Dt=kt.type.contextTypes;if(!Dt)return Vf;var Vt=kt.stateNode;if(Vt&&Vt.__reactInternalMemoizedUnmaskedChildContext===_e)return Vt.__reactInternalMemoizedMaskedChildContext;var Gt={},zt;for(zt in Dt)Gt[zt]=_e[zt];return Vt&&(kt=kt.stateNode,kt.__reactInternalMemoizedUnmaskedChildContext=_e,kt.__reactInternalMemoizedMaskedChildContext=Gt),Gt}function Zf(kt){return kt=kt.childContextTypes,kt!=null}function $f(){E$2(Wf),E$2(H$1)}function ag(kt,_e,Dt){if(H$1.current!==Vf)throw Error(p$3(168));G$1(H$1,_e),G$1(Wf,Dt)}function bg(kt,_e,Dt){var Vt=kt.stateNode;if(_e=_e.childContextTypes,typeof Vt.getChildContext!="function")return Dt;Vt=Vt.getChildContext();for(var Gt in Vt)if(!(Gt in _e))throw Error(p$3(108,Ra(kt)||"Unknown",Gt));return A({},Dt,Vt)}function cg(kt){return kt=(kt=kt.stateNode)&&kt.__reactInternalMemoizedMergedChildContext||Vf,Xf=H$1.current,G$1(H$1,kt),G$1(Wf,Wf.current),!0}function dg(kt,_e,Dt){var Vt=kt.stateNode;if(!Vt)throw Error(p$3(169));Dt?(kt=bg(kt,_e,Xf),Vt.__reactInternalMemoizedMergedChildContext=kt,E$2(Wf),E$2(H$1),G$1(H$1,kt)):E$2(Wf),G$1(Wf,Dt)}var eg=null,fg=!1,gg=!1;function hg(kt){eg===null?eg=[kt]:eg.push(kt)}function ig(kt){fg=!0,hg(kt)}function jg(){if(!gg&&eg!==null){gg=!0;var kt=0,_e=C$1;try{var Dt=eg;for(C$1=1;kt<Dt.length;kt++){var Vt=Dt[kt];do Vt=Vt(!0);while(Vt!==null)}eg=null,fg=!1}catch(Gt){throw eg!==null&&(eg=eg.slice(kt+1)),ac(fc,jg),Gt}finally{C$1=_e,gg=!1}}return null}var kg=[],lg=0,mg=null,ng=0,og=[],pg=0,qg=null,rg=1,sg="";function tg(kt,_e){kg[lg++]=ng,kg[lg++]=mg,mg=kt,ng=_e}function ug(kt,_e,Dt){og[pg++]=rg,og[pg++]=sg,og[pg++]=qg,qg=kt;var Vt=rg;kt=sg;var Gt=32-oc(Vt)-1;Vt&=~(1<<Gt),Dt+=1;var zt=32-oc(_e)+Gt;if(30<zt){var jt=Gt-Gt%5;zt=(Vt&(1<<jt)-1).toString(32),Vt>>=jt,Gt-=jt,rg=1<<32-oc(_e)+Gt|Dt<<Gt|Vt,sg=zt+kt}else rg=1<<zt|Dt<<Gt|Vt,sg=kt}function vg(kt){kt.return!==null&&(tg(kt,1),ug(kt,1,0))}function wg(kt){for(;kt===mg;)mg=kg[--lg],kg[lg]=null,ng=kg[--lg],kg[lg]=null;for(;kt===qg;)qg=og[--pg],og[pg]=null,sg=og[--pg],og[pg]=null,rg=og[--pg],og[pg]=null}var xg=null,yg=null,I$1=!1,zg=null;function Ag(kt,_e){var Dt=Bg(5,null,null,0);Dt.elementType="DELETED",Dt.stateNode=_e,Dt.return=kt,_e=kt.deletions,_e===null?(kt.deletions=[Dt],kt.flags|=16):_e.push(Dt)}function Cg(kt,_e){switch(kt.tag){case 5:var Dt=kt.type;return _e=_e.nodeType!==1||Dt.toLowerCase()!==_e.nodeName.toLowerCase()?null:_e,_e!==null?(kt.stateNode=_e,xg=kt,yg=Lf(_e.firstChild),!0):!1;case 6:return _e=kt.pendingProps===""||_e.nodeType!==3?null:_e,_e!==null?(kt.stateNode=_e,xg=kt,yg=null,!0):!1;case 13:return _e=_e.nodeType!==8?null:_e,_e!==null?(Dt=qg!==null?{id:rg,overflow:sg}:null,kt.memoizedState={dehydrated:_e,treeContext:Dt,retryLane:1073741824},Dt=Bg(18,null,null,0),Dt.stateNode=_e,Dt.return=kt,kt.child=Dt,xg=kt,yg=null,!0):!1;default:return!1}}function Dg(kt){return(kt.mode&1)!==0&&(kt.flags&128)===0}function Eg(kt){if(I$1){var _e=yg;if(_e){var Dt=_e;if(!Cg(kt,_e)){if(Dg(kt))throw Error(p$3(418));_e=Lf(Dt.nextSibling);var Vt=xg;_e&&Cg(kt,_e)?Ag(Vt,Dt):(kt.flags=kt.flags&-4097|2,I$1=!1,xg=kt)}}else{if(Dg(kt))throw Error(p$3(418));kt.flags=kt.flags&-4097|2,I$1=!1,xg=kt}}}function Fg(kt){for(kt=kt.return;kt!==null&&kt.tag!==5&&kt.tag!==3&&kt.tag!==13;)kt=kt.return;xg=kt}function Gg(kt){if(kt!==xg)return!1;if(!I$1)return Fg(kt),I$1=!0,!1;var _e;if((_e=kt.tag!==3)&&!(_e=kt.tag!==5)&&(_e=kt.type,_e=_e!=="head"&&_e!=="body"&&!Ef(kt.type,kt.memoizedProps)),_e&&(_e=yg)){if(Dg(kt))throw Hg(),Error(p$3(418));for(;_e;)Ag(kt,_e),_e=Lf(_e.nextSibling)}if(Fg(kt),kt.tag===13){if(kt=kt.memoizedState,kt=kt!==null?kt.dehydrated:null,!kt)throw Error(p$3(317));e:{for(kt=kt.nextSibling,_e=0;kt;){if(kt.nodeType===8){var Dt=kt.data;if(Dt==="/$"){if(_e===0){yg=Lf(kt.nextSibling);break e}_e--}else Dt!=="$"&&Dt!=="$!"&&Dt!=="$?"||_e++}kt=kt.nextSibling}yg=null}}else yg=xg?Lf(kt.stateNode.nextSibling):null;return!0}function Hg(){for(var kt=yg;kt;)kt=Lf(kt.nextSibling)}function Ig(){yg=xg=null,I$1=!1}function Jg(kt){zg===null?zg=[kt]:zg.push(kt)}var Kg=ua.ReactCurrentBatchConfig;function Lg(kt,_e){if(kt&&kt.defaultProps){_e=A({},_e),kt=kt.defaultProps;for(var Dt in kt)_e[Dt]===void 0&&(_e[Dt]=kt[Dt]);return _e}return _e}var Mg=Uf(null),Ng=null,Og=null,Pg=null;function Qg(){Pg=Og=Ng=null}function Rg(kt){var _e=Mg.current;E$2(Mg),kt._currentValue=_e}function Sg(kt,_e,Dt){for(;kt!==null;){var Vt=kt.alternate;if((kt.childLanes&_e)!==_e?(kt.childLanes|=_e,Vt!==null&&(Vt.childLanes|=_e)):Vt!==null&&(Vt.childLanes&_e)!==_e&&(Vt.childLanes|=_e),kt===Dt)break;kt=kt.return}}function Tg(kt,_e){Ng=kt,Pg=Og=null,kt=kt.dependencies,kt!==null&&kt.firstContext!==null&&(kt.lanes&_e&&(Ug=!0),kt.firstContext=null)}function Vg(kt){var _e=kt._currentValue;if(Pg!==kt)if(kt={context:kt,memoizedValue:_e,next:null},Og===null){if(Ng===null)throw Error(p$3(308));Og=kt,Ng.dependencies={lanes:0,firstContext:kt}}else Og=Og.next=kt;return _e}var Wg=null;function Xg(kt){Wg===null?Wg=[kt]:Wg.push(kt)}function Yg(kt,_e,Dt,Vt){var Gt=_e.interleaved;return Gt===null?(Dt.next=Dt,Xg(_e)):(Dt.next=Gt.next,Gt.next=Dt),_e.interleaved=Dt,Zg(kt,Vt)}function Zg(kt,_e){kt.lanes|=_e;var Dt=kt.alternate;for(Dt!==null&&(Dt.lanes|=_e),Dt=kt,kt=kt.return;kt!==null;)kt.childLanes|=_e,Dt=kt.alternate,Dt!==null&&(Dt.childLanes|=_e),Dt=kt,kt=kt.return;return Dt.tag===3?Dt.stateNode:null}var $g=!1;function ah(kt){kt.updateQueue={baseState:kt.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function bh(kt,_e){kt=kt.updateQueue,_e.updateQueue===kt&&(_e.updateQueue={baseState:kt.baseState,firstBaseUpdate:kt.firstBaseUpdate,lastBaseUpdate:kt.lastBaseUpdate,shared:kt.shared,effects:kt.effects})}function ch(kt,_e){return{eventTime:kt,lane:_e,tag:0,payload:null,callback:null,next:null}}function dh(kt,_e,Dt){var Vt=kt.updateQueue;if(Vt===null)return null;if(Vt=Vt.shared,K$1&2){var Gt=Vt.pending;return Gt===null?_e.next=_e:(_e.next=Gt.next,Gt.next=_e),Vt.pending=_e,Zg(kt,Dt)}return Gt=Vt.interleaved,Gt===null?(_e.next=_e,Xg(Vt)):(_e.next=Gt.next,Gt.next=_e),Vt.interleaved=_e,Zg(kt,Dt)}function eh(kt,_e,Dt){if(_e=_e.updateQueue,_e!==null&&(_e=_e.shared,(Dt&4194240)!==0)){var Vt=_e.lanes;Vt&=kt.pendingLanes,Dt|=Vt,_e.lanes=Dt,Cc(kt,Dt)}}function fh(kt,_e){var Dt=kt.updateQueue,Vt=kt.alternate;if(Vt!==null&&(Vt=Vt.updateQueue,Dt===Vt)){var Gt=null,zt=null;if(Dt=Dt.firstBaseUpdate,Dt!==null){do{var jt={eventTime:Dt.eventTime,lane:Dt.lane,tag:Dt.tag,payload:Dt.payload,callback:Dt.callback,next:null};zt===null?Gt=zt=jt:zt=zt.next=jt,Dt=Dt.next}while(Dt!==null);zt===null?Gt=zt=_e:zt=zt.next=_e}else Gt=zt=_e;Dt={baseState:Vt.baseState,firstBaseUpdate:Gt,lastBaseUpdate:zt,shared:Vt.shared,effects:Vt.effects},kt.updateQueue=Dt;return}kt=Dt.lastBaseUpdate,kt===null?Dt.firstBaseUpdate=_e:kt.next=_e,Dt.lastBaseUpdate=_e}function gh(kt,_e,Dt,Vt){var Gt=kt.updateQueue;$g=!1;var zt=Gt.firstBaseUpdate,jt=Gt.lastBaseUpdate,Ht=Gt.shared.pending;if(Ht!==null){Gt.shared.pending=null;var Wt=Ht,qt=Wt.next;Wt.next=null,jt===null?zt=qt:jt.next=qt,jt=Wt;var Xt=kt.alternate;Xt!==null&&(Xt=Xt.updateQueue,Ht=Xt.lastBaseUpdate,Ht!==jt&&(Ht===null?Xt.firstBaseUpdate=qt:Ht.next=qt,Xt.lastBaseUpdate=Wt))}if(zt!==null){var Kt=Gt.baseState;jt=0,Xt=qt=Wt=null,Ht=zt;do{var Yt=Ht.lane,Zt=Ht.eventTime;if((Vt&Yt)===Yt){Xt!==null&&(Xt=Xt.next={eventTime:Zt,lane:0,tag:Ht.tag,payload:Ht.payload,callback:Ht.callback,next:null});e:{var Jt=kt,nn=Ht;switch(Yt=_e,Zt=Dt,nn.tag){case 1:if(Jt=nn.payload,typeof Jt=="function"){Kt=Jt.call(Zt,Kt,Yt);break e}Kt=Jt;break e;case 3:Jt.flags=Jt.flags&-65537|128;case 0:if(Jt=nn.payload,Yt=typeof Jt=="function"?Jt.call(Zt,Kt,Yt):Jt,Yt==null)break e;Kt=A({},Kt,Yt);break e;case 2:$g=!0}}Ht.callback!==null&&Ht.lane!==0&&(kt.flags|=64,Yt=Gt.effects,Yt===null?Gt.effects=[Ht]:Yt.push(Ht))}else Zt={eventTime:Zt,lane:Yt,tag:Ht.tag,payload:Ht.payload,callback:Ht.callback,next:null},Xt===null?(qt=Xt=Zt,Wt=Kt):Xt=Xt.next=Zt,jt|=Yt;if(Ht=Ht.next,Ht===null){if(Ht=Gt.shared.pending,Ht===null)break;Yt=Ht,Ht=Yt.next,Yt.next=null,Gt.lastBaseUpdate=Yt,Gt.shared.pending=null}}while(1);if(Xt===null&&(Wt=Kt),Gt.baseState=Wt,Gt.firstBaseUpdate=qt,Gt.lastBaseUpdate=Xt,_e=Gt.shared.interleaved,_e!==null){Gt=_e;do jt|=Gt.lane,Gt=Gt.next;while(Gt!==_e)}else zt===null&&(Gt.shared.lanes=0);hh|=jt,kt.lanes=jt,kt.memoizedState=Kt}}function ih(kt,_e,Dt){if(kt=_e.effects,_e.effects=null,kt!==null)for(_e=0;_e<kt.length;_e++){var Vt=kt[_e],Gt=Vt.callback;if(Gt!==null){if(Vt.callback=null,Vt=Dt,typeof Gt!="function")throw Error(p$3(191,Gt));Gt.call(Vt)}}}var jh=new aa.Component().refs;function kh(kt,_e,Dt,Vt){_e=kt.memoizedState,Dt=Dt(Vt,_e),Dt=Dt==null?_e:A({},_e,Dt),kt.memoizedState=Dt,kt.lanes===0&&(kt.updateQueue.baseState=Dt)}var nh={isMounted:function(kt){return(kt=kt._reactInternals)?Vb(kt)===kt:!1},enqueueSetState:function(kt,_e,Dt){kt=kt._reactInternals;var Vt=L$1(),Gt=lh(kt),zt=ch(Vt,Gt);zt.payload=_e,Dt!=null&&(zt.callback=Dt),_e=dh(kt,zt,Gt),_e!==null&&(mh(_e,kt,Gt,Vt),eh(_e,kt,Gt))},enqueueReplaceState:function(kt,_e,Dt){kt=kt._reactInternals;var Vt=L$1(),Gt=lh(kt),zt=ch(Vt,Gt);zt.tag=1,zt.payload=_e,Dt!=null&&(zt.callback=Dt),_e=dh(kt,zt,Gt),_e!==null&&(mh(_e,kt,Gt,Vt),eh(_e,kt,Gt))},enqueueForceUpdate:function(kt,_e){kt=kt._reactInternals;var Dt=L$1(),Vt=lh(kt),Gt=ch(Dt,Vt);Gt.tag=2,_e!=null&&(Gt.callback=_e),_e=dh(kt,Gt,Vt),_e!==null&&(mh(_e,kt,Vt,Dt),eh(_e,kt,Vt))}};function oh(kt,_e,Dt,Vt,Gt,zt,jt){return kt=kt.stateNode,typeof kt.shouldComponentUpdate=="function"?kt.shouldComponentUpdate(Vt,zt,jt):_e.prototype&&_e.prototype.isPureReactComponent?!Ie(Dt,Vt)||!Ie(Gt,zt):!0}function ph(kt,_e,Dt){var Vt=!1,Gt=Vf,zt=_e.contextType;return typeof zt=="object"&&zt!==null?zt=Vg(zt):(Gt=Zf(_e)?Xf:H$1.current,Vt=_e.contextTypes,zt=(Vt=Vt!=null)?Yf(kt,Gt):Vf),_e=new _e(Dt,zt),kt.memoizedState=_e.state!==null&&_e.state!==void 0?_e.state:null,_e.updater=nh,kt.stateNode=_e,_e._reactInternals=kt,Vt&&(kt=kt.stateNode,kt.__reactInternalMemoizedUnmaskedChildContext=Gt,kt.__reactInternalMemoizedMaskedChildContext=zt),_e}function qh(kt,_e,Dt,Vt){kt=_e.state,typeof _e.componentWillReceiveProps=="function"&&_e.componentWillReceiveProps(Dt,Vt),typeof _e.UNSAFE_componentWillReceiveProps=="function"&&_e.UNSAFE_componentWillReceiveProps(Dt,Vt),_e.state!==kt&&nh.enqueueReplaceState(_e,_e.state,null)}function rh(kt,_e,Dt,Vt){var Gt=kt.stateNode;Gt.props=Dt,Gt.state=kt.memoizedState,Gt.refs=jh,ah(kt);var zt=_e.contextType;typeof zt=="object"&&zt!==null?Gt.context=Vg(zt):(zt=Zf(_e)?Xf:H$1.current,Gt.context=Yf(kt,zt)),Gt.state=kt.memoizedState,zt=_e.getDerivedStateFromProps,typeof zt=="function"&&(kh(kt,_e,zt,Dt),Gt.state=kt.memoizedState),typeof _e.getDerivedStateFromProps=="function"||typeof Gt.getSnapshotBeforeUpdate=="function"||typeof Gt.UNSAFE_componentWillMount!="function"&&typeof Gt.componentWillMount!="function"||(_e=Gt.state,typeof Gt.componentWillMount=="function"&&Gt.componentWillMount(),typeof Gt.UNSAFE_componentWillMount=="function"&&Gt.UNSAFE_componentWillMount(),_e!==Gt.state&&nh.enqueueReplaceState(Gt,Gt.state,null),gh(kt,Dt,Gt,Vt),Gt.state=kt.memoizedState),typeof Gt.componentDidMount=="function"&&(kt.flags|=4194308)}function sh(kt,_e,Dt){if(kt=Dt.ref,kt!==null&&typeof kt!="function"&&typeof kt!="object"){if(Dt._owner){if(Dt=Dt._owner,Dt){if(Dt.tag!==1)throw Error(p$3(309));var Vt=Dt.stateNode}if(!Vt)throw Error(p$3(147,kt));var Gt=Vt,zt=""+kt;return _e!==null&&_e.ref!==null&&typeof _e.ref=="function"&&_e.ref._stringRef===zt?_e.ref:(_e=function(jt){var Ht=Gt.refs;Ht===jh&&(Ht=Gt.refs={}),jt===null?delete Ht[zt]:Ht[zt]=jt},_e._stringRef=zt,_e)}if(typeof kt!="string")throw Error(p$3(284));if(!Dt._owner)throw Error(p$3(290,kt))}return kt}function th(kt,_e){throw kt=Object.prototype.toString.call(_e),Error(p$3(31,kt==="[object Object]"?"object with keys {"+Object.keys(_e).join(", ")+"}":kt))}function uh(kt){var _e=kt._init;return _e(kt._payload)}function vh(kt){function _e(Qt,en){if(kt){var tn=Qt.deletions;tn===null?(Qt.deletions=[en],Qt.flags|=16):tn.push(en)}}function Dt(Qt,en){if(!kt)return null;for(;en!==null;)_e(Qt,en),en=en.sibling;return null}function Vt(Qt,en){for(Qt=new Map;en!==null;)en.key!==null?Qt.set(en.key,en):Qt.set(en.index,en),en=en.sibling;return Qt}function Gt(Qt,en){return Qt=wh(Qt,en),Qt.index=0,Qt.sibling=null,Qt}function zt(Qt,en,tn){return Qt.index=tn,kt?(tn=Qt.alternate,tn!==null?(tn=tn.index,tn<en?(Qt.flags|=2,en):tn):(Qt.flags|=2,en)):(Qt.flags|=1048576,en)}function jt(Qt){return kt&&Qt.alternate===null&&(Qt.flags|=2),Qt}function Ht(Qt,en,tn,sn){return en===null||en.tag!==6?(en=xh(tn,Qt.mode,sn),en.return=Qt,en):(en=Gt(en,tn),en.return=Qt,en)}function Wt(Qt,en,tn,sn){var cn=tn.type;return cn===ya?Xt(Qt,en,tn.props.children,sn,tn.key):en!==null&&(en.elementType===cn||typeof cn=="object"&&cn!==null&&cn.$$typeof===Ha&&uh(cn)===en.type)?(sn=Gt(en,tn.props),sn.ref=sh(Qt,en,tn),sn.return=Qt,sn):(sn=yh(tn.type,tn.key,tn.props,null,Qt.mode,sn),sn.ref=sh(Qt,en,tn),sn.return=Qt,sn)}function qt(Qt,en,tn,sn){return en===null||en.tag!==4||en.stateNode.containerInfo!==tn.containerInfo||en.stateNode.implementation!==tn.implementation?(en=zh(tn,Qt.mode,sn),en.return=Qt,en):(en=Gt(en,tn.children||[]),en.return=Qt,en)}function Xt(Qt,en,tn,sn,cn){return en===null||en.tag!==7?(en=Ah(tn,Qt.mode,sn,cn),en.return=Qt,en):(en=Gt(en,tn),en.return=Qt,en)}function Kt(Qt,en,tn){if(typeof en=="string"&&en!==""||typeof en=="number")return en=xh(""+en,Qt.mode,tn),en.return=Qt,en;if(typeof en=="object"&&en!==null){switch(en.$$typeof){case va:return tn=yh(en.type,en.key,en.props,null,Qt.mode,tn),tn.ref=sh(Qt,null,en),tn.return=Qt,tn;case wa:return en=zh(en,Qt.mode,tn),en.return=Qt,en;case Ha:var sn=en._init;return Kt(Qt,sn(en._payload),tn)}if(eb(en)||Ka(en))return en=Ah(en,Qt.mode,tn,null),en.return=Qt,en;th(Qt,en)}return null}function Yt(Qt,en,tn,sn){var cn=en!==null?en.key:null;if(typeof tn=="string"&&tn!==""||typeof tn=="number")return cn!==null?null:Ht(Qt,en,""+tn,sn);if(typeof tn=="object"&&tn!==null){switch(tn.$$typeof){case va:return tn.key===cn?Wt(Qt,en,tn,sn):null;case wa:return tn.key===cn?qt(Qt,en,tn,sn):null;case Ha:return cn=tn._init,Yt(Qt,en,cn(tn._payload),sn)}if(eb(tn)||Ka(tn))return cn!==null?null:Xt(Qt,en,tn,sn,null);th(Qt,tn)}return null}function Zt(Qt,en,tn,sn,cn){if(typeof sn=="string"&&sn!==""||typeof sn=="number")return Qt=Qt.get(tn)||null,Ht(en,Qt,""+sn,cn);if(typeof sn=="object"&&sn!==null){switch(sn.$$typeof){case va:return Qt=Qt.get(sn.key===null?tn:sn.key)||null,Wt(en,Qt,sn,cn);case wa:return Qt=Qt.get(sn.key===null?tn:sn.key)||null,qt(en,Qt,sn,cn);case Ha:var un=sn._init;return Zt(Qt,en,tn,un(sn._payload),cn)}if(eb(sn)||Ka(sn))return Qt=Qt.get(tn)||null,Xt(en,Qt,sn,cn,null);th(en,sn)}return null}function Jt(Qt,en,tn,sn){for(var cn=null,un=null,hn=en,dn=en=0,pn=null;hn!==null&&dn<tn.length;dn++){hn.index>dn?(pn=hn,hn=null):pn=hn.sibling;var fn=Yt(Qt,hn,tn[dn],sn);if(fn===null){hn===null&&(hn=pn);break}kt&&hn&&fn.alternate===null&&_e(Qt,hn),en=zt(fn,en,dn),un===null?cn=fn:un.sibling=fn,un=fn,hn=pn}if(dn===tn.length)return Dt(Qt,hn),I$1&&tg(Qt,dn),cn;if(hn===null){for(;dn<tn.length;dn++)hn=Kt(Qt,tn[dn],sn),hn!==null&&(en=zt(hn,en,dn),un===null?cn=hn:un.sibling=hn,un=hn);return I$1&&tg(Qt,dn),cn}for(hn=Vt(Qt,hn);dn<tn.length;dn++)pn=Zt(hn,Qt,dn,tn[dn],sn),pn!==null&&(kt&&pn.alternate!==null&&hn.delete(pn.key===null?dn:pn.key),en=zt(pn,en,dn),un===null?cn=pn:un.sibling=pn,un=pn);return kt&&hn.forEach(function(mn){return _e(Qt,mn)}),I$1&&tg(Qt,dn),cn}function nn(Qt,en,tn,sn){var cn=Ka(tn);if(typeof cn!="function")throw Error(p$3(150));if(tn=cn.call(tn),tn==null)throw Error(p$3(151));for(var un=cn=null,hn=en,dn=en=0,pn=null,fn=tn.next();hn!==null&&!fn.done;dn++,fn=tn.next()){hn.index>dn?(pn=hn,hn=null):pn=hn.sibling;var mn=Yt(Qt,hn,fn.value,sn);if(mn===null){hn===null&&(hn=pn);break}kt&&hn&&mn.alternate===null&&_e(Qt,hn),en=zt(mn,en,dn),un===null?cn=mn:un.sibling=mn,un=mn,hn=pn}if(fn.done)return Dt(Qt,hn),I$1&&tg(Qt,dn),cn;if(hn===null){for(;!fn.done;dn++,fn=tn.next())fn=Kt(Qt,fn.value,sn),fn!==null&&(en=zt(fn,en,dn),un===null?cn=fn:un.sibling=fn,un=fn);return I$1&&tg(Qt,dn),cn}for(hn=Vt(Qt,hn);!fn.done;dn++,fn=tn.next())fn=Zt(hn,Qt,dn,fn.value,sn),fn!==null&&(kt&&fn.alternate!==null&&hn.delete(fn.key===null?dn:fn.key),en=zt(fn,en,dn),un===null?cn=fn:un.sibling=fn,un=fn);return kt&&hn.forEach(function(vn){return _e(Qt,vn)}),I$1&&tg(Qt,dn),cn}function rn(Qt,en,tn,sn){if(typeof tn=="object"&&tn!==null&&tn.type===ya&&tn.key===null&&(tn=tn.props.children),typeof tn=="object"&&tn!==null){switch(tn.$$typeof){case va:e:{for(var cn=tn.key,un=en;un!==null;){if(un.key===cn){if(cn=tn.type,cn===ya){if(un.tag===7){Dt(Qt,un.sibling),en=Gt(un,tn.props.children),en.return=Qt,Qt=en;break e}}else if(un.elementType===cn||typeof cn=="object"&&cn!==null&&cn.$$typeof===Ha&&uh(cn)===un.type){Dt(Qt,un.sibling),en=Gt(un,tn.props),en.ref=sh(Qt,un,tn),en.return=Qt,Qt=en;break e}Dt(Qt,un);break}else _e(Qt,un);un=un.sibling}tn.type===ya?(en=Ah(tn.props.children,Qt.mode,sn,tn.key),en.return=Qt,Qt=en):(sn=yh(tn.type,tn.key,tn.props,null,Qt.mode,sn),sn.ref=sh(Qt,en,tn),sn.return=Qt,Qt=sn)}return jt(Qt);case wa:e:{for(un=tn.key;en!==null;){if(en.key===un)if(en.tag===4&&en.stateNode.containerInfo===tn.containerInfo&&en.stateNode.implementation===tn.implementation){Dt(Qt,en.sibling),en=Gt(en,tn.children||[]),en.return=Qt,Qt=en;break e}else{Dt(Qt,en);break}else _e(Qt,en);en=en.sibling}en=zh(tn,Qt.mode,sn),en.return=Qt,Qt=en}return jt(Qt);case Ha:return un=tn._init,rn(Qt,en,un(tn._payload),sn)}if(eb(tn))return Jt(Qt,en,tn,sn);if(Ka(tn))return nn(Qt,en,tn,sn);th(Qt,tn)}return typeof tn=="string"&&tn!==""||typeof tn=="number"?(tn=""+tn,en!==null&&en.tag===6?(Dt(Qt,en.sibling),en=Gt(en,tn),en.return=Qt,Qt=en):(Dt(Qt,en),en=xh(tn,Qt.mode,sn),en.return=Qt,Qt=en),jt(Qt)):Dt(Qt,en)}return rn}var Bh=vh(!0),Ch=vh(!1),Dh={},Eh=Uf(Dh),Fh=Uf(Dh),Gh=Uf(Dh);function Hh(kt){if(kt===Dh)throw Error(p$3(174));return kt}function Ih(kt,_e){switch(G$1(Gh,_e),G$1(Fh,kt),G$1(Eh,Dh),kt=_e.nodeType,kt){case 9:case 11:_e=(_e=_e.documentElement)?_e.namespaceURI:lb(null,"");break;default:kt=kt===8?_e.parentNode:_e,_e=kt.namespaceURI||null,kt=kt.tagName,_e=lb(_e,kt)}E$2(Eh),G$1(Eh,_e)}function Jh(){E$2(Eh),E$2(Fh),E$2(Gh)}function Kh(kt){Hh(Gh.current);var _e=Hh(Eh.current),Dt=lb(_e,kt.type);_e!==Dt&&(G$1(Fh,kt),G$1(Eh,Dt))}function Lh(kt){Fh.current===kt&&(E$2(Eh),E$2(Fh))}var M$1=Uf(0);function Mh(kt){for(var _e=kt;_e!==null;){if(_e.tag===13){var Dt=_e.memoizedState;if(Dt!==null&&(Dt=Dt.dehydrated,Dt===null||Dt.data==="$?"||Dt.data==="$!"))return _e}else if(_e.tag===19&&_e.memoizedProps.revealOrder!==void 0){if(_e.flags&128)return _e}else if(_e.child!==null){_e.child.return=_e,_e=_e.child;continue}if(_e===kt)break;for(;_e.sibling===null;){if(_e.return===null||_e.return===kt)return null;_e=_e.return}_e.sibling.return=_e.return,_e=_e.sibling}return null}var Nh=[];function Oh(){for(var kt=0;kt<Nh.length;kt++)Nh[kt]._workInProgressVersionPrimary=null;Nh.length=0}var Ph=ua.ReactCurrentDispatcher,Qh=ua.ReactCurrentBatchConfig,Rh=0,N$1=null,O$1=null,P$1=null,Sh=!1,Th=!1,Uh=0,Vh=0;function Q$1(){throw Error(p$3(321))}function Wh(kt,_e){if(_e===null)return!1;for(var Dt=0;Dt<_e.length&&Dt<kt.length;Dt++)if(!He(kt[Dt],_e[Dt]))return!1;return!0}function Xh(kt,_e,Dt,Vt,Gt,zt){if(Rh=zt,N$1=_e,_e.memoizedState=null,_e.updateQueue=null,_e.lanes=0,Ph.current=kt===null||kt.memoizedState===null?Yh:Zh,kt=Dt(Vt,Gt),Th){zt=0;do{if(Th=!1,Uh=0,25<=zt)throw Error(p$3(301));zt+=1,P$1=O$1=null,_e.updateQueue=null,Ph.current=$h,kt=Dt(Vt,Gt)}while(Th)}if(Ph.current=ai,_e=O$1!==null&&O$1.next!==null,Rh=0,P$1=O$1=N$1=null,Sh=!1,_e)throw Error(p$3(300));return kt}function bi(){var kt=Uh!==0;return Uh=0,kt}function ci(){var kt={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return P$1===null?N$1.memoizedState=P$1=kt:P$1=P$1.next=kt,P$1}function di(){if(O$1===null){var kt=N$1.alternate;kt=kt!==null?kt.memoizedState:null}else kt=O$1.next;var _e=P$1===null?N$1.memoizedState:P$1.next;if(_e!==null)P$1=_e,O$1=kt;else{if(kt===null)throw Error(p$3(310));O$1=kt,kt={memoizedState:O$1.memoizedState,baseState:O$1.baseState,baseQueue:O$1.baseQueue,queue:O$1.queue,next:null},P$1===null?N$1.memoizedState=P$1=kt:P$1=P$1.next=kt}return P$1}function ei(kt,_e){return typeof _e=="function"?_e(kt):_e}function fi(kt){var _e=di(),Dt=_e.queue;if(Dt===null)throw Error(p$3(311));Dt.lastRenderedReducer=kt;var Vt=O$1,Gt=Vt.baseQueue,zt=Dt.pending;if(zt!==null){if(Gt!==null){var jt=Gt.next;Gt.next=zt.next,zt.next=jt}Vt.baseQueue=Gt=zt,Dt.pending=null}if(Gt!==null){zt=Gt.next,Vt=Vt.baseState;var Ht=jt=null,Wt=null,qt=zt;do{var Xt=qt.lane;if((Rh&Xt)===Xt)Wt!==null&&(Wt=Wt.next={lane:0,action:qt.action,hasEagerState:qt.hasEagerState,eagerState:qt.eagerState,next:null}),Vt=qt.hasEagerState?qt.eagerState:kt(Vt,qt.action);else{var Kt={lane:Xt,action:qt.action,hasEagerState:qt.hasEagerState,eagerState:qt.eagerState,next:null};Wt===null?(Ht=Wt=Kt,jt=Vt):Wt=Wt.next=Kt,N$1.lanes|=Xt,hh|=Xt}qt=qt.next}while(qt!==null&&qt!==zt);Wt===null?jt=Vt:Wt.next=Ht,He(Vt,_e.memoizedState)||(Ug=!0),_e.memoizedState=Vt,_e.baseState=jt,_e.baseQueue=Wt,Dt.lastRenderedState=Vt}if(kt=Dt.interleaved,kt!==null){Gt=kt;do zt=Gt.lane,N$1.lanes|=zt,hh|=zt,Gt=Gt.next;while(Gt!==kt)}else Gt===null&&(Dt.lanes=0);return[_e.memoizedState,Dt.dispatch]}function gi(kt){var _e=di(),Dt=_e.queue;if(Dt===null)throw Error(p$3(311));Dt.lastRenderedReducer=kt;var Vt=Dt.dispatch,Gt=Dt.pending,zt=_e.memoizedState;if(Gt!==null){Dt.pending=null;var jt=Gt=Gt.next;do zt=kt(zt,jt.action),jt=jt.next;while(jt!==Gt);He(zt,_e.memoizedState)||(Ug=!0),_e.memoizedState=zt,_e.baseQueue===null&&(_e.baseState=zt),Dt.lastRenderedState=zt}return[zt,Vt]}function hi(){}function ii(kt,_e){var Dt=N$1,Vt=di(),Gt=_e(),zt=!He(Vt.memoizedState,Gt);if(zt&&(Vt.memoizedState=Gt,Ug=!0),Vt=Vt.queue,ji(ki.bind(null,Dt,Vt,kt),[kt]),Vt.getSnapshot!==_e||zt||P$1!==null&&P$1.memoizedState.tag&1){if(Dt.flags|=2048,li(9,mi.bind(null,Dt,Vt,Gt,_e),void 0,null),R$1===null)throw Error(p$3(349));Rh&30||ni(Dt,_e,Gt)}return Gt}function ni(kt,_e,Dt){kt.flags|=16384,kt={getSnapshot:_e,value:Dt},_e=N$1.updateQueue,_e===null?(_e={lastEffect:null,stores:null},N$1.updateQueue=_e,_e.stores=[kt]):(Dt=_e.stores,Dt===null?_e.stores=[kt]:Dt.push(kt))}function mi(kt,_e,Dt,Vt){_e.value=Dt,_e.getSnapshot=Vt,oi(_e)&&pi(kt)}function ki(kt,_e,Dt){return Dt(function(){oi(_e)&&pi(kt)})}function oi(kt){var _e=kt.getSnapshot;kt=kt.value;try{var Dt=_e();return!He(kt,Dt)}catch{return!0}}function pi(kt){var _e=Zg(kt,1);_e!==null&&mh(_e,kt,1,-1)}function qi(kt){var _e=ci();return typeof kt=="function"&&(kt=kt()),_e.memoizedState=_e.baseState=kt,kt={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:ei,lastRenderedState:kt},_e.queue=kt,kt=kt.dispatch=ri.bind(null,N$1,kt),[_e.memoizedState,kt]}function li(kt,_e,Dt,Vt){return kt={tag:kt,create:_e,destroy:Dt,deps:Vt,next:null},_e=N$1.updateQueue,_e===null?(_e={lastEffect:null,stores:null},N$1.updateQueue=_e,_e.lastEffect=kt.next=kt):(Dt=_e.lastEffect,Dt===null?_e.lastEffect=kt.next=kt:(Vt=Dt.next,Dt.next=kt,kt.next=Vt,_e.lastEffect=kt)),kt}function si(){return di().memoizedState}function ti(kt,_e,Dt,Vt){var Gt=ci();N$1.flags|=kt,Gt.memoizedState=li(1|_e,Dt,void 0,Vt===void 0?null:Vt)}function ui(kt,_e,Dt,Vt){var Gt=di();Vt=Vt===void 0?null:Vt;var zt=void 0;if(O$1!==null){var jt=O$1.memoizedState;if(zt=jt.destroy,Vt!==null&&Wh(Vt,jt.deps)){Gt.memoizedState=li(_e,Dt,zt,Vt);return}}N$1.flags|=kt,Gt.memoizedState=li(1|_e,Dt,zt,Vt)}function vi(kt,_e){return ti(8390656,8,kt,_e)}function ji(kt,_e){return ui(2048,8,kt,_e)}function wi(kt,_e){return ui(4,2,kt,_e)}function xi(kt,_e){return ui(4,4,kt,_e)}function yi(kt,_e){if(typeof _e=="function")return kt=kt(),_e(kt),function(){_e(null)};if(_e!=null)return kt=kt(),_e.current=kt,function(){_e.current=null}}function zi(kt,_e,Dt){return Dt=Dt!=null?Dt.concat([kt]):null,ui(4,4,yi.bind(null,_e,kt),Dt)}function Ai(){}function Bi(kt,_e){var Dt=di();_e=_e===void 0?null:_e;var Vt=Dt.memoizedState;return Vt!==null&&_e!==null&&Wh(_e,Vt[1])?Vt[0]:(Dt.memoizedState=[kt,_e],kt)}function Ci(kt,_e){var Dt=di();_e=_e===void 0?null:_e;var Vt=Dt.memoizedState;return Vt!==null&&_e!==null&&Wh(_e,Vt[1])?Vt[0]:(kt=kt(),Dt.memoizedState=[kt,_e],kt)}function Di(kt,_e,Dt){return Rh&21?(He(Dt,_e)||(Dt=yc(),N$1.lanes|=Dt,hh|=Dt,kt.baseState=!0),_e):(kt.baseState&&(kt.baseState=!1,Ug=!0),kt.memoizedState=Dt)}function Ei(kt,_e){var Dt=C$1;C$1=Dt!==0&&4>Dt?Dt:4,kt(!0);var Vt=Qh.transition;Qh.transition={};try{kt(!1),_e()}finally{C$1=Dt,Qh.transition=Vt}}function Fi(){return di().memoizedState}function Gi(kt,_e,Dt){var Vt=lh(kt);if(Dt={lane:Vt,action:Dt,hasEagerState:!1,eagerState:null,next:null},Hi(kt))Ii(_e,Dt);else if(Dt=Yg(kt,_e,Dt,Vt),Dt!==null){var Gt=L$1();mh(Dt,kt,Vt,Gt),Ji(Dt,_e,Vt)}}function ri(kt,_e,Dt){var Vt=lh(kt),Gt={lane:Vt,action:Dt,hasEagerState:!1,eagerState:null,next:null};if(Hi(kt))Ii(_e,Gt);else{var zt=kt.alternate;if(kt.lanes===0&&(zt===null||zt.lanes===0)&&(zt=_e.lastRenderedReducer,zt!==null))try{var jt=_e.lastRenderedState,Ht=zt(jt,Dt);if(Gt.hasEagerState=!0,Gt.eagerState=Ht,He(Ht,jt)){var Wt=_e.interleaved;Wt===null?(Gt.next=Gt,Xg(_e)):(Gt.next=Wt.next,Wt.next=Gt),_e.interleaved=Gt;return}}catch{}finally{}Dt=Yg(kt,_e,Gt,Vt),Dt!==null&&(Gt=L$1(),mh(Dt,kt,Vt,Gt),Ji(Dt,_e,Vt))}}function Hi(kt){var _e=kt.alternate;return kt===N$1||_e!==null&&_e===N$1}function Ii(kt,_e){Th=Sh=!0;var Dt=kt.pending;Dt===null?_e.next=_e:(_e.next=Dt.next,Dt.next=_e),kt.pending=_e}function Ji(kt,_e,Dt){if(Dt&4194240){var Vt=_e.lanes;Vt&=kt.pendingLanes,Dt|=Vt,_e.lanes=Dt,Cc(kt,Dt)}}var ai={readContext:Vg,useCallback:Q$1,useContext:Q$1,useEffect:Q$1,useImperativeHandle:Q$1,useInsertionEffect:Q$1,useLayoutEffect:Q$1,useMemo:Q$1,useReducer:Q$1,useRef:Q$1,useState:Q$1,useDebugValue:Q$1,useDeferredValue:Q$1,useTransition:Q$1,useMutableSource:Q$1,useSyncExternalStore:Q$1,useId:Q$1,unstable_isNewReconciler:!1},Yh={readContext:Vg,useCallback:function(kt,_e){return ci().memoizedState=[kt,_e===void 0?null:_e],kt},useContext:Vg,useEffect:vi,useImperativeHandle:function(kt,_e,Dt){return Dt=Dt!=null?Dt.concat([kt]):null,ti(4194308,4,yi.bind(null,_e,kt),Dt)},useLayoutEffect:function(kt,_e){return ti(4194308,4,kt,_e)},useInsertionEffect:function(kt,_e){return ti(4,2,kt,_e)},useMemo:function(kt,_e){var Dt=ci();return _e=_e===void 0?null:_e,kt=kt(),Dt.memoizedState=[kt,_e],kt},useReducer:function(kt,_e,Dt){var Vt=ci();return _e=Dt!==void 0?Dt(_e):_e,Vt.memoizedState=Vt.baseState=_e,kt={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:kt,lastRenderedState:_e},Vt.queue=kt,kt=kt.dispatch=Gi.bind(null,N$1,kt),[Vt.memoizedState,kt]},useRef:function(kt){var _e=ci();return kt={current:kt},_e.memoizedState=kt},useState:qi,useDebugValue:Ai,useDeferredValue:function(kt){return ci().memoizedState=kt},useTransition:function(){var kt=qi(!1),_e=kt[0];return kt=Ei.bind(null,kt[1]),ci().memoizedState=kt,[_e,kt]},useMutableSource:function(){},useSyncExternalStore:function(kt,_e,Dt){var Vt=N$1,Gt=ci();if(I$1){if(Dt===void 0)throw Error(p$3(407));Dt=Dt()}else{if(Dt=_e(),R$1===null)throw Error(p$3(349));Rh&30||ni(Vt,_e,Dt)}Gt.memoizedState=Dt;var zt={value:Dt,getSnapshot:_e};return Gt.queue=zt,vi(ki.bind(null,Vt,zt,kt),[kt]),Vt.flags|=2048,li(9,mi.bind(null,Vt,zt,Dt,_e),void 0,null),Dt},useId:function(){var kt=ci(),_e=R$1.identifierPrefix;if(I$1){var Dt=sg,Vt=rg;Dt=(Vt&~(1<<32-oc(Vt)-1)).toString(32)+Dt,_e=":"+_e+"R"+Dt,Dt=Uh++,0<Dt&&(_e+="H"+Dt.toString(32)),_e+=":"}else Dt=Vh++,_e=":"+_e+"r"+Dt.toString(32)+":";return kt.memoizedState=_e},unstable_isNewReconciler:!1},Zh={readContext:Vg,useCallback:Bi,useContext:Vg,useEffect:ji,useImperativeHandle:zi,useInsertionEffect:wi,useLayoutEffect:xi,useMemo:Ci,useReducer:fi,useRef:si,useState:function(){return fi(ei)},useDebugValue:Ai,useDeferredValue:function(kt){var _e=di();return Di(_e,O$1.memoizedState,kt)},useTransition:function(){var kt=fi(ei)[0],_e=di().memoizedState;return[kt,_e]},useMutableSource:hi,useSyncExternalStore:ii,useId:Fi,unstable_isNewReconciler:!1},$h={readContext:Vg,useCallback:Bi,useContext:Vg,useEffect:ji,useImperativeHandle:zi,useInsertionEffect:wi,useLayoutEffect:xi,useMemo:Ci,useReducer:gi,useRef:si,useState:function(){return gi(ei)},useDebugValue:Ai,useDeferredValue:function(kt){var _e=di();return O$1===null?_e.memoizedState=kt:Di(_e,O$1.memoizedState,kt)},useTransition:function(){var kt=gi(ei)[0],_e=di().memoizedState;return[kt,_e]},useMutableSource:hi,useSyncExternalStore:ii,useId:Fi,unstable_isNewReconciler:!1};function Ki(kt,_e){try{var Dt="",Vt=_e;do Dt+=Pa(Vt),Vt=Vt.return;while(Vt);var Gt=Dt}catch(zt){Gt=`
|
|
97
|
+
`+Gt[jt].replace(" at new "," at ");return kt.displayName&&Wt.includes("<anonymous>")&&(Wt=Wt.replace("<anonymous>",kt.displayName)),Wt}while(1<=jt&&0<=Ht);break}}}finally{Na=!1,Error.prepareStackTrace=Dt}return(kt=kt?kt.displayName||kt.name:"")?Ma(kt):""}function Pa(kt){switch(kt.tag){case 5:return Ma(kt.type);case 16:return Ma("Lazy");case 13:return Ma("Suspense");case 19:return Ma("SuspenseList");case 0:case 2:case 15:return kt=Oa(kt.type,!1),kt;case 11:return kt=Oa(kt.type.render,!1),kt;case 1:return kt=Oa(kt.type,!0),kt;default:return""}}function Qa(kt){if(kt==null)return null;if(typeof kt=="function")return kt.displayName||kt.name||null;if(typeof kt=="string")return kt;switch(kt){case ya:return"Fragment";case wa:return"Portal";case Aa:return"Profiler";case za:return"StrictMode";case Ea:return"Suspense";case Fa:return"SuspenseList"}if(typeof kt=="object")switch(kt.$$typeof){case Ca:return(kt.displayName||"Context")+".Consumer";case Ba:return(kt._context.displayName||"Context")+".Provider";case Da:var _e=kt.render;return kt=kt.displayName,kt||(kt=_e.displayName||_e.name||"",kt=kt!==""?"ForwardRef("+kt+")":"ForwardRef"),kt;case Ga:return _e=kt.displayName||null,_e!==null?_e:Qa(kt.type)||"Memo";case Ha:_e=kt._payload,kt=kt._init;try{return Qa(kt(_e))}catch{}}return null}function Ra(kt){var _e=kt.type;switch(kt.tag){case 24:return"Cache";case 9:return(_e.displayName||"Context")+".Consumer";case 10:return(_e._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return kt=_e.render,kt=kt.displayName||kt.name||"",_e.displayName||(kt!==""?"ForwardRef("+kt+")":"ForwardRef");case 7:return"Fragment";case 5:return _e;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return Qa(_e);case 8:return _e===za?"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 _e=="function")return _e.displayName||_e.name||null;if(typeof _e=="string")return _e}return null}function Sa(kt){switch(typeof kt){case"boolean":case"number":case"string":case"undefined":return kt;case"object":return kt;default:return""}}function Ta(kt){var _e=kt.type;return(kt=kt.nodeName)&&kt.toLowerCase()==="input"&&(_e==="checkbox"||_e==="radio")}function Ua(kt){var _e=Ta(kt)?"checked":"value",Dt=Object.getOwnPropertyDescriptor(kt.constructor.prototype,_e),Vt=""+kt[_e];if(!kt.hasOwnProperty(_e)&&typeof Dt<"u"&&typeof Dt.get=="function"&&typeof Dt.set=="function"){var Gt=Dt.get,zt=Dt.set;return Object.defineProperty(kt,_e,{configurable:!0,get:function(){return Gt.call(this)},set:function(jt){Vt=""+jt,zt.call(this,jt)}}),Object.defineProperty(kt,_e,{enumerable:Dt.enumerable}),{getValue:function(){return Vt},setValue:function(jt){Vt=""+jt},stopTracking:function(){kt._valueTracker=null,delete kt[_e]}}}}function Va(kt){kt._valueTracker||(kt._valueTracker=Ua(kt))}function Wa(kt){if(!kt)return!1;var _e=kt._valueTracker;if(!_e)return!0;var Dt=_e.getValue(),Vt="";return kt&&(Vt=Ta(kt)?kt.checked?"true":"false":kt.value),kt=Vt,kt!==Dt?(_e.setValue(kt),!0):!1}function Xa(kt){if(kt=kt||(typeof document<"u"?document:void 0),typeof kt>"u")return null;try{return kt.activeElement||kt.body}catch{return kt.body}}function Ya(kt,_e){var Dt=_e.checked;return A({},_e,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:Dt??kt._wrapperState.initialChecked})}function Za(kt,_e){var Dt=_e.defaultValue==null?"":_e.defaultValue,Vt=_e.checked!=null?_e.checked:_e.defaultChecked;Dt=Sa(_e.value!=null?_e.value:Dt),kt._wrapperState={initialChecked:Vt,initialValue:Dt,controlled:_e.type==="checkbox"||_e.type==="radio"?_e.checked!=null:_e.value!=null}}function ab(kt,_e){_e=_e.checked,_e!=null&&ta(kt,"checked",_e,!1)}function bb(kt,_e){ab(kt,_e);var Dt=Sa(_e.value),Vt=_e.type;if(Dt!=null)Vt==="number"?(Dt===0&&kt.value===""||kt.value!=Dt)&&(kt.value=""+Dt):kt.value!==""+Dt&&(kt.value=""+Dt);else if(Vt==="submit"||Vt==="reset"){kt.removeAttribute("value");return}_e.hasOwnProperty("value")?cb(kt,_e.type,Dt):_e.hasOwnProperty("defaultValue")&&cb(kt,_e.type,Sa(_e.defaultValue)),_e.checked==null&&_e.defaultChecked!=null&&(kt.defaultChecked=!!_e.defaultChecked)}function db(kt,_e,Dt){if(_e.hasOwnProperty("value")||_e.hasOwnProperty("defaultValue")){var Vt=_e.type;if(!(Vt!=="submit"&&Vt!=="reset"||_e.value!==void 0&&_e.value!==null))return;_e=""+kt._wrapperState.initialValue,Dt||_e===kt.value||(kt.value=_e),kt.defaultValue=_e}Dt=kt.name,Dt!==""&&(kt.name=""),kt.defaultChecked=!!kt._wrapperState.initialChecked,Dt!==""&&(kt.name=Dt)}function cb(kt,_e,Dt){(_e!=="number"||Xa(kt.ownerDocument)!==kt)&&(Dt==null?kt.defaultValue=""+kt._wrapperState.initialValue:kt.defaultValue!==""+Dt&&(kt.defaultValue=""+Dt))}var eb=Array.isArray;function fb(kt,_e,Dt,Vt){if(kt=kt.options,_e){_e={};for(var Gt=0;Gt<Dt.length;Gt++)_e["$"+Dt[Gt]]=!0;for(Dt=0;Dt<kt.length;Dt++)Gt=_e.hasOwnProperty("$"+kt[Dt].value),kt[Dt].selected!==Gt&&(kt[Dt].selected=Gt),Gt&&Vt&&(kt[Dt].defaultSelected=!0)}else{for(Dt=""+Sa(Dt),_e=null,Gt=0;Gt<kt.length;Gt++){if(kt[Gt].value===Dt){kt[Gt].selected=!0,Vt&&(kt[Gt].defaultSelected=!0);return}_e!==null||kt[Gt].disabled||(_e=kt[Gt])}_e!==null&&(_e.selected=!0)}}function gb(kt,_e){if(_e.dangerouslySetInnerHTML!=null)throw Error(p$3(91));return A({},_e,{value:void 0,defaultValue:void 0,children:""+kt._wrapperState.initialValue})}function hb(kt,_e){var Dt=_e.value;if(Dt==null){if(Dt=_e.children,_e=_e.defaultValue,Dt!=null){if(_e!=null)throw Error(p$3(92));if(eb(Dt)){if(1<Dt.length)throw Error(p$3(93));Dt=Dt[0]}_e=Dt}_e==null&&(_e=""),Dt=_e}kt._wrapperState={initialValue:Sa(Dt)}}function ib(kt,_e){var Dt=Sa(_e.value),Vt=Sa(_e.defaultValue);Dt!=null&&(Dt=""+Dt,Dt!==kt.value&&(kt.value=Dt),_e.defaultValue==null&&kt.defaultValue!==Dt&&(kt.defaultValue=Dt)),Vt!=null&&(kt.defaultValue=""+Vt)}function jb(kt){var _e=kt.textContent;_e===kt._wrapperState.initialValue&&_e!==""&&_e!==null&&(kt.value=_e)}function kb(kt){switch(kt){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 lb(kt,_e){return kt==null||kt==="http://www.w3.org/1999/xhtml"?kb(_e):kt==="http://www.w3.org/2000/svg"&&_e==="foreignObject"?"http://www.w3.org/1999/xhtml":kt}var mb,nb=function(kt){return typeof MSApp<"u"&&MSApp.execUnsafeLocalFunction?function(_e,Dt,Vt,Gt){MSApp.execUnsafeLocalFunction(function(){return kt(_e,Dt,Vt,Gt)})}:kt}(function(kt,_e){if(kt.namespaceURI!=="http://www.w3.org/2000/svg"||"innerHTML"in kt)kt.innerHTML=_e;else{for(mb=mb||document.createElement("div"),mb.innerHTML="<svg>"+_e.valueOf().toString()+"</svg>",_e=mb.firstChild;kt.firstChild;)kt.removeChild(kt.firstChild);for(;_e.firstChild;)kt.appendChild(_e.firstChild)}});function ob(kt,_e){if(_e){var Dt=kt.firstChild;if(Dt&&Dt===kt.lastChild&&Dt.nodeType===3){Dt.nodeValue=_e;return}}kt.textContent=_e}var pb={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},qb=["Webkit","ms","Moz","O"];Object.keys(pb).forEach(function(kt){qb.forEach(function(_e){_e=_e+kt.charAt(0).toUpperCase()+kt.substring(1),pb[_e]=pb[kt]})});function rb(kt,_e,Dt){return _e==null||typeof _e=="boolean"||_e===""?"":Dt||typeof _e!="number"||_e===0||pb.hasOwnProperty(kt)&&pb[kt]?(""+_e).trim():_e+"px"}function sb(kt,_e){kt=kt.style;for(var Dt in _e)if(_e.hasOwnProperty(Dt)){var Vt=Dt.indexOf("--")===0,Gt=rb(Dt,_e[Dt],Vt);Dt==="float"&&(Dt="cssFloat"),Vt?kt.setProperty(Dt,Gt):kt[Dt]=Gt}}var tb=A({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 ub(kt,_e){if(_e){if(tb[kt]&&(_e.children!=null||_e.dangerouslySetInnerHTML!=null))throw Error(p$3(137,kt));if(_e.dangerouslySetInnerHTML!=null){if(_e.children!=null)throw Error(p$3(60));if(typeof _e.dangerouslySetInnerHTML!="object"||!("__html"in _e.dangerouslySetInnerHTML))throw Error(p$3(61))}if(_e.style!=null&&typeof _e.style!="object")throw Error(p$3(62))}}function vb(kt,_e){if(kt.indexOf("-")===-1)return typeof _e.is=="string";switch(kt){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 wb=null;function xb(kt){return kt=kt.target||kt.srcElement||window,kt.correspondingUseElement&&(kt=kt.correspondingUseElement),kt.nodeType===3?kt.parentNode:kt}var yb=null,zb=null,Ab=null;function Bb(kt){if(kt=Cb(kt)){if(typeof yb!="function")throw Error(p$3(280));var _e=kt.stateNode;_e&&(_e=Db(_e),yb(kt.stateNode,kt.type,_e))}}function Eb(kt){zb?Ab?Ab.push(kt):Ab=[kt]:zb=kt}function Fb(){if(zb){var kt=zb,_e=Ab;if(Ab=zb=null,Bb(kt),_e)for(kt=0;kt<_e.length;kt++)Bb(_e[kt])}}function Gb(kt,_e){return kt(_e)}function Hb(){}var Ib=!1;function Jb(kt,_e,Dt){if(Ib)return kt(_e,Dt);Ib=!0;try{return Gb(kt,_e,Dt)}finally{Ib=!1,(zb!==null||Ab!==null)&&(Hb(),Fb())}}function Kb(kt,_e){var Dt=kt.stateNode;if(Dt===null)return null;var Vt=Db(Dt);if(Vt===null)return null;Dt=Vt[_e];e:switch(_e){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(Vt=!Vt.disabled)||(kt=kt.type,Vt=!(kt==="button"||kt==="input"||kt==="select"||kt==="textarea")),kt=!Vt;break e;default:kt=!1}if(kt)return null;if(Dt&&typeof Dt!="function")throw Error(p$3(231,_e,typeof Dt));return Dt}var Lb=!1;if(ia)try{var Mb={};Object.defineProperty(Mb,"passive",{get:function(){Lb=!0}}),window.addEventListener("test",Mb,Mb),window.removeEventListener("test",Mb,Mb)}catch{Lb=!1}function Nb(kt,_e,Dt,Vt,Gt,zt,jt,Ht,Wt){var qt=Array.prototype.slice.call(arguments,3);try{_e.apply(Dt,qt)}catch(Xt){this.onError(Xt)}}var Ob=!1,Pb=null,Qb=!1,Rb=null,Sb={onError:function(kt){Ob=!0,Pb=kt}};function Tb(kt,_e,Dt,Vt,Gt,zt,jt,Ht,Wt){Ob=!1,Pb=null,Nb.apply(Sb,arguments)}function Ub(kt,_e,Dt,Vt,Gt,zt,jt,Ht,Wt){if(Tb.apply(this,arguments),Ob){if(Ob){var qt=Pb;Ob=!1,Pb=null}else throw Error(p$3(198));Qb||(Qb=!0,Rb=qt)}}function Vb(kt){var _e=kt,Dt=kt;if(kt.alternate)for(;_e.return;)_e=_e.return;else{kt=_e;do _e=kt,_e.flags&4098&&(Dt=_e.return),kt=_e.return;while(kt)}return _e.tag===3?Dt:null}function Wb(kt){if(kt.tag===13){var _e=kt.memoizedState;if(_e===null&&(kt=kt.alternate,kt!==null&&(_e=kt.memoizedState)),_e!==null)return _e.dehydrated}return null}function Xb(kt){if(Vb(kt)!==kt)throw Error(p$3(188))}function Yb(kt){var _e=kt.alternate;if(!_e){if(_e=Vb(kt),_e===null)throw Error(p$3(188));return _e!==kt?null:kt}for(var Dt=kt,Vt=_e;;){var Gt=Dt.return;if(Gt===null)break;var zt=Gt.alternate;if(zt===null){if(Vt=Gt.return,Vt!==null){Dt=Vt;continue}break}if(Gt.child===zt.child){for(zt=Gt.child;zt;){if(zt===Dt)return Xb(Gt),kt;if(zt===Vt)return Xb(Gt),_e;zt=zt.sibling}throw Error(p$3(188))}if(Dt.return!==Vt.return)Dt=Gt,Vt=zt;else{for(var jt=!1,Ht=Gt.child;Ht;){if(Ht===Dt){jt=!0,Dt=Gt,Vt=zt;break}if(Ht===Vt){jt=!0,Vt=Gt,Dt=zt;break}Ht=Ht.sibling}if(!jt){for(Ht=zt.child;Ht;){if(Ht===Dt){jt=!0,Dt=zt,Vt=Gt;break}if(Ht===Vt){jt=!0,Vt=zt,Dt=Gt;break}Ht=Ht.sibling}if(!jt)throw Error(p$3(189))}}if(Dt.alternate!==Vt)throw Error(p$3(190))}if(Dt.tag!==3)throw Error(p$3(188));return Dt.stateNode.current===Dt?kt:_e}function Zb(kt){return kt=Yb(kt),kt!==null?$b(kt):null}function $b(kt){if(kt.tag===5||kt.tag===6)return kt;for(kt=kt.child;kt!==null;){var _e=$b(kt);if(_e!==null)return _e;kt=kt.sibling}return null}var ac=ca.unstable_scheduleCallback,bc=ca.unstable_cancelCallback,cc=ca.unstable_shouldYield,dc=ca.unstable_requestPaint,B$2=ca.unstable_now,ec$1=ca.unstable_getCurrentPriorityLevel,fc=ca.unstable_ImmediatePriority,gc=ca.unstable_UserBlockingPriority,hc=ca.unstable_NormalPriority,ic=ca.unstable_LowPriority,jc=ca.unstable_IdlePriority,kc=null,lc$1=null;function mc(kt){if(lc$1&&typeof lc$1.onCommitFiberRoot=="function")try{lc$1.onCommitFiberRoot(kc,kt,void 0,(kt.current.flags&128)===128)}catch{}}var oc=Math.clz32?Math.clz32:nc,pc=Math.log,qc=Math.LN2;function nc(kt){return kt>>>=0,kt===0?32:31-(pc(kt)/qc|0)|0}var rc=64,sc=4194304;function tc(kt){switch(kt&-kt){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 kt&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return kt&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return kt}}function uc(kt,_e){var Dt=kt.pendingLanes;if(Dt===0)return 0;var Vt=0,Gt=kt.suspendedLanes,zt=kt.pingedLanes,jt=Dt&268435455;if(jt!==0){var Ht=jt&~Gt;Ht!==0?Vt=tc(Ht):(zt&=jt,zt!==0&&(Vt=tc(zt)))}else jt=Dt&~Gt,jt!==0?Vt=tc(jt):zt!==0&&(Vt=tc(zt));if(Vt===0)return 0;if(_e!==0&&_e!==Vt&&!(_e&Gt)&&(Gt=Vt&-Vt,zt=_e&-_e,Gt>=zt||Gt===16&&(zt&4194240)!==0))return _e;if(Vt&4&&(Vt|=Dt&16),_e=kt.entangledLanes,_e!==0)for(kt=kt.entanglements,_e&=Vt;0<_e;)Dt=31-oc(_e),Gt=1<<Dt,Vt|=kt[Dt],_e&=~Gt;return Vt}function vc(kt,_e){switch(kt){case 1:case 2:case 4:return _e+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 _e+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 wc(kt,_e){for(var Dt=kt.suspendedLanes,Vt=kt.pingedLanes,Gt=kt.expirationTimes,zt=kt.pendingLanes;0<zt;){var jt=31-oc(zt),Ht=1<<jt,Wt=Gt[jt];Wt===-1?(!(Ht&Dt)||Ht&Vt)&&(Gt[jt]=vc(Ht,_e)):Wt<=_e&&(kt.expiredLanes|=Ht),zt&=~Ht}}function xc(kt){return kt=kt.pendingLanes&-1073741825,kt!==0?kt:kt&1073741824?1073741824:0}function yc(){var kt=rc;return rc<<=1,!(rc&4194240)&&(rc=64),kt}function zc(kt){for(var _e=[],Dt=0;31>Dt;Dt++)_e.push(kt);return _e}function Ac(kt,_e,Dt){kt.pendingLanes|=_e,_e!==536870912&&(kt.suspendedLanes=0,kt.pingedLanes=0),kt=kt.eventTimes,_e=31-oc(_e),kt[_e]=Dt}function Bc(kt,_e){var Dt=kt.pendingLanes&~_e;kt.pendingLanes=_e,kt.suspendedLanes=0,kt.pingedLanes=0,kt.expiredLanes&=_e,kt.mutableReadLanes&=_e,kt.entangledLanes&=_e,_e=kt.entanglements;var Vt=kt.eventTimes;for(kt=kt.expirationTimes;0<Dt;){var Gt=31-oc(Dt),zt=1<<Gt;_e[Gt]=0,Vt[Gt]=-1,kt[Gt]=-1,Dt&=~zt}}function Cc(kt,_e){var Dt=kt.entangledLanes|=_e;for(kt=kt.entanglements;Dt;){var Vt=31-oc(Dt),Gt=1<<Vt;Gt&_e|kt[Vt]&_e&&(kt[Vt]|=_e),Dt&=~Gt}}var C$1=0;function Dc(kt){return kt&=-kt,1<kt?4<kt?kt&268435455?16:536870912:4:1}var Ec,Fc,Gc,Hc,Ic,Jc=!1,Kc=[],Lc=null,Mc=null,Nc=null,Oc=new Map,Pc=new Map,Qc=[],Rc="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 Sc(kt,_e){switch(kt){case"focusin":case"focusout":Lc=null;break;case"dragenter":case"dragleave":Mc=null;break;case"mouseover":case"mouseout":Nc=null;break;case"pointerover":case"pointerout":Oc.delete(_e.pointerId);break;case"gotpointercapture":case"lostpointercapture":Pc.delete(_e.pointerId)}}function Tc(kt,_e,Dt,Vt,Gt,zt){return kt===null||kt.nativeEvent!==zt?(kt={blockedOn:_e,domEventName:Dt,eventSystemFlags:Vt,nativeEvent:zt,targetContainers:[Gt]},_e!==null&&(_e=Cb(_e),_e!==null&&Fc(_e)),kt):(kt.eventSystemFlags|=Vt,_e=kt.targetContainers,Gt!==null&&_e.indexOf(Gt)===-1&&_e.push(Gt),kt)}function Uc(kt,_e,Dt,Vt,Gt){switch(_e){case"focusin":return Lc=Tc(Lc,kt,_e,Dt,Vt,Gt),!0;case"dragenter":return Mc=Tc(Mc,kt,_e,Dt,Vt,Gt),!0;case"mouseover":return Nc=Tc(Nc,kt,_e,Dt,Vt,Gt),!0;case"pointerover":var zt=Gt.pointerId;return Oc.set(zt,Tc(Oc.get(zt)||null,kt,_e,Dt,Vt,Gt)),!0;case"gotpointercapture":return zt=Gt.pointerId,Pc.set(zt,Tc(Pc.get(zt)||null,kt,_e,Dt,Vt,Gt)),!0}return!1}function Vc(kt){var _e=Wc(kt.target);if(_e!==null){var Dt=Vb(_e);if(Dt!==null){if(_e=Dt.tag,_e===13){if(_e=Wb(Dt),_e!==null){kt.blockedOn=_e,Ic(kt.priority,function(){Gc(Dt)});return}}else if(_e===3&&Dt.stateNode.current.memoizedState.isDehydrated){kt.blockedOn=Dt.tag===3?Dt.stateNode.containerInfo:null;return}}}kt.blockedOn=null}function Xc(kt){if(kt.blockedOn!==null)return!1;for(var _e=kt.targetContainers;0<_e.length;){var Dt=Yc(kt.domEventName,kt.eventSystemFlags,_e[0],kt.nativeEvent);if(Dt===null){Dt=kt.nativeEvent;var Vt=new Dt.constructor(Dt.type,Dt);wb=Vt,Dt.target.dispatchEvent(Vt),wb=null}else return _e=Cb(Dt),_e!==null&&Fc(_e),kt.blockedOn=Dt,!1;_e.shift()}return!0}function Zc(kt,_e,Dt){Xc(kt)&&Dt.delete(_e)}function $c(){Jc=!1,Lc!==null&&Xc(Lc)&&(Lc=null),Mc!==null&&Xc(Mc)&&(Mc=null),Nc!==null&&Xc(Nc)&&(Nc=null),Oc.forEach(Zc),Pc.forEach(Zc)}function ad(kt,_e){kt.blockedOn===_e&&(kt.blockedOn=null,Jc||(Jc=!0,ca.unstable_scheduleCallback(ca.unstable_NormalPriority,$c)))}function bd(kt){function _e(Gt){return ad(Gt,kt)}if(0<Kc.length){ad(Kc[0],kt);for(var Dt=1;Dt<Kc.length;Dt++){var Vt=Kc[Dt];Vt.blockedOn===kt&&(Vt.blockedOn=null)}}for(Lc!==null&&ad(Lc,kt),Mc!==null&&ad(Mc,kt),Nc!==null&&ad(Nc,kt),Oc.forEach(_e),Pc.forEach(_e),Dt=0;Dt<Qc.length;Dt++)Vt=Qc[Dt],Vt.blockedOn===kt&&(Vt.blockedOn=null);for(;0<Qc.length&&(Dt=Qc[0],Dt.blockedOn===null);)Vc(Dt),Dt.blockedOn===null&&Qc.shift()}var cd=ua.ReactCurrentBatchConfig,dd=!0;function ed(kt,_e,Dt,Vt){var Gt=C$1,zt=cd.transition;cd.transition=null;try{C$1=1,fd$1(kt,_e,Dt,Vt)}finally{C$1=Gt,cd.transition=zt}}function gd(kt,_e,Dt,Vt){var Gt=C$1,zt=cd.transition;cd.transition=null;try{C$1=4,fd$1(kt,_e,Dt,Vt)}finally{C$1=Gt,cd.transition=zt}}function fd$1(kt,_e,Dt,Vt){if(dd){var Gt=Yc(kt,_e,Dt,Vt);if(Gt===null)hd(kt,_e,Vt,id,Dt),Sc(kt,Vt);else if(Uc(Gt,kt,_e,Dt,Vt))Vt.stopPropagation();else if(Sc(kt,Vt),_e&4&&-1<Rc.indexOf(kt)){for(;Gt!==null;){var zt=Cb(Gt);if(zt!==null&&Ec(zt),zt=Yc(kt,_e,Dt,Vt),zt===null&&hd(kt,_e,Vt,id,Dt),zt===Gt)break;Gt=zt}Gt!==null&&Vt.stopPropagation()}else hd(kt,_e,Vt,null,Dt)}}var id=null;function Yc(kt,_e,Dt,Vt){if(id=null,kt=xb(Vt),kt=Wc(kt),kt!==null)if(_e=Vb(kt),_e===null)kt=null;else if(Dt=_e.tag,Dt===13){if(kt=Wb(_e),kt!==null)return kt;kt=null}else if(Dt===3){if(_e.stateNode.current.memoizedState.isDehydrated)return _e.tag===3?_e.stateNode.containerInfo:null;kt=null}else _e!==kt&&(kt=null);return id=kt,null}function jd(kt){switch(kt){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(ec$1()){case fc:return 1;case gc:return 4;case hc:case ic:return 16;case jc:return 536870912;default:return 16}default:return 16}}var kd=null,ld=null,md=null;function nd(){if(md)return md;var kt,_e=ld,Dt=_e.length,Vt,Gt="value"in kd?kd.value:kd.textContent,zt=Gt.length;for(kt=0;kt<Dt&&_e[kt]===Gt[kt];kt++);var jt=Dt-kt;for(Vt=1;Vt<=jt&&_e[Dt-Vt]===Gt[zt-Vt];Vt++);return md=Gt.slice(kt,1<Vt?1-Vt:void 0)}function od(kt){var _e=kt.keyCode;return"charCode"in kt?(kt=kt.charCode,kt===0&&_e===13&&(kt=13)):kt=_e,kt===10&&(kt=13),32<=kt||kt===13?kt:0}function pd(){return!0}function qd(){return!1}function rd(kt){function _e(Dt,Vt,Gt,zt,jt){this._reactName=Dt,this._targetInst=Gt,this.type=Vt,this.nativeEvent=zt,this.target=jt,this.currentTarget=null;for(var Ht in kt)kt.hasOwnProperty(Ht)&&(Dt=kt[Ht],this[Ht]=Dt?Dt(zt):zt[Ht]);return this.isDefaultPrevented=(zt.defaultPrevented!=null?zt.defaultPrevented:zt.returnValue===!1)?pd:qd,this.isPropagationStopped=qd,this}return A(_e.prototype,{preventDefault:function(){this.defaultPrevented=!0;var Dt=this.nativeEvent;Dt&&(Dt.preventDefault?Dt.preventDefault():typeof Dt.returnValue!="unknown"&&(Dt.returnValue=!1),this.isDefaultPrevented=pd)},stopPropagation:function(){var Dt=this.nativeEvent;Dt&&(Dt.stopPropagation?Dt.stopPropagation():typeof Dt.cancelBubble!="unknown"&&(Dt.cancelBubble=!0),this.isPropagationStopped=pd)},persist:function(){},isPersistent:pd}),_e}var sd={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(kt){return kt.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},td$2=rd(sd),ud=A({},sd,{view:0,detail:0}),vd=rd(ud),wd,xd,yd,Ad=A({},ud,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:zd,button:0,buttons:0,relatedTarget:function(kt){return kt.relatedTarget===void 0?kt.fromElement===kt.srcElement?kt.toElement:kt.fromElement:kt.relatedTarget},movementX:function(kt){return"movementX"in kt?kt.movementX:(kt!==yd&&(yd&&kt.type==="mousemove"?(wd=kt.screenX-yd.screenX,xd=kt.screenY-yd.screenY):xd=wd=0,yd=kt),wd)},movementY:function(kt){return"movementY"in kt?kt.movementY:xd}}),Bd=rd(Ad),Cd=A({},Ad,{dataTransfer:0}),Dd=rd(Cd),Ed=A({},ud,{relatedTarget:0}),Fd=rd(Ed),Gd=A({},sd,{animationName:0,elapsedTime:0,pseudoElement:0}),Hd=rd(Gd),Id=A({},sd,{clipboardData:function(kt){return"clipboardData"in kt?kt.clipboardData:window.clipboardData}}),Jd=rd(Id),Kd=A({},sd,{data:0}),Ld=rd(Kd),Md={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},Nd={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"},Od={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function Pd(kt){var _e=this.nativeEvent;return _e.getModifierState?_e.getModifierState(kt):(kt=Od[kt])?!!_e[kt]:!1}function zd(){return Pd}var Qd=A({},ud,{key:function(kt){if(kt.key){var _e=Md[kt.key]||kt.key;if(_e!=="Unidentified")return _e}return kt.type==="keypress"?(kt=od(kt),kt===13?"Enter":String.fromCharCode(kt)):kt.type==="keydown"||kt.type==="keyup"?Nd[kt.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:zd,charCode:function(kt){return kt.type==="keypress"?od(kt):0},keyCode:function(kt){return kt.type==="keydown"||kt.type==="keyup"?kt.keyCode:0},which:function(kt){return kt.type==="keypress"?od(kt):kt.type==="keydown"||kt.type==="keyup"?kt.keyCode:0}}),Rd=rd(Qd),Sd=A({},Ad,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),Td=rd(Sd),Ud=A({},ud,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:zd}),Vd=rd(Ud),Wd=A({},sd,{propertyName:0,elapsedTime:0,pseudoElement:0}),Xd=rd(Wd),Yd=A({},Ad,{deltaX:function(kt){return"deltaX"in kt?kt.deltaX:"wheelDeltaX"in kt?-kt.wheelDeltaX:0},deltaY:function(kt){return"deltaY"in kt?kt.deltaY:"wheelDeltaY"in kt?-kt.wheelDeltaY:"wheelDelta"in kt?-kt.wheelDelta:0},deltaZ:0,deltaMode:0}),Zd=rd(Yd),$d=[9,13,27,32],ae$1=ia&&"CompositionEvent"in window,be$1=null;ia&&"documentMode"in document&&(be$1=document.documentMode);var ce=ia&&"TextEvent"in window&&!be$1,de=ia&&(!ae$1||be$1&&8<be$1&&11>=be$1),ee=String.fromCharCode(32),fe=!1;function ge$1(kt,_e){switch(kt){case"keyup":return $d.indexOf(_e.keyCode)!==-1;case"keydown":return _e.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function he(kt){return kt=kt.detail,typeof kt=="object"&&"data"in kt?kt.data:null}var ie=!1;function je(kt,_e){switch(kt){case"compositionend":return he(_e);case"keypress":return _e.which!==32?null:(fe=!0,ee);case"textInput":return kt=_e.data,kt===ee&&fe?null:kt;default:return null}}function ke(kt,_e){if(ie)return kt==="compositionend"||!ae$1&&ge$1(kt,_e)?(kt=nd(),md=ld=kd=null,ie=!1,kt):null;switch(kt){case"paste":return null;case"keypress":if(!(_e.ctrlKey||_e.altKey||_e.metaKey)||_e.ctrlKey&&_e.altKey){if(_e.char&&1<_e.char.length)return _e.char;if(_e.which)return String.fromCharCode(_e.which)}return null;case"compositionend":return de&&_e.locale!=="ko"?null:_e.data;default:return null}}var le={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 me(kt){var _e=kt&&kt.nodeName&&kt.nodeName.toLowerCase();return _e==="input"?!!le[kt.type]:_e==="textarea"}function ne(kt,_e,Dt,Vt){Eb(Vt),_e=oe(_e,"onChange"),0<_e.length&&(Dt=new td$2("onChange","change",null,Dt,Vt),kt.push({event:Dt,listeners:_e}))}var pe=null,qe=null;function re(kt){se(kt,0)}function te$1(kt){var _e=ue(kt);if(Wa(_e))return kt}function ve(kt,_e){if(kt==="change")return _e}var we$1=!1;if(ia){var xe;if(ia){var ye$1="oninput"in document;if(!ye$1){var ze=document.createElement("div");ze.setAttribute("oninput","return;"),ye$1=typeof ze.oninput=="function"}xe=ye$1}else xe=!1;we$1=xe&&(!document.documentMode||9<document.documentMode)}function Ae$1(){pe&&(pe.detachEvent("onpropertychange",Be),qe=pe=null)}function Be(kt){if(kt.propertyName==="value"&&te$1(qe)){var _e=[];ne(_e,qe,kt,xb(kt)),Jb(re,_e)}}function Ce$1(kt,_e,Dt){kt==="focusin"?(Ae$1(),pe=_e,qe=Dt,pe.attachEvent("onpropertychange",Be)):kt==="focusout"&&Ae$1()}function De(kt){if(kt==="selectionchange"||kt==="keyup"||kt==="keydown")return te$1(qe)}function Ee$1(kt,_e){if(kt==="click")return te$1(_e)}function Fe(kt,_e){if(kt==="input"||kt==="change")return te$1(_e)}function Ge(kt,_e){return kt===_e&&(kt!==0||1/kt===1/_e)||kt!==kt&&_e!==_e}var He=typeof Object.is=="function"?Object.is:Ge;function Ie(kt,_e){if(He(kt,_e))return!0;if(typeof kt!="object"||kt===null||typeof _e!="object"||_e===null)return!1;var Dt=Object.keys(kt),Vt=Object.keys(_e);if(Dt.length!==Vt.length)return!1;for(Vt=0;Vt<Dt.length;Vt++){var Gt=Dt[Vt];if(!ja.call(_e,Gt)||!He(kt[Gt],_e[Gt]))return!1}return!0}function Je(kt){for(;kt&&kt.firstChild;)kt=kt.firstChild;return kt}function Ke(kt,_e){var Dt=Je(kt);kt=0;for(var Vt;Dt;){if(Dt.nodeType===3){if(Vt=kt+Dt.textContent.length,kt<=_e&&Vt>=_e)return{node:Dt,offset:_e-kt};kt=Vt}e:{for(;Dt;){if(Dt.nextSibling){Dt=Dt.nextSibling;break e}Dt=Dt.parentNode}Dt=void 0}Dt=Je(Dt)}}function Le(kt,_e){return kt&&_e?kt===_e?!0:kt&&kt.nodeType===3?!1:_e&&_e.nodeType===3?Le(kt,_e.parentNode):"contains"in kt?kt.contains(_e):kt.compareDocumentPosition?!!(kt.compareDocumentPosition(_e)&16):!1:!1}function Me$1(){for(var kt=window,_e=Xa();_e instanceof kt.HTMLIFrameElement;){try{var Dt=typeof _e.contentWindow.location.href=="string"}catch{Dt=!1}if(Dt)kt=_e.contentWindow;else break;_e=Xa(kt.document)}return _e}function Ne$1(kt){var _e=kt&&kt.nodeName&&kt.nodeName.toLowerCase();return _e&&(_e==="input"&&(kt.type==="text"||kt.type==="search"||kt.type==="tel"||kt.type==="url"||kt.type==="password")||_e==="textarea"||kt.contentEditable==="true")}function Oe$1(kt){var _e=Me$1(),Dt=kt.focusedElem,Vt=kt.selectionRange;if(_e!==Dt&&Dt&&Dt.ownerDocument&&Le(Dt.ownerDocument.documentElement,Dt)){if(Vt!==null&&Ne$1(Dt)){if(_e=Vt.start,kt=Vt.end,kt===void 0&&(kt=_e),"selectionStart"in Dt)Dt.selectionStart=_e,Dt.selectionEnd=Math.min(kt,Dt.value.length);else if(kt=(_e=Dt.ownerDocument||document)&&_e.defaultView||window,kt.getSelection){kt=kt.getSelection();var Gt=Dt.textContent.length,zt=Math.min(Vt.start,Gt);Vt=Vt.end===void 0?zt:Math.min(Vt.end,Gt),!kt.extend&&zt>Vt&&(Gt=Vt,Vt=zt,zt=Gt),Gt=Ke(Dt,zt);var jt=Ke(Dt,Vt);Gt&&jt&&(kt.rangeCount!==1||kt.anchorNode!==Gt.node||kt.anchorOffset!==Gt.offset||kt.focusNode!==jt.node||kt.focusOffset!==jt.offset)&&(_e=_e.createRange(),_e.setStart(Gt.node,Gt.offset),kt.removeAllRanges(),zt>Vt?(kt.addRange(_e),kt.extend(jt.node,jt.offset)):(_e.setEnd(jt.node,jt.offset),kt.addRange(_e)))}}for(_e=[],kt=Dt;kt=kt.parentNode;)kt.nodeType===1&&_e.push({element:kt,left:kt.scrollLeft,top:kt.scrollTop});for(typeof Dt.focus=="function"&&Dt.focus(),Dt=0;Dt<_e.length;Dt++)kt=_e[Dt],kt.element.scrollLeft=kt.left,kt.element.scrollTop=kt.top}}var Pe=ia&&"documentMode"in document&&11>=document.documentMode,Qe=null,Re$1=null,Se$1=null,Te$1=!1;function Ue(kt,_e,Dt){var Vt=Dt.window===Dt?Dt.document:Dt.nodeType===9?Dt:Dt.ownerDocument;Te$1||Qe==null||Qe!==Xa(Vt)||(Vt=Qe,"selectionStart"in Vt&&Ne$1(Vt)?Vt={start:Vt.selectionStart,end:Vt.selectionEnd}:(Vt=(Vt.ownerDocument&&Vt.ownerDocument.defaultView||window).getSelection(),Vt={anchorNode:Vt.anchorNode,anchorOffset:Vt.anchorOffset,focusNode:Vt.focusNode,focusOffset:Vt.focusOffset}),Se$1&&Ie(Se$1,Vt)||(Se$1=Vt,Vt=oe(Re$1,"onSelect"),0<Vt.length&&(_e=new td$2("onSelect","select",null,_e,Dt),kt.push({event:_e,listeners:Vt}),_e.target=Qe)))}function Ve(kt,_e){var Dt={};return Dt[kt.toLowerCase()]=_e.toLowerCase(),Dt["Webkit"+kt]="webkit"+_e,Dt["Moz"+kt]="moz"+_e,Dt}var We={animationend:Ve("Animation","AnimationEnd"),animationiteration:Ve("Animation","AnimationIteration"),animationstart:Ve("Animation","AnimationStart"),transitionend:Ve("Transition","TransitionEnd")},Xe={},Ye={};ia&&(Ye=document.createElement("div").style,"AnimationEvent"in window||(delete We.animationend.animation,delete We.animationiteration.animation,delete We.animationstart.animation),"TransitionEvent"in window||delete We.transitionend.transition);function Ze(kt){if(Xe[kt])return Xe[kt];if(!We[kt])return kt;var _e=We[kt],Dt;for(Dt in _e)if(_e.hasOwnProperty(Dt)&&Dt in Ye)return Xe[kt]=_e[Dt];return kt}var $e$1=Ze("animationend"),af=Ze("animationiteration"),bf=Ze("animationstart"),cf=Ze("transitionend"),df=new Map,ef="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 ff(kt,_e){df.set(kt,_e),fa(_e,[kt])}for(var gf=0;gf<ef.length;gf++){var hf=ef[gf],jf=hf.toLowerCase(),kf=hf[0].toUpperCase()+hf.slice(1);ff(jf,"on"+kf)}ff($e$1,"onAnimationEnd");ff(af,"onAnimationIteration");ff(bf,"onAnimationStart");ff("dblclick","onDoubleClick");ff("focusin","onFocus");ff("focusout","onBlur");ff(cf,"onTransitionEnd");ha("onMouseEnter",["mouseout","mouseover"]);ha("onMouseLeave",["mouseout","mouseover"]);ha("onPointerEnter",["pointerout","pointerover"]);ha("onPointerLeave",["pointerout","pointerover"]);fa("onChange","change click focusin focusout input keydown keyup selectionchange".split(" "));fa("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" "));fa("onBeforeInput",["compositionend","keypress","textInput","paste"]);fa("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" "));fa("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" "));fa("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var lf="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(" "),mf=new Set("cancel close invalid load scroll toggle".split(" ").concat(lf));function nf(kt,_e,Dt){var Vt=kt.type||"unknown-event";kt.currentTarget=Dt,Ub(Vt,_e,void 0,kt),kt.currentTarget=null}function se(kt,_e){_e=(_e&4)!==0;for(var Dt=0;Dt<kt.length;Dt++){var Vt=kt[Dt],Gt=Vt.event;Vt=Vt.listeners;e:{var zt=void 0;if(_e)for(var jt=Vt.length-1;0<=jt;jt--){var Ht=Vt[jt],Wt=Ht.instance,qt=Ht.currentTarget;if(Ht=Ht.listener,Wt!==zt&&Gt.isPropagationStopped())break e;nf(Gt,Ht,qt),zt=Wt}else for(jt=0;jt<Vt.length;jt++){if(Ht=Vt[jt],Wt=Ht.instance,qt=Ht.currentTarget,Ht=Ht.listener,Wt!==zt&&Gt.isPropagationStopped())break e;nf(Gt,Ht,qt),zt=Wt}}}if(Qb)throw kt=Rb,Qb=!1,Rb=null,kt}function D$1(kt,_e){var Dt=_e[of];Dt===void 0&&(Dt=_e[of]=new Set);var Vt=kt+"__bubble";Dt.has(Vt)||(pf(_e,kt,2,!1),Dt.add(Vt))}function qf(kt,_e,Dt){var Vt=0;_e&&(Vt|=4),pf(Dt,kt,Vt,_e)}var rf="_reactListening"+Math.random().toString(36).slice(2);function sf(kt){if(!kt[rf]){kt[rf]=!0,da.forEach(function(Dt){Dt!=="selectionchange"&&(mf.has(Dt)||qf(Dt,!1,kt),qf(Dt,!0,kt))});var _e=kt.nodeType===9?kt:kt.ownerDocument;_e===null||_e[rf]||(_e[rf]=!0,qf("selectionchange",!1,_e))}}function pf(kt,_e,Dt,Vt){switch(jd(_e)){case 1:var Gt=ed;break;case 4:Gt=gd;break;default:Gt=fd$1}Dt=Gt.bind(null,_e,Dt,kt),Gt=void 0,!Lb||_e!=="touchstart"&&_e!=="touchmove"&&_e!=="wheel"||(Gt=!0),Vt?Gt!==void 0?kt.addEventListener(_e,Dt,{capture:!0,passive:Gt}):kt.addEventListener(_e,Dt,!0):Gt!==void 0?kt.addEventListener(_e,Dt,{passive:Gt}):kt.addEventListener(_e,Dt,!1)}function hd(kt,_e,Dt,Vt,Gt){var zt=Vt;if(!(_e&1)&&!(_e&2)&&Vt!==null)e:for(;;){if(Vt===null)return;var jt=Vt.tag;if(jt===3||jt===4){var Ht=Vt.stateNode.containerInfo;if(Ht===Gt||Ht.nodeType===8&&Ht.parentNode===Gt)break;if(jt===4)for(jt=Vt.return;jt!==null;){var Wt=jt.tag;if((Wt===3||Wt===4)&&(Wt=jt.stateNode.containerInfo,Wt===Gt||Wt.nodeType===8&&Wt.parentNode===Gt))return;jt=jt.return}for(;Ht!==null;){if(jt=Wc(Ht),jt===null)return;if(Wt=jt.tag,Wt===5||Wt===6){Vt=zt=jt;continue e}Ht=Ht.parentNode}}Vt=Vt.return}Jb(function(){var qt=zt,Xt=xb(Dt),Kt=[];e:{var Yt=df.get(kt);if(Yt!==void 0){var Zt=td$2,Jt=kt;switch(kt){case"keypress":if(od(Dt)===0)break e;case"keydown":case"keyup":Zt=Rd;break;case"focusin":Jt="focus",Zt=Fd;break;case"focusout":Jt="blur",Zt=Fd;break;case"beforeblur":case"afterblur":Zt=Fd;break;case"click":if(Dt.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":Zt=Bd;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":Zt=Dd;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":Zt=Vd;break;case $e$1:case af:case bf:Zt=Hd;break;case cf:Zt=Xd;break;case"scroll":Zt=vd;break;case"wheel":Zt=Zd;break;case"copy":case"cut":case"paste":Zt=Jd;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":Zt=Td}var nn=(_e&4)!==0,rn=!nn&&kt==="scroll",Qt=nn?Yt!==null?Yt+"Capture":null:Yt;nn=[];for(var en=qt,tn;en!==null;){tn=en;var sn=tn.stateNode;if(tn.tag===5&&sn!==null&&(tn=sn,Qt!==null&&(sn=Kb(en,Qt),sn!=null&&nn.push(tf(en,sn,tn)))),rn)break;en=en.return}0<nn.length&&(Yt=new Zt(Yt,Jt,null,Dt,Xt),Kt.push({event:Yt,listeners:nn}))}}if(!(_e&7)){e:{if(Yt=kt==="mouseover"||kt==="pointerover",Zt=kt==="mouseout"||kt==="pointerout",Yt&&Dt!==wb&&(Jt=Dt.relatedTarget||Dt.fromElement)&&(Wc(Jt)||Jt[uf]))break e;if((Zt||Yt)&&(Yt=Xt.window===Xt?Xt:(Yt=Xt.ownerDocument)?Yt.defaultView||Yt.parentWindow:window,Zt?(Jt=Dt.relatedTarget||Dt.toElement,Zt=qt,Jt=Jt?Wc(Jt):null,Jt!==null&&(rn=Vb(Jt),Jt!==rn||Jt.tag!==5&&Jt.tag!==6)&&(Jt=null)):(Zt=null,Jt=qt),Zt!==Jt)){if(nn=Bd,sn="onMouseLeave",Qt="onMouseEnter",en="mouse",(kt==="pointerout"||kt==="pointerover")&&(nn=Td,sn="onPointerLeave",Qt="onPointerEnter",en="pointer"),rn=Zt==null?Yt:ue(Zt),tn=Jt==null?Yt:ue(Jt),Yt=new nn(sn,en+"leave",Zt,Dt,Xt),Yt.target=rn,Yt.relatedTarget=tn,sn=null,Wc(Xt)===qt&&(nn=new nn(Qt,en+"enter",Jt,Dt,Xt),nn.target=tn,nn.relatedTarget=rn,sn=nn),rn=sn,Zt&&Jt)t:{for(nn=Zt,Qt=Jt,en=0,tn=nn;tn;tn=vf(tn))en++;for(tn=0,sn=Qt;sn;sn=vf(sn))tn++;for(;0<en-tn;)nn=vf(nn),en--;for(;0<tn-en;)Qt=vf(Qt),tn--;for(;en--;){if(nn===Qt||Qt!==null&&nn===Qt.alternate)break t;nn=vf(nn),Qt=vf(Qt)}nn=null}else nn=null;Zt!==null&&wf(Kt,Yt,Zt,nn,!1),Jt!==null&&rn!==null&&wf(Kt,rn,Jt,nn,!0)}}e:{if(Yt=qt?ue(qt):window,Zt=Yt.nodeName&&Yt.nodeName.toLowerCase(),Zt==="select"||Zt==="input"&&Yt.type==="file")var cn=ve;else if(me(Yt))if(we$1)cn=Fe;else{cn=De;var un=Ce$1}else(Zt=Yt.nodeName)&&Zt.toLowerCase()==="input"&&(Yt.type==="checkbox"||Yt.type==="radio")&&(cn=Ee$1);if(cn&&(cn=cn(kt,qt))){ne(Kt,cn,Dt,Xt);break e}un&&un(kt,Yt,qt),kt==="focusout"&&(un=Yt._wrapperState)&&un.controlled&&Yt.type==="number"&&cb(Yt,"number",Yt.value)}switch(un=qt?ue(qt):window,kt){case"focusin":(me(un)||un.contentEditable==="true")&&(Qe=un,Re$1=qt,Se$1=null);break;case"focusout":Se$1=Re$1=Qe=null;break;case"mousedown":Te$1=!0;break;case"contextmenu":case"mouseup":case"dragend":Te$1=!1,Ue(Kt,Dt,Xt);break;case"selectionchange":if(Pe)break;case"keydown":case"keyup":Ue(Kt,Dt,Xt)}var hn;if(ae$1)e:{switch(kt){case"compositionstart":var dn="onCompositionStart";break e;case"compositionend":dn="onCompositionEnd";break e;case"compositionupdate":dn="onCompositionUpdate";break e}dn=void 0}else ie?ge$1(kt,Dt)&&(dn="onCompositionEnd"):kt==="keydown"&&Dt.keyCode===229&&(dn="onCompositionStart");dn&&(de&&Dt.locale!=="ko"&&(ie||dn!=="onCompositionStart"?dn==="onCompositionEnd"&&ie&&(hn=nd()):(kd=Xt,ld="value"in kd?kd.value:kd.textContent,ie=!0)),un=oe(qt,dn),0<un.length&&(dn=new Ld(dn,kt,null,Dt,Xt),Kt.push({event:dn,listeners:un}),hn?dn.data=hn:(hn=he(Dt),hn!==null&&(dn.data=hn)))),(hn=ce?je(kt,Dt):ke(kt,Dt))&&(qt=oe(qt,"onBeforeInput"),0<qt.length&&(Xt=new Ld("onBeforeInput","beforeinput",null,Dt,Xt),Kt.push({event:Xt,listeners:qt}),Xt.data=hn))}se(Kt,_e)})}function tf(kt,_e,Dt){return{instance:kt,listener:_e,currentTarget:Dt}}function oe(kt,_e){for(var Dt=_e+"Capture",Vt=[];kt!==null;){var Gt=kt,zt=Gt.stateNode;Gt.tag===5&&zt!==null&&(Gt=zt,zt=Kb(kt,Dt),zt!=null&&Vt.unshift(tf(kt,zt,Gt)),zt=Kb(kt,_e),zt!=null&&Vt.push(tf(kt,zt,Gt))),kt=kt.return}return Vt}function vf(kt){if(kt===null)return null;do kt=kt.return;while(kt&&kt.tag!==5);return kt||null}function wf(kt,_e,Dt,Vt,Gt){for(var zt=_e._reactName,jt=[];Dt!==null&&Dt!==Vt;){var Ht=Dt,Wt=Ht.alternate,qt=Ht.stateNode;if(Wt!==null&&Wt===Vt)break;Ht.tag===5&&qt!==null&&(Ht=qt,Gt?(Wt=Kb(Dt,zt),Wt!=null&&jt.unshift(tf(Dt,Wt,Ht))):Gt||(Wt=Kb(Dt,zt),Wt!=null&&jt.push(tf(Dt,Wt,Ht)))),Dt=Dt.return}jt.length!==0&&kt.push({event:_e,listeners:jt})}var xf=/\r\n?/g,yf=/\u0000|\uFFFD/g;function zf(kt){return(typeof kt=="string"?kt:""+kt).replace(xf,`
|
|
98
|
+
`).replace(yf,"")}function Af(kt,_e,Dt){if(_e=zf(_e),zf(kt)!==_e&&Dt)throw Error(p$3(425))}function Bf(){}var Cf=null,Df=null;function Ef(kt,_e){return kt==="textarea"||kt==="noscript"||typeof _e.children=="string"||typeof _e.children=="number"||typeof _e.dangerouslySetInnerHTML=="object"&&_e.dangerouslySetInnerHTML!==null&&_e.dangerouslySetInnerHTML.__html!=null}var Ff=typeof setTimeout=="function"?setTimeout:void 0,Gf=typeof clearTimeout=="function"?clearTimeout:void 0,Hf=typeof Promise=="function"?Promise:void 0,Jf=typeof queueMicrotask=="function"?queueMicrotask:typeof Hf<"u"?function(kt){return Hf.resolve(null).then(kt).catch(If)}:Ff;function If(kt){setTimeout(function(){throw kt})}function Kf(kt,_e){var Dt=_e,Vt=0;do{var Gt=Dt.nextSibling;if(kt.removeChild(Dt),Gt&&Gt.nodeType===8)if(Dt=Gt.data,Dt==="/$"){if(Vt===0){kt.removeChild(Gt),bd(_e);return}Vt--}else Dt!=="$"&&Dt!=="$?"&&Dt!=="$!"||Vt++;Dt=Gt}while(Dt);bd(_e)}function Lf(kt){for(;kt!=null;kt=kt.nextSibling){var _e=kt.nodeType;if(_e===1||_e===3)break;if(_e===8){if(_e=kt.data,_e==="$"||_e==="$!"||_e==="$?")break;if(_e==="/$")return null}}return kt}function Mf(kt){kt=kt.previousSibling;for(var _e=0;kt;){if(kt.nodeType===8){var Dt=kt.data;if(Dt==="$"||Dt==="$!"||Dt==="$?"){if(_e===0)return kt;_e--}else Dt==="/$"&&_e++}kt=kt.previousSibling}return null}var Nf=Math.random().toString(36).slice(2),Of="__reactFiber$"+Nf,Pf="__reactProps$"+Nf,uf="__reactContainer$"+Nf,of="__reactEvents$"+Nf,Qf="__reactListeners$"+Nf,Rf="__reactHandles$"+Nf;function Wc(kt){var _e=kt[Of];if(_e)return _e;for(var Dt=kt.parentNode;Dt;){if(_e=Dt[uf]||Dt[Of]){if(Dt=_e.alternate,_e.child!==null||Dt!==null&&Dt.child!==null)for(kt=Mf(kt);kt!==null;){if(Dt=kt[Of])return Dt;kt=Mf(kt)}return _e}kt=Dt,Dt=kt.parentNode}return null}function Cb(kt){return kt=kt[Of]||kt[uf],!kt||kt.tag!==5&&kt.tag!==6&&kt.tag!==13&&kt.tag!==3?null:kt}function ue(kt){if(kt.tag===5||kt.tag===6)return kt.stateNode;throw Error(p$3(33))}function Db(kt){return kt[Pf]||null}var Sf=[],Tf=-1;function Uf(kt){return{current:kt}}function E$1(kt){0>Tf||(kt.current=Sf[Tf],Sf[Tf]=null,Tf--)}function G$1(kt,_e){Tf++,Sf[Tf]=kt.current,kt.current=_e}var Vf={},H$1=Uf(Vf),Wf=Uf(!1),Xf=Vf;function Yf(kt,_e){var Dt=kt.type.contextTypes;if(!Dt)return Vf;var Vt=kt.stateNode;if(Vt&&Vt.__reactInternalMemoizedUnmaskedChildContext===_e)return Vt.__reactInternalMemoizedMaskedChildContext;var Gt={},zt;for(zt in Dt)Gt[zt]=_e[zt];return Vt&&(kt=kt.stateNode,kt.__reactInternalMemoizedUnmaskedChildContext=_e,kt.__reactInternalMemoizedMaskedChildContext=Gt),Gt}function Zf(kt){return kt=kt.childContextTypes,kt!=null}function $f(){E$1(Wf),E$1(H$1)}function ag(kt,_e,Dt){if(H$1.current!==Vf)throw Error(p$3(168));G$1(H$1,_e),G$1(Wf,Dt)}function bg(kt,_e,Dt){var Vt=kt.stateNode;if(_e=_e.childContextTypes,typeof Vt.getChildContext!="function")return Dt;Vt=Vt.getChildContext();for(var Gt in Vt)if(!(Gt in _e))throw Error(p$3(108,Ra(kt)||"Unknown",Gt));return A({},Dt,Vt)}function cg(kt){return kt=(kt=kt.stateNode)&&kt.__reactInternalMemoizedMergedChildContext||Vf,Xf=H$1.current,G$1(H$1,kt),G$1(Wf,Wf.current),!0}function dg(kt,_e,Dt){var Vt=kt.stateNode;if(!Vt)throw Error(p$3(169));Dt?(kt=bg(kt,_e,Xf),Vt.__reactInternalMemoizedMergedChildContext=kt,E$1(Wf),E$1(H$1),G$1(H$1,kt)):E$1(Wf),G$1(Wf,Dt)}var eg=null,fg=!1,gg=!1;function hg(kt){eg===null?eg=[kt]:eg.push(kt)}function ig(kt){fg=!0,hg(kt)}function jg(){if(!gg&&eg!==null){gg=!0;var kt=0,_e=C$1;try{var Dt=eg;for(C$1=1;kt<Dt.length;kt++){var Vt=Dt[kt];do Vt=Vt(!0);while(Vt!==null)}eg=null,fg=!1}catch(Gt){throw eg!==null&&(eg=eg.slice(kt+1)),ac(fc,jg),Gt}finally{C$1=_e,gg=!1}}return null}var kg=[],lg=0,mg=null,ng=0,og=[],pg=0,qg=null,rg=1,sg="";function tg(kt,_e){kg[lg++]=ng,kg[lg++]=mg,mg=kt,ng=_e}function ug(kt,_e,Dt){og[pg++]=rg,og[pg++]=sg,og[pg++]=qg,qg=kt;var Vt=rg;kt=sg;var Gt=32-oc(Vt)-1;Vt&=~(1<<Gt),Dt+=1;var zt=32-oc(_e)+Gt;if(30<zt){var jt=Gt-Gt%5;zt=(Vt&(1<<jt)-1).toString(32),Vt>>=jt,Gt-=jt,rg=1<<32-oc(_e)+Gt|Dt<<Gt|Vt,sg=zt+kt}else rg=1<<zt|Dt<<Gt|Vt,sg=kt}function vg(kt){kt.return!==null&&(tg(kt,1),ug(kt,1,0))}function wg(kt){for(;kt===mg;)mg=kg[--lg],kg[lg]=null,ng=kg[--lg],kg[lg]=null;for(;kt===qg;)qg=og[--pg],og[pg]=null,sg=og[--pg],og[pg]=null,rg=og[--pg],og[pg]=null}var xg=null,yg=null,I$1=!1,zg=null;function Ag(kt,_e){var Dt=Bg(5,null,null,0);Dt.elementType="DELETED",Dt.stateNode=_e,Dt.return=kt,_e=kt.deletions,_e===null?(kt.deletions=[Dt],kt.flags|=16):_e.push(Dt)}function Cg(kt,_e){switch(kt.tag){case 5:var Dt=kt.type;return _e=_e.nodeType!==1||Dt.toLowerCase()!==_e.nodeName.toLowerCase()?null:_e,_e!==null?(kt.stateNode=_e,xg=kt,yg=Lf(_e.firstChild),!0):!1;case 6:return _e=kt.pendingProps===""||_e.nodeType!==3?null:_e,_e!==null?(kt.stateNode=_e,xg=kt,yg=null,!0):!1;case 13:return _e=_e.nodeType!==8?null:_e,_e!==null?(Dt=qg!==null?{id:rg,overflow:sg}:null,kt.memoizedState={dehydrated:_e,treeContext:Dt,retryLane:1073741824},Dt=Bg(18,null,null,0),Dt.stateNode=_e,Dt.return=kt,kt.child=Dt,xg=kt,yg=null,!0):!1;default:return!1}}function Dg(kt){return(kt.mode&1)!==0&&(kt.flags&128)===0}function Eg(kt){if(I$1){var _e=yg;if(_e){var Dt=_e;if(!Cg(kt,_e)){if(Dg(kt))throw Error(p$3(418));_e=Lf(Dt.nextSibling);var Vt=xg;_e&&Cg(kt,_e)?Ag(Vt,Dt):(kt.flags=kt.flags&-4097|2,I$1=!1,xg=kt)}}else{if(Dg(kt))throw Error(p$3(418));kt.flags=kt.flags&-4097|2,I$1=!1,xg=kt}}}function Fg(kt){for(kt=kt.return;kt!==null&&kt.tag!==5&&kt.tag!==3&&kt.tag!==13;)kt=kt.return;xg=kt}function Gg(kt){if(kt!==xg)return!1;if(!I$1)return Fg(kt),I$1=!0,!1;var _e;if((_e=kt.tag!==3)&&!(_e=kt.tag!==5)&&(_e=kt.type,_e=_e!=="head"&&_e!=="body"&&!Ef(kt.type,kt.memoizedProps)),_e&&(_e=yg)){if(Dg(kt))throw Hg(),Error(p$3(418));for(;_e;)Ag(kt,_e),_e=Lf(_e.nextSibling)}if(Fg(kt),kt.tag===13){if(kt=kt.memoizedState,kt=kt!==null?kt.dehydrated:null,!kt)throw Error(p$3(317));e:{for(kt=kt.nextSibling,_e=0;kt;){if(kt.nodeType===8){var Dt=kt.data;if(Dt==="/$"){if(_e===0){yg=Lf(kt.nextSibling);break e}_e--}else Dt!=="$"&&Dt!=="$!"&&Dt!=="$?"||_e++}kt=kt.nextSibling}yg=null}}else yg=xg?Lf(kt.stateNode.nextSibling):null;return!0}function Hg(){for(var kt=yg;kt;)kt=Lf(kt.nextSibling)}function Ig(){yg=xg=null,I$1=!1}function Jg(kt){zg===null?zg=[kt]:zg.push(kt)}var Kg=ua.ReactCurrentBatchConfig;function Lg(kt,_e){if(kt&&kt.defaultProps){_e=A({},_e),kt=kt.defaultProps;for(var Dt in kt)_e[Dt]===void 0&&(_e[Dt]=kt[Dt]);return _e}return _e}var Mg=Uf(null),Ng=null,Og=null,Pg=null;function Qg(){Pg=Og=Ng=null}function Rg(kt){var _e=Mg.current;E$1(Mg),kt._currentValue=_e}function Sg(kt,_e,Dt){for(;kt!==null;){var Vt=kt.alternate;if((kt.childLanes&_e)!==_e?(kt.childLanes|=_e,Vt!==null&&(Vt.childLanes|=_e)):Vt!==null&&(Vt.childLanes&_e)!==_e&&(Vt.childLanes|=_e),kt===Dt)break;kt=kt.return}}function Tg(kt,_e){Ng=kt,Pg=Og=null,kt=kt.dependencies,kt!==null&&kt.firstContext!==null&&(kt.lanes&_e&&(Ug=!0),kt.firstContext=null)}function Vg(kt){var _e=kt._currentValue;if(Pg!==kt)if(kt={context:kt,memoizedValue:_e,next:null},Og===null){if(Ng===null)throw Error(p$3(308));Og=kt,Ng.dependencies={lanes:0,firstContext:kt}}else Og=Og.next=kt;return _e}var Wg=null;function Xg(kt){Wg===null?Wg=[kt]:Wg.push(kt)}function Yg(kt,_e,Dt,Vt){var Gt=_e.interleaved;return Gt===null?(Dt.next=Dt,Xg(_e)):(Dt.next=Gt.next,Gt.next=Dt),_e.interleaved=Dt,Zg(kt,Vt)}function Zg(kt,_e){kt.lanes|=_e;var Dt=kt.alternate;for(Dt!==null&&(Dt.lanes|=_e),Dt=kt,kt=kt.return;kt!==null;)kt.childLanes|=_e,Dt=kt.alternate,Dt!==null&&(Dt.childLanes|=_e),Dt=kt,kt=kt.return;return Dt.tag===3?Dt.stateNode:null}var $g=!1;function ah(kt){kt.updateQueue={baseState:kt.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function bh(kt,_e){kt=kt.updateQueue,_e.updateQueue===kt&&(_e.updateQueue={baseState:kt.baseState,firstBaseUpdate:kt.firstBaseUpdate,lastBaseUpdate:kt.lastBaseUpdate,shared:kt.shared,effects:kt.effects})}function ch(kt,_e){return{eventTime:kt,lane:_e,tag:0,payload:null,callback:null,next:null}}function dh(kt,_e,Dt){var Vt=kt.updateQueue;if(Vt===null)return null;if(Vt=Vt.shared,K$1&2){var Gt=Vt.pending;return Gt===null?_e.next=_e:(_e.next=Gt.next,Gt.next=_e),Vt.pending=_e,Zg(kt,Dt)}return Gt=Vt.interleaved,Gt===null?(_e.next=_e,Xg(Vt)):(_e.next=Gt.next,Gt.next=_e),Vt.interleaved=_e,Zg(kt,Dt)}function eh(kt,_e,Dt){if(_e=_e.updateQueue,_e!==null&&(_e=_e.shared,(Dt&4194240)!==0)){var Vt=_e.lanes;Vt&=kt.pendingLanes,Dt|=Vt,_e.lanes=Dt,Cc(kt,Dt)}}function fh(kt,_e){var Dt=kt.updateQueue,Vt=kt.alternate;if(Vt!==null&&(Vt=Vt.updateQueue,Dt===Vt)){var Gt=null,zt=null;if(Dt=Dt.firstBaseUpdate,Dt!==null){do{var jt={eventTime:Dt.eventTime,lane:Dt.lane,tag:Dt.tag,payload:Dt.payload,callback:Dt.callback,next:null};zt===null?Gt=zt=jt:zt=zt.next=jt,Dt=Dt.next}while(Dt!==null);zt===null?Gt=zt=_e:zt=zt.next=_e}else Gt=zt=_e;Dt={baseState:Vt.baseState,firstBaseUpdate:Gt,lastBaseUpdate:zt,shared:Vt.shared,effects:Vt.effects},kt.updateQueue=Dt;return}kt=Dt.lastBaseUpdate,kt===null?Dt.firstBaseUpdate=_e:kt.next=_e,Dt.lastBaseUpdate=_e}function gh(kt,_e,Dt,Vt){var Gt=kt.updateQueue;$g=!1;var zt=Gt.firstBaseUpdate,jt=Gt.lastBaseUpdate,Ht=Gt.shared.pending;if(Ht!==null){Gt.shared.pending=null;var Wt=Ht,qt=Wt.next;Wt.next=null,jt===null?zt=qt:jt.next=qt,jt=Wt;var Xt=kt.alternate;Xt!==null&&(Xt=Xt.updateQueue,Ht=Xt.lastBaseUpdate,Ht!==jt&&(Ht===null?Xt.firstBaseUpdate=qt:Ht.next=qt,Xt.lastBaseUpdate=Wt))}if(zt!==null){var Kt=Gt.baseState;jt=0,Xt=qt=Wt=null,Ht=zt;do{var Yt=Ht.lane,Zt=Ht.eventTime;if((Vt&Yt)===Yt){Xt!==null&&(Xt=Xt.next={eventTime:Zt,lane:0,tag:Ht.tag,payload:Ht.payload,callback:Ht.callback,next:null});e:{var Jt=kt,nn=Ht;switch(Yt=_e,Zt=Dt,nn.tag){case 1:if(Jt=nn.payload,typeof Jt=="function"){Kt=Jt.call(Zt,Kt,Yt);break e}Kt=Jt;break e;case 3:Jt.flags=Jt.flags&-65537|128;case 0:if(Jt=nn.payload,Yt=typeof Jt=="function"?Jt.call(Zt,Kt,Yt):Jt,Yt==null)break e;Kt=A({},Kt,Yt);break e;case 2:$g=!0}}Ht.callback!==null&&Ht.lane!==0&&(kt.flags|=64,Yt=Gt.effects,Yt===null?Gt.effects=[Ht]:Yt.push(Ht))}else Zt={eventTime:Zt,lane:Yt,tag:Ht.tag,payload:Ht.payload,callback:Ht.callback,next:null},Xt===null?(qt=Xt=Zt,Wt=Kt):Xt=Xt.next=Zt,jt|=Yt;if(Ht=Ht.next,Ht===null){if(Ht=Gt.shared.pending,Ht===null)break;Yt=Ht,Ht=Yt.next,Yt.next=null,Gt.lastBaseUpdate=Yt,Gt.shared.pending=null}}while(1);if(Xt===null&&(Wt=Kt),Gt.baseState=Wt,Gt.firstBaseUpdate=qt,Gt.lastBaseUpdate=Xt,_e=Gt.shared.interleaved,_e!==null){Gt=_e;do jt|=Gt.lane,Gt=Gt.next;while(Gt!==_e)}else zt===null&&(Gt.shared.lanes=0);hh|=jt,kt.lanes=jt,kt.memoizedState=Kt}}function ih(kt,_e,Dt){if(kt=_e.effects,_e.effects=null,kt!==null)for(_e=0;_e<kt.length;_e++){var Vt=kt[_e],Gt=Vt.callback;if(Gt!==null){if(Vt.callback=null,Vt=Dt,typeof Gt!="function")throw Error(p$3(191,Gt));Gt.call(Vt)}}}var jh=new aa.Component().refs;function kh(kt,_e,Dt,Vt){_e=kt.memoizedState,Dt=Dt(Vt,_e),Dt=Dt==null?_e:A({},_e,Dt),kt.memoizedState=Dt,kt.lanes===0&&(kt.updateQueue.baseState=Dt)}var nh={isMounted:function(kt){return(kt=kt._reactInternals)?Vb(kt)===kt:!1},enqueueSetState:function(kt,_e,Dt){kt=kt._reactInternals;var Vt=L$1(),Gt=lh(kt),zt=ch(Vt,Gt);zt.payload=_e,Dt!=null&&(zt.callback=Dt),_e=dh(kt,zt,Gt),_e!==null&&(mh(_e,kt,Gt,Vt),eh(_e,kt,Gt))},enqueueReplaceState:function(kt,_e,Dt){kt=kt._reactInternals;var Vt=L$1(),Gt=lh(kt),zt=ch(Vt,Gt);zt.tag=1,zt.payload=_e,Dt!=null&&(zt.callback=Dt),_e=dh(kt,zt,Gt),_e!==null&&(mh(_e,kt,Gt,Vt),eh(_e,kt,Gt))},enqueueForceUpdate:function(kt,_e){kt=kt._reactInternals;var Dt=L$1(),Vt=lh(kt),Gt=ch(Dt,Vt);Gt.tag=2,_e!=null&&(Gt.callback=_e),_e=dh(kt,Gt,Vt),_e!==null&&(mh(_e,kt,Vt,Dt),eh(_e,kt,Vt))}};function oh(kt,_e,Dt,Vt,Gt,zt,jt){return kt=kt.stateNode,typeof kt.shouldComponentUpdate=="function"?kt.shouldComponentUpdate(Vt,zt,jt):_e.prototype&&_e.prototype.isPureReactComponent?!Ie(Dt,Vt)||!Ie(Gt,zt):!0}function ph(kt,_e,Dt){var Vt=!1,Gt=Vf,zt=_e.contextType;return typeof zt=="object"&&zt!==null?zt=Vg(zt):(Gt=Zf(_e)?Xf:H$1.current,Vt=_e.contextTypes,zt=(Vt=Vt!=null)?Yf(kt,Gt):Vf),_e=new _e(Dt,zt),kt.memoizedState=_e.state!==null&&_e.state!==void 0?_e.state:null,_e.updater=nh,kt.stateNode=_e,_e._reactInternals=kt,Vt&&(kt=kt.stateNode,kt.__reactInternalMemoizedUnmaskedChildContext=Gt,kt.__reactInternalMemoizedMaskedChildContext=zt),_e}function qh(kt,_e,Dt,Vt){kt=_e.state,typeof _e.componentWillReceiveProps=="function"&&_e.componentWillReceiveProps(Dt,Vt),typeof _e.UNSAFE_componentWillReceiveProps=="function"&&_e.UNSAFE_componentWillReceiveProps(Dt,Vt),_e.state!==kt&&nh.enqueueReplaceState(_e,_e.state,null)}function rh(kt,_e,Dt,Vt){var Gt=kt.stateNode;Gt.props=Dt,Gt.state=kt.memoizedState,Gt.refs=jh,ah(kt);var zt=_e.contextType;typeof zt=="object"&&zt!==null?Gt.context=Vg(zt):(zt=Zf(_e)?Xf:H$1.current,Gt.context=Yf(kt,zt)),Gt.state=kt.memoizedState,zt=_e.getDerivedStateFromProps,typeof zt=="function"&&(kh(kt,_e,zt,Dt),Gt.state=kt.memoizedState),typeof _e.getDerivedStateFromProps=="function"||typeof Gt.getSnapshotBeforeUpdate=="function"||typeof Gt.UNSAFE_componentWillMount!="function"&&typeof Gt.componentWillMount!="function"||(_e=Gt.state,typeof Gt.componentWillMount=="function"&&Gt.componentWillMount(),typeof Gt.UNSAFE_componentWillMount=="function"&&Gt.UNSAFE_componentWillMount(),_e!==Gt.state&&nh.enqueueReplaceState(Gt,Gt.state,null),gh(kt,Dt,Gt,Vt),Gt.state=kt.memoizedState),typeof Gt.componentDidMount=="function"&&(kt.flags|=4194308)}function sh(kt,_e,Dt){if(kt=Dt.ref,kt!==null&&typeof kt!="function"&&typeof kt!="object"){if(Dt._owner){if(Dt=Dt._owner,Dt){if(Dt.tag!==1)throw Error(p$3(309));var Vt=Dt.stateNode}if(!Vt)throw Error(p$3(147,kt));var Gt=Vt,zt=""+kt;return _e!==null&&_e.ref!==null&&typeof _e.ref=="function"&&_e.ref._stringRef===zt?_e.ref:(_e=function(jt){var Ht=Gt.refs;Ht===jh&&(Ht=Gt.refs={}),jt===null?delete Ht[zt]:Ht[zt]=jt},_e._stringRef=zt,_e)}if(typeof kt!="string")throw Error(p$3(284));if(!Dt._owner)throw Error(p$3(290,kt))}return kt}function th(kt,_e){throw kt=Object.prototype.toString.call(_e),Error(p$3(31,kt==="[object Object]"?"object with keys {"+Object.keys(_e).join(", ")+"}":kt))}function uh(kt){var _e=kt._init;return _e(kt._payload)}function vh(kt){function _e(Qt,en){if(kt){var tn=Qt.deletions;tn===null?(Qt.deletions=[en],Qt.flags|=16):tn.push(en)}}function Dt(Qt,en){if(!kt)return null;for(;en!==null;)_e(Qt,en),en=en.sibling;return null}function Vt(Qt,en){for(Qt=new Map;en!==null;)en.key!==null?Qt.set(en.key,en):Qt.set(en.index,en),en=en.sibling;return Qt}function Gt(Qt,en){return Qt=wh(Qt,en),Qt.index=0,Qt.sibling=null,Qt}function zt(Qt,en,tn){return Qt.index=tn,kt?(tn=Qt.alternate,tn!==null?(tn=tn.index,tn<en?(Qt.flags|=2,en):tn):(Qt.flags|=2,en)):(Qt.flags|=1048576,en)}function jt(Qt){return kt&&Qt.alternate===null&&(Qt.flags|=2),Qt}function Ht(Qt,en,tn,sn){return en===null||en.tag!==6?(en=xh(tn,Qt.mode,sn),en.return=Qt,en):(en=Gt(en,tn),en.return=Qt,en)}function Wt(Qt,en,tn,sn){var cn=tn.type;return cn===ya?Xt(Qt,en,tn.props.children,sn,tn.key):en!==null&&(en.elementType===cn||typeof cn=="object"&&cn!==null&&cn.$$typeof===Ha&&uh(cn)===en.type)?(sn=Gt(en,tn.props),sn.ref=sh(Qt,en,tn),sn.return=Qt,sn):(sn=yh(tn.type,tn.key,tn.props,null,Qt.mode,sn),sn.ref=sh(Qt,en,tn),sn.return=Qt,sn)}function qt(Qt,en,tn,sn){return en===null||en.tag!==4||en.stateNode.containerInfo!==tn.containerInfo||en.stateNode.implementation!==tn.implementation?(en=zh(tn,Qt.mode,sn),en.return=Qt,en):(en=Gt(en,tn.children||[]),en.return=Qt,en)}function Xt(Qt,en,tn,sn,cn){return en===null||en.tag!==7?(en=Ah(tn,Qt.mode,sn,cn),en.return=Qt,en):(en=Gt(en,tn),en.return=Qt,en)}function Kt(Qt,en,tn){if(typeof en=="string"&&en!==""||typeof en=="number")return en=xh(""+en,Qt.mode,tn),en.return=Qt,en;if(typeof en=="object"&&en!==null){switch(en.$$typeof){case va:return tn=yh(en.type,en.key,en.props,null,Qt.mode,tn),tn.ref=sh(Qt,null,en),tn.return=Qt,tn;case wa:return en=zh(en,Qt.mode,tn),en.return=Qt,en;case Ha:var sn=en._init;return Kt(Qt,sn(en._payload),tn)}if(eb(en)||Ka(en))return en=Ah(en,Qt.mode,tn,null),en.return=Qt,en;th(Qt,en)}return null}function Yt(Qt,en,tn,sn){var cn=en!==null?en.key:null;if(typeof tn=="string"&&tn!==""||typeof tn=="number")return cn!==null?null:Ht(Qt,en,""+tn,sn);if(typeof tn=="object"&&tn!==null){switch(tn.$$typeof){case va:return tn.key===cn?Wt(Qt,en,tn,sn):null;case wa:return tn.key===cn?qt(Qt,en,tn,sn):null;case Ha:return cn=tn._init,Yt(Qt,en,cn(tn._payload),sn)}if(eb(tn)||Ka(tn))return cn!==null?null:Xt(Qt,en,tn,sn,null);th(Qt,tn)}return null}function Zt(Qt,en,tn,sn,cn){if(typeof sn=="string"&&sn!==""||typeof sn=="number")return Qt=Qt.get(tn)||null,Ht(en,Qt,""+sn,cn);if(typeof sn=="object"&&sn!==null){switch(sn.$$typeof){case va:return Qt=Qt.get(sn.key===null?tn:sn.key)||null,Wt(en,Qt,sn,cn);case wa:return Qt=Qt.get(sn.key===null?tn:sn.key)||null,qt(en,Qt,sn,cn);case Ha:var un=sn._init;return Zt(Qt,en,tn,un(sn._payload),cn)}if(eb(sn)||Ka(sn))return Qt=Qt.get(tn)||null,Xt(en,Qt,sn,cn,null);th(en,sn)}return null}function Jt(Qt,en,tn,sn){for(var cn=null,un=null,hn=en,dn=en=0,pn=null;hn!==null&&dn<tn.length;dn++){hn.index>dn?(pn=hn,hn=null):pn=hn.sibling;var fn=Yt(Qt,hn,tn[dn],sn);if(fn===null){hn===null&&(hn=pn);break}kt&&hn&&fn.alternate===null&&_e(Qt,hn),en=zt(fn,en,dn),un===null?cn=fn:un.sibling=fn,un=fn,hn=pn}if(dn===tn.length)return Dt(Qt,hn),I$1&&tg(Qt,dn),cn;if(hn===null){for(;dn<tn.length;dn++)hn=Kt(Qt,tn[dn],sn),hn!==null&&(en=zt(hn,en,dn),un===null?cn=hn:un.sibling=hn,un=hn);return I$1&&tg(Qt,dn),cn}for(hn=Vt(Qt,hn);dn<tn.length;dn++)pn=Zt(hn,Qt,dn,tn[dn],sn),pn!==null&&(kt&&pn.alternate!==null&&hn.delete(pn.key===null?dn:pn.key),en=zt(pn,en,dn),un===null?cn=pn:un.sibling=pn,un=pn);return kt&&hn.forEach(function(mn){return _e(Qt,mn)}),I$1&&tg(Qt,dn),cn}function nn(Qt,en,tn,sn){var cn=Ka(tn);if(typeof cn!="function")throw Error(p$3(150));if(tn=cn.call(tn),tn==null)throw Error(p$3(151));for(var un=cn=null,hn=en,dn=en=0,pn=null,fn=tn.next();hn!==null&&!fn.done;dn++,fn=tn.next()){hn.index>dn?(pn=hn,hn=null):pn=hn.sibling;var mn=Yt(Qt,hn,fn.value,sn);if(mn===null){hn===null&&(hn=pn);break}kt&&hn&&mn.alternate===null&&_e(Qt,hn),en=zt(mn,en,dn),un===null?cn=mn:un.sibling=mn,un=mn,hn=pn}if(fn.done)return Dt(Qt,hn),I$1&&tg(Qt,dn),cn;if(hn===null){for(;!fn.done;dn++,fn=tn.next())fn=Kt(Qt,fn.value,sn),fn!==null&&(en=zt(fn,en,dn),un===null?cn=fn:un.sibling=fn,un=fn);return I$1&&tg(Qt,dn),cn}for(hn=Vt(Qt,hn);!fn.done;dn++,fn=tn.next())fn=Zt(hn,Qt,dn,fn.value,sn),fn!==null&&(kt&&fn.alternate!==null&&hn.delete(fn.key===null?dn:fn.key),en=zt(fn,en,dn),un===null?cn=fn:un.sibling=fn,un=fn);return kt&&hn.forEach(function(vn){return _e(Qt,vn)}),I$1&&tg(Qt,dn),cn}function rn(Qt,en,tn,sn){if(typeof tn=="object"&&tn!==null&&tn.type===ya&&tn.key===null&&(tn=tn.props.children),typeof tn=="object"&&tn!==null){switch(tn.$$typeof){case va:e:{for(var cn=tn.key,un=en;un!==null;){if(un.key===cn){if(cn=tn.type,cn===ya){if(un.tag===7){Dt(Qt,un.sibling),en=Gt(un,tn.props.children),en.return=Qt,Qt=en;break e}}else if(un.elementType===cn||typeof cn=="object"&&cn!==null&&cn.$$typeof===Ha&&uh(cn)===un.type){Dt(Qt,un.sibling),en=Gt(un,tn.props),en.ref=sh(Qt,un,tn),en.return=Qt,Qt=en;break e}Dt(Qt,un);break}else _e(Qt,un);un=un.sibling}tn.type===ya?(en=Ah(tn.props.children,Qt.mode,sn,tn.key),en.return=Qt,Qt=en):(sn=yh(tn.type,tn.key,tn.props,null,Qt.mode,sn),sn.ref=sh(Qt,en,tn),sn.return=Qt,Qt=sn)}return jt(Qt);case wa:e:{for(un=tn.key;en!==null;){if(en.key===un)if(en.tag===4&&en.stateNode.containerInfo===tn.containerInfo&&en.stateNode.implementation===tn.implementation){Dt(Qt,en.sibling),en=Gt(en,tn.children||[]),en.return=Qt,Qt=en;break e}else{Dt(Qt,en);break}else _e(Qt,en);en=en.sibling}en=zh(tn,Qt.mode,sn),en.return=Qt,Qt=en}return jt(Qt);case Ha:return un=tn._init,rn(Qt,en,un(tn._payload),sn)}if(eb(tn))return Jt(Qt,en,tn,sn);if(Ka(tn))return nn(Qt,en,tn,sn);th(Qt,tn)}return typeof tn=="string"&&tn!==""||typeof tn=="number"?(tn=""+tn,en!==null&&en.tag===6?(Dt(Qt,en.sibling),en=Gt(en,tn),en.return=Qt,Qt=en):(Dt(Qt,en),en=xh(tn,Qt.mode,sn),en.return=Qt,Qt=en),jt(Qt)):Dt(Qt,en)}return rn}var Bh=vh(!0),Ch=vh(!1),Dh={},Eh=Uf(Dh),Fh=Uf(Dh),Gh=Uf(Dh);function Hh(kt){if(kt===Dh)throw Error(p$3(174));return kt}function Ih(kt,_e){switch(G$1(Gh,_e),G$1(Fh,kt),G$1(Eh,Dh),kt=_e.nodeType,kt){case 9:case 11:_e=(_e=_e.documentElement)?_e.namespaceURI:lb(null,"");break;default:kt=kt===8?_e.parentNode:_e,_e=kt.namespaceURI||null,kt=kt.tagName,_e=lb(_e,kt)}E$1(Eh),G$1(Eh,_e)}function Jh(){E$1(Eh),E$1(Fh),E$1(Gh)}function Kh(kt){Hh(Gh.current);var _e=Hh(Eh.current),Dt=lb(_e,kt.type);_e!==Dt&&(G$1(Fh,kt),G$1(Eh,Dt))}function Lh(kt){Fh.current===kt&&(E$1(Eh),E$1(Fh))}var M$1=Uf(0);function Mh(kt){for(var _e=kt;_e!==null;){if(_e.tag===13){var Dt=_e.memoizedState;if(Dt!==null&&(Dt=Dt.dehydrated,Dt===null||Dt.data==="$?"||Dt.data==="$!"))return _e}else if(_e.tag===19&&_e.memoizedProps.revealOrder!==void 0){if(_e.flags&128)return _e}else if(_e.child!==null){_e.child.return=_e,_e=_e.child;continue}if(_e===kt)break;for(;_e.sibling===null;){if(_e.return===null||_e.return===kt)return null;_e=_e.return}_e.sibling.return=_e.return,_e=_e.sibling}return null}var Nh=[];function Oh(){for(var kt=0;kt<Nh.length;kt++)Nh[kt]._workInProgressVersionPrimary=null;Nh.length=0}var Ph=ua.ReactCurrentDispatcher,Qh=ua.ReactCurrentBatchConfig,Rh=0,N$1=null,O$1=null,P$1=null,Sh=!1,Th=!1,Uh=0,Vh=0;function Q$1(){throw Error(p$3(321))}function Wh(kt,_e){if(_e===null)return!1;for(var Dt=0;Dt<_e.length&&Dt<kt.length;Dt++)if(!He(kt[Dt],_e[Dt]))return!1;return!0}function Xh(kt,_e,Dt,Vt,Gt,zt){if(Rh=zt,N$1=_e,_e.memoizedState=null,_e.updateQueue=null,_e.lanes=0,Ph.current=kt===null||kt.memoizedState===null?Yh:Zh,kt=Dt(Vt,Gt),Th){zt=0;do{if(Th=!1,Uh=0,25<=zt)throw Error(p$3(301));zt+=1,P$1=O$1=null,_e.updateQueue=null,Ph.current=$h,kt=Dt(Vt,Gt)}while(Th)}if(Ph.current=ai,_e=O$1!==null&&O$1.next!==null,Rh=0,P$1=O$1=N$1=null,Sh=!1,_e)throw Error(p$3(300));return kt}function bi(){var kt=Uh!==0;return Uh=0,kt}function ci(){var kt={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return P$1===null?N$1.memoizedState=P$1=kt:P$1=P$1.next=kt,P$1}function di(){if(O$1===null){var kt=N$1.alternate;kt=kt!==null?kt.memoizedState:null}else kt=O$1.next;var _e=P$1===null?N$1.memoizedState:P$1.next;if(_e!==null)P$1=_e,O$1=kt;else{if(kt===null)throw Error(p$3(310));O$1=kt,kt={memoizedState:O$1.memoizedState,baseState:O$1.baseState,baseQueue:O$1.baseQueue,queue:O$1.queue,next:null},P$1===null?N$1.memoizedState=P$1=kt:P$1=P$1.next=kt}return P$1}function ei(kt,_e){return typeof _e=="function"?_e(kt):_e}function fi(kt){var _e=di(),Dt=_e.queue;if(Dt===null)throw Error(p$3(311));Dt.lastRenderedReducer=kt;var Vt=O$1,Gt=Vt.baseQueue,zt=Dt.pending;if(zt!==null){if(Gt!==null){var jt=Gt.next;Gt.next=zt.next,zt.next=jt}Vt.baseQueue=Gt=zt,Dt.pending=null}if(Gt!==null){zt=Gt.next,Vt=Vt.baseState;var Ht=jt=null,Wt=null,qt=zt;do{var Xt=qt.lane;if((Rh&Xt)===Xt)Wt!==null&&(Wt=Wt.next={lane:0,action:qt.action,hasEagerState:qt.hasEagerState,eagerState:qt.eagerState,next:null}),Vt=qt.hasEagerState?qt.eagerState:kt(Vt,qt.action);else{var Kt={lane:Xt,action:qt.action,hasEagerState:qt.hasEagerState,eagerState:qt.eagerState,next:null};Wt===null?(Ht=Wt=Kt,jt=Vt):Wt=Wt.next=Kt,N$1.lanes|=Xt,hh|=Xt}qt=qt.next}while(qt!==null&&qt!==zt);Wt===null?jt=Vt:Wt.next=Ht,He(Vt,_e.memoizedState)||(Ug=!0),_e.memoizedState=Vt,_e.baseState=jt,_e.baseQueue=Wt,Dt.lastRenderedState=Vt}if(kt=Dt.interleaved,kt!==null){Gt=kt;do zt=Gt.lane,N$1.lanes|=zt,hh|=zt,Gt=Gt.next;while(Gt!==kt)}else Gt===null&&(Dt.lanes=0);return[_e.memoizedState,Dt.dispatch]}function gi(kt){var _e=di(),Dt=_e.queue;if(Dt===null)throw Error(p$3(311));Dt.lastRenderedReducer=kt;var Vt=Dt.dispatch,Gt=Dt.pending,zt=_e.memoizedState;if(Gt!==null){Dt.pending=null;var jt=Gt=Gt.next;do zt=kt(zt,jt.action),jt=jt.next;while(jt!==Gt);He(zt,_e.memoizedState)||(Ug=!0),_e.memoizedState=zt,_e.baseQueue===null&&(_e.baseState=zt),Dt.lastRenderedState=zt}return[zt,Vt]}function hi(){}function ii(kt,_e){var Dt=N$1,Vt=di(),Gt=_e(),zt=!He(Vt.memoizedState,Gt);if(zt&&(Vt.memoizedState=Gt,Ug=!0),Vt=Vt.queue,ji(ki.bind(null,Dt,Vt,kt),[kt]),Vt.getSnapshot!==_e||zt||P$1!==null&&P$1.memoizedState.tag&1){if(Dt.flags|=2048,li(9,mi.bind(null,Dt,Vt,Gt,_e),void 0,null),R$1===null)throw Error(p$3(349));Rh&30||ni(Dt,_e,Gt)}return Gt}function ni(kt,_e,Dt){kt.flags|=16384,kt={getSnapshot:_e,value:Dt},_e=N$1.updateQueue,_e===null?(_e={lastEffect:null,stores:null},N$1.updateQueue=_e,_e.stores=[kt]):(Dt=_e.stores,Dt===null?_e.stores=[kt]:Dt.push(kt))}function mi(kt,_e,Dt,Vt){_e.value=Dt,_e.getSnapshot=Vt,oi(_e)&&pi(kt)}function ki(kt,_e,Dt){return Dt(function(){oi(_e)&&pi(kt)})}function oi(kt){var _e=kt.getSnapshot;kt=kt.value;try{var Dt=_e();return!He(kt,Dt)}catch{return!0}}function pi(kt){var _e=Zg(kt,1);_e!==null&&mh(_e,kt,1,-1)}function qi(kt){var _e=ci();return typeof kt=="function"&&(kt=kt()),_e.memoizedState=_e.baseState=kt,kt={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:ei,lastRenderedState:kt},_e.queue=kt,kt=kt.dispatch=ri.bind(null,N$1,kt),[_e.memoizedState,kt]}function li(kt,_e,Dt,Vt){return kt={tag:kt,create:_e,destroy:Dt,deps:Vt,next:null},_e=N$1.updateQueue,_e===null?(_e={lastEffect:null,stores:null},N$1.updateQueue=_e,_e.lastEffect=kt.next=kt):(Dt=_e.lastEffect,Dt===null?_e.lastEffect=kt.next=kt:(Vt=Dt.next,Dt.next=kt,kt.next=Vt,_e.lastEffect=kt)),kt}function si(){return di().memoizedState}function ti(kt,_e,Dt,Vt){var Gt=ci();N$1.flags|=kt,Gt.memoizedState=li(1|_e,Dt,void 0,Vt===void 0?null:Vt)}function ui(kt,_e,Dt,Vt){var Gt=di();Vt=Vt===void 0?null:Vt;var zt=void 0;if(O$1!==null){var jt=O$1.memoizedState;if(zt=jt.destroy,Vt!==null&&Wh(Vt,jt.deps)){Gt.memoizedState=li(_e,Dt,zt,Vt);return}}N$1.flags|=kt,Gt.memoizedState=li(1|_e,Dt,zt,Vt)}function vi(kt,_e){return ti(8390656,8,kt,_e)}function ji(kt,_e){return ui(2048,8,kt,_e)}function wi(kt,_e){return ui(4,2,kt,_e)}function xi(kt,_e){return ui(4,4,kt,_e)}function yi(kt,_e){if(typeof _e=="function")return kt=kt(),_e(kt),function(){_e(null)};if(_e!=null)return kt=kt(),_e.current=kt,function(){_e.current=null}}function zi(kt,_e,Dt){return Dt=Dt!=null?Dt.concat([kt]):null,ui(4,4,yi.bind(null,_e,kt),Dt)}function Ai(){}function Bi(kt,_e){var Dt=di();_e=_e===void 0?null:_e;var Vt=Dt.memoizedState;return Vt!==null&&_e!==null&&Wh(_e,Vt[1])?Vt[0]:(Dt.memoizedState=[kt,_e],kt)}function Ci(kt,_e){var Dt=di();_e=_e===void 0?null:_e;var Vt=Dt.memoizedState;return Vt!==null&&_e!==null&&Wh(_e,Vt[1])?Vt[0]:(kt=kt(),Dt.memoizedState=[kt,_e],kt)}function Di(kt,_e,Dt){return Rh&21?(He(Dt,_e)||(Dt=yc(),N$1.lanes|=Dt,hh|=Dt,kt.baseState=!0),_e):(kt.baseState&&(kt.baseState=!1,Ug=!0),kt.memoizedState=Dt)}function Ei(kt,_e){var Dt=C$1;C$1=Dt!==0&&4>Dt?Dt:4,kt(!0);var Vt=Qh.transition;Qh.transition={};try{kt(!1),_e()}finally{C$1=Dt,Qh.transition=Vt}}function Fi(){return di().memoizedState}function Gi(kt,_e,Dt){var Vt=lh(kt);if(Dt={lane:Vt,action:Dt,hasEagerState:!1,eagerState:null,next:null},Hi(kt))Ii(_e,Dt);else if(Dt=Yg(kt,_e,Dt,Vt),Dt!==null){var Gt=L$1();mh(Dt,kt,Vt,Gt),Ji(Dt,_e,Vt)}}function ri(kt,_e,Dt){var Vt=lh(kt),Gt={lane:Vt,action:Dt,hasEagerState:!1,eagerState:null,next:null};if(Hi(kt))Ii(_e,Gt);else{var zt=kt.alternate;if(kt.lanes===0&&(zt===null||zt.lanes===0)&&(zt=_e.lastRenderedReducer,zt!==null))try{var jt=_e.lastRenderedState,Ht=zt(jt,Dt);if(Gt.hasEagerState=!0,Gt.eagerState=Ht,He(Ht,jt)){var Wt=_e.interleaved;Wt===null?(Gt.next=Gt,Xg(_e)):(Gt.next=Wt.next,Wt.next=Gt),_e.interleaved=Gt;return}}catch{}finally{}Dt=Yg(kt,_e,Gt,Vt),Dt!==null&&(Gt=L$1(),mh(Dt,kt,Vt,Gt),Ji(Dt,_e,Vt))}}function Hi(kt){var _e=kt.alternate;return kt===N$1||_e!==null&&_e===N$1}function Ii(kt,_e){Th=Sh=!0;var Dt=kt.pending;Dt===null?_e.next=_e:(_e.next=Dt.next,Dt.next=_e),kt.pending=_e}function Ji(kt,_e,Dt){if(Dt&4194240){var Vt=_e.lanes;Vt&=kt.pendingLanes,Dt|=Vt,_e.lanes=Dt,Cc(kt,Dt)}}var ai={readContext:Vg,useCallback:Q$1,useContext:Q$1,useEffect:Q$1,useImperativeHandle:Q$1,useInsertionEffect:Q$1,useLayoutEffect:Q$1,useMemo:Q$1,useReducer:Q$1,useRef:Q$1,useState:Q$1,useDebugValue:Q$1,useDeferredValue:Q$1,useTransition:Q$1,useMutableSource:Q$1,useSyncExternalStore:Q$1,useId:Q$1,unstable_isNewReconciler:!1},Yh={readContext:Vg,useCallback:function(kt,_e){return ci().memoizedState=[kt,_e===void 0?null:_e],kt},useContext:Vg,useEffect:vi,useImperativeHandle:function(kt,_e,Dt){return Dt=Dt!=null?Dt.concat([kt]):null,ti(4194308,4,yi.bind(null,_e,kt),Dt)},useLayoutEffect:function(kt,_e){return ti(4194308,4,kt,_e)},useInsertionEffect:function(kt,_e){return ti(4,2,kt,_e)},useMemo:function(kt,_e){var Dt=ci();return _e=_e===void 0?null:_e,kt=kt(),Dt.memoizedState=[kt,_e],kt},useReducer:function(kt,_e,Dt){var Vt=ci();return _e=Dt!==void 0?Dt(_e):_e,Vt.memoizedState=Vt.baseState=_e,kt={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:kt,lastRenderedState:_e},Vt.queue=kt,kt=kt.dispatch=Gi.bind(null,N$1,kt),[Vt.memoizedState,kt]},useRef:function(kt){var _e=ci();return kt={current:kt},_e.memoizedState=kt},useState:qi,useDebugValue:Ai,useDeferredValue:function(kt){return ci().memoizedState=kt},useTransition:function(){var kt=qi(!1),_e=kt[0];return kt=Ei.bind(null,kt[1]),ci().memoizedState=kt,[_e,kt]},useMutableSource:function(){},useSyncExternalStore:function(kt,_e,Dt){var Vt=N$1,Gt=ci();if(I$1){if(Dt===void 0)throw Error(p$3(407));Dt=Dt()}else{if(Dt=_e(),R$1===null)throw Error(p$3(349));Rh&30||ni(Vt,_e,Dt)}Gt.memoizedState=Dt;var zt={value:Dt,getSnapshot:_e};return Gt.queue=zt,vi(ki.bind(null,Vt,zt,kt),[kt]),Vt.flags|=2048,li(9,mi.bind(null,Vt,zt,Dt,_e),void 0,null),Dt},useId:function(){var kt=ci(),_e=R$1.identifierPrefix;if(I$1){var Dt=sg,Vt=rg;Dt=(Vt&~(1<<32-oc(Vt)-1)).toString(32)+Dt,_e=":"+_e+"R"+Dt,Dt=Uh++,0<Dt&&(_e+="H"+Dt.toString(32)),_e+=":"}else Dt=Vh++,_e=":"+_e+"r"+Dt.toString(32)+":";return kt.memoizedState=_e},unstable_isNewReconciler:!1},Zh={readContext:Vg,useCallback:Bi,useContext:Vg,useEffect:ji,useImperativeHandle:zi,useInsertionEffect:wi,useLayoutEffect:xi,useMemo:Ci,useReducer:fi,useRef:si,useState:function(){return fi(ei)},useDebugValue:Ai,useDeferredValue:function(kt){var _e=di();return Di(_e,O$1.memoizedState,kt)},useTransition:function(){var kt=fi(ei)[0],_e=di().memoizedState;return[kt,_e]},useMutableSource:hi,useSyncExternalStore:ii,useId:Fi,unstable_isNewReconciler:!1},$h={readContext:Vg,useCallback:Bi,useContext:Vg,useEffect:ji,useImperativeHandle:zi,useInsertionEffect:wi,useLayoutEffect:xi,useMemo:Ci,useReducer:gi,useRef:si,useState:function(){return gi(ei)},useDebugValue:Ai,useDeferredValue:function(kt){var _e=di();return O$1===null?_e.memoizedState=kt:Di(_e,O$1.memoizedState,kt)},useTransition:function(){var kt=gi(ei)[0],_e=di().memoizedState;return[kt,_e]},useMutableSource:hi,useSyncExternalStore:ii,useId:Fi,unstable_isNewReconciler:!1};function Ki(kt,_e){try{var Dt="",Vt=_e;do Dt+=Pa(Vt),Vt=Vt.return;while(Vt);var Gt=Dt}catch(zt){Gt=`
|
|
99
99
|
Error generating stack: `+zt.message+`
|
|
100
|
-
`+zt.stack}return{value:kt,source:_e,stack:Gt,digest:null}}function Li(kt,_e,Dt){return{value:kt,source:null,stack:Dt??null,digest:_e??null}}function Mi(kt,_e){try{console.error(_e.value)}catch(Dt){setTimeout(function(){throw Dt})}}var Ni=typeof WeakMap=="function"?WeakMap:Map;function Oi(kt,_e,Dt){Dt=ch(-1,Dt),Dt.tag=3,Dt.payload={element:null};var Vt=_e.value;return Dt.callback=function(){Pi||(Pi=!0,Qi=Vt),Mi(kt,_e)},Dt}function Ri(kt,_e,Dt){Dt=ch(-1,Dt),Dt.tag=3;var Vt=kt.type.getDerivedStateFromError;if(typeof Vt=="function"){var Gt=_e.value;Dt.payload=function(){return Vt(Gt)},Dt.callback=function(){Mi(kt,_e)}}var zt=kt.stateNode;return zt!==null&&typeof zt.componentDidCatch=="function"&&(Dt.callback=function(){Mi(kt,_e),typeof Vt!="function"&&(Si===null?Si=new Set([this]):Si.add(this));var jt=_e.stack;this.componentDidCatch(_e.value,{componentStack:jt!==null?jt:""})}),Dt}function Ti(kt,_e,Dt){var Vt=kt.pingCache;if(Vt===null){Vt=kt.pingCache=new Ni;var Gt=new Set;Vt.set(_e,Gt)}else Gt=Vt.get(_e),Gt===void 0&&(Gt=new Set,Vt.set(_e,Gt));Gt.has(Dt)||(Gt.add(Dt),kt=Ui.bind(null,kt,_e,Dt),_e.then(kt,kt))}function Vi(kt){do{var _e;if((_e=kt.tag===13)&&(_e=kt.memoizedState,_e=_e!==null?_e.dehydrated!==null:!0),_e)return kt;kt=kt.return}while(kt!==null);return null}function Wi(kt,_e,Dt,Vt,Gt){return kt.mode&1?(kt.flags|=65536,kt.lanes=Gt,kt):(kt===_e?kt.flags|=65536:(kt.flags|=128,Dt.flags|=131072,Dt.flags&=-52805,Dt.tag===1&&(Dt.alternate===null?Dt.tag=17:(_e=ch(-1,1),_e.tag=2,dh(Dt,_e,1))),Dt.lanes|=1),kt)}var Xi=ua.ReactCurrentOwner,Ug=!1;function Yi(kt,_e,Dt,Vt){_e.child=kt===null?Ch(_e,null,Dt,Vt):Bh(_e,kt.child,Dt,Vt)}function Zi(kt,_e,Dt,Vt,Gt){Dt=Dt.render;var zt=_e.ref;return Tg(_e,Gt),Vt=Xh(kt,_e,Dt,Vt,zt,Gt),Dt=bi(),kt!==null&&!Ug?(_e.updateQueue=kt.updateQueue,_e.flags&=-2053,kt.lanes&=~Gt,$i(kt,_e,Gt)):(I$1&&Dt&&vg(_e),_e.flags|=1,Yi(kt,_e,Vt,Gt),_e.child)}function aj(kt,_e,Dt,Vt,Gt){if(kt===null){var zt=Dt.type;return typeof zt=="function"&&!bj(zt)&&zt.defaultProps===void 0&&Dt.compare===null&&Dt.defaultProps===void 0?(_e.tag=15,_e.type=zt,cj(kt,_e,zt,Vt,Gt)):(kt=yh(Dt.type,null,Vt,_e,_e.mode,Gt),kt.ref=_e.ref,kt.return=_e,_e.child=kt)}if(zt=kt.child,!(kt.lanes&Gt)){var jt=zt.memoizedProps;if(Dt=Dt.compare,Dt=Dt!==null?Dt:Ie,Dt(jt,Vt)&&kt.ref===_e.ref)return $i(kt,_e,Gt)}return _e.flags|=1,kt=wh(zt,Vt),kt.ref=_e.ref,kt.return=_e,_e.child=kt}function cj(kt,_e,Dt,Vt,Gt){if(kt!==null){var zt=kt.memoizedProps;if(Ie(zt,Vt)&&kt.ref===_e.ref)if(Ug=!1,_e.pendingProps=Vt=zt,(kt.lanes&Gt)!==0)kt.flags&131072&&(Ug=!0);else return _e.lanes=kt.lanes,$i(kt,_e,Gt)}return dj(kt,_e,Dt,Vt,Gt)}function ej(kt,_e,Dt){var Vt=_e.pendingProps,Gt=Vt.children,zt=kt!==null?kt.memoizedState:null;if(Vt.mode==="hidden")if(!(_e.mode&1))_e.memoizedState={baseLanes:0,cachePool:null,transitions:null},G$1(fj,gj),gj|=Dt;else{if(!(Dt&1073741824))return kt=zt!==null?zt.baseLanes|Dt:Dt,_e.lanes=_e.childLanes=1073741824,_e.memoizedState={baseLanes:kt,cachePool:null,transitions:null},_e.updateQueue=null,G$1(fj,gj),gj|=kt,null;_e.memoizedState={baseLanes:0,cachePool:null,transitions:null},Vt=zt!==null?zt.baseLanes:Dt,G$1(fj,gj),gj|=Vt}else zt!==null?(Vt=zt.baseLanes|Dt,_e.memoizedState=null):Vt=Dt,G$1(fj,gj),gj|=Vt;return Yi(kt,_e,Gt,Dt),_e.child}function hj(kt,_e){var Dt=_e.ref;(kt===null&&Dt!==null||kt!==null&&kt.ref!==Dt)&&(_e.flags|=512,_e.flags|=2097152)}function dj(kt,_e,Dt,Vt,Gt){var zt=Zf(Dt)?Xf:H$1.current;return zt=Yf(_e,zt),Tg(_e,Gt),Dt=Xh(kt,_e,Dt,Vt,zt,Gt),Vt=bi(),kt!==null&&!Ug?(_e.updateQueue=kt.updateQueue,_e.flags&=-2053,kt.lanes&=~Gt,$i(kt,_e,Gt)):(I$1&&Vt&&vg(_e),_e.flags|=1,Yi(kt,_e,Dt,Gt),_e.child)}function ij(kt,_e,Dt,Vt,Gt){if(Zf(Dt)){var zt=!0;cg(_e)}else zt=!1;if(Tg(_e,Gt),_e.stateNode===null)jj(kt,_e),ph(_e,Dt,Vt),rh(_e,Dt,Vt,Gt),Vt=!0;else if(kt===null){var jt=_e.stateNode,Ht=_e.memoizedProps;jt.props=Ht;var Wt=jt.context,qt=Dt.contextType;typeof qt=="object"&&qt!==null?qt=Vg(qt):(qt=Zf(Dt)?Xf:H$1.current,qt=Yf(_e,qt));var Xt=Dt.getDerivedStateFromProps,Kt=typeof Xt=="function"||typeof jt.getSnapshotBeforeUpdate=="function";Kt||typeof jt.UNSAFE_componentWillReceiveProps!="function"&&typeof jt.componentWillReceiveProps!="function"||(Ht!==Vt||Wt!==qt)&&qh(_e,jt,Vt,qt),$g=!1;var Yt=_e.memoizedState;jt.state=Yt,gh(_e,Vt,jt,Gt),Wt=_e.memoizedState,Ht!==Vt||Yt!==Wt||Wf.current||$g?(typeof Xt=="function"&&(kh(_e,Dt,Xt,Vt),Wt=_e.memoizedState),(Ht=$g||oh(_e,Dt,Ht,Vt,Yt,Wt,qt))?(Kt||typeof jt.UNSAFE_componentWillMount!="function"&&typeof jt.componentWillMount!="function"||(typeof jt.componentWillMount=="function"&&jt.componentWillMount(),typeof jt.UNSAFE_componentWillMount=="function"&&jt.UNSAFE_componentWillMount()),typeof jt.componentDidMount=="function"&&(_e.flags|=4194308)):(typeof jt.componentDidMount=="function"&&(_e.flags|=4194308),_e.memoizedProps=Vt,_e.memoizedState=Wt),jt.props=Vt,jt.state=Wt,jt.context=qt,Vt=Ht):(typeof jt.componentDidMount=="function"&&(_e.flags|=4194308),Vt=!1)}else{jt=_e.stateNode,bh(kt,_e),Ht=_e.memoizedProps,qt=_e.type===_e.elementType?Ht:Lg(_e.type,Ht),jt.props=qt,Kt=_e.pendingProps,Yt=jt.context,Wt=Dt.contextType,typeof Wt=="object"&&Wt!==null?Wt=Vg(Wt):(Wt=Zf(Dt)?Xf:H$1.current,Wt=Yf(_e,Wt));var Zt=Dt.getDerivedStateFromProps;(Xt=typeof Zt=="function"||typeof jt.getSnapshotBeforeUpdate=="function")||typeof jt.UNSAFE_componentWillReceiveProps!="function"&&typeof jt.componentWillReceiveProps!="function"||(Ht!==Kt||Yt!==Wt)&&qh(_e,jt,Vt,Wt),$g=!1,Yt=_e.memoizedState,jt.state=Yt,gh(_e,Vt,jt,Gt);var Jt=_e.memoizedState;Ht!==Kt||Yt!==Jt||Wf.current||$g?(typeof Zt=="function"&&(kh(_e,Dt,Zt,Vt),Jt=_e.memoizedState),(qt=$g||oh(_e,Dt,qt,Vt,Yt,Jt,Wt)||!1)?(Xt||typeof jt.UNSAFE_componentWillUpdate!="function"&&typeof jt.componentWillUpdate!="function"||(typeof jt.componentWillUpdate=="function"&&jt.componentWillUpdate(Vt,Jt,Wt),typeof jt.UNSAFE_componentWillUpdate=="function"&&jt.UNSAFE_componentWillUpdate(Vt,Jt,Wt)),typeof jt.componentDidUpdate=="function"&&(_e.flags|=4),typeof jt.getSnapshotBeforeUpdate=="function"&&(_e.flags|=1024)):(typeof jt.componentDidUpdate!="function"||Ht===kt.memoizedProps&&Yt===kt.memoizedState||(_e.flags|=4),typeof jt.getSnapshotBeforeUpdate!="function"||Ht===kt.memoizedProps&&Yt===kt.memoizedState||(_e.flags|=1024),_e.memoizedProps=Vt,_e.memoizedState=Jt),jt.props=Vt,jt.state=Jt,jt.context=Wt,Vt=qt):(typeof jt.componentDidUpdate!="function"||Ht===kt.memoizedProps&&Yt===kt.memoizedState||(_e.flags|=4),typeof jt.getSnapshotBeforeUpdate!="function"||Ht===kt.memoizedProps&&Yt===kt.memoizedState||(_e.flags|=1024),Vt=!1)}return kj(kt,_e,Dt,Vt,zt,Gt)}function kj(kt,_e,Dt,Vt,Gt,zt){hj(kt,_e);var jt=(_e.flags&128)!==0;if(!Vt&&!jt)return Gt&&dg(_e,Dt,!1),$i(kt,_e,zt);Vt=_e.stateNode,Xi.current=_e;var Ht=jt&&typeof Dt.getDerivedStateFromError!="function"?null:Vt.render();return _e.flags|=1,kt!==null&&jt?(_e.child=Bh(_e,kt.child,null,zt),_e.child=Bh(_e,null,Ht,zt)):Yi(kt,_e,Ht,zt),_e.memoizedState=Vt.state,Gt&&dg(_e,Dt,!0),_e.child}function lj(kt){var _e=kt.stateNode;_e.pendingContext?ag(kt,_e.pendingContext,_e.pendingContext!==_e.context):_e.context&&ag(kt,_e.context,!1),Ih(kt,_e.containerInfo)}function mj(kt,_e,Dt,Vt,Gt){return Ig(),Jg(Gt),_e.flags|=256,Yi(kt,_e,Dt,Vt),_e.child}var nj={dehydrated:null,treeContext:null,retryLane:0};function oj(kt){return{baseLanes:kt,cachePool:null,transitions:null}}function pj(kt,_e,Dt){var Vt=_e.pendingProps,Gt=M$1.current,zt=!1,jt=(_e.flags&128)!==0,Ht;if((Ht=jt)||(Ht=kt!==null&&kt.memoizedState===null?!1:(Gt&2)!==0),Ht?(zt=!0,_e.flags&=-129):(kt===null||kt.memoizedState!==null)&&(Gt|=1),G$1(M$1,Gt&1),kt===null)return Eg(_e),kt=_e.memoizedState,kt!==null&&(kt=kt.dehydrated,kt!==null)?(_e.mode&1?kt.data==="$!"?_e.lanes=8:_e.lanes=1073741824:_e.lanes=1,null):(jt=Vt.children,kt=Vt.fallback,zt?(Vt=_e.mode,zt=_e.child,jt={mode:"hidden",children:jt},!(Vt&1)&&zt!==null?(zt.childLanes=0,zt.pendingProps=jt):zt=qj(jt,Vt,0,null),kt=Ah(kt,Vt,Dt,null),zt.return=_e,kt.return=_e,zt.sibling=kt,_e.child=zt,_e.child.memoizedState=oj(Dt),_e.memoizedState=nj,kt):rj(_e,jt));if(Gt=kt.memoizedState,Gt!==null&&(Ht=Gt.dehydrated,Ht!==null))return sj(kt,_e,jt,Vt,Ht,Gt,Dt);if(zt){zt=Vt.fallback,jt=_e.mode,Gt=kt.child,Ht=Gt.sibling;var Wt={mode:"hidden",children:Vt.children};return!(jt&1)&&_e.child!==Gt?(Vt=_e.child,Vt.childLanes=0,Vt.pendingProps=Wt,_e.deletions=null):(Vt=wh(Gt,Wt),Vt.subtreeFlags=Gt.subtreeFlags&14680064),Ht!==null?zt=wh(Ht,zt):(zt=Ah(zt,jt,Dt,null),zt.flags|=2),zt.return=_e,Vt.return=_e,Vt.sibling=zt,_e.child=Vt,Vt=zt,zt=_e.child,jt=kt.child.memoizedState,jt=jt===null?oj(Dt):{baseLanes:jt.baseLanes|Dt,cachePool:null,transitions:jt.transitions},zt.memoizedState=jt,zt.childLanes=kt.childLanes&~Dt,_e.memoizedState=nj,Vt}return zt=kt.child,kt=zt.sibling,Vt=wh(zt,{mode:"visible",children:Vt.children}),!(_e.mode&1)&&(Vt.lanes=Dt),Vt.return=_e,Vt.sibling=null,kt!==null&&(Dt=_e.deletions,Dt===null?(_e.deletions=[kt],_e.flags|=16):Dt.push(kt)),_e.child=Vt,_e.memoizedState=null,Vt}function rj(kt,_e){return _e=qj({mode:"visible",children:_e},kt.mode,0,null),_e.return=kt,kt.child=_e}function tj(kt,_e,Dt,Vt){return Vt!==null&&Jg(Vt),Bh(_e,kt.child,null,Dt),kt=rj(_e,_e.pendingProps.children),kt.flags|=2,_e.memoizedState=null,kt}function sj(kt,_e,Dt,Vt,Gt,zt,jt){if(Dt)return _e.flags&256?(_e.flags&=-257,Vt=Li(Error(p$3(422))),tj(kt,_e,jt,Vt)):_e.memoizedState!==null?(_e.child=kt.child,_e.flags|=128,null):(zt=Vt.fallback,Gt=_e.mode,Vt=qj({mode:"visible",children:Vt.children},Gt,0,null),zt=Ah(zt,Gt,jt,null),zt.flags|=2,Vt.return=_e,zt.return=_e,Vt.sibling=zt,_e.child=Vt,_e.mode&1&&Bh(_e,kt.child,null,jt),_e.child.memoizedState=oj(jt),_e.memoizedState=nj,zt);if(!(_e.mode&1))return tj(kt,_e,jt,null);if(Gt.data==="$!"){if(Vt=Gt.nextSibling&&Gt.nextSibling.dataset,Vt)var Ht=Vt.dgst;return Vt=Ht,zt=Error(p$3(419)),Vt=Li(zt,Vt,void 0),tj(kt,_e,jt,Vt)}if(Ht=(jt&kt.childLanes)!==0,Ug||Ht){if(Vt=R$1,Vt!==null){switch(jt&-jt){case 4:Gt=2;break;case 16:Gt=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:Gt=32;break;case 536870912:Gt=268435456;break;default:Gt=0}Gt=Gt&(Vt.suspendedLanes|jt)?0:Gt,Gt!==0&&Gt!==zt.retryLane&&(zt.retryLane=Gt,Zg(kt,Gt),mh(Vt,kt,Gt,-1))}return uj(),Vt=Li(Error(p$3(421))),tj(kt,_e,jt,Vt)}return Gt.data==="$?"?(_e.flags|=128,_e.child=kt.child,_e=vj.bind(null,kt),Gt._reactRetry=_e,null):(kt=zt.treeContext,yg=Lf(Gt.nextSibling),xg=_e,I$1=!0,zg=null,kt!==null&&(og[pg++]=rg,og[pg++]=sg,og[pg++]=qg,rg=kt.id,sg=kt.overflow,qg=_e),_e=rj(_e,Vt.children),_e.flags|=4096,_e)}function wj(kt,_e,Dt){kt.lanes|=_e;var Vt=kt.alternate;Vt!==null&&(Vt.lanes|=_e),Sg(kt.return,_e,Dt)}function xj(kt,_e,Dt,Vt,Gt){var zt=kt.memoizedState;zt===null?kt.memoizedState={isBackwards:_e,rendering:null,renderingStartTime:0,last:Vt,tail:Dt,tailMode:Gt}:(zt.isBackwards=_e,zt.rendering=null,zt.renderingStartTime=0,zt.last=Vt,zt.tail=Dt,zt.tailMode=Gt)}function yj(kt,_e,Dt){var Vt=_e.pendingProps,Gt=Vt.revealOrder,zt=Vt.tail;if(Yi(kt,_e,Vt.children,Dt),Vt=M$1.current,Vt&2)Vt=Vt&1|2,_e.flags|=128;else{if(kt!==null&&kt.flags&128)e:for(kt=_e.child;kt!==null;){if(kt.tag===13)kt.memoizedState!==null&&wj(kt,Dt,_e);else if(kt.tag===19)wj(kt,Dt,_e);else if(kt.child!==null){kt.child.return=kt,kt=kt.child;continue}if(kt===_e)break e;for(;kt.sibling===null;){if(kt.return===null||kt.return===_e)break e;kt=kt.return}kt.sibling.return=kt.return,kt=kt.sibling}Vt&=1}if(G$1(M$1,Vt),!(_e.mode&1))_e.memoizedState=null;else switch(Gt){case"forwards":for(Dt=_e.child,Gt=null;Dt!==null;)kt=Dt.alternate,kt!==null&&Mh(kt)===null&&(Gt=Dt),Dt=Dt.sibling;Dt=Gt,Dt===null?(Gt=_e.child,_e.child=null):(Gt=Dt.sibling,Dt.sibling=null),xj(_e,!1,Gt,Dt,zt);break;case"backwards":for(Dt=null,Gt=_e.child,_e.child=null;Gt!==null;){if(kt=Gt.alternate,kt!==null&&Mh(kt)===null){_e.child=Gt;break}kt=Gt.sibling,Gt.sibling=Dt,Dt=Gt,Gt=kt}xj(_e,!0,Dt,null,zt);break;case"together":xj(_e,!1,null,null,void 0);break;default:_e.memoizedState=null}return _e.child}function jj(kt,_e){!(_e.mode&1)&&kt!==null&&(kt.alternate=null,_e.alternate=null,_e.flags|=2)}function $i(kt,_e,Dt){if(kt!==null&&(_e.dependencies=kt.dependencies),hh|=_e.lanes,!(Dt&_e.childLanes))return null;if(kt!==null&&_e.child!==kt.child)throw Error(p$3(153));if(_e.child!==null){for(kt=_e.child,Dt=wh(kt,kt.pendingProps),_e.child=Dt,Dt.return=_e;kt.sibling!==null;)kt=kt.sibling,Dt=Dt.sibling=wh(kt,kt.pendingProps),Dt.return=_e;Dt.sibling=null}return _e.child}function zj(kt,_e,Dt){switch(_e.tag){case 3:lj(_e),Ig();break;case 5:Kh(_e);break;case 1:Zf(_e.type)&&cg(_e);break;case 4:Ih(_e,_e.stateNode.containerInfo);break;case 10:var Vt=_e.type._context,Gt=_e.memoizedProps.value;G$1(Mg,Vt._currentValue),Vt._currentValue=Gt;break;case 13:if(Vt=_e.memoizedState,Vt!==null)return Vt.dehydrated!==null?(G$1(M$1,M$1.current&1),_e.flags|=128,null):Dt&_e.child.childLanes?pj(kt,_e,Dt):(G$1(M$1,M$1.current&1),kt=$i(kt,_e,Dt),kt!==null?kt.sibling:null);G$1(M$1,M$1.current&1);break;case 19:if(Vt=(Dt&_e.childLanes)!==0,kt.flags&128){if(Vt)return yj(kt,_e,Dt);_e.flags|=128}if(Gt=_e.memoizedState,Gt!==null&&(Gt.rendering=null,Gt.tail=null,Gt.lastEffect=null),G$1(M$1,M$1.current),Vt)break;return null;case 22:case 23:return _e.lanes=0,ej(kt,_e,Dt)}return $i(kt,_e,Dt)}var Aj,Bj,Cj,Dj;Aj=function(kt,_e){for(var Dt=_e.child;Dt!==null;){if(Dt.tag===5||Dt.tag===6)kt.appendChild(Dt.stateNode);else if(Dt.tag!==4&&Dt.child!==null){Dt.child.return=Dt,Dt=Dt.child;continue}if(Dt===_e)break;for(;Dt.sibling===null;){if(Dt.return===null||Dt.return===_e)return;Dt=Dt.return}Dt.sibling.return=Dt.return,Dt=Dt.sibling}};Bj=function(){};Cj=function(kt,_e,Dt,Vt){var Gt=kt.memoizedProps;if(Gt!==Vt){kt=_e.stateNode,Hh(Eh.current);var zt=null;switch(Dt){case"input":Gt=Ya(kt,Gt),Vt=Ya(kt,Vt),zt=[];break;case"select":Gt=A({},Gt,{value:void 0}),Vt=A({},Vt,{value:void 0}),zt=[];break;case"textarea":Gt=gb(kt,Gt),Vt=gb(kt,Vt),zt=[];break;default:typeof Gt.onClick!="function"&&typeof Vt.onClick=="function"&&(kt.onclick=Bf)}ub(Dt,Vt);var jt;Dt=null;for(qt in Gt)if(!Vt.hasOwnProperty(qt)&&Gt.hasOwnProperty(qt)&&Gt[qt]!=null)if(qt==="style"){var Ht=Gt[qt];for(jt in Ht)Ht.hasOwnProperty(jt)&&(Dt||(Dt={}),Dt[jt]="")}else qt!=="dangerouslySetInnerHTML"&&qt!=="children"&&qt!=="suppressContentEditableWarning"&&qt!=="suppressHydrationWarning"&&qt!=="autoFocus"&&(ea.hasOwnProperty(qt)?zt||(zt=[]):(zt=zt||[]).push(qt,null));for(qt in Vt){var Wt=Vt[qt];if(Ht=Gt?.[qt],Vt.hasOwnProperty(qt)&&Wt!==Ht&&(Wt!=null||Ht!=null))if(qt==="style")if(Ht){for(jt in Ht)!Ht.hasOwnProperty(jt)||Wt&&Wt.hasOwnProperty(jt)||(Dt||(Dt={}),Dt[jt]="");for(jt in Wt)Wt.hasOwnProperty(jt)&&Ht[jt]!==Wt[jt]&&(Dt||(Dt={}),Dt[jt]=Wt[jt])}else Dt||(zt||(zt=[]),zt.push(qt,Dt)),Dt=Wt;else qt==="dangerouslySetInnerHTML"?(Wt=Wt?Wt.__html:void 0,Ht=Ht?Ht.__html:void 0,Wt!=null&&Ht!==Wt&&(zt=zt||[]).push(qt,Wt)):qt==="children"?typeof Wt!="string"&&typeof Wt!="number"||(zt=zt||[]).push(qt,""+Wt):qt!=="suppressContentEditableWarning"&&qt!=="suppressHydrationWarning"&&(ea.hasOwnProperty(qt)?(Wt!=null&&qt==="onScroll"&&D$2("scroll",kt),zt||Ht===Wt||(zt=[])):(zt=zt||[]).push(qt,Wt))}Dt&&(zt=zt||[]).push("style",Dt);var qt=zt;(_e.updateQueue=qt)&&(_e.flags|=4)}};Dj=function(kt,_e,Dt,Vt){Dt!==Vt&&(_e.flags|=4)};function Ej(kt,_e){if(!I$1)switch(kt.tailMode){case"hidden":_e=kt.tail;for(var Dt=null;_e!==null;)_e.alternate!==null&&(Dt=_e),_e=_e.sibling;Dt===null?kt.tail=null:Dt.sibling=null;break;case"collapsed":Dt=kt.tail;for(var Vt=null;Dt!==null;)Dt.alternate!==null&&(Vt=Dt),Dt=Dt.sibling;Vt===null?_e||kt.tail===null?kt.tail=null:kt.tail.sibling=null:Vt.sibling=null}}function S$1(kt){var _e=kt.alternate!==null&&kt.alternate.child===kt.child,Dt=0,Vt=0;if(_e)for(var Gt=kt.child;Gt!==null;)Dt|=Gt.lanes|Gt.childLanes,Vt|=Gt.subtreeFlags&14680064,Vt|=Gt.flags&14680064,Gt.return=kt,Gt=Gt.sibling;else for(Gt=kt.child;Gt!==null;)Dt|=Gt.lanes|Gt.childLanes,Vt|=Gt.subtreeFlags,Vt|=Gt.flags,Gt.return=kt,Gt=Gt.sibling;return kt.subtreeFlags|=Vt,kt.childLanes=Dt,_e}function Fj(kt,_e,Dt){var Vt=_e.pendingProps;switch(wg(_e),_e.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return S$1(_e),null;case 1:return Zf(_e.type)&&$f(),S$1(_e),null;case 3:return Vt=_e.stateNode,Jh(),E$2(Wf),E$2(H$1),Oh(),Vt.pendingContext&&(Vt.context=Vt.pendingContext,Vt.pendingContext=null),(kt===null||kt.child===null)&&(Gg(_e)?_e.flags|=4:kt===null||kt.memoizedState.isDehydrated&&!(_e.flags&256)||(_e.flags|=1024,zg!==null&&(Gj(zg),zg=null))),Bj(kt,_e),S$1(_e),null;case 5:Lh(_e);var Gt=Hh(Gh.current);if(Dt=_e.type,kt!==null&&_e.stateNode!=null)Cj(kt,_e,Dt,Vt,Gt),kt.ref!==_e.ref&&(_e.flags|=512,_e.flags|=2097152);else{if(!Vt){if(_e.stateNode===null)throw Error(p$3(166));return S$1(_e),null}if(kt=Hh(Eh.current),Gg(_e)){Vt=_e.stateNode,Dt=_e.type;var zt=_e.memoizedProps;switch(Vt[Of]=_e,Vt[Pf]=zt,kt=(_e.mode&1)!==0,Dt){case"dialog":D$2("cancel",Vt),D$2("close",Vt);break;case"iframe":case"object":case"embed":D$2("load",Vt);break;case"video":case"audio":for(Gt=0;Gt<lf.length;Gt++)D$2(lf[Gt],Vt);break;case"source":D$2("error",Vt);break;case"img":case"image":case"link":D$2("error",Vt),D$2("load",Vt);break;case"details":D$2("toggle",Vt);break;case"input":Za(Vt,zt),D$2("invalid",Vt);break;case"select":Vt._wrapperState={wasMultiple:!!zt.multiple},D$2("invalid",Vt);break;case"textarea":hb(Vt,zt),D$2("invalid",Vt)}ub(Dt,zt),Gt=null;for(var jt in zt)if(zt.hasOwnProperty(jt)){var Ht=zt[jt];jt==="children"?typeof Ht=="string"?Vt.textContent!==Ht&&(zt.suppressHydrationWarning!==!0&&Af(Vt.textContent,Ht,kt),Gt=["children",Ht]):typeof Ht=="number"&&Vt.textContent!==""+Ht&&(zt.suppressHydrationWarning!==!0&&Af(Vt.textContent,Ht,kt),Gt=["children",""+Ht]):ea.hasOwnProperty(jt)&&Ht!=null&&jt==="onScroll"&&D$2("scroll",Vt)}switch(Dt){case"input":Va(Vt),db(Vt,zt,!0);break;case"textarea":Va(Vt),jb(Vt);break;case"select":case"option":break;default:typeof zt.onClick=="function"&&(Vt.onclick=Bf)}Vt=Gt,_e.updateQueue=Vt,Vt!==null&&(_e.flags|=4)}else{jt=Gt.nodeType===9?Gt:Gt.ownerDocument,kt==="http://www.w3.org/1999/xhtml"&&(kt=kb(Dt)),kt==="http://www.w3.org/1999/xhtml"?Dt==="script"?(kt=jt.createElement("div"),kt.innerHTML="<script><\/script>",kt=kt.removeChild(kt.firstChild)):typeof Vt.is=="string"?kt=jt.createElement(Dt,{is:Vt.is}):(kt=jt.createElement(Dt),Dt==="select"&&(jt=kt,Vt.multiple?jt.multiple=!0:Vt.size&&(jt.size=Vt.size))):kt=jt.createElementNS(kt,Dt),kt[Of]=_e,kt[Pf]=Vt,Aj(kt,_e,!1,!1),_e.stateNode=kt;e:{switch(jt=vb(Dt,Vt),Dt){case"dialog":D$2("cancel",kt),D$2("close",kt),Gt=Vt;break;case"iframe":case"object":case"embed":D$2("load",kt),Gt=Vt;break;case"video":case"audio":for(Gt=0;Gt<lf.length;Gt++)D$2(lf[Gt],kt);Gt=Vt;break;case"source":D$2("error",kt),Gt=Vt;break;case"img":case"image":case"link":D$2("error",kt),D$2("load",kt),Gt=Vt;break;case"details":D$2("toggle",kt),Gt=Vt;break;case"input":Za(kt,Vt),Gt=Ya(kt,Vt),D$2("invalid",kt);break;case"option":Gt=Vt;break;case"select":kt._wrapperState={wasMultiple:!!Vt.multiple},Gt=A({},Vt,{value:void 0}),D$2("invalid",kt);break;case"textarea":hb(kt,Vt),Gt=gb(kt,Vt),D$2("invalid",kt);break;default:Gt=Vt}ub(Dt,Gt),Ht=Gt;for(zt in Ht)if(Ht.hasOwnProperty(zt)){var Wt=Ht[zt];zt==="style"?sb(kt,Wt):zt==="dangerouslySetInnerHTML"?(Wt=Wt?Wt.__html:void 0,Wt!=null&&nb(kt,Wt)):zt==="children"?typeof Wt=="string"?(Dt!=="textarea"||Wt!=="")&&ob(kt,Wt):typeof Wt=="number"&&ob(kt,""+Wt):zt!=="suppressContentEditableWarning"&&zt!=="suppressHydrationWarning"&&zt!=="autoFocus"&&(ea.hasOwnProperty(zt)?Wt!=null&&zt==="onScroll"&&D$2("scroll",kt):Wt!=null&&ta(kt,zt,Wt,jt))}switch(Dt){case"input":Va(kt),db(kt,Vt,!1);break;case"textarea":Va(kt),jb(kt);break;case"option":Vt.value!=null&&kt.setAttribute("value",""+Sa(Vt.value));break;case"select":kt.multiple=!!Vt.multiple,zt=Vt.value,zt!=null?fb(kt,!!Vt.multiple,zt,!1):Vt.defaultValue!=null&&fb(kt,!!Vt.multiple,Vt.defaultValue,!0);break;default:typeof Gt.onClick=="function"&&(kt.onclick=Bf)}switch(Dt){case"button":case"input":case"select":case"textarea":Vt=!!Vt.autoFocus;break e;case"img":Vt=!0;break e;default:Vt=!1}}Vt&&(_e.flags|=4)}_e.ref!==null&&(_e.flags|=512,_e.flags|=2097152)}return S$1(_e),null;case 6:if(kt&&_e.stateNode!=null)Dj(kt,_e,kt.memoizedProps,Vt);else{if(typeof Vt!="string"&&_e.stateNode===null)throw Error(p$3(166));if(Dt=Hh(Gh.current),Hh(Eh.current),Gg(_e)){if(Vt=_e.stateNode,Dt=_e.memoizedProps,Vt[Of]=_e,(zt=Vt.nodeValue!==Dt)&&(kt=xg,kt!==null))switch(kt.tag){case 3:Af(Vt.nodeValue,Dt,(kt.mode&1)!==0);break;case 5:kt.memoizedProps.suppressHydrationWarning!==!0&&Af(Vt.nodeValue,Dt,(kt.mode&1)!==0)}zt&&(_e.flags|=4)}else Vt=(Dt.nodeType===9?Dt:Dt.ownerDocument).createTextNode(Vt),Vt[Of]=_e,_e.stateNode=Vt}return S$1(_e),null;case 13:if(E$2(M$1),Vt=_e.memoizedState,kt===null||kt.memoizedState!==null&&kt.memoizedState.dehydrated!==null){if(I$1&&yg!==null&&_e.mode&1&&!(_e.flags&128))Hg(),Ig(),_e.flags|=98560,zt=!1;else if(zt=Gg(_e),Vt!==null&&Vt.dehydrated!==null){if(kt===null){if(!zt)throw Error(p$3(318));if(zt=_e.memoizedState,zt=zt!==null?zt.dehydrated:null,!zt)throw Error(p$3(317));zt[Of]=_e}else Ig(),!(_e.flags&128)&&(_e.memoizedState=null),_e.flags|=4;S$1(_e),zt=!1}else zg!==null&&(Gj(zg),zg=null),zt=!0;if(!zt)return _e.flags&65536?_e:null}return _e.flags&128?(_e.lanes=Dt,_e):(Vt=Vt!==null,Vt!==(kt!==null&&kt.memoizedState!==null)&&Vt&&(_e.child.flags|=8192,_e.mode&1&&(kt===null||M$1.current&1?T===0&&(T=3):uj())),_e.updateQueue!==null&&(_e.flags|=4),S$1(_e),null);case 4:return Jh(),Bj(kt,_e),kt===null&&sf(_e.stateNode.containerInfo),S$1(_e),null;case 10:return Rg(_e.type._context),S$1(_e),null;case 17:return Zf(_e.type)&&$f(),S$1(_e),null;case 19:if(E$2(M$1),zt=_e.memoizedState,zt===null)return S$1(_e),null;if(Vt=(_e.flags&128)!==0,jt=zt.rendering,jt===null)if(Vt)Ej(zt,!1);else{if(T!==0||kt!==null&&kt.flags&128)for(kt=_e.child;kt!==null;){if(jt=Mh(kt),jt!==null){for(_e.flags|=128,Ej(zt,!1),Vt=jt.updateQueue,Vt!==null&&(_e.updateQueue=Vt,_e.flags|=4),_e.subtreeFlags=0,Vt=Dt,Dt=_e.child;Dt!==null;)zt=Dt,kt=Vt,zt.flags&=14680066,jt=zt.alternate,jt===null?(zt.childLanes=0,zt.lanes=kt,zt.child=null,zt.subtreeFlags=0,zt.memoizedProps=null,zt.memoizedState=null,zt.updateQueue=null,zt.dependencies=null,zt.stateNode=null):(zt.childLanes=jt.childLanes,zt.lanes=jt.lanes,zt.child=jt.child,zt.subtreeFlags=0,zt.deletions=null,zt.memoizedProps=jt.memoizedProps,zt.memoizedState=jt.memoizedState,zt.updateQueue=jt.updateQueue,zt.type=jt.type,kt=jt.dependencies,zt.dependencies=kt===null?null:{lanes:kt.lanes,firstContext:kt.firstContext}),Dt=Dt.sibling;return G$1(M$1,M$1.current&1|2),_e.child}kt=kt.sibling}zt.tail!==null&&B$2()>Hj&&(_e.flags|=128,Vt=!0,Ej(zt,!1),_e.lanes=4194304)}else{if(!Vt)if(kt=Mh(jt),kt!==null){if(_e.flags|=128,Vt=!0,Dt=kt.updateQueue,Dt!==null&&(_e.updateQueue=Dt,_e.flags|=4),Ej(zt,!0),zt.tail===null&&zt.tailMode==="hidden"&&!jt.alternate&&!I$1)return S$1(_e),null}else 2*B$2()-zt.renderingStartTime>Hj&&Dt!==1073741824&&(_e.flags|=128,Vt=!0,Ej(zt,!1),_e.lanes=4194304);zt.isBackwards?(jt.sibling=_e.child,_e.child=jt):(Dt=zt.last,Dt!==null?Dt.sibling=jt:_e.child=jt,zt.last=jt)}return zt.tail!==null?(_e=zt.tail,zt.rendering=_e,zt.tail=_e.sibling,zt.renderingStartTime=B$2(),_e.sibling=null,Dt=M$1.current,G$1(M$1,Vt?Dt&1|2:Dt&1),_e):(S$1(_e),null);case 22:case 23:return Ij(),Vt=_e.memoizedState!==null,kt!==null&&kt.memoizedState!==null!==Vt&&(_e.flags|=8192),Vt&&_e.mode&1?gj&1073741824&&(S$1(_e),_e.subtreeFlags&6&&(_e.flags|=8192)):S$1(_e),null;case 24:return null;case 25:return null}throw Error(p$3(156,_e.tag))}function Jj(kt,_e){switch(wg(_e),_e.tag){case 1:return Zf(_e.type)&&$f(),kt=_e.flags,kt&65536?(_e.flags=kt&-65537|128,_e):null;case 3:return Jh(),E$2(Wf),E$2(H$1),Oh(),kt=_e.flags,kt&65536&&!(kt&128)?(_e.flags=kt&-65537|128,_e):null;case 5:return Lh(_e),null;case 13:if(E$2(M$1),kt=_e.memoizedState,kt!==null&&kt.dehydrated!==null){if(_e.alternate===null)throw Error(p$3(340));Ig()}return kt=_e.flags,kt&65536?(_e.flags=kt&-65537|128,_e):null;case 19:return E$2(M$1),null;case 4:return Jh(),null;case 10:return Rg(_e.type._context),null;case 22:case 23:return Ij(),null;case 24:return null;default:return null}}var Kj=!1,U$1=!1,Lj=typeof WeakSet=="function"?WeakSet:Set,V$2=null;function Mj(kt,_e){var Dt=kt.ref;if(Dt!==null)if(typeof Dt=="function")try{Dt(null)}catch(Vt){W$2(kt,_e,Vt)}else Dt.current=null}function Nj(kt,_e,Dt){try{Dt()}catch(Vt){W$2(kt,_e,Vt)}}var Oj=!1;function Pj(kt,_e){if(Cf=dd,kt=Me$1(),Ne$1(kt)){if("selectionStart"in kt)var Dt={start:kt.selectionStart,end:kt.selectionEnd};else e:{Dt=(Dt=kt.ownerDocument)&&Dt.defaultView||window;var Vt=Dt.getSelection&&Dt.getSelection();if(Vt&&Vt.rangeCount!==0){Dt=Vt.anchorNode;var Gt=Vt.anchorOffset,zt=Vt.focusNode;Vt=Vt.focusOffset;try{Dt.nodeType,zt.nodeType}catch{Dt=null;break e}var jt=0,Ht=-1,Wt=-1,qt=0,Xt=0,Kt=kt,Yt=null;t:for(;;){for(var Zt;Kt!==Dt||Gt!==0&&Kt.nodeType!==3||(Ht=jt+Gt),Kt!==zt||Vt!==0&&Kt.nodeType!==3||(Wt=jt+Vt),Kt.nodeType===3&&(jt+=Kt.nodeValue.length),(Zt=Kt.firstChild)!==null;)Yt=Kt,Kt=Zt;for(;;){if(Kt===kt)break t;if(Yt===Dt&&++qt===Gt&&(Ht=jt),Yt===zt&&++Xt===Vt&&(Wt=jt),(Zt=Kt.nextSibling)!==null)break;Kt=Yt,Yt=Kt.parentNode}Kt=Zt}Dt=Ht===-1||Wt===-1?null:{start:Ht,end:Wt}}else Dt=null}Dt=Dt||{start:0,end:0}}else Dt=null;for(Df={focusedElem:kt,selectionRange:Dt},dd=!1,V$2=_e;V$2!==null;)if(_e=V$2,kt=_e.child,(_e.subtreeFlags&1028)!==0&&kt!==null)kt.return=_e,V$2=kt;else for(;V$2!==null;){_e=V$2;try{var Jt=_e.alternate;if(_e.flags&1024)switch(_e.tag){case 0:case 11:case 15:break;case 1:if(Jt!==null){var nn=Jt.memoizedProps,rn=Jt.memoizedState,Qt=_e.stateNode,en=Qt.getSnapshotBeforeUpdate(_e.elementType===_e.type?nn:Lg(_e.type,nn),rn);Qt.__reactInternalSnapshotBeforeUpdate=en}break;case 3:var tn=_e.stateNode.containerInfo;tn.nodeType===1?tn.textContent="":tn.nodeType===9&&tn.documentElement&&tn.removeChild(tn.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(p$3(163))}}catch(sn){W$2(_e,_e.return,sn)}if(kt=_e.sibling,kt!==null){kt.return=_e.return,V$2=kt;break}V$2=_e.return}return Jt=Oj,Oj=!1,Jt}function Qj(kt,_e,Dt){var Vt=_e.updateQueue;if(Vt=Vt!==null?Vt.lastEffect:null,Vt!==null){var Gt=Vt=Vt.next;do{if((Gt.tag&kt)===kt){var zt=Gt.destroy;Gt.destroy=void 0,zt!==void 0&&Nj(_e,Dt,zt)}Gt=Gt.next}while(Gt!==Vt)}}function Rj(kt,_e){if(_e=_e.updateQueue,_e=_e!==null?_e.lastEffect:null,_e!==null){var Dt=_e=_e.next;do{if((Dt.tag&kt)===kt){var Vt=Dt.create;Dt.destroy=Vt()}Dt=Dt.next}while(Dt!==_e)}}function Sj(kt){var _e=kt.ref;if(_e!==null){var Dt=kt.stateNode;switch(kt.tag){case 5:kt=Dt;break;default:kt=Dt}typeof _e=="function"?_e(kt):_e.current=kt}}function Tj(kt){var _e=kt.alternate;_e!==null&&(kt.alternate=null,Tj(_e)),kt.child=null,kt.deletions=null,kt.sibling=null,kt.tag===5&&(_e=kt.stateNode,_e!==null&&(delete _e[Of],delete _e[Pf],delete _e[of],delete _e[Qf],delete _e[Rf])),kt.stateNode=null,kt.return=null,kt.dependencies=null,kt.memoizedProps=null,kt.memoizedState=null,kt.pendingProps=null,kt.stateNode=null,kt.updateQueue=null}function Uj(kt){return kt.tag===5||kt.tag===3||kt.tag===4}function Vj(kt){e:for(;;){for(;kt.sibling===null;){if(kt.return===null||Uj(kt.return))return null;kt=kt.return}for(kt.sibling.return=kt.return,kt=kt.sibling;kt.tag!==5&&kt.tag!==6&&kt.tag!==18;){if(kt.flags&2||kt.child===null||kt.tag===4)continue e;kt.child.return=kt,kt=kt.child}if(!(kt.flags&2))return kt.stateNode}}function Wj(kt,_e,Dt){var Vt=kt.tag;if(Vt===5||Vt===6)kt=kt.stateNode,_e?Dt.nodeType===8?Dt.parentNode.insertBefore(kt,_e):Dt.insertBefore(kt,_e):(Dt.nodeType===8?(_e=Dt.parentNode,_e.insertBefore(kt,Dt)):(_e=Dt,_e.appendChild(kt)),Dt=Dt._reactRootContainer,Dt!=null||_e.onclick!==null||(_e.onclick=Bf));else if(Vt!==4&&(kt=kt.child,kt!==null))for(Wj(kt,_e,Dt),kt=kt.sibling;kt!==null;)Wj(kt,_e,Dt),kt=kt.sibling}function Xj(kt,_e,Dt){var Vt=kt.tag;if(Vt===5||Vt===6)kt=kt.stateNode,_e?Dt.insertBefore(kt,_e):Dt.appendChild(kt);else if(Vt!==4&&(kt=kt.child,kt!==null))for(Xj(kt,_e,Dt),kt=kt.sibling;kt!==null;)Xj(kt,_e,Dt),kt=kt.sibling}var X$2=null,Yj=!1;function Zj(kt,_e,Dt){for(Dt=Dt.child;Dt!==null;)ak(kt,_e,Dt),Dt=Dt.sibling}function ak(kt,_e,Dt){if(lc$1&&typeof lc$1.onCommitFiberUnmount=="function")try{lc$1.onCommitFiberUnmount(kc,Dt)}catch{}switch(Dt.tag){case 5:U$1||Mj(Dt,_e);case 6:var Vt=X$2,Gt=Yj;X$2=null,Zj(kt,_e,Dt),X$2=Vt,Yj=Gt,X$2!==null&&(Yj?(kt=X$2,Dt=Dt.stateNode,kt.nodeType===8?kt.parentNode.removeChild(Dt):kt.removeChild(Dt)):X$2.removeChild(Dt.stateNode));break;case 18:X$2!==null&&(Yj?(kt=X$2,Dt=Dt.stateNode,kt.nodeType===8?Kf(kt.parentNode,Dt):kt.nodeType===1&&Kf(kt,Dt),bd(kt)):Kf(X$2,Dt.stateNode));break;case 4:Vt=X$2,Gt=Yj,X$2=Dt.stateNode.containerInfo,Yj=!0,Zj(kt,_e,Dt),X$2=Vt,Yj=Gt;break;case 0:case 11:case 14:case 15:if(!U$1&&(Vt=Dt.updateQueue,Vt!==null&&(Vt=Vt.lastEffect,Vt!==null))){Gt=Vt=Vt.next;do{var zt=Gt,jt=zt.destroy;zt=zt.tag,jt!==void 0&&(zt&2||zt&4)&&Nj(Dt,_e,jt),Gt=Gt.next}while(Gt!==Vt)}Zj(kt,_e,Dt);break;case 1:if(!U$1&&(Mj(Dt,_e),Vt=Dt.stateNode,typeof Vt.componentWillUnmount=="function"))try{Vt.props=Dt.memoizedProps,Vt.state=Dt.memoizedState,Vt.componentWillUnmount()}catch(Ht){W$2(Dt,_e,Ht)}Zj(kt,_e,Dt);break;case 21:Zj(kt,_e,Dt);break;case 22:Dt.mode&1?(U$1=(Vt=U$1)||Dt.memoizedState!==null,Zj(kt,_e,Dt),U$1=Vt):Zj(kt,_e,Dt);break;default:Zj(kt,_e,Dt)}}function bk(kt){var _e=kt.updateQueue;if(_e!==null){kt.updateQueue=null;var Dt=kt.stateNode;Dt===null&&(Dt=kt.stateNode=new Lj),_e.forEach(function(Vt){var Gt=ck.bind(null,kt,Vt);Dt.has(Vt)||(Dt.add(Vt),Vt.then(Gt,Gt))})}}function dk(kt,_e){var Dt=_e.deletions;if(Dt!==null)for(var Vt=0;Vt<Dt.length;Vt++){var Gt=Dt[Vt];try{var zt=kt,jt=_e,Ht=jt;e:for(;Ht!==null;){switch(Ht.tag){case 5:X$2=Ht.stateNode,Yj=!1;break e;case 3:X$2=Ht.stateNode.containerInfo,Yj=!0;break e;case 4:X$2=Ht.stateNode.containerInfo,Yj=!0;break e}Ht=Ht.return}if(X$2===null)throw Error(p$3(160));ak(zt,jt,Gt),X$2=null,Yj=!1;var Wt=Gt.alternate;Wt!==null&&(Wt.return=null),Gt.return=null}catch(qt){W$2(Gt,_e,qt)}}if(_e.subtreeFlags&12854)for(_e=_e.child;_e!==null;)ek(_e,kt),_e=_e.sibling}function ek(kt,_e){var Dt=kt.alternate,Vt=kt.flags;switch(kt.tag){case 0:case 11:case 14:case 15:if(dk(_e,kt),fk(kt),Vt&4){try{Qj(3,kt,kt.return),Rj(3,kt)}catch(nn){W$2(kt,kt.return,nn)}try{Qj(5,kt,kt.return)}catch(nn){W$2(kt,kt.return,nn)}}break;case 1:dk(_e,kt),fk(kt),Vt&512&&Dt!==null&&Mj(Dt,Dt.return);break;case 5:if(dk(_e,kt),fk(kt),Vt&512&&Dt!==null&&Mj(Dt,Dt.return),kt.flags&32){var Gt=kt.stateNode;try{ob(Gt,"")}catch(nn){W$2(kt,kt.return,nn)}}if(Vt&4&&(Gt=kt.stateNode,Gt!=null)){var zt=kt.memoizedProps,jt=Dt!==null?Dt.memoizedProps:zt,Ht=kt.type,Wt=kt.updateQueue;if(kt.updateQueue=null,Wt!==null)try{Ht==="input"&&zt.type==="radio"&&zt.name!=null&&ab(Gt,zt),vb(Ht,jt);var qt=vb(Ht,zt);for(jt=0;jt<Wt.length;jt+=2){var Xt=Wt[jt],Kt=Wt[jt+1];Xt==="style"?sb(Gt,Kt):Xt==="dangerouslySetInnerHTML"?nb(Gt,Kt):Xt==="children"?ob(Gt,Kt):ta(Gt,Xt,Kt,qt)}switch(Ht){case"input":bb(Gt,zt);break;case"textarea":ib(Gt,zt);break;case"select":var Yt=Gt._wrapperState.wasMultiple;Gt._wrapperState.wasMultiple=!!zt.multiple;var Zt=zt.value;Zt!=null?fb(Gt,!!zt.multiple,Zt,!1):Yt!==!!zt.multiple&&(zt.defaultValue!=null?fb(Gt,!!zt.multiple,zt.defaultValue,!0):fb(Gt,!!zt.multiple,zt.multiple?[]:"",!1))}Gt[Pf]=zt}catch(nn){W$2(kt,kt.return,nn)}}break;case 6:if(dk(_e,kt),fk(kt),Vt&4){if(kt.stateNode===null)throw Error(p$3(162));Gt=kt.stateNode,zt=kt.memoizedProps;try{Gt.nodeValue=zt}catch(nn){W$2(kt,kt.return,nn)}}break;case 3:if(dk(_e,kt),fk(kt),Vt&4&&Dt!==null&&Dt.memoizedState.isDehydrated)try{bd(_e.containerInfo)}catch(nn){W$2(kt,kt.return,nn)}break;case 4:dk(_e,kt),fk(kt);break;case 13:dk(_e,kt),fk(kt),Gt=kt.child,Gt.flags&8192&&(zt=Gt.memoizedState!==null,Gt.stateNode.isHidden=zt,!zt||Gt.alternate!==null&&Gt.alternate.memoizedState!==null||(gk=B$2())),Vt&4&&bk(kt);break;case 22:if(Xt=Dt!==null&&Dt.memoizedState!==null,kt.mode&1?(U$1=(qt=U$1)||Xt,dk(_e,kt),U$1=qt):dk(_e,kt),fk(kt),Vt&8192){if(qt=kt.memoizedState!==null,(kt.stateNode.isHidden=qt)&&!Xt&&kt.mode&1)for(V$2=kt,Xt=kt.child;Xt!==null;){for(Kt=V$2=Xt;V$2!==null;){switch(Yt=V$2,Zt=Yt.child,Yt.tag){case 0:case 11:case 14:case 15:Qj(4,Yt,Yt.return);break;case 1:Mj(Yt,Yt.return);var Jt=Yt.stateNode;if(typeof Jt.componentWillUnmount=="function"){Vt=Yt,Dt=Yt.return;try{_e=Vt,Jt.props=_e.memoizedProps,Jt.state=_e.memoizedState,Jt.componentWillUnmount()}catch(nn){W$2(Vt,Dt,nn)}}break;case 5:Mj(Yt,Yt.return);break;case 22:if(Yt.memoizedState!==null){hk(Kt);continue}}Zt!==null?(Zt.return=Yt,V$2=Zt):hk(Kt)}Xt=Xt.sibling}e:for(Xt=null,Kt=kt;;){if(Kt.tag===5){if(Xt===null){Xt=Kt;try{Gt=Kt.stateNode,qt?(zt=Gt.style,typeof zt.setProperty=="function"?zt.setProperty("display","none","important"):zt.display="none"):(Ht=Kt.stateNode,Wt=Kt.memoizedProps.style,jt=Wt!=null&&Wt.hasOwnProperty("display")?Wt.display:null,Ht.style.display=rb("display",jt))}catch(nn){W$2(kt,kt.return,nn)}}}else if(Kt.tag===6){if(Xt===null)try{Kt.stateNode.nodeValue=qt?"":Kt.memoizedProps}catch(nn){W$2(kt,kt.return,nn)}}else if((Kt.tag!==22&&Kt.tag!==23||Kt.memoizedState===null||Kt===kt)&&Kt.child!==null){Kt.child.return=Kt,Kt=Kt.child;continue}if(Kt===kt)break e;for(;Kt.sibling===null;){if(Kt.return===null||Kt.return===kt)break e;Xt===Kt&&(Xt=null),Kt=Kt.return}Xt===Kt&&(Xt=null),Kt.sibling.return=Kt.return,Kt=Kt.sibling}}break;case 19:dk(_e,kt),fk(kt),Vt&4&&bk(kt);break;case 21:break;default:dk(_e,kt),fk(kt)}}function fk(kt){var _e=kt.flags;if(_e&2){try{e:{for(var Dt=kt.return;Dt!==null;){if(Uj(Dt)){var Vt=Dt;break e}Dt=Dt.return}throw Error(p$3(160))}switch(Vt.tag){case 5:var Gt=Vt.stateNode;Vt.flags&32&&(ob(Gt,""),Vt.flags&=-33);var zt=Vj(kt);Xj(kt,zt,Gt);break;case 3:case 4:var jt=Vt.stateNode.containerInfo,Ht=Vj(kt);Wj(kt,Ht,jt);break;default:throw Error(p$3(161))}}catch(Wt){W$2(kt,kt.return,Wt)}kt.flags&=-3}_e&4096&&(kt.flags&=-4097)}function ik(kt,_e,Dt){V$2=kt,jk(kt)}function jk(kt,_e,Dt){for(var Vt=(kt.mode&1)!==0;V$2!==null;){var Gt=V$2,zt=Gt.child;if(Gt.tag===22&&Vt){var jt=Gt.memoizedState!==null||Kj;if(!jt){var Ht=Gt.alternate,Wt=Ht!==null&&Ht.memoizedState!==null||U$1;Ht=Kj;var qt=U$1;if(Kj=jt,(U$1=Wt)&&!qt)for(V$2=Gt;V$2!==null;)jt=V$2,Wt=jt.child,jt.tag===22&&jt.memoizedState!==null?kk(Gt):Wt!==null?(Wt.return=jt,V$2=Wt):kk(Gt);for(;zt!==null;)V$2=zt,jk(zt),zt=zt.sibling;V$2=Gt,Kj=Ht,U$1=qt}lk(kt)}else Gt.subtreeFlags&8772&&zt!==null?(zt.return=Gt,V$2=zt):lk(kt)}}function lk(kt){for(;V$2!==null;){var _e=V$2;if(_e.flags&8772){var Dt=_e.alternate;try{if(_e.flags&8772)switch(_e.tag){case 0:case 11:case 15:U$1||Rj(5,_e);break;case 1:var Vt=_e.stateNode;if(_e.flags&4&&!U$1)if(Dt===null)Vt.componentDidMount();else{var Gt=_e.elementType===_e.type?Dt.memoizedProps:Lg(_e.type,Dt.memoizedProps);Vt.componentDidUpdate(Gt,Dt.memoizedState,Vt.__reactInternalSnapshotBeforeUpdate)}var zt=_e.updateQueue;zt!==null&&ih(_e,zt,Vt);break;case 3:var jt=_e.updateQueue;if(jt!==null){if(Dt=null,_e.child!==null)switch(_e.child.tag){case 5:Dt=_e.child.stateNode;break;case 1:Dt=_e.child.stateNode}ih(_e,jt,Dt)}break;case 5:var Ht=_e.stateNode;if(Dt===null&&_e.flags&4){Dt=Ht;var Wt=_e.memoizedProps;switch(_e.type){case"button":case"input":case"select":case"textarea":Wt.autoFocus&&Dt.focus();break;case"img":Wt.src&&(Dt.src=Wt.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(_e.memoizedState===null){var qt=_e.alternate;if(qt!==null){var Xt=qt.memoizedState;if(Xt!==null){var Kt=Xt.dehydrated;Kt!==null&&bd(Kt)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(p$3(163))}U$1||_e.flags&512&&Sj(_e)}catch(Yt){W$2(_e,_e.return,Yt)}}if(_e===kt){V$2=null;break}if(Dt=_e.sibling,Dt!==null){Dt.return=_e.return,V$2=Dt;break}V$2=_e.return}}function hk(kt){for(;V$2!==null;){var _e=V$2;if(_e===kt){V$2=null;break}var Dt=_e.sibling;if(Dt!==null){Dt.return=_e.return,V$2=Dt;break}V$2=_e.return}}function kk(kt){for(;V$2!==null;){var _e=V$2;try{switch(_e.tag){case 0:case 11:case 15:var Dt=_e.return;try{Rj(4,_e)}catch(Wt){W$2(_e,Dt,Wt)}break;case 1:var Vt=_e.stateNode;if(typeof Vt.componentDidMount=="function"){var Gt=_e.return;try{Vt.componentDidMount()}catch(Wt){W$2(_e,Gt,Wt)}}var zt=_e.return;try{Sj(_e)}catch(Wt){W$2(_e,zt,Wt)}break;case 5:var jt=_e.return;try{Sj(_e)}catch(Wt){W$2(_e,jt,Wt)}}}catch(Wt){W$2(_e,_e.return,Wt)}if(_e===kt){V$2=null;break}var Ht=_e.sibling;if(Ht!==null){Ht.return=_e.return,V$2=Ht;break}V$2=_e.return}}var mk=Math.ceil,nk=ua.ReactCurrentDispatcher,ok=ua.ReactCurrentOwner,pk=ua.ReactCurrentBatchConfig,K$1=0,R$1=null,Y$1=null,Z$2=0,gj=0,fj=Uf(0),T=0,qk=null,hh=0,rk=0,sk=0,tk=null,uk=null,gk=0,Hj=1/0,vk=null,Pi=!1,Qi=null,Si=null,wk=!1,xk=null,yk=0,zk=0,Ak=null,Bk=-1,Ck=0;function L$1(){return K$1&6?B$2():Bk!==-1?Bk:Bk=B$2()}function lh(kt){return kt.mode&1?K$1&2&&Z$2!==0?Z$2&-Z$2:Kg.transition!==null?(Ck===0&&(Ck=yc()),Ck):(kt=C$1,kt!==0||(kt=window.event,kt=kt===void 0?16:jd(kt.type)),kt):1}function mh(kt,_e,Dt,Vt){if(50<zk)throw zk=0,Ak=null,Error(p$3(185));Ac(kt,Dt,Vt),(!(K$1&2)||kt!==R$1)&&(kt===R$1&&(!(K$1&2)&&(rk|=Dt),T===4&&Dk(kt,Z$2)),Ek(kt,Vt),Dt===1&&K$1===0&&!(_e.mode&1)&&(Hj=B$2()+500,fg&&jg()))}function Ek(kt,_e){var Dt=kt.callbackNode;wc(kt,_e);var Vt=uc(kt,kt===R$1?Z$2:0);if(Vt===0)Dt!==null&&bc(Dt),kt.callbackNode=null,kt.callbackPriority=0;else if(_e=Vt&-Vt,kt.callbackPriority!==_e){if(Dt!=null&&bc(Dt),_e===1)kt.tag===0?ig(Fk.bind(null,kt)):hg(Fk.bind(null,kt)),Jf(function(){!(K$1&6)&&jg()}),Dt=null;else{switch(Dc(Vt)){case 1:Dt=fc;break;case 4:Dt=gc;break;case 16:Dt=hc;break;case 536870912:Dt=jc;break;default:Dt=hc}Dt=Gk(Dt,Hk.bind(null,kt))}kt.callbackPriority=_e,kt.callbackNode=Dt}}function Hk(kt,_e){if(Bk=-1,Ck=0,K$1&6)throw Error(p$3(327));var Dt=kt.callbackNode;if(Ik()&&kt.callbackNode!==Dt)return null;var Vt=uc(kt,kt===R$1?Z$2:0);if(Vt===0)return null;if(Vt&30||Vt&kt.expiredLanes||_e)_e=Jk(kt,Vt);else{_e=Vt;var Gt=K$1;K$1|=2;var zt=Kk();(R$1!==kt||Z$2!==_e)&&(vk=null,Hj=B$2()+500,Lk(kt,_e));do try{Mk();break}catch(Ht){Nk(kt,Ht)}while(1);Qg(),nk.current=zt,K$1=Gt,Y$1!==null?_e=0:(R$1=null,Z$2=0,_e=T)}if(_e!==0){if(_e===2&&(Gt=xc(kt),Gt!==0&&(Vt=Gt,_e=Ok(kt,Gt))),_e===1)throw Dt=qk,Lk(kt,0),Dk(kt,Vt),Ek(kt,B$2()),Dt;if(_e===6)Dk(kt,Vt);else{if(Gt=kt.current.alternate,!(Vt&30)&&!Pk(Gt)&&(_e=Jk(kt,Vt),_e===2&&(zt=xc(kt),zt!==0&&(Vt=zt,_e=Ok(kt,zt))),_e===1))throw Dt=qk,Lk(kt,0),Dk(kt,Vt),Ek(kt,B$2()),Dt;switch(kt.finishedWork=Gt,kt.finishedLanes=Vt,_e){case 0:case 1:throw Error(p$3(345));case 2:Qk(kt,uk,vk);break;case 3:if(Dk(kt,Vt),(Vt&130023424)===Vt&&(_e=gk+500-B$2(),10<_e)){if(uc(kt,0)!==0)break;if(Gt=kt.suspendedLanes,(Gt&Vt)!==Vt){L$1(),kt.pingedLanes|=kt.suspendedLanes≫break}kt.timeoutHandle=Ff(Qk.bind(null,kt,uk,vk),_e);break}Qk(kt,uk,vk);break;case 4:if(Dk(kt,Vt),(Vt&4194240)===Vt)break;for(_e=kt.eventTimes,Gt=-1;0<Vt;){var jt=31-oc(Vt);zt=1<<jt,jt=_e[jt],jt>Gt&&(Gt=jt),Vt&=~zt}if(Vt=Gt,Vt=B$2()-Vt,Vt=(120>Vt?120:480>Vt?480:1080>Vt?1080:1920>Vt?1920:3e3>Vt?3e3:4320>Vt?4320:1960*mk(Vt/1960))-Vt,10<Vt){kt.timeoutHandle=Ff(Qk.bind(null,kt,uk,vk),Vt);break}Qk(kt,uk,vk);break;case 5:Qk(kt,uk,vk);break;default:throw Error(p$3(329))}}}return Ek(kt,B$2()),kt.callbackNode===Dt?Hk.bind(null,kt):null}function Ok(kt,_e){var Dt=tk;return kt.current.memoizedState.isDehydrated&&(Lk(kt,_e).flags|=256),kt=Jk(kt,_e),kt!==2&&(_e=uk,uk=Dt,_e!==null&&Gj(_e)),kt}function Gj(kt){uk===null?uk=kt:uk.push.apply(uk,kt)}function Pk(kt){for(var _e=kt;;){if(_e.flags&16384){var Dt=_e.updateQueue;if(Dt!==null&&(Dt=Dt.stores,Dt!==null))for(var Vt=0;Vt<Dt.length;Vt++){var Gt=Dt[Vt],zt=Gt.getSnapshot;Gt=Gt.value;try{if(!He(zt(),Gt))return!1}catch{return!1}}}if(Dt=_e.child,_e.subtreeFlags&16384&&Dt!==null)Dt.return=_e,_e=Dt;else{if(_e===kt)break;for(;_e.sibling===null;){if(_e.return===null||_e.return===kt)return!0;_e=_e.return}_e.sibling.return=_e.return,_e=_e.sibling}}return!0}function Dk(kt,_e){for(_e&=~sk,_e&=~rk,kt.suspendedLanes|=_e,kt.pingedLanes&=~_e,kt=kt.expirationTimes;0<_e;){var Dt=31-oc(_e),Vt=1<<Dt;kt[Dt]=-1,_e&=~Vt}}function Fk(kt){if(K$1&6)throw Error(p$3(327));Ik();var _e=uc(kt,0);if(!(_e&1))return Ek(kt,B$2()),null;var Dt=Jk(kt,_e);if(kt.tag!==0&&Dt===2){var Vt=xc(kt);Vt!==0&&(_e=Vt,Dt=Ok(kt,Vt))}if(Dt===1)throw Dt=qk,Lk(kt,0),Dk(kt,_e),Ek(kt,B$2()),Dt;if(Dt===6)throw Error(p$3(345));return kt.finishedWork=kt.current.alternate,kt.finishedLanes=_e,Qk(kt,uk,vk),Ek(kt,B$2()),null}function Rk(kt,_e){var Dt=K$1;K$1|=1;try{return kt(_e)}finally{K$1=Dt,K$1===0&&(Hj=B$2()+500,fg&&jg())}}function Sk(kt){xk!==null&&xk.tag===0&&!(K$1&6)&&Ik();var _e=K$1;K$1|=1;var Dt=pk.transition,Vt=C$1;try{if(pk.transition=null,C$1=1,kt)return kt()}finally{C$1=Vt,pk.transition=Dt,K$1=_e,!(K$1&6)&&jg()}}function Ij(){gj=fj.current,E$2(fj)}function Lk(kt,_e){kt.finishedWork=null,kt.finishedLanes=0;var Dt=kt.timeoutHandle;if(Dt!==-1&&(kt.timeoutHandle=-1,Gf(Dt)),Y$1!==null)for(Dt=Y$1.return;Dt!==null;){var Vt=Dt;switch(wg(Vt),Vt.tag){case 1:Vt=Vt.type.childContextTypes,Vt!=null&&$f();break;case 3:Jh(),E$2(Wf),E$2(H$1),Oh();break;case 5:Lh(Vt);break;case 4:Jh();break;case 13:E$2(M$1);break;case 19:E$2(M$1);break;case 10:Rg(Vt.type._context);break;case 22:case 23:Ij()}Dt=Dt.return}if(R$1=kt,Y$1=kt=wh(kt.current,null),Z$2=gj=_e,T=0,qk=null,sk=rk=hh=0,uk=tk=null,Wg!==null){for(_e=0;_e<Wg.length;_e++)if(Dt=Wg[_e],Vt=Dt.interleaved,Vt!==null){Dt.interleaved=null;var Gt=Vt.next,zt=Dt.pending;if(zt!==null){var jt=zt.next;zt.next=Gt,Vt.next=jt}Dt.pending=Vt}Wg=null}return kt}function Nk(kt,_e){do{var Dt=Y$1;try{if(Qg(),Ph.current=ai,Sh){for(var Vt=N$1.memoizedState;Vt!==null;){var Gt=Vt.queue;Gt!==null&&(Gt.pending=null),Vt=Vt.next}Sh=!1}if(Rh=0,P$1=O$1=N$1=null,Th=!1,Uh=0,ok.current=null,Dt===null||Dt.return===null){T=1,qk=_e,Y$1=null;break}e:{var zt=kt,jt=Dt.return,Ht=Dt,Wt=_e;if(_e=Z$2,Ht.flags|=32768,Wt!==null&&typeof Wt=="object"&&typeof Wt.then=="function"){var qt=Wt,Xt=Ht,Kt=Xt.tag;if(!(Xt.mode&1)&&(Kt===0||Kt===11||Kt===15)){var Yt=Xt.alternate;Yt?(Xt.updateQueue=Yt.updateQueue,Xt.memoizedState=Yt.memoizedState,Xt.lanes=Yt.lanes):(Xt.updateQueue=null,Xt.memoizedState=null)}var Zt=Vi(jt);if(Zt!==null){Zt.flags&=-257,Wi(Zt,jt,Ht,zt,_e),Zt.mode&1&&Ti(zt,qt,_e),_e=Zt,Wt=qt;var Jt=_e.updateQueue;if(Jt===null){var nn=new Set;nn.add(Wt),_e.updateQueue=nn}else Jt.add(Wt);break e}else{if(!(_e&1)){Ti(zt,qt,_e),uj();break e}Wt=Error(p$3(426))}}else if(I$1&&Ht.mode&1){var rn=Vi(jt);if(rn!==null){!(rn.flags&65536)&&(rn.flags|=256),Wi(rn,jt,Ht,zt,_e),Jg(Ki(Wt,Ht));break e}}zt=Wt=Ki(Wt,Ht),T!==4&&(T=2),tk===null?tk=[zt]:tk.push(zt),zt=jt;do{switch(zt.tag){case 3:zt.flags|=65536,_e&=-_e,zt.lanes|=_e;var Qt=Oi(zt,Wt,_e);fh(zt,Qt);break e;case 1:Ht=Wt;var en=zt.type,tn=zt.stateNode;if(!(zt.flags&128)&&(typeof en.getDerivedStateFromError=="function"||tn!==null&&typeof tn.componentDidCatch=="function"&&(Si===null||!Si.has(tn)))){zt.flags|=65536,_e&=-_e,zt.lanes|=_e;var sn=Ri(zt,Ht,_e);fh(zt,sn);break e}}zt=zt.return}while(zt!==null)}Tk(Dt)}catch(cn){_e=cn,Y$1===Dt&&Dt!==null&&(Y$1=Dt=Dt.return);continue}break}while(1)}function Kk(){var kt=nk.current;return nk.current=ai,kt===null?ai:kt}function uj(){(T===0||T===3||T===2)&&(T=4),R$1===null||!(hh&268435455)&&!(rk&268435455)||Dk(R$1,Z$2)}function Jk(kt,_e){var Dt=K$1;K$1|=2;var Vt=Kk();(R$1!==kt||Z$2!==_e)&&(vk=null,Lk(kt,_e));do try{Uk();break}catch(Gt){Nk(kt,Gt)}while(1);if(Qg(),K$1=Dt,nk.current=Vt,Y$1!==null)throw Error(p$3(261));return R$1=null,Z$2=0,T}function Uk(){for(;Y$1!==null;)Vk(Y$1)}function Mk(){for(;Y$1!==null&&!cc();)Vk(Y$1)}function Vk(kt){var _e=Wk(kt.alternate,kt,gj);kt.memoizedProps=kt.pendingProps,_e===null?Tk(kt):Y$1=_e,ok.current=null}function Tk(kt){var _e=kt;do{var Dt=_e.alternate;if(kt=_e.return,_e.flags&32768){if(Dt=Jj(Dt,_e),Dt!==null){Dt.flags&=32767,Y$1=Dt;return}if(kt!==null)kt.flags|=32768,kt.subtreeFlags=0,kt.deletions=null;else{T=6,Y$1=null;return}}else if(Dt=Fj(Dt,_e,gj),Dt!==null){Y$1=Dt;return}if(_e=_e.sibling,_e!==null){Y$1=_e;return}Y$1=_e=kt}while(_e!==null);T===0&&(T=5)}function Qk(kt,_e,Dt){var Vt=C$1,Gt=pk.transition;try{pk.transition=null,C$1=1,Xk(kt,_e,Dt,Vt)}finally{pk.transition=Gt,C$1=Vt}return null}function Xk(kt,_e,Dt,Vt){do Ik();while(xk!==null);if(K$1&6)throw Error(p$3(327));Dt=kt.finishedWork;var Gt=kt.finishedLanes;if(Dt===null)return null;if(kt.finishedWork=null,kt.finishedLanes=0,Dt===kt.current)throw Error(p$3(177));kt.callbackNode=null,kt.callbackPriority=0;var zt=Dt.lanes|Dt.childLanes;if(Bc(kt,zt),kt===R$1&&(Y$1=R$1=null,Z$2=0),!(Dt.subtreeFlags&2064)&&!(Dt.flags&2064)||wk||(wk=!0,Gk(hc,function(){return Ik(),null})),zt=(Dt.flags&15990)!==0,Dt.subtreeFlags&15990||zt){zt=pk.transition,pk.transition=null;var jt=C$1;C$1=1;var Ht=K$1;K$1|=4,ok.current=null,Pj(kt,Dt),ek(Dt,kt),Oe$1(Df),dd=!!Cf,Df=Cf=null,kt.current=Dt,ik(Dt),dc(),K$1=Ht,C$1=jt,pk.transition=zt}else kt.current=Dt;if(wk&&(wk=!1,xk=kt,yk=Gt),zt=kt.pendingLanes,zt===0&&(Si=null),mc(Dt.stateNode),Ek(kt,B$2()),_e!==null)for(Vt=kt.onRecoverableError,Dt=0;Dt<_e.length;Dt++)Gt=_e[Dt],Vt(Gt.value,{componentStack:Gt.stack,digest:Gt.digest});if(Pi)throw Pi=!1,kt=Qi,Qi=null,kt;return yk&1&&kt.tag!==0&&Ik(),zt=kt.pendingLanes,zt&1?kt===Ak?zk++:(zk=0,Ak=kt):zk=0,jg(),null}function Ik(){if(xk!==null){var kt=Dc(yk),_e=pk.transition,Dt=C$1;try{if(pk.transition=null,C$1=16>kt?16:kt,xk===null)var Vt=!1;else{if(kt=xk,xk=null,yk=0,K$1&6)throw Error(p$3(331));var Gt=K$1;for(K$1|=4,V$2=kt.current;V$2!==null;){var zt=V$2,jt=zt.child;if(V$2.flags&16){var Ht=zt.deletions;if(Ht!==null){for(var Wt=0;Wt<Ht.length;Wt++){var qt=Ht[Wt];for(V$2=qt;V$2!==null;){var Xt=V$2;switch(Xt.tag){case 0:case 11:case 15:Qj(8,Xt,zt)}var Kt=Xt.child;if(Kt!==null)Kt.return=Xt,V$2=Kt;else for(;V$2!==null;){Xt=V$2;var Yt=Xt.sibling,Zt=Xt.return;if(Tj(Xt),Xt===qt){V$2=null;break}if(Yt!==null){Yt.return=Zt,V$2=Yt;break}V$2=Zt}}}var Jt=zt.alternate;if(Jt!==null){var nn=Jt.child;if(nn!==null){Jt.child=null;do{var rn=nn.sibling;nn.sibling=null,nn=rn}while(nn!==null)}}V$2=zt}}if(zt.subtreeFlags&2064&&jt!==null)jt.return=zt,V$2=jt;else e:for(;V$2!==null;){if(zt=V$2,zt.flags&2048)switch(zt.tag){case 0:case 11:case 15:Qj(9,zt,zt.return)}var Qt=zt.sibling;if(Qt!==null){Qt.return=zt.return,V$2=Qt;break e}V$2=zt.return}}var en=kt.current;for(V$2=en;V$2!==null;){jt=V$2;var tn=jt.child;if(jt.subtreeFlags&2064&&tn!==null)tn.return=jt,V$2=tn;else e:for(jt=en;V$2!==null;){if(Ht=V$2,Ht.flags&2048)try{switch(Ht.tag){case 0:case 11:case 15:Rj(9,Ht)}}catch(cn){W$2(Ht,Ht.return,cn)}if(Ht===jt){V$2=null;break e}var sn=Ht.sibling;if(sn!==null){sn.return=Ht.return,V$2=sn;break e}V$2=Ht.return}}if(K$1=Gt,jg(),lc$1&&typeof lc$1.onPostCommitFiberRoot=="function")try{lc$1.onPostCommitFiberRoot(kc,kt)}catch{}Vt=!0}return Vt}finally{C$1=Dt,pk.transition=_e}}return!1}function Yk(kt,_e,Dt){_e=Ki(Dt,_e),_e=Oi(kt,_e,1),kt=dh(kt,_e,1),_e=L$1(),kt!==null&&(Ac(kt,1,_e),Ek(kt,_e))}function W$2(kt,_e,Dt){if(kt.tag===3)Yk(kt,kt,Dt);else for(;_e!==null;){if(_e.tag===3){Yk(_e,kt,Dt);break}else if(_e.tag===1){var Vt=_e.stateNode;if(typeof _e.type.getDerivedStateFromError=="function"||typeof Vt.componentDidCatch=="function"&&(Si===null||!Si.has(Vt))){kt=Ki(Dt,kt),kt=Ri(_e,kt,1),_e=dh(_e,kt,1),kt=L$1(),_e!==null&&(Ac(_e,1,kt),Ek(_e,kt));break}}_e=_e.return}}function Ui(kt,_e,Dt){var Vt=kt.pingCache;Vt!==null&&Vt.delete(_e),_e=L$1(),kt.pingedLanes|=kt.suspendedLanes&Dt,R$1===kt&&(Z$2&Dt)===Dt&&(T===4||T===3&&(Z$2&130023424)===Z$2&&500>B$2()-gk?Lk(kt,0):sk|=Dt),Ek(kt,_e)}function Zk(kt,_e){_e===0&&(kt.mode&1?(_e=sc,sc<<=1,!(sc&130023424)&&(sc=4194304)):_e=1);var Dt=L$1();kt=Zg(kt,_e),kt!==null&&(Ac(kt,_e,Dt),Ek(kt,Dt))}function vj(kt){var _e=kt.memoizedState,Dt=0;_e!==null&&(Dt=_e.retryLane),Zk(kt,Dt)}function ck(kt,_e){var Dt=0;switch(kt.tag){case 13:var Vt=kt.stateNode,Gt=kt.memoizedState;Gt!==null&&(Dt=Gt.retryLane);break;case 19:Vt=kt.stateNode;break;default:throw Error(p$3(314))}Vt!==null&&Vt.delete(_e),Zk(kt,Dt)}var Wk;Wk=function(kt,_e,Dt){if(kt!==null)if(kt.memoizedProps!==_e.pendingProps||Wf.current)Ug=!0;else{if(!(kt.lanes&Dt)&&!(_e.flags&128))return Ug=!1,zj(kt,_e,Dt);Ug=!!(kt.flags&131072)}else Ug=!1,I$1&&_e.flags&1048576&&ug(_e,ng,_e.index);switch(_e.lanes=0,_e.tag){case 2:var Vt=_e.type;jj(kt,_e),kt=_e.pendingProps;var Gt=Yf(_e,H$1.current);Tg(_e,Dt),Gt=Xh(null,_e,Vt,kt,Gt,Dt);var zt=bi();return _e.flags|=1,typeof Gt=="object"&&Gt!==null&&typeof Gt.render=="function"&&Gt.$$typeof===void 0?(_e.tag=1,_e.memoizedState=null,_e.updateQueue=null,Zf(Vt)?(zt=!0,cg(_e)):zt=!1,_e.memoizedState=Gt.state!==null&&Gt.state!==void 0?Gt.state:null,ah(_e),Gt.updater=nh,_e.stateNode=Gt,Gt._reactInternals=_e,rh(_e,Vt,kt,Dt),_e=kj(null,_e,Vt,!0,zt,Dt)):(_e.tag=0,I$1&&zt&&vg(_e),Yi(null,_e,Gt,Dt),_e=_e.child),_e;case 16:Vt=_e.elementType;e:{switch(jj(kt,_e),kt=_e.pendingProps,Gt=Vt._init,Vt=Gt(Vt._payload),_e.type=Vt,Gt=_e.tag=$k(Vt),kt=Lg(Vt,kt),Gt){case 0:_e=dj(null,_e,Vt,kt,Dt);break e;case 1:_e=ij(null,_e,Vt,kt,Dt);break e;case 11:_e=Zi(null,_e,Vt,kt,Dt);break e;case 14:_e=aj(null,_e,Vt,Lg(Vt.type,kt),Dt);break e}throw Error(p$3(306,Vt,""))}return _e;case 0:return Vt=_e.type,Gt=_e.pendingProps,Gt=_e.elementType===Vt?Gt:Lg(Vt,Gt),dj(kt,_e,Vt,Gt,Dt);case 1:return Vt=_e.type,Gt=_e.pendingProps,Gt=_e.elementType===Vt?Gt:Lg(Vt,Gt),ij(kt,_e,Vt,Gt,Dt);case 3:e:{if(lj(_e),kt===null)throw Error(p$3(387));Vt=_e.pendingProps,zt=_e.memoizedState,Gt=zt.element,bh(kt,_e),gh(_e,Vt,null,Dt);var jt=_e.memoizedState;if(Vt=jt.element,zt.isDehydrated)if(zt={element:Vt,isDehydrated:!1,cache:jt.cache,pendingSuspenseBoundaries:jt.pendingSuspenseBoundaries,transitions:jt.transitions},_e.updateQueue.baseState=zt,_e.memoizedState=zt,_e.flags&256){Gt=Ki(Error(p$3(423)),_e),_e=mj(kt,_e,Vt,Dt,Gt);break e}else if(Vt!==Gt){Gt=Ki(Error(p$3(424)),_e),_e=mj(kt,_e,Vt,Dt,Gt);break e}else for(yg=Lf(_e.stateNode.containerInfo.firstChild),xg=_e,I$1=!0,zg=null,Dt=Ch(_e,null,Vt,Dt),_e.child=Dt;Dt;)Dt.flags=Dt.flags&-3|4096,Dt=Dt.sibling;else{if(Ig(),Vt===Gt){_e=$i(kt,_e,Dt);break e}Yi(kt,_e,Vt,Dt)}_e=_e.child}return _e;case 5:return Kh(_e),kt===null&&Eg(_e),Vt=_e.type,Gt=_e.pendingProps,zt=kt!==null?kt.memoizedProps:null,jt=Gt.children,Ef(Vt,Gt)?jt=null:zt!==null&&Ef(Vt,zt)&&(_e.flags|=32),hj(kt,_e),Yi(kt,_e,jt,Dt),_e.child;case 6:return kt===null&&Eg(_e),null;case 13:return pj(kt,_e,Dt);case 4:return Ih(_e,_e.stateNode.containerInfo),Vt=_e.pendingProps,kt===null?_e.child=Bh(_e,null,Vt,Dt):Yi(kt,_e,Vt,Dt),_e.child;case 11:return Vt=_e.type,Gt=_e.pendingProps,Gt=_e.elementType===Vt?Gt:Lg(Vt,Gt),Zi(kt,_e,Vt,Gt,Dt);case 7:return Yi(kt,_e,_e.pendingProps,Dt),_e.child;case 8:return Yi(kt,_e,_e.pendingProps.children,Dt),_e.child;case 12:return Yi(kt,_e,_e.pendingProps.children,Dt),_e.child;case 10:e:{if(Vt=_e.type._context,Gt=_e.pendingProps,zt=_e.memoizedProps,jt=Gt.value,G$1(Mg,Vt._currentValue),Vt._currentValue=jt,zt!==null)if(He(zt.value,jt)){if(zt.children===Gt.children&&!Wf.current){_e=$i(kt,_e,Dt);break e}}else for(zt=_e.child,zt!==null&&(zt.return=_e);zt!==null;){var Ht=zt.dependencies;if(Ht!==null){jt=zt.child;for(var Wt=Ht.firstContext;Wt!==null;){if(Wt.context===Vt){if(zt.tag===1){Wt=ch(-1,Dt&-Dt),Wt.tag=2;var qt=zt.updateQueue;if(qt!==null){qt=qt.shared;var Xt=qt.pending;Xt===null?Wt.next=Wt:(Wt.next=Xt.next,Xt.next=Wt),qt.pending=Wt}}zt.lanes|=Dt,Wt=zt.alternate,Wt!==null&&(Wt.lanes|=Dt),Sg(zt.return,Dt,_e),Ht.lanes|=Dt;break}Wt=Wt.next}}else if(zt.tag===10)jt=zt.type===_e.type?null:zt.child;else if(zt.tag===18){if(jt=zt.return,jt===null)throw Error(p$3(341));jt.lanes|=Dt,Ht=jt.alternate,Ht!==null&&(Ht.lanes|=Dt),Sg(jt,Dt,_e),jt=zt.sibling}else jt=zt.child;if(jt!==null)jt.return=zt;else for(jt=zt;jt!==null;){if(jt===_e){jt=null;break}if(zt=jt.sibling,zt!==null){zt.return=jt.return,jt=zt;break}jt=jt.return}zt=jt}Yi(kt,_e,Gt.children,Dt),_e=_e.child}return _e;case 9:return Gt=_e.type,Vt=_e.pendingProps.children,Tg(_e,Dt),Gt=Vg(Gt),Vt=Vt(Gt),_e.flags|=1,Yi(kt,_e,Vt,Dt),_e.child;case 14:return Vt=_e.type,Gt=Lg(Vt,_e.pendingProps),Gt=Lg(Vt.type,Gt),aj(kt,_e,Vt,Gt,Dt);case 15:return cj(kt,_e,_e.type,_e.pendingProps,Dt);case 17:return Vt=_e.type,Gt=_e.pendingProps,Gt=_e.elementType===Vt?Gt:Lg(Vt,Gt),jj(kt,_e),_e.tag=1,Zf(Vt)?(kt=!0,cg(_e)):kt=!1,Tg(_e,Dt),ph(_e,Vt,Gt),rh(_e,Vt,Gt,Dt),kj(null,_e,Vt,!0,kt,Dt);case 19:return yj(kt,_e,Dt);case 22:return ej(kt,_e,Dt)}throw Error(p$3(156,_e.tag))};function Gk(kt,_e){return ac(kt,_e)}function al(kt,_e,Dt,Vt){this.tag=kt,this.key=Dt,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=_e,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=Vt,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Bg(kt,_e,Dt,Vt){return new al(kt,_e,Dt,Vt)}function bj(kt){return kt=kt.prototype,!(!kt||!kt.isReactComponent)}function $k(kt){if(typeof kt=="function")return bj(kt)?1:0;if(kt!=null){if(kt=kt.$$typeof,kt===Da)return 11;if(kt===Ga)return 14}return 2}function wh(kt,_e){var Dt=kt.alternate;return Dt===null?(Dt=Bg(kt.tag,_e,kt.key,kt.mode),Dt.elementType=kt.elementType,Dt.type=kt.type,Dt.stateNode=kt.stateNode,Dt.alternate=kt,kt.alternate=Dt):(Dt.pendingProps=_e,Dt.type=kt.type,Dt.flags=0,Dt.subtreeFlags=0,Dt.deletions=null),Dt.flags=kt.flags&14680064,Dt.childLanes=kt.childLanes,Dt.lanes=kt.lanes,Dt.child=kt.child,Dt.memoizedProps=kt.memoizedProps,Dt.memoizedState=kt.memoizedState,Dt.updateQueue=kt.updateQueue,_e=kt.dependencies,Dt.dependencies=_e===null?null:{lanes:_e.lanes,firstContext:_e.firstContext},Dt.sibling=kt.sibling,Dt.index=kt.index,Dt.ref=kt.ref,Dt}function yh(kt,_e,Dt,Vt,Gt,zt){var jt=2;if(Vt=kt,typeof kt=="function")bj(kt)&&(jt=1);else if(typeof kt=="string")jt=5;else e:switch(kt){case ya:return Ah(Dt.children,Gt,zt,_e);case za:jt=8,Gt|=8;break;case Aa:return kt=Bg(12,Dt,_e,Gt|2),kt.elementType=Aa,kt.lanes=zt,kt;case Ea:return kt=Bg(13,Dt,_e,Gt),kt.elementType=Ea,kt.lanes=zt,kt;case Fa:return kt=Bg(19,Dt,_e,Gt),kt.elementType=Fa,kt.lanes=zt,kt;case Ia:return qj(Dt,Gt,zt,_e);default:if(typeof kt=="object"&&kt!==null)switch(kt.$$typeof){case Ba:jt=10;break e;case Ca:jt=9;break e;case Da:jt=11;break e;case Ga:jt=14;break e;case Ha:jt=16,Vt=null;break e}throw Error(p$3(130,kt==null?kt:typeof kt,""))}return _e=Bg(jt,Dt,_e,Gt),_e.elementType=kt,_e.type=Vt,_e.lanes=zt,_e}function Ah(kt,_e,Dt,Vt){return kt=Bg(7,kt,Vt,_e),kt.lanes=Dt,kt}function qj(kt,_e,Dt,Vt){return kt=Bg(22,kt,Vt,_e),kt.elementType=Ia,kt.lanes=Dt,kt.stateNode={isHidden:!1},kt}function xh(kt,_e,Dt){return kt=Bg(6,kt,null,_e),kt.lanes=Dt,kt}function zh(kt,_e,Dt){return _e=Bg(4,kt.children!==null?kt.children:[],kt.key,_e),_e.lanes=Dt,_e.stateNode={containerInfo:kt.containerInfo,pendingChildren:null,implementation:kt.implementation},_e}function bl(kt,_e,Dt,Vt,Gt){this.tag=_e,this.containerInfo=kt,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=zc(0),this.expirationTimes=zc(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=zc(0),this.identifierPrefix=Vt,this.onRecoverableError=Gt,this.mutableSourceEagerHydrationData=null}function cl(kt,_e,Dt,Vt,Gt,zt,jt,Ht,Wt){return kt=new bl(kt,_e,Dt,Ht,Wt),_e===1?(_e=1,zt===!0&&(_e|=8)):_e=0,zt=Bg(3,null,null,_e),kt.current=zt,zt.stateNode=kt,zt.memoizedState={element:Vt,isDehydrated:Dt,cache:null,transitions:null,pendingSuspenseBoundaries:null},ah(zt),kt}function dl(kt,_e,Dt){var Vt=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:wa,key:Vt==null?null:""+Vt,children:kt,containerInfo:_e,implementation:Dt}}function el(kt){if(!kt)return Vf;kt=kt._reactInternals;e:{if(Vb(kt)!==kt||kt.tag!==1)throw Error(p$3(170));var _e=kt;do{switch(_e.tag){case 3:_e=_e.stateNode.context;break e;case 1:if(Zf(_e.type)){_e=_e.stateNode.__reactInternalMemoizedMergedChildContext;break e}}_e=_e.return}while(_e!==null);throw Error(p$3(171))}if(kt.tag===1){var Dt=kt.type;if(Zf(Dt))return bg(kt,Dt,_e)}return _e}function fl$2(kt,_e,Dt,Vt,Gt,zt,jt,Ht,Wt){return kt=cl(Dt,Vt,!0,kt,Gt,zt,jt,Ht,Wt),kt.context=el(null),Dt=kt.current,Vt=L$1(),Gt=lh(Dt),zt=ch(Vt,Gt),zt.callback=_e??null,dh(Dt,zt,Gt),kt.current.lanes=Gt,Ac(kt,Gt,Vt),Ek(kt,Vt),kt}function gl(kt,_e,Dt,Vt){var Gt=_e.current,zt=L$1(),jt=lh(Gt);return Dt=el(Dt),_e.context===null?_e.context=Dt:_e.pendingContext=Dt,_e=ch(zt,jt),_e.payload={element:kt},Vt=Vt===void 0?null:Vt,Vt!==null&&(_e.callback=Vt),kt=dh(Gt,_e,jt),kt!==null&&(mh(kt,Gt,jt,zt),eh(kt,Gt,jt)),jt}function hl(kt){if(kt=kt.current,!kt.child)return null;switch(kt.child.tag){case 5:return kt.child.stateNode;default:return kt.child.stateNode}}function il(kt,_e){if(kt=kt.memoizedState,kt!==null&&kt.dehydrated!==null){var Dt=kt.retryLane;kt.retryLane=Dt!==0&&Dt<_e?Dt:_e}}function jl(kt,_e){il(kt,_e),(kt=kt.alternate)&&il(kt,_e)}function kl(){return null}var ll=typeof reportError=="function"?reportError:function(kt){console.error(kt)};function ml(kt){this._internalRoot=kt}nl.prototype.render=ml.prototype.render=function(kt){var _e=this._internalRoot;if(_e===null)throw Error(p$3(409));gl(kt,_e,null,null)};nl.prototype.unmount=ml.prototype.unmount=function(){var kt=this._internalRoot;if(kt!==null){this._internalRoot=null;var _e=kt.containerInfo;Sk(function(){gl(null,kt,null,null)}),_e[uf]=null}};function nl(kt){this._internalRoot=kt}nl.prototype.unstable_scheduleHydration=function(kt){if(kt){var _e=Hc();kt={blockedOn:null,target:kt,priority:_e};for(var Dt=0;Dt<Qc.length&&_e!==0&&_e<Qc[Dt].priority;Dt++);Qc.splice(Dt,0,kt),Dt===0&&Vc(kt)}};function ol(kt){return!(!kt||kt.nodeType!==1&&kt.nodeType!==9&&kt.nodeType!==11)}function pl(kt){return!(!kt||kt.nodeType!==1&&kt.nodeType!==9&&kt.nodeType!==11&&(kt.nodeType!==8||kt.nodeValue!==" react-mount-point-unstable "))}function ql(){}function rl(kt,_e,Dt,Vt,Gt){if(Gt){if(typeof Vt=="function"){var zt=Vt;Vt=function(){var qt=hl(jt);zt.call(qt)}}var jt=fl$2(_e,Vt,kt,0,null,!1,!1,"",ql);return kt._reactRootContainer=jt,kt[uf]=jt.current,sf(kt.nodeType===8?kt.parentNode:kt),Sk(),jt}for(;Gt=kt.lastChild;)kt.removeChild(Gt);if(typeof Vt=="function"){var Ht=Vt;Vt=function(){var qt=hl(Wt);Ht.call(qt)}}var Wt=cl(kt,0,!1,null,null,!1,!1,"",ql);return kt._reactRootContainer=Wt,kt[uf]=Wt.current,sf(kt.nodeType===8?kt.parentNode:kt),Sk(function(){gl(_e,Wt,Dt,Vt)}),Wt}function sl(kt,_e,Dt,Vt,Gt){var zt=Dt._reactRootContainer;if(zt){var jt=zt;if(typeof Gt=="function"){var Ht=Gt;Gt=function(){var Wt=hl(jt);Ht.call(Wt)}}gl(_e,jt,kt,Gt)}else jt=rl(Dt,_e,kt,Gt,Vt);return hl(jt)}Ec=function(kt){switch(kt.tag){case 3:var _e=kt.stateNode;if(_e.current.memoizedState.isDehydrated){var Dt=tc(_e.pendingLanes);Dt!==0&&(Cc(_e,Dt|1),Ek(_e,B$2()),!(K$1&6)&&(Hj=B$2()+500,jg()))}break;case 13:Sk(function(){var Vt=Zg(kt,1);if(Vt!==null){var Gt=L$1();mh(Vt,kt,1,Gt)}}),jl(kt,1)}};Fc=function(kt){if(kt.tag===13){var _e=Zg(kt,134217728);if(_e!==null){var Dt=L$1();mh(_e,kt,134217728,Dt)}jl(kt,134217728)}};Gc=function(kt){if(kt.tag===13){var _e=lh(kt),Dt=Zg(kt,_e);if(Dt!==null){var Vt=L$1();mh(Dt,kt,_e,Vt)}jl(kt,_e)}};Hc=function(){return C$1};Ic=function(kt,_e){var Dt=C$1;try{return C$1=kt,_e()}finally{C$1=Dt}};yb=function(kt,_e,Dt){switch(_e){case"input":if(bb(kt,Dt),_e=Dt.name,Dt.type==="radio"&&_e!=null){for(Dt=kt;Dt.parentNode;)Dt=Dt.parentNode;for(Dt=Dt.querySelectorAll("input[name="+JSON.stringify(""+_e)+'][type="radio"]'),_e=0;_e<Dt.length;_e++){var Vt=Dt[_e];if(Vt!==kt&&Vt.form===kt.form){var Gt=Db(Vt);if(!Gt)throw Error(p$3(90));Wa(Vt),bb(Vt,Gt)}}}break;case"textarea":ib(kt,Dt);break;case"select":_e=Dt.value,_e!=null&&fb(kt,!!Dt.multiple,_e,!1)}};Gb=Rk;Hb=Sk;var tl={usingClientEntryPoint:!1,Events:[Cb,ue,Db,Eb,Fb,Rk]},ul={findFiberByHostInstance:Wc,bundleType:0,version:"18.2.0",rendererPackageName:"react-dom"},vl={bundleType:ul.bundleType,version:ul.version,rendererPackageName:ul.rendererPackageName,rendererConfig:ul.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:ua.ReactCurrentDispatcher,findHostInstanceByFiber:function(kt){return kt=Zb(kt),kt===null?null:kt.stateNode},findFiberByHostInstance:ul.findFiberByHostInstance||kl,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.2.0-next-9e3b772b8-20220608"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var wl=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!wl.isDisabled&&wl.supportsFiber)try{kc=wl.inject(vl),lc$1=wl}catch{}}reactDom_production_min.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=tl;reactDom_production_min.createPortal=function(kt,_e){var Dt=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!ol(_e))throw Error(p$3(200));return dl(kt,_e,null,Dt)};reactDom_production_min.createRoot=function(kt,_e){if(!ol(kt))throw Error(p$3(299));var Dt=!1,Vt="",Gt=ll;return _e!=null&&(_e.unstable_strictMode===!0&&(Dt=!0),_e.identifierPrefix!==void 0&&(Vt=_e.identifierPrefix),_e.onRecoverableError!==void 0&&(Gt=_e.onRecoverableError)),_e=cl(kt,1,!1,null,null,Dt,!1,Vt,Gt),kt[uf]=_e.current,sf(kt.nodeType===8?kt.parentNode:kt),new ml(_e)};reactDom_production_min.findDOMNode=function(kt){if(kt==null)return null;if(kt.nodeType===1)return kt;var _e=kt._reactInternals;if(_e===void 0)throw typeof kt.render=="function"?Error(p$3(188)):(kt=Object.keys(kt).join(","),Error(p$3(268,kt)));return kt=Zb(_e),kt=kt===null?null:kt.stateNode,kt};reactDom_production_min.flushSync=function(kt){return Sk(kt)};reactDom_production_min.hydrate=function(kt,_e,Dt){if(!pl(_e))throw Error(p$3(200));return sl(null,kt,_e,!0,Dt)};reactDom_production_min.hydrateRoot=function(kt,_e,Dt){if(!ol(kt))throw Error(p$3(405));var Vt=Dt!=null&&Dt.hydratedSources||null,Gt=!1,zt="",jt=ll;if(Dt!=null&&(Dt.unstable_strictMode===!0&&(Gt=!0),Dt.identifierPrefix!==void 0&&(zt=Dt.identifierPrefix),Dt.onRecoverableError!==void 0&&(jt=Dt.onRecoverableError)),_e=fl$2(_e,null,kt,1,Dt??null,Gt,!1,zt,jt),kt[uf]=_e.current,sf(kt),Vt)for(kt=0;kt<Vt.length;kt++)Dt=Vt[kt],Gt=Dt._getVersion,Gt=Gt(Dt._source),_e.mutableSourceEagerHydrationData==null?_e.mutableSourceEagerHydrationData=[Dt,Gt]:_e.mutableSourceEagerHydrationData.push(Dt,Gt);return new nl(_e)};reactDom_production_min.render=function(kt,_e,Dt){if(!pl(_e))throw Error(p$3(200));return sl(null,kt,_e,!1,Dt)};reactDom_production_min.unmountComponentAtNode=function(kt){if(!pl(kt))throw Error(p$3(40));return kt._reactRootContainer?(Sk(function(){sl(null,null,kt,!1,function(){kt._reactRootContainer=null,kt[uf]=null})}),!0):!1};reactDom_production_min.unstable_batchedUpdates=Rk;reactDom_production_min.unstable_renderSubtreeIntoContainer=function(kt,_e,Dt,Vt){if(!pl(Dt))throw Error(p$3(200));if(kt==null||kt._reactInternals===void 0)throw Error(p$3(38));return sl(kt,_e,Dt,!1,Vt)};reactDom_production_min.version="18.2.0-next-9e3b772b8-20220608";function checkDCE(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(checkDCE)}catch(kt){console.error(kt)}}checkDCE(),reactDom.exports=reactDom_production_min;var reactDomExports=reactDom.exports;function listCacheClear$1(){this.__data__=[],this.size=0}var _listCacheClear=listCacheClear$1;function eq$2(kt,_e){return kt===_e||kt!==kt&&_e!==_e}var eq_1=eq$2,eq$1=eq_1;function assocIndexOf$4(kt,_e){for(var Dt=kt.length;Dt--;)if(eq$1(kt[Dt][0],_e))return Dt;return-1}var _assocIndexOf=assocIndexOf$4,assocIndexOf$3=_assocIndexOf,arrayProto=Array.prototype,splice=arrayProto.splice;function listCacheDelete$1(kt){var _e=this.__data__,Dt=assocIndexOf$3(_e,kt);if(Dt<0)return!1;var Vt=_e.length-1;return Dt==Vt?_e.pop():splice.call(_e,Dt,1),--this.size,!0}var _listCacheDelete=listCacheDelete$1,assocIndexOf$2=_assocIndexOf;function listCacheGet$1(kt){var _e=this.__data__,Dt=assocIndexOf$2(_e,kt);return Dt<0?void 0:_e[Dt][1]}var _listCacheGet=listCacheGet$1,assocIndexOf$1=_assocIndexOf;function listCacheHas$1(kt){return assocIndexOf$1(this.__data__,kt)>-1}var _listCacheHas=listCacheHas$1,assocIndexOf=_assocIndexOf;function listCacheSet$1(kt,_e){var Dt=this.__data__,Vt=assocIndexOf(Dt,kt);return Vt<0?(++this.size,Dt.push([kt,_e])):Dt[Vt][1]=_e,this}var _listCacheSet=listCacheSet$1,listCacheClear=_listCacheClear,listCacheDelete=_listCacheDelete,listCacheGet=_listCacheGet,listCacheHas=_listCacheHas,listCacheSet=_listCacheSet;function ListCache$4(kt){var _e=-1,Dt=kt==null?0:kt.length;for(this.clear();++_e<Dt;){var Vt=kt[_e];this.set(Vt[0],Vt[1])}}ListCache$4.prototype.clear=listCacheClear;ListCache$4.prototype.delete=listCacheDelete;ListCache$4.prototype.get=listCacheGet;ListCache$4.prototype.has=listCacheHas;ListCache$4.prototype.set=listCacheSet;var _ListCache=ListCache$4,ListCache$3=_ListCache;function stackClear$1(){this.__data__=new ListCache$3,this.size=0}var _stackClear=stackClear$1;function stackDelete$1(kt){var _e=this.__data__,Dt=_e.delete(kt);return this.size=_e.size,Dt}var _stackDelete=stackDelete$1;function stackGet$1(kt){return this.__data__.get(kt)}var _stackGet=stackGet$1;function stackHas$1(kt){return this.__data__.has(kt)}var _stackHas=stackHas$1,freeGlobal$1=typeof commonjsGlobal=="object"&&commonjsGlobal&&commonjsGlobal.Object===Object&&commonjsGlobal,_freeGlobal=freeGlobal$1,freeGlobal=_freeGlobal,freeSelf=typeof self=="object"&&self&&self.Object===Object&&self,root$8=freeGlobal||freeSelf||Function("return this")(),_root=root$8,root$7=_root,Symbol$4=root$7.Symbol,_Symbol=Symbol$4,Symbol$3=_Symbol,objectProto$d=Object.prototype,hasOwnProperty$9=objectProto$d.hasOwnProperty,nativeObjectToString$1=objectProto$d.toString,symToStringTag$1=Symbol$3?Symbol$3.toStringTag:void 0;function getRawTag$1(kt){var _e=hasOwnProperty$9.call(kt,symToStringTag$1),Dt=kt[symToStringTag$1];try{kt[symToStringTag$1]=void 0;var Vt=!0}catch{}var Gt=nativeObjectToString$1.call(kt);return Vt&&(_e?kt[symToStringTag$1]=Dt:delete kt[symToStringTag$1]),Gt}var _getRawTag=getRawTag$1,objectProto$c=Object.prototype,nativeObjectToString=objectProto$c.toString;function objectToString$1(kt){return nativeObjectToString.call(kt)}var _objectToString=objectToString$1,Symbol$2=_Symbol,getRawTag=_getRawTag,objectToString=_objectToString,nullTag="[object Null]",undefinedTag="[object Undefined]",symToStringTag=Symbol$2?Symbol$2.toStringTag:void 0;function baseGetTag$4(kt){return kt==null?kt===void 0?undefinedTag:nullTag:symToStringTag&&symToStringTag in Object(kt)?getRawTag(kt):objectToString(kt)}var _baseGetTag=baseGetTag$4;function isObject$7(kt){var _e=typeof kt;return kt!=null&&(_e=="object"||_e=="function")}var isObject_1=isObject$7,baseGetTag$3=_baseGetTag,isObject$6=isObject_1,asyncTag="[object AsyncFunction]",funcTag$1="[object Function]",genTag="[object GeneratorFunction]",proxyTag="[object Proxy]";function isFunction$4(kt){if(!isObject$6(kt))return!1;var _e=baseGetTag$3(kt);return _e==funcTag$1||_e==genTag||_e==asyncTag||_e==proxyTag}var isFunction_1=isFunction$4,root$6=_root,coreJsData$1=root$6["__core-js_shared__"],_coreJsData=coreJsData$1,coreJsData=_coreJsData,maskSrcKey=function(){var kt=/[^.]+$/.exec(coreJsData&&coreJsData.keys&&coreJsData.keys.IE_PROTO||"");return kt?"Symbol(src)_1."+kt:""}();function isMasked$1(kt){return!!maskSrcKey&&maskSrcKey in kt}var _isMasked=isMasked$1,funcProto$1=Function.prototype,funcToString$1=funcProto$1.toString;function toSource$2(kt){if(kt!=null){try{return funcToString$1.call(kt)}catch{}try{return kt+""}catch{}}return""}var _toSource=toSource$2,isFunction$3=isFunction_1,isMasked=_isMasked,isObject$5=isObject_1,toSource$1=_toSource,reRegExpChar=/[\\^$.*+?()[\]{}|]/g,reIsHostCtor=/^\[object .+?Constructor\]$/,funcProto=Function.prototype,objectProto$b=Object.prototype,funcToString=funcProto.toString,hasOwnProperty$8=objectProto$b.hasOwnProperty,reIsNative=RegExp("^"+funcToString.call(hasOwnProperty$8).replace(reRegExpChar,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function baseIsNative$1(kt){if(!isObject$5(kt)||isMasked(kt))return!1;var _e=isFunction$3(kt)?reIsNative:reIsHostCtor;return _e.test(toSource$1(kt))}var _baseIsNative=baseIsNative$1;function getValue$1(kt,_e){return kt?.[_e]}var _getValue=getValue$1,baseIsNative=_baseIsNative,getValue=_getValue;function getNative$6(kt,_e){var Dt=getValue(kt,_e);return baseIsNative(Dt)?Dt:void 0}var _getNative=getNative$6,getNative$5=_getNative,root$5=_root,Map$4=getNative$5(root$5,"Map"),_Map=Map$4,getNative$4=_getNative,nativeCreate$5=getNative$4(Object,"create"),_nativeCreate=nativeCreate$5,nativeCreate$4=_nativeCreate;function hashClear$1(){this.__data__=nativeCreate$4?nativeCreate$4(null):{},this.size=0}var _hashClear=hashClear$1;function hashDelete$1(kt){var _e=this.has(kt)&&delete this.__data__[kt];return this.size-=_e?1:0,_e}var _hashDelete=hashDelete$1,nativeCreate$3=_nativeCreate,HASH_UNDEFINED$2="__lodash_hash_undefined__",objectProto$a=Object.prototype,hasOwnProperty$7=objectProto$a.hasOwnProperty;function hashGet$1(kt){var _e=this.__data__;if(nativeCreate$3){var Dt=_e[kt];return Dt===HASH_UNDEFINED$2?void 0:Dt}return hasOwnProperty$7.call(_e,kt)?_e[kt]:void 0}var _hashGet=hashGet$1,nativeCreate$2=_nativeCreate,objectProto$9=Object.prototype,hasOwnProperty$6=objectProto$9.hasOwnProperty;function hashHas$1(kt){var _e=this.__data__;return nativeCreate$2?_e[kt]!==void 0:hasOwnProperty$6.call(_e,kt)}var _hashHas=hashHas$1,nativeCreate$1=_nativeCreate,HASH_UNDEFINED$1="__lodash_hash_undefined__";function hashSet$1(kt,_e){var Dt=this.__data__;return this.size+=this.has(kt)?0:1,Dt[kt]=nativeCreate$1&&_e===void 0?HASH_UNDEFINED$1:_e,this}var _hashSet=hashSet$1,hashClear=_hashClear,hashDelete=_hashDelete,hashGet=_hashGet,hashHas=_hashHas,hashSet=_hashSet;function Hash$1(kt){var _e=-1,Dt=kt==null?0:kt.length;for(this.clear();++_e<Dt;){var Vt=kt[_e];this.set(Vt[0],Vt[1])}}Hash$1.prototype.clear=hashClear;Hash$1.prototype.delete=hashDelete;Hash$1.prototype.get=hashGet;Hash$1.prototype.has=hashHas;Hash$1.prototype.set=hashSet;var _Hash=Hash$1,Hash=_Hash,ListCache$2=_ListCache,Map$3=_Map;function mapCacheClear$1(){this.size=0,this.__data__={hash:new Hash,map:new(Map$3||ListCache$2),string:new Hash}}var _mapCacheClear=mapCacheClear$1;function isKeyable$1(kt){var _e=typeof kt;return _e=="string"||_e=="number"||_e=="symbol"||_e=="boolean"?kt!=="__proto__":kt===null}var _isKeyable=isKeyable$1,isKeyable=_isKeyable;function getMapData$4(kt,_e){var Dt=kt.__data__;return isKeyable(_e)?Dt[typeof _e=="string"?"string":"hash"]:Dt.map}var _getMapData=getMapData$4,getMapData$3=_getMapData;function mapCacheDelete$1(kt){var _e=getMapData$3(this,kt).delete(kt);return this.size-=_e?1:0,_e}var _mapCacheDelete=mapCacheDelete$1,getMapData$2=_getMapData;function mapCacheGet$1(kt){return getMapData$2(this,kt).get(kt)}var _mapCacheGet=mapCacheGet$1,getMapData$1=_getMapData;function mapCacheHas$1(kt){return getMapData$1(this,kt).has(kt)}var _mapCacheHas=mapCacheHas$1,getMapData=_getMapData;function mapCacheSet$1(kt,_e){var Dt=getMapData(this,kt),Vt=Dt.size;return Dt.set(kt,_e),this.size+=Dt.size==Vt?0:1,this}var _mapCacheSet=mapCacheSet$1,mapCacheClear=_mapCacheClear,mapCacheDelete=_mapCacheDelete,mapCacheGet=_mapCacheGet,mapCacheHas=_mapCacheHas,mapCacheSet=_mapCacheSet;function MapCache$2(kt){var _e=-1,Dt=kt==null?0:kt.length;for(this.clear();++_e<Dt;){var Vt=kt[_e];this.set(Vt[0],Vt[1])}}MapCache$2.prototype.clear=mapCacheClear;MapCache$2.prototype.delete=mapCacheDelete;MapCache$2.prototype.get=mapCacheGet;MapCache$2.prototype.has=mapCacheHas;MapCache$2.prototype.set=mapCacheSet;var _MapCache=MapCache$2,ListCache$1=_ListCache,Map$2=_Map,MapCache$1=_MapCache,LARGE_ARRAY_SIZE=200;function stackSet$1(kt,_e){var Dt=this.__data__;if(Dt instanceof ListCache$1){var Vt=Dt.__data__;if(!Map$2||Vt.length<LARGE_ARRAY_SIZE-1)return Vt.push([kt,_e]),this.size=++Dt.size,this;Dt=this.__data__=new MapCache$1(Vt)}return Dt.set(kt,_e),this.size=Dt.size,this}var _stackSet=stackSet$1,ListCache=_ListCache,stackClear=_stackClear,stackDelete=_stackDelete,stackGet=_stackGet,stackHas=_stackHas,stackSet=_stackSet;function Stack$1(kt){var _e=this.__data__=new ListCache(kt);this.size=_e.size}Stack$1.prototype.clear=stackClear;Stack$1.prototype.delete=stackDelete;Stack$1.prototype.get=stackGet;Stack$1.prototype.has=stackHas;Stack$1.prototype.set=stackSet;var _Stack=Stack$1,HASH_UNDEFINED="__lodash_hash_undefined__";function setCacheAdd$1(kt){return this.__data__.set(kt,HASH_UNDEFINED),this}var _setCacheAdd=setCacheAdd$1;function setCacheHas$1(kt){return this.__data__.has(kt)}var _setCacheHas=setCacheHas$1,MapCache=_MapCache,setCacheAdd=_setCacheAdd,setCacheHas=_setCacheHas;function SetCache$1(kt){var _e=-1,Dt=kt==null?0:kt.length;for(this.__data__=new MapCache;++_e<Dt;)this.add(kt[_e])}SetCache$1.prototype.add=SetCache$1.prototype.push=setCacheAdd;SetCache$1.prototype.has=setCacheHas;var _SetCache=SetCache$1;function arraySome$1(kt,_e){for(var Dt=-1,Vt=kt==null?0:kt.length;++Dt<Vt;)if(_e(kt[Dt],Dt,kt))return!0;return!1}var _arraySome=arraySome$1;function cacheHas$1(kt,_e){return kt.has(_e)}var _cacheHas=cacheHas$1,SetCache=_SetCache,arraySome=_arraySome,cacheHas=_cacheHas,COMPARE_PARTIAL_FLAG$3=1,COMPARE_UNORDERED_FLAG$1=2;function equalArrays$2(kt,_e,Dt,Vt,Gt,zt){var jt=Dt&COMPARE_PARTIAL_FLAG$3,Ht=kt.length,Wt=_e.length;if(Ht!=Wt&&!(jt&&Wt>Ht))return!1;var qt=zt.get(kt),Xt=zt.get(_e);if(qt&&Xt)return qt==_e&&Xt==kt;var Kt=-1,Yt=!0,Zt=Dt&COMPARE_UNORDERED_FLAG$1?new SetCache:void 0;for(zt.set(kt,_e),zt.set(_e,kt);++Kt<Ht;){var Jt=kt[Kt],nn=_e[Kt];if(Vt)var rn=jt?Vt(nn,Jt,Kt,_e,kt,zt):Vt(Jt,nn,Kt,kt,_e,zt);if(rn!==void 0){if(rn)continue;Yt=!1;break}if(Zt){if(!arraySome(_e,function(Qt,en){if(!cacheHas(Zt,en)&&(Jt===Qt||Gt(Jt,Qt,Dt,Vt,zt)))return Zt.push(en)})){Yt=!1;break}}else if(!(Jt===nn||Gt(Jt,nn,Dt,Vt,zt))){Yt=!1;break}}return zt.delete(kt),zt.delete(_e),Yt}var _equalArrays=equalArrays$2,root$4=_root,Uint8Array$2=root$4.Uint8Array,_Uint8Array=Uint8Array$2;function mapToArray$1(kt){var _e=-1,Dt=Array(kt.size);return kt.forEach(function(Vt,Gt){Dt[++_e]=[Gt,Vt]}),Dt}var _mapToArray=mapToArray$1;function setToArray$1(kt){var _e=-1,Dt=Array(kt.size);return kt.forEach(function(Vt){Dt[++_e]=Vt}),Dt}var _setToArray=setToArray$1,Symbol$1=_Symbol,Uint8Array$1=_Uint8Array,eq=eq_1,equalArrays$1=_equalArrays,mapToArray=_mapToArray,setToArray=_setToArray,COMPARE_PARTIAL_FLAG$2=1,COMPARE_UNORDERED_FLAG=2,boolTag$1="[object Boolean]",dateTag$1="[object Date]",errorTag$1="[object Error]",mapTag$2="[object Map]",numberTag$1="[object Number]",regexpTag$1="[object RegExp]",setTag$2="[object Set]",stringTag$1="[object String]",symbolTag="[object Symbol]",arrayBufferTag$1="[object ArrayBuffer]",dataViewTag$2="[object DataView]",symbolProto=Symbol$1?Symbol$1.prototype:void 0,symbolValueOf=symbolProto?symbolProto.valueOf:void 0;function equalByTag$1(kt,_e,Dt,Vt,Gt,zt,jt){switch(Dt){case dataViewTag$2:if(kt.byteLength!=_e.byteLength||kt.byteOffset!=_e.byteOffset)return!1;kt=kt.buffer,_e=_e.buffer;case arrayBufferTag$1:return!(kt.byteLength!=_e.byteLength||!zt(new Uint8Array$1(kt),new Uint8Array$1(_e)));case boolTag$1:case dateTag$1:case numberTag$1:return eq(+kt,+_e);case errorTag$1:return kt.name==_e.name&&kt.message==_e.message;case regexpTag$1:case stringTag$1:return kt==_e+"";case mapTag$2:var Ht=mapToArray;case setTag$2:var Wt=Vt&COMPARE_PARTIAL_FLAG$2;if(Ht||(Ht=setToArray),kt.size!=_e.size&&!Wt)return!1;var qt=jt.get(kt);if(qt)return qt==_e;Vt|=COMPARE_UNORDERED_FLAG,jt.set(kt,_e);var Xt=equalArrays$1(Ht(kt),Ht(_e),Vt,Gt,zt,jt);return jt.delete(kt),Xt;case symbolTag:if(symbolValueOf)return symbolValueOf.call(kt)==symbolValueOf.call(_e)}return!1}var _equalByTag=equalByTag$1;function arrayPush$1(kt,_e){for(var Dt=-1,Vt=_e.length,Gt=kt.length;++Dt<Vt;)kt[Gt+Dt]=_e[Dt];return kt}var _arrayPush=arrayPush$1,isArray$4=Array.isArray,isArray_1=isArray$4,arrayPush=_arrayPush,isArray$3=isArray_1;function baseGetAllKeys$1(kt,_e,Dt){var Vt=_e(kt);return isArray$3(kt)?Vt:arrayPush(Vt,Dt(kt))}var _baseGetAllKeys=baseGetAllKeys$1;function arrayFilter$1(kt,_e){for(var Dt=-1,Vt=kt==null?0:kt.length,Gt=0,zt=[];++Dt<Vt;){var jt=kt[Dt];_e(jt,Dt,kt)&&(zt[Gt++]=jt)}return zt}var _arrayFilter=arrayFilter$1;function stubArray$1(){return[]}var stubArray_1=stubArray$1,arrayFilter=_arrayFilter,stubArray=stubArray_1,objectProto$8=Object.prototype,propertyIsEnumerable$1=objectProto$8.propertyIsEnumerable,nativeGetSymbols=Object.getOwnPropertySymbols,getSymbols$1=nativeGetSymbols?function(kt){return kt==null?[]:(kt=Object(kt),arrayFilter(nativeGetSymbols(kt),function(_e){return propertyIsEnumerable$1.call(kt,_e)}))}:stubArray,_getSymbols=getSymbols$1;function baseTimes$1(kt,_e){for(var Dt=-1,Vt=Array(kt);++Dt<kt;)Vt[Dt]=_e(Dt);return Vt}var _baseTimes=baseTimes$1;function isObjectLike$4(kt){return kt!=null&&typeof kt=="object"}var isObjectLike_1=isObjectLike$4,baseGetTag$2=_baseGetTag,isObjectLike$3=isObjectLike_1,argsTag$2="[object Arguments]";function baseIsArguments$1(kt){return isObjectLike$3(kt)&&baseGetTag$2(kt)==argsTag$2}var _baseIsArguments=baseIsArguments$1,baseIsArguments=_baseIsArguments,isObjectLike$2=isObjectLike_1,objectProto$7=Object.prototype,hasOwnProperty$5=objectProto$7.hasOwnProperty,propertyIsEnumerable=objectProto$7.propertyIsEnumerable,isArguments$1=baseIsArguments(function(){return arguments}())?baseIsArguments:function(kt){return isObjectLike$2(kt)&&hasOwnProperty$5.call(kt,"callee")&&!propertyIsEnumerable.call(kt,"callee")},isArguments_1=isArguments$1,isBuffer$2={exports:{}};function stubFalse(){return!1}var stubFalse_1=stubFalse;isBuffer$2.exports;(function(kt,_e){var Dt=_root,Vt=stubFalse_1,Gt=_e&&!_e.nodeType&&_e,zt=Gt&&!0&&kt&&!kt.nodeType&&kt,jt=zt&&zt.exports===Gt,Ht=jt?Dt.Buffer:void 0,Wt=Ht?Ht.isBuffer:void 0,qt=Wt||Vt;kt.exports=qt})(isBuffer$2,isBuffer$2.exports);var isBufferExports=isBuffer$2.exports,MAX_SAFE_INTEGER$1=9007199254740991,reIsUint=/^(?:0|[1-9]\d*)$/;function isIndex$1(kt,_e){var Dt=typeof kt;return _e=_e??MAX_SAFE_INTEGER$1,!!_e&&(Dt=="number"||Dt!="symbol"&&reIsUint.test(kt))&&kt>-1&&kt%1==0&&kt<_e}var _isIndex=isIndex$1,MAX_SAFE_INTEGER=9007199254740991;function isLength$2(kt){return typeof kt=="number"&&kt>-1&&kt%1==0&&kt<=MAX_SAFE_INTEGER}var isLength_1=isLength$2,baseGetTag$1=_baseGetTag,isLength$1=isLength_1,isObjectLike$1=isObjectLike_1,argsTag$1="[object Arguments]",arrayTag$1="[object Array]",boolTag="[object Boolean]",dateTag="[object Date]",errorTag="[object Error]",funcTag="[object Function]",mapTag$1="[object Map]",numberTag="[object Number]",objectTag$2="[object Object]",regexpTag="[object RegExp]",setTag$1="[object Set]",stringTag="[object String]",weakMapTag$1="[object WeakMap]",arrayBufferTag="[object ArrayBuffer]",dataViewTag$1="[object DataView]",float32Tag="[object Float32Array]",float64Tag="[object Float64Array]",int8Tag="[object Int8Array]",int16Tag="[object Int16Array]",int32Tag="[object Int32Array]",uint8Tag="[object Uint8Array]",uint8ClampedTag="[object Uint8ClampedArray]",uint16Tag="[object Uint16Array]",uint32Tag="[object Uint32Array]",typedArrayTags={};typedArrayTags[float32Tag]=typedArrayTags[float64Tag]=typedArrayTags[int8Tag]=typedArrayTags[int16Tag]=typedArrayTags[int32Tag]=typedArrayTags[uint8Tag]=typedArrayTags[uint8ClampedTag]=typedArrayTags[uint16Tag]=typedArrayTags[uint32Tag]=!0;typedArrayTags[argsTag$1]=typedArrayTags[arrayTag$1]=typedArrayTags[arrayBufferTag]=typedArrayTags[boolTag]=typedArrayTags[dataViewTag$1]=typedArrayTags[dateTag]=typedArrayTags[errorTag]=typedArrayTags[funcTag]=typedArrayTags[mapTag$1]=typedArrayTags[numberTag]=typedArrayTags[objectTag$2]=typedArrayTags[regexpTag]=typedArrayTags[setTag$1]=typedArrayTags[stringTag]=typedArrayTags[weakMapTag$1]=!1;function baseIsTypedArray$1(kt){return isObjectLike$1(kt)&&isLength$1(kt.length)&&!!typedArrayTags[baseGetTag$1(kt)]}var _baseIsTypedArray=baseIsTypedArray$1;function baseUnary$1(kt){return function(_e){return kt(_e)}}var _baseUnary=baseUnary$1,_nodeUtil={exports:{}};_nodeUtil.exports;(function(kt,_e){var Dt=_freeGlobal,Vt=_e&&!_e.nodeType&&_e,Gt=Vt&&!0&&kt&&!kt.nodeType&&kt,zt=Gt&&Gt.exports===Vt,jt=zt&&Dt.process,Ht=function(){try{var Wt=Gt&&Gt.require&&Gt.require("util").types;return Wt||jt&&jt.binding&&jt.binding("util")}catch{}}();kt.exports=Ht})(_nodeUtil,_nodeUtil.exports);var _nodeUtilExports=_nodeUtil.exports,baseIsTypedArray=_baseIsTypedArray,baseUnary=_baseUnary,nodeUtil=_nodeUtilExports,nodeIsTypedArray=nodeUtil&&nodeUtil.isTypedArray,isTypedArray$3=nodeIsTypedArray?baseUnary(nodeIsTypedArray):baseIsTypedArray,isTypedArray_1=isTypedArray$3,baseTimes=_baseTimes,isArguments=isArguments_1,isArray$2=isArray_1,isBuffer$1=isBufferExports,isIndex=_isIndex,isTypedArray$2=isTypedArray_1,objectProto$6=Object.prototype,hasOwnProperty$4=objectProto$6.hasOwnProperty;function arrayLikeKeys$1(kt,_e){var Dt=isArray$2(kt),Vt=!Dt&&isArguments(kt),Gt=!Dt&&!Vt&&isBuffer$1(kt),zt=!Dt&&!Vt&&!Gt&&isTypedArray$2(kt),jt=Dt||Vt||Gt||zt,Ht=jt?baseTimes(kt.length,String):[],Wt=Ht.length;for(var qt in kt)(_e||hasOwnProperty$4.call(kt,qt))&&!(jt&&(qt=="length"||Gt&&(qt=="offset"||qt=="parent")||zt&&(qt=="buffer"||qt=="byteLength"||qt=="byteOffset")||isIndex(qt,Wt)))&&Ht.push(qt);return Ht}var _arrayLikeKeys=arrayLikeKeys$1,objectProto$5=Object.prototype;function isPrototype$1(kt){var _e=kt&&kt.constructor,Dt=typeof _e=="function"&&_e.prototype||objectProto$5;return kt===Dt}var _isPrototype=isPrototype$1;function overArg$1(kt,_e){return function(Dt){return kt(_e(Dt))}}var _overArg=overArg$1,overArg=_overArg,nativeKeys$2=overArg(Object.keys,Object),_nativeKeys=nativeKeys$2,isPrototype=_isPrototype,nativeKeys$1=_nativeKeys,objectProto$4=Object.prototype,hasOwnProperty$3=objectProto$4.hasOwnProperty;function baseKeys$1(kt){if(!isPrototype(kt))return nativeKeys$1(kt);var _e=[];for(var Dt in Object(kt))hasOwnProperty$3.call(kt,Dt)&&Dt!="constructor"&&_e.push(Dt);return _e}var _baseKeys=baseKeys$1,isFunction$2=isFunction_1,isLength=isLength_1;function isArrayLike$1(kt){return kt!=null&&isLength(kt.length)&&!isFunction$2(kt)}var isArrayLike_1=isArrayLike$1,arrayLikeKeys=_arrayLikeKeys,baseKeys=_baseKeys,isArrayLike=isArrayLike_1;function keys$4(kt){return isArrayLike(kt)?arrayLikeKeys(kt):baseKeys(kt)}var keys_1=keys$4,baseGetAllKeys=_baseGetAllKeys,getSymbols=_getSymbols,keys$3=keys_1;function getAllKeys$1(kt){return baseGetAllKeys(kt,keys$3,getSymbols)}var _getAllKeys=getAllKeys$1,getAllKeys=_getAllKeys,COMPARE_PARTIAL_FLAG$1=1,objectProto$3=Object.prototype,hasOwnProperty$2=objectProto$3.hasOwnProperty;function equalObjects$1(kt,_e,Dt,Vt,Gt,zt){var jt=Dt&COMPARE_PARTIAL_FLAG$1,Ht=getAllKeys(kt),Wt=Ht.length,qt=getAllKeys(_e),Xt=qt.length;if(Wt!=Xt&&!jt)return!1;for(var Kt=Wt;Kt--;){var Yt=Ht[Kt];if(!(jt?Yt in _e:hasOwnProperty$2.call(_e,Yt)))return!1}var Zt=zt.get(kt),Jt=zt.get(_e);if(Zt&&Jt)return Zt==_e&&Jt==kt;var nn=!0;zt.set(kt,_e),zt.set(_e,kt);for(var rn=jt;++Kt<Wt;){Yt=Ht[Kt];var Qt=kt[Yt],en=_e[Yt];if(Vt)var tn=jt?Vt(en,Qt,Yt,_e,kt,zt):Vt(Qt,en,Yt,kt,_e,zt);if(!(tn===void 0?Qt===en||Gt(Qt,en,Dt,Vt,zt):tn)){nn=!1;break}rn||(rn=Yt=="constructor")}if(nn&&!rn){var sn=kt.constructor,cn=_e.constructor;sn!=cn&&"constructor"in kt&&"constructor"in _e&&!(typeof sn=="function"&&sn instanceof sn&&typeof cn=="function"&&cn instanceof cn)&&(nn=!1)}return zt.delete(kt),zt.delete(_e),nn}var _equalObjects=equalObjects$1,getNative$3=_getNative,root$3=_root,DataView$2=getNative$3(root$3,"DataView"),_DataView=DataView$2,getNative$2=_getNative,root$2=_root,Promise$2=getNative$2(root$2,"Promise"),_Promise=Promise$2,getNative$1=_getNative,root$1=_root,Set$2=getNative$1(root$1,"Set"),_Set=Set$2,getNative=_getNative,root=_root,WeakMap$2=getNative(root,"WeakMap"),_WeakMap=WeakMap$2,DataView$1=_DataView,Map$1=_Map,Promise$1=_Promise,Set$1=_Set,WeakMap$1=_WeakMap,baseGetTag=_baseGetTag,toSource=_toSource,mapTag="[object Map]",objectTag$1="[object Object]",promiseTag="[object Promise]",setTag="[object Set]",weakMapTag="[object WeakMap]",dataViewTag="[object DataView]",dataViewCtorString=toSource(DataView$1),mapCtorString=toSource(Map$1),promiseCtorString=toSource(Promise$1),setCtorString=toSource(Set$1),weakMapCtorString=toSource(WeakMap$1),getTag$1=baseGetTag;(DataView$1&&getTag$1(new DataView$1(new ArrayBuffer(1)))!=dataViewTag||Map$1&&getTag$1(new Map$1)!=mapTag||Promise$1&&getTag$1(Promise$1.resolve())!=promiseTag||Set$1&&getTag$1(new Set$1)!=setTag||WeakMap$1&&getTag$1(new WeakMap$1)!=weakMapTag)&&(getTag$1=function(kt){var _e=baseGetTag(kt),Dt=_e==objectTag$1?kt.constructor:void 0,Vt=Dt?toSource(Dt):"";if(Vt)switch(Vt){case dataViewCtorString:return dataViewTag;case mapCtorString:return mapTag;case promiseCtorString:return promiseTag;case setCtorString:return setTag;case weakMapCtorString:return weakMapTag}return _e});var _getTag=getTag$1,Stack=_Stack,equalArrays=_equalArrays,equalByTag=_equalByTag,equalObjects=_equalObjects,getTag=_getTag,isArray$1=isArray_1,isBuffer=isBufferExports,isTypedArray$1=isTypedArray_1,COMPARE_PARTIAL_FLAG=1,argsTag="[object Arguments]",arrayTag="[object Array]",objectTag="[object Object]",objectProto$2=Object.prototype,hasOwnProperty$1=objectProto$2.hasOwnProperty;function baseIsEqualDeep$1(kt,_e,Dt,Vt,Gt,zt){var jt=isArray$1(kt),Ht=isArray$1(_e),Wt=jt?arrayTag:getTag(kt),qt=Ht?arrayTag:getTag(_e);Wt=Wt==argsTag?objectTag:Wt,qt=qt==argsTag?objectTag:qt;var Xt=Wt==objectTag,Kt=qt==objectTag,Yt=Wt==qt;if(Yt&&isBuffer(kt)){if(!isBuffer(_e))return!1;jt=!0,Xt=!1}if(Yt&&!Xt)return zt||(zt=new Stack),jt||isTypedArray$1(kt)?equalArrays(kt,_e,Dt,Vt,Gt,zt):equalByTag(kt,_e,Wt,Dt,Vt,Gt,zt);if(!(Dt&COMPARE_PARTIAL_FLAG)){var Zt=Xt&&hasOwnProperty$1.call(kt,"__wrapped__"),Jt=Kt&&hasOwnProperty$1.call(_e,"__wrapped__");if(Zt||Jt){var nn=Zt?kt.value():kt,rn=Jt?_e.value():_e;return zt||(zt=new Stack),Gt(nn,rn,Dt,Vt,zt)}}return Yt?(zt||(zt=new Stack),equalObjects(kt,_e,Dt,Vt,Gt,zt)):!1}var _baseIsEqualDeep=baseIsEqualDeep$1,baseIsEqualDeep=_baseIsEqualDeep,isObjectLike=isObjectLike_1;function baseIsEqual$1(kt,_e,Dt,Vt,Gt){return kt===_e?!0:kt==null||_e==null||!isObjectLike(kt)&&!isObjectLike(_e)?kt!==kt&&_e!==_e:baseIsEqualDeep(kt,_e,Dt,Vt,baseIsEqual$1,Gt)}var _baseIsEqual=baseIsEqual$1,baseIsEqual=_baseIsEqual;function isEqual(kt,_e){return baseIsEqual(kt,_e)}var isEqual_1$1=isEqual,quill={exports:{}};/*!
|
|
100
|
+
`+zt.stack}return{value:kt,source:_e,stack:Gt,digest:null}}function Li(kt,_e,Dt){return{value:kt,source:null,stack:Dt??null,digest:_e??null}}function Mi(kt,_e){try{console.error(_e.value)}catch(Dt){setTimeout(function(){throw Dt})}}var Ni=typeof WeakMap=="function"?WeakMap:Map;function Oi(kt,_e,Dt){Dt=ch(-1,Dt),Dt.tag=3,Dt.payload={element:null};var Vt=_e.value;return Dt.callback=function(){Pi||(Pi=!0,Qi=Vt),Mi(kt,_e)},Dt}function Ri(kt,_e,Dt){Dt=ch(-1,Dt),Dt.tag=3;var Vt=kt.type.getDerivedStateFromError;if(typeof Vt=="function"){var Gt=_e.value;Dt.payload=function(){return Vt(Gt)},Dt.callback=function(){Mi(kt,_e)}}var zt=kt.stateNode;return zt!==null&&typeof zt.componentDidCatch=="function"&&(Dt.callback=function(){Mi(kt,_e),typeof Vt!="function"&&(Si===null?Si=new Set([this]):Si.add(this));var jt=_e.stack;this.componentDidCatch(_e.value,{componentStack:jt!==null?jt:""})}),Dt}function Ti(kt,_e,Dt){var Vt=kt.pingCache;if(Vt===null){Vt=kt.pingCache=new Ni;var Gt=new Set;Vt.set(_e,Gt)}else Gt=Vt.get(_e),Gt===void 0&&(Gt=new Set,Vt.set(_e,Gt));Gt.has(Dt)||(Gt.add(Dt),kt=Ui.bind(null,kt,_e,Dt),_e.then(kt,kt))}function Vi(kt){do{var _e;if((_e=kt.tag===13)&&(_e=kt.memoizedState,_e=_e!==null?_e.dehydrated!==null:!0),_e)return kt;kt=kt.return}while(kt!==null);return null}function Wi(kt,_e,Dt,Vt,Gt){return kt.mode&1?(kt.flags|=65536,kt.lanes=Gt,kt):(kt===_e?kt.flags|=65536:(kt.flags|=128,Dt.flags|=131072,Dt.flags&=-52805,Dt.tag===1&&(Dt.alternate===null?Dt.tag=17:(_e=ch(-1,1),_e.tag=2,dh(Dt,_e,1))),Dt.lanes|=1),kt)}var Xi=ua.ReactCurrentOwner,Ug=!1;function Yi(kt,_e,Dt,Vt){_e.child=kt===null?Ch(_e,null,Dt,Vt):Bh(_e,kt.child,Dt,Vt)}function Zi(kt,_e,Dt,Vt,Gt){Dt=Dt.render;var zt=_e.ref;return Tg(_e,Gt),Vt=Xh(kt,_e,Dt,Vt,zt,Gt),Dt=bi(),kt!==null&&!Ug?(_e.updateQueue=kt.updateQueue,_e.flags&=-2053,kt.lanes&=~Gt,$i(kt,_e,Gt)):(I$1&&Dt&&vg(_e),_e.flags|=1,Yi(kt,_e,Vt,Gt),_e.child)}function aj(kt,_e,Dt,Vt,Gt){if(kt===null){var zt=Dt.type;return typeof zt=="function"&&!bj(zt)&&zt.defaultProps===void 0&&Dt.compare===null&&Dt.defaultProps===void 0?(_e.tag=15,_e.type=zt,cj(kt,_e,zt,Vt,Gt)):(kt=yh(Dt.type,null,Vt,_e,_e.mode,Gt),kt.ref=_e.ref,kt.return=_e,_e.child=kt)}if(zt=kt.child,!(kt.lanes&Gt)){var jt=zt.memoizedProps;if(Dt=Dt.compare,Dt=Dt!==null?Dt:Ie,Dt(jt,Vt)&&kt.ref===_e.ref)return $i(kt,_e,Gt)}return _e.flags|=1,kt=wh(zt,Vt),kt.ref=_e.ref,kt.return=_e,_e.child=kt}function cj(kt,_e,Dt,Vt,Gt){if(kt!==null){var zt=kt.memoizedProps;if(Ie(zt,Vt)&&kt.ref===_e.ref)if(Ug=!1,_e.pendingProps=Vt=zt,(kt.lanes&Gt)!==0)kt.flags&131072&&(Ug=!0);else return _e.lanes=kt.lanes,$i(kt,_e,Gt)}return dj(kt,_e,Dt,Vt,Gt)}function ej(kt,_e,Dt){var Vt=_e.pendingProps,Gt=Vt.children,zt=kt!==null?kt.memoizedState:null;if(Vt.mode==="hidden")if(!(_e.mode&1))_e.memoizedState={baseLanes:0,cachePool:null,transitions:null},G$1(fj,gj),gj|=Dt;else{if(!(Dt&1073741824))return kt=zt!==null?zt.baseLanes|Dt:Dt,_e.lanes=_e.childLanes=1073741824,_e.memoizedState={baseLanes:kt,cachePool:null,transitions:null},_e.updateQueue=null,G$1(fj,gj),gj|=kt,null;_e.memoizedState={baseLanes:0,cachePool:null,transitions:null},Vt=zt!==null?zt.baseLanes:Dt,G$1(fj,gj),gj|=Vt}else zt!==null?(Vt=zt.baseLanes|Dt,_e.memoizedState=null):Vt=Dt,G$1(fj,gj),gj|=Vt;return Yi(kt,_e,Gt,Dt),_e.child}function hj(kt,_e){var Dt=_e.ref;(kt===null&&Dt!==null||kt!==null&&kt.ref!==Dt)&&(_e.flags|=512,_e.flags|=2097152)}function dj(kt,_e,Dt,Vt,Gt){var zt=Zf(Dt)?Xf:H$1.current;return zt=Yf(_e,zt),Tg(_e,Gt),Dt=Xh(kt,_e,Dt,Vt,zt,Gt),Vt=bi(),kt!==null&&!Ug?(_e.updateQueue=kt.updateQueue,_e.flags&=-2053,kt.lanes&=~Gt,$i(kt,_e,Gt)):(I$1&&Vt&&vg(_e),_e.flags|=1,Yi(kt,_e,Dt,Gt),_e.child)}function ij(kt,_e,Dt,Vt,Gt){if(Zf(Dt)){var zt=!0;cg(_e)}else zt=!1;if(Tg(_e,Gt),_e.stateNode===null)jj(kt,_e),ph(_e,Dt,Vt),rh(_e,Dt,Vt,Gt),Vt=!0;else if(kt===null){var jt=_e.stateNode,Ht=_e.memoizedProps;jt.props=Ht;var Wt=jt.context,qt=Dt.contextType;typeof qt=="object"&&qt!==null?qt=Vg(qt):(qt=Zf(Dt)?Xf:H$1.current,qt=Yf(_e,qt));var Xt=Dt.getDerivedStateFromProps,Kt=typeof Xt=="function"||typeof jt.getSnapshotBeforeUpdate=="function";Kt||typeof jt.UNSAFE_componentWillReceiveProps!="function"&&typeof jt.componentWillReceiveProps!="function"||(Ht!==Vt||Wt!==qt)&&qh(_e,jt,Vt,qt),$g=!1;var Yt=_e.memoizedState;jt.state=Yt,gh(_e,Vt,jt,Gt),Wt=_e.memoizedState,Ht!==Vt||Yt!==Wt||Wf.current||$g?(typeof Xt=="function"&&(kh(_e,Dt,Xt,Vt),Wt=_e.memoizedState),(Ht=$g||oh(_e,Dt,Ht,Vt,Yt,Wt,qt))?(Kt||typeof jt.UNSAFE_componentWillMount!="function"&&typeof jt.componentWillMount!="function"||(typeof jt.componentWillMount=="function"&&jt.componentWillMount(),typeof jt.UNSAFE_componentWillMount=="function"&&jt.UNSAFE_componentWillMount()),typeof jt.componentDidMount=="function"&&(_e.flags|=4194308)):(typeof jt.componentDidMount=="function"&&(_e.flags|=4194308),_e.memoizedProps=Vt,_e.memoizedState=Wt),jt.props=Vt,jt.state=Wt,jt.context=qt,Vt=Ht):(typeof jt.componentDidMount=="function"&&(_e.flags|=4194308),Vt=!1)}else{jt=_e.stateNode,bh(kt,_e),Ht=_e.memoizedProps,qt=_e.type===_e.elementType?Ht:Lg(_e.type,Ht),jt.props=qt,Kt=_e.pendingProps,Yt=jt.context,Wt=Dt.contextType,typeof Wt=="object"&&Wt!==null?Wt=Vg(Wt):(Wt=Zf(Dt)?Xf:H$1.current,Wt=Yf(_e,Wt));var Zt=Dt.getDerivedStateFromProps;(Xt=typeof Zt=="function"||typeof jt.getSnapshotBeforeUpdate=="function")||typeof jt.UNSAFE_componentWillReceiveProps!="function"&&typeof jt.componentWillReceiveProps!="function"||(Ht!==Kt||Yt!==Wt)&&qh(_e,jt,Vt,Wt),$g=!1,Yt=_e.memoizedState,jt.state=Yt,gh(_e,Vt,jt,Gt);var Jt=_e.memoizedState;Ht!==Kt||Yt!==Jt||Wf.current||$g?(typeof Zt=="function"&&(kh(_e,Dt,Zt,Vt),Jt=_e.memoizedState),(qt=$g||oh(_e,Dt,qt,Vt,Yt,Jt,Wt)||!1)?(Xt||typeof jt.UNSAFE_componentWillUpdate!="function"&&typeof jt.componentWillUpdate!="function"||(typeof jt.componentWillUpdate=="function"&&jt.componentWillUpdate(Vt,Jt,Wt),typeof jt.UNSAFE_componentWillUpdate=="function"&&jt.UNSAFE_componentWillUpdate(Vt,Jt,Wt)),typeof jt.componentDidUpdate=="function"&&(_e.flags|=4),typeof jt.getSnapshotBeforeUpdate=="function"&&(_e.flags|=1024)):(typeof jt.componentDidUpdate!="function"||Ht===kt.memoizedProps&&Yt===kt.memoizedState||(_e.flags|=4),typeof jt.getSnapshotBeforeUpdate!="function"||Ht===kt.memoizedProps&&Yt===kt.memoizedState||(_e.flags|=1024),_e.memoizedProps=Vt,_e.memoizedState=Jt),jt.props=Vt,jt.state=Jt,jt.context=Wt,Vt=qt):(typeof jt.componentDidUpdate!="function"||Ht===kt.memoizedProps&&Yt===kt.memoizedState||(_e.flags|=4),typeof jt.getSnapshotBeforeUpdate!="function"||Ht===kt.memoizedProps&&Yt===kt.memoizedState||(_e.flags|=1024),Vt=!1)}return kj(kt,_e,Dt,Vt,zt,Gt)}function kj(kt,_e,Dt,Vt,Gt,zt){hj(kt,_e);var jt=(_e.flags&128)!==0;if(!Vt&&!jt)return Gt&&dg(_e,Dt,!1),$i(kt,_e,zt);Vt=_e.stateNode,Xi.current=_e;var Ht=jt&&typeof Dt.getDerivedStateFromError!="function"?null:Vt.render();return _e.flags|=1,kt!==null&&jt?(_e.child=Bh(_e,kt.child,null,zt),_e.child=Bh(_e,null,Ht,zt)):Yi(kt,_e,Ht,zt),_e.memoizedState=Vt.state,Gt&&dg(_e,Dt,!0),_e.child}function lj(kt){var _e=kt.stateNode;_e.pendingContext?ag(kt,_e.pendingContext,_e.pendingContext!==_e.context):_e.context&&ag(kt,_e.context,!1),Ih(kt,_e.containerInfo)}function mj(kt,_e,Dt,Vt,Gt){return Ig(),Jg(Gt),_e.flags|=256,Yi(kt,_e,Dt,Vt),_e.child}var nj={dehydrated:null,treeContext:null,retryLane:0};function oj(kt){return{baseLanes:kt,cachePool:null,transitions:null}}function pj(kt,_e,Dt){var Vt=_e.pendingProps,Gt=M$1.current,zt=!1,jt=(_e.flags&128)!==0,Ht;if((Ht=jt)||(Ht=kt!==null&&kt.memoizedState===null?!1:(Gt&2)!==0),Ht?(zt=!0,_e.flags&=-129):(kt===null||kt.memoizedState!==null)&&(Gt|=1),G$1(M$1,Gt&1),kt===null)return Eg(_e),kt=_e.memoizedState,kt!==null&&(kt=kt.dehydrated,kt!==null)?(_e.mode&1?kt.data==="$!"?_e.lanes=8:_e.lanes=1073741824:_e.lanes=1,null):(jt=Vt.children,kt=Vt.fallback,zt?(Vt=_e.mode,zt=_e.child,jt={mode:"hidden",children:jt},!(Vt&1)&&zt!==null?(zt.childLanes=0,zt.pendingProps=jt):zt=qj(jt,Vt,0,null),kt=Ah(kt,Vt,Dt,null),zt.return=_e,kt.return=_e,zt.sibling=kt,_e.child=zt,_e.child.memoizedState=oj(Dt),_e.memoizedState=nj,kt):rj(_e,jt));if(Gt=kt.memoizedState,Gt!==null&&(Ht=Gt.dehydrated,Ht!==null))return sj(kt,_e,jt,Vt,Ht,Gt,Dt);if(zt){zt=Vt.fallback,jt=_e.mode,Gt=kt.child,Ht=Gt.sibling;var Wt={mode:"hidden",children:Vt.children};return!(jt&1)&&_e.child!==Gt?(Vt=_e.child,Vt.childLanes=0,Vt.pendingProps=Wt,_e.deletions=null):(Vt=wh(Gt,Wt),Vt.subtreeFlags=Gt.subtreeFlags&14680064),Ht!==null?zt=wh(Ht,zt):(zt=Ah(zt,jt,Dt,null),zt.flags|=2),zt.return=_e,Vt.return=_e,Vt.sibling=zt,_e.child=Vt,Vt=zt,zt=_e.child,jt=kt.child.memoizedState,jt=jt===null?oj(Dt):{baseLanes:jt.baseLanes|Dt,cachePool:null,transitions:jt.transitions},zt.memoizedState=jt,zt.childLanes=kt.childLanes&~Dt,_e.memoizedState=nj,Vt}return zt=kt.child,kt=zt.sibling,Vt=wh(zt,{mode:"visible",children:Vt.children}),!(_e.mode&1)&&(Vt.lanes=Dt),Vt.return=_e,Vt.sibling=null,kt!==null&&(Dt=_e.deletions,Dt===null?(_e.deletions=[kt],_e.flags|=16):Dt.push(kt)),_e.child=Vt,_e.memoizedState=null,Vt}function rj(kt,_e){return _e=qj({mode:"visible",children:_e},kt.mode,0,null),_e.return=kt,kt.child=_e}function tj(kt,_e,Dt,Vt){return Vt!==null&&Jg(Vt),Bh(_e,kt.child,null,Dt),kt=rj(_e,_e.pendingProps.children),kt.flags|=2,_e.memoizedState=null,kt}function sj(kt,_e,Dt,Vt,Gt,zt,jt){if(Dt)return _e.flags&256?(_e.flags&=-257,Vt=Li(Error(p$3(422))),tj(kt,_e,jt,Vt)):_e.memoizedState!==null?(_e.child=kt.child,_e.flags|=128,null):(zt=Vt.fallback,Gt=_e.mode,Vt=qj({mode:"visible",children:Vt.children},Gt,0,null),zt=Ah(zt,Gt,jt,null),zt.flags|=2,Vt.return=_e,zt.return=_e,Vt.sibling=zt,_e.child=Vt,_e.mode&1&&Bh(_e,kt.child,null,jt),_e.child.memoizedState=oj(jt),_e.memoizedState=nj,zt);if(!(_e.mode&1))return tj(kt,_e,jt,null);if(Gt.data==="$!"){if(Vt=Gt.nextSibling&&Gt.nextSibling.dataset,Vt)var Ht=Vt.dgst;return Vt=Ht,zt=Error(p$3(419)),Vt=Li(zt,Vt,void 0),tj(kt,_e,jt,Vt)}if(Ht=(jt&kt.childLanes)!==0,Ug||Ht){if(Vt=R$1,Vt!==null){switch(jt&-jt){case 4:Gt=2;break;case 16:Gt=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:Gt=32;break;case 536870912:Gt=268435456;break;default:Gt=0}Gt=Gt&(Vt.suspendedLanes|jt)?0:Gt,Gt!==0&&Gt!==zt.retryLane&&(zt.retryLane=Gt,Zg(kt,Gt),mh(Vt,kt,Gt,-1))}return uj(),Vt=Li(Error(p$3(421))),tj(kt,_e,jt,Vt)}return Gt.data==="$?"?(_e.flags|=128,_e.child=kt.child,_e=vj.bind(null,kt),Gt._reactRetry=_e,null):(kt=zt.treeContext,yg=Lf(Gt.nextSibling),xg=_e,I$1=!0,zg=null,kt!==null&&(og[pg++]=rg,og[pg++]=sg,og[pg++]=qg,rg=kt.id,sg=kt.overflow,qg=_e),_e=rj(_e,Vt.children),_e.flags|=4096,_e)}function wj(kt,_e,Dt){kt.lanes|=_e;var Vt=kt.alternate;Vt!==null&&(Vt.lanes|=_e),Sg(kt.return,_e,Dt)}function xj(kt,_e,Dt,Vt,Gt){var zt=kt.memoizedState;zt===null?kt.memoizedState={isBackwards:_e,rendering:null,renderingStartTime:0,last:Vt,tail:Dt,tailMode:Gt}:(zt.isBackwards=_e,zt.rendering=null,zt.renderingStartTime=0,zt.last=Vt,zt.tail=Dt,zt.tailMode=Gt)}function yj(kt,_e,Dt){var Vt=_e.pendingProps,Gt=Vt.revealOrder,zt=Vt.tail;if(Yi(kt,_e,Vt.children,Dt),Vt=M$1.current,Vt&2)Vt=Vt&1|2,_e.flags|=128;else{if(kt!==null&&kt.flags&128)e:for(kt=_e.child;kt!==null;){if(kt.tag===13)kt.memoizedState!==null&&wj(kt,Dt,_e);else if(kt.tag===19)wj(kt,Dt,_e);else if(kt.child!==null){kt.child.return=kt,kt=kt.child;continue}if(kt===_e)break e;for(;kt.sibling===null;){if(kt.return===null||kt.return===_e)break e;kt=kt.return}kt.sibling.return=kt.return,kt=kt.sibling}Vt&=1}if(G$1(M$1,Vt),!(_e.mode&1))_e.memoizedState=null;else switch(Gt){case"forwards":for(Dt=_e.child,Gt=null;Dt!==null;)kt=Dt.alternate,kt!==null&&Mh(kt)===null&&(Gt=Dt),Dt=Dt.sibling;Dt=Gt,Dt===null?(Gt=_e.child,_e.child=null):(Gt=Dt.sibling,Dt.sibling=null),xj(_e,!1,Gt,Dt,zt);break;case"backwards":for(Dt=null,Gt=_e.child,_e.child=null;Gt!==null;){if(kt=Gt.alternate,kt!==null&&Mh(kt)===null){_e.child=Gt;break}kt=Gt.sibling,Gt.sibling=Dt,Dt=Gt,Gt=kt}xj(_e,!0,Dt,null,zt);break;case"together":xj(_e,!1,null,null,void 0);break;default:_e.memoizedState=null}return _e.child}function jj(kt,_e){!(_e.mode&1)&&kt!==null&&(kt.alternate=null,_e.alternate=null,_e.flags|=2)}function $i(kt,_e,Dt){if(kt!==null&&(_e.dependencies=kt.dependencies),hh|=_e.lanes,!(Dt&_e.childLanes))return null;if(kt!==null&&_e.child!==kt.child)throw Error(p$3(153));if(_e.child!==null){for(kt=_e.child,Dt=wh(kt,kt.pendingProps),_e.child=Dt,Dt.return=_e;kt.sibling!==null;)kt=kt.sibling,Dt=Dt.sibling=wh(kt,kt.pendingProps),Dt.return=_e;Dt.sibling=null}return _e.child}function zj(kt,_e,Dt){switch(_e.tag){case 3:lj(_e),Ig();break;case 5:Kh(_e);break;case 1:Zf(_e.type)&&cg(_e);break;case 4:Ih(_e,_e.stateNode.containerInfo);break;case 10:var Vt=_e.type._context,Gt=_e.memoizedProps.value;G$1(Mg,Vt._currentValue),Vt._currentValue=Gt;break;case 13:if(Vt=_e.memoizedState,Vt!==null)return Vt.dehydrated!==null?(G$1(M$1,M$1.current&1),_e.flags|=128,null):Dt&_e.child.childLanes?pj(kt,_e,Dt):(G$1(M$1,M$1.current&1),kt=$i(kt,_e,Dt),kt!==null?kt.sibling:null);G$1(M$1,M$1.current&1);break;case 19:if(Vt=(Dt&_e.childLanes)!==0,kt.flags&128){if(Vt)return yj(kt,_e,Dt);_e.flags|=128}if(Gt=_e.memoizedState,Gt!==null&&(Gt.rendering=null,Gt.tail=null,Gt.lastEffect=null),G$1(M$1,M$1.current),Vt)break;return null;case 22:case 23:return _e.lanes=0,ej(kt,_e,Dt)}return $i(kt,_e,Dt)}var Aj,Bj,Cj,Dj;Aj=function(kt,_e){for(var Dt=_e.child;Dt!==null;){if(Dt.tag===5||Dt.tag===6)kt.appendChild(Dt.stateNode);else if(Dt.tag!==4&&Dt.child!==null){Dt.child.return=Dt,Dt=Dt.child;continue}if(Dt===_e)break;for(;Dt.sibling===null;){if(Dt.return===null||Dt.return===_e)return;Dt=Dt.return}Dt.sibling.return=Dt.return,Dt=Dt.sibling}};Bj=function(){};Cj=function(kt,_e,Dt,Vt){var Gt=kt.memoizedProps;if(Gt!==Vt){kt=_e.stateNode,Hh(Eh.current);var zt=null;switch(Dt){case"input":Gt=Ya(kt,Gt),Vt=Ya(kt,Vt),zt=[];break;case"select":Gt=A({},Gt,{value:void 0}),Vt=A({},Vt,{value:void 0}),zt=[];break;case"textarea":Gt=gb(kt,Gt),Vt=gb(kt,Vt),zt=[];break;default:typeof Gt.onClick!="function"&&typeof Vt.onClick=="function"&&(kt.onclick=Bf)}ub(Dt,Vt);var jt;Dt=null;for(qt in Gt)if(!Vt.hasOwnProperty(qt)&&Gt.hasOwnProperty(qt)&&Gt[qt]!=null)if(qt==="style"){var Ht=Gt[qt];for(jt in Ht)Ht.hasOwnProperty(jt)&&(Dt||(Dt={}),Dt[jt]="")}else qt!=="dangerouslySetInnerHTML"&&qt!=="children"&&qt!=="suppressContentEditableWarning"&&qt!=="suppressHydrationWarning"&&qt!=="autoFocus"&&(ea.hasOwnProperty(qt)?zt||(zt=[]):(zt=zt||[]).push(qt,null));for(qt in Vt){var Wt=Vt[qt];if(Ht=Gt?.[qt],Vt.hasOwnProperty(qt)&&Wt!==Ht&&(Wt!=null||Ht!=null))if(qt==="style")if(Ht){for(jt in Ht)!Ht.hasOwnProperty(jt)||Wt&&Wt.hasOwnProperty(jt)||(Dt||(Dt={}),Dt[jt]="");for(jt in Wt)Wt.hasOwnProperty(jt)&&Ht[jt]!==Wt[jt]&&(Dt||(Dt={}),Dt[jt]=Wt[jt])}else Dt||(zt||(zt=[]),zt.push(qt,Dt)),Dt=Wt;else qt==="dangerouslySetInnerHTML"?(Wt=Wt?Wt.__html:void 0,Ht=Ht?Ht.__html:void 0,Wt!=null&&Ht!==Wt&&(zt=zt||[]).push(qt,Wt)):qt==="children"?typeof Wt!="string"&&typeof Wt!="number"||(zt=zt||[]).push(qt,""+Wt):qt!=="suppressContentEditableWarning"&&qt!=="suppressHydrationWarning"&&(ea.hasOwnProperty(qt)?(Wt!=null&&qt==="onScroll"&&D$1("scroll",kt),zt||Ht===Wt||(zt=[])):(zt=zt||[]).push(qt,Wt))}Dt&&(zt=zt||[]).push("style",Dt);var qt=zt;(_e.updateQueue=qt)&&(_e.flags|=4)}};Dj=function(kt,_e,Dt,Vt){Dt!==Vt&&(_e.flags|=4)};function Ej(kt,_e){if(!I$1)switch(kt.tailMode){case"hidden":_e=kt.tail;for(var Dt=null;_e!==null;)_e.alternate!==null&&(Dt=_e),_e=_e.sibling;Dt===null?kt.tail=null:Dt.sibling=null;break;case"collapsed":Dt=kt.tail;for(var Vt=null;Dt!==null;)Dt.alternate!==null&&(Vt=Dt),Dt=Dt.sibling;Vt===null?_e||kt.tail===null?kt.tail=null:kt.tail.sibling=null:Vt.sibling=null}}function S$1(kt){var _e=kt.alternate!==null&&kt.alternate.child===kt.child,Dt=0,Vt=0;if(_e)for(var Gt=kt.child;Gt!==null;)Dt|=Gt.lanes|Gt.childLanes,Vt|=Gt.subtreeFlags&14680064,Vt|=Gt.flags&14680064,Gt.return=kt,Gt=Gt.sibling;else for(Gt=kt.child;Gt!==null;)Dt|=Gt.lanes|Gt.childLanes,Vt|=Gt.subtreeFlags,Vt|=Gt.flags,Gt.return=kt,Gt=Gt.sibling;return kt.subtreeFlags|=Vt,kt.childLanes=Dt,_e}function Fj(kt,_e,Dt){var Vt=_e.pendingProps;switch(wg(_e),_e.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return S$1(_e),null;case 1:return Zf(_e.type)&&$f(),S$1(_e),null;case 3:return Vt=_e.stateNode,Jh(),E$1(Wf),E$1(H$1),Oh(),Vt.pendingContext&&(Vt.context=Vt.pendingContext,Vt.pendingContext=null),(kt===null||kt.child===null)&&(Gg(_e)?_e.flags|=4:kt===null||kt.memoizedState.isDehydrated&&!(_e.flags&256)||(_e.flags|=1024,zg!==null&&(Gj(zg),zg=null))),Bj(kt,_e),S$1(_e),null;case 5:Lh(_e);var Gt=Hh(Gh.current);if(Dt=_e.type,kt!==null&&_e.stateNode!=null)Cj(kt,_e,Dt,Vt,Gt),kt.ref!==_e.ref&&(_e.flags|=512,_e.flags|=2097152);else{if(!Vt){if(_e.stateNode===null)throw Error(p$3(166));return S$1(_e),null}if(kt=Hh(Eh.current),Gg(_e)){Vt=_e.stateNode,Dt=_e.type;var zt=_e.memoizedProps;switch(Vt[Of]=_e,Vt[Pf]=zt,kt=(_e.mode&1)!==0,Dt){case"dialog":D$1("cancel",Vt),D$1("close",Vt);break;case"iframe":case"object":case"embed":D$1("load",Vt);break;case"video":case"audio":for(Gt=0;Gt<lf.length;Gt++)D$1(lf[Gt],Vt);break;case"source":D$1("error",Vt);break;case"img":case"image":case"link":D$1("error",Vt),D$1("load",Vt);break;case"details":D$1("toggle",Vt);break;case"input":Za(Vt,zt),D$1("invalid",Vt);break;case"select":Vt._wrapperState={wasMultiple:!!zt.multiple},D$1("invalid",Vt);break;case"textarea":hb(Vt,zt),D$1("invalid",Vt)}ub(Dt,zt),Gt=null;for(var jt in zt)if(zt.hasOwnProperty(jt)){var Ht=zt[jt];jt==="children"?typeof Ht=="string"?Vt.textContent!==Ht&&(zt.suppressHydrationWarning!==!0&&Af(Vt.textContent,Ht,kt),Gt=["children",Ht]):typeof Ht=="number"&&Vt.textContent!==""+Ht&&(zt.suppressHydrationWarning!==!0&&Af(Vt.textContent,Ht,kt),Gt=["children",""+Ht]):ea.hasOwnProperty(jt)&&Ht!=null&&jt==="onScroll"&&D$1("scroll",Vt)}switch(Dt){case"input":Va(Vt),db(Vt,zt,!0);break;case"textarea":Va(Vt),jb(Vt);break;case"select":case"option":break;default:typeof zt.onClick=="function"&&(Vt.onclick=Bf)}Vt=Gt,_e.updateQueue=Vt,Vt!==null&&(_e.flags|=4)}else{jt=Gt.nodeType===9?Gt:Gt.ownerDocument,kt==="http://www.w3.org/1999/xhtml"&&(kt=kb(Dt)),kt==="http://www.w3.org/1999/xhtml"?Dt==="script"?(kt=jt.createElement("div"),kt.innerHTML="<script><\/script>",kt=kt.removeChild(kt.firstChild)):typeof Vt.is=="string"?kt=jt.createElement(Dt,{is:Vt.is}):(kt=jt.createElement(Dt),Dt==="select"&&(jt=kt,Vt.multiple?jt.multiple=!0:Vt.size&&(jt.size=Vt.size))):kt=jt.createElementNS(kt,Dt),kt[Of]=_e,kt[Pf]=Vt,Aj(kt,_e,!1,!1),_e.stateNode=kt;e:{switch(jt=vb(Dt,Vt),Dt){case"dialog":D$1("cancel",kt),D$1("close",kt),Gt=Vt;break;case"iframe":case"object":case"embed":D$1("load",kt),Gt=Vt;break;case"video":case"audio":for(Gt=0;Gt<lf.length;Gt++)D$1(lf[Gt],kt);Gt=Vt;break;case"source":D$1("error",kt),Gt=Vt;break;case"img":case"image":case"link":D$1("error",kt),D$1("load",kt),Gt=Vt;break;case"details":D$1("toggle",kt),Gt=Vt;break;case"input":Za(kt,Vt),Gt=Ya(kt,Vt),D$1("invalid",kt);break;case"option":Gt=Vt;break;case"select":kt._wrapperState={wasMultiple:!!Vt.multiple},Gt=A({},Vt,{value:void 0}),D$1("invalid",kt);break;case"textarea":hb(kt,Vt),Gt=gb(kt,Vt),D$1("invalid",kt);break;default:Gt=Vt}ub(Dt,Gt),Ht=Gt;for(zt in Ht)if(Ht.hasOwnProperty(zt)){var Wt=Ht[zt];zt==="style"?sb(kt,Wt):zt==="dangerouslySetInnerHTML"?(Wt=Wt?Wt.__html:void 0,Wt!=null&&nb(kt,Wt)):zt==="children"?typeof Wt=="string"?(Dt!=="textarea"||Wt!=="")&&ob(kt,Wt):typeof Wt=="number"&&ob(kt,""+Wt):zt!=="suppressContentEditableWarning"&&zt!=="suppressHydrationWarning"&&zt!=="autoFocus"&&(ea.hasOwnProperty(zt)?Wt!=null&&zt==="onScroll"&&D$1("scroll",kt):Wt!=null&&ta(kt,zt,Wt,jt))}switch(Dt){case"input":Va(kt),db(kt,Vt,!1);break;case"textarea":Va(kt),jb(kt);break;case"option":Vt.value!=null&&kt.setAttribute("value",""+Sa(Vt.value));break;case"select":kt.multiple=!!Vt.multiple,zt=Vt.value,zt!=null?fb(kt,!!Vt.multiple,zt,!1):Vt.defaultValue!=null&&fb(kt,!!Vt.multiple,Vt.defaultValue,!0);break;default:typeof Gt.onClick=="function"&&(kt.onclick=Bf)}switch(Dt){case"button":case"input":case"select":case"textarea":Vt=!!Vt.autoFocus;break e;case"img":Vt=!0;break e;default:Vt=!1}}Vt&&(_e.flags|=4)}_e.ref!==null&&(_e.flags|=512,_e.flags|=2097152)}return S$1(_e),null;case 6:if(kt&&_e.stateNode!=null)Dj(kt,_e,kt.memoizedProps,Vt);else{if(typeof Vt!="string"&&_e.stateNode===null)throw Error(p$3(166));if(Dt=Hh(Gh.current),Hh(Eh.current),Gg(_e)){if(Vt=_e.stateNode,Dt=_e.memoizedProps,Vt[Of]=_e,(zt=Vt.nodeValue!==Dt)&&(kt=xg,kt!==null))switch(kt.tag){case 3:Af(Vt.nodeValue,Dt,(kt.mode&1)!==0);break;case 5:kt.memoizedProps.suppressHydrationWarning!==!0&&Af(Vt.nodeValue,Dt,(kt.mode&1)!==0)}zt&&(_e.flags|=4)}else Vt=(Dt.nodeType===9?Dt:Dt.ownerDocument).createTextNode(Vt),Vt[Of]=_e,_e.stateNode=Vt}return S$1(_e),null;case 13:if(E$1(M$1),Vt=_e.memoizedState,kt===null||kt.memoizedState!==null&&kt.memoizedState.dehydrated!==null){if(I$1&&yg!==null&&_e.mode&1&&!(_e.flags&128))Hg(),Ig(),_e.flags|=98560,zt=!1;else if(zt=Gg(_e),Vt!==null&&Vt.dehydrated!==null){if(kt===null){if(!zt)throw Error(p$3(318));if(zt=_e.memoizedState,zt=zt!==null?zt.dehydrated:null,!zt)throw Error(p$3(317));zt[Of]=_e}else Ig(),!(_e.flags&128)&&(_e.memoizedState=null),_e.flags|=4;S$1(_e),zt=!1}else zg!==null&&(Gj(zg),zg=null),zt=!0;if(!zt)return _e.flags&65536?_e:null}return _e.flags&128?(_e.lanes=Dt,_e):(Vt=Vt!==null,Vt!==(kt!==null&&kt.memoizedState!==null)&&Vt&&(_e.child.flags|=8192,_e.mode&1&&(kt===null||M$1.current&1?T===0&&(T=3):uj())),_e.updateQueue!==null&&(_e.flags|=4),S$1(_e),null);case 4:return Jh(),Bj(kt,_e),kt===null&&sf(_e.stateNode.containerInfo),S$1(_e),null;case 10:return Rg(_e.type._context),S$1(_e),null;case 17:return Zf(_e.type)&&$f(),S$1(_e),null;case 19:if(E$1(M$1),zt=_e.memoizedState,zt===null)return S$1(_e),null;if(Vt=(_e.flags&128)!==0,jt=zt.rendering,jt===null)if(Vt)Ej(zt,!1);else{if(T!==0||kt!==null&&kt.flags&128)for(kt=_e.child;kt!==null;){if(jt=Mh(kt),jt!==null){for(_e.flags|=128,Ej(zt,!1),Vt=jt.updateQueue,Vt!==null&&(_e.updateQueue=Vt,_e.flags|=4),_e.subtreeFlags=0,Vt=Dt,Dt=_e.child;Dt!==null;)zt=Dt,kt=Vt,zt.flags&=14680066,jt=zt.alternate,jt===null?(zt.childLanes=0,zt.lanes=kt,zt.child=null,zt.subtreeFlags=0,zt.memoizedProps=null,zt.memoizedState=null,zt.updateQueue=null,zt.dependencies=null,zt.stateNode=null):(zt.childLanes=jt.childLanes,zt.lanes=jt.lanes,zt.child=jt.child,zt.subtreeFlags=0,zt.deletions=null,zt.memoizedProps=jt.memoizedProps,zt.memoizedState=jt.memoizedState,zt.updateQueue=jt.updateQueue,zt.type=jt.type,kt=jt.dependencies,zt.dependencies=kt===null?null:{lanes:kt.lanes,firstContext:kt.firstContext}),Dt=Dt.sibling;return G$1(M$1,M$1.current&1|2),_e.child}kt=kt.sibling}zt.tail!==null&&B$2()>Hj&&(_e.flags|=128,Vt=!0,Ej(zt,!1),_e.lanes=4194304)}else{if(!Vt)if(kt=Mh(jt),kt!==null){if(_e.flags|=128,Vt=!0,Dt=kt.updateQueue,Dt!==null&&(_e.updateQueue=Dt,_e.flags|=4),Ej(zt,!0),zt.tail===null&&zt.tailMode==="hidden"&&!jt.alternate&&!I$1)return S$1(_e),null}else 2*B$2()-zt.renderingStartTime>Hj&&Dt!==1073741824&&(_e.flags|=128,Vt=!0,Ej(zt,!1),_e.lanes=4194304);zt.isBackwards?(jt.sibling=_e.child,_e.child=jt):(Dt=zt.last,Dt!==null?Dt.sibling=jt:_e.child=jt,zt.last=jt)}return zt.tail!==null?(_e=zt.tail,zt.rendering=_e,zt.tail=_e.sibling,zt.renderingStartTime=B$2(),_e.sibling=null,Dt=M$1.current,G$1(M$1,Vt?Dt&1|2:Dt&1),_e):(S$1(_e),null);case 22:case 23:return Ij(),Vt=_e.memoizedState!==null,kt!==null&&kt.memoizedState!==null!==Vt&&(_e.flags|=8192),Vt&&_e.mode&1?gj&1073741824&&(S$1(_e),_e.subtreeFlags&6&&(_e.flags|=8192)):S$1(_e),null;case 24:return null;case 25:return null}throw Error(p$3(156,_e.tag))}function Jj(kt,_e){switch(wg(_e),_e.tag){case 1:return Zf(_e.type)&&$f(),kt=_e.flags,kt&65536?(_e.flags=kt&-65537|128,_e):null;case 3:return Jh(),E$1(Wf),E$1(H$1),Oh(),kt=_e.flags,kt&65536&&!(kt&128)?(_e.flags=kt&-65537|128,_e):null;case 5:return Lh(_e),null;case 13:if(E$1(M$1),kt=_e.memoizedState,kt!==null&&kt.dehydrated!==null){if(_e.alternate===null)throw Error(p$3(340));Ig()}return kt=_e.flags,kt&65536?(_e.flags=kt&-65537|128,_e):null;case 19:return E$1(M$1),null;case 4:return Jh(),null;case 10:return Rg(_e.type._context),null;case 22:case 23:return Ij(),null;case 24:return null;default:return null}}var Kj=!1,U$1=!1,Lj=typeof WeakSet=="function"?WeakSet:Set,V$2=null;function Mj(kt,_e){var Dt=kt.ref;if(Dt!==null)if(typeof Dt=="function")try{Dt(null)}catch(Vt){W$1(kt,_e,Vt)}else Dt.current=null}function Nj(kt,_e,Dt){try{Dt()}catch(Vt){W$1(kt,_e,Vt)}}var Oj=!1;function Pj(kt,_e){if(Cf=dd,kt=Me$1(),Ne$1(kt)){if("selectionStart"in kt)var Dt={start:kt.selectionStart,end:kt.selectionEnd};else e:{Dt=(Dt=kt.ownerDocument)&&Dt.defaultView||window;var Vt=Dt.getSelection&&Dt.getSelection();if(Vt&&Vt.rangeCount!==0){Dt=Vt.anchorNode;var Gt=Vt.anchorOffset,zt=Vt.focusNode;Vt=Vt.focusOffset;try{Dt.nodeType,zt.nodeType}catch{Dt=null;break e}var jt=0,Ht=-1,Wt=-1,qt=0,Xt=0,Kt=kt,Yt=null;t:for(;;){for(var Zt;Kt!==Dt||Gt!==0&&Kt.nodeType!==3||(Ht=jt+Gt),Kt!==zt||Vt!==0&&Kt.nodeType!==3||(Wt=jt+Vt),Kt.nodeType===3&&(jt+=Kt.nodeValue.length),(Zt=Kt.firstChild)!==null;)Yt=Kt,Kt=Zt;for(;;){if(Kt===kt)break t;if(Yt===Dt&&++qt===Gt&&(Ht=jt),Yt===zt&&++Xt===Vt&&(Wt=jt),(Zt=Kt.nextSibling)!==null)break;Kt=Yt,Yt=Kt.parentNode}Kt=Zt}Dt=Ht===-1||Wt===-1?null:{start:Ht,end:Wt}}else Dt=null}Dt=Dt||{start:0,end:0}}else Dt=null;for(Df={focusedElem:kt,selectionRange:Dt},dd=!1,V$2=_e;V$2!==null;)if(_e=V$2,kt=_e.child,(_e.subtreeFlags&1028)!==0&&kt!==null)kt.return=_e,V$2=kt;else for(;V$2!==null;){_e=V$2;try{var Jt=_e.alternate;if(_e.flags&1024)switch(_e.tag){case 0:case 11:case 15:break;case 1:if(Jt!==null){var nn=Jt.memoizedProps,rn=Jt.memoizedState,Qt=_e.stateNode,en=Qt.getSnapshotBeforeUpdate(_e.elementType===_e.type?nn:Lg(_e.type,nn),rn);Qt.__reactInternalSnapshotBeforeUpdate=en}break;case 3:var tn=_e.stateNode.containerInfo;tn.nodeType===1?tn.textContent="":tn.nodeType===9&&tn.documentElement&&tn.removeChild(tn.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(p$3(163))}}catch(sn){W$1(_e,_e.return,sn)}if(kt=_e.sibling,kt!==null){kt.return=_e.return,V$2=kt;break}V$2=_e.return}return Jt=Oj,Oj=!1,Jt}function Qj(kt,_e,Dt){var Vt=_e.updateQueue;if(Vt=Vt!==null?Vt.lastEffect:null,Vt!==null){var Gt=Vt=Vt.next;do{if((Gt.tag&kt)===kt){var zt=Gt.destroy;Gt.destroy=void 0,zt!==void 0&&Nj(_e,Dt,zt)}Gt=Gt.next}while(Gt!==Vt)}}function Rj(kt,_e){if(_e=_e.updateQueue,_e=_e!==null?_e.lastEffect:null,_e!==null){var Dt=_e=_e.next;do{if((Dt.tag&kt)===kt){var Vt=Dt.create;Dt.destroy=Vt()}Dt=Dt.next}while(Dt!==_e)}}function Sj(kt){var _e=kt.ref;if(_e!==null){var Dt=kt.stateNode;switch(kt.tag){case 5:kt=Dt;break;default:kt=Dt}typeof _e=="function"?_e(kt):_e.current=kt}}function Tj(kt){var _e=kt.alternate;_e!==null&&(kt.alternate=null,Tj(_e)),kt.child=null,kt.deletions=null,kt.sibling=null,kt.tag===5&&(_e=kt.stateNode,_e!==null&&(delete _e[Of],delete _e[Pf],delete _e[of],delete _e[Qf],delete _e[Rf])),kt.stateNode=null,kt.return=null,kt.dependencies=null,kt.memoizedProps=null,kt.memoizedState=null,kt.pendingProps=null,kt.stateNode=null,kt.updateQueue=null}function Uj(kt){return kt.tag===5||kt.tag===3||kt.tag===4}function Vj(kt){e:for(;;){for(;kt.sibling===null;){if(kt.return===null||Uj(kt.return))return null;kt=kt.return}for(kt.sibling.return=kt.return,kt=kt.sibling;kt.tag!==5&&kt.tag!==6&&kt.tag!==18;){if(kt.flags&2||kt.child===null||kt.tag===4)continue e;kt.child.return=kt,kt=kt.child}if(!(kt.flags&2))return kt.stateNode}}function Wj(kt,_e,Dt){var Vt=kt.tag;if(Vt===5||Vt===6)kt=kt.stateNode,_e?Dt.nodeType===8?Dt.parentNode.insertBefore(kt,_e):Dt.insertBefore(kt,_e):(Dt.nodeType===8?(_e=Dt.parentNode,_e.insertBefore(kt,Dt)):(_e=Dt,_e.appendChild(kt)),Dt=Dt._reactRootContainer,Dt!=null||_e.onclick!==null||(_e.onclick=Bf));else if(Vt!==4&&(kt=kt.child,kt!==null))for(Wj(kt,_e,Dt),kt=kt.sibling;kt!==null;)Wj(kt,_e,Dt),kt=kt.sibling}function Xj(kt,_e,Dt){var Vt=kt.tag;if(Vt===5||Vt===6)kt=kt.stateNode,_e?Dt.insertBefore(kt,_e):Dt.appendChild(kt);else if(Vt!==4&&(kt=kt.child,kt!==null))for(Xj(kt,_e,Dt),kt=kt.sibling;kt!==null;)Xj(kt,_e,Dt),kt=kt.sibling}var X$1=null,Yj=!1;function Zj(kt,_e,Dt){for(Dt=Dt.child;Dt!==null;)ak(kt,_e,Dt),Dt=Dt.sibling}function ak(kt,_e,Dt){if(lc$1&&typeof lc$1.onCommitFiberUnmount=="function")try{lc$1.onCommitFiberUnmount(kc,Dt)}catch{}switch(Dt.tag){case 5:U$1||Mj(Dt,_e);case 6:var Vt=X$1,Gt=Yj;X$1=null,Zj(kt,_e,Dt),X$1=Vt,Yj=Gt,X$1!==null&&(Yj?(kt=X$1,Dt=Dt.stateNode,kt.nodeType===8?kt.parentNode.removeChild(Dt):kt.removeChild(Dt)):X$1.removeChild(Dt.stateNode));break;case 18:X$1!==null&&(Yj?(kt=X$1,Dt=Dt.stateNode,kt.nodeType===8?Kf(kt.parentNode,Dt):kt.nodeType===1&&Kf(kt,Dt),bd(kt)):Kf(X$1,Dt.stateNode));break;case 4:Vt=X$1,Gt=Yj,X$1=Dt.stateNode.containerInfo,Yj=!0,Zj(kt,_e,Dt),X$1=Vt,Yj=Gt;break;case 0:case 11:case 14:case 15:if(!U$1&&(Vt=Dt.updateQueue,Vt!==null&&(Vt=Vt.lastEffect,Vt!==null))){Gt=Vt=Vt.next;do{var zt=Gt,jt=zt.destroy;zt=zt.tag,jt!==void 0&&(zt&2||zt&4)&&Nj(Dt,_e,jt),Gt=Gt.next}while(Gt!==Vt)}Zj(kt,_e,Dt);break;case 1:if(!U$1&&(Mj(Dt,_e),Vt=Dt.stateNode,typeof Vt.componentWillUnmount=="function"))try{Vt.props=Dt.memoizedProps,Vt.state=Dt.memoizedState,Vt.componentWillUnmount()}catch(Ht){W$1(Dt,_e,Ht)}Zj(kt,_e,Dt);break;case 21:Zj(kt,_e,Dt);break;case 22:Dt.mode&1?(U$1=(Vt=U$1)||Dt.memoizedState!==null,Zj(kt,_e,Dt),U$1=Vt):Zj(kt,_e,Dt);break;default:Zj(kt,_e,Dt)}}function bk(kt){var _e=kt.updateQueue;if(_e!==null){kt.updateQueue=null;var Dt=kt.stateNode;Dt===null&&(Dt=kt.stateNode=new Lj),_e.forEach(function(Vt){var Gt=ck.bind(null,kt,Vt);Dt.has(Vt)||(Dt.add(Vt),Vt.then(Gt,Gt))})}}function dk(kt,_e){var Dt=_e.deletions;if(Dt!==null)for(var Vt=0;Vt<Dt.length;Vt++){var Gt=Dt[Vt];try{var zt=kt,jt=_e,Ht=jt;e:for(;Ht!==null;){switch(Ht.tag){case 5:X$1=Ht.stateNode,Yj=!1;break e;case 3:X$1=Ht.stateNode.containerInfo,Yj=!0;break e;case 4:X$1=Ht.stateNode.containerInfo,Yj=!0;break e}Ht=Ht.return}if(X$1===null)throw Error(p$3(160));ak(zt,jt,Gt),X$1=null,Yj=!1;var Wt=Gt.alternate;Wt!==null&&(Wt.return=null),Gt.return=null}catch(qt){W$1(Gt,_e,qt)}}if(_e.subtreeFlags&12854)for(_e=_e.child;_e!==null;)ek(_e,kt),_e=_e.sibling}function ek(kt,_e){var Dt=kt.alternate,Vt=kt.flags;switch(kt.tag){case 0:case 11:case 14:case 15:if(dk(_e,kt),fk(kt),Vt&4){try{Qj(3,kt,kt.return),Rj(3,kt)}catch(nn){W$1(kt,kt.return,nn)}try{Qj(5,kt,kt.return)}catch(nn){W$1(kt,kt.return,nn)}}break;case 1:dk(_e,kt),fk(kt),Vt&512&&Dt!==null&&Mj(Dt,Dt.return);break;case 5:if(dk(_e,kt),fk(kt),Vt&512&&Dt!==null&&Mj(Dt,Dt.return),kt.flags&32){var Gt=kt.stateNode;try{ob(Gt,"")}catch(nn){W$1(kt,kt.return,nn)}}if(Vt&4&&(Gt=kt.stateNode,Gt!=null)){var zt=kt.memoizedProps,jt=Dt!==null?Dt.memoizedProps:zt,Ht=kt.type,Wt=kt.updateQueue;if(kt.updateQueue=null,Wt!==null)try{Ht==="input"&&zt.type==="radio"&&zt.name!=null&&ab(Gt,zt),vb(Ht,jt);var qt=vb(Ht,zt);for(jt=0;jt<Wt.length;jt+=2){var Xt=Wt[jt],Kt=Wt[jt+1];Xt==="style"?sb(Gt,Kt):Xt==="dangerouslySetInnerHTML"?nb(Gt,Kt):Xt==="children"?ob(Gt,Kt):ta(Gt,Xt,Kt,qt)}switch(Ht){case"input":bb(Gt,zt);break;case"textarea":ib(Gt,zt);break;case"select":var Yt=Gt._wrapperState.wasMultiple;Gt._wrapperState.wasMultiple=!!zt.multiple;var Zt=zt.value;Zt!=null?fb(Gt,!!zt.multiple,Zt,!1):Yt!==!!zt.multiple&&(zt.defaultValue!=null?fb(Gt,!!zt.multiple,zt.defaultValue,!0):fb(Gt,!!zt.multiple,zt.multiple?[]:"",!1))}Gt[Pf]=zt}catch(nn){W$1(kt,kt.return,nn)}}break;case 6:if(dk(_e,kt),fk(kt),Vt&4){if(kt.stateNode===null)throw Error(p$3(162));Gt=kt.stateNode,zt=kt.memoizedProps;try{Gt.nodeValue=zt}catch(nn){W$1(kt,kt.return,nn)}}break;case 3:if(dk(_e,kt),fk(kt),Vt&4&&Dt!==null&&Dt.memoizedState.isDehydrated)try{bd(_e.containerInfo)}catch(nn){W$1(kt,kt.return,nn)}break;case 4:dk(_e,kt),fk(kt);break;case 13:dk(_e,kt),fk(kt),Gt=kt.child,Gt.flags&8192&&(zt=Gt.memoizedState!==null,Gt.stateNode.isHidden=zt,!zt||Gt.alternate!==null&&Gt.alternate.memoizedState!==null||(gk=B$2())),Vt&4&&bk(kt);break;case 22:if(Xt=Dt!==null&&Dt.memoizedState!==null,kt.mode&1?(U$1=(qt=U$1)||Xt,dk(_e,kt),U$1=qt):dk(_e,kt),fk(kt),Vt&8192){if(qt=kt.memoizedState!==null,(kt.stateNode.isHidden=qt)&&!Xt&&kt.mode&1)for(V$2=kt,Xt=kt.child;Xt!==null;){for(Kt=V$2=Xt;V$2!==null;){switch(Yt=V$2,Zt=Yt.child,Yt.tag){case 0:case 11:case 14:case 15:Qj(4,Yt,Yt.return);break;case 1:Mj(Yt,Yt.return);var Jt=Yt.stateNode;if(typeof Jt.componentWillUnmount=="function"){Vt=Yt,Dt=Yt.return;try{_e=Vt,Jt.props=_e.memoizedProps,Jt.state=_e.memoizedState,Jt.componentWillUnmount()}catch(nn){W$1(Vt,Dt,nn)}}break;case 5:Mj(Yt,Yt.return);break;case 22:if(Yt.memoizedState!==null){hk(Kt);continue}}Zt!==null?(Zt.return=Yt,V$2=Zt):hk(Kt)}Xt=Xt.sibling}e:for(Xt=null,Kt=kt;;){if(Kt.tag===5){if(Xt===null){Xt=Kt;try{Gt=Kt.stateNode,qt?(zt=Gt.style,typeof zt.setProperty=="function"?zt.setProperty("display","none","important"):zt.display="none"):(Ht=Kt.stateNode,Wt=Kt.memoizedProps.style,jt=Wt!=null&&Wt.hasOwnProperty("display")?Wt.display:null,Ht.style.display=rb("display",jt))}catch(nn){W$1(kt,kt.return,nn)}}}else if(Kt.tag===6){if(Xt===null)try{Kt.stateNode.nodeValue=qt?"":Kt.memoizedProps}catch(nn){W$1(kt,kt.return,nn)}}else if((Kt.tag!==22&&Kt.tag!==23||Kt.memoizedState===null||Kt===kt)&&Kt.child!==null){Kt.child.return=Kt,Kt=Kt.child;continue}if(Kt===kt)break e;for(;Kt.sibling===null;){if(Kt.return===null||Kt.return===kt)break e;Xt===Kt&&(Xt=null),Kt=Kt.return}Xt===Kt&&(Xt=null),Kt.sibling.return=Kt.return,Kt=Kt.sibling}}break;case 19:dk(_e,kt),fk(kt),Vt&4&&bk(kt);break;case 21:break;default:dk(_e,kt),fk(kt)}}function fk(kt){var _e=kt.flags;if(_e&2){try{e:{for(var Dt=kt.return;Dt!==null;){if(Uj(Dt)){var Vt=Dt;break e}Dt=Dt.return}throw Error(p$3(160))}switch(Vt.tag){case 5:var Gt=Vt.stateNode;Vt.flags&32&&(ob(Gt,""),Vt.flags&=-33);var zt=Vj(kt);Xj(kt,zt,Gt);break;case 3:case 4:var jt=Vt.stateNode.containerInfo,Ht=Vj(kt);Wj(kt,Ht,jt);break;default:throw Error(p$3(161))}}catch(Wt){W$1(kt,kt.return,Wt)}kt.flags&=-3}_e&4096&&(kt.flags&=-4097)}function ik(kt,_e,Dt){V$2=kt,jk(kt)}function jk(kt,_e,Dt){for(var Vt=(kt.mode&1)!==0;V$2!==null;){var Gt=V$2,zt=Gt.child;if(Gt.tag===22&&Vt){var jt=Gt.memoizedState!==null||Kj;if(!jt){var Ht=Gt.alternate,Wt=Ht!==null&&Ht.memoizedState!==null||U$1;Ht=Kj;var qt=U$1;if(Kj=jt,(U$1=Wt)&&!qt)for(V$2=Gt;V$2!==null;)jt=V$2,Wt=jt.child,jt.tag===22&&jt.memoizedState!==null?kk(Gt):Wt!==null?(Wt.return=jt,V$2=Wt):kk(Gt);for(;zt!==null;)V$2=zt,jk(zt),zt=zt.sibling;V$2=Gt,Kj=Ht,U$1=qt}lk(kt)}else Gt.subtreeFlags&8772&&zt!==null?(zt.return=Gt,V$2=zt):lk(kt)}}function lk(kt){for(;V$2!==null;){var _e=V$2;if(_e.flags&8772){var Dt=_e.alternate;try{if(_e.flags&8772)switch(_e.tag){case 0:case 11:case 15:U$1||Rj(5,_e);break;case 1:var Vt=_e.stateNode;if(_e.flags&4&&!U$1)if(Dt===null)Vt.componentDidMount();else{var Gt=_e.elementType===_e.type?Dt.memoizedProps:Lg(_e.type,Dt.memoizedProps);Vt.componentDidUpdate(Gt,Dt.memoizedState,Vt.__reactInternalSnapshotBeforeUpdate)}var zt=_e.updateQueue;zt!==null&&ih(_e,zt,Vt);break;case 3:var jt=_e.updateQueue;if(jt!==null){if(Dt=null,_e.child!==null)switch(_e.child.tag){case 5:Dt=_e.child.stateNode;break;case 1:Dt=_e.child.stateNode}ih(_e,jt,Dt)}break;case 5:var Ht=_e.stateNode;if(Dt===null&&_e.flags&4){Dt=Ht;var Wt=_e.memoizedProps;switch(_e.type){case"button":case"input":case"select":case"textarea":Wt.autoFocus&&Dt.focus();break;case"img":Wt.src&&(Dt.src=Wt.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(_e.memoizedState===null){var qt=_e.alternate;if(qt!==null){var Xt=qt.memoizedState;if(Xt!==null){var Kt=Xt.dehydrated;Kt!==null&&bd(Kt)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(p$3(163))}U$1||_e.flags&512&&Sj(_e)}catch(Yt){W$1(_e,_e.return,Yt)}}if(_e===kt){V$2=null;break}if(Dt=_e.sibling,Dt!==null){Dt.return=_e.return,V$2=Dt;break}V$2=_e.return}}function hk(kt){for(;V$2!==null;){var _e=V$2;if(_e===kt){V$2=null;break}var Dt=_e.sibling;if(Dt!==null){Dt.return=_e.return,V$2=Dt;break}V$2=_e.return}}function kk(kt){for(;V$2!==null;){var _e=V$2;try{switch(_e.tag){case 0:case 11:case 15:var Dt=_e.return;try{Rj(4,_e)}catch(Wt){W$1(_e,Dt,Wt)}break;case 1:var Vt=_e.stateNode;if(typeof Vt.componentDidMount=="function"){var Gt=_e.return;try{Vt.componentDidMount()}catch(Wt){W$1(_e,Gt,Wt)}}var zt=_e.return;try{Sj(_e)}catch(Wt){W$1(_e,zt,Wt)}break;case 5:var jt=_e.return;try{Sj(_e)}catch(Wt){W$1(_e,jt,Wt)}}}catch(Wt){W$1(_e,_e.return,Wt)}if(_e===kt){V$2=null;break}var Ht=_e.sibling;if(Ht!==null){Ht.return=_e.return,V$2=Ht;break}V$2=_e.return}}var mk=Math.ceil,nk=ua.ReactCurrentDispatcher,ok=ua.ReactCurrentOwner,pk=ua.ReactCurrentBatchConfig,K$1=0,R$1=null,Y$1=null,Z$2=0,gj=0,fj=Uf(0),T=0,qk=null,hh=0,rk=0,sk=0,tk=null,uk=null,gk=0,Hj=1/0,vk=null,Pi=!1,Qi=null,Si=null,wk=!1,xk=null,yk=0,zk=0,Ak=null,Bk=-1,Ck=0;function L$1(){return K$1&6?B$2():Bk!==-1?Bk:Bk=B$2()}function lh(kt){return kt.mode&1?K$1&2&&Z$2!==0?Z$2&-Z$2:Kg.transition!==null?(Ck===0&&(Ck=yc()),Ck):(kt=C$1,kt!==0||(kt=window.event,kt=kt===void 0?16:jd(kt.type)),kt):1}function mh(kt,_e,Dt,Vt){if(50<zk)throw zk=0,Ak=null,Error(p$3(185));Ac(kt,Dt,Vt),(!(K$1&2)||kt!==R$1)&&(kt===R$1&&(!(K$1&2)&&(rk|=Dt),T===4&&Dk(kt,Z$2)),Ek(kt,Vt),Dt===1&&K$1===0&&!(_e.mode&1)&&(Hj=B$2()+500,fg&&jg()))}function Ek(kt,_e){var Dt=kt.callbackNode;wc(kt,_e);var Vt=uc(kt,kt===R$1?Z$2:0);if(Vt===0)Dt!==null&&bc(Dt),kt.callbackNode=null,kt.callbackPriority=0;else if(_e=Vt&-Vt,kt.callbackPriority!==_e){if(Dt!=null&&bc(Dt),_e===1)kt.tag===0?ig(Fk.bind(null,kt)):hg(Fk.bind(null,kt)),Jf(function(){!(K$1&6)&&jg()}),Dt=null;else{switch(Dc(Vt)){case 1:Dt=fc;break;case 4:Dt=gc;break;case 16:Dt=hc;break;case 536870912:Dt=jc;break;default:Dt=hc}Dt=Gk(Dt,Hk.bind(null,kt))}kt.callbackPriority=_e,kt.callbackNode=Dt}}function Hk(kt,_e){if(Bk=-1,Ck=0,K$1&6)throw Error(p$3(327));var Dt=kt.callbackNode;if(Ik()&&kt.callbackNode!==Dt)return null;var Vt=uc(kt,kt===R$1?Z$2:0);if(Vt===0)return null;if(Vt&30||Vt&kt.expiredLanes||_e)_e=Jk(kt,Vt);else{_e=Vt;var Gt=K$1;K$1|=2;var zt=Kk();(R$1!==kt||Z$2!==_e)&&(vk=null,Hj=B$2()+500,Lk(kt,_e));do try{Mk();break}catch(Ht){Nk(kt,Ht)}while(1);Qg(),nk.current=zt,K$1=Gt,Y$1!==null?_e=0:(R$1=null,Z$2=0,_e=T)}if(_e!==0){if(_e===2&&(Gt=xc(kt),Gt!==0&&(Vt=Gt,_e=Ok(kt,Gt))),_e===1)throw Dt=qk,Lk(kt,0),Dk(kt,Vt),Ek(kt,B$2()),Dt;if(_e===6)Dk(kt,Vt);else{if(Gt=kt.current.alternate,!(Vt&30)&&!Pk(Gt)&&(_e=Jk(kt,Vt),_e===2&&(zt=xc(kt),zt!==0&&(Vt=zt,_e=Ok(kt,zt))),_e===1))throw Dt=qk,Lk(kt,0),Dk(kt,Vt),Ek(kt,B$2()),Dt;switch(kt.finishedWork=Gt,kt.finishedLanes=Vt,_e){case 0:case 1:throw Error(p$3(345));case 2:Qk(kt,uk,vk);break;case 3:if(Dk(kt,Vt),(Vt&130023424)===Vt&&(_e=gk+500-B$2(),10<_e)){if(uc(kt,0)!==0)break;if(Gt=kt.suspendedLanes,(Gt&Vt)!==Vt){L$1(),kt.pingedLanes|=kt.suspendedLanes≫break}kt.timeoutHandle=Ff(Qk.bind(null,kt,uk,vk),_e);break}Qk(kt,uk,vk);break;case 4:if(Dk(kt,Vt),(Vt&4194240)===Vt)break;for(_e=kt.eventTimes,Gt=-1;0<Vt;){var jt=31-oc(Vt);zt=1<<jt,jt=_e[jt],jt>Gt&&(Gt=jt),Vt&=~zt}if(Vt=Gt,Vt=B$2()-Vt,Vt=(120>Vt?120:480>Vt?480:1080>Vt?1080:1920>Vt?1920:3e3>Vt?3e3:4320>Vt?4320:1960*mk(Vt/1960))-Vt,10<Vt){kt.timeoutHandle=Ff(Qk.bind(null,kt,uk,vk),Vt);break}Qk(kt,uk,vk);break;case 5:Qk(kt,uk,vk);break;default:throw Error(p$3(329))}}}return Ek(kt,B$2()),kt.callbackNode===Dt?Hk.bind(null,kt):null}function Ok(kt,_e){var Dt=tk;return kt.current.memoizedState.isDehydrated&&(Lk(kt,_e).flags|=256),kt=Jk(kt,_e),kt!==2&&(_e=uk,uk=Dt,_e!==null&&Gj(_e)),kt}function Gj(kt){uk===null?uk=kt:uk.push.apply(uk,kt)}function Pk(kt){for(var _e=kt;;){if(_e.flags&16384){var Dt=_e.updateQueue;if(Dt!==null&&(Dt=Dt.stores,Dt!==null))for(var Vt=0;Vt<Dt.length;Vt++){var Gt=Dt[Vt],zt=Gt.getSnapshot;Gt=Gt.value;try{if(!He(zt(),Gt))return!1}catch{return!1}}}if(Dt=_e.child,_e.subtreeFlags&16384&&Dt!==null)Dt.return=_e,_e=Dt;else{if(_e===kt)break;for(;_e.sibling===null;){if(_e.return===null||_e.return===kt)return!0;_e=_e.return}_e.sibling.return=_e.return,_e=_e.sibling}}return!0}function Dk(kt,_e){for(_e&=~sk,_e&=~rk,kt.suspendedLanes|=_e,kt.pingedLanes&=~_e,kt=kt.expirationTimes;0<_e;){var Dt=31-oc(_e),Vt=1<<Dt;kt[Dt]=-1,_e&=~Vt}}function Fk(kt){if(K$1&6)throw Error(p$3(327));Ik();var _e=uc(kt,0);if(!(_e&1))return Ek(kt,B$2()),null;var Dt=Jk(kt,_e);if(kt.tag!==0&&Dt===2){var Vt=xc(kt);Vt!==0&&(_e=Vt,Dt=Ok(kt,Vt))}if(Dt===1)throw Dt=qk,Lk(kt,0),Dk(kt,_e),Ek(kt,B$2()),Dt;if(Dt===6)throw Error(p$3(345));return kt.finishedWork=kt.current.alternate,kt.finishedLanes=_e,Qk(kt,uk,vk),Ek(kt,B$2()),null}function Rk(kt,_e){var Dt=K$1;K$1|=1;try{return kt(_e)}finally{K$1=Dt,K$1===0&&(Hj=B$2()+500,fg&&jg())}}function Sk(kt){xk!==null&&xk.tag===0&&!(K$1&6)&&Ik();var _e=K$1;K$1|=1;var Dt=pk.transition,Vt=C$1;try{if(pk.transition=null,C$1=1,kt)return kt()}finally{C$1=Vt,pk.transition=Dt,K$1=_e,!(K$1&6)&&jg()}}function Ij(){gj=fj.current,E$1(fj)}function Lk(kt,_e){kt.finishedWork=null,kt.finishedLanes=0;var Dt=kt.timeoutHandle;if(Dt!==-1&&(kt.timeoutHandle=-1,Gf(Dt)),Y$1!==null)for(Dt=Y$1.return;Dt!==null;){var Vt=Dt;switch(wg(Vt),Vt.tag){case 1:Vt=Vt.type.childContextTypes,Vt!=null&&$f();break;case 3:Jh(),E$1(Wf),E$1(H$1),Oh();break;case 5:Lh(Vt);break;case 4:Jh();break;case 13:E$1(M$1);break;case 19:E$1(M$1);break;case 10:Rg(Vt.type._context);break;case 22:case 23:Ij()}Dt=Dt.return}if(R$1=kt,Y$1=kt=wh(kt.current,null),Z$2=gj=_e,T=0,qk=null,sk=rk=hh=0,uk=tk=null,Wg!==null){for(_e=0;_e<Wg.length;_e++)if(Dt=Wg[_e],Vt=Dt.interleaved,Vt!==null){Dt.interleaved=null;var Gt=Vt.next,zt=Dt.pending;if(zt!==null){var jt=zt.next;zt.next=Gt,Vt.next=jt}Dt.pending=Vt}Wg=null}return kt}function Nk(kt,_e){do{var Dt=Y$1;try{if(Qg(),Ph.current=ai,Sh){for(var Vt=N$1.memoizedState;Vt!==null;){var Gt=Vt.queue;Gt!==null&&(Gt.pending=null),Vt=Vt.next}Sh=!1}if(Rh=0,P$1=O$1=N$1=null,Th=!1,Uh=0,ok.current=null,Dt===null||Dt.return===null){T=1,qk=_e,Y$1=null;break}e:{var zt=kt,jt=Dt.return,Ht=Dt,Wt=_e;if(_e=Z$2,Ht.flags|=32768,Wt!==null&&typeof Wt=="object"&&typeof Wt.then=="function"){var qt=Wt,Xt=Ht,Kt=Xt.tag;if(!(Xt.mode&1)&&(Kt===0||Kt===11||Kt===15)){var Yt=Xt.alternate;Yt?(Xt.updateQueue=Yt.updateQueue,Xt.memoizedState=Yt.memoizedState,Xt.lanes=Yt.lanes):(Xt.updateQueue=null,Xt.memoizedState=null)}var Zt=Vi(jt);if(Zt!==null){Zt.flags&=-257,Wi(Zt,jt,Ht,zt,_e),Zt.mode&1&&Ti(zt,qt,_e),_e=Zt,Wt=qt;var Jt=_e.updateQueue;if(Jt===null){var nn=new Set;nn.add(Wt),_e.updateQueue=nn}else Jt.add(Wt);break e}else{if(!(_e&1)){Ti(zt,qt,_e),uj();break e}Wt=Error(p$3(426))}}else if(I$1&&Ht.mode&1){var rn=Vi(jt);if(rn!==null){!(rn.flags&65536)&&(rn.flags|=256),Wi(rn,jt,Ht,zt,_e),Jg(Ki(Wt,Ht));break e}}zt=Wt=Ki(Wt,Ht),T!==4&&(T=2),tk===null?tk=[zt]:tk.push(zt),zt=jt;do{switch(zt.tag){case 3:zt.flags|=65536,_e&=-_e,zt.lanes|=_e;var Qt=Oi(zt,Wt,_e);fh(zt,Qt);break e;case 1:Ht=Wt;var en=zt.type,tn=zt.stateNode;if(!(zt.flags&128)&&(typeof en.getDerivedStateFromError=="function"||tn!==null&&typeof tn.componentDidCatch=="function"&&(Si===null||!Si.has(tn)))){zt.flags|=65536,_e&=-_e,zt.lanes|=_e;var sn=Ri(zt,Ht,_e);fh(zt,sn);break e}}zt=zt.return}while(zt!==null)}Tk(Dt)}catch(cn){_e=cn,Y$1===Dt&&Dt!==null&&(Y$1=Dt=Dt.return);continue}break}while(1)}function Kk(){var kt=nk.current;return nk.current=ai,kt===null?ai:kt}function uj(){(T===0||T===3||T===2)&&(T=4),R$1===null||!(hh&268435455)&&!(rk&268435455)||Dk(R$1,Z$2)}function Jk(kt,_e){var Dt=K$1;K$1|=2;var Vt=Kk();(R$1!==kt||Z$2!==_e)&&(vk=null,Lk(kt,_e));do try{Uk();break}catch(Gt){Nk(kt,Gt)}while(1);if(Qg(),K$1=Dt,nk.current=Vt,Y$1!==null)throw Error(p$3(261));return R$1=null,Z$2=0,T}function Uk(){for(;Y$1!==null;)Vk(Y$1)}function Mk(){for(;Y$1!==null&&!cc();)Vk(Y$1)}function Vk(kt){var _e=Wk(kt.alternate,kt,gj);kt.memoizedProps=kt.pendingProps,_e===null?Tk(kt):Y$1=_e,ok.current=null}function Tk(kt){var _e=kt;do{var Dt=_e.alternate;if(kt=_e.return,_e.flags&32768){if(Dt=Jj(Dt,_e),Dt!==null){Dt.flags&=32767,Y$1=Dt;return}if(kt!==null)kt.flags|=32768,kt.subtreeFlags=0,kt.deletions=null;else{T=6,Y$1=null;return}}else if(Dt=Fj(Dt,_e,gj),Dt!==null){Y$1=Dt;return}if(_e=_e.sibling,_e!==null){Y$1=_e;return}Y$1=_e=kt}while(_e!==null);T===0&&(T=5)}function Qk(kt,_e,Dt){var Vt=C$1,Gt=pk.transition;try{pk.transition=null,C$1=1,Xk(kt,_e,Dt,Vt)}finally{pk.transition=Gt,C$1=Vt}return null}function Xk(kt,_e,Dt,Vt){do Ik();while(xk!==null);if(K$1&6)throw Error(p$3(327));Dt=kt.finishedWork;var Gt=kt.finishedLanes;if(Dt===null)return null;if(kt.finishedWork=null,kt.finishedLanes=0,Dt===kt.current)throw Error(p$3(177));kt.callbackNode=null,kt.callbackPriority=0;var zt=Dt.lanes|Dt.childLanes;if(Bc(kt,zt),kt===R$1&&(Y$1=R$1=null,Z$2=0),!(Dt.subtreeFlags&2064)&&!(Dt.flags&2064)||wk||(wk=!0,Gk(hc,function(){return Ik(),null})),zt=(Dt.flags&15990)!==0,Dt.subtreeFlags&15990||zt){zt=pk.transition,pk.transition=null;var jt=C$1;C$1=1;var Ht=K$1;K$1|=4,ok.current=null,Pj(kt,Dt),ek(Dt,kt),Oe$1(Df),dd=!!Cf,Df=Cf=null,kt.current=Dt,ik(Dt),dc(),K$1=Ht,C$1=jt,pk.transition=zt}else kt.current=Dt;if(wk&&(wk=!1,xk=kt,yk=Gt),zt=kt.pendingLanes,zt===0&&(Si=null),mc(Dt.stateNode),Ek(kt,B$2()),_e!==null)for(Vt=kt.onRecoverableError,Dt=0;Dt<_e.length;Dt++)Gt=_e[Dt],Vt(Gt.value,{componentStack:Gt.stack,digest:Gt.digest});if(Pi)throw Pi=!1,kt=Qi,Qi=null,kt;return yk&1&&kt.tag!==0&&Ik(),zt=kt.pendingLanes,zt&1?kt===Ak?zk++:(zk=0,Ak=kt):zk=0,jg(),null}function Ik(){if(xk!==null){var kt=Dc(yk),_e=pk.transition,Dt=C$1;try{if(pk.transition=null,C$1=16>kt?16:kt,xk===null)var Vt=!1;else{if(kt=xk,xk=null,yk=0,K$1&6)throw Error(p$3(331));var Gt=K$1;for(K$1|=4,V$2=kt.current;V$2!==null;){var zt=V$2,jt=zt.child;if(V$2.flags&16){var Ht=zt.deletions;if(Ht!==null){for(var Wt=0;Wt<Ht.length;Wt++){var qt=Ht[Wt];for(V$2=qt;V$2!==null;){var Xt=V$2;switch(Xt.tag){case 0:case 11:case 15:Qj(8,Xt,zt)}var Kt=Xt.child;if(Kt!==null)Kt.return=Xt,V$2=Kt;else for(;V$2!==null;){Xt=V$2;var Yt=Xt.sibling,Zt=Xt.return;if(Tj(Xt),Xt===qt){V$2=null;break}if(Yt!==null){Yt.return=Zt,V$2=Yt;break}V$2=Zt}}}var Jt=zt.alternate;if(Jt!==null){var nn=Jt.child;if(nn!==null){Jt.child=null;do{var rn=nn.sibling;nn.sibling=null,nn=rn}while(nn!==null)}}V$2=zt}}if(zt.subtreeFlags&2064&&jt!==null)jt.return=zt,V$2=jt;else e:for(;V$2!==null;){if(zt=V$2,zt.flags&2048)switch(zt.tag){case 0:case 11:case 15:Qj(9,zt,zt.return)}var Qt=zt.sibling;if(Qt!==null){Qt.return=zt.return,V$2=Qt;break e}V$2=zt.return}}var en=kt.current;for(V$2=en;V$2!==null;){jt=V$2;var tn=jt.child;if(jt.subtreeFlags&2064&&tn!==null)tn.return=jt,V$2=tn;else e:for(jt=en;V$2!==null;){if(Ht=V$2,Ht.flags&2048)try{switch(Ht.tag){case 0:case 11:case 15:Rj(9,Ht)}}catch(cn){W$1(Ht,Ht.return,cn)}if(Ht===jt){V$2=null;break e}var sn=Ht.sibling;if(sn!==null){sn.return=Ht.return,V$2=sn;break e}V$2=Ht.return}}if(K$1=Gt,jg(),lc$1&&typeof lc$1.onPostCommitFiberRoot=="function")try{lc$1.onPostCommitFiberRoot(kc,kt)}catch{}Vt=!0}return Vt}finally{C$1=Dt,pk.transition=_e}}return!1}function Yk(kt,_e,Dt){_e=Ki(Dt,_e),_e=Oi(kt,_e,1),kt=dh(kt,_e,1),_e=L$1(),kt!==null&&(Ac(kt,1,_e),Ek(kt,_e))}function W$1(kt,_e,Dt){if(kt.tag===3)Yk(kt,kt,Dt);else for(;_e!==null;){if(_e.tag===3){Yk(_e,kt,Dt);break}else if(_e.tag===1){var Vt=_e.stateNode;if(typeof _e.type.getDerivedStateFromError=="function"||typeof Vt.componentDidCatch=="function"&&(Si===null||!Si.has(Vt))){kt=Ki(Dt,kt),kt=Ri(_e,kt,1),_e=dh(_e,kt,1),kt=L$1(),_e!==null&&(Ac(_e,1,kt),Ek(_e,kt));break}}_e=_e.return}}function Ui(kt,_e,Dt){var Vt=kt.pingCache;Vt!==null&&Vt.delete(_e),_e=L$1(),kt.pingedLanes|=kt.suspendedLanes&Dt,R$1===kt&&(Z$2&Dt)===Dt&&(T===4||T===3&&(Z$2&130023424)===Z$2&&500>B$2()-gk?Lk(kt,0):sk|=Dt),Ek(kt,_e)}function Zk(kt,_e){_e===0&&(kt.mode&1?(_e=sc,sc<<=1,!(sc&130023424)&&(sc=4194304)):_e=1);var Dt=L$1();kt=Zg(kt,_e),kt!==null&&(Ac(kt,_e,Dt),Ek(kt,Dt))}function vj(kt){var _e=kt.memoizedState,Dt=0;_e!==null&&(Dt=_e.retryLane),Zk(kt,Dt)}function ck(kt,_e){var Dt=0;switch(kt.tag){case 13:var Vt=kt.stateNode,Gt=kt.memoizedState;Gt!==null&&(Dt=Gt.retryLane);break;case 19:Vt=kt.stateNode;break;default:throw Error(p$3(314))}Vt!==null&&Vt.delete(_e),Zk(kt,Dt)}var Wk;Wk=function(kt,_e,Dt){if(kt!==null)if(kt.memoizedProps!==_e.pendingProps||Wf.current)Ug=!0;else{if(!(kt.lanes&Dt)&&!(_e.flags&128))return Ug=!1,zj(kt,_e,Dt);Ug=!!(kt.flags&131072)}else Ug=!1,I$1&&_e.flags&1048576&&ug(_e,ng,_e.index);switch(_e.lanes=0,_e.tag){case 2:var Vt=_e.type;jj(kt,_e),kt=_e.pendingProps;var Gt=Yf(_e,H$1.current);Tg(_e,Dt),Gt=Xh(null,_e,Vt,kt,Gt,Dt);var zt=bi();return _e.flags|=1,typeof Gt=="object"&&Gt!==null&&typeof Gt.render=="function"&&Gt.$$typeof===void 0?(_e.tag=1,_e.memoizedState=null,_e.updateQueue=null,Zf(Vt)?(zt=!0,cg(_e)):zt=!1,_e.memoizedState=Gt.state!==null&&Gt.state!==void 0?Gt.state:null,ah(_e),Gt.updater=nh,_e.stateNode=Gt,Gt._reactInternals=_e,rh(_e,Vt,kt,Dt),_e=kj(null,_e,Vt,!0,zt,Dt)):(_e.tag=0,I$1&&zt&&vg(_e),Yi(null,_e,Gt,Dt),_e=_e.child),_e;case 16:Vt=_e.elementType;e:{switch(jj(kt,_e),kt=_e.pendingProps,Gt=Vt._init,Vt=Gt(Vt._payload),_e.type=Vt,Gt=_e.tag=$k(Vt),kt=Lg(Vt,kt),Gt){case 0:_e=dj(null,_e,Vt,kt,Dt);break e;case 1:_e=ij(null,_e,Vt,kt,Dt);break e;case 11:_e=Zi(null,_e,Vt,kt,Dt);break e;case 14:_e=aj(null,_e,Vt,Lg(Vt.type,kt),Dt);break e}throw Error(p$3(306,Vt,""))}return _e;case 0:return Vt=_e.type,Gt=_e.pendingProps,Gt=_e.elementType===Vt?Gt:Lg(Vt,Gt),dj(kt,_e,Vt,Gt,Dt);case 1:return Vt=_e.type,Gt=_e.pendingProps,Gt=_e.elementType===Vt?Gt:Lg(Vt,Gt),ij(kt,_e,Vt,Gt,Dt);case 3:e:{if(lj(_e),kt===null)throw Error(p$3(387));Vt=_e.pendingProps,zt=_e.memoizedState,Gt=zt.element,bh(kt,_e),gh(_e,Vt,null,Dt);var jt=_e.memoizedState;if(Vt=jt.element,zt.isDehydrated)if(zt={element:Vt,isDehydrated:!1,cache:jt.cache,pendingSuspenseBoundaries:jt.pendingSuspenseBoundaries,transitions:jt.transitions},_e.updateQueue.baseState=zt,_e.memoizedState=zt,_e.flags&256){Gt=Ki(Error(p$3(423)),_e),_e=mj(kt,_e,Vt,Dt,Gt);break e}else if(Vt!==Gt){Gt=Ki(Error(p$3(424)),_e),_e=mj(kt,_e,Vt,Dt,Gt);break e}else for(yg=Lf(_e.stateNode.containerInfo.firstChild),xg=_e,I$1=!0,zg=null,Dt=Ch(_e,null,Vt,Dt),_e.child=Dt;Dt;)Dt.flags=Dt.flags&-3|4096,Dt=Dt.sibling;else{if(Ig(),Vt===Gt){_e=$i(kt,_e,Dt);break e}Yi(kt,_e,Vt,Dt)}_e=_e.child}return _e;case 5:return Kh(_e),kt===null&&Eg(_e),Vt=_e.type,Gt=_e.pendingProps,zt=kt!==null?kt.memoizedProps:null,jt=Gt.children,Ef(Vt,Gt)?jt=null:zt!==null&&Ef(Vt,zt)&&(_e.flags|=32),hj(kt,_e),Yi(kt,_e,jt,Dt),_e.child;case 6:return kt===null&&Eg(_e),null;case 13:return pj(kt,_e,Dt);case 4:return Ih(_e,_e.stateNode.containerInfo),Vt=_e.pendingProps,kt===null?_e.child=Bh(_e,null,Vt,Dt):Yi(kt,_e,Vt,Dt),_e.child;case 11:return Vt=_e.type,Gt=_e.pendingProps,Gt=_e.elementType===Vt?Gt:Lg(Vt,Gt),Zi(kt,_e,Vt,Gt,Dt);case 7:return Yi(kt,_e,_e.pendingProps,Dt),_e.child;case 8:return Yi(kt,_e,_e.pendingProps.children,Dt),_e.child;case 12:return Yi(kt,_e,_e.pendingProps.children,Dt),_e.child;case 10:e:{if(Vt=_e.type._context,Gt=_e.pendingProps,zt=_e.memoizedProps,jt=Gt.value,G$1(Mg,Vt._currentValue),Vt._currentValue=jt,zt!==null)if(He(zt.value,jt)){if(zt.children===Gt.children&&!Wf.current){_e=$i(kt,_e,Dt);break e}}else for(zt=_e.child,zt!==null&&(zt.return=_e);zt!==null;){var Ht=zt.dependencies;if(Ht!==null){jt=zt.child;for(var Wt=Ht.firstContext;Wt!==null;){if(Wt.context===Vt){if(zt.tag===1){Wt=ch(-1,Dt&-Dt),Wt.tag=2;var qt=zt.updateQueue;if(qt!==null){qt=qt.shared;var Xt=qt.pending;Xt===null?Wt.next=Wt:(Wt.next=Xt.next,Xt.next=Wt),qt.pending=Wt}}zt.lanes|=Dt,Wt=zt.alternate,Wt!==null&&(Wt.lanes|=Dt),Sg(zt.return,Dt,_e),Ht.lanes|=Dt;break}Wt=Wt.next}}else if(zt.tag===10)jt=zt.type===_e.type?null:zt.child;else if(zt.tag===18){if(jt=zt.return,jt===null)throw Error(p$3(341));jt.lanes|=Dt,Ht=jt.alternate,Ht!==null&&(Ht.lanes|=Dt),Sg(jt,Dt,_e),jt=zt.sibling}else jt=zt.child;if(jt!==null)jt.return=zt;else for(jt=zt;jt!==null;){if(jt===_e){jt=null;break}if(zt=jt.sibling,zt!==null){zt.return=jt.return,jt=zt;break}jt=jt.return}zt=jt}Yi(kt,_e,Gt.children,Dt),_e=_e.child}return _e;case 9:return Gt=_e.type,Vt=_e.pendingProps.children,Tg(_e,Dt),Gt=Vg(Gt),Vt=Vt(Gt),_e.flags|=1,Yi(kt,_e,Vt,Dt),_e.child;case 14:return Vt=_e.type,Gt=Lg(Vt,_e.pendingProps),Gt=Lg(Vt.type,Gt),aj(kt,_e,Vt,Gt,Dt);case 15:return cj(kt,_e,_e.type,_e.pendingProps,Dt);case 17:return Vt=_e.type,Gt=_e.pendingProps,Gt=_e.elementType===Vt?Gt:Lg(Vt,Gt),jj(kt,_e),_e.tag=1,Zf(Vt)?(kt=!0,cg(_e)):kt=!1,Tg(_e,Dt),ph(_e,Vt,Gt),rh(_e,Vt,Gt,Dt),kj(null,_e,Vt,!0,kt,Dt);case 19:return yj(kt,_e,Dt);case 22:return ej(kt,_e,Dt)}throw Error(p$3(156,_e.tag))};function Gk(kt,_e){return ac(kt,_e)}function al(kt,_e,Dt,Vt){this.tag=kt,this.key=Dt,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=_e,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=Vt,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Bg(kt,_e,Dt,Vt){return new al(kt,_e,Dt,Vt)}function bj(kt){return kt=kt.prototype,!(!kt||!kt.isReactComponent)}function $k(kt){if(typeof kt=="function")return bj(kt)?1:0;if(kt!=null){if(kt=kt.$$typeof,kt===Da)return 11;if(kt===Ga)return 14}return 2}function wh(kt,_e){var Dt=kt.alternate;return Dt===null?(Dt=Bg(kt.tag,_e,kt.key,kt.mode),Dt.elementType=kt.elementType,Dt.type=kt.type,Dt.stateNode=kt.stateNode,Dt.alternate=kt,kt.alternate=Dt):(Dt.pendingProps=_e,Dt.type=kt.type,Dt.flags=0,Dt.subtreeFlags=0,Dt.deletions=null),Dt.flags=kt.flags&14680064,Dt.childLanes=kt.childLanes,Dt.lanes=kt.lanes,Dt.child=kt.child,Dt.memoizedProps=kt.memoizedProps,Dt.memoizedState=kt.memoizedState,Dt.updateQueue=kt.updateQueue,_e=kt.dependencies,Dt.dependencies=_e===null?null:{lanes:_e.lanes,firstContext:_e.firstContext},Dt.sibling=kt.sibling,Dt.index=kt.index,Dt.ref=kt.ref,Dt}function yh(kt,_e,Dt,Vt,Gt,zt){var jt=2;if(Vt=kt,typeof kt=="function")bj(kt)&&(jt=1);else if(typeof kt=="string")jt=5;else e:switch(kt){case ya:return Ah(Dt.children,Gt,zt,_e);case za:jt=8,Gt|=8;break;case Aa:return kt=Bg(12,Dt,_e,Gt|2),kt.elementType=Aa,kt.lanes=zt,kt;case Ea:return kt=Bg(13,Dt,_e,Gt),kt.elementType=Ea,kt.lanes=zt,kt;case Fa:return kt=Bg(19,Dt,_e,Gt),kt.elementType=Fa,kt.lanes=zt,kt;case Ia:return qj(Dt,Gt,zt,_e);default:if(typeof kt=="object"&&kt!==null)switch(kt.$$typeof){case Ba:jt=10;break e;case Ca:jt=9;break e;case Da:jt=11;break e;case Ga:jt=14;break e;case Ha:jt=16,Vt=null;break e}throw Error(p$3(130,kt==null?kt:typeof kt,""))}return _e=Bg(jt,Dt,_e,Gt),_e.elementType=kt,_e.type=Vt,_e.lanes=zt,_e}function Ah(kt,_e,Dt,Vt){return kt=Bg(7,kt,Vt,_e),kt.lanes=Dt,kt}function qj(kt,_e,Dt,Vt){return kt=Bg(22,kt,Vt,_e),kt.elementType=Ia,kt.lanes=Dt,kt.stateNode={isHidden:!1},kt}function xh(kt,_e,Dt){return kt=Bg(6,kt,null,_e),kt.lanes=Dt,kt}function zh(kt,_e,Dt){return _e=Bg(4,kt.children!==null?kt.children:[],kt.key,_e),_e.lanes=Dt,_e.stateNode={containerInfo:kt.containerInfo,pendingChildren:null,implementation:kt.implementation},_e}function bl(kt,_e,Dt,Vt,Gt){this.tag=_e,this.containerInfo=kt,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=zc(0),this.expirationTimes=zc(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=zc(0),this.identifierPrefix=Vt,this.onRecoverableError=Gt,this.mutableSourceEagerHydrationData=null}function cl(kt,_e,Dt,Vt,Gt,zt,jt,Ht,Wt){return kt=new bl(kt,_e,Dt,Ht,Wt),_e===1?(_e=1,zt===!0&&(_e|=8)):_e=0,zt=Bg(3,null,null,_e),kt.current=zt,zt.stateNode=kt,zt.memoizedState={element:Vt,isDehydrated:Dt,cache:null,transitions:null,pendingSuspenseBoundaries:null},ah(zt),kt}function dl(kt,_e,Dt){var Vt=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:wa,key:Vt==null?null:""+Vt,children:kt,containerInfo:_e,implementation:Dt}}function el(kt){if(!kt)return Vf;kt=kt._reactInternals;e:{if(Vb(kt)!==kt||kt.tag!==1)throw Error(p$3(170));var _e=kt;do{switch(_e.tag){case 3:_e=_e.stateNode.context;break e;case 1:if(Zf(_e.type)){_e=_e.stateNode.__reactInternalMemoizedMergedChildContext;break e}}_e=_e.return}while(_e!==null);throw Error(p$3(171))}if(kt.tag===1){var Dt=kt.type;if(Zf(Dt))return bg(kt,Dt,_e)}return _e}function fl$2(kt,_e,Dt,Vt,Gt,zt,jt,Ht,Wt){return kt=cl(Dt,Vt,!0,kt,Gt,zt,jt,Ht,Wt),kt.context=el(null),Dt=kt.current,Vt=L$1(),Gt=lh(Dt),zt=ch(Vt,Gt),zt.callback=_e??null,dh(Dt,zt,Gt),kt.current.lanes=Gt,Ac(kt,Gt,Vt),Ek(kt,Vt),kt}function gl(kt,_e,Dt,Vt){var Gt=_e.current,zt=L$1(),jt=lh(Gt);return Dt=el(Dt),_e.context===null?_e.context=Dt:_e.pendingContext=Dt,_e=ch(zt,jt),_e.payload={element:kt},Vt=Vt===void 0?null:Vt,Vt!==null&&(_e.callback=Vt),kt=dh(Gt,_e,jt),kt!==null&&(mh(kt,Gt,jt,zt),eh(kt,Gt,jt)),jt}function hl(kt){if(kt=kt.current,!kt.child)return null;switch(kt.child.tag){case 5:return kt.child.stateNode;default:return kt.child.stateNode}}function il(kt,_e){if(kt=kt.memoizedState,kt!==null&&kt.dehydrated!==null){var Dt=kt.retryLane;kt.retryLane=Dt!==0&&Dt<_e?Dt:_e}}function jl(kt,_e){il(kt,_e),(kt=kt.alternate)&&il(kt,_e)}function kl(){return null}var ll=typeof reportError=="function"?reportError:function(kt){console.error(kt)};function ml(kt){this._internalRoot=kt}nl.prototype.render=ml.prototype.render=function(kt){var _e=this._internalRoot;if(_e===null)throw Error(p$3(409));gl(kt,_e,null,null)};nl.prototype.unmount=ml.prototype.unmount=function(){var kt=this._internalRoot;if(kt!==null){this._internalRoot=null;var _e=kt.containerInfo;Sk(function(){gl(null,kt,null,null)}),_e[uf]=null}};function nl(kt){this._internalRoot=kt}nl.prototype.unstable_scheduleHydration=function(kt){if(kt){var _e=Hc();kt={blockedOn:null,target:kt,priority:_e};for(var Dt=0;Dt<Qc.length&&_e!==0&&_e<Qc[Dt].priority;Dt++);Qc.splice(Dt,0,kt),Dt===0&&Vc(kt)}};function ol(kt){return!(!kt||kt.nodeType!==1&&kt.nodeType!==9&&kt.nodeType!==11)}function pl(kt){return!(!kt||kt.nodeType!==1&&kt.nodeType!==9&&kt.nodeType!==11&&(kt.nodeType!==8||kt.nodeValue!==" react-mount-point-unstable "))}function ql(){}function rl(kt,_e,Dt,Vt,Gt){if(Gt){if(typeof Vt=="function"){var zt=Vt;Vt=function(){var qt=hl(jt);zt.call(qt)}}var jt=fl$2(_e,Vt,kt,0,null,!1,!1,"",ql);return kt._reactRootContainer=jt,kt[uf]=jt.current,sf(kt.nodeType===8?kt.parentNode:kt),Sk(),jt}for(;Gt=kt.lastChild;)kt.removeChild(Gt);if(typeof Vt=="function"){var Ht=Vt;Vt=function(){var qt=hl(Wt);Ht.call(qt)}}var Wt=cl(kt,0,!1,null,null,!1,!1,"",ql);return kt._reactRootContainer=Wt,kt[uf]=Wt.current,sf(kt.nodeType===8?kt.parentNode:kt),Sk(function(){gl(_e,Wt,Dt,Vt)}),Wt}function sl(kt,_e,Dt,Vt,Gt){var zt=Dt._reactRootContainer;if(zt){var jt=zt;if(typeof Gt=="function"){var Ht=Gt;Gt=function(){var Wt=hl(jt);Ht.call(Wt)}}gl(_e,jt,kt,Gt)}else jt=rl(Dt,_e,kt,Gt,Vt);return hl(jt)}Ec=function(kt){switch(kt.tag){case 3:var _e=kt.stateNode;if(_e.current.memoizedState.isDehydrated){var Dt=tc(_e.pendingLanes);Dt!==0&&(Cc(_e,Dt|1),Ek(_e,B$2()),!(K$1&6)&&(Hj=B$2()+500,jg()))}break;case 13:Sk(function(){var Vt=Zg(kt,1);if(Vt!==null){var Gt=L$1();mh(Vt,kt,1,Gt)}}),jl(kt,1)}};Fc=function(kt){if(kt.tag===13){var _e=Zg(kt,134217728);if(_e!==null){var Dt=L$1();mh(_e,kt,134217728,Dt)}jl(kt,134217728)}};Gc=function(kt){if(kt.tag===13){var _e=lh(kt),Dt=Zg(kt,_e);if(Dt!==null){var Vt=L$1();mh(Dt,kt,_e,Vt)}jl(kt,_e)}};Hc=function(){return C$1};Ic=function(kt,_e){var Dt=C$1;try{return C$1=kt,_e()}finally{C$1=Dt}};yb=function(kt,_e,Dt){switch(_e){case"input":if(bb(kt,Dt),_e=Dt.name,Dt.type==="radio"&&_e!=null){for(Dt=kt;Dt.parentNode;)Dt=Dt.parentNode;for(Dt=Dt.querySelectorAll("input[name="+JSON.stringify(""+_e)+'][type="radio"]'),_e=0;_e<Dt.length;_e++){var Vt=Dt[_e];if(Vt!==kt&&Vt.form===kt.form){var Gt=Db(Vt);if(!Gt)throw Error(p$3(90));Wa(Vt),bb(Vt,Gt)}}}break;case"textarea":ib(kt,Dt);break;case"select":_e=Dt.value,_e!=null&&fb(kt,!!Dt.multiple,_e,!1)}};Gb=Rk;Hb=Sk;var tl={usingClientEntryPoint:!1,Events:[Cb,ue,Db,Eb,Fb,Rk]},ul={findFiberByHostInstance:Wc,bundleType:0,version:"18.2.0",rendererPackageName:"react-dom"},vl={bundleType:ul.bundleType,version:ul.version,rendererPackageName:ul.rendererPackageName,rendererConfig:ul.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:ua.ReactCurrentDispatcher,findHostInstanceByFiber:function(kt){return kt=Zb(kt),kt===null?null:kt.stateNode},findFiberByHostInstance:ul.findFiberByHostInstance||kl,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.2.0-next-9e3b772b8-20220608"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var wl=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!wl.isDisabled&&wl.supportsFiber)try{kc=wl.inject(vl),lc$1=wl}catch{}}reactDom_production_min.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=tl;reactDom_production_min.createPortal=function(kt,_e){var Dt=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!ol(_e))throw Error(p$3(200));return dl(kt,_e,null,Dt)};reactDom_production_min.createRoot=function(kt,_e){if(!ol(kt))throw Error(p$3(299));var Dt=!1,Vt="",Gt=ll;return _e!=null&&(_e.unstable_strictMode===!0&&(Dt=!0),_e.identifierPrefix!==void 0&&(Vt=_e.identifierPrefix),_e.onRecoverableError!==void 0&&(Gt=_e.onRecoverableError)),_e=cl(kt,1,!1,null,null,Dt,!1,Vt,Gt),kt[uf]=_e.current,sf(kt.nodeType===8?kt.parentNode:kt),new ml(_e)};reactDom_production_min.findDOMNode=function(kt){if(kt==null)return null;if(kt.nodeType===1)return kt;var _e=kt._reactInternals;if(_e===void 0)throw typeof kt.render=="function"?Error(p$3(188)):(kt=Object.keys(kt).join(","),Error(p$3(268,kt)));return kt=Zb(_e),kt=kt===null?null:kt.stateNode,kt};reactDom_production_min.flushSync=function(kt){return Sk(kt)};reactDom_production_min.hydrate=function(kt,_e,Dt){if(!pl(_e))throw Error(p$3(200));return sl(null,kt,_e,!0,Dt)};reactDom_production_min.hydrateRoot=function(kt,_e,Dt){if(!ol(kt))throw Error(p$3(405));var Vt=Dt!=null&&Dt.hydratedSources||null,Gt=!1,zt="",jt=ll;if(Dt!=null&&(Dt.unstable_strictMode===!0&&(Gt=!0),Dt.identifierPrefix!==void 0&&(zt=Dt.identifierPrefix),Dt.onRecoverableError!==void 0&&(jt=Dt.onRecoverableError)),_e=fl$2(_e,null,kt,1,Dt??null,Gt,!1,zt,jt),kt[uf]=_e.current,sf(kt),Vt)for(kt=0;kt<Vt.length;kt++)Dt=Vt[kt],Gt=Dt._getVersion,Gt=Gt(Dt._source),_e.mutableSourceEagerHydrationData==null?_e.mutableSourceEagerHydrationData=[Dt,Gt]:_e.mutableSourceEagerHydrationData.push(Dt,Gt);return new nl(_e)};reactDom_production_min.render=function(kt,_e,Dt){if(!pl(_e))throw Error(p$3(200));return sl(null,kt,_e,!1,Dt)};reactDom_production_min.unmountComponentAtNode=function(kt){if(!pl(kt))throw Error(p$3(40));return kt._reactRootContainer?(Sk(function(){sl(null,null,kt,!1,function(){kt._reactRootContainer=null,kt[uf]=null})}),!0):!1};reactDom_production_min.unstable_batchedUpdates=Rk;reactDom_production_min.unstable_renderSubtreeIntoContainer=function(kt,_e,Dt,Vt){if(!pl(Dt))throw Error(p$3(200));if(kt==null||kt._reactInternals===void 0)throw Error(p$3(38));return sl(kt,_e,Dt,!1,Vt)};reactDom_production_min.version="18.2.0-next-9e3b772b8-20220608";function checkDCE(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(checkDCE)}catch(kt){console.error(kt)}}checkDCE(),reactDom.exports=reactDom_production_min;var reactDomExports=reactDom.exports;function listCacheClear$1(){this.__data__=[],this.size=0}var _listCacheClear=listCacheClear$1;function eq$2(kt,_e){return kt===_e||kt!==kt&&_e!==_e}var eq_1=eq$2,eq$1=eq_1;function assocIndexOf$4(kt,_e){for(var Dt=kt.length;Dt--;)if(eq$1(kt[Dt][0],_e))return Dt;return-1}var _assocIndexOf=assocIndexOf$4,assocIndexOf$3=_assocIndexOf,arrayProto=Array.prototype,splice=arrayProto.splice;function listCacheDelete$1(kt){var _e=this.__data__,Dt=assocIndexOf$3(_e,kt);if(Dt<0)return!1;var Vt=_e.length-1;return Dt==Vt?_e.pop():splice.call(_e,Dt,1),--this.size,!0}var _listCacheDelete=listCacheDelete$1,assocIndexOf$2=_assocIndexOf;function listCacheGet$1(kt){var _e=this.__data__,Dt=assocIndexOf$2(_e,kt);return Dt<0?void 0:_e[Dt][1]}var _listCacheGet=listCacheGet$1,assocIndexOf$1=_assocIndexOf;function listCacheHas$1(kt){return assocIndexOf$1(this.__data__,kt)>-1}var _listCacheHas=listCacheHas$1,assocIndexOf=_assocIndexOf;function listCacheSet$1(kt,_e){var Dt=this.__data__,Vt=assocIndexOf(Dt,kt);return Vt<0?(++this.size,Dt.push([kt,_e])):Dt[Vt][1]=_e,this}var _listCacheSet=listCacheSet$1,listCacheClear=_listCacheClear,listCacheDelete=_listCacheDelete,listCacheGet=_listCacheGet,listCacheHas=_listCacheHas,listCacheSet=_listCacheSet;function ListCache$4(kt){var _e=-1,Dt=kt==null?0:kt.length;for(this.clear();++_e<Dt;){var Vt=kt[_e];this.set(Vt[0],Vt[1])}}ListCache$4.prototype.clear=listCacheClear;ListCache$4.prototype.delete=listCacheDelete;ListCache$4.prototype.get=listCacheGet;ListCache$4.prototype.has=listCacheHas;ListCache$4.prototype.set=listCacheSet;var _ListCache=ListCache$4,ListCache$3=_ListCache;function stackClear$1(){this.__data__=new ListCache$3,this.size=0}var _stackClear=stackClear$1;function stackDelete$1(kt){var _e=this.__data__,Dt=_e.delete(kt);return this.size=_e.size,Dt}var _stackDelete=stackDelete$1;function stackGet$1(kt){return this.__data__.get(kt)}var _stackGet=stackGet$1;function stackHas$1(kt){return this.__data__.has(kt)}var _stackHas=stackHas$1,freeGlobal$1=typeof commonjsGlobal=="object"&&commonjsGlobal&&commonjsGlobal.Object===Object&&commonjsGlobal,_freeGlobal=freeGlobal$1,freeGlobal=_freeGlobal,freeSelf=typeof self=="object"&&self&&self.Object===Object&&self,root$8=freeGlobal||freeSelf||Function("return this")(),_root=root$8,root$7=_root,Symbol$4=root$7.Symbol,_Symbol=Symbol$4,Symbol$3=_Symbol,objectProto$d=Object.prototype,hasOwnProperty$9=objectProto$d.hasOwnProperty,nativeObjectToString$1=objectProto$d.toString,symToStringTag$1=Symbol$3?Symbol$3.toStringTag:void 0;function getRawTag$1(kt){var _e=hasOwnProperty$9.call(kt,symToStringTag$1),Dt=kt[symToStringTag$1];try{kt[symToStringTag$1]=void 0;var Vt=!0}catch{}var Gt=nativeObjectToString$1.call(kt);return Vt&&(_e?kt[symToStringTag$1]=Dt:delete kt[symToStringTag$1]),Gt}var _getRawTag=getRawTag$1,objectProto$c=Object.prototype,nativeObjectToString=objectProto$c.toString;function objectToString$1(kt){return nativeObjectToString.call(kt)}var _objectToString=objectToString$1,Symbol$2=_Symbol,getRawTag=_getRawTag,objectToString=_objectToString,nullTag="[object Null]",undefinedTag="[object Undefined]",symToStringTag=Symbol$2?Symbol$2.toStringTag:void 0;function baseGetTag$4(kt){return kt==null?kt===void 0?undefinedTag:nullTag:symToStringTag&&symToStringTag in Object(kt)?getRawTag(kt):objectToString(kt)}var _baseGetTag=baseGetTag$4;function isObject$7(kt){var _e=typeof kt;return kt!=null&&(_e=="object"||_e=="function")}var isObject_1=isObject$7,baseGetTag$3=_baseGetTag,isObject$6=isObject_1,asyncTag="[object AsyncFunction]",funcTag$1="[object Function]",genTag="[object GeneratorFunction]",proxyTag="[object Proxy]";function isFunction$4(kt){if(!isObject$6(kt))return!1;var _e=baseGetTag$3(kt);return _e==funcTag$1||_e==genTag||_e==asyncTag||_e==proxyTag}var isFunction_1=isFunction$4,root$6=_root,coreJsData$1=root$6["__core-js_shared__"],_coreJsData=coreJsData$1,coreJsData=_coreJsData,maskSrcKey=function(){var kt=/[^.]+$/.exec(coreJsData&&coreJsData.keys&&coreJsData.keys.IE_PROTO||"");return kt?"Symbol(src)_1."+kt:""}();function isMasked$1(kt){return!!maskSrcKey&&maskSrcKey in kt}var _isMasked=isMasked$1,funcProto$1=Function.prototype,funcToString$1=funcProto$1.toString;function toSource$2(kt){if(kt!=null){try{return funcToString$1.call(kt)}catch{}try{return kt+""}catch{}}return""}var _toSource=toSource$2,isFunction$3=isFunction_1,isMasked=_isMasked,isObject$5=isObject_1,toSource$1=_toSource,reRegExpChar=/[\\^$.*+?()[\]{}|]/g,reIsHostCtor=/^\[object .+?Constructor\]$/,funcProto=Function.prototype,objectProto$b=Object.prototype,funcToString=funcProto.toString,hasOwnProperty$8=objectProto$b.hasOwnProperty,reIsNative=RegExp("^"+funcToString.call(hasOwnProperty$8).replace(reRegExpChar,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function baseIsNative$1(kt){if(!isObject$5(kt)||isMasked(kt))return!1;var _e=isFunction$3(kt)?reIsNative:reIsHostCtor;return _e.test(toSource$1(kt))}var _baseIsNative=baseIsNative$1;function getValue$1(kt,_e){return kt?.[_e]}var _getValue=getValue$1,baseIsNative=_baseIsNative,getValue=_getValue;function getNative$6(kt,_e){var Dt=getValue(kt,_e);return baseIsNative(Dt)?Dt:void 0}var _getNative=getNative$6,getNative$5=_getNative,root$5=_root,Map$4=getNative$5(root$5,"Map"),_Map=Map$4,getNative$4=_getNative,nativeCreate$5=getNative$4(Object,"create"),_nativeCreate=nativeCreate$5,nativeCreate$4=_nativeCreate;function hashClear$1(){this.__data__=nativeCreate$4?nativeCreate$4(null):{},this.size=0}var _hashClear=hashClear$1;function hashDelete$1(kt){var _e=this.has(kt)&&delete this.__data__[kt];return this.size-=_e?1:0,_e}var _hashDelete=hashDelete$1,nativeCreate$3=_nativeCreate,HASH_UNDEFINED$2="__lodash_hash_undefined__",objectProto$a=Object.prototype,hasOwnProperty$7=objectProto$a.hasOwnProperty;function hashGet$1(kt){var _e=this.__data__;if(nativeCreate$3){var Dt=_e[kt];return Dt===HASH_UNDEFINED$2?void 0:Dt}return hasOwnProperty$7.call(_e,kt)?_e[kt]:void 0}var _hashGet=hashGet$1,nativeCreate$2=_nativeCreate,objectProto$9=Object.prototype,hasOwnProperty$6=objectProto$9.hasOwnProperty;function hashHas$1(kt){var _e=this.__data__;return nativeCreate$2?_e[kt]!==void 0:hasOwnProperty$6.call(_e,kt)}var _hashHas=hashHas$1,nativeCreate$1=_nativeCreate,HASH_UNDEFINED$1="__lodash_hash_undefined__";function hashSet$1(kt,_e){var Dt=this.__data__;return this.size+=this.has(kt)?0:1,Dt[kt]=nativeCreate$1&&_e===void 0?HASH_UNDEFINED$1:_e,this}var _hashSet=hashSet$1,hashClear=_hashClear,hashDelete=_hashDelete,hashGet=_hashGet,hashHas=_hashHas,hashSet=_hashSet;function Hash$1(kt){var _e=-1,Dt=kt==null?0:kt.length;for(this.clear();++_e<Dt;){var Vt=kt[_e];this.set(Vt[0],Vt[1])}}Hash$1.prototype.clear=hashClear;Hash$1.prototype.delete=hashDelete;Hash$1.prototype.get=hashGet;Hash$1.prototype.has=hashHas;Hash$1.prototype.set=hashSet;var _Hash=Hash$1,Hash=_Hash,ListCache$2=_ListCache,Map$3=_Map;function mapCacheClear$1(){this.size=0,this.__data__={hash:new Hash,map:new(Map$3||ListCache$2),string:new Hash}}var _mapCacheClear=mapCacheClear$1;function isKeyable$1(kt){var _e=typeof kt;return _e=="string"||_e=="number"||_e=="symbol"||_e=="boolean"?kt!=="__proto__":kt===null}var _isKeyable=isKeyable$1,isKeyable=_isKeyable;function getMapData$4(kt,_e){var Dt=kt.__data__;return isKeyable(_e)?Dt[typeof _e=="string"?"string":"hash"]:Dt.map}var _getMapData=getMapData$4,getMapData$3=_getMapData;function mapCacheDelete$1(kt){var _e=getMapData$3(this,kt).delete(kt);return this.size-=_e?1:0,_e}var _mapCacheDelete=mapCacheDelete$1,getMapData$2=_getMapData;function mapCacheGet$1(kt){return getMapData$2(this,kt).get(kt)}var _mapCacheGet=mapCacheGet$1,getMapData$1=_getMapData;function mapCacheHas$1(kt){return getMapData$1(this,kt).has(kt)}var _mapCacheHas=mapCacheHas$1,getMapData=_getMapData;function mapCacheSet$1(kt,_e){var Dt=getMapData(this,kt),Vt=Dt.size;return Dt.set(kt,_e),this.size+=Dt.size==Vt?0:1,this}var _mapCacheSet=mapCacheSet$1,mapCacheClear=_mapCacheClear,mapCacheDelete=_mapCacheDelete,mapCacheGet=_mapCacheGet,mapCacheHas=_mapCacheHas,mapCacheSet=_mapCacheSet;function MapCache$2(kt){var _e=-1,Dt=kt==null?0:kt.length;for(this.clear();++_e<Dt;){var Vt=kt[_e];this.set(Vt[0],Vt[1])}}MapCache$2.prototype.clear=mapCacheClear;MapCache$2.prototype.delete=mapCacheDelete;MapCache$2.prototype.get=mapCacheGet;MapCache$2.prototype.has=mapCacheHas;MapCache$2.prototype.set=mapCacheSet;var _MapCache=MapCache$2,ListCache$1=_ListCache,Map$2=_Map,MapCache$1=_MapCache,LARGE_ARRAY_SIZE=200;function stackSet$1(kt,_e){var Dt=this.__data__;if(Dt instanceof ListCache$1){var Vt=Dt.__data__;if(!Map$2||Vt.length<LARGE_ARRAY_SIZE-1)return Vt.push([kt,_e]),this.size=++Dt.size,this;Dt=this.__data__=new MapCache$1(Vt)}return Dt.set(kt,_e),this.size=Dt.size,this}var _stackSet=stackSet$1,ListCache=_ListCache,stackClear=_stackClear,stackDelete=_stackDelete,stackGet=_stackGet,stackHas=_stackHas,stackSet=_stackSet;function Stack$1(kt){var _e=this.__data__=new ListCache(kt);this.size=_e.size}Stack$1.prototype.clear=stackClear;Stack$1.prototype.delete=stackDelete;Stack$1.prototype.get=stackGet;Stack$1.prototype.has=stackHas;Stack$1.prototype.set=stackSet;var _Stack=Stack$1,HASH_UNDEFINED="__lodash_hash_undefined__";function setCacheAdd$1(kt){return this.__data__.set(kt,HASH_UNDEFINED),this}var _setCacheAdd=setCacheAdd$1;function setCacheHas$1(kt){return this.__data__.has(kt)}var _setCacheHas=setCacheHas$1,MapCache=_MapCache,setCacheAdd=_setCacheAdd,setCacheHas=_setCacheHas;function SetCache$1(kt){var _e=-1,Dt=kt==null?0:kt.length;for(this.__data__=new MapCache;++_e<Dt;)this.add(kt[_e])}SetCache$1.prototype.add=SetCache$1.prototype.push=setCacheAdd;SetCache$1.prototype.has=setCacheHas;var _SetCache=SetCache$1;function arraySome$1(kt,_e){for(var Dt=-1,Vt=kt==null?0:kt.length;++Dt<Vt;)if(_e(kt[Dt],Dt,kt))return!0;return!1}var _arraySome=arraySome$1;function cacheHas$1(kt,_e){return kt.has(_e)}var _cacheHas=cacheHas$1,SetCache=_SetCache,arraySome=_arraySome,cacheHas=_cacheHas,COMPARE_PARTIAL_FLAG$3=1,COMPARE_UNORDERED_FLAG$1=2;function equalArrays$2(kt,_e,Dt,Vt,Gt,zt){var jt=Dt&COMPARE_PARTIAL_FLAG$3,Ht=kt.length,Wt=_e.length;if(Ht!=Wt&&!(jt&&Wt>Ht))return!1;var qt=zt.get(kt),Xt=zt.get(_e);if(qt&&Xt)return qt==_e&&Xt==kt;var Kt=-1,Yt=!0,Zt=Dt&COMPARE_UNORDERED_FLAG$1?new SetCache:void 0;for(zt.set(kt,_e),zt.set(_e,kt);++Kt<Ht;){var Jt=kt[Kt],nn=_e[Kt];if(Vt)var rn=jt?Vt(nn,Jt,Kt,_e,kt,zt):Vt(Jt,nn,Kt,kt,_e,zt);if(rn!==void 0){if(rn)continue;Yt=!1;break}if(Zt){if(!arraySome(_e,function(Qt,en){if(!cacheHas(Zt,en)&&(Jt===Qt||Gt(Jt,Qt,Dt,Vt,zt)))return Zt.push(en)})){Yt=!1;break}}else if(!(Jt===nn||Gt(Jt,nn,Dt,Vt,zt))){Yt=!1;break}}return zt.delete(kt),zt.delete(_e),Yt}var _equalArrays=equalArrays$2,root$4=_root,Uint8Array$2=root$4.Uint8Array,_Uint8Array=Uint8Array$2;function mapToArray$1(kt){var _e=-1,Dt=Array(kt.size);return kt.forEach(function(Vt,Gt){Dt[++_e]=[Gt,Vt]}),Dt}var _mapToArray=mapToArray$1;function setToArray$1(kt){var _e=-1,Dt=Array(kt.size);return kt.forEach(function(Vt){Dt[++_e]=Vt}),Dt}var _setToArray=setToArray$1,Symbol$1=_Symbol,Uint8Array$1=_Uint8Array,eq=eq_1,equalArrays$1=_equalArrays,mapToArray=_mapToArray,setToArray=_setToArray,COMPARE_PARTIAL_FLAG$2=1,COMPARE_UNORDERED_FLAG=2,boolTag$1="[object Boolean]",dateTag$1="[object Date]",errorTag$1="[object Error]",mapTag$2="[object Map]",numberTag$1="[object Number]",regexpTag$1="[object RegExp]",setTag$2="[object Set]",stringTag$1="[object String]",symbolTag="[object Symbol]",arrayBufferTag$1="[object ArrayBuffer]",dataViewTag$2="[object DataView]",symbolProto=Symbol$1?Symbol$1.prototype:void 0,symbolValueOf=symbolProto?symbolProto.valueOf:void 0;function equalByTag$1(kt,_e,Dt,Vt,Gt,zt,jt){switch(Dt){case dataViewTag$2:if(kt.byteLength!=_e.byteLength||kt.byteOffset!=_e.byteOffset)return!1;kt=kt.buffer,_e=_e.buffer;case arrayBufferTag$1:return!(kt.byteLength!=_e.byteLength||!zt(new Uint8Array$1(kt),new Uint8Array$1(_e)));case boolTag$1:case dateTag$1:case numberTag$1:return eq(+kt,+_e);case errorTag$1:return kt.name==_e.name&&kt.message==_e.message;case regexpTag$1:case stringTag$1:return kt==_e+"";case mapTag$2:var Ht=mapToArray;case setTag$2:var Wt=Vt&COMPARE_PARTIAL_FLAG$2;if(Ht||(Ht=setToArray),kt.size!=_e.size&&!Wt)return!1;var qt=jt.get(kt);if(qt)return qt==_e;Vt|=COMPARE_UNORDERED_FLAG,jt.set(kt,_e);var Xt=equalArrays$1(Ht(kt),Ht(_e),Vt,Gt,zt,jt);return jt.delete(kt),Xt;case symbolTag:if(symbolValueOf)return symbolValueOf.call(kt)==symbolValueOf.call(_e)}return!1}var _equalByTag=equalByTag$1;function arrayPush$1(kt,_e){for(var Dt=-1,Vt=_e.length,Gt=kt.length;++Dt<Vt;)kt[Gt+Dt]=_e[Dt];return kt}var _arrayPush=arrayPush$1,isArray$4=Array.isArray,isArray_1=isArray$4,arrayPush=_arrayPush,isArray$3=isArray_1;function baseGetAllKeys$1(kt,_e,Dt){var Vt=_e(kt);return isArray$3(kt)?Vt:arrayPush(Vt,Dt(kt))}var _baseGetAllKeys=baseGetAllKeys$1;function arrayFilter$1(kt,_e){for(var Dt=-1,Vt=kt==null?0:kt.length,Gt=0,zt=[];++Dt<Vt;){var jt=kt[Dt];_e(jt,Dt,kt)&&(zt[Gt++]=jt)}return zt}var _arrayFilter=arrayFilter$1;function stubArray$1(){return[]}var stubArray_1=stubArray$1,arrayFilter=_arrayFilter,stubArray=stubArray_1,objectProto$8=Object.prototype,propertyIsEnumerable$1=objectProto$8.propertyIsEnumerable,nativeGetSymbols=Object.getOwnPropertySymbols,getSymbols$1=nativeGetSymbols?function(kt){return kt==null?[]:(kt=Object(kt),arrayFilter(nativeGetSymbols(kt),function(_e){return propertyIsEnumerable$1.call(kt,_e)}))}:stubArray,_getSymbols=getSymbols$1;function baseTimes$1(kt,_e){for(var Dt=-1,Vt=Array(kt);++Dt<kt;)Vt[Dt]=_e(Dt);return Vt}var _baseTimes=baseTimes$1;function isObjectLike$4(kt){return kt!=null&&typeof kt=="object"}var isObjectLike_1=isObjectLike$4,baseGetTag$2=_baseGetTag,isObjectLike$3=isObjectLike_1,argsTag$2="[object Arguments]";function baseIsArguments$1(kt){return isObjectLike$3(kt)&&baseGetTag$2(kt)==argsTag$2}var _baseIsArguments=baseIsArguments$1,baseIsArguments=_baseIsArguments,isObjectLike$2=isObjectLike_1,objectProto$7=Object.prototype,hasOwnProperty$5=objectProto$7.hasOwnProperty,propertyIsEnumerable=objectProto$7.propertyIsEnumerable,isArguments$1=baseIsArguments(function(){return arguments}())?baseIsArguments:function(kt){return isObjectLike$2(kt)&&hasOwnProperty$5.call(kt,"callee")&&!propertyIsEnumerable.call(kt,"callee")},isArguments_1=isArguments$1,isBuffer$2={exports:{}};function stubFalse(){return!1}var stubFalse_1=stubFalse;isBuffer$2.exports;(function(kt,_e){var Dt=_root,Vt=stubFalse_1,Gt=_e&&!_e.nodeType&&_e,zt=Gt&&!0&&kt&&!kt.nodeType&&kt,jt=zt&&zt.exports===Gt,Ht=jt?Dt.Buffer:void 0,Wt=Ht?Ht.isBuffer:void 0,qt=Wt||Vt;kt.exports=qt})(isBuffer$2,isBuffer$2.exports);var isBufferExports=isBuffer$2.exports,MAX_SAFE_INTEGER$1=9007199254740991,reIsUint=/^(?:0|[1-9]\d*)$/;function isIndex$1(kt,_e){var Dt=typeof kt;return _e=_e??MAX_SAFE_INTEGER$1,!!_e&&(Dt=="number"||Dt!="symbol"&&reIsUint.test(kt))&&kt>-1&&kt%1==0&&kt<_e}var _isIndex=isIndex$1,MAX_SAFE_INTEGER=9007199254740991;function isLength$2(kt){return typeof kt=="number"&&kt>-1&&kt%1==0&&kt<=MAX_SAFE_INTEGER}var isLength_1=isLength$2,baseGetTag$1=_baseGetTag,isLength$1=isLength_1,isObjectLike$1=isObjectLike_1,argsTag$1="[object Arguments]",arrayTag$1="[object Array]",boolTag="[object Boolean]",dateTag="[object Date]",errorTag="[object Error]",funcTag="[object Function]",mapTag$1="[object Map]",numberTag="[object Number]",objectTag$2="[object Object]",regexpTag="[object RegExp]",setTag$1="[object Set]",stringTag="[object String]",weakMapTag$1="[object WeakMap]",arrayBufferTag="[object ArrayBuffer]",dataViewTag$1="[object DataView]",float32Tag="[object Float32Array]",float64Tag="[object Float64Array]",int8Tag="[object Int8Array]",int16Tag="[object Int16Array]",int32Tag="[object Int32Array]",uint8Tag="[object Uint8Array]",uint8ClampedTag="[object Uint8ClampedArray]",uint16Tag="[object Uint16Array]",uint32Tag="[object Uint32Array]",typedArrayTags={};typedArrayTags[float32Tag]=typedArrayTags[float64Tag]=typedArrayTags[int8Tag]=typedArrayTags[int16Tag]=typedArrayTags[int32Tag]=typedArrayTags[uint8Tag]=typedArrayTags[uint8ClampedTag]=typedArrayTags[uint16Tag]=typedArrayTags[uint32Tag]=!0;typedArrayTags[argsTag$1]=typedArrayTags[arrayTag$1]=typedArrayTags[arrayBufferTag]=typedArrayTags[boolTag]=typedArrayTags[dataViewTag$1]=typedArrayTags[dateTag]=typedArrayTags[errorTag]=typedArrayTags[funcTag]=typedArrayTags[mapTag$1]=typedArrayTags[numberTag]=typedArrayTags[objectTag$2]=typedArrayTags[regexpTag]=typedArrayTags[setTag$1]=typedArrayTags[stringTag]=typedArrayTags[weakMapTag$1]=!1;function baseIsTypedArray$1(kt){return isObjectLike$1(kt)&&isLength$1(kt.length)&&!!typedArrayTags[baseGetTag$1(kt)]}var _baseIsTypedArray=baseIsTypedArray$1;function baseUnary$1(kt){return function(_e){return kt(_e)}}var _baseUnary=baseUnary$1,_nodeUtil={exports:{}};_nodeUtil.exports;(function(kt,_e){var Dt=_freeGlobal,Vt=_e&&!_e.nodeType&&_e,Gt=Vt&&!0&&kt&&!kt.nodeType&&kt,zt=Gt&&Gt.exports===Vt,jt=zt&&Dt.process,Ht=function(){try{var Wt=Gt&&Gt.require&&Gt.require("util").types;return Wt||jt&&jt.binding&&jt.binding("util")}catch{}}();kt.exports=Ht})(_nodeUtil,_nodeUtil.exports);var _nodeUtilExports=_nodeUtil.exports,baseIsTypedArray=_baseIsTypedArray,baseUnary=_baseUnary,nodeUtil=_nodeUtilExports,nodeIsTypedArray=nodeUtil&&nodeUtil.isTypedArray,isTypedArray$3=nodeIsTypedArray?baseUnary(nodeIsTypedArray):baseIsTypedArray,isTypedArray_1=isTypedArray$3,baseTimes=_baseTimes,isArguments=isArguments_1,isArray$2=isArray_1,isBuffer$1=isBufferExports,isIndex=_isIndex,isTypedArray$2=isTypedArray_1,objectProto$6=Object.prototype,hasOwnProperty$4=objectProto$6.hasOwnProperty;function arrayLikeKeys$1(kt,_e){var Dt=isArray$2(kt),Vt=!Dt&&isArguments(kt),Gt=!Dt&&!Vt&&isBuffer$1(kt),zt=!Dt&&!Vt&&!Gt&&isTypedArray$2(kt),jt=Dt||Vt||Gt||zt,Ht=jt?baseTimes(kt.length,String):[],Wt=Ht.length;for(var qt in kt)(_e||hasOwnProperty$4.call(kt,qt))&&!(jt&&(qt=="length"||Gt&&(qt=="offset"||qt=="parent")||zt&&(qt=="buffer"||qt=="byteLength"||qt=="byteOffset")||isIndex(qt,Wt)))&&Ht.push(qt);return Ht}var _arrayLikeKeys=arrayLikeKeys$1,objectProto$5=Object.prototype;function isPrototype$1(kt){var _e=kt&&kt.constructor,Dt=typeof _e=="function"&&_e.prototype||objectProto$5;return kt===Dt}var _isPrototype=isPrototype$1;function overArg$1(kt,_e){return function(Dt){return kt(_e(Dt))}}var _overArg=overArg$1,overArg=_overArg,nativeKeys$2=overArg(Object.keys,Object),_nativeKeys=nativeKeys$2,isPrototype=_isPrototype,nativeKeys$1=_nativeKeys,objectProto$4=Object.prototype,hasOwnProperty$3=objectProto$4.hasOwnProperty;function baseKeys$1(kt){if(!isPrototype(kt))return nativeKeys$1(kt);var _e=[];for(var Dt in Object(kt))hasOwnProperty$3.call(kt,Dt)&&Dt!="constructor"&&_e.push(Dt);return _e}var _baseKeys=baseKeys$1,isFunction$2=isFunction_1,isLength=isLength_1;function isArrayLike$1(kt){return kt!=null&&isLength(kt.length)&&!isFunction$2(kt)}var isArrayLike_1=isArrayLike$1,arrayLikeKeys=_arrayLikeKeys,baseKeys=_baseKeys,isArrayLike=isArrayLike_1;function keys$5(kt){return isArrayLike(kt)?arrayLikeKeys(kt):baseKeys(kt)}var keys_1=keys$5,baseGetAllKeys=_baseGetAllKeys,getSymbols=_getSymbols,keys$4=keys_1;function getAllKeys$1(kt){return baseGetAllKeys(kt,keys$4,getSymbols)}var _getAllKeys=getAllKeys$1,getAllKeys=_getAllKeys,COMPARE_PARTIAL_FLAG$1=1,objectProto$3=Object.prototype,hasOwnProperty$2=objectProto$3.hasOwnProperty;function equalObjects$1(kt,_e,Dt,Vt,Gt,zt){var jt=Dt&COMPARE_PARTIAL_FLAG$1,Ht=getAllKeys(kt),Wt=Ht.length,qt=getAllKeys(_e),Xt=qt.length;if(Wt!=Xt&&!jt)return!1;for(var Kt=Wt;Kt--;){var Yt=Ht[Kt];if(!(jt?Yt in _e:hasOwnProperty$2.call(_e,Yt)))return!1}var Zt=zt.get(kt),Jt=zt.get(_e);if(Zt&&Jt)return Zt==_e&&Jt==kt;var nn=!0;zt.set(kt,_e),zt.set(_e,kt);for(var rn=jt;++Kt<Wt;){Yt=Ht[Kt];var Qt=kt[Yt],en=_e[Yt];if(Vt)var tn=jt?Vt(en,Qt,Yt,_e,kt,zt):Vt(Qt,en,Yt,kt,_e,zt);if(!(tn===void 0?Qt===en||Gt(Qt,en,Dt,Vt,zt):tn)){nn=!1;break}rn||(rn=Yt=="constructor")}if(nn&&!rn){var sn=kt.constructor,cn=_e.constructor;sn!=cn&&"constructor"in kt&&"constructor"in _e&&!(typeof sn=="function"&&sn instanceof sn&&typeof cn=="function"&&cn instanceof cn)&&(nn=!1)}return zt.delete(kt),zt.delete(_e),nn}var _equalObjects=equalObjects$1,getNative$3=_getNative,root$3=_root,DataView$2=getNative$3(root$3,"DataView"),_DataView=DataView$2,getNative$2=_getNative,root$2=_root,Promise$2=getNative$2(root$2,"Promise"),_Promise=Promise$2,getNative$1=_getNative,root$1=_root,Set$2=getNative$1(root$1,"Set"),_Set=Set$2,getNative=_getNative,root=_root,WeakMap$2=getNative(root,"WeakMap"),_WeakMap=WeakMap$2,DataView$1=_DataView,Map$1=_Map,Promise$1=_Promise,Set$1=_Set,WeakMap$1=_WeakMap,baseGetTag=_baseGetTag,toSource=_toSource,mapTag="[object Map]",objectTag$1="[object Object]",promiseTag="[object Promise]",setTag="[object Set]",weakMapTag="[object WeakMap]",dataViewTag="[object DataView]",dataViewCtorString=toSource(DataView$1),mapCtorString=toSource(Map$1),promiseCtorString=toSource(Promise$1),setCtorString=toSource(Set$1),weakMapCtorString=toSource(WeakMap$1),getTag$1=baseGetTag;(DataView$1&&getTag$1(new DataView$1(new ArrayBuffer(1)))!=dataViewTag||Map$1&&getTag$1(new Map$1)!=mapTag||Promise$1&&getTag$1(Promise$1.resolve())!=promiseTag||Set$1&&getTag$1(new Set$1)!=setTag||WeakMap$1&&getTag$1(new WeakMap$1)!=weakMapTag)&&(getTag$1=function(kt){var _e=baseGetTag(kt),Dt=_e==objectTag$1?kt.constructor:void 0,Vt=Dt?toSource(Dt):"";if(Vt)switch(Vt){case dataViewCtorString:return dataViewTag;case mapCtorString:return mapTag;case promiseCtorString:return promiseTag;case setCtorString:return setTag;case weakMapCtorString:return weakMapTag}return _e});var _getTag=getTag$1,Stack=_Stack,equalArrays=_equalArrays,equalByTag=_equalByTag,equalObjects=_equalObjects,getTag=_getTag,isArray$1=isArray_1,isBuffer=isBufferExports,isTypedArray$1=isTypedArray_1,COMPARE_PARTIAL_FLAG=1,argsTag="[object Arguments]",arrayTag="[object Array]",objectTag="[object Object]",objectProto$2=Object.prototype,hasOwnProperty$1=objectProto$2.hasOwnProperty;function baseIsEqualDeep$1(kt,_e,Dt,Vt,Gt,zt){var jt=isArray$1(kt),Ht=isArray$1(_e),Wt=jt?arrayTag:getTag(kt),qt=Ht?arrayTag:getTag(_e);Wt=Wt==argsTag?objectTag:Wt,qt=qt==argsTag?objectTag:qt;var Xt=Wt==objectTag,Kt=qt==objectTag,Yt=Wt==qt;if(Yt&&isBuffer(kt)){if(!isBuffer(_e))return!1;jt=!0,Xt=!1}if(Yt&&!Xt)return zt||(zt=new Stack),jt||isTypedArray$1(kt)?equalArrays(kt,_e,Dt,Vt,Gt,zt):equalByTag(kt,_e,Wt,Dt,Vt,Gt,zt);if(!(Dt&COMPARE_PARTIAL_FLAG)){var Zt=Xt&&hasOwnProperty$1.call(kt,"__wrapped__"),Jt=Kt&&hasOwnProperty$1.call(_e,"__wrapped__");if(Zt||Jt){var nn=Zt?kt.value():kt,rn=Jt?_e.value():_e;return zt||(zt=new Stack),Gt(nn,rn,Dt,Vt,zt)}}return Yt?(zt||(zt=new Stack),equalObjects(kt,_e,Dt,Vt,Gt,zt)):!1}var _baseIsEqualDeep=baseIsEqualDeep$1,baseIsEqualDeep=_baseIsEqualDeep,isObjectLike=isObjectLike_1;function baseIsEqual$1(kt,_e,Dt,Vt,Gt){return kt===_e?!0:kt==null||_e==null||!isObjectLike(kt)&&!isObjectLike(_e)?kt!==kt&&_e!==_e:baseIsEqualDeep(kt,_e,Dt,Vt,baseIsEqual$1,Gt)}var _baseIsEqual=baseIsEqual$1,baseIsEqual=_baseIsEqual;function isEqual(kt,_e){return baseIsEqual(kt,_e)}var isEqual_1$1=isEqual,quill={exports:{}};/*!
|
|
101
101
|
* Quill Editor v1.3.7
|
|
102
102
|
* https://quilljs.com/
|
|
103
103
|
* Copyright (c) 2014, Jason Chen
|
|
@@ -3949,7 +3949,7 @@ void main() {
|
|
|
3949
3949
|
*/var Matrix=function(){var kt=Math.cos,_e=Math.sin,Dt=Math.tan,Vt=Math.round;function Gt(){return this.props[0]=1,this.props[1]=0,this.props[2]=0,this.props[3]=0,this.props[4]=0,this.props[5]=1,this.props[6]=0,this.props[7]=0,this.props[8]=0,this.props[9]=0,this.props[10]=1,this.props[11]=0,this.props[12]=0,this.props[13]=0,this.props[14]=0,this.props[15]=1,this}function zt(yn){if(yn===0)return this;var Sn=kt(yn),wn=_e(yn);return this._t(Sn,-wn,0,0,wn,Sn,0,0,0,0,1,0,0,0,0,1)}function jt(yn){if(yn===0)return this;var Sn=kt(yn),wn=_e(yn);return this._t(1,0,0,0,0,Sn,-wn,0,0,wn,Sn,0,0,0,0,1)}function Ht(yn){if(yn===0)return this;var Sn=kt(yn),wn=_e(yn);return this._t(Sn,0,wn,0,0,1,0,0,-wn,0,Sn,0,0,0,0,1)}function Wt(yn){if(yn===0)return this;var Sn=kt(yn),wn=_e(yn);return this._t(Sn,-wn,0,0,wn,Sn,0,0,0,0,1,0,0,0,0,1)}function qt(yn,Sn){return this._t(1,Sn,yn,1,0,0)}function Xt(yn,Sn){return this.shear(Dt(yn),Dt(Sn))}function Kt(yn,Sn){var wn=kt(Sn),xn=_e(Sn);return this._t(wn,xn,0,0,-xn,wn,0,0,0,0,1,0,0,0,0,1)._t(1,0,0,0,Dt(yn),1,0,0,0,0,1,0,0,0,0,1)._t(wn,-xn,0,0,xn,wn,0,0,0,0,1,0,0,0,0,1)}function Yt(yn,Sn,wn){return!wn&&wn!==0&&(wn=1),yn===1&&Sn===1&&wn===1?this:this._t(yn,0,0,0,0,Sn,0,0,0,0,wn,0,0,0,0,1)}function Zt(yn,Sn,wn,xn,Rn,Dn,kn,Fn,Pn,Bn,qn,tr,ar,zn,ur,Hn){return this.props[0]=yn,this.props[1]=Sn,this.props[2]=wn,this.props[3]=xn,this.props[4]=Rn,this.props[5]=Dn,this.props[6]=kn,this.props[7]=Fn,this.props[8]=Pn,this.props[9]=Bn,this.props[10]=qn,this.props[11]=tr,this.props[12]=ar,this.props[13]=zn,this.props[14]=ur,this.props[15]=Hn,this}function Jt(yn,Sn,wn){return wn=wn||0,yn!==0||Sn!==0||wn!==0?this._t(1,0,0,0,0,1,0,0,0,0,1,0,yn,Sn,wn,1):this}function nn(yn,Sn,wn,xn,Rn,Dn,kn,Fn,Pn,Bn,qn,tr,ar,zn,ur,Hn){var sr=this.props;if(yn===1&&Sn===0&&wn===0&&xn===0&&Rn===0&&Dn===1&&kn===0&&Fn===0&&Pn===0&&Bn===0&&qn===1&&tr===0)return sr[12]=sr[12]*yn+sr[15]*ar,sr[13]=sr[13]*Dn+sr[15]*zn,sr[14]=sr[14]*qn+sr[15]*ur,sr[15]*=Hn,this._identityCalculated=!1,this;var gr=sr[0],fr=sr[1],Un=sr[2],In=sr[3],jn=sr[4],or=sr[5],cr=sr[6],lr=sr[7],vr=sr[8],mr=sr[9],Ar=sr[10],Lr=sr[11],Cr=sr[12],Rr=sr[13],zr=sr[14],Pr=sr[15];return sr[0]=gr*yn+fr*Rn+Un*Pn+In*ar,sr[1]=gr*Sn+fr*Dn+Un*Bn+In*zn,sr[2]=gr*wn+fr*kn+Un*qn+In*ur,sr[3]=gr*xn+fr*Fn+Un*tr+In*Hn,sr[4]=jn*yn+or*Rn+cr*Pn+lr*ar,sr[5]=jn*Sn+or*Dn+cr*Bn+lr*zn,sr[6]=jn*wn+or*kn+cr*qn+lr*ur,sr[7]=jn*xn+or*Fn+cr*tr+lr*Hn,sr[8]=vr*yn+mr*Rn+Ar*Pn+Lr*ar,sr[9]=vr*Sn+mr*Dn+Ar*Bn+Lr*zn,sr[10]=vr*wn+mr*kn+Ar*qn+Lr*ur,sr[11]=vr*xn+mr*Fn+Ar*tr+Lr*Hn,sr[12]=Cr*yn+Rr*Rn+zr*Pn+Pr*ar,sr[13]=Cr*Sn+Rr*Dn+zr*Bn+Pr*zn,sr[14]=Cr*wn+Rr*kn+zr*qn+Pr*ur,sr[15]=Cr*xn+Rr*Fn+zr*tr+Pr*Hn,this._identityCalculated=!1,this}function rn(yn){var Sn=yn.props;return this.transform(Sn[0],Sn[1],Sn[2],Sn[3],Sn[4],Sn[5],Sn[6],Sn[7],Sn[8],Sn[9],Sn[10],Sn[11],Sn[12],Sn[13],Sn[14],Sn[15])}function Qt(){return this._identityCalculated||(this._identity=!(this.props[0]!==1||this.props[1]!==0||this.props[2]!==0||this.props[3]!==0||this.props[4]!==0||this.props[5]!==1||this.props[6]!==0||this.props[7]!==0||this.props[8]!==0||this.props[9]!==0||this.props[10]!==1||this.props[11]!==0||this.props[12]!==0||this.props[13]!==0||this.props[14]!==0||this.props[15]!==1),this._identityCalculated=!0),this._identity}function en(yn){for(var Sn=0;Sn<16;){if(yn.props[Sn]!==this.props[Sn])return!1;Sn+=1}return!0}function tn(yn){var Sn;for(Sn=0;Sn<16;Sn+=1)yn.props[Sn]=this.props[Sn];return yn}function sn(yn){var Sn;for(Sn=0;Sn<16;Sn+=1)this.props[Sn]=yn[Sn]}function cn(yn,Sn,wn){return{x:yn*this.props[0]+Sn*this.props[4]+wn*this.props[8]+this.props[12],y:yn*this.props[1]+Sn*this.props[5]+wn*this.props[9]+this.props[13],z:yn*this.props[2]+Sn*this.props[6]+wn*this.props[10]+this.props[14]}}function un(yn,Sn,wn){return yn*this.props[0]+Sn*this.props[4]+wn*this.props[8]+this.props[12]}function hn(yn,Sn,wn){return yn*this.props[1]+Sn*this.props[5]+wn*this.props[9]+this.props[13]}function dn(yn,Sn,wn){return yn*this.props[2]+Sn*this.props[6]+wn*this.props[10]+this.props[14]}function pn(){var yn=this.props[0]*this.props[5]-this.props[1]*this.props[4],Sn=this.props[5]/yn,wn=-this.props[1]/yn,xn=-this.props[4]/yn,Rn=this.props[0]/yn,Dn=(this.props[4]*this.props[13]-this.props[5]*this.props[12])/yn,kn=-(this.props[0]*this.props[13]-this.props[1]*this.props[12])/yn,Fn=new Matrix;return Fn.props[0]=Sn,Fn.props[1]=wn,Fn.props[4]=xn,Fn.props[5]=Rn,Fn.props[12]=Dn,Fn.props[13]=kn,Fn}function fn(yn){var Sn=this.getInverseMatrix();return Sn.applyToPointArray(yn[0],yn[1],yn[2]||0)}function mn(yn){var Sn,wn=yn.length,xn=[];for(Sn=0;Sn<wn;Sn+=1)xn[Sn]=fn(yn[Sn]);return xn}function vn(yn,Sn,wn){var xn=createTypedArray("float32",6);if(this.isIdentity())xn[0]=yn[0],xn[1]=yn[1],xn[2]=Sn[0],xn[3]=Sn[1],xn[4]=wn[0],xn[5]=wn[1];else{var Rn=this.props[0],Dn=this.props[1],kn=this.props[4],Fn=this.props[5],Pn=this.props[12],Bn=this.props[13];xn[0]=yn[0]*Rn+yn[1]*kn+Pn,xn[1]=yn[0]*Dn+yn[1]*Fn+Bn,xn[2]=Sn[0]*Rn+Sn[1]*kn+Pn,xn[3]=Sn[0]*Dn+Sn[1]*Fn+Bn,xn[4]=wn[0]*Rn+wn[1]*kn+Pn,xn[5]=wn[0]*Dn+wn[1]*Fn+Bn}return xn}function _n(yn,Sn,wn){var xn;return this.isIdentity()?xn=[yn,Sn,wn]:xn=[yn*this.props[0]+Sn*this.props[4]+wn*this.props[8]+this.props[12],yn*this.props[1]+Sn*this.props[5]+wn*this.props[9]+this.props[13],yn*this.props[2]+Sn*this.props[6]+wn*this.props[10]+this.props[14]],xn}function En(yn,Sn){if(this.isIdentity())return yn+","+Sn;var wn=this.props;return Math.round((yn*wn[0]+Sn*wn[4]+wn[12])*100)/100+","+Math.round((yn*wn[1]+Sn*wn[5]+wn[13])*100)/100}function An(){for(var yn=0,Sn=this.props,wn="matrix3d(",xn=1e4;yn<16;)wn+=Vt(Sn[yn]*xn)/xn,wn+=yn===15?")":",",yn+=1;return wn}function Tn(yn){var Sn=1e4;return yn<1e-6&&yn>0||yn>-1e-6&&yn<0?Vt(yn*Sn)/Sn:yn}function Cn(){var yn=this.props,Sn=Tn(yn[0]),wn=Tn(yn[1]),xn=Tn(yn[4]),Rn=Tn(yn[5]),Dn=Tn(yn[12]),kn=Tn(yn[13]);return"matrix("+Sn+","+wn+","+xn+","+Rn+","+Dn+","+kn+")"}return function(){this.reset=Gt,this.rotate=zt,this.rotateX=jt,this.rotateY=Ht,this.rotateZ=Wt,this.skew=Xt,this.skewFromAxis=Kt,this.shear=qt,this.scale=Yt,this.setTransform=Zt,this.translate=Jt,this.transform=nn,this.multiply=rn,this.applyToPoint=cn,this.applyToX=un,this.applyToY=hn,this.applyToZ=dn,this.applyToPointArray=_n,this.applyToTriplePoints=vn,this.applyToPointStringified=En,this.toCSS=An,this.to2dCSS=Cn,this.clone=tn,this.cloneFromProps=sn,this.equals=en,this.inversePoints=mn,this.inversePoint=fn,this.getInverseMatrix=pn,this._t=this.transform,this.isIdentity=Qt,this._identity=!0,this._identityCalculated=!1,this.props=createTypedArray("float32",16),this.reset()}}();function _typeof$3(kt){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?_typeof$3=function(Dt){return typeof Dt}:_typeof$3=function(Dt){return Dt&&typeof Symbol=="function"&&Dt.constructor===Symbol&&Dt!==Symbol.prototype?"symbol":typeof Dt},_typeof$3(kt)}var lottie={};function setLocation(kt){setLocationHref(kt)}function searchAnimations(){animationManager.searchAnimations()}function setSubframeRendering(kt){setSubframeEnabled(kt)}function setPrefix(kt){setIdPrefix(kt)}function loadAnimation(kt){return animationManager.loadAnimation(kt)}function setQuality(kt){if(typeof kt=="string")switch(kt){case"high":setDefaultCurveSegments(200);break;default:case"medium":setDefaultCurveSegments(50);break;case"low":setDefaultCurveSegments(10);break}else!isNaN(kt)&&kt>1&&setDefaultCurveSegments(kt)}function inBrowser(){return typeof navigator<"u"}function installPlugin(kt,_e){kt==="expressions"&&setExpressionsPlugin(_e)}function getFactory(kt){switch(kt){case"propertyFactory":return PropertyFactory;case"shapePropertyFactory":return ShapePropertyFactory;case"matrix":return Matrix;default:return null}}lottie.play=animationManager.play,lottie.pause=animationManager.pause,lottie.setLocationHref=setLocation,lottie.togglePause=animationManager.togglePause,lottie.setSpeed=animationManager.setSpeed,lottie.setDirection=animationManager.setDirection,lottie.stop=animationManager.stop,lottie.searchAnimations=searchAnimations,lottie.registerAnimation=animationManager.registerAnimation,lottie.loadAnimation=loadAnimation,lottie.setSubframeRendering=setSubframeRendering,lottie.resize=animationManager.resize,lottie.goToAndStop=animationManager.goToAndStop,lottie.destroy=animationManager.destroy,lottie.setQuality=setQuality,lottie.inBrowser=inBrowser,lottie.installPlugin=installPlugin,lottie.freeze=animationManager.freeze,lottie.unfreeze=animationManager.unfreeze,lottie.setVolume=animationManager.setVolume,lottie.mute=animationManager.mute,lottie.unmute=animationManager.unmute,lottie.getRegisteredAnimations=animationManager.getRegisteredAnimations,lottie.useWebWorker=setWebWorker,lottie.setIDPrefix=setPrefix,lottie.__getFactory=getFactory,lottie.version="5.12.2";function checkReady(){document.readyState==="complete"&&(clearInterval(readyStateCheckInterval),searchAnimations())}function getQueryVariable(kt){for(var _e=queryString.split("&"),Dt=0;Dt<_e.length;Dt+=1){var Vt=_e[Dt].split("=");if(decodeURIComponent(Vt[0])==kt)return decodeURIComponent(Vt[1])}return null}var queryString="";{var scripts=document.getElementsByTagName("script"),index=scripts.length-1,myScript=scripts[index]||{src:""};queryString=myScript.src?myScript.src.replace(/^[^\?]+\??/,""):"",getQueryVariable("renderer")}var readyStateCheckInterval=setInterval(checkReady,100);try{_typeof$3(exports)!=="object"&&(window.bodymovin=lottie)}catch(kt){}var ShapeModifiers=function(){var kt={},_e={};kt.registerModifier=Dt,kt.getModifier=Vt;function Dt(Gt,zt){_e[Gt]||(_e[Gt]=zt)}function Vt(Gt,zt,jt){return new _e[Gt](zt,jt)}return kt}();function ShapeModifier(){}ShapeModifier.prototype.initModifierProperties=function(){},ShapeModifier.prototype.addShapeToModifier=function(){},ShapeModifier.prototype.addShape=function(kt){if(!this.closed){kt.sh.container.addDynamicProperty(kt.sh);var _e={shape:kt.sh,data:kt,localShapeCollection:shapeCollectionPool.newShapeCollection()};this.shapes.push(_e),this.addShapeToModifier(_e),this._isAnimated&&kt.setAsAnimated()}},ShapeModifier.prototype.init=function(kt,_e){this.shapes=[],this.elem=kt,this.initDynamicPropertyContainer(kt),this.initModifierProperties(kt,_e),this.frameId=initialDefaultFrame,this.closed=!1,this.k=!1,this.dynamicProperties.length?this.k=!0:this.getValue(!0)},ShapeModifier.prototype.processKeys=function(){this.elem.globalData.frameId!==this.frameId&&(this.frameId=this.elem.globalData.frameId,this.iterateDynamicProperties())},extendPrototype([DynamicPropertyContainer],ShapeModifier);function TrimModifier(){}extendPrototype([ShapeModifier],TrimModifier),TrimModifier.prototype.initModifierProperties=function(kt,_e){this.s=PropertyFactory.getProp(kt,_e.s,0,.01,this),this.e=PropertyFactory.getProp(kt,_e.e,0,.01,this),this.o=PropertyFactory.getProp(kt,_e.o,0,0,this),this.sValue=0,this.eValue=0,this.getValue=this.processKeys,this.m=_e.m,this._isAnimated=!!this.s.effectsSequence.length||!!this.e.effectsSequence.length||!!this.o.effectsSequence.length},TrimModifier.prototype.addShapeToModifier=function(kt){kt.pathsData=[]},TrimModifier.prototype.calculateShapeEdges=function(kt,_e,Dt,Vt,Gt){var zt=[];_e<=1?zt.push({s:kt,e:_e}):kt>=1?zt.push({s:kt-1,e:_e-1}):(zt.push({s:kt,e:1}),zt.push({s:0,e:_e-1}));var jt=[],Ht,Wt=zt.length,qt;for(Ht=0;Ht<Wt;Ht+=1)if(qt=zt[Ht],!(qt.e*Gt<Vt||qt.s*Gt>Vt+Dt)){var Xt,Kt;qt.s*Gt<=Vt?Xt=0:Xt=(qt.s*Gt-Vt)/Dt,qt.e*Gt>=Vt+Dt?Kt=1:Kt=(qt.e*Gt-Vt)/Dt,jt.push([Xt,Kt])}return jt.length||jt.push([0,0]),jt},TrimModifier.prototype.releasePathsData=function(kt){var _e,Dt=kt.length;for(_e=0;_e<Dt;_e+=1)segmentsLengthPool.release(kt[_e]);return kt.length=0,kt},TrimModifier.prototype.processShapes=function(kt){var _e,Dt;if(this._mdf||kt){var Vt=this.o.v%360/360;if(Vt<0&&(Vt+=1),this.s.v>1?_e=1+Vt:this.s.v<0?_e=0+Vt:_e=this.s.v+Vt,this.e.v>1?Dt=1+Vt:this.e.v<0?Dt=0+Vt:Dt=this.e.v+Vt,_e>Dt){var Gt=_e;_e=Dt,Dt=Gt}_e=Math.round(_e*1e4)*1e-4,Dt=Math.round(Dt*1e4)*1e-4,this.sValue=_e,this.eValue=Dt}else _e=this.sValue,Dt=this.eValue;var zt,jt,Ht=this.shapes.length,Wt,qt,Xt,Kt,Yt,Zt=0;if(Dt===_e)for(jt=0;jt<Ht;jt+=1)this.shapes[jt].localShapeCollection.releaseShapes(),this.shapes[jt].shape._mdf=!0,this.shapes[jt].shape.paths=this.shapes[jt].localShapeCollection,this._mdf&&(this.shapes[jt].pathsData.length=0);else if(Dt===1&&_e===0||Dt===0&&_e===1){if(this._mdf)for(jt=0;jt<Ht;jt+=1)this.shapes[jt].pathsData.length=0,this.shapes[jt].shape._mdf=!0}else{var Jt=[],nn,rn;for(jt=0;jt<Ht;jt+=1)if(nn=this.shapes[jt],!nn.shape._mdf&&!this._mdf&&!kt&&this.m!==2)nn.shape.paths=nn.localShapeCollection;else{if(zt=nn.shape.paths,qt=zt._length,Yt=0,!nn.shape._mdf&&nn.pathsData.length)Yt=nn.totalShapeLength;else{for(Xt=this.releasePathsData(nn.pathsData),Wt=0;Wt<qt;Wt+=1)Kt=bez.getSegmentsLength(zt.shapes[Wt]),Xt.push(Kt),Yt+=Kt.totalLength;nn.totalShapeLength=Yt,nn.pathsData=Xt}Zt+=Yt,nn.shape._mdf=!0}var Qt=_e,en=Dt,tn=0,sn;for(jt=Ht-1;jt>=0;jt-=1)if(nn=this.shapes[jt],nn.shape._mdf){for(rn=nn.localShapeCollection,rn.releaseShapes(),this.m===2&&Ht>1?(sn=this.calculateShapeEdges(_e,Dt,nn.totalShapeLength,tn,Zt),tn+=nn.totalShapeLength):sn=[[Qt,en]],qt=sn.length,Wt=0;Wt<qt;Wt+=1){Qt=sn[Wt][0],en=sn[Wt][1],Jt.length=0,en<=1?Jt.push({s:nn.totalShapeLength*Qt,e:nn.totalShapeLength*en}):Qt>=1?Jt.push({s:nn.totalShapeLength*(Qt-1),e:nn.totalShapeLength*(en-1)}):(Jt.push({s:nn.totalShapeLength*Qt,e:nn.totalShapeLength}),Jt.push({s:0,e:nn.totalShapeLength*(en-1)}));var cn=this.addShapes(nn,Jt[0]);if(Jt[0].s!==Jt[0].e){if(Jt.length>1){var un=nn.shape.paths.shapes[nn.shape.paths._length-1];if(un.c){var hn=cn.pop();this.addPaths(cn,rn),cn=this.addShapes(nn,Jt[1],hn)}else this.addPaths(cn,rn),cn=this.addShapes(nn,Jt[1])}this.addPaths(cn,rn)}}nn.shape.paths=rn}}},TrimModifier.prototype.addPaths=function(kt,_e){var Dt,Vt=kt.length;for(Dt=0;Dt<Vt;Dt+=1)_e.addShape(kt[Dt])},TrimModifier.prototype.addSegment=function(kt,_e,Dt,Vt,Gt,zt,jt){Gt.setXYAt(_e[0],_e[1],"o",zt),Gt.setXYAt(Dt[0],Dt[1],"i",zt+1),jt&&Gt.setXYAt(kt[0],kt[1],"v",zt),Gt.setXYAt(Vt[0],Vt[1],"v",zt+1)},TrimModifier.prototype.addSegmentFromArray=function(kt,_e,Dt,Vt){_e.setXYAt(kt[1],kt[5],"o",Dt),_e.setXYAt(kt[2],kt[6],"i",Dt+1),Vt&&_e.setXYAt(kt[0],kt[4],"v",Dt),_e.setXYAt(kt[3],kt[7],"v",Dt+1)},TrimModifier.prototype.addShapes=function(kt,_e,Dt){var Vt=kt.pathsData,Gt=kt.shape.paths.shapes,zt,jt=kt.shape.paths._length,Ht,Wt,qt=0,Xt,Kt,Yt,Zt,Jt=[],nn,rn=!0;for(Dt?(Kt=Dt._length,nn=Dt._length):(Dt=shapePool.newElement(),Kt=0,nn=0),Jt.push(Dt),zt=0;zt<jt;zt+=1){for(Yt=Vt[zt].lengths,Dt.c=Gt[zt].c,Wt=Gt[zt].c?Yt.length:Yt.length+1,Ht=1;Ht<Wt;Ht+=1)if(Xt=Yt[Ht-1],qt+Xt.addedLength<_e.s)qt+=Xt.addedLength,Dt.c=!1;else if(qt>_e.e){Dt.c=!1;break}else _e.s<=qt&&_e.e>=qt+Xt.addedLength?(this.addSegment(Gt[zt].v[Ht-1],Gt[zt].o[Ht-1],Gt[zt].i[Ht],Gt[zt].v[Ht],Dt,Kt,rn),rn=!1):(Zt=bez.getNewSegment(Gt[zt].v[Ht-1],Gt[zt].v[Ht],Gt[zt].o[Ht-1],Gt[zt].i[Ht],(_e.s-qt)/Xt.addedLength,(_e.e-qt)/Xt.addedLength,Yt[Ht-1]),this.addSegmentFromArray(Zt,Dt,Kt,rn),rn=!1,Dt.c=!1),qt+=Xt.addedLength,Kt+=1;if(Gt[zt].c&&Yt.length){if(Xt=Yt[Ht-1],qt<=_e.e){var Qt=Yt[Ht-1].addedLength;_e.s<=qt&&_e.e>=qt+Qt?(this.addSegment(Gt[zt].v[Ht-1],Gt[zt].o[Ht-1],Gt[zt].i[0],Gt[zt].v[0],Dt,Kt,rn),rn=!1):(Zt=bez.getNewSegment(Gt[zt].v[Ht-1],Gt[zt].v[0],Gt[zt].o[Ht-1],Gt[zt].i[0],(_e.s-qt)/Qt,(_e.e-qt)/Qt,Yt[Ht-1]),this.addSegmentFromArray(Zt,Dt,Kt,rn),rn=!1,Dt.c=!1)}else Dt.c=!1;qt+=Xt.addedLength,Kt+=1}if(Dt._length&&(Dt.setXYAt(Dt.v[nn][0],Dt.v[nn][1],"i",nn),Dt.setXYAt(Dt.v[Dt._length-1][0],Dt.v[Dt._length-1][1],"o",Dt._length-1)),qt>_e.e)break;zt<jt-1&&(Dt=shapePool.newElement(),rn=!0,Jt.push(Dt),Kt=0)}return Jt};function PuckerAndBloatModifier(){}extendPrototype([ShapeModifier],PuckerAndBloatModifier),PuckerAndBloatModifier.prototype.initModifierProperties=function(kt,_e){this.getValue=this.processKeys,this.amount=PropertyFactory.getProp(kt,_e.a,0,null,this),this._isAnimated=!!this.amount.effectsSequence.length},PuckerAndBloatModifier.prototype.processPath=function(kt,_e){var Dt=_e/100,Vt=[0,0],Gt=kt._length,zt=0;for(zt=0;zt<Gt;zt+=1)Vt[0]+=kt.v[zt][0],Vt[1]+=kt.v[zt][1];Vt[0]/=Gt,Vt[1]/=Gt;var jt=shapePool.newElement();jt.c=kt.c;var Ht,Wt,qt,Xt,Kt,Yt;for(zt=0;zt<Gt;zt+=1)Ht=kt.v[zt][0]+(Vt[0]-kt.v[zt][0])*Dt,Wt=kt.v[zt][1]+(Vt[1]-kt.v[zt][1])*Dt,qt=kt.o[zt][0]+(Vt[0]-kt.o[zt][0])*-Dt,Xt=kt.o[zt][1]+(Vt[1]-kt.o[zt][1])*-Dt,Kt=kt.i[zt][0]+(Vt[0]-kt.i[zt][0])*-Dt,Yt=kt.i[zt][1]+(Vt[1]-kt.i[zt][1])*-Dt,jt.setTripleAt(Ht,Wt,qt,Xt,Kt,Yt,zt);return jt},PuckerAndBloatModifier.prototype.processShapes=function(kt){var _e,Dt,Vt=this.shapes.length,Gt,zt,jt=this.amount.v;if(jt!==0){var Ht,Wt;for(Dt=0;Dt<Vt;Dt+=1){if(Ht=this.shapes[Dt],Wt=Ht.localShapeCollection,!(!Ht.shape._mdf&&!this._mdf&&!kt))for(Wt.releaseShapes(),Ht.shape._mdf=!0,_e=Ht.shape.paths.shapes,zt=Ht.shape.paths._length,Gt=0;Gt<zt;Gt+=1)Wt.addShape(this.processPath(_e[Gt],jt));Ht.shape.paths=Ht.localShapeCollection}}this.dynamicProperties.length||(this._mdf=!1)};var TransformPropertyFactory=function(){var kt=[0,0];function _e(Wt){var qt=this._mdf;this.iterateDynamicProperties(),this._mdf=this._mdf||qt,this.a&&Wt.translate(-this.a.v[0],-this.a.v[1],this.a.v[2]),this.s&&Wt.scale(this.s.v[0],this.s.v[1],this.s.v[2]),this.sk&&Wt.skewFromAxis(-this.sk.v,this.sa.v),this.r?Wt.rotate(-this.r.v):Wt.rotateZ(-this.rz.v).rotateY(this.ry.v).rotateX(this.rx.v).rotateZ(-this.or.v[2]).rotateY(this.or.v[1]).rotateX(this.or.v[0]),this.data.p.s?this.data.p.z?Wt.translate(this.px.v,this.py.v,-this.pz.v):Wt.translate(this.px.v,this.py.v,0):Wt.translate(this.p.v[0],this.p.v[1],-this.p.v[2])}function Dt(Wt){if(this.elem.globalData.frameId!==this.frameId){if(this._isDirty&&(this.precalculateMatrix(),this._isDirty=!1),this.iterateDynamicProperties(),this._mdf||Wt){var qt;if(this.v.cloneFromProps(this.pre.props),this.appliedTransformations<1&&this.v.translate(-this.a.v[0],-this.a.v[1],this.a.v[2]),this.appliedTransformations<2&&this.v.scale(this.s.v[0],this.s.v[1],this.s.v[2]),this.sk&&this.appliedTransformations<3&&this.v.skewFromAxis(-this.sk.v,this.sa.v),this.r&&this.appliedTransformations<4?this.v.rotate(-this.r.v):!this.r&&this.appliedTransformations<4&&this.v.rotateZ(-this.rz.v).rotateY(this.ry.v).rotateX(this.rx.v).rotateZ(-this.or.v[2]).rotateY(this.or.v[1]).rotateX(this.or.v[0]),this.autoOriented){var Xt,Kt;if(qt=this.elem.globalData.frameRate,this.p&&this.p.keyframes&&this.p.getValueAtTime)this.p._caching.lastFrame+this.p.offsetTime<=this.p.keyframes[0].t?(Xt=this.p.getValueAtTime((this.p.keyframes[0].t+.01)/qt,0),Kt=this.p.getValueAtTime(this.p.keyframes[0].t/qt,0)):this.p._caching.lastFrame+this.p.offsetTime>=this.p.keyframes[this.p.keyframes.length-1].t?(Xt=this.p.getValueAtTime(this.p.keyframes[this.p.keyframes.length-1].t/qt,0),Kt=this.p.getValueAtTime((this.p.keyframes[this.p.keyframes.length-1].t-.05)/qt,0)):(Xt=this.p.pv,Kt=this.p.getValueAtTime((this.p._caching.lastFrame+this.p.offsetTime-.01)/qt,this.p.offsetTime));else if(this.px&&this.px.keyframes&&this.py.keyframes&&this.px.getValueAtTime&&this.py.getValueAtTime){Xt=[],Kt=[];var Yt=this.px,Zt=this.py;Yt._caching.lastFrame+Yt.offsetTime<=Yt.keyframes[0].t?(Xt[0]=Yt.getValueAtTime((Yt.keyframes[0].t+.01)/qt,0),Xt[1]=Zt.getValueAtTime((Zt.keyframes[0].t+.01)/qt,0),Kt[0]=Yt.getValueAtTime(Yt.keyframes[0].t/qt,0),Kt[1]=Zt.getValueAtTime(Zt.keyframes[0].t/qt,0)):Yt._caching.lastFrame+Yt.offsetTime>=Yt.keyframes[Yt.keyframes.length-1].t?(Xt[0]=Yt.getValueAtTime(Yt.keyframes[Yt.keyframes.length-1].t/qt,0),Xt[1]=Zt.getValueAtTime(Zt.keyframes[Zt.keyframes.length-1].t/qt,0),Kt[0]=Yt.getValueAtTime((Yt.keyframes[Yt.keyframes.length-1].t-.01)/qt,0),Kt[1]=Zt.getValueAtTime((Zt.keyframes[Zt.keyframes.length-1].t-.01)/qt,0)):(Xt=[Yt.pv,Zt.pv],Kt[0]=Yt.getValueAtTime((Yt._caching.lastFrame+Yt.offsetTime-.01)/qt,Yt.offsetTime),Kt[1]=Zt.getValueAtTime((Zt._caching.lastFrame+Zt.offsetTime-.01)/qt,Zt.offsetTime))}else Kt=kt,Xt=Kt;this.v.rotate(-Math.atan2(Xt[1]-Kt[1],Xt[0]-Kt[0]))}this.data.p&&this.data.p.s?this.data.p.z?this.v.translate(this.px.v,this.py.v,-this.pz.v):this.v.translate(this.px.v,this.py.v,0):this.v.translate(this.p.v[0],this.p.v[1],-this.p.v[2])}this.frameId=this.elem.globalData.frameId}}function Vt(){if(this.appliedTransformations=0,this.pre.reset(),!this.a.effectsSequence.length)this.pre.translate(-this.a.v[0],-this.a.v[1],this.a.v[2]),this.appliedTransformations=1;else return;if(!this.s.effectsSequence.length)this.pre.scale(this.s.v[0],this.s.v[1],this.s.v[2]),this.appliedTransformations=2;else return;if(this.sk)if(!this.sk.effectsSequence.length&&!this.sa.effectsSequence.length)this.pre.skewFromAxis(-this.sk.v,this.sa.v),this.appliedTransformations=3;else return;this.r?this.r.effectsSequence.length||(this.pre.rotate(-this.r.v),this.appliedTransformations=4):!this.rz.effectsSequence.length&&!this.ry.effectsSequence.length&&!this.rx.effectsSequence.length&&!this.or.effectsSequence.length&&(this.pre.rotateZ(-this.rz.v).rotateY(this.ry.v).rotateX(this.rx.v).rotateZ(-this.or.v[2]).rotateY(this.or.v[1]).rotateX(this.or.v[0]),this.appliedTransformations=4)}function Gt(){}function zt(Wt){this._addDynamicProperty(Wt),this.elem.addDynamicProperty(Wt),this._isDirty=!0}function jt(Wt,qt,Xt){if(this.elem=Wt,this.frameId=-1,this.propType="transform",this.data=qt,this.v=new Matrix,this.pre=new Matrix,this.appliedTransformations=0,this.initDynamicPropertyContainer(Xt||Wt),qt.p&&qt.p.s?(this.px=PropertyFactory.getProp(Wt,qt.p.x,0,0,this),this.py=PropertyFactory.getProp(Wt,qt.p.y,0,0,this),qt.p.z&&(this.pz=PropertyFactory.getProp(Wt,qt.p.z,0,0,this))):this.p=PropertyFactory.getProp(Wt,qt.p||{k:[0,0,0]},1,0,this),qt.rx){if(this.rx=PropertyFactory.getProp(Wt,qt.rx,0,degToRads,this),this.ry=PropertyFactory.getProp(Wt,qt.ry,0,degToRads,this),this.rz=PropertyFactory.getProp(Wt,qt.rz,0,degToRads,this),qt.or.k[0].ti){var Kt,Yt=qt.or.k.length;for(Kt=0;Kt<Yt;Kt+=1)qt.or.k[Kt].to=null,qt.or.k[Kt].ti=null}this.or=PropertyFactory.getProp(Wt,qt.or,1,degToRads,this),this.or.sh=!0}else this.r=PropertyFactory.getProp(Wt,qt.r||{k:0},0,degToRads,this);qt.sk&&(this.sk=PropertyFactory.getProp(Wt,qt.sk,0,degToRads,this),this.sa=PropertyFactory.getProp(Wt,qt.sa,0,degToRads,this)),this.a=PropertyFactory.getProp(Wt,qt.a||{k:[0,0,0]},1,0,this),this.s=PropertyFactory.getProp(Wt,qt.s||{k:[100,100,100]},1,.01,this),qt.o?this.o=PropertyFactory.getProp(Wt,qt.o,0,.01,Wt):this.o={_mdf:!1,v:1},this._isDirty=!0,this.dynamicProperties.length||this.getValue(!0)}jt.prototype={applyToMatrix:_e,getValue:Dt,precalculateMatrix:Vt,autoOrient:Gt},extendPrototype([DynamicPropertyContainer],jt),jt.prototype.addDynamicProperty=zt,jt.prototype._addDynamicProperty=DynamicPropertyContainer.prototype.addDynamicProperty;function Ht(Wt,qt,Xt){return new jt(Wt,qt,Xt)}return{getTransformProperty:Ht}}();function RepeaterModifier(){}extendPrototype([ShapeModifier],RepeaterModifier),RepeaterModifier.prototype.initModifierProperties=function(kt,_e){this.getValue=this.processKeys,this.c=PropertyFactory.getProp(kt,_e.c,0,null,this),this.o=PropertyFactory.getProp(kt,_e.o,0,null,this),this.tr=TransformPropertyFactory.getTransformProperty(kt,_e.tr,this),this.so=PropertyFactory.getProp(kt,_e.tr.so,0,.01,this),this.eo=PropertyFactory.getProp(kt,_e.tr.eo,0,.01,this),this.data=_e,this.dynamicProperties.length||this.getValue(!0),this._isAnimated=!!this.dynamicProperties.length,this.pMatrix=new Matrix,this.rMatrix=new Matrix,this.sMatrix=new Matrix,this.tMatrix=new Matrix,this.matrix=new Matrix},RepeaterModifier.prototype.applyTransforms=function(kt,_e,Dt,Vt,Gt,zt){var jt=zt?-1:1,Ht=Vt.s.v[0]+(1-Vt.s.v[0])*(1-Gt),Wt=Vt.s.v[1]+(1-Vt.s.v[1])*(1-Gt);kt.translate(Vt.p.v[0]*jt*Gt,Vt.p.v[1]*jt*Gt,Vt.p.v[2]),_e.translate(-Vt.a.v[0],-Vt.a.v[1],Vt.a.v[2]),_e.rotate(-Vt.r.v*jt*Gt),_e.translate(Vt.a.v[0],Vt.a.v[1],Vt.a.v[2]),Dt.translate(-Vt.a.v[0],-Vt.a.v[1],Vt.a.v[2]),Dt.scale(zt?1/Ht:Ht,zt?1/Wt:Wt),Dt.translate(Vt.a.v[0],Vt.a.v[1],Vt.a.v[2])},RepeaterModifier.prototype.init=function(kt,_e,Dt,Vt){for(this.elem=kt,this.arr=_e,this.pos=Dt,this.elemsData=Vt,this._currentCopies=0,this._elements=[],this._groups=[],this.frameId=-1,this.initDynamicPropertyContainer(kt),this.initModifierProperties(kt,_e[Dt]);Dt>0;)Dt-=1,this._elements.unshift(_e[Dt]);this.dynamicProperties.length?this.k=!0:this.getValue(!0)},RepeaterModifier.prototype.resetElements=function(kt){var _e,Dt=kt.length;for(_e=0;_e<Dt;_e+=1)kt[_e]._processed=!1,kt[_e].ty==="gr"&&this.resetElements(kt[_e].it)},RepeaterModifier.prototype.cloneElements=function(kt){var _e=JSON.parse(JSON.stringify(kt));return this.resetElements(_e),_e},RepeaterModifier.prototype.changeGroupRender=function(kt,_e){var Dt,Vt=kt.length;for(Dt=0;Dt<Vt;Dt+=1)kt[Dt]._render=_e,kt[Dt].ty==="gr"&&this.changeGroupRender(kt[Dt].it,_e)},RepeaterModifier.prototype.processShapes=function(kt){var _e,Dt,Vt,Gt,zt,jt=!1;if(this._mdf||kt){var Ht=Math.ceil(this.c.v);if(this._groups.length<Ht){for(;this._groups.length<Ht;){var Wt={it:this.cloneElements(this._elements),ty:"gr"};Wt.it.push({a:{a:0,ix:1,k:[0,0]},nm:"Transform",o:{a:0,ix:7,k:100},p:{a:0,ix:2,k:[0,0]},r:{a:1,ix:6,k:[{s:0,e:0,t:0},{s:0,e:0,t:1}]},s:{a:0,ix:3,k:[100,100]},sa:{a:0,ix:5,k:0},sk:{a:0,ix:4,k:0},ty:"tr"}),this.arr.splice(0,0,Wt),this._groups.splice(0,0,Wt),this._currentCopies+=1}this.elem.reloadShapes(),jt=!0}zt=0;var qt;for(Vt=0;Vt<=this._groups.length-1;Vt+=1){if(qt=zt<Ht,this._groups[Vt]._render=qt,this.changeGroupRender(this._groups[Vt].it,qt),!qt){var Xt=this.elemsData[Vt].it,Kt=Xt[Xt.length-1];Kt.transform.op.v!==0?(Kt.transform.op._mdf=!0,Kt.transform.op.v=0):Kt.transform.op._mdf=!1}zt+=1}this._currentCopies=Ht;var Yt=this.o.v,Zt=Yt%1,Jt=Yt>0?Math.floor(Yt):Math.ceil(Yt),nn=this.pMatrix.props,rn=this.rMatrix.props,Qt=this.sMatrix.props;this.pMatrix.reset(),this.rMatrix.reset(),this.sMatrix.reset(),this.tMatrix.reset(),this.matrix.reset();var en=0;if(Yt>0){for(;en<Jt;)this.applyTransforms(this.pMatrix,this.rMatrix,this.sMatrix,this.tr,1,!1),en+=1;Zt&&(this.applyTransforms(this.pMatrix,this.rMatrix,this.sMatrix,this.tr,Zt,!1),en+=Zt)}else if(Yt<0){for(;en>Jt;)this.applyTransforms(this.pMatrix,this.rMatrix,this.sMatrix,this.tr,1,!0),en-=1;Zt&&(this.applyTransforms(this.pMatrix,this.rMatrix,this.sMatrix,this.tr,-Zt,!0),en-=Zt)}Vt=this.data.m===1?0:this._currentCopies-1,Gt=this.data.m===1?1:-1,zt=this._currentCopies;for(var tn,sn;zt;){if(_e=this.elemsData[Vt].it,Dt=_e[_e.length-1].transform.mProps.v.props,sn=Dt.length,_e[_e.length-1].transform.mProps._mdf=!0,_e[_e.length-1].transform.op._mdf=!0,_e[_e.length-1].transform.op.v=this._currentCopies===1?this.so.v:this.so.v+(this.eo.v-this.so.v)*(Vt/(this._currentCopies-1)),en!==0){for((Vt!==0&&Gt===1||Vt!==this._currentCopies-1&&Gt===-1)&&this.applyTransforms(this.pMatrix,this.rMatrix,this.sMatrix,this.tr,1,!1),this.matrix.transform(rn[0],rn[1],rn[2],rn[3],rn[4],rn[5],rn[6],rn[7],rn[8],rn[9],rn[10],rn[11],rn[12],rn[13],rn[14],rn[15]),this.matrix.transform(Qt[0],Qt[1],Qt[2],Qt[3],Qt[4],Qt[5],Qt[6],Qt[7],Qt[8],Qt[9],Qt[10],Qt[11],Qt[12],Qt[13],Qt[14],Qt[15]),this.matrix.transform(nn[0],nn[1],nn[2],nn[3],nn[4],nn[5],nn[6],nn[7],nn[8],nn[9],nn[10],nn[11],nn[12],nn[13],nn[14],nn[15]),tn=0;tn<sn;tn+=1)Dt[tn]=this.matrix.props[tn];this.matrix.reset()}else for(this.matrix.reset(),tn=0;tn<sn;tn+=1)Dt[tn]=this.matrix.props[tn];en+=1,zt-=1,Vt+=Gt}}else for(zt=this._currentCopies,Vt=0,Gt=1;zt;)_e=this.elemsData[Vt].it,Dt=_e[_e.length-1].transform.mProps.v.props,_e[_e.length-1].transform.mProps._mdf=!1,_e[_e.length-1].transform.op._mdf=!1,zt-=1,Vt+=Gt;return jt},RepeaterModifier.prototype.addShape=function(){};function RoundCornersModifier(){}extendPrototype([ShapeModifier],RoundCornersModifier),RoundCornersModifier.prototype.initModifierProperties=function(kt,_e){this.getValue=this.processKeys,this.rd=PropertyFactory.getProp(kt,_e.r,0,null,this),this._isAnimated=!!this.rd.effectsSequence.length},RoundCornersModifier.prototype.processPath=function(kt,_e){var Dt=shapePool.newElement();Dt.c=kt.c;var Vt,Gt=kt._length,zt,jt,Ht,Wt,qt,Xt,Kt=0,Yt,Zt,Jt,nn,rn,Qt;for(Vt=0;Vt<Gt;Vt+=1)zt=kt.v[Vt],Ht=kt.o[Vt],jt=kt.i[Vt],zt[0]===Ht[0]&&zt[1]===Ht[1]&&zt[0]===jt[0]&&zt[1]===jt[1]?(Vt===0||Vt===Gt-1)&&!kt.c?(Dt.setTripleAt(zt[0],zt[1],Ht[0],Ht[1],jt[0],jt[1],Kt),Kt+=1):(Vt===0?Wt=kt.v[Gt-1]:Wt=kt.v[Vt-1],qt=Math.sqrt(Math.pow(zt[0]-Wt[0],2)+Math.pow(zt[1]-Wt[1],2)),Xt=qt?Math.min(qt/2,_e)/qt:0,rn=zt[0]+(Wt[0]-zt[0])*Xt,Yt=rn,Qt=zt[1]-(zt[1]-Wt[1])*Xt,Zt=Qt,Jt=Yt-(Yt-zt[0])*roundCorner,nn=Zt-(Zt-zt[1])*roundCorner,Dt.setTripleAt(Yt,Zt,Jt,nn,rn,Qt,Kt),Kt+=1,Vt===Gt-1?Wt=kt.v[0]:Wt=kt.v[Vt+1],qt=Math.sqrt(Math.pow(zt[0]-Wt[0],2)+Math.pow(zt[1]-Wt[1],2)),Xt=qt?Math.min(qt/2,_e)/qt:0,Jt=zt[0]+(Wt[0]-zt[0])*Xt,Yt=Jt,nn=zt[1]+(Wt[1]-zt[1])*Xt,Zt=nn,rn=Yt-(Yt-zt[0])*roundCorner,Qt=Zt-(Zt-zt[1])*roundCorner,Dt.setTripleAt(Yt,Zt,Jt,nn,rn,Qt,Kt),Kt+=1):(Dt.setTripleAt(kt.v[Vt][0],kt.v[Vt][1],kt.o[Vt][0],kt.o[Vt][1],kt.i[Vt][0],kt.i[Vt][1],Kt),Kt+=1);return Dt},RoundCornersModifier.prototype.processShapes=function(kt){var _e,Dt,Vt=this.shapes.length,Gt,zt,jt=this.rd.v;if(jt!==0){var Ht,Wt;for(Dt=0;Dt<Vt;Dt+=1){if(Ht=this.shapes[Dt],Wt=Ht.localShapeCollection,!(!Ht.shape._mdf&&!this._mdf&&!kt))for(Wt.releaseShapes(),Ht.shape._mdf=!0,_e=Ht.shape.paths.shapes,zt=Ht.shape.paths._length,Gt=0;Gt<zt;Gt+=1)Wt.addShape(this.processPath(_e[Gt],jt));Ht.shape.paths=Ht.localShapeCollection}}this.dynamicProperties.length||(this._mdf=!1)};function floatEqual(kt,_e){return Math.abs(kt-_e)*1e5<=Math.min(Math.abs(kt),Math.abs(_e))}function floatZero(kt){return Math.abs(kt)<=1e-5}function lerp(kt,_e,Dt){return kt*(1-Dt)+_e*Dt}function lerpPoint(kt,_e,Dt){return[lerp(kt[0],_e[0],Dt),lerp(kt[1],_e[1],Dt)]}function quadRoots(kt,_e,Dt){if(kt===0)return[];var Vt=_e*_e-4*kt*Dt;if(Vt<0)return[];var Gt=-_e/(2*kt);if(Vt===0)return[Gt];var zt=Math.sqrt(Vt)/(2*kt);return[Gt-zt,Gt+zt]}function polynomialCoefficients(kt,_e,Dt,Vt){return[-kt+3*_e-3*Dt+Vt,3*kt-6*_e+3*Dt,-3*kt+3*_e,kt]}function singlePoint(kt){return new PolynomialBezier(kt,kt,kt,kt,!1)}function PolynomialBezier(kt,_e,Dt,Vt,Gt){Gt&&pointEqual(kt,_e)&&(_e=lerpPoint(kt,Vt,1/3)),Gt&&pointEqual(Dt,Vt)&&(Dt=lerpPoint(kt,Vt,2/3));var zt=polynomialCoefficients(kt[0],_e[0],Dt[0],Vt[0]),jt=polynomialCoefficients(kt[1],_e[1],Dt[1],Vt[1]);this.a=[zt[0],jt[0]],this.b=[zt[1],jt[1]],this.c=[zt[2],jt[2]],this.d=[zt[3],jt[3]],this.points=[kt,_e,Dt,Vt]}PolynomialBezier.prototype.point=function(kt){return[((this.a[0]*kt+this.b[0])*kt+this.c[0])*kt+this.d[0],((this.a[1]*kt+this.b[1])*kt+this.c[1])*kt+this.d[1]]},PolynomialBezier.prototype.derivative=function(kt){return[(3*kt*this.a[0]+2*this.b[0])*kt+this.c[0],(3*kt*this.a[1]+2*this.b[1])*kt+this.c[1]]},PolynomialBezier.prototype.tangentAngle=function(kt){var _e=this.derivative(kt);return Math.atan2(_e[1],_e[0])},PolynomialBezier.prototype.normalAngle=function(kt){var _e=this.derivative(kt);return Math.atan2(_e[0],_e[1])},PolynomialBezier.prototype.inflectionPoints=function(){var kt=this.a[1]*this.b[0]-this.a[0]*this.b[1];if(floatZero(kt))return[];var _e=-.5*(this.a[1]*this.c[0]-this.a[0]*this.c[1])/kt,Dt=_e*_e-1/3*(this.b[1]*this.c[0]-this.b[0]*this.c[1])/kt;if(Dt<0)return[];var Vt=Math.sqrt(Dt);return floatZero(Vt)?Vt>0&&Vt<1?[_e]:[]:[_e-Vt,_e+Vt].filter(function(Gt){return Gt>0&&Gt<1})},PolynomialBezier.prototype.split=function(kt){if(kt<=0)return[singlePoint(this.points[0]),this];if(kt>=1)return[this,singlePoint(this.points[this.points.length-1])];var _e=lerpPoint(this.points[0],this.points[1],kt),Dt=lerpPoint(this.points[1],this.points[2],kt),Vt=lerpPoint(this.points[2],this.points[3],kt),Gt=lerpPoint(_e,Dt,kt),zt=lerpPoint(Dt,Vt,kt),jt=lerpPoint(Gt,zt,kt);return[new PolynomialBezier(this.points[0],_e,Gt,jt,!0),new PolynomialBezier(jt,zt,Vt,this.points[3],!0)]};function extrema(kt,_e){var Dt=kt.points[0][_e],Vt=kt.points[kt.points.length-1][_e];if(Dt>Vt){var Gt=Vt;Vt=Dt,Dt=Gt}for(var zt=quadRoots(3*kt.a[_e],2*kt.b[_e],kt.c[_e]),jt=0;jt<zt.length;jt+=1)if(zt[jt]>0&&zt[jt]<1){var Ht=kt.point(zt[jt])[_e];Ht<Dt?Dt=Ht:Ht>Vt&&(Vt=Ht)}return{min:Dt,max:Vt}}PolynomialBezier.prototype.bounds=function(){return{x:extrema(this,0),y:extrema(this,1)}},PolynomialBezier.prototype.boundingBox=function(){var kt=this.bounds();return{left:kt.x.min,right:kt.x.max,top:kt.y.min,bottom:kt.y.max,width:kt.x.max-kt.x.min,height:kt.y.max-kt.y.min,cx:(kt.x.max+kt.x.min)/2,cy:(kt.y.max+kt.y.min)/2}};function intersectData(kt,_e,Dt){var Vt=kt.boundingBox();return{cx:Vt.cx,cy:Vt.cy,width:Vt.width,height:Vt.height,bez:kt,t:(_e+Dt)/2,t1:_e,t2:Dt}}function splitData(kt){var _e=kt.bez.split(.5);return[intersectData(_e[0],kt.t1,kt.t),intersectData(_e[1],kt.t,kt.t2)]}function boxIntersect(kt,_e){return Math.abs(kt.cx-_e.cx)*2<kt.width+_e.width&&Math.abs(kt.cy-_e.cy)*2<kt.height+_e.height}function intersectsImpl(kt,_e,Dt,Vt,Gt,zt){if(boxIntersect(kt,_e)){if(Dt>=zt||kt.width<=Vt&&kt.height<=Vt&&_e.width<=Vt&&_e.height<=Vt){Gt.push([kt.t,_e.t]);return}var jt=splitData(kt),Ht=splitData(_e);intersectsImpl(jt[0],Ht[0],Dt+1,Vt,Gt,zt),intersectsImpl(jt[0],Ht[1],Dt+1,Vt,Gt,zt),intersectsImpl(jt[1],Ht[0],Dt+1,Vt,Gt,zt),intersectsImpl(jt[1],Ht[1],Dt+1,Vt,Gt,zt)}}PolynomialBezier.prototype.intersections=function(kt,_e,Dt){_e===void 0&&(_e=2),Dt===void 0&&(Dt=7);var Vt=[];return intersectsImpl(intersectData(this,0,1),intersectData(kt,0,1),0,_e,Vt,Dt),Vt},PolynomialBezier.shapeSegment=function(kt,_e){var Dt=(_e+1)%kt.length();return new PolynomialBezier(kt.v[_e],kt.o[_e],kt.i[Dt],kt.v[Dt],!0)},PolynomialBezier.shapeSegmentInverted=function(kt,_e){var Dt=(_e+1)%kt.length();return new PolynomialBezier(kt.v[Dt],kt.i[Dt],kt.o[_e],kt.v[_e],!0)};function crossProduct(kt,_e){return[kt[1]*_e[2]-kt[2]*_e[1],kt[2]*_e[0]-kt[0]*_e[2],kt[0]*_e[1]-kt[1]*_e[0]]}function lineIntersection(kt,_e,Dt,Vt){var Gt=[kt[0],kt[1],1],zt=[_e[0],_e[1],1],jt=[Dt[0],Dt[1],1],Ht=[Vt[0],Vt[1],1],Wt=crossProduct(crossProduct(Gt,zt),crossProduct(jt,Ht));return floatZero(Wt[2])?null:[Wt[0]/Wt[2],Wt[1]/Wt[2]]}function polarOffset(kt,_e,Dt){return[kt[0]+Math.cos(_e)*Dt,kt[1]-Math.sin(_e)*Dt]}function pointDistance(kt,_e){return Math.hypot(kt[0]-_e[0],kt[1]-_e[1])}function pointEqual(kt,_e){return floatEqual(kt[0],_e[0])&&floatEqual(kt[1],_e[1])}function ZigZagModifier(){}extendPrototype([ShapeModifier],ZigZagModifier),ZigZagModifier.prototype.initModifierProperties=function(kt,_e){this.getValue=this.processKeys,this.amplitude=PropertyFactory.getProp(kt,_e.s,0,null,this),this.frequency=PropertyFactory.getProp(kt,_e.r,0,null,this),this.pointsType=PropertyFactory.getProp(kt,_e.pt,0,null,this),this._isAnimated=this.amplitude.effectsSequence.length!==0||this.frequency.effectsSequence.length!==0||this.pointsType.effectsSequence.length!==0};function setPoint(kt,_e,Dt,Vt,Gt,zt,jt){var Ht=Dt-Math.PI/2,Wt=Dt+Math.PI/2,qt=_e[0]+Math.cos(Dt)*Vt*Gt,Xt=_e[1]-Math.sin(Dt)*Vt*Gt;kt.setTripleAt(qt,Xt,qt+Math.cos(Ht)*zt,Xt-Math.sin(Ht)*zt,qt+Math.cos(Wt)*jt,Xt-Math.sin(Wt)*jt,kt.length())}function getPerpendicularVector(kt,_e){var Dt=[_e[0]-kt[0],_e[1]-kt[1]],Vt=-Math.PI*.5,Gt=[Math.cos(Vt)*Dt[0]-Math.sin(Vt)*Dt[1],Math.sin(Vt)*Dt[0]+Math.cos(Vt)*Dt[1]];return Gt}function getProjectingAngle(kt,_e){var Dt=_e===0?kt.length()-1:_e-1,Vt=(_e+1)%kt.length(),Gt=kt.v[Dt],zt=kt.v[Vt],jt=getPerpendicularVector(Gt,zt);return Math.atan2(0,1)-Math.atan2(jt[1],jt[0])}function zigZagCorner(kt,_e,Dt,Vt,Gt,zt,jt){var Ht=getProjectingAngle(_e,Dt),Wt=_e.v[Dt%_e._length],qt=_e.v[Dt===0?_e._length-1:Dt-1],Xt=_e.v[(Dt+1)%_e._length],Kt=zt===2?Math.sqrt(Math.pow(Wt[0]-qt[0],2)+Math.pow(Wt[1]-qt[1],2)):0,Yt=zt===2?Math.sqrt(Math.pow(Wt[0]-Xt[0],2)+Math.pow(Wt[1]-Xt[1],2)):0;setPoint(kt,_e.v[Dt%_e._length],Ht,jt,Vt,Yt/((Gt+1)*2),Kt/((Gt+1)*2))}function zigZagSegment(kt,_e,Dt,Vt,Gt,zt){for(var jt=0;jt<Vt;jt+=1){var Ht=(jt+1)/(Vt+1),Wt=Gt===2?Math.sqrt(Math.pow(_e.points[3][0]-_e.points[0][0],2)+Math.pow(_e.points[3][1]-_e.points[0][1],2)):0,qt=_e.normalAngle(Ht),Xt=_e.point(Ht);setPoint(kt,Xt,qt,zt,Dt,Wt/((Vt+1)*2),Wt/((Vt+1)*2)),zt=-zt}return zt}ZigZagModifier.prototype.processPath=function(kt,_e,Dt,Vt){var Gt=kt._length,zt=shapePool.newElement();if(zt.c=kt.c,kt.c||(Gt-=1),Gt===0)return zt;var jt=-1,Ht=PolynomialBezier.shapeSegment(kt,0);zigZagCorner(zt,kt,0,_e,Dt,Vt,jt);for(var Wt=0;Wt<Gt;Wt+=1)jt=zigZagSegment(zt,Ht,_e,Dt,Vt,-jt),Wt===Gt-1&&!kt.c?Ht=null:Ht=PolynomialBezier.shapeSegment(kt,(Wt+1)%Gt),zigZagCorner(zt,kt,Wt+1,_e,Dt,Vt,jt);return zt},ZigZagModifier.prototype.processShapes=function(kt){var _e,Dt,Vt=this.shapes.length,Gt,zt,jt=this.amplitude.v,Ht=Math.max(0,Math.round(this.frequency.v)),Wt=this.pointsType.v;if(jt!==0){var qt,Xt;for(Dt=0;Dt<Vt;Dt+=1){if(qt=this.shapes[Dt],Xt=qt.localShapeCollection,!(!qt.shape._mdf&&!this._mdf&&!kt))for(Xt.releaseShapes(),qt.shape._mdf=!0,_e=qt.shape.paths.shapes,zt=qt.shape.paths._length,Gt=0;Gt<zt;Gt+=1)Xt.addShape(this.processPath(_e[Gt],jt,Ht,Wt));qt.shape.paths=qt.localShapeCollection}}this.dynamicProperties.length||(this._mdf=!1)};function linearOffset(kt,_e,Dt){var Vt=Math.atan2(_e[0]-kt[0],_e[1]-kt[1]);return[polarOffset(kt,Vt,Dt),polarOffset(_e,Vt,Dt)]}function offsetSegment(kt,_e){var Dt,Vt,Gt,zt,jt,Ht,Wt;Wt=linearOffset(kt.points[0],kt.points[1],_e),Dt=Wt[0],Vt=Wt[1],Wt=linearOffset(kt.points[1],kt.points[2],_e),Gt=Wt[0],zt=Wt[1],Wt=linearOffset(kt.points[2],kt.points[3],_e),jt=Wt[0],Ht=Wt[1];var qt=lineIntersection(Dt,Vt,Gt,zt);qt===null&&(qt=Vt);var Xt=lineIntersection(jt,Ht,Gt,zt);return Xt===null&&(Xt=jt),new PolynomialBezier(Dt,qt,Xt,Ht)}function joinLines(kt,_e,Dt,Vt,Gt){var zt=_e.points[3],jt=Dt.points[0];if(Vt===3||pointEqual(zt,jt))return zt;if(Vt===2){var Ht=-_e.tangentAngle(1),Wt=-Dt.tangentAngle(0)+Math.PI,qt=lineIntersection(zt,polarOffset(zt,Ht+Math.PI/2,100),jt,polarOffset(jt,Ht+Math.PI/2,100)),Xt=qt?pointDistance(qt,zt):pointDistance(zt,jt)/2,Kt=polarOffset(zt,Ht,2*Xt*roundCorner);return kt.setXYAt(Kt[0],Kt[1],"o",kt.length()-1),Kt=polarOffset(jt,Wt,2*Xt*roundCorner),kt.setTripleAt(jt[0],jt[1],jt[0],jt[1],Kt[0],Kt[1],kt.length()),jt}var Yt=pointEqual(zt,_e.points[2])?_e.points[0]:_e.points[2],Zt=pointEqual(jt,Dt.points[1])?Dt.points[3]:Dt.points[1],Jt=lineIntersection(Yt,zt,jt,Zt);return Jt&&pointDistance(Jt,zt)<Gt?(kt.setTripleAt(Jt[0],Jt[1],Jt[0],Jt[1],Jt[0],Jt[1],kt.length()),Jt):zt}function getIntersection(kt,_e){var Dt=kt.intersections(_e);return Dt.length&&floatEqual(Dt[0][0],1)&&Dt.shift(),Dt.length?Dt[0]:null}function pruneSegmentIntersection(kt,_e){var Dt=kt.slice(),Vt=_e.slice(),Gt=getIntersection(kt[kt.length-1],_e[0]);return Gt&&(Dt[kt.length-1]=kt[kt.length-1].split(Gt[0])[0],Vt[0]=_e[0].split(Gt[1])[1]),kt.length>1&&_e.length>1&&(Gt=getIntersection(kt[0],_e[_e.length-1]),Gt)?[[kt[0].split(Gt[0])[0]],[_e[_e.length-1].split(Gt[1])[1]]]:[Dt,Vt]}function pruneIntersections(kt){for(var _e,Dt=1;Dt<kt.length;Dt+=1)_e=pruneSegmentIntersection(kt[Dt-1],kt[Dt]),kt[Dt-1]=_e[0],kt[Dt]=_e[1];return kt.length>1&&(_e=pruneSegmentIntersection(kt[kt.length-1],kt[0]),kt[kt.length-1]=_e[0],kt[0]=_e[1]),kt}function offsetSegmentSplit(kt,_e){var Dt=kt.inflectionPoints(),Vt,Gt,zt,jt;if(Dt.length===0)return[offsetSegment(kt,_e)];if(Dt.length===1||floatEqual(Dt[1],1))return zt=kt.split(Dt[0]),Vt=zt[0],Gt=zt[1],[offsetSegment(Vt,_e),offsetSegment(Gt,_e)];zt=kt.split(Dt[0]),Vt=zt[0];var Ht=(Dt[1]-Dt[0])/(1-Dt[0]);return zt=zt[1].split(Ht),jt=zt[0],Gt=zt[1],[offsetSegment(Vt,_e),offsetSegment(jt,_e),offsetSegment(Gt,_e)]}function OffsetPathModifier(){}extendPrototype([ShapeModifier],OffsetPathModifier),OffsetPathModifier.prototype.initModifierProperties=function(kt,_e){this.getValue=this.processKeys,this.amount=PropertyFactory.getProp(kt,_e.a,0,null,this),this.miterLimit=PropertyFactory.getProp(kt,_e.ml,0,null,this),this.lineJoin=_e.lj,this._isAnimated=this.amount.effectsSequence.length!==0},OffsetPathModifier.prototype.processPath=function(kt,_e,Dt,Vt){var Gt=shapePool.newElement();Gt.c=kt.c;var zt=kt.length();kt.c||(zt-=1);var jt,Ht,Wt,qt=[];for(jt=0;jt<zt;jt+=1)Wt=PolynomialBezier.shapeSegment(kt,jt),qt.push(offsetSegmentSplit(Wt,_e));if(!kt.c)for(jt=zt-1;jt>=0;jt-=1)Wt=PolynomialBezier.shapeSegmentInverted(kt,jt),qt.push(offsetSegmentSplit(Wt,_e));qt=pruneIntersections(qt);var Xt=null,Kt=null;for(jt=0;jt<qt.length;jt+=1){var Yt=qt[jt];for(Kt&&(Xt=joinLines(Gt,Kt,Yt[0],Dt,Vt)),Kt=Yt[Yt.length-1],Ht=0;Ht<Yt.length;Ht+=1)Wt=Yt[Ht],Xt&&pointEqual(Wt.points[0],Xt)?Gt.setXYAt(Wt.points[1][0],Wt.points[1][1],"o",Gt.length()-1):Gt.setTripleAt(Wt.points[0][0],Wt.points[0][1],Wt.points[1][0],Wt.points[1][1],Wt.points[0][0],Wt.points[0][1],Gt.length()),Gt.setTripleAt(Wt.points[3][0],Wt.points[3][1],Wt.points[3][0],Wt.points[3][1],Wt.points[2][0],Wt.points[2][1],Gt.length()),Xt=Wt.points[3]}return qt.length&&joinLines(Gt,Kt,qt[0][0],Dt,Vt),Gt},OffsetPathModifier.prototype.processShapes=function(kt){var _e,Dt,Vt=this.shapes.length,Gt,zt,jt=this.amount.v,Ht=this.miterLimit.v,Wt=this.lineJoin;if(jt!==0){var qt,Xt;for(Dt=0;Dt<Vt;Dt+=1){if(qt=this.shapes[Dt],Xt=qt.localShapeCollection,!(!qt.shape._mdf&&!this._mdf&&!kt))for(Xt.releaseShapes(),qt.shape._mdf=!0,_e=qt.shape.paths.shapes,zt=qt.shape.paths._length,Gt=0;Gt<zt;Gt+=1)Xt.addShape(this.processPath(_e[Gt],jt,Wt,Ht));qt.shape.paths=qt.localShapeCollection}}this.dynamicProperties.length||(this._mdf=!1)};function getFontProperties(kt){for(var _e=kt.fStyle?kt.fStyle.split(" "):[],Dt="normal",Vt="normal",Gt=_e.length,zt,jt=0;jt<Gt;jt+=1)switch(zt=_e[jt].toLowerCase(),zt){case"italic":Vt="italic";break;case"bold":Dt="700";break;case"black":Dt="900";break;case"medium":Dt="500";break;case"regular":case"normal":Dt="400";break;case"light":case"thin":Dt="200";break}return{style:Vt,weight:kt.fWeight||Dt}}var FontManager=function(){var kt=5e3,_e={w:0,size:0,shapes:[],data:{shapes:[]}},Dt=[];Dt=Dt.concat([2304,2305,2306,2307,2362,2363,2364,2364,2366,2367,2368,2369,2370,2371,2372,2373,2374,2375,2376,2377,2378,2379,2380,2381,2382,2383,2387,2388,2389,2390,2391,2402,2403]);var Vt=127988,Gt=917631,zt=917601,jt=917626,Ht=65039,Wt=8205,qt=127462,Xt=127487,Kt=["d83cdffb","d83cdffc","d83cdffd","d83cdffe","d83cdfff"];function Yt(Tn){var Cn=Tn.split(","),yn,Sn=Cn.length,wn=[];for(yn=0;yn<Sn;yn+=1)Cn[yn]!=="sans-serif"&&Cn[yn]!=="monospace"&&wn.push(Cn[yn]);return wn.join(",")}function Zt(Tn,Cn){var yn=createTag("span");yn.setAttribute("aria-hidden",!0),yn.style.fontFamily=Cn;var Sn=createTag("span");Sn.innerText="giItT1WQy@!-/#",yn.style.position="absolute",yn.style.left="-10000px",yn.style.top="-10000px",yn.style.fontSize="300px",yn.style.fontVariant="normal",yn.style.fontStyle="normal",yn.style.fontWeight="normal",yn.style.letterSpacing="0",yn.appendChild(Sn),document.body.appendChild(yn);var wn=Sn.offsetWidth;return Sn.style.fontFamily=Yt(Tn)+", "+Cn,{node:Sn,w:wn,parent:yn}}function Jt(){var Tn,Cn=this.fonts.length,yn,Sn,wn=Cn;for(Tn=0;Tn<Cn;Tn+=1)this.fonts[Tn].loaded?wn-=1:this.fonts[Tn].fOrigin==="n"||this.fonts[Tn].origin===0?this.fonts[Tn].loaded=!0:(yn=this.fonts[Tn].monoCase.node,Sn=this.fonts[Tn].monoCase.w,yn.offsetWidth!==Sn?(wn-=1,this.fonts[Tn].loaded=!0):(yn=this.fonts[Tn].sansCase.node,Sn=this.fonts[Tn].sansCase.w,yn.offsetWidth!==Sn&&(wn-=1,this.fonts[Tn].loaded=!0)),this.fonts[Tn].loaded&&(this.fonts[Tn].sansCase.parent.parentNode.removeChild(this.fonts[Tn].sansCase.parent),this.fonts[Tn].monoCase.parent.parentNode.removeChild(this.fonts[Tn].monoCase.parent)));wn!==0&&Date.now()-this.initTime<kt?setTimeout(this.checkLoadedFontsBinded,20):setTimeout(this.setIsLoadedBinded,10)}function nn(Tn,Cn){var yn=document.body&&Cn?"svg":"canvas",Sn,wn=getFontProperties(Tn);if(yn==="svg"){var xn=createNS("text");xn.style.fontSize="100px",xn.setAttribute("font-family",Tn.fFamily),xn.setAttribute("font-style",wn.style),xn.setAttribute("font-weight",wn.weight),xn.textContent="1",Tn.fClass?(xn.style.fontFamily="inherit",xn.setAttribute("class",Tn.fClass)):xn.style.fontFamily=Tn.fFamily,Cn.appendChild(xn),Sn=xn}else{var Rn=new OffscreenCanvas(500,500).getContext("2d");Rn.font=wn.style+" "+wn.weight+" 100px "+Tn.fFamily,Sn=Rn}function Dn(kn){return yn==="svg"?(Sn.textContent=kn,Sn.getComputedTextLength()):Sn.measureText(kn).width}return{measureText:Dn}}function rn(Tn,Cn){if(!Tn){this.isLoaded=!0;return}if(this.chars){this.isLoaded=!0,this.fonts=Tn.list;return}if(!document.body){this.isLoaded=!0,Tn.list.forEach(function(qn){qn.helper=nn(qn),qn.cache={}}),this.fonts=Tn.list;return}var yn=Tn.list,Sn,wn=yn.length,xn=wn;for(Sn=0;Sn<wn;Sn+=1){var Rn=!0,Dn,kn;if(yn[Sn].loaded=!1,yn[Sn].monoCase=Zt(yn[Sn].fFamily,"monospace"),yn[Sn].sansCase=Zt(yn[Sn].fFamily,"sans-serif"),!yn[Sn].fPath)yn[Sn].loaded=!0,xn-=1;else if(yn[Sn].fOrigin==="p"||yn[Sn].origin===3){if(Dn=document.querySelectorAll('style[f-forigin="p"][f-family="'+yn[Sn].fFamily+'"], style[f-origin="3"][f-family="'+yn[Sn].fFamily+'"]'),Dn.length>0&&(Rn=!1),Rn){var Fn=createTag("style");Fn.setAttribute("f-forigin",yn[Sn].fOrigin),Fn.setAttribute("f-origin",yn[Sn].origin),Fn.setAttribute("f-family",yn[Sn].fFamily),Fn.type="text/css",Fn.innerText="@font-face {font-family: "+yn[Sn].fFamily+"; font-style: normal; src: url('"+yn[Sn].fPath+"');}",Cn.appendChild(Fn)}}else if(yn[Sn].fOrigin==="g"||yn[Sn].origin===1){for(Dn=document.querySelectorAll('link[f-forigin="g"], link[f-origin="1"]'),kn=0;kn<Dn.length;kn+=1)Dn[kn].href.indexOf(yn[Sn].fPath)!==-1&&(Rn=!1);if(Rn){var Pn=createTag("link");Pn.setAttribute("f-forigin",yn[Sn].fOrigin),Pn.setAttribute("f-origin",yn[Sn].origin),Pn.type="text/css",Pn.rel="stylesheet",Pn.href=yn[Sn].fPath,document.body.appendChild(Pn)}}else if(yn[Sn].fOrigin==="t"||yn[Sn].origin===2){for(Dn=document.querySelectorAll('script[f-forigin="t"], script[f-origin="2"]'),kn=0;kn<Dn.length;kn+=1)yn[Sn].fPath===Dn[kn].src&&(Rn=!1);if(Rn){var Bn=createTag("link");Bn.setAttribute("f-forigin",yn[Sn].fOrigin),Bn.setAttribute("f-origin",yn[Sn].origin),Bn.setAttribute("rel","stylesheet"),Bn.setAttribute("href",yn[Sn].fPath),Cn.appendChild(Bn)}}yn[Sn].helper=nn(yn[Sn],Cn),yn[Sn].cache={},this.fonts.push(yn[Sn])}xn===0?this.isLoaded=!0:setTimeout(this.checkLoadedFonts.bind(this),100)}function Qt(Tn){if(Tn){this.chars||(this.chars=[]);var Cn,yn=Tn.length,Sn,wn=this.chars.length,xn;for(Cn=0;Cn<yn;Cn+=1){for(Sn=0,xn=!1;Sn<wn;)this.chars[Sn].style===Tn[Cn].style&&this.chars[Sn].fFamily===Tn[Cn].fFamily&&this.chars[Sn].ch===Tn[Cn].ch&&(xn=!0),Sn+=1;xn||(this.chars.push(Tn[Cn]),wn+=1)}}}function en(Tn,Cn,yn){for(var Sn=0,wn=this.chars.length;Sn<wn;){if(this.chars[Sn].ch===Tn&&this.chars[Sn].style===Cn&&this.chars[Sn].fFamily===yn)return this.chars[Sn];Sn+=1}return(typeof Tn=="string"&&Tn.charCodeAt(0)!==13||!Tn)&&console&&console.warn&&!this._warned&&(this._warned=!0,console.warn("Missing character from exported characters list: ",Tn,Cn,yn)),_e}function tn(Tn,Cn,yn){var Sn=this.getFontByName(Cn),wn=Tn;if(!Sn.cache[wn]){var xn=Sn.helper;if(Tn===" "){var Rn=xn.measureText("|"+Tn+"|"),Dn=xn.measureText("||");Sn.cache[wn]=(Rn-Dn)/100}else Sn.cache[wn]=xn.measureText(Tn)/100}return Sn.cache[wn]*yn}function sn(Tn){for(var Cn=0,yn=this.fonts.length;Cn<yn;){if(this.fonts[Cn].fName===Tn)return this.fonts[Cn];Cn+=1}return this.fonts[0]}function cn(Tn){var Cn=0,yn=Tn.charCodeAt(0);if(yn>=55296&&yn<=56319){var Sn=Tn.charCodeAt(1);Sn>=56320&&Sn<=57343&&(Cn=(yn-55296)*1024+Sn-56320+65536)}return Cn}function un(Tn,Cn){var yn=Tn.toString(16)+Cn.toString(16);return Kt.indexOf(yn)!==-1}function hn(Tn){return Tn===Wt}function dn(Tn){return Tn===Ht}function pn(Tn){var Cn=cn(Tn);return Cn>=qt&&Cn<=Xt}function fn(Tn){return pn(Tn.substr(0,2))&&pn(Tn.substr(2,2))}function mn(Tn){return Dt.indexOf(Tn)!==-1}function vn(Tn,Cn){var yn=cn(Tn.substr(Cn,2));if(yn!==Vt)return!1;var Sn=0;for(Cn+=2;Sn<5;){if(yn=cn(Tn.substr(Cn,2)),yn<zt||yn>jt)return!1;Sn+=1,Cn+=2}return cn(Tn.substr(Cn,2))===Gt}function _n(){this.isLoaded=!0}var En=function(){this.fonts=[],this.chars=null,this.typekitLoaded=0,this.isLoaded=!1,this._warned=!1,this.initTime=Date.now(),this.setIsLoadedBinded=this.setIsLoaded.bind(this),this.checkLoadedFontsBinded=this.checkLoadedFonts.bind(this)};En.isModifier=un,En.isZeroWidthJoiner=hn,En.isFlagEmoji=fn,En.isRegionalCode=pn,En.isCombinedCharacter=mn,En.isRegionalFlag=vn,En.isVariationSelector=dn,En.BLACK_FLAG_CODE_POINT=Vt;var An={addChars:Qt,addFonts:rn,getCharData:en,getFontByName:sn,measureText:tn,checkLoadedFonts:Jt,setIsLoaded:_n};return En.prototype=An,En}();function SlotManager(kt){this.animationData=kt}SlotManager.prototype.getProp=function(kt){return this.animationData.slots&&this.animationData.slots[kt.sid]?Object.assign(kt,this.animationData.slots[kt.sid].p):kt};function slotFactory(kt){return new SlotManager(kt)}function RenderableElement(){}RenderableElement.prototype={initRenderable:function(){this.isInRange=!1,this.hidden=!1,this.isTransparent=!1,this.renderableComponents=[]},addRenderableComponent:function(_e){this.renderableComponents.indexOf(_e)===-1&&this.renderableComponents.push(_e)},removeRenderableComponent:function(_e){this.renderableComponents.indexOf(_e)!==-1&&this.renderableComponents.splice(this.renderableComponents.indexOf(_e),1)},prepareRenderableFrame:function(_e){this.checkLayerLimits(_e)},checkTransparency:function(){this.finalTransform.mProp.o.v<=0?!this.isTransparent&&this.globalData.renderConfig.hideOnTransparent&&(this.isTransparent=!0,this.hide()):this.isTransparent&&(this.isTransparent=!1,this.show())},checkLayerLimits:function(_e){this.data.ip-this.data.st<=_e&&this.data.op-this.data.st>_e?this.isInRange!==!0&&(this.globalData._mdf=!0,this._mdf=!0,this.isInRange=!0,this.show()):this.isInRange!==!1&&(this.globalData._mdf=!0,this.isInRange=!1,this.hide())},renderRenderable:function(){var _e,Dt=this.renderableComponents.length;for(_e=0;_e<Dt;_e+=1)this.renderableComponents[_e].renderFrame(this._isFirstFrame)},sourceRectAtTime:function(){return{top:0,left:0,width:100,height:100}},getLayerSize:function(){return this.data.ty===5?{w:this.data.textData.width,h:this.data.textData.height}:{w:this.data.width,h:this.data.height}}};var getBlendMode=function(){var kt={0:"source-over",1:"multiply",2:"screen",3:"overlay",4:"darken",5:"lighten",6:"color-dodge",7:"color-burn",8:"hard-light",9:"soft-light",10:"difference",11:"exclusion",12:"hue",13:"saturation",14:"color",15:"luminosity"};return function(_e){return kt[_e]||""}}();function SliderEffect(kt,_e,Dt){this.p=PropertyFactory.getProp(_e,kt.v,0,0,Dt)}function AngleEffect(kt,_e,Dt){this.p=PropertyFactory.getProp(_e,kt.v,0,0,Dt)}function ColorEffect(kt,_e,Dt){this.p=PropertyFactory.getProp(_e,kt.v,1,0,Dt)}function PointEffect(kt,_e,Dt){this.p=PropertyFactory.getProp(_e,kt.v,1,0,Dt)}function LayerIndexEffect(kt,_e,Dt){this.p=PropertyFactory.getProp(_e,kt.v,0,0,Dt)}function MaskIndexEffect(kt,_e,Dt){this.p=PropertyFactory.getProp(_e,kt.v,0,0,Dt)}function CheckboxEffect(kt,_e,Dt){this.p=PropertyFactory.getProp(_e,kt.v,0,0,Dt)}function NoValueEffect(){this.p={}}function EffectsManager(kt,_e){var Dt=kt.ef||[];this.effectElements=[];var Vt,Gt=Dt.length,zt;for(Vt=0;Vt<Gt;Vt+=1)zt=new GroupEffect(Dt[Vt],_e),this.effectElements.push(zt)}function GroupEffect(kt,_e){this.init(kt,_e)}extendPrototype([DynamicPropertyContainer],GroupEffect),GroupEffect.prototype.getValue=GroupEffect.prototype.iterateDynamicProperties,GroupEffect.prototype.init=function(kt,_e){this.data=kt,this.effectElements=[],this.initDynamicPropertyContainer(_e);var Dt,Vt=this.data.ef.length,Gt,zt=this.data.ef;for(Dt=0;Dt<Vt;Dt+=1){switch(Gt=null,zt[Dt].ty){case 0:Gt=new SliderEffect(zt[Dt],_e,this);break;case 1:Gt=new AngleEffect(zt[Dt],_e,this);break;case 2:Gt=new ColorEffect(zt[Dt],_e,this);break;case 3:Gt=new PointEffect(zt[Dt],_e,this);break;case 4:case 7:Gt=new CheckboxEffect(zt[Dt],_e,this);break;case 10:Gt=new LayerIndexEffect(zt[Dt],_e,this);break;case 11:Gt=new MaskIndexEffect(zt[Dt],_e,this);break;case 5:Gt=new EffectsManager(zt[Dt],_e);break;default:Gt=new NoValueEffect(zt[Dt]);break}Gt&&this.effectElements.push(Gt)}};function BaseElement(){}BaseElement.prototype={checkMasks:function(){if(!this.data.hasMask)return!1;for(var _e=0,Dt=this.data.masksProperties.length;_e<Dt;){if(this.data.masksProperties[_e].mode!=="n"&&this.data.masksProperties[_e].cl!==!1)return!0;_e+=1}return!1},initExpressions:function(){var _e=getExpressionInterfaces();if(_e){var Dt=_e("layer"),Vt=_e("effects"),Gt=_e("shape"),zt=_e("text"),jt=_e("comp");this.layerInterface=Dt(this),this.data.hasMask&&this.maskManager&&this.layerInterface.registerMaskInterface(this.maskManager);var Ht=Vt.createEffectsInterface(this,this.layerInterface);this.layerInterface.registerEffectsInterface(Ht),this.data.ty===0||this.data.xt?this.compInterface=jt(this):this.data.ty===4?(this.layerInterface.shapeInterface=Gt(this.shapesData,this.itemsData,this.layerInterface),this.layerInterface.content=this.layerInterface.shapeInterface):this.data.ty===5&&(this.layerInterface.textInterface=zt(this),this.layerInterface.text=this.layerInterface.textInterface)}},setBlendMode:function(){var _e=getBlendMode(this.data.bm),Dt=this.baseElement||this.layerElement;Dt.style["mix-blend-mode"]=_e},initBaseData:function(_e,Dt,Vt){this.globalData=Dt,this.comp=Vt,this.data=_e,this.layerId=createElementID(),this.data.sr||(this.data.sr=1),this.effectsManager=new EffectsManager(this.data,this,this.dynamicProperties)},getType:function(){return this.type},sourceRectAtTime:function(){}};function FrameElement(){}FrameElement.prototype={initFrame:function(){this._isFirstFrame=!1,this.dynamicProperties=[],this._mdf=!1},prepareProperties:function(_e,Dt){var Vt,Gt=this.dynamicProperties.length;for(Vt=0;Vt<Gt;Vt+=1)(Dt||this._isParent&&this.dynamicProperties[Vt].propType==="transform")&&(this.dynamicProperties[Vt].getValue(),this.dynamicProperties[Vt]._mdf&&(this.globalData._mdf=!0,this._mdf=!0))},addDynamicProperty:function(_e){this.dynamicProperties.indexOf(_e)===-1&&this.dynamicProperties.push(_e)}};function FootageElement(kt,_e,Dt){this.initFrame(),this.initRenderable(),this.assetData=_e.getAssetData(kt.refId),this.footageData=_e.imageLoader.getAsset(this.assetData),this.initBaseData(kt,_e,Dt)}FootageElement.prototype.prepareFrame=function(){},extendPrototype([RenderableElement,BaseElement,FrameElement],FootageElement),FootageElement.prototype.getBaseElement=function(){return null},FootageElement.prototype.renderFrame=function(){},FootageElement.prototype.destroy=function(){},FootageElement.prototype.initExpressions=function(){var kt=getExpressionInterfaces();if(kt){var _e=kt("footage");this.layerInterface=_e(this)}},FootageElement.prototype.getFootageData=function(){return this.footageData};function AudioElement(kt,_e,Dt){this.initFrame(),this.initRenderable(),this.assetData=_e.getAssetData(kt.refId),this.initBaseData(kt,_e,Dt),this._isPlaying=!1,this._canPlay=!1;var Vt=this.globalData.getAssetsPath(this.assetData);this.audio=this.globalData.audioController.createAudio(Vt),this._currentTime=0,this.globalData.audioController.addAudio(this),this._volumeMultiplier=1,this._volume=1,this._previousVolume=null,this.tm=kt.tm?PropertyFactory.getProp(this,kt.tm,0,_e.frameRate,this):{_placeholder:!0},this.lv=PropertyFactory.getProp(this,kt.au&&kt.au.lv?kt.au.lv:{k:[100]},1,.01,this)}AudioElement.prototype.prepareFrame=function(kt){if(this.prepareRenderableFrame(kt,!0),this.prepareProperties(kt,!0),this.tm._placeholder)this._currentTime=kt/this.data.sr;else{var _e=this.tm.v;this._currentTime=_e}this._volume=this.lv.v[0];var Dt=this._volume*this._volumeMultiplier;this._previousVolume!==Dt&&(this._previousVolume=Dt,this.audio.volume(Dt))},extendPrototype([RenderableElement,BaseElement,FrameElement],AudioElement),AudioElement.prototype.renderFrame=function(){this.isInRange&&this._canPlay&&(this._isPlaying?(!this.audio.playing()||Math.abs(this._currentTime/this.globalData.frameRate-this.audio.seek())>.1)&&this.audio.seek(this._currentTime/this.globalData.frameRate):(this.audio.play(),this.audio.seek(this._currentTime/this.globalData.frameRate),this._isPlaying=!0))},AudioElement.prototype.show=function(){},AudioElement.prototype.hide=function(){this.audio.pause(),this._isPlaying=!1},AudioElement.prototype.pause=function(){this.audio.pause(),this._isPlaying=!1,this._canPlay=!1},AudioElement.prototype.resume=function(){this._canPlay=!0},AudioElement.prototype.setRate=function(kt){this.audio.rate(kt)},AudioElement.prototype.volume=function(kt){this._volumeMultiplier=kt,this._previousVolume=kt*this._volume,this.audio.volume(this._previousVolume)},AudioElement.prototype.getBaseElement=function(){return null},AudioElement.prototype.destroy=function(){},AudioElement.prototype.sourceRectAtTime=function(){},AudioElement.prototype.initExpressions=function(){};function BaseRenderer(){}BaseRenderer.prototype.checkLayers=function(kt){var _e,Dt=this.layers.length,Vt;for(this.completeLayers=!0,_e=Dt-1;_e>=0;_e-=1)this.elements[_e]||(Vt=this.layers[_e],Vt.ip-Vt.st<=kt-this.layers[_e].st&&Vt.op-Vt.st>kt-this.layers[_e].st&&this.buildItem(_e)),this.completeLayers=this.elements[_e]?this.completeLayers:!1;this.checkPendingElements()},BaseRenderer.prototype.createItem=function(kt){switch(kt.ty){case 2:return this.createImage(kt);case 0:return this.createComp(kt);case 1:return this.createSolid(kt);case 3:return this.createNull(kt);case 4:return this.createShape(kt);case 5:return this.createText(kt);case 6:return this.createAudio(kt);case 13:return this.createCamera(kt);case 15:return this.createFootage(kt);default:return this.createNull(kt)}},BaseRenderer.prototype.createCamera=function(){throw new Error("You're using a 3d camera. Try the html renderer.")},BaseRenderer.prototype.createAudio=function(kt){return new AudioElement(kt,this.globalData,this)},BaseRenderer.prototype.createFootage=function(kt){return new FootageElement(kt,this.globalData,this)},BaseRenderer.prototype.buildAllItems=function(){var kt,_e=this.layers.length;for(kt=0;kt<_e;kt+=1)this.buildItem(kt);this.checkPendingElements()},BaseRenderer.prototype.includeLayers=function(kt){this.completeLayers=!1;var _e,Dt=kt.length,Vt,Gt=this.layers.length;for(_e=0;_e<Dt;_e+=1)for(Vt=0;Vt<Gt;){if(this.layers[Vt].id===kt[_e].id){this.layers[Vt]=kt[_e];break}Vt+=1}},BaseRenderer.prototype.setProjectInterface=function(kt){this.globalData.projectInterface=kt},BaseRenderer.prototype.initItems=function(){this.globalData.progressiveLoad||this.buildAllItems()},BaseRenderer.prototype.buildElementParenting=function(kt,_e,Dt){for(var Vt=this.elements,Gt=this.layers,zt=0,jt=Gt.length;zt<jt;)Gt[zt].ind==_e&&(!Vt[zt]||Vt[zt]===!0?(this.buildItem(zt),this.addPendingElement(kt)):(Dt.push(Vt[zt]),Vt[zt].setAsParent(),Gt[zt].parent!==void 0?this.buildElementParenting(kt,Gt[zt].parent,Dt):kt.setHierarchy(Dt))),zt+=1},BaseRenderer.prototype.addPendingElement=function(kt){this.pendingElements.push(kt)},BaseRenderer.prototype.searchExtraCompositions=function(kt){var _e,Dt=kt.length;for(_e=0;_e<Dt;_e+=1)if(kt[_e].xt){var Vt=this.createComp(kt[_e]);Vt.initExpressions(),this.globalData.projectInterface.registerComposition(Vt)}},BaseRenderer.prototype.getElementById=function(kt){var _e,Dt=this.elements.length;for(_e=0;_e<Dt;_e+=1)if(this.elements[_e].data.ind===kt)return this.elements[_e];return null},BaseRenderer.prototype.getElementByPath=function(kt){var _e=kt.shift(),Dt;if(typeof _e=="number")Dt=this.elements[_e];else{var Vt,Gt=this.elements.length;for(Vt=0;Vt<Gt;Vt+=1)if(this.elements[Vt].data.nm===_e){Dt=this.elements[Vt];break}}return kt.length===0?Dt:Dt.getElementByPath(kt)},BaseRenderer.prototype.setupGlobalData=function(kt,_e){this.globalData.fontManager=new FontManager,this.globalData.slotManager=slotFactory(kt),this.globalData.fontManager.addChars(kt.chars),this.globalData.fontManager.addFonts(kt.fonts,_e),this.globalData.getAssetData=this.animationItem.getAssetData.bind(this.animationItem),this.globalData.getAssetsPath=this.animationItem.getAssetsPath.bind(this.animationItem),this.globalData.imageLoader=this.animationItem.imagePreloader,this.globalData.audioController=this.animationItem.audioController,this.globalData.frameId=0,this.globalData.frameRate=kt.fr,this.globalData.nm=kt.nm,this.globalData.compSize={w:kt.w,h:kt.h}};var effectTypes={TRANSFORM_EFFECT:"transformEFfect"};function TransformElement(){}TransformElement.prototype={initTransform:function(){var _e=new Matrix;this.finalTransform={mProp:this.data.ks?TransformPropertyFactory.getTransformProperty(this,this.data.ks,this):{o:0},_matMdf:!1,_localMatMdf:!1,_opMdf:!1,mat:_e,localMat:_e,localOpacity:1},this.data.ao&&(this.finalTransform.mProp.autoOriented=!0),this.data.ty},renderTransform:function(){if(this.finalTransform._opMdf=this.finalTransform.mProp.o._mdf||this._isFirstFrame,this.finalTransform._matMdf=this.finalTransform.mProp._mdf||this._isFirstFrame,this.hierarchy){var _e,Dt=this.finalTransform.mat,Vt=0,Gt=this.hierarchy.length;if(!this.finalTransform._matMdf)for(;Vt<Gt;){if(this.hierarchy[Vt].finalTransform.mProp._mdf){this.finalTransform._matMdf=!0;break}Vt+=1}if(this.finalTransform._matMdf)for(_e=this.finalTransform.mProp.v.props,Dt.cloneFromProps(_e),Vt=0;Vt<Gt;Vt+=1)Dt.multiply(this.hierarchy[Vt].finalTransform.mProp.v)}this.finalTransform._matMdf&&(this.finalTransform._localMatMdf=this.finalTransform._matMdf),this.finalTransform._opMdf&&(this.finalTransform.localOpacity=this.finalTransform.mProp.o.v)},renderLocalTransform:function(){if(this.localTransforms){var _e=0,Dt=this.localTransforms.length;if(this.finalTransform._localMatMdf=this.finalTransform._matMdf,!this.finalTransform._localMatMdf||!this.finalTransform._opMdf)for(;_e<Dt;)this.localTransforms[_e]._mdf&&(this.finalTransform._localMatMdf=!0),this.localTransforms[_e]._opMdf&&!this.finalTransform._opMdf&&(this.finalTransform.localOpacity=this.finalTransform.mProp.o.v,this.finalTransform._opMdf=!0),_e+=1;if(this.finalTransform._localMatMdf){var Vt=this.finalTransform.localMat;for(this.localTransforms[0].matrix.clone(Vt),_e=1;_e<Dt;_e+=1){var Gt=this.localTransforms[_e].matrix;Vt.multiply(Gt)}Vt.multiply(this.finalTransform.mat)}if(this.finalTransform._opMdf){var zt=this.finalTransform.localOpacity;for(_e=0;_e<Dt;_e+=1)zt*=this.localTransforms[_e].opacity*.01;this.finalTransform.localOpacity=zt}}},searchEffectTransforms:function(){if(this.renderableEffectsManager){var _e=this.renderableEffectsManager.getEffects(effectTypes.TRANSFORM_EFFECT);if(_e.length){this.localTransforms=[],this.finalTransform.localMat=new Matrix;var Dt=0,Vt=_e.length;for(Dt=0;Dt<Vt;Dt+=1)this.localTransforms.push(_e[Dt])}}},globalToLocal:function(_e){var Dt=[];Dt.push(this.finalTransform);for(var Vt=!0,Gt=this.comp;Vt;)Gt.finalTransform?(Gt.data.hasMask&&Dt.splice(0,0,Gt.finalTransform),Gt=Gt.comp):Vt=!1;var zt,jt=Dt.length,Ht;for(zt=0;zt<jt;zt+=1)Ht=Dt[zt].mat.applyToPointArray(0,0,0),_e=[_e[0]-Ht[0],_e[1]-Ht[1],0];return _e},mHelper:new Matrix};function MaskElement(kt,_e,Dt){this.data=kt,this.element=_e,this.globalData=Dt,this.storedData=[],this.masksProperties=this.data.masksProperties||[],this.maskElement=null;var Vt=this.globalData.defs,Gt,zt=this.masksProperties?this.masksProperties.length:0;this.viewData=createSizedArray(zt),this.solidPath="";var jt,Ht=this.masksProperties,Wt=0,qt=[],Xt,Kt,Yt=createElementID(),Zt,Jt,nn,rn,Qt="clipPath",en="clip-path";for(Gt=0;Gt<zt;Gt+=1)if((Ht[Gt].mode!=="a"&&Ht[Gt].mode!=="n"||Ht[Gt].inv||Ht[Gt].o.k!==100||Ht[Gt].o.x)&&(Qt="mask",en="mask"),(Ht[Gt].mode==="s"||Ht[Gt].mode==="i")&&Wt===0?(Zt=createNS("rect"),Zt.setAttribute("fill","#ffffff"),Zt.setAttribute("width",this.element.comp.data.w||0),Zt.setAttribute("height",this.element.comp.data.h||0),qt.push(Zt)):Zt=null,jt=createNS("path"),Ht[Gt].mode==="n")this.viewData[Gt]={op:PropertyFactory.getProp(this.element,Ht[Gt].o,0,.01,this.element),prop:ShapePropertyFactory.getShapeProp(this.element,Ht[Gt],3),elem:jt,lastPath:""},Vt.appendChild(jt);else{Wt+=1,jt.setAttribute("fill",Ht[Gt].mode==="s"?"#000000":"#ffffff"),jt.setAttribute("clip-rule","nonzero");var tn;if(Ht[Gt].x.k!==0?(Qt="mask",en="mask",rn=PropertyFactory.getProp(this.element,Ht[Gt].x,0,null,this.element),tn=createElementID(),Jt=createNS("filter"),Jt.setAttribute("id",tn),nn=createNS("feMorphology"),nn.setAttribute("operator","erode"),nn.setAttribute("in","SourceGraphic"),nn.setAttribute("radius","0"),Jt.appendChild(nn),Vt.appendChild(Jt),jt.setAttribute("stroke",Ht[Gt].mode==="s"?"#000000":"#ffffff")):(nn=null,rn=null),this.storedData[Gt]={elem:jt,x:rn,expan:nn,lastPath:"",lastOperator:"",filterId:tn,lastRadius:0},Ht[Gt].mode==="i"){Kt=qt.length;var sn=createNS("g");for(Xt=0;Xt<Kt;Xt+=1)sn.appendChild(qt[Xt]);var cn=createNS("mask");cn.setAttribute("mask-type","alpha"),cn.setAttribute("id",Yt+"_"+Wt),cn.appendChild(jt),Vt.appendChild(cn),sn.setAttribute("mask","url("+getLocationHref()+"#"+Yt+"_"+Wt+")"),qt.length=0,qt.push(sn)}else qt.push(jt);Ht[Gt].inv&&!this.solidPath&&(this.solidPath=this.createLayerSolidPath()),this.viewData[Gt]={elem:jt,lastPath:"",op:PropertyFactory.getProp(this.element,Ht[Gt].o,0,.01,this.element),prop:ShapePropertyFactory.getShapeProp(this.element,Ht[Gt],3),invRect:Zt},this.viewData[Gt].prop.k||this.drawPath(Ht[Gt],this.viewData[Gt].prop.v,this.viewData[Gt])}for(this.maskElement=createNS(Qt),zt=qt.length,Gt=0;Gt<zt;Gt+=1)this.maskElement.appendChild(qt[Gt]);Wt>0&&(this.maskElement.setAttribute("id",Yt),this.element.maskedElement.setAttribute(en,"url("+getLocationHref()+"#"+Yt+")"),Vt.appendChild(this.maskElement)),this.viewData.length&&this.element.addRenderableComponent(this)}MaskElement.prototype.getMaskProperty=function(kt){return this.viewData[kt].prop},MaskElement.prototype.renderFrame=function(kt){var _e=this.element.finalTransform.mat,Dt,Vt=this.masksProperties.length;for(Dt=0;Dt<Vt;Dt+=1)if((this.viewData[Dt].prop._mdf||kt)&&this.drawPath(this.masksProperties[Dt],this.viewData[Dt].prop.v,this.viewData[Dt]),(this.viewData[Dt].op._mdf||kt)&&this.viewData[Dt].elem.setAttribute("fill-opacity",this.viewData[Dt].op.v),this.masksProperties[Dt].mode!=="n"&&(this.viewData[Dt].invRect&&(this.element.finalTransform.mProp._mdf||kt)&&this.viewData[Dt].invRect.setAttribute("transform",_e.getInverseMatrix().to2dCSS()),this.storedData[Dt].x&&(this.storedData[Dt].x._mdf||kt))){var Gt=this.storedData[Dt].expan;this.storedData[Dt].x.v<0?(this.storedData[Dt].lastOperator!=="erode"&&(this.storedData[Dt].lastOperator="erode",this.storedData[Dt].elem.setAttribute("filter","url("+getLocationHref()+"#"+this.storedData[Dt].filterId+")")),Gt.setAttribute("radius",-this.storedData[Dt].x.v)):(this.storedData[Dt].lastOperator!=="dilate"&&(this.storedData[Dt].lastOperator="dilate",this.storedData[Dt].elem.setAttribute("filter",null)),this.storedData[Dt].elem.setAttribute("stroke-width",this.storedData[Dt].x.v*2))}},MaskElement.prototype.getMaskelement=function(){return this.maskElement},MaskElement.prototype.createLayerSolidPath=function(){var kt="M0,0 ";return kt+=" h"+this.globalData.compSize.w,kt+=" v"+this.globalData.compSize.h,kt+=" h-"+this.globalData.compSize.w,kt+=" v-"+this.globalData.compSize.h+" ",kt},MaskElement.prototype.drawPath=function(kt,_e,Dt){var Vt=" M"+_e.v[0][0]+","+_e.v[0][1],Gt,zt;for(zt=_e._length,Gt=1;Gt<zt;Gt+=1)Vt+=" C"+_e.o[Gt-1][0]+","+_e.o[Gt-1][1]+" "+_e.i[Gt][0]+","+_e.i[Gt][1]+" "+_e.v[Gt][0]+","+_e.v[Gt][1];if(_e.c&&zt>1&&(Vt+=" C"+_e.o[Gt-1][0]+","+_e.o[Gt-1][1]+" "+_e.i[0][0]+","+_e.i[0][1]+" "+_e.v[0][0]+","+_e.v[0][1]),Dt.lastPath!==Vt){var jt="";Dt.elem&&(_e.c&&(jt=kt.inv?this.solidPath+Vt:Vt),Dt.elem.setAttribute("d",jt)),Dt.lastPath=Vt}},MaskElement.prototype.destroy=function(){this.element=null,this.globalData=null,this.maskElement=null,this.data=null,this.masksProperties=null};var filtersFactory=function(){var kt={};kt.createFilter=_e,kt.createAlphaToLuminanceFilter=Dt;function _e(Vt,Gt){var zt=createNS("filter");return zt.setAttribute("id",Vt),Gt!==!0&&(zt.setAttribute("filterUnits","objectBoundingBox"),zt.setAttribute("x","0%"),zt.setAttribute("y","0%"),zt.setAttribute("width","100%"),zt.setAttribute("height","100%")),zt}function Dt(){var Vt=createNS("feColorMatrix");return Vt.setAttribute("type","matrix"),Vt.setAttribute("color-interpolation-filters","sRGB"),Vt.setAttribute("values","0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 1"),Vt}return kt}(),featureSupport=function(){var kt={maskType:!0,svgLumaHidden:!0,offscreenCanvas:typeof OffscreenCanvas<"u"};return(/MSIE 10/i.test(navigator.userAgent)||/MSIE 9/i.test(navigator.userAgent)||/rv:11.0/i.test(navigator.userAgent)||/Edge\/\d./i.test(navigator.userAgent))&&(kt.maskType=!1),/firefox/i.test(navigator.userAgent)&&(kt.svgLumaHidden=!1),kt}(),registeredEffects$1={},idPrefix="filter_result_";function SVGEffects(kt){var _e,Dt="SourceGraphic",Vt=kt.data.ef?kt.data.ef.length:0,Gt=createElementID(),zt=filtersFactory.createFilter(Gt,!0),jt=0;this.filters=[];var Ht;for(_e=0;_e<Vt;_e+=1){Ht=null;var Wt=kt.data.ef[_e].ty;if(registeredEffects$1[Wt]){var qt=registeredEffects$1[Wt].effect;Ht=new qt(zt,kt.effectsManager.effectElements[_e],kt,idPrefix+jt,Dt),Dt=idPrefix+jt,registeredEffects$1[Wt].countsAsEffect&&(jt+=1)}Ht&&this.filters.push(Ht)}jt&&(kt.globalData.defs.appendChild(zt),kt.layerElement.setAttribute("filter","url("+getLocationHref()+"#"+Gt+")")),this.filters.length&&kt.addRenderableComponent(this)}SVGEffects.prototype.renderFrame=function(kt){var _e,Dt=this.filters.length;for(_e=0;_e<Dt;_e+=1)this.filters[_e].renderFrame(kt)},SVGEffects.prototype.getEffects=function(kt){var _e,Dt=this.filters.length,Vt=[];for(_e=0;_e<Dt;_e+=1)this.filters[_e].type===kt&&Vt.push(this.filters[_e]);return Vt};function registerEffect$1(kt,_e,Dt){registeredEffects$1[kt]={effect:_e,countsAsEffect:Dt}}function SVGBaseElement(){}SVGBaseElement.prototype={initRendererElement:function(){this.layerElement=createNS("g")},createContainerElements:function(){this.matteElement=createNS("g"),this.transformedElement=this.layerElement,this.maskedElement=this.layerElement,this._sizeChanged=!1;var _e=null;if(this.data.td){this.matteMasks={};var Dt=createNS("g");Dt.setAttribute("id",this.layerId),Dt.appendChild(this.layerElement),_e=Dt,this.globalData.defs.appendChild(Dt)}else this.data.tt?(this.matteElement.appendChild(this.layerElement),_e=this.matteElement,this.baseElement=this.matteElement):this.baseElement=this.layerElement;if(this.data.ln&&this.layerElement.setAttribute("id",this.data.ln),this.data.cl&&this.layerElement.setAttribute("class",this.data.cl),this.data.ty===0&&!this.data.hd){var Vt=createNS("clipPath"),Gt=createNS("path");Gt.setAttribute("d","M0,0 L"+this.data.w+",0 L"+this.data.w+","+this.data.h+" L0,"+this.data.h+"z");var zt=createElementID();if(Vt.setAttribute("id",zt),Vt.appendChild(Gt),this.globalData.defs.appendChild(Vt),this.checkMasks()){var jt=createNS("g");jt.setAttribute("clip-path","url("+getLocationHref()+"#"+zt+")"),jt.appendChild(this.layerElement),this.transformedElement=jt,_e?_e.appendChild(this.transformedElement):this.baseElement=this.transformedElement}else this.layerElement.setAttribute("clip-path","url("+getLocationHref()+"#"+zt+")")}this.data.bm!==0&&this.setBlendMode()},renderElement:function(){this.finalTransform._localMatMdf&&this.transformedElement.setAttribute("transform",this.finalTransform.localMat.to2dCSS()),this.finalTransform._opMdf&&this.transformedElement.setAttribute("opacity",this.finalTransform.localOpacity)},destroyBaseElement:function(){this.layerElement=null,this.matteElement=null,this.maskManager.destroy()},getBaseElement:function(){return this.data.hd?null:this.baseElement},createRenderableComponents:function(){this.maskManager=new MaskElement(this.data,this,this.globalData),this.renderableEffectsManager=new SVGEffects(this),this.searchEffectTransforms()},getMatte:function(_e){if(this.matteMasks||(this.matteMasks={}),!this.matteMasks[_e]){var Dt=this.layerId+"_"+_e,Vt,Gt,zt,jt;if(_e===1||_e===3){var Ht=createNS("mask");Ht.setAttribute("id",Dt),Ht.setAttribute("mask-type",_e===3?"luminance":"alpha"),zt=createNS("use"),zt.setAttributeNS("http://www.w3.org/1999/xlink","href","#"+this.layerId),Ht.appendChild(zt),this.globalData.defs.appendChild(Ht),!featureSupport.maskType&&_e===1&&(Ht.setAttribute("mask-type","luminance"),Vt=createElementID(),Gt=filtersFactory.createFilter(Vt),this.globalData.defs.appendChild(Gt),Gt.appendChild(filtersFactory.createAlphaToLuminanceFilter()),jt=createNS("g"),jt.appendChild(zt),Ht.appendChild(jt),jt.setAttribute("filter","url("+getLocationHref()+"#"+Vt+")"))}else if(_e===2){var Wt=createNS("mask");Wt.setAttribute("id",Dt),Wt.setAttribute("mask-type","alpha");var qt=createNS("g");Wt.appendChild(qt),Vt=createElementID(),Gt=filtersFactory.createFilter(Vt);var Xt=createNS("feComponentTransfer");Xt.setAttribute("in","SourceGraphic"),Gt.appendChild(Xt);var Kt=createNS("feFuncA");Kt.setAttribute("type","table"),Kt.setAttribute("tableValues","1.0 0.0"),Xt.appendChild(Kt),this.globalData.defs.appendChild(Gt);var Yt=createNS("rect");Yt.setAttribute("width",this.comp.data.w),Yt.setAttribute("height",this.comp.data.h),Yt.setAttribute("x","0"),Yt.setAttribute("y","0"),Yt.setAttribute("fill","#ffffff"),Yt.setAttribute("opacity","0"),qt.setAttribute("filter","url("+getLocationHref()+"#"+Vt+")"),qt.appendChild(Yt),zt=createNS("use"),zt.setAttributeNS("http://www.w3.org/1999/xlink","href","#"+this.layerId),qt.appendChild(zt),featureSupport.maskType||(Wt.setAttribute("mask-type","luminance"),Gt.appendChild(filtersFactory.createAlphaToLuminanceFilter()),jt=createNS("g"),qt.appendChild(Yt),jt.appendChild(this.layerElement),qt.appendChild(jt)),this.globalData.defs.appendChild(Wt)}this.matteMasks[_e]=Dt}return this.matteMasks[_e]},setMatte:function(_e){this.matteElement&&this.matteElement.setAttribute("mask","url("+getLocationHref()+"#"+_e+")")}};function HierarchyElement(){}HierarchyElement.prototype={initHierarchy:function(){this.hierarchy=[],this._isParent=!1,this.checkParenting()},setHierarchy:function(_e){this.hierarchy=_e},setAsParent:function(){this._isParent=!0},checkParenting:function(){this.data.parent!==void 0&&this.comp.buildElementParenting(this,this.data.parent,[])}};function RenderableDOMElement(){}(function(){var kt={initElement:function(Dt,Vt,Gt){this.initFrame(),this.initBaseData(Dt,Vt,Gt),this.initTransform(Dt,Vt,Gt),this.initHierarchy(),this.initRenderable(),this.initRendererElement(),this.createContainerElements(),this.createRenderableComponents(),this.createContent(),this.hide()},hide:function(){if(!this.hidden&&(!this.isInRange||this.isTransparent)){var Dt=this.baseElement||this.layerElement;Dt.style.display="none",this.hidden=!0}},show:function(){if(this.isInRange&&!this.isTransparent){if(!this.data.hd){var Dt=this.baseElement||this.layerElement;Dt.style.display="block"}this.hidden=!1,this._isFirstFrame=!0}},renderFrame:function(){this.data.hd||this.hidden||(this.renderTransform(),this.renderRenderable(),this.renderLocalTransform(),this.renderElement(),this.renderInnerContent(),this._isFirstFrame&&(this._isFirstFrame=!1))},renderInnerContent:function(){},prepareFrame:function(Dt){this._mdf=!1,this.prepareRenderableFrame(Dt),this.prepareProperties(Dt,this.isInRange),this.checkTransparency()},destroy:function(){this.innerElem=null,this.destroyBaseElement()}};extendPrototype([RenderableElement,createProxyFunction(kt)],RenderableDOMElement)})();function IImageElement(kt,_e,Dt){this.assetData=_e.getAssetData(kt.refId),this.assetData&&this.assetData.sid&&(this.assetData=_e.slotManager.getProp(this.assetData)),this.initElement(kt,_e,Dt),this.sourceRect={top:0,left:0,width:this.assetData.w,height:this.assetData.h}}extendPrototype([BaseElement,TransformElement,SVGBaseElement,HierarchyElement,FrameElement,RenderableDOMElement],IImageElement),IImageElement.prototype.createContent=function(){var kt=this.globalData.getAssetsPath(this.assetData);this.innerElem=createNS("image"),this.innerElem.setAttribute("width",this.assetData.w+"px"),this.innerElem.setAttribute("height",this.assetData.h+"px"),this.innerElem.setAttribute("preserveAspectRatio",this.assetData.pr||this.globalData.renderConfig.imagePreserveAspectRatio),this.innerElem.setAttributeNS("http://www.w3.org/1999/xlink","href",kt),this.layerElement.appendChild(this.innerElem)},IImageElement.prototype.sourceRectAtTime=function(){return this.sourceRect};function ProcessedElement(kt,_e){this.elem=kt,this.pos=_e}function IShapeElement(){}IShapeElement.prototype={addShapeToModifiers:function(_e){var Dt,Vt=this.shapeModifiers.length;for(Dt=0;Dt<Vt;Dt+=1)this.shapeModifiers[Dt].addShape(_e)},isShapeInAnimatedModifiers:function(_e){for(var Dt=0,Vt=this.shapeModifiers.length;Dt<Vt;)if(this.shapeModifiers[Dt].isAnimatedWithShape(_e))return!0;return!1},renderModifiers:function(){if(this.shapeModifiers.length){var _e,Dt=this.shapes.length;for(_e=0;_e<Dt;_e+=1)this.shapes[_e].sh.reset();Dt=this.shapeModifiers.length;var Vt;for(_e=Dt-1;_e>=0&&(Vt=this.shapeModifiers[_e].processShapes(this._isFirstFrame),!Vt);_e-=1);}},searchProcessedElement:function(_e){for(var Dt=this.processedElements,Vt=0,Gt=Dt.length;Vt<Gt;){if(Dt[Vt].elem===_e)return Dt[Vt].pos;Vt+=1}return 0},addProcessedElement:function(_e,Dt){for(var Vt=this.processedElements,Gt=Vt.length;Gt;)if(Gt-=1,Vt[Gt].elem===_e){Vt[Gt].pos=Dt;return}Vt.push(new ProcessedElement(_e,Dt))},prepareFrame:function(_e){this.prepareRenderableFrame(_e),this.prepareProperties(_e,this.isInRange)}};var lineCapEnum={1:"butt",2:"round",3:"square"},lineJoinEnum={1:"miter",2:"round",3:"bevel"};function SVGShapeData(kt,_e,Dt){this.caches=[],this.styles=[],this.transformers=kt,this.lStr="",this.sh=Dt,this.lvl=_e,this._isAnimated=!!Dt.k;for(var Vt=0,Gt=kt.length;Vt<Gt;){if(kt[Vt].mProps.dynamicProperties.length){this._isAnimated=!0;break}Vt+=1}}SVGShapeData.prototype.setAsAnimated=function(){this._isAnimated=!0};function SVGStyleData(kt,_e){this.data=kt,this.type=kt.ty,this.d="",this.lvl=_e,this._mdf=!1,this.closed=kt.hd===!0,this.pElem=createNS("path"),this.msElem=null}SVGStyleData.prototype.reset=function(){this.d="",this._mdf=!1};function DashProperty(kt,_e,Dt,Vt){this.elem=kt,this.frameId=-1,this.dataProps=createSizedArray(_e.length),this.renderer=Dt,this.k=!1,this.dashStr="",this.dashArray=createTypedArray("float32",_e.length?_e.length-1:0),this.dashoffset=createTypedArray("float32",1),this.initDynamicPropertyContainer(Vt);var Gt,zt=_e.length||0,jt;for(Gt=0;Gt<zt;Gt+=1)jt=PropertyFactory.getProp(kt,_e[Gt].v,0,0,this),this.k=jt.k||this.k,this.dataProps[Gt]={n:_e[Gt].n,p:jt};this.k||this.getValue(!0),this._isAnimated=this.k}DashProperty.prototype.getValue=function(kt){if(!(this.elem.globalData.frameId===this.frameId&&!kt)&&(this.frameId=this.elem.globalData.frameId,this.iterateDynamicProperties(),this._mdf=this._mdf||kt,this._mdf)){var _e=0,Dt=this.dataProps.length;for(this.renderer==="svg"&&(this.dashStr=""),_e=0;_e<Dt;_e+=1)this.dataProps[_e].n!=="o"?this.renderer==="svg"?this.dashStr+=" "+this.dataProps[_e].p.v:this.dashArray[_e]=this.dataProps[_e].p.v:this.dashoffset[0]=this.dataProps[_e].p.v}},extendPrototype([DynamicPropertyContainer],DashProperty);function SVGStrokeStyleData(kt,_e,Dt){this.initDynamicPropertyContainer(kt),this.getValue=this.iterateDynamicProperties,this.o=PropertyFactory.getProp(kt,_e.o,0,.01,this),this.w=PropertyFactory.getProp(kt,_e.w,0,null,this),this.d=new DashProperty(kt,_e.d||{},"svg",this),this.c=PropertyFactory.getProp(kt,_e.c,1,255,this),this.style=Dt,this._isAnimated=!!this._isAnimated}extendPrototype([DynamicPropertyContainer],SVGStrokeStyleData);function SVGFillStyleData(kt,_e,Dt){this.initDynamicPropertyContainer(kt),this.getValue=this.iterateDynamicProperties,this.o=PropertyFactory.getProp(kt,_e.o,0,.01,this),this.c=PropertyFactory.getProp(kt,_e.c,1,255,this),this.style=Dt}extendPrototype([DynamicPropertyContainer],SVGFillStyleData);function SVGNoStyleData(kt,_e,Dt){this.initDynamicPropertyContainer(kt),this.getValue=this.iterateDynamicProperties,this.style=Dt}extendPrototype([DynamicPropertyContainer],SVGNoStyleData);function GradientProperty(kt,_e,Dt){this.data=_e,this.c=createTypedArray("uint8c",_e.p*4);var Vt=_e.k.k[0].s?_e.k.k[0].s.length-_e.p*4:_e.k.k.length-_e.p*4;this.o=createTypedArray("float32",Vt),this._cmdf=!1,this._omdf=!1,this._collapsable=this.checkCollapsable(),this._hasOpacity=Vt,this.initDynamicPropertyContainer(Dt),this.prop=PropertyFactory.getProp(kt,_e.k,1,null,this),this.k=this.prop.k,this.getValue(!0)}GradientProperty.prototype.comparePoints=function(kt,_e){for(var Dt=0,Vt=this.o.length/2,Gt;Dt<Vt;){if(Gt=Math.abs(kt[Dt*4]-kt[_e*4+Dt*2]),Gt>.01)return!1;Dt+=1}return!0},GradientProperty.prototype.checkCollapsable=function(){if(this.o.length/2!==this.c.length/4)return!1;if(this.data.k.k[0].s)for(var kt=0,_e=this.data.k.k.length;kt<_e;){if(!this.comparePoints(this.data.k.k[kt].s,this.data.p))return!1;kt+=1}else if(!this.comparePoints(this.data.k.k,this.data.p))return!1;return!0},GradientProperty.prototype.getValue=function(kt){if(this.prop.getValue(),this._mdf=!1,this._cmdf=!1,this._omdf=!1,this.prop._mdf||kt){var _e,Dt=this.data.p*4,Vt,Gt;for(_e=0;_e<Dt;_e+=1)Vt=_e%4===0?100:255,Gt=Math.round(this.prop.v[_e]*Vt),this.c[_e]!==Gt&&(this.c[_e]=Gt,this._cmdf=!kt);if(this.o.length)for(Dt=this.prop.v.length,_e=this.data.p*4;_e<Dt;_e+=1)Vt=_e%2===0?100:1,Gt=_e%2===0?Math.round(this.prop.v[_e]*100):this.prop.v[_e],this.o[_e-this.data.p*4]!==Gt&&(this.o[_e-this.data.p*4]=Gt,this._omdf=!kt);this._mdf=!kt}},extendPrototype([DynamicPropertyContainer],GradientProperty);function SVGGradientFillStyleData(kt,_e,Dt){this.initDynamicPropertyContainer(kt),this.getValue=this.iterateDynamicProperties,this.initGradientData(kt,_e,Dt)}SVGGradientFillStyleData.prototype.initGradientData=function(kt,_e,Dt){this.o=PropertyFactory.getProp(kt,_e.o,0,.01,this),this.s=PropertyFactory.getProp(kt,_e.s,1,null,this),this.e=PropertyFactory.getProp(kt,_e.e,1,null,this),this.h=PropertyFactory.getProp(kt,_e.h||{k:0},0,.01,this),this.a=PropertyFactory.getProp(kt,_e.a||{k:0},0,degToRads,this),this.g=new GradientProperty(kt,_e.g,this),this.style=Dt,this.stops=[],this.setGradientData(Dt.pElem,_e),this.setGradientOpacity(_e,Dt),this._isAnimated=!!this._isAnimated},SVGGradientFillStyleData.prototype.setGradientData=function(kt,_e){var Dt=createElementID(),Vt=createNS(_e.t===1?"linearGradient":"radialGradient");Vt.setAttribute("id",Dt),Vt.setAttribute("spreadMethod","pad"),Vt.setAttribute("gradientUnits","userSpaceOnUse");var Gt=[],zt,jt,Ht;for(Ht=_e.g.p*4,jt=0;jt<Ht;jt+=4)zt=createNS("stop"),Vt.appendChild(zt),Gt.push(zt);kt.setAttribute(_e.ty==="gf"?"fill":"stroke","url("+getLocationHref()+"#"+Dt+")"),this.gf=Vt,this.cst=Gt},SVGGradientFillStyleData.prototype.setGradientOpacity=function(kt,_e){if(this.g._hasOpacity&&!this.g._collapsable){var Dt,Vt,Gt,zt=createNS("mask"),jt=createNS("path");zt.appendChild(jt);var Ht=createElementID(),Wt=createElementID();zt.setAttribute("id",Wt);var qt=createNS(kt.t===1?"linearGradient":"radialGradient");qt.setAttribute("id",Ht),qt.setAttribute("spreadMethod","pad"),qt.setAttribute("gradientUnits","userSpaceOnUse"),Gt=kt.g.k.k[0].s?kt.g.k.k[0].s.length:kt.g.k.k.length;var Xt=this.stops;for(Vt=kt.g.p*4;Vt<Gt;Vt+=2)Dt=createNS("stop"),Dt.setAttribute("stop-color","rgb(255,255,255)"),qt.appendChild(Dt),Xt.push(Dt);jt.setAttribute(kt.ty==="gf"?"fill":"stroke","url("+getLocationHref()+"#"+Ht+")"),kt.ty==="gs"&&(jt.setAttribute("stroke-linecap",lineCapEnum[kt.lc||2]),jt.setAttribute("stroke-linejoin",lineJoinEnum[kt.lj||2]),kt.lj===1&&jt.setAttribute("stroke-miterlimit",kt.ml)),this.of=qt,this.ms=zt,this.ost=Xt,this.maskId=Wt,_e.msElem=jt}},extendPrototype([DynamicPropertyContainer],SVGGradientFillStyleData);function SVGGradientStrokeStyleData(kt,_e,Dt){this.initDynamicPropertyContainer(kt),this.getValue=this.iterateDynamicProperties,this.w=PropertyFactory.getProp(kt,_e.w,0,null,this),this.d=new DashProperty(kt,_e.d||{},"svg",this),this.initGradientData(kt,_e,Dt),this._isAnimated=!!this._isAnimated}extendPrototype([SVGGradientFillStyleData,DynamicPropertyContainer],SVGGradientStrokeStyleData);function ShapeGroupData(){this.it=[],this.prevViewData=[],this.gr=createNS("g")}function SVGTransformData(kt,_e,Dt){this.transform={mProps:kt,op:_e,container:Dt},this.elements=[],this._isAnimated=this.transform.mProps.dynamicProperties.length||this.transform.op.effectsSequence.length}var buildShapeString=function(_e,Dt,Vt,Gt){if(Dt===0)return"";var zt=_e.o,jt=_e.i,Ht=_e.v,Wt,qt=" M"+Gt.applyToPointStringified(Ht[0][0],Ht[0][1]);for(Wt=1;Wt<Dt;Wt+=1)qt+=" C"+Gt.applyToPointStringified(zt[Wt-1][0],zt[Wt-1][1])+" "+Gt.applyToPointStringified(jt[Wt][0],jt[Wt][1])+" "+Gt.applyToPointStringified(Ht[Wt][0],Ht[Wt][1]);return Vt&&Dt&&(qt+=" C"+Gt.applyToPointStringified(zt[Wt-1][0],zt[Wt-1][1])+" "+Gt.applyToPointStringified(jt[0][0],jt[0][1])+" "+Gt.applyToPointStringified(Ht[0][0],Ht[0][1]),qt+="z"),qt},SVGElementsRenderer=function(){var kt=new Matrix,_e=new Matrix,Dt={createRenderFunction:Vt};function Vt(Kt){switch(Kt.ty){case"fl":return Ht;case"gf":return qt;case"gs":return Wt;case"st":return Xt;case"sh":case"el":case"rc":case"sr":return jt;case"tr":return Gt;case"no":return zt;default:return null}}function Gt(Kt,Yt,Zt){(Zt||Yt.transform.op._mdf)&&Yt.transform.container.setAttribute("opacity",Yt.transform.op.v),(Zt||Yt.transform.mProps._mdf)&&Yt.transform.container.setAttribute("transform",Yt.transform.mProps.v.to2dCSS())}function zt(){}function jt(Kt,Yt,Zt){var Jt,nn,rn,Qt,en,tn,sn=Yt.styles.length,cn=Yt.lvl,un,hn,dn,pn;for(tn=0;tn<sn;tn+=1){if(Qt=Yt.sh._mdf||Zt,Yt.styles[tn].lvl<cn){for(hn=_e.reset(),dn=cn-Yt.styles[tn].lvl,pn=Yt.transformers.length-1;!Qt&&dn>0;)Qt=Yt.transformers[pn].mProps._mdf||Qt,dn-=1,pn-=1;if(Qt)for(dn=cn-Yt.styles[tn].lvl,pn=Yt.transformers.length-1;dn>0;)hn.multiply(Yt.transformers[pn].mProps.v),dn-=1,pn-=1}else hn=kt;if(un=Yt.sh.paths,nn=un._length,Qt){for(rn="",Jt=0;Jt<nn;Jt+=1)en=un.shapes[Jt],en&&en._length&&(rn+=buildShapeString(en,en._length,en.c,hn));Yt.caches[tn]=rn}else rn=Yt.caches[tn];Yt.styles[tn].d+=Kt.hd===!0?"":rn,Yt.styles[tn]._mdf=Qt||Yt.styles[tn]._mdf}}function Ht(Kt,Yt,Zt){var Jt=Yt.style;(Yt.c._mdf||Zt)&&Jt.pElem.setAttribute("fill","rgb("+bmFloor(Yt.c.v[0])+","+bmFloor(Yt.c.v[1])+","+bmFloor(Yt.c.v[2])+")"),(Yt.o._mdf||Zt)&&Jt.pElem.setAttribute("fill-opacity",Yt.o.v)}function Wt(Kt,Yt,Zt){qt(Kt,Yt,Zt),Xt(Kt,Yt,Zt)}function qt(Kt,Yt,Zt){var Jt=Yt.gf,nn=Yt.g._hasOpacity,rn=Yt.s.v,Qt=Yt.e.v;if(Yt.o._mdf||Zt){var en=Kt.ty==="gf"?"fill-opacity":"stroke-opacity";Yt.style.pElem.setAttribute(en,Yt.o.v)}if(Yt.s._mdf||Zt){var tn=Kt.t===1?"x1":"cx",sn=tn==="x1"?"y1":"cy";Jt.setAttribute(tn,rn[0]),Jt.setAttribute(sn,rn[1]),nn&&!Yt.g._collapsable&&(Yt.of.setAttribute(tn,rn[0]),Yt.of.setAttribute(sn,rn[1]))}var cn,un,hn,dn;if(Yt.g._cmdf||Zt){cn=Yt.cst;var pn=Yt.g.c;for(hn=cn.length,un=0;un<hn;un+=1)dn=cn[un],dn.setAttribute("offset",pn[un*4]+"%"),dn.setAttribute("stop-color","rgb("+pn[un*4+1]+","+pn[un*4+2]+","+pn[un*4+3]+")")}if(nn&&(Yt.g._omdf||Zt)){var fn=Yt.g.o;for(Yt.g._collapsable?cn=Yt.cst:cn=Yt.ost,hn=cn.length,un=0;un<hn;un+=1)dn=cn[un],Yt.g._collapsable||dn.setAttribute("offset",fn[un*2]+"%"),dn.setAttribute("stop-opacity",fn[un*2+1])}if(Kt.t===1)(Yt.e._mdf||Zt)&&(Jt.setAttribute("x2",Qt[0]),Jt.setAttribute("y2",Qt[1]),nn&&!Yt.g._collapsable&&(Yt.of.setAttribute("x2",Qt[0]),Yt.of.setAttribute("y2",Qt[1])));else{var mn;if((Yt.s._mdf||Yt.e._mdf||Zt)&&(mn=Math.sqrt(Math.pow(rn[0]-Qt[0],2)+Math.pow(rn[1]-Qt[1],2)),Jt.setAttribute("r",mn),nn&&!Yt.g._collapsable&&Yt.of.setAttribute("r",mn)),Yt.e._mdf||Yt.h._mdf||Yt.a._mdf||Zt){mn||(mn=Math.sqrt(Math.pow(rn[0]-Qt[0],2)+Math.pow(rn[1]-Qt[1],2)));var vn=Math.atan2(Qt[1]-rn[1],Qt[0]-rn[0]),_n=Yt.h.v;_n>=1?_n=.99:_n<=-1&&(_n=-.99);var En=mn*_n,An=Math.cos(vn+Yt.a.v)*En+rn[0],Tn=Math.sin(vn+Yt.a.v)*En+rn[1];Jt.setAttribute("fx",An),Jt.setAttribute("fy",Tn),nn&&!Yt.g._collapsable&&(Yt.of.setAttribute("fx",An),Yt.of.setAttribute("fy",Tn))}}}function Xt(Kt,Yt,Zt){var Jt=Yt.style,nn=Yt.d;nn&&(nn._mdf||Zt)&&nn.dashStr&&(Jt.pElem.setAttribute("stroke-dasharray",nn.dashStr),Jt.pElem.setAttribute("stroke-dashoffset",nn.dashoffset[0])),Yt.c&&(Yt.c._mdf||Zt)&&Jt.pElem.setAttribute("stroke","rgb("+bmFloor(Yt.c.v[0])+","+bmFloor(Yt.c.v[1])+","+bmFloor(Yt.c.v[2])+")"),(Yt.o._mdf||Zt)&&Jt.pElem.setAttribute("stroke-opacity",Yt.o.v),(Yt.w._mdf||Zt)&&(Jt.pElem.setAttribute("stroke-width",Yt.w.v),Jt.msElem&&Jt.msElem.setAttribute("stroke-width",Yt.w.v))}return Dt}();function SVGShapeElement(kt,_e,Dt){this.shapes=[],this.shapesData=kt.shapes,this.stylesList=[],this.shapeModifiers=[],this.itemsData=[],this.processedElements=[],this.animatedContents=[],this.initElement(kt,_e,Dt),this.prevViewData=[]}extendPrototype([BaseElement,TransformElement,SVGBaseElement,IShapeElement,HierarchyElement,FrameElement,RenderableDOMElement],SVGShapeElement),SVGShapeElement.prototype.initSecondaryElement=function(){},SVGShapeElement.prototype.identityMatrix=new Matrix,SVGShapeElement.prototype.buildExpressionInterface=function(){},SVGShapeElement.prototype.createContent=function(){this.searchShapes(this.shapesData,this.itemsData,this.prevViewData,this.layerElement,0,[],!0),this.filterUniqueShapes()},SVGShapeElement.prototype.filterUniqueShapes=function(){var kt,_e=this.shapes.length,Dt,Vt,Gt=this.stylesList.length,zt,jt=[],Ht=!1;for(Vt=0;Vt<Gt;Vt+=1){for(zt=this.stylesList[Vt],Ht=!1,jt.length=0,kt=0;kt<_e;kt+=1)Dt=this.shapes[kt],Dt.styles.indexOf(zt)!==-1&&(jt.push(Dt),Ht=Dt._isAnimated||Ht);jt.length>1&&Ht&&this.setShapesAsAnimated(jt)}},SVGShapeElement.prototype.setShapesAsAnimated=function(kt){var _e,Dt=kt.length;for(_e=0;_e<Dt;_e+=1)kt[_e].setAsAnimated()},SVGShapeElement.prototype.createStyleElement=function(kt,_e){var Dt,Vt=new SVGStyleData(kt,_e),Gt=Vt.pElem;if(kt.ty==="st")Dt=new SVGStrokeStyleData(this,kt,Vt);else if(kt.ty==="fl")Dt=new SVGFillStyleData(this,kt,Vt);else if(kt.ty==="gf"||kt.ty==="gs"){var zt=kt.ty==="gf"?SVGGradientFillStyleData:SVGGradientStrokeStyleData;Dt=new zt(this,kt,Vt),this.globalData.defs.appendChild(Dt.gf),Dt.maskId&&(this.globalData.defs.appendChild(Dt.ms),this.globalData.defs.appendChild(Dt.of),Gt.setAttribute("mask","url("+getLocationHref()+"#"+Dt.maskId+")"))}else kt.ty==="no"&&(Dt=new SVGNoStyleData(this,kt,Vt));return(kt.ty==="st"||kt.ty==="gs")&&(Gt.setAttribute("stroke-linecap",lineCapEnum[kt.lc||2]),Gt.setAttribute("stroke-linejoin",lineJoinEnum[kt.lj||2]),Gt.setAttribute("fill-opacity","0"),kt.lj===1&&Gt.setAttribute("stroke-miterlimit",kt.ml)),kt.r===2&&Gt.setAttribute("fill-rule","evenodd"),kt.ln&&Gt.setAttribute("id",kt.ln),kt.cl&&Gt.setAttribute("class",kt.cl),kt.bm&&(Gt.style["mix-blend-mode"]=getBlendMode(kt.bm)),this.stylesList.push(Vt),this.addToAnimatedContents(kt,Dt),Dt},SVGShapeElement.prototype.createGroupElement=function(kt){var _e=new ShapeGroupData;return kt.ln&&_e.gr.setAttribute("id",kt.ln),kt.cl&&_e.gr.setAttribute("class",kt.cl),kt.bm&&(_e.gr.style["mix-blend-mode"]=getBlendMode(kt.bm)),_e},SVGShapeElement.prototype.createTransformElement=function(kt,_e){var Dt=TransformPropertyFactory.getTransformProperty(this,kt,this),Vt=new SVGTransformData(Dt,Dt.o,_e);return this.addToAnimatedContents(kt,Vt),Vt},SVGShapeElement.prototype.createShapeElement=function(kt,_e,Dt){var Vt=4;kt.ty==="rc"?Vt=5:kt.ty==="el"?Vt=6:kt.ty==="sr"&&(Vt=7);var Gt=ShapePropertyFactory.getShapeProp(this,kt,Vt,this),zt=new SVGShapeData(_e,Dt,Gt);return this.shapes.push(zt),this.addShapeToModifiers(zt),this.addToAnimatedContents(kt,zt),zt},SVGShapeElement.prototype.addToAnimatedContents=function(kt,_e){for(var Dt=0,Vt=this.animatedContents.length;Dt<Vt;){if(this.animatedContents[Dt].element===_e)return;Dt+=1}this.animatedContents.push({fn:SVGElementsRenderer.createRenderFunction(kt),element:_e,data:kt})},SVGShapeElement.prototype.setElementStyles=function(kt){var _e=kt.styles,Dt,Vt=this.stylesList.length;for(Dt=0;Dt<Vt;Dt+=1)this.stylesList[Dt].closed||_e.push(this.stylesList[Dt])},SVGShapeElement.prototype.reloadShapes=function(){this._isFirstFrame=!0;var kt,_e=this.itemsData.length;for(kt=0;kt<_e;kt+=1)this.prevViewData[kt]=this.itemsData[kt];for(this.searchShapes(this.shapesData,this.itemsData,this.prevViewData,this.layerElement,0,[],!0),this.filterUniqueShapes(),_e=this.dynamicProperties.length,kt=0;kt<_e;kt+=1)this.dynamicProperties[kt].getValue();this.renderModifiers()},SVGShapeElement.prototype.searchShapes=function(kt,_e,Dt,Vt,Gt,zt,jt){var Ht=[].concat(zt),Wt,qt=kt.length-1,Xt,Kt,Yt=[],Zt=[],Jt,nn,rn;for(Wt=qt;Wt>=0;Wt-=1){if(rn=this.searchProcessedElement(kt[Wt]),rn?_e[Wt]=Dt[rn-1]:kt[Wt]._render=jt,kt[Wt].ty==="fl"||kt[Wt].ty==="st"||kt[Wt].ty==="gf"||kt[Wt].ty==="gs"||kt[Wt].ty==="no")rn?_e[Wt].style.closed=!1:_e[Wt]=this.createStyleElement(kt[Wt],Gt),kt[Wt]._render&&_e[Wt].style.pElem.parentNode!==Vt&&Vt.appendChild(_e[Wt].style.pElem),Yt.push(_e[Wt].style);else if(kt[Wt].ty==="gr"){if(!rn)_e[Wt]=this.createGroupElement(kt[Wt]);else for(Kt=_e[Wt].it.length,Xt=0;Xt<Kt;Xt+=1)_e[Wt].prevViewData[Xt]=_e[Wt].it[Xt];this.searchShapes(kt[Wt].it,_e[Wt].it,_e[Wt].prevViewData,_e[Wt].gr,Gt+1,Ht,jt),kt[Wt]._render&&_e[Wt].gr.parentNode!==Vt&&Vt.appendChild(_e[Wt].gr)}else kt[Wt].ty==="tr"?(rn||(_e[Wt]=this.createTransformElement(kt[Wt],Vt)),Jt=_e[Wt].transform,Ht.push(Jt)):kt[Wt].ty==="sh"||kt[Wt].ty==="rc"||kt[Wt].ty==="el"||kt[Wt].ty==="sr"?(rn||(_e[Wt]=this.createShapeElement(kt[Wt],Ht,Gt)),this.setElementStyles(_e[Wt])):kt[Wt].ty==="tm"||kt[Wt].ty==="rd"||kt[Wt].ty==="ms"||kt[Wt].ty==="pb"||kt[Wt].ty==="zz"||kt[Wt].ty==="op"?(rn?(nn=_e[Wt],nn.closed=!1):(nn=ShapeModifiers.getModifier(kt[Wt].ty),nn.init(this,kt[Wt]),_e[Wt]=nn,this.shapeModifiers.push(nn)),Zt.push(nn)):kt[Wt].ty==="rp"&&(rn?(nn=_e[Wt],nn.closed=!0):(nn=ShapeModifiers.getModifier(kt[Wt].ty),_e[Wt]=nn,nn.init(this,kt,Wt,_e),this.shapeModifiers.push(nn),jt=!1),Zt.push(nn));this.addProcessedElement(kt[Wt],Wt+1)}for(qt=Yt.length,Wt=0;Wt<qt;Wt+=1)Yt[Wt].closed=!0;for(qt=Zt.length,Wt=0;Wt<qt;Wt+=1)Zt[Wt].closed=!0},SVGShapeElement.prototype.renderInnerContent=function(){this.renderModifiers();var kt,_e=this.stylesList.length;for(kt=0;kt<_e;kt+=1)this.stylesList[kt].reset();for(this.renderShape(),kt=0;kt<_e;kt+=1)(this.stylesList[kt]._mdf||this._isFirstFrame)&&(this.stylesList[kt].msElem&&(this.stylesList[kt].msElem.setAttribute("d",this.stylesList[kt].d),this.stylesList[kt].d="M0 0"+this.stylesList[kt].d),this.stylesList[kt].pElem.setAttribute("d",this.stylesList[kt].d||"M0 0"))},SVGShapeElement.prototype.renderShape=function(){var kt,_e=this.animatedContents.length,Dt;for(kt=0;kt<_e;kt+=1)Dt=this.animatedContents[kt],(this._isFirstFrame||Dt.element._isAnimated)&&Dt.data!==!0&&Dt.fn(Dt.data,Dt.element,this._isFirstFrame)},SVGShapeElement.prototype.destroy=function(){this.destroyBaseElement(),this.shapesData=null,this.itemsData=null};function LetterProps(kt,_e,Dt,Vt,Gt,zt){this.o=kt,this.sw=_e,this.sc=Dt,this.fc=Vt,this.m=Gt,this.p=zt,this._mdf={o:!0,sw:!!_e,sc:!!Dt,fc:!!Vt,m:!0,p:!0}}LetterProps.prototype.update=function(kt,_e,Dt,Vt,Gt,zt){this._mdf.o=!1,this._mdf.sw=!1,this._mdf.sc=!1,this._mdf.fc=!1,this._mdf.m=!1,this._mdf.p=!1;var jt=!1;return this.o!==kt&&(this.o=kt,this._mdf.o=!0,jt=!0),this.sw!==_e&&(this.sw=_e,this._mdf.sw=!0,jt=!0),this.sc!==Dt&&(this.sc=Dt,this._mdf.sc=!0,jt=!0),this.fc!==Vt&&(this.fc=Vt,this._mdf.fc=!0,jt=!0),this.m!==Gt&&(this.m=Gt,this._mdf.m=!0,jt=!0),zt.length&&(this.p[0]!==zt[0]||this.p[1]!==zt[1]||this.p[4]!==zt[4]||this.p[5]!==zt[5]||this.p[12]!==zt[12]||this.p[13]!==zt[13])&&(this.p=zt,this._mdf.p=!0,jt=!0),jt};function TextProperty(kt,_e){this._frameId=initialDefaultFrame,this.pv="",this.v="",this.kf=!1,this._isFirstFrame=!0,this._mdf=!1,_e.d&&_e.d.sid&&(_e.d=kt.globalData.slotManager.getProp(_e.d)),this.data=_e,this.elem=kt,this.comp=this.elem.comp,this.keysIndex=0,this.canResize=!1,this.minimumFontSize=1,this.effectsSequence=[],this.currentData={ascent:0,boxWidth:this.defaultBoxWidth,f:"",fStyle:"",fWeight:"",fc:"",j:"",justifyOffset:"",l:[],lh:0,lineWidths:[],ls:"",of:"",s:"",sc:"",sw:0,t:0,tr:0,sz:0,ps:null,fillColorAnim:!1,strokeColorAnim:!1,strokeWidthAnim:!1,yOffset:0,finalSize:0,finalText:[],finalLineHeight:0,__complete:!1},this.copyData(this.currentData,this.data.d.k[0].s),this.searchProperty()||this.completeTextData(this.currentData)}TextProperty.prototype.defaultBoxWidth=[0,0],TextProperty.prototype.copyData=function(kt,_e){for(var Dt in _e)Object.prototype.hasOwnProperty.call(_e,Dt)&&(kt[Dt]=_e[Dt]);return kt},TextProperty.prototype.setCurrentData=function(kt){kt.__complete||this.completeTextData(kt),this.currentData=kt,this.currentData.boxWidth=this.currentData.boxWidth||this.defaultBoxWidth,this._mdf=!0},TextProperty.prototype.searchProperty=function(){return this.searchKeyframes()},TextProperty.prototype.searchKeyframes=function(){return this.kf=this.data.d.k.length>1,this.kf&&this.addEffect(this.getKeyframeValue.bind(this)),this.kf},TextProperty.prototype.addEffect=function(kt){this.effectsSequence.push(kt),this.elem.addDynamicProperty(this)},TextProperty.prototype.getValue=function(kt){if(!((this.elem.globalData.frameId===this.frameId||!this.effectsSequence.length)&&!kt)){this.currentData.t=this.data.d.k[this.keysIndex].s.t;var _e=this.currentData,Dt=this.keysIndex;if(this.lock){this.setCurrentData(this.currentData);return}this.lock=!0,this._mdf=!1;var Vt,Gt=this.effectsSequence.length,zt=kt||this.data.d.k[this.keysIndex].s;for(Vt=0;Vt<Gt;Vt+=1)Dt!==this.keysIndex?zt=this.effectsSequence[Vt](zt,zt.t):zt=this.effectsSequence[Vt](this.currentData,zt.t);_e!==zt&&this.setCurrentData(zt),this.v=this.currentData,this.pv=this.v,this.lock=!1,this.frameId=this.elem.globalData.frameId}},TextProperty.prototype.getKeyframeValue=function(){for(var kt=this.data.d.k,_e=this.elem.comp.renderedFrame,Dt=0,Vt=kt.length;Dt<=Vt-1&&!(Dt===Vt-1||kt[Dt+1].t>_e);)Dt+=1;return this.keysIndex!==Dt&&(this.keysIndex=Dt),this.data.d.k[this.keysIndex].s},TextProperty.prototype.buildFinalText=function(kt){for(var _e=[],Dt=0,Vt=kt.length,Gt,zt,jt=!1,Ht=!1,Wt="";Dt<Vt;)jt=Ht,Ht=!1,Gt=kt.charCodeAt(Dt),Wt=kt.charAt(Dt),FontManager.isCombinedCharacter(Gt)?jt=!0:Gt>=55296&&Gt<=56319?FontManager.isRegionalFlag(kt,Dt)?Wt=kt.substr(Dt,14):(zt=kt.charCodeAt(Dt+1),zt>=56320&&zt<=57343&&(FontManager.isModifier(Gt,zt)?(Wt=kt.substr(Dt,2),jt=!0):FontManager.isFlagEmoji(kt.substr(Dt,4))?Wt=kt.substr(Dt,4):Wt=kt.substr(Dt,2))):Gt>56319?(zt=kt.charCodeAt(Dt+1),FontManager.isVariationSelector(Gt)&&(jt=!0)):FontManager.isZeroWidthJoiner(Gt)&&(jt=!0,Ht=!0),jt?(_e[_e.length-1]+=Wt,jt=!1):_e.push(Wt),Dt+=Wt.length;return _e},TextProperty.prototype.completeTextData=function(kt){kt.__complete=!0;var _e=this.elem.globalData.fontManager,Dt=this.data,Vt=[],Gt,zt,jt,Ht=0,Wt,qt=Dt.m.g,Xt=0,Kt=0,Yt=0,Zt=[],Jt=0,nn=0,rn,Qt,en=_e.getFontByName(kt.f),tn,sn=0,cn=getFontProperties(en);kt.fWeight=cn.weight,kt.fStyle=cn.style,kt.finalSize=kt.s,kt.finalText=this.buildFinalText(kt.t),zt=kt.finalText.length,kt.finalLineHeight=kt.lh;var un=kt.tr/1e3*kt.finalSize,hn;if(kt.sz)for(var dn=!0,pn=kt.sz[0],fn=kt.sz[1],mn,vn;dn;){vn=this.buildFinalText(kt.t),mn=0,Jt=0,zt=vn.length,un=kt.tr/1e3*kt.finalSize;var _n=-1;for(Gt=0;Gt<zt;Gt+=1)hn=vn[Gt].charCodeAt(0),jt=!1,vn[Gt]===" "?_n=Gt:(hn===13||hn===3)&&(Jt=0,jt=!0,mn+=kt.finalLineHeight||kt.finalSize*1.2),_e.chars?(tn=_e.getCharData(vn[Gt],en.fStyle,en.fFamily),sn=jt?0:tn.w*kt.finalSize/100):sn=_e.measureText(vn[Gt],kt.f,kt.finalSize),Jt+sn>pn&&vn[Gt]!==" "?(_n===-1?zt+=1:Gt=_n,mn+=kt.finalLineHeight||kt.finalSize*1.2,vn.splice(Gt,_n===Gt?1:0,"\r"),_n=-1,Jt=0):(Jt+=sn,Jt+=un);mn+=en.ascent*kt.finalSize/100,this.canResize&&kt.finalSize>this.minimumFontSize&&fn<mn?(kt.finalSize-=1,kt.finalLineHeight=kt.finalSize*kt.lh/kt.s):(kt.finalText=vn,zt=kt.finalText.length,dn=!1)}Jt=-un,sn=0;var En=0,An;for(Gt=0;Gt<zt;Gt+=1)if(jt=!1,An=kt.finalText[Gt],hn=An.charCodeAt(0),hn===13||hn===3?(En=0,Zt.push(Jt),nn=Jt>nn?Jt:nn,Jt=-2*un,Wt="",jt=!0,Yt+=1):Wt=An,_e.chars?(tn=_e.getCharData(An,en.fStyle,_e.getFontByName(kt.f).fFamily),sn=jt?0:tn.w*kt.finalSize/100):sn=_e.measureText(Wt,kt.f,kt.finalSize),An===" "?En+=sn+un:(Jt+=sn+un+En,En=0),Vt.push({l:sn,an:sn,add:Xt,n:jt,anIndexes:[],val:Wt,line:Yt,animatorJustifyOffset:0}),qt==2){if(Xt+=sn,Wt===""||Wt===" "||Gt===zt-1){for((Wt===""||Wt===" ")&&(Xt-=sn);Kt<=Gt;)Vt[Kt].an=Xt,Vt[Kt].ind=Ht,Vt[Kt].extra=sn,Kt+=1;Ht+=1,Xt=0}}else if(qt==3){if(Xt+=sn,Wt===""||Gt===zt-1){for(Wt===""&&(Xt-=sn);Kt<=Gt;)Vt[Kt].an=Xt,Vt[Kt].ind=Ht,Vt[Kt].extra=sn,Kt+=1;Xt=0,Ht+=1}}else Vt[Ht].ind=Ht,Vt[Ht].extra=0,Ht+=1;if(kt.l=Vt,nn=Jt>nn?Jt:nn,Zt.push(Jt),kt.sz)kt.boxWidth=kt.sz[0],kt.justifyOffset=0;else switch(kt.boxWidth=nn,kt.j){case 1:kt.justifyOffset=-kt.boxWidth;break;case 2:kt.justifyOffset=-kt.boxWidth/2;break;default:kt.justifyOffset=0}kt.lineWidths=Zt;var Tn=Dt.a,Cn,yn;Qt=Tn.length;var Sn,wn,xn=[];for(rn=0;rn<Qt;rn+=1){for(Cn=Tn[rn],Cn.a.sc&&(kt.strokeColorAnim=!0),Cn.a.sw&&(kt.strokeWidthAnim=!0),(Cn.a.fc||Cn.a.fh||Cn.a.fs||Cn.a.fb)&&(kt.fillColorAnim=!0),wn=0,Sn=Cn.s.b,Gt=0;Gt<zt;Gt+=1)yn=Vt[Gt],yn.anIndexes[rn]=wn,(Sn==1&&yn.val!==""||Sn==2&&yn.val!==""&&yn.val!==" "||Sn==3&&(yn.n||yn.val==" "||Gt==zt-1)||Sn==4&&(yn.n||Gt==zt-1))&&(Cn.s.rn===1&&xn.push(wn),wn+=1);Dt.a[rn].s.totalChars=wn;var Rn=-1,Dn;if(Cn.s.rn===1)for(Gt=0;Gt<zt;Gt+=1)yn=Vt[Gt],Rn!=yn.anIndexes[rn]&&(Rn=yn.anIndexes[rn],Dn=xn.splice(Math.floor(Math.random()*xn.length),1)[0]),yn.anIndexes[rn]=Dn}kt.yOffset=kt.finalLineHeight||kt.finalSize*1.2,kt.ls=kt.ls||0,kt.ascent=en.ascent*kt.finalSize/100},TextProperty.prototype.updateDocumentData=function(kt,_e){_e=_e===void 0?this.keysIndex:_e;var Dt=this.copyData({},this.data.d.k[_e].s);Dt=this.copyData(Dt,kt),this.data.d.k[_e].s=Dt,this.recalculate(_e),this.setCurrentData(Dt),this.elem.addDynamicProperty(this)},TextProperty.prototype.recalculate=function(kt){var _e=this.data.d.k[kt].s;_e.__complete=!1,this.keysIndex=0,this._isFirstFrame=!0,this.getValue(_e)},TextProperty.prototype.canResizeFont=function(kt){this.canResize=kt,this.recalculate(this.keysIndex),this.elem.addDynamicProperty(this)},TextProperty.prototype.setMinimumFontSize=function(kt){this.minimumFontSize=Math.floor(kt)||1,this.recalculate(this.keysIndex),this.elem.addDynamicProperty(this)};var TextSelectorProp=function(){var kt=Math.max,_e=Math.min,Dt=Math.floor;function Vt(zt,jt){this._currentTextLength=-1,this.k=!1,this.data=jt,this.elem=zt,this.comp=zt.comp,this.finalS=0,this.finalE=0,this.initDynamicPropertyContainer(zt),this.s=PropertyFactory.getProp(zt,jt.s||{k:0},0,0,this),"e"in jt?this.e=PropertyFactory.getProp(zt,jt.e,0,0,this):this.e={v:100},this.o=PropertyFactory.getProp(zt,jt.o||{k:0},0,0,this),this.xe=PropertyFactory.getProp(zt,jt.xe||{k:0},0,0,this),this.ne=PropertyFactory.getProp(zt,jt.ne||{k:0},0,0,this),this.sm=PropertyFactory.getProp(zt,jt.sm||{k:100},0,0,this),this.a=PropertyFactory.getProp(zt,jt.a,0,.01,this),this.dynamicProperties.length||this.getValue()}Vt.prototype={getMult:function(jt){this._currentTextLength!==this.elem.textProperty.currentData.l.length&&this.getValue();var Ht=0,Wt=0,qt=1,Xt=1;this.ne.v>0?Ht=this.ne.v/100:Wt=-this.ne.v/100,this.xe.v>0?qt=1-this.xe.v/100:Xt=1+this.xe.v/100;var Kt=BezierFactory.getBezierEasing(Ht,Wt,qt,Xt).get,Yt=0,Zt=this.finalS,Jt=this.finalE,nn=this.data.sh;if(nn===2)Jt===Zt?Yt=jt>=Jt?1:0:Yt=kt(0,_e(.5/(Jt-Zt)+(jt-Zt)/(Jt-Zt),1)),Yt=Kt(Yt);else if(nn===3)Jt===Zt?Yt=jt>=Jt?0:1:Yt=1-kt(0,_e(.5/(Jt-Zt)+(jt-Zt)/(Jt-Zt),1)),Yt=Kt(Yt);else if(nn===4)Jt===Zt?Yt=0:(Yt=kt(0,_e(.5/(Jt-Zt)+(jt-Zt)/(Jt-Zt),1)),Yt<.5?Yt*=2:Yt=1-2*(Yt-.5)),Yt=Kt(Yt);else if(nn===5){if(Jt===Zt)Yt=0;else{var rn=Jt-Zt;jt=_e(kt(0,jt+.5-Zt),Jt-Zt);var Qt=-rn/2+jt,en=rn/2;Yt=Math.sqrt(1-Qt*Qt/(en*en))}Yt=Kt(Yt)}else nn===6?(Jt===Zt?Yt=0:(jt=_e(kt(0,jt+.5-Zt),Jt-Zt),Yt=(1+Math.cos(Math.PI+Math.PI*2*jt/(Jt-Zt)))/2),Yt=Kt(Yt)):(jt>=Dt(Zt)&&(jt-Zt<0?Yt=kt(0,_e(_e(Jt,1)-(Zt-jt),1)):Yt=kt(0,_e(Jt-jt,1))),Yt=Kt(Yt));if(this.sm.v!==100){var tn=this.sm.v*.01;tn===0&&(tn=1e-8);var sn=.5-tn*.5;Yt<sn?Yt=0:(Yt=(Yt-sn)/tn,Yt>1&&(Yt=1))}return Yt*this.a.v},getValue:function(jt){this.iterateDynamicProperties(),this._mdf=jt||this._mdf,this._currentTextLength=this.elem.textProperty.currentData.l.length||0,jt&&this.data.r===2&&(this.e.v=this._currentTextLength);var Ht=this.data.r===2?1:100/this.data.totalChars,Wt=this.o.v/Ht,qt=this.s.v/Ht+Wt,Xt=this.e.v/Ht+Wt;if(qt>Xt){var Kt=qt;qt=Xt,Xt=Kt}this.finalS=qt,this.finalE=Xt}},extendPrototype([DynamicPropertyContainer],Vt);function Gt(zt,jt,Ht){return new Vt(zt,jt)}return{getTextSelectorProp:Gt}}();function TextAnimatorDataProperty(kt,_e,Dt){var Vt={propType:!1},Gt=PropertyFactory.getProp,zt=_e.a;this.a={r:zt.r?Gt(kt,zt.r,0,degToRads,Dt):Vt,rx:zt.rx?Gt(kt,zt.rx,0,degToRads,Dt):Vt,ry:zt.ry?Gt(kt,zt.ry,0,degToRads,Dt):Vt,sk:zt.sk?Gt(kt,zt.sk,0,degToRads,Dt):Vt,sa:zt.sa?Gt(kt,zt.sa,0,degToRads,Dt):Vt,s:zt.s?Gt(kt,zt.s,1,.01,Dt):Vt,a:zt.a?Gt(kt,zt.a,1,0,Dt):Vt,o:zt.o?Gt(kt,zt.o,0,.01,Dt):Vt,p:zt.p?Gt(kt,zt.p,1,0,Dt):Vt,sw:zt.sw?Gt(kt,zt.sw,0,0,Dt):Vt,sc:zt.sc?Gt(kt,zt.sc,1,0,Dt):Vt,fc:zt.fc?Gt(kt,zt.fc,1,0,Dt):Vt,fh:zt.fh?Gt(kt,zt.fh,0,0,Dt):Vt,fs:zt.fs?Gt(kt,zt.fs,0,.01,Dt):Vt,fb:zt.fb?Gt(kt,zt.fb,0,.01,Dt):Vt,t:zt.t?Gt(kt,zt.t,0,0,Dt):Vt},this.s=TextSelectorProp.getTextSelectorProp(kt,_e.s,Dt),this.s.t=_e.s.t}function TextAnimatorProperty(kt,_e,Dt){this._isFirstFrame=!0,this._hasMaskedPath=!1,this._frameId=-1,this._textData=kt,this._renderType=_e,this._elem=Dt,this._animatorsData=createSizedArray(this._textData.a.length),this._pathData={},this._moreOptions={alignment:{}},this.renderedLetters=[],this.lettersChangedFlag=!1,this.initDynamicPropertyContainer(Dt)}TextAnimatorProperty.prototype.searchProperties=function(){var kt,_e=this._textData.a.length,Dt,Vt=PropertyFactory.getProp;for(kt=0;kt<_e;kt+=1)Dt=this._textData.a[kt],this._animatorsData[kt]=new TextAnimatorDataProperty(this._elem,Dt,this);this._textData.p&&"m"in this._textData.p?(this._pathData={a:Vt(this._elem,this._textData.p.a,0,0,this),f:Vt(this._elem,this._textData.p.f,0,0,this),l:Vt(this._elem,this._textData.p.l,0,0,this),r:Vt(this._elem,this._textData.p.r,0,0,this),p:Vt(this._elem,this._textData.p.p,0,0,this),m:this._elem.maskManager.getMaskProperty(this._textData.p.m)},this._hasMaskedPath=!0):this._hasMaskedPath=!1,this._moreOptions.alignment=Vt(this._elem,this._textData.m.a,1,0,this)},TextAnimatorProperty.prototype.getMeasures=function(kt,_e){if(this.lettersChangedFlag=_e,!(!this._mdf&&!this._isFirstFrame&&!_e&&(!this._hasMaskedPath||!this._pathData.m._mdf))){this._isFirstFrame=!1;var Dt=this._moreOptions.alignment.v,Vt=this._animatorsData,Gt=this._textData,zt=this.mHelper,jt=this._renderType,Ht=this.renderedLetters.length,Wt,qt,Xt,Kt,Yt=kt.l,Zt,Jt,nn,rn,Qt,en,tn,sn,cn,un,hn,dn,pn,fn,mn;if(this._hasMaskedPath){if(mn=this._pathData.m,!this._pathData.n||this._pathData._mdf){var vn=mn.v;this._pathData.r.v&&(vn=vn.reverse()),Zt={tLength:0,segments:[]},Kt=vn._length-1;var _n;for(dn=0,Xt=0;Xt<Kt;Xt+=1)_n=bez.buildBezierData(vn.v[Xt],vn.v[Xt+1],[vn.o[Xt][0]-vn.v[Xt][0],vn.o[Xt][1]-vn.v[Xt][1]],[vn.i[Xt+1][0]-vn.v[Xt+1][0],vn.i[Xt+1][1]-vn.v[Xt+1][1]]),Zt.tLength+=_n.segmentLength,Zt.segments.push(_n),dn+=_n.segmentLength;Xt=Kt,mn.v.c&&(_n=bez.buildBezierData(vn.v[Xt],vn.v[0],[vn.o[Xt][0]-vn.v[Xt][0],vn.o[Xt][1]-vn.v[Xt][1]],[vn.i[0][0]-vn.v[0][0],vn.i[0][1]-vn.v[0][1]]),Zt.tLength+=_n.segmentLength,Zt.segments.push(_n),dn+=_n.segmentLength),this._pathData.pi=Zt}if(Zt=this._pathData.pi,Jt=this._pathData.f.v,tn=0,en=1,rn=0,Qt=!0,un=Zt.segments,Jt<0&&mn.v.c)for(Zt.tLength<Math.abs(Jt)&&(Jt=-Math.abs(Jt)%Zt.tLength),tn=un.length-1,cn=un[tn].points,en=cn.length-1;Jt<0;)Jt+=cn[en].partialLength,en-=1,en<0&&(tn-=1,cn=un[tn].points,en=cn.length-1);cn=un[tn].points,sn=cn[en-1],nn=cn[en],hn=nn.partialLength}Kt=Yt.length,Wt=0,qt=0;var En=kt.finalSize*1.2*.714,An=!0,Tn,Cn,yn,Sn,wn;Sn=Vt.length;var xn,Rn=-1,Dn,kn,Fn,Pn=Jt,Bn=tn,qn=en,tr=-1,ar,zn,ur,Hn,sr,gr,fr,Un,In="",jn=this.defaultPropsArray,or;if(kt.j===2||kt.j===1){var cr=0,lr=0,vr=kt.j===2?-.5:-1,mr=0,Ar=!0;for(Xt=0;Xt<Kt;Xt+=1)if(Yt[Xt].n){for(cr&&(cr+=lr);mr<Xt;)Yt[mr].animatorJustifyOffset=cr,mr+=1;cr=0,Ar=!0}else{for(yn=0;yn<Sn;yn+=1)Tn=Vt[yn].a,Tn.t.propType&&(Ar&&kt.j===2&&(lr+=Tn.t.v*vr),Cn=Vt[yn].s,xn=Cn.getMult(Yt[Xt].anIndexes[yn],Gt.a[yn].s.totalChars),xn.length?cr+=Tn.t.v*xn[0]*vr:cr+=Tn.t.v*xn*vr);Ar=!1}for(cr&&(cr+=lr);mr<Xt;)Yt[mr].animatorJustifyOffset=cr,mr+=1}for(Xt=0;Xt<Kt;Xt+=1){if(zt.reset(),ar=1,Yt[Xt].n)Wt=0,qt+=kt.yOffset,qt+=An?1:0,Jt=Pn,An=!1,this._hasMaskedPath&&(tn=Bn,en=qn,cn=un[tn].points,sn=cn[en-1],nn=cn[en],hn=nn.partialLength,rn=0),In="",Un="",gr="",or="",jn=this.defaultPropsArray;else{if(this._hasMaskedPath){if(tr!==Yt[Xt].line){switch(kt.j){case 1:Jt+=dn-kt.lineWidths[Yt[Xt].line];break;case 2:Jt+=(dn-kt.lineWidths[Yt[Xt].line])/2;break}tr=Yt[Xt].line}Rn!==Yt[Xt].ind&&(Yt[Rn]&&(Jt+=Yt[Rn].extra),Jt+=Yt[Xt].an/2,Rn=Yt[Xt].ind),Jt+=Dt[0]*Yt[Xt].an*.005;var Lr=0;for(yn=0;yn<Sn;yn+=1)Tn=Vt[yn].a,Tn.p.propType&&(Cn=Vt[yn].s,xn=Cn.getMult(Yt[Xt].anIndexes[yn],Gt.a[yn].s.totalChars),xn.length?Lr+=Tn.p.v[0]*xn[0]:Lr+=Tn.p.v[0]*xn),Tn.a.propType&&(Cn=Vt[yn].s,xn=Cn.getMult(Yt[Xt].anIndexes[yn],Gt.a[yn].s.totalChars),xn.length?Lr+=Tn.a.v[0]*xn[0]:Lr+=Tn.a.v[0]*xn);for(Qt=!0,this._pathData.a.v&&(Jt=Yt[0].an*.5+(dn-this._pathData.f.v-Yt[0].an*.5-Yt[Yt.length-1].an*.5)*Rn/(Kt-1),Jt+=this._pathData.f.v);Qt;)rn+hn>=Jt+Lr||!cn?(pn=(Jt+Lr-rn)/nn.partialLength,kn=sn.point[0]+(nn.point[0]-sn.point[0])*pn,Fn=sn.point[1]+(nn.point[1]-sn.point[1])*pn,zt.translate(-Dt[0]*Yt[Xt].an*.005,-(Dt[1]*En)*.01),Qt=!1):cn&&(rn+=nn.partialLength,en+=1,en>=cn.length&&(en=0,tn+=1,un[tn]?cn=un[tn].points:mn.v.c?(en=0,tn=0,cn=un[tn].points):(rn-=nn.partialLength,cn=null)),cn&&(sn=nn,nn=cn[en],hn=nn.partialLength));Dn=Yt[Xt].an/2-Yt[Xt].add,zt.translate(-Dn,0,0)}else Dn=Yt[Xt].an/2-Yt[Xt].add,zt.translate(-Dn,0,0),zt.translate(-Dt[0]*Yt[Xt].an*.005,-Dt[1]*En*.01,0);for(yn=0;yn<Sn;yn+=1)Tn=Vt[yn].a,Tn.t.propType&&(Cn=Vt[yn].s,xn=Cn.getMult(Yt[Xt].anIndexes[yn],Gt.a[yn].s.totalChars),(Wt!==0||kt.j!==0)&&(this._hasMaskedPath?xn.length?Jt+=Tn.t.v*xn[0]:Jt+=Tn.t.v*xn:xn.length?Wt+=Tn.t.v*xn[0]:Wt+=Tn.t.v*xn));for(kt.strokeWidthAnim&&(ur=kt.sw||0),kt.strokeColorAnim&&(kt.sc?zn=[kt.sc[0],kt.sc[1],kt.sc[2]]:zn=[0,0,0]),kt.fillColorAnim&&kt.fc&&(Hn=[kt.fc[0],kt.fc[1],kt.fc[2]]),yn=0;yn<Sn;yn+=1)Tn=Vt[yn].a,Tn.a.propType&&(Cn=Vt[yn].s,xn=Cn.getMult(Yt[Xt].anIndexes[yn],Gt.a[yn].s.totalChars),xn.length?zt.translate(-Tn.a.v[0]*xn[0],-Tn.a.v[1]*xn[1],Tn.a.v[2]*xn[2]):zt.translate(-Tn.a.v[0]*xn,-Tn.a.v[1]*xn,Tn.a.v[2]*xn));for(yn=0;yn<Sn;yn+=1)Tn=Vt[yn].a,Tn.s.propType&&(Cn=Vt[yn].s,xn=Cn.getMult(Yt[Xt].anIndexes[yn],Gt.a[yn].s.totalChars),xn.length?zt.scale(1+(Tn.s.v[0]-1)*xn[0],1+(Tn.s.v[1]-1)*xn[1],1):zt.scale(1+(Tn.s.v[0]-1)*xn,1+(Tn.s.v[1]-1)*xn,1));for(yn=0;yn<Sn;yn+=1){if(Tn=Vt[yn].a,Cn=Vt[yn].s,xn=Cn.getMult(Yt[Xt].anIndexes[yn],Gt.a[yn].s.totalChars),Tn.sk.propType&&(xn.length?zt.skewFromAxis(-Tn.sk.v*xn[0],Tn.sa.v*xn[1]):zt.skewFromAxis(-Tn.sk.v*xn,Tn.sa.v*xn)),Tn.r.propType&&(xn.length?zt.rotateZ(-Tn.r.v*xn[2]):zt.rotateZ(-Tn.r.v*xn)),Tn.ry.propType&&(xn.length?zt.rotateY(Tn.ry.v*xn[1]):zt.rotateY(Tn.ry.v*xn)),Tn.rx.propType&&(xn.length?zt.rotateX(Tn.rx.v*xn[0]):zt.rotateX(Tn.rx.v*xn)),Tn.o.propType&&(xn.length?ar+=(Tn.o.v*xn[0]-ar)*xn[0]:ar+=(Tn.o.v*xn-ar)*xn),kt.strokeWidthAnim&&Tn.sw.propType&&(xn.length?ur+=Tn.sw.v*xn[0]:ur+=Tn.sw.v*xn),kt.strokeColorAnim&&Tn.sc.propType)for(sr=0;sr<3;sr+=1)xn.length?zn[sr]+=(Tn.sc.v[sr]-zn[sr])*xn[0]:zn[sr]+=(Tn.sc.v[sr]-zn[sr])*xn;if(kt.fillColorAnim&&kt.fc){if(Tn.fc.propType)for(sr=0;sr<3;sr+=1)xn.length?Hn[sr]+=(Tn.fc.v[sr]-Hn[sr])*xn[0]:Hn[sr]+=(Tn.fc.v[sr]-Hn[sr])*xn;Tn.fh.propType&&(xn.length?Hn=addHueToRGB(Hn,Tn.fh.v*xn[0]):Hn=addHueToRGB(Hn,Tn.fh.v*xn)),Tn.fs.propType&&(xn.length?Hn=addSaturationToRGB(Hn,Tn.fs.v*xn[0]):Hn=addSaturationToRGB(Hn,Tn.fs.v*xn)),Tn.fb.propType&&(xn.length?Hn=addBrightnessToRGB(Hn,Tn.fb.v*xn[0]):Hn=addBrightnessToRGB(Hn,Tn.fb.v*xn))}}for(yn=0;yn<Sn;yn+=1)Tn=Vt[yn].a,Tn.p.propType&&(Cn=Vt[yn].s,xn=Cn.getMult(Yt[Xt].anIndexes[yn],Gt.a[yn].s.totalChars),this._hasMaskedPath?xn.length?zt.translate(0,Tn.p.v[1]*xn[0],-Tn.p.v[2]*xn[1]):zt.translate(0,Tn.p.v[1]*xn,-Tn.p.v[2]*xn):xn.length?zt.translate(Tn.p.v[0]*xn[0],Tn.p.v[1]*xn[1],-Tn.p.v[2]*xn[2]):zt.translate(Tn.p.v[0]*xn,Tn.p.v[1]*xn,-Tn.p.v[2]*xn));if(kt.strokeWidthAnim&&(gr=ur<0?0:ur),kt.strokeColorAnim&&(fr="rgb("+Math.round(zn[0]*255)+","+Math.round(zn[1]*255)+","+Math.round(zn[2]*255)+")"),kt.fillColorAnim&&kt.fc&&(Un="rgb("+Math.round(Hn[0]*255)+","+Math.round(Hn[1]*255)+","+Math.round(Hn[2]*255)+")"),this._hasMaskedPath){if(zt.translate(0,-kt.ls),zt.translate(0,Dt[1]*En*.01+qt,0),this._pathData.p.v){fn=(nn.point[1]-sn.point[1])/(nn.point[0]-sn.point[0]);var Cr=Math.atan(fn)*180/Math.PI;nn.point[0]<sn.point[0]&&(Cr+=180),zt.rotate(-Cr*Math.PI/180)}zt.translate(kn,Fn,0),Jt-=Dt[0]*Yt[Xt].an*.005,Yt[Xt+1]&&Rn!==Yt[Xt+1].ind&&(Jt+=Yt[Xt].an/2,Jt+=kt.tr*.001*kt.finalSize)}else{switch(zt.translate(Wt,qt,0),kt.ps&&zt.translate(kt.ps[0],kt.ps[1]+kt.ascent,0),kt.j){case 1:zt.translate(Yt[Xt].animatorJustifyOffset+kt.justifyOffset+(kt.boxWidth-kt.lineWidths[Yt[Xt].line]),0,0);break;case 2:zt.translate(Yt[Xt].animatorJustifyOffset+kt.justifyOffset+(kt.boxWidth-kt.lineWidths[Yt[Xt].line])/2,0,0);break}zt.translate(0,-kt.ls),zt.translate(Dn,0,0),zt.translate(Dt[0]*Yt[Xt].an*.005,Dt[1]*En*.01,0),Wt+=Yt[Xt].l+kt.tr*.001*kt.finalSize}jt==="html"?In=zt.toCSS():jt==="svg"?In=zt.to2dCSS():jn=[zt.props[0],zt.props[1],zt.props[2],zt.props[3],zt.props[4],zt.props[5],zt.props[6],zt.props[7],zt.props[8],zt.props[9],zt.props[10],zt.props[11],zt.props[12],zt.props[13],zt.props[14],zt.props[15]],or=ar}Ht<=Xt?(wn=new LetterProps(or,gr,fr,Un,In,jn),this.renderedLetters.push(wn),Ht+=1,this.lettersChangedFlag=!0):(wn=this.renderedLetters[Xt],this.lettersChangedFlag=wn.update(or,gr,fr,Un,In,jn)||this.lettersChangedFlag)}}},TextAnimatorProperty.prototype.getValue=function(){this._elem.globalData.frameId!==this._frameId&&(this._frameId=this._elem.globalData.frameId,this.iterateDynamicProperties())},TextAnimatorProperty.prototype.mHelper=new Matrix,TextAnimatorProperty.prototype.defaultPropsArray=[],extendPrototype([DynamicPropertyContainer],TextAnimatorProperty);function ITextElement(){}ITextElement.prototype.initElement=function(kt,_e,Dt){this.lettersChangedFlag=!0,this.initFrame(),this.initBaseData(kt,_e,Dt),this.textProperty=new TextProperty(this,kt.t,this.dynamicProperties),this.textAnimator=new TextAnimatorProperty(kt.t,this.renderType,this),this.initTransform(kt,_e,Dt),this.initHierarchy(),this.initRenderable(),this.initRendererElement(),this.createContainerElements(),this.createRenderableComponents(),this.createContent(),this.hide(),this.textAnimator.searchProperties(this.dynamicProperties)},ITextElement.prototype.prepareFrame=function(kt){this._mdf=!1,this.prepareRenderableFrame(kt),this.prepareProperties(kt,this.isInRange)},ITextElement.prototype.createPathShape=function(kt,_e){var Dt,Vt=_e.length,Gt,zt="";for(Dt=0;Dt<Vt;Dt+=1)_e[Dt].ty==="sh"&&(Gt=_e[Dt].ks.k,zt+=buildShapeString(Gt,Gt.i.length,!0,kt));return zt},ITextElement.prototype.updateDocumentData=function(kt,_e){this.textProperty.updateDocumentData(kt,_e)},ITextElement.prototype.canResizeFont=function(kt){this.textProperty.canResizeFont(kt)},ITextElement.prototype.setMinimumFontSize=function(kt){this.textProperty.setMinimumFontSize(kt)},ITextElement.prototype.applyTextPropertiesToMatrix=function(kt,_e,Dt,Vt,Gt){switch(kt.ps&&_e.translate(kt.ps[0],kt.ps[1]+kt.ascent,0),_e.translate(0,-kt.ls,0),kt.j){case 1:_e.translate(kt.justifyOffset+(kt.boxWidth-kt.lineWidths[Dt]),0,0);break;case 2:_e.translate(kt.justifyOffset+(kt.boxWidth-kt.lineWidths[Dt])/2,0,0);break}_e.translate(Vt,Gt,0)},ITextElement.prototype.buildColor=function(kt){return"rgb("+Math.round(kt[0]*255)+","+Math.round(kt[1]*255)+","+Math.round(kt[2]*255)+")"},ITextElement.prototype.emptyProp=new LetterProps,ITextElement.prototype.destroy=function(){},ITextElement.prototype.validateText=function(){(this.textProperty._mdf||this.textProperty._isFirstFrame)&&(this.buildNewText(),this.textProperty._isFirstFrame=!1,this.textProperty._mdf=!1)};var emptyShapeData={shapes:[]};function SVGTextLottieElement(kt,_e,Dt){this.textSpans=[],this.renderType="svg",this.initElement(kt,_e,Dt)}extendPrototype([BaseElement,TransformElement,SVGBaseElement,HierarchyElement,FrameElement,RenderableDOMElement,ITextElement],SVGTextLottieElement),SVGTextLottieElement.prototype.createContent=function(){this.data.singleShape&&!this.globalData.fontManager.chars&&(this.textContainer=createNS("text"))},SVGTextLottieElement.prototype.buildTextContents=function(kt){for(var _e=0,Dt=kt.length,Vt=[],Gt="";_e<Dt;)kt[_e]===String.fromCharCode(13)||kt[_e]===String.fromCharCode(3)?(Vt.push(Gt),Gt=""):Gt+=kt[_e],_e+=1;return Vt.push(Gt),Vt},SVGTextLottieElement.prototype.buildShapeData=function(kt,_e){if(kt.shapes&&kt.shapes.length){var Dt=kt.shapes[0];if(Dt.it){var Vt=Dt.it[Dt.it.length-1];Vt.s&&(Vt.s.k[0]=_e,Vt.s.k[1]=_e)}}return kt},SVGTextLottieElement.prototype.buildNewText=function(){this.addDynamicProperty(this);var kt,_e,Dt=this.textProperty.currentData;this.renderedLetters=createSizedArray(Dt?Dt.l.length:0),Dt.fc?this.layerElement.setAttribute("fill",this.buildColor(Dt.fc)):this.layerElement.setAttribute("fill","rgba(0,0,0,0)"),Dt.sc&&(this.layerElement.setAttribute("stroke",this.buildColor(Dt.sc)),this.layerElement.setAttribute("stroke-width",Dt.sw)),this.layerElement.setAttribute("font-size",Dt.finalSize);var Vt=this.globalData.fontManager.getFontByName(Dt.f);if(Vt.fClass)this.layerElement.setAttribute("class",Vt.fClass);else{this.layerElement.setAttribute("font-family",Vt.fFamily);var Gt=Dt.fWeight,zt=Dt.fStyle;this.layerElement.setAttribute("font-style",zt),this.layerElement.setAttribute("font-weight",Gt)}this.layerElement.setAttribute("aria-label",Dt.t);var jt=Dt.l||[],Ht=!!this.globalData.fontManager.chars;_e=jt.length;var Wt,qt=this.mHelper,Xt="",Kt=this.data.singleShape,Yt=0,Zt=0,Jt=!0,nn=Dt.tr*.001*Dt.finalSize;if(Kt&&!Ht&&!Dt.sz){var rn=this.textContainer,Qt="start";switch(Dt.j){case 1:Qt="end";break;case 2:Qt="middle";break;default:Qt="start";break}rn.setAttribute("text-anchor",Qt),rn.setAttribute("letter-spacing",nn);var en=this.buildTextContents(Dt.finalText);for(_e=en.length,Zt=Dt.ps?Dt.ps[1]+Dt.ascent:0,kt=0;kt<_e;kt+=1)Wt=this.textSpans[kt].span||createNS("tspan"),Wt.textContent=en[kt],Wt.setAttribute("x",0),Wt.setAttribute("y",Zt),Wt.style.display="inherit",rn.appendChild(Wt),this.textSpans[kt]||(this.textSpans[kt]={span:null,glyph:null}),this.textSpans[kt].span=Wt,Zt+=Dt.finalLineHeight;this.layerElement.appendChild(rn)}else{var tn=this.textSpans.length,sn;for(kt=0;kt<_e;kt+=1){if(this.textSpans[kt]||(this.textSpans[kt]={span:null,childSpan:null,glyph:null}),!Ht||!Kt||kt===0){if(Wt=tn>kt?this.textSpans[kt].span:createNS(Ht?"g":"text"),tn<=kt){if(Wt.setAttribute("stroke-linecap","butt"),Wt.setAttribute("stroke-linejoin","round"),Wt.setAttribute("stroke-miterlimit","4"),this.textSpans[kt].span=Wt,Ht){var cn=createNS("g");Wt.appendChild(cn),this.textSpans[kt].childSpan=cn}this.textSpans[kt].span=Wt,this.layerElement.appendChild(Wt)}Wt.style.display="inherit"}if(qt.reset(),Kt&&(jt[kt].n&&(Yt=-nn,Zt+=Dt.yOffset,Zt+=Jt?1:0,Jt=!1),this.applyTextPropertiesToMatrix(Dt,qt,jt[kt].line,Yt,Zt),Yt+=jt[kt].l||0,Yt+=nn),Ht){sn=this.globalData.fontManager.getCharData(Dt.finalText[kt],Vt.fStyle,this.globalData.fontManager.getFontByName(Dt.f).fFamily);var un;if(sn.t===1)un=new SVGCompElement(sn.data,this.globalData,this);else{var hn=emptyShapeData;sn.data&&sn.data.shapes&&(hn=this.buildShapeData(sn.data,Dt.finalSize)),un=new SVGShapeElement(hn,this.globalData,this)}if(this.textSpans[kt].glyph){var dn=this.textSpans[kt].glyph;this.textSpans[kt].childSpan.removeChild(dn.layerElement),dn.destroy()}this.textSpans[kt].glyph=un,un._debug=!0,un.prepareFrame(0),un.renderFrame(),this.textSpans[kt].childSpan.appendChild(un.layerElement),sn.t===1&&this.textSpans[kt].childSpan.setAttribute("transform","scale("+Dt.finalSize/100+","+Dt.finalSize/100+")")}else Kt&&Wt.setAttribute("transform","translate("+qt.props[12]+","+qt.props[13]+")"),Wt.textContent=jt[kt].val,Wt.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve")}Kt&&Wt&&Wt.setAttribute("d",Xt)}for(;kt<this.textSpans.length;)this.textSpans[kt].span.style.display="none",kt+=1;this._sizeChanged=!0},SVGTextLottieElement.prototype.sourceRectAtTime=function(){if(this.prepareFrame(this.comp.renderedFrame-this.data.st),this.renderInnerContent(),this._sizeChanged){this._sizeChanged=!1;var kt=this.layerElement.getBBox();this.bbox={top:kt.y,left:kt.x,width:kt.width,height:kt.height}}return this.bbox},SVGTextLottieElement.prototype.getValue=function(){var kt,_e=this.textSpans.length,Dt;for(this.renderedFrame=this.comp.renderedFrame,kt=0;kt<_e;kt+=1)Dt=this.textSpans[kt].glyph,Dt&&(Dt.prepareFrame(this.comp.renderedFrame-this.data.st),Dt._mdf&&(this._mdf=!0))},SVGTextLottieElement.prototype.renderInnerContent=function(){if(this.validateText(),(!this.data.singleShape||this._mdf)&&(this.textAnimator.getMeasures(this.textProperty.currentData,this.lettersChangedFlag),this.lettersChangedFlag||this.textAnimator.lettersChangedFlag)){this._sizeChanged=!0;var kt,_e,Dt=this.textAnimator.renderedLetters,Vt=this.textProperty.currentData.l;_e=Vt.length;var Gt,zt,jt;for(kt=0;kt<_e;kt+=1)Vt[kt].n||(Gt=Dt[kt],zt=this.textSpans[kt].span,jt=this.textSpans[kt].glyph,jt&&jt.renderFrame(),Gt._mdf.m&&zt.setAttribute("transform",Gt.m),Gt._mdf.o&&zt.setAttribute("opacity",Gt.o),Gt._mdf.sw&&zt.setAttribute("stroke-width",Gt.sw),Gt._mdf.sc&&zt.setAttribute("stroke",Gt.sc),Gt._mdf.fc&&zt.setAttribute("fill",Gt.fc))}};function ISolidElement(kt,_e,Dt){this.initElement(kt,_e,Dt)}extendPrototype([IImageElement],ISolidElement),ISolidElement.prototype.createContent=function(){var kt=createNS("rect");kt.setAttribute("width",this.data.sw),kt.setAttribute("height",this.data.sh),kt.setAttribute("fill",this.data.sc),this.layerElement.appendChild(kt)};function NullElement(kt,_e,Dt){this.initFrame(),this.initBaseData(kt,_e,Dt),this.initFrame(),this.initTransform(kt,_e,Dt),this.initHierarchy()}NullElement.prototype.prepareFrame=function(kt){this.prepareProperties(kt,!0)},NullElement.prototype.renderFrame=function(){},NullElement.prototype.getBaseElement=function(){return null},NullElement.prototype.destroy=function(){},NullElement.prototype.sourceRectAtTime=function(){},NullElement.prototype.hide=function(){},extendPrototype([BaseElement,TransformElement,HierarchyElement,FrameElement],NullElement);function SVGRendererBase(){}extendPrototype([BaseRenderer],SVGRendererBase),SVGRendererBase.prototype.createNull=function(kt){return new NullElement(kt,this.globalData,this)},SVGRendererBase.prototype.createShape=function(kt){return new SVGShapeElement(kt,this.globalData,this)},SVGRendererBase.prototype.createText=function(kt){return new SVGTextLottieElement(kt,this.globalData,this)},SVGRendererBase.prototype.createImage=function(kt){return new IImageElement(kt,this.globalData,this)},SVGRendererBase.prototype.createSolid=function(kt){return new ISolidElement(kt,this.globalData,this)},SVGRendererBase.prototype.configAnimation=function(kt){this.svgElement.setAttribute("xmlns","http://www.w3.org/2000/svg"),this.svgElement.setAttribute("xmlns:xlink","http://www.w3.org/1999/xlink"),this.renderConfig.viewBoxSize?this.svgElement.setAttribute("viewBox",this.renderConfig.viewBoxSize):this.svgElement.setAttribute("viewBox","0 0 "+kt.w+" "+kt.h),this.renderConfig.viewBoxOnly||(this.svgElement.setAttribute("width",kt.w),this.svgElement.setAttribute("height",kt.h),this.svgElement.style.width="100%",this.svgElement.style.height="100%",this.svgElement.style.transform="translate3d(0,0,0)",this.svgElement.style.contentVisibility=this.renderConfig.contentVisibility),this.renderConfig.width&&this.svgElement.setAttribute("width",this.renderConfig.width),this.renderConfig.height&&this.svgElement.setAttribute("height",this.renderConfig.height),this.renderConfig.className&&this.svgElement.setAttribute("class",this.renderConfig.className),this.renderConfig.id&&this.svgElement.setAttribute("id",this.renderConfig.id),this.renderConfig.focusable!==void 0&&this.svgElement.setAttribute("focusable",this.renderConfig.focusable),this.svgElement.setAttribute("preserveAspectRatio",this.renderConfig.preserveAspectRatio),this.animationItem.wrapper.appendChild(this.svgElement);var _e=this.globalData.defs;this.setupGlobalData(kt,_e),this.globalData.progressiveLoad=this.renderConfig.progressiveLoad,this.data=kt;var Dt=createNS("clipPath"),Vt=createNS("rect");Vt.setAttribute("width",kt.w),Vt.setAttribute("height",kt.h),Vt.setAttribute("x",0),Vt.setAttribute("y",0);var Gt=createElementID();Dt.setAttribute("id",Gt),Dt.appendChild(Vt),this.layerElement.setAttribute("clip-path","url("+getLocationHref()+"#"+Gt+")"),_e.appendChild(Dt),this.layers=kt.layers,this.elements=createSizedArray(kt.layers.length)},SVGRendererBase.prototype.destroy=function(){this.animationItem.wrapper&&(this.animationItem.wrapper.innerText=""),this.layerElement=null,this.globalData.defs=null;var kt,_e=this.layers?this.layers.length:0;for(kt=0;kt<_e;kt+=1)this.elements[kt]&&this.elements[kt].destroy&&this.elements[kt].destroy();this.elements.length=0,this.destroyed=!0,this.animationItem=null},SVGRendererBase.prototype.updateContainerSize=function(){},SVGRendererBase.prototype.findIndexByInd=function(kt){var _e=0,Dt=this.layers.length;for(_e=0;_e<Dt;_e+=1)if(this.layers[_e].ind===kt)return _e;return-1},SVGRendererBase.prototype.buildItem=function(kt){var _e=this.elements;if(!(_e[kt]||this.layers[kt].ty===99)){_e[kt]=!0;var Dt=this.createItem(this.layers[kt]);if(_e[kt]=Dt,getExpressionsPlugin()&&(this.layers[kt].ty===0&&this.globalData.projectInterface.registerComposition(Dt),Dt.initExpressions()),this.appendElementInPos(Dt,kt),this.layers[kt].tt){var Vt="tp"in this.layers[kt]?this.findIndexByInd(this.layers[kt].tp):kt-1;if(Vt===-1)return;if(!this.elements[Vt]||this.elements[Vt]===!0)this.buildItem(Vt),this.addPendingElement(Dt);else{var Gt=_e[Vt],zt=Gt.getMatte(this.layers[kt].tt);Dt.setMatte(zt)}}}},SVGRendererBase.prototype.checkPendingElements=function(){for(;this.pendingElements.length;){var kt=this.pendingElements.pop();if(kt.checkParenting(),kt.data.tt)for(var _e=0,Dt=this.elements.length;_e<Dt;){if(this.elements[_e]===kt){var Vt="tp"in kt.data?this.findIndexByInd(kt.data.tp):_e-1,Gt=this.elements[Vt],zt=Gt.getMatte(this.layers[_e].tt);kt.setMatte(zt);break}_e+=1}}},SVGRendererBase.prototype.renderFrame=function(kt){if(!(this.renderedFrame===kt||this.destroyed)){kt===null?kt=this.renderedFrame:this.renderedFrame=kt,this.globalData.frameNum=kt,this.globalData.frameId+=1,this.globalData.projectInterface.currentFrame=kt,this.globalData._mdf=!1;var _e,Dt=this.layers.length;for(this.completeLayers||this.checkLayers(kt),_e=Dt-1;_e>=0;_e-=1)(this.completeLayers||this.elements[_e])&&this.elements[_e].prepareFrame(kt-this.layers[_e].st);if(this.globalData._mdf)for(_e=0;_e<Dt;_e+=1)(this.completeLayers||this.elements[_e])&&this.elements[_e].renderFrame()}},SVGRendererBase.prototype.appendElementInPos=function(kt,_e){var Dt=kt.getBaseElement();if(Dt){for(var Vt=0,Gt;Vt<_e;)this.elements[Vt]&&this.elements[Vt]!==!0&&this.elements[Vt].getBaseElement()&&(Gt=this.elements[Vt].getBaseElement()),Vt+=1;Gt?this.layerElement.insertBefore(Dt,Gt):this.layerElement.appendChild(Dt)}},SVGRendererBase.prototype.hide=function(){this.layerElement.style.display="none"},SVGRendererBase.prototype.show=function(){this.layerElement.style.display="block"};function ICompElement(){}extendPrototype([BaseElement,TransformElement,HierarchyElement,FrameElement,RenderableDOMElement],ICompElement),ICompElement.prototype.initElement=function(kt,_e,Dt){this.initFrame(),this.initBaseData(kt,_e,Dt),this.initTransform(kt,_e,Dt),this.initRenderable(),this.initHierarchy(),this.initRendererElement(),this.createContainerElements(),this.createRenderableComponents(),(this.data.xt||!_e.progressiveLoad)&&this.buildAllItems(),this.hide()},ICompElement.prototype.prepareFrame=function(kt){if(this._mdf=!1,this.prepareRenderableFrame(kt),this.prepareProperties(kt,this.isInRange),!(!this.isInRange&&!this.data.xt)){if(this.tm._placeholder)this.renderedFrame=kt/this.data.sr;else{var _e=this.tm.v;_e===this.data.op&&(_e=this.data.op-1),this.renderedFrame=_e}var Dt,Vt=this.elements.length;for(this.completeLayers||this.checkLayers(this.renderedFrame),Dt=Vt-1;Dt>=0;Dt-=1)(this.completeLayers||this.elements[Dt])&&(this.elements[Dt].prepareFrame(this.renderedFrame-this.layers[Dt].st),this.elements[Dt]._mdf&&(this._mdf=!0))}},ICompElement.prototype.renderInnerContent=function(){var kt,_e=this.layers.length;for(kt=0;kt<_e;kt+=1)(this.completeLayers||this.elements[kt])&&this.elements[kt].renderFrame()},ICompElement.prototype.setElements=function(kt){this.elements=kt},ICompElement.prototype.getElements=function(){return this.elements},ICompElement.prototype.destroyElements=function(){var kt,_e=this.layers.length;for(kt=0;kt<_e;kt+=1)this.elements[kt]&&this.elements[kt].destroy()},ICompElement.prototype.destroy=function(){this.destroyElements(),this.destroyBaseElement()};function SVGCompElement(kt,_e,Dt){this.layers=kt.layers,this.supports3d=!0,this.completeLayers=!1,this.pendingElements=[],this.elements=this.layers?createSizedArray(this.layers.length):[],this.initElement(kt,_e,Dt),this.tm=kt.tm?PropertyFactory.getProp(this,kt.tm,0,_e.frameRate,this):{_placeholder:!0}}extendPrototype([SVGRendererBase,ICompElement,SVGBaseElement],SVGCompElement),SVGCompElement.prototype.createComp=function(kt){return new SVGCompElement(kt,this.globalData,this)};function SVGRenderer(kt,_e){this.animationItem=kt,this.layers=null,this.renderedFrame=-1,this.svgElement=createNS("svg");var Dt="";if(_e&&_e.title){var Vt=createNS("title"),Gt=createElementID();Vt.setAttribute("id",Gt),Vt.textContent=_e.title,this.svgElement.appendChild(Vt),Dt+=Gt}if(_e&&_e.description){var zt=createNS("desc"),jt=createElementID();zt.setAttribute("id",jt),zt.textContent=_e.description,this.svgElement.appendChild(zt),Dt+=" "+jt}Dt&&this.svgElement.setAttribute("aria-labelledby",Dt);var Ht=createNS("defs");this.svgElement.appendChild(Ht);var Wt=createNS("g");this.svgElement.appendChild(Wt),this.layerElement=Wt,this.renderConfig={preserveAspectRatio:_e&&_e.preserveAspectRatio||"xMidYMid meet",imagePreserveAspectRatio:_e&&_e.imagePreserveAspectRatio||"xMidYMid slice",contentVisibility:_e&&_e.contentVisibility||"visible",progressiveLoad:_e&&_e.progressiveLoad||!1,hideOnTransparent:!(_e&&_e.hideOnTransparent===!1),viewBoxOnly:_e&&_e.viewBoxOnly||!1,viewBoxSize:_e&&_e.viewBoxSize||!1,className:_e&&_e.className||"",id:_e&&_e.id||"",focusable:_e&&_e.focusable,filterSize:{width:_e&&_e.filterSize&&_e.filterSize.width||"100%",height:_e&&_e.filterSize&&_e.filterSize.height||"100%",x:_e&&_e.filterSize&&_e.filterSize.x||"0%",y:_e&&_e.filterSize&&_e.filterSize.y||"0%"},width:_e&&_e.width,height:_e&&_e.height,runExpressions:!_e||_e.runExpressions===void 0||_e.runExpressions},this.globalData={_mdf:!1,frameNum:-1,defs:Ht,renderConfig:this.renderConfig},this.elements=[],this.pendingElements=[],this.destroyed=!1,this.rendererType="svg"}extendPrototype([SVGRendererBase],SVGRenderer),SVGRenderer.prototype.createComp=function(kt){return new SVGCompElement(kt,this.globalData,this)};function ShapeTransformManager(){this.sequences={},this.sequenceList=[],this.transform_key_count=0}ShapeTransformManager.prototype={addTransformSequence:function(_e){var Dt,Vt=_e.length,Gt="_";for(Dt=0;Dt<Vt;Dt+=1)Gt+=_e[Dt].transform.key+"_";var zt=this.sequences[Gt];return zt||(zt={transforms:[].concat(_e),finalTransform:new Matrix,_mdf:!1},this.sequences[Gt]=zt,this.sequenceList.push(zt)),zt},processSequence:function(_e,Dt){for(var Vt=0,Gt=_e.transforms.length,zt=Dt;Vt<Gt&&!Dt;){if(_e.transforms[Vt].transform.mProps._mdf){zt=!0;break}Vt+=1}if(zt)for(_e.finalTransform.reset(),Vt=Gt-1;Vt>=0;Vt-=1)_e.finalTransform.multiply(_e.transforms[Vt].transform.mProps.v);_e._mdf=zt},processSequences:function(_e){var Dt,Vt=this.sequenceList.length;for(Dt=0;Dt<Vt;Dt+=1)this.processSequence(this.sequenceList[Dt],_e)},getNewKey:function(){return this.transform_key_count+=1,"_"+this.transform_key_count}};var lumaLoader=function(){var _e="__lottie_element_luma_buffer",Dt=null,Vt=null,Gt=null;function zt(){var Wt=createNS("svg"),qt=createNS("filter"),Xt=createNS("feColorMatrix");return qt.setAttribute("id",_e),Xt.setAttribute("type","matrix"),Xt.setAttribute("color-interpolation-filters","sRGB"),Xt.setAttribute("values","0.3, 0.3, 0.3, 0, 0, 0.3, 0.3, 0.3, 0, 0, 0.3, 0.3, 0.3, 0, 0, 0.3, 0.3, 0.3, 0, 0"),qt.appendChild(Xt),Wt.appendChild(qt),Wt.setAttribute("id",_e+"_svg"),featureSupport.svgLumaHidden&&(Wt.style.display="none"),Wt}function jt(){Dt||(Gt=zt(),document.body.appendChild(Gt),Dt=createTag("canvas"),Vt=Dt.getContext("2d"),Vt.filter="url(#"+_e+")",Vt.fillStyle="rgba(0,0,0,0)",Vt.fillRect(0,0,1,1))}function Ht(Wt){return Dt||jt(),Dt.width=Wt.width,Dt.height=Wt.height,Vt.filter="url(#"+_e+")",Dt}return{load:jt,get:Ht}};function createCanvas(kt,_e){if(featureSupport.offscreenCanvas)return new OffscreenCanvas(kt,_e);var Dt=createTag("canvas");return Dt.width=kt,Dt.height=_e,Dt}var assetLoader=function(){return{loadLumaCanvas:lumaLoader.load,getLumaCanvas:lumaLoader.get,createCanvas}}(),registeredEffects={};function CVEffects(kt){var _e,Dt=kt.data.ef?kt.data.ef.length:0;this.filters=[];var Vt;for(_e=0;_e<Dt;_e+=1){Vt=null;var Gt=kt.data.ef[_e].ty;if(registeredEffects[Gt]){var zt=registeredEffects[Gt].effect;Vt=new zt(kt.effectsManager.effectElements[_e],kt)}Vt&&this.filters.push(Vt)}this.filters.length&&kt.addRenderableComponent(this)}CVEffects.prototype.renderFrame=function(kt){var _e,Dt=this.filters.length;for(_e=0;_e<Dt;_e+=1)this.filters[_e].renderFrame(kt)},CVEffects.prototype.getEffects=function(kt){var _e,Dt=this.filters.length,Vt=[];for(_e=0;_e<Dt;_e+=1)this.filters[_e].type===kt&&Vt.push(this.filters[_e]);return Vt};function registerEffect(kt,_e){registeredEffects[kt]={effect:_e}}function CVMaskElement(kt,_e){this.data=kt,this.element=_e,this.masksProperties=this.data.masksProperties||[],this.viewData=createSizedArray(this.masksProperties.length);var Dt,Vt=this.masksProperties.length,Gt=!1;for(Dt=0;Dt<Vt;Dt+=1)this.masksProperties[Dt].mode!=="n"&&(Gt=!0),this.viewData[Dt]=ShapePropertyFactory.getShapeProp(this.element,this.masksProperties[Dt],3);this.hasMasks=Gt,Gt&&this.element.addRenderableComponent(this)}CVMaskElement.prototype.renderFrame=function(){if(this.hasMasks){var kt=this.element.finalTransform.mat,_e=this.element.canvasContext,Dt,Vt=this.masksProperties.length,Gt,zt,jt;for(_e.beginPath(),Dt=0;Dt<Vt;Dt+=1)if(this.masksProperties[Dt].mode!=="n"){this.masksProperties[Dt].inv&&(_e.moveTo(0,0),_e.lineTo(this.element.globalData.compSize.w,0),_e.lineTo(this.element.globalData.compSize.w,this.element.globalData.compSize.h),_e.lineTo(0,this.element.globalData.compSize.h),_e.lineTo(0,0)),jt=this.viewData[Dt].v,Gt=kt.applyToPointArray(jt.v[0][0],jt.v[0][1],0),_e.moveTo(Gt[0],Gt[1]);var Ht,Wt=jt._length;for(Ht=1;Ht<Wt;Ht+=1)zt=kt.applyToTriplePoints(jt.o[Ht-1],jt.i[Ht],jt.v[Ht]),_e.bezierCurveTo(zt[0],zt[1],zt[2],zt[3],zt[4],zt[5]);zt=kt.applyToTriplePoints(jt.o[Ht-1],jt.i[0],jt.v[0]),_e.bezierCurveTo(zt[0],zt[1],zt[2],zt[3],zt[4],zt[5])}this.element.globalData.renderer.save(!0),_e.clip()}},CVMaskElement.prototype.getMaskProperty=MaskElement.prototype.getMaskProperty,CVMaskElement.prototype.destroy=function(){this.element=null};function CVBaseElement(){}var operationsMap={1:"source-in",2:"source-out",3:"source-in",4:"source-out"};CVBaseElement.prototype={createElements:function(){},initRendererElement:function(){},createContainerElements:function(){if(this.data.tt>=1){this.buffers=[];var _e=this.globalData.canvasContext,Dt=assetLoader.createCanvas(_e.canvas.width,_e.canvas.height);this.buffers.push(Dt);var Vt=assetLoader.createCanvas(_e.canvas.width,_e.canvas.height);this.buffers.push(Vt),this.data.tt>=3&&!document._isProxy&&assetLoader.loadLumaCanvas()}this.canvasContext=this.globalData.canvasContext,this.transformCanvas=this.globalData.transformCanvas,this.renderableEffectsManager=new CVEffects(this),this.searchEffectTransforms()},createContent:function(){},setBlendMode:function(){var _e=this.globalData;if(_e.blendMode!==this.data.bm){_e.blendMode=this.data.bm;var Dt=getBlendMode(this.data.bm);_e.canvasContext.globalCompositeOperation=Dt}},createRenderableComponents:function(){this.maskManager=new CVMaskElement(this.data,this),this.transformEffects=this.renderableEffectsManager.getEffects(effectTypes.TRANSFORM_EFFECT)},hideElement:function(){!this.hidden&&(!this.isInRange||this.isTransparent)&&(this.hidden=!0)},showElement:function(){this.isInRange&&!this.isTransparent&&(this.hidden=!1,this._isFirstFrame=!0,this.maskManager._isFirstFrame=!0)},clearCanvas:function(_e){_e.clearRect(this.transformCanvas.tx,this.transformCanvas.ty,this.transformCanvas.w*this.transformCanvas.sx,this.transformCanvas.h*this.transformCanvas.sy)},prepareLayer:function(){if(this.data.tt>=1){var _e=this.buffers[0],Dt=_e.getContext("2d");this.clearCanvas(Dt),Dt.drawImage(this.canvasContext.canvas,0,0),this.currentTransform=this.canvasContext.getTransform(),this.canvasContext.setTransform(1,0,0,1,0,0),this.clearCanvas(this.canvasContext),this.canvasContext.setTransform(this.currentTransform)}},exitLayer:function(){if(this.data.tt>=1){var _e=this.buffers[1],Dt=_e.getContext("2d");this.clearCanvas(Dt),Dt.drawImage(this.canvasContext.canvas,0,0),this.canvasContext.setTransform(1,0,0,1,0,0),this.clearCanvas(this.canvasContext),this.canvasContext.setTransform(this.currentTransform);var Vt=this.comp.getElementById("tp"in this.data?this.data.tp:this.data.ind-1);if(Vt.renderFrame(!0),this.canvasContext.setTransform(1,0,0,1,0,0),this.data.tt>=3&&!document._isProxy){var Gt=assetLoader.getLumaCanvas(this.canvasContext.canvas),zt=Gt.getContext("2d");zt.drawImage(this.canvasContext.canvas,0,0),this.clearCanvas(this.canvasContext),this.canvasContext.drawImage(Gt,0,0)}this.canvasContext.globalCompositeOperation=operationsMap[this.data.tt],this.canvasContext.drawImage(_e,0,0),this.canvasContext.globalCompositeOperation="destination-over",this.canvasContext.drawImage(this.buffers[0],0,0),this.canvasContext.setTransform(this.currentTransform),this.canvasContext.globalCompositeOperation="source-over"}},renderFrame:function(_e){if(!(this.hidden||this.data.hd)&&!(this.data.td===1&&!_e)){this.renderTransform(),this.renderRenderable(),this.renderLocalTransform(),this.setBlendMode();var Dt=this.data.ty===0;this.prepareLayer(),this.globalData.renderer.save(Dt),this.globalData.renderer.ctxTransform(this.finalTransform.localMat.props),this.globalData.renderer.ctxOpacity(this.finalTransform.localOpacity),this.renderInnerContent(),this.globalData.renderer.restore(Dt),this.exitLayer(),this.maskManager.hasMasks&&this.globalData.renderer.restore(!0),this._isFirstFrame&&(this._isFirstFrame=!1)}},destroy:function(){this.canvasContext=null,this.data=null,this.globalData=null,this.maskManager.destroy()},mHelper:new Matrix},CVBaseElement.prototype.hide=CVBaseElement.prototype.hideElement,CVBaseElement.prototype.show=CVBaseElement.prototype.showElement;function CVShapeData(kt,_e,Dt,Vt){this.styledShapes=[],this.tr=[0,0,0,0,0,0];var Gt=4;_e.ty==="rc"?Gt=5:_e.ty==="el"?Gt=6:_e.ty==="sr"&&(Gt=7),this.sh=ShapePropertyFactory.getShapeProp(kt,_e,Gt,kt);var zt,jt=Dt.length,Ht;for(zt=0;zt<jt;zt+=1)Dt[zt].closed||(Ht={transforms:Vt.addTransformSequence(Dt[zt].transforms),trNodes:[]},this.styledShapes.push(Ht),Dt[zt].elements.push(Ht))}CVShapeData.prototype.setAsAnimated=SVGShapeData.prototype.setAsAnimated;function CVShapeElement(kt,_e,Dt){this.shapes=[],this.shapesData=kt.shapes,this.stylesList=[],this.itemsData=[],this.prevViewData=[],this.shapeModifiers=[],this.processedElements=[],this.transformsManager=new ShapeTransformManager,this.initElement(kt,_e,Dt)}extendPrototype([BaseElement,TransformElement,CVBaseElement,IShapeElement,HierarchyElement,FrameElement,RenderableElement],CVShapeElement),CVShapeElement.prototype.initElement=RenderableDOMElement.prototype.initElement,CVShapeElement.prototype.transformHelper={opacity:1,_opMdf:!1},CVShapeElement.prototype.dashResetter=[],CVShapeElement.prototype.createContent=function(){this.searchShapes(this.shapesData,this.itemsData,this.prevViewData,!0,[])},CVShapeElement.prototype.createStyleElement=function(kt,_e){var Dt={data:kt,type:kt.ty,preTransforms:this.transformsManager.addTransformSequence(_e),transforms:[],elements:[],closed:kt.hd===!0},Vt={};if(kt.ty==="fl"||kt.ty==="st"?(Vt.c=PropertyFactory.getProp(this,kt.c,1,255,this),Vt.c.k||(Dt.co="rgb("+bmFloor(Vt.c.v[0])+","+bmFloor(Vt.c.v[1])+","+bmFloor(Vt.c.v[2])+")")):(kt.ty==="gf"||kt.ty==="gs")&&(Vt.s=PropertyFactory.getProp(this,kt.s,1,null,this),Vt.e=PropertyFactory.getProp(this,kt.e,1,null,this),Vt.h=PropertyFactory.getProp(this,kt.h||{k:0},0,.01,this),Vt.a=PropertyFactory.getProp(this,kt.a||{k:0},0,degToRads,this),Vt.g=new GradientProperty(this,kt.g,this)),Vt.o=PropertyFactory.getProp(this,kt.o,0,.01,this),kt.ty==="st"||kt.ty==="gs"){if(Dt.lc=lineCapEnum[kt.lc||2],Dt.lj=lineJoinEnum[kt.lj||2],kt.lj==1&&(Dt.ml=kt.ml),Vt.w=PropertyFactory.getProp(this,kt.w,0,null,this),Vt.w.k||(Dt.wi=Vt.w.v),kt.d){var Gt=new DashProperty(this,kt.d,"canvas",this);Vt.d=Gt,Vt.d.k||(Dt.da=Vt.d.dashArray,Dt.do=Vt.d.dashoffset[0])}}else Dt.r=kt.r===2?"evenodd":"nonzero";return this.stylesList.push(Dt),Vt.style=Dt,Vt},CVShapeElement.prototype.createGroupElement=function(){var kt={it:[],prevViewData:[]};return kt},CVShapeElement.prototype.createTransformElement=function(kt){var _e={transform:{opacity:1,_opMdf:!1,key:this.transformsManager.getNewKey(),op:PropertyFactory.getProp(this,kt.o,0,.01,this),mProps:TransformPropertyFactory.getTransformProperty(this,kt,this)}};return _e},CVShapeElement.prototype.createShapeElement=function(kt){var _e=new CVShapeData(this,kt,this.stylesList,this.transformsManager);return this.shapes.push(_e),this.addShapeToModifiers(_e),_e},CVShapeElement.prototype.reloadShapes=function(){this._isFirstFrame=!0;var kt,_e=this.itemsData.length;for(kt=0;kt<_e;kt+=1)this.prevViewData[kt]=this.itemsData[kt];for(this.searchShapes(this.shapesData,this.itemsData,this.prevViewData,!0,[]),_e=this.dynamicProperties.length,kt=0;kt<_e;kt+=1)this.dynamicProperties[kt].getValue();this.renderModifiers(),this.transformsManager.processSequences(this._isFirstFrame)},CVShapeElement.prototype.addTransformToStyleList=function(kt){var _e,Dt=this.stylesList.length;for(_e=0;_e<Dt;_e+=1)this.stylesList[_e].closed||this.stylesList[_e].transforms.push(kt)},CVShapeElement.prototype.removeTransformFromStyleList=function(){var kt,_e=this.stylesList.length;for(kt=0;kt<_e;kt+=1)this.stylesList[kt].closed||this.stylesList[kt].transforms.pop()},CVShapeElement.prototype.closeStyles=function(kt){var _e,Dt=kt.length;for(_e=0;_e<Dt;_e+=1)kt[_e].closed=!0},CVShapeElement.prototype.searchShapes=function(kt,_e,Dt,Vt,Gt){var zt,jt=kt.length-1,Ht,Wt,qt=[],Xt=[],Kt,Yt,Zt,Jt=[].concat(Gt);for(zt=jt;zt>=0;zt-=1){if(Kt=this.searchProcessedElement(kt[zt]),Kt?_e[zt]=Dt[Kt-1]:kt[zt]._shouldRender=Vt,kt[zt].ty==="fl"||kt[zt].ty==="st"||kt[zt].ty==="gf"||kt[zt].ty==="gs")Kt?_e[zt].style.closed=!1:_e[zt]=this.createStyleElement(kt[zt],Jt),qt.push(_e[zt].style);else if(kt[zt].ty==="gr"){if(!Kt)_e[zt]=this.createGroupElement(kt[zt]);else for(Wt=_e[zt].it.length,Ht=0;Ht<Wt;Ht+=1)_e[zt].prevViewData[Ht]=_e[zt].it[Ht];this.searchShapes(kt[zt].it,_e[zt].it,_e[zt].prevViewData,Vt,Jt)}else kt[zt].ty==="tr"?(Kt||(Zt=this.createTransformElement(kt[zt]),_e[zt]=Zt),Jt.push(_e[zt]),this.addTransformToStyleList(_e[zt])):kt[zt].ty==="sh"||kt[zt].ty==="rc"||kt[zt].ty==="el"||kt[zt].ty==="sr"?Kt||(_e[zt]=this.createShapeElement(kt[zt])):kt[zt].ty==="tm"||kt[zt].ty==="rd"||kt[zt].ty==="pb"||kt[zt].ty==="zz"||kt[zt].ty==="op"?(Kt?(Yt=_e[zt],Yt.closed=!1):(Yt=ShapeModifiers.getModifier(kt[zt].ty),Yt.init(this,kt[zt]),_e[zt]=Yt,this.shapeModifiers.push(Yt)),Xt.push(Yt)):kt[zt].ty==="rp"&&(Kt?(Yt=_e[zt],Yt.closed=!0):(Yt=ShapeModifiers.getModifier(kt[zt].ty),_e[zt]=Yt,Yt.init(this,kt,zt,_e),this.shapeModifiers.push(Yt),Vt=!1),Xt.push(Yt));this.addProcessedElement(kt[zt],zt+1)}for(this.removeTransformFromStyleList(),this.closeStyles(qt),jt=Xt.length,zt=0;zt<jt;zt+=1)Xt[zt].closed=!0},CVShapeElement.prototype.renderInnerContent=function(){this.transformHelper.opacity=1,this.transformHelper._opMdf=!1,this.renderModifiers(),this.transformsManager.processSequences(this._isFirstFrame),this.renderShape(this.transformHelper,this.shapesData,this.itemsData,!0)},CVShapeElement.prototype.renderShapeTransform=function(kt,_e){(kt._opMdf||_e.op._mdf||this._isFirstFrame)&&(_e.opacity=kt.opacity,_e.opacity*=_e.op.v,_e._opMdf=!0)},CVShapeElement.prototype.drawLayer=function(){var kt,_e=this.stylesList.length,Dt,Vt,Gt,zt,jt,Ht,Wt=this.globalData.renderer,qt=this.globalData.canvasContext,Xt,Kt;for(kt=0;kt<_e;kt+=1)if(Kt=this.stylesList[kt],Xt=Kt.type,!((Xt==="st"||Xt==="gs")&&Kt.wi===0||!Kt.data._shouldRender||Kt.coOp===0||this.globalData.currentGlobalAlpha===0)){for(Wt.save(),jt=Kt.elements,Xt==="st"||Xt==="gs"?(Wt.ctxStrokeStyle(Xt==="st"?Kt.co:Kt.grd),Wt.ctxLineWidth(Kt.wi),Wt.ctxLineCap(Kt.lc),Wt.ctxLineJoin(Kt.lj),Wt.ctxMiterLimit(Kt.ml||0)):Wt.ctxFillStyle(Xt==="fl"?Kt.co:Kt.grd),Wt.ctxOpacity(Kt.coOp),Xt!=="st"&&Xt!=="gs"&&qt.beginPath(),Wt.ctxTransform(Kt.preTransforms.finalTransform.props),Vt=jt.length,Dt=0;Dt<Vt;Dt+=1){for((Xt==="st"||Xt==="gs")&&(qt.beginPath(),Kt.da&&(qt.setLineDash(Kt.da),qt.lineDashOffset=Kt.do)),Ht=jt[Dt].trNodes,zt=Ht.length,Gt=0;Gt<zt;Gt+=1)Ht[Gt].t==="m"?qt.moveTo(Ht[Gt].p[0],Ht[Gt].p[1]):Ht[Gt].t==="c"?qt.bezierCurveTo(Ht[Gt].pts[0],Ht[Gt].pts[1],Ht[Gt].pts[2],Ht[Gt].pts[3],Ht[Gt].pts[4],Ht[Gt].pts[5]):qt.closePath();(Xt==="st"||Xt==="gs")&&(Wt.ctxStroke(),Kt.da&&qt.setLineDash(this.dashResetter))}Xt!=="st"&&Xt!=="gs"&&this.globalData.renderer.ctxFill(Kt.r),Wt.restore()}},CVShapeElement.prototype.renderShape=function(kt,_e,Dt,Vt){var Gt,zt=_e.length-1,jt;for(jt=kt,Gt=zt;Gt>=0;Gt-=1)_e[Gt].ty==="tr"?(jt=Dt[Gt].transform,this.renderShapeTransform(kt,jt)):_e[Gt].ty==="sh"||_e[Gt].ty==="el"||_e[Gt].ty==="rc"||_e[Gt].ty==="sr"?this.renderPath(_e[Gt],Dt[Gt]):_e[Gt].ty==="fl"?this.renderFill(_e[Gt],Dt[Gt],jt):_e[Gt].ty==="st"?this.renderStroke(_e[Gt],Dt[Gt],jt):_e[Gt].ty==="gf"||_e[Gt].ty==="gs"?this.renderGradientFill(_e[Gt],Dt[Gt],jt):_e[Gt].ty==="gr"?this.renderShape(jt,_e[Gt].it,Dt[Gt].it):_e[Gt].ty;Vt&&this.drawLayer()},CVShapeElement.prototype.renderStyledShape=function(kt,_e){if(this._isFirstFrame||_e._mdf||kt.transforms._mdf){var Dt=kt.trNodes,Vt=_e.paths,Gt,zt,jt,Ht=Vt._length;Dt.length=0;var Wt=kt.transforms.finalTransform;for(jt=0;jt<Ht;jt+=1){var qt=Vt.shapes[jt];if(qt&&qt.v){for(zt=qt._length,Gt=1;Gt<zt;Gt+=1)Gt===1&&Dt.push({t:"m",p:Wt.applyToPointArray(qt.v[0][0],qt.v[0][1],0)}),Dt.push({t:"c",pts:Wt.applyToTriplePoints(qt.o[Gt-1],qt.i[Gt],qt.v[Gt])});zt===1&&Dt.push({t:"m",p:Wt.applyToPointArray(qt.v[0][0],qt.v[0][1],0)}),qt.c&&zt&&(Dt.push({t:"c",pts:Wt.applyToTriplePoints(qt.o[Gt-1],qt.i[0],qt.v[0])}),Dt.push({t:"z"}))}}kt.trNodes=Dt}},CVShapeElement.prototype.renderPath=function(kt,_e){if(kt.hd!==!0&&kt._shouldRender){var Dt,Vt=_e.styledShapes.length;for(Dt=0;Dt<Vt;Dt+=1)this.renderStyledShape(_e.styledShapes[Dt],_e.sh)}},CVShapeElement.prototype.renderFill=function(kt,_e,Dt){var Vt=_e.style;(_e.c._mdf||this._isFirstFrame)&&(Vt.co="rgb("+bmFloor(_e.c.v[0])+","+bmFloor(_e.c.v[1])+","+bmFloor(_e.c.v[2])+")"),(_e.o._mdf||Dt._opMdf||this._isFirstFrame)&&(Vt.coOp=_e.o.v*Dt.opacity)},CVShapeElement.prototype.renderGradientFill=function(kt,_e,Dt){var Vt=_e.style,Gt;if(!Vt.grd||_e.g._mdf||_e.s._mdf||_e.e._mdf||kt.t!==1&&(_e.h._mdf||_e.a._mdf)){var zt=this.globalData.canvasContext,jt=_e.s.v,Ht=_e.e.v;if(kt.t===1)Gt=zt.createLinearGradient(jt[0],jt[1],Ht[0],Ht[1]);else{var Wt=Math.sqrt(Math.pow(jt[0]-Ht[0],2)+Math.pow(jt[1]-Ht[1],2)),qt=Math.atan2(Ht[1]-jt[1],Ht[0]-jt[0]),Xt=_e.h.v;Xt>=1?Xt=.99:Xt<=-1&&(Xt=-.99);var Kt=Wt*Xt,Yt=Math.cos(qt+_e.a.v)*Kt+jt[0],Zt=Math.sin(qt+_e.a.v)*Kt+jt[1];Gt=zt.createRadialGradient(Yt,Zt,0,jt[0],jt[1],Wt)}var Jt,nn=kt.g.p,rn=_e.g.c,Qt=1;for(Jt=0;Jt<nn;Jt+=1)_e.g._hasOpacity&&_e.g._collapsable&&(Qt=_e.g.o[Jt*2+1]),Gt.addColorStop(rn[Jt*4]/100,"rgba("+rn[Jt*4+1]+","+rn[Jt*4+2]+","+rn[Jt*4+3]+","+Qt+")");Vt.grd=Gt}Vt.coOp=_e.o.v*Dt.opacity},CVShapeElement.prototype.renderStroke=function(kt,_e,Dt){var Vt=_e.style,Gt=_e.d;Gt&&(Gt._mdf||this._isFirstFrame)&&(Vt.da=Gt.dashArray,Vt.do=Gt.dashoffset[0]),(_e.c._mdf||this._isFirstFrame)&&(Vt.co="rgb("+bmFloor(_e.c.v[0])+","+bmFloor(_e.c.v[1])+","+bmFloor(_e.c.v[2])+")"),(_e.o._mdf||Dt._opMdf||this._isFirstFrame)&&(Vt.coOp=_e.o.v*Dt.opacity),(_e.w._mdf||this._isFirstFrame)&&(Vt.wi=_e.w.v)},CVShapeElement.prototype.destroy=function(){this.shapesData=null,this.globalData=null,this.canvasContext=null,this.stylesList.length=0,this.itemsData.length=0};function CVTextElement(kt,_e,Dt){this.textSpans=[],this.yOffset=0,this.fillColorAnim=!1,this.strokeColorAnim=!1,this.strokeWidthAnim=!1,this.stroke=!1,this.fill=!1,this.justifyOffset=0,this.currentRender=null,this.renderType="canvas",this.values={fill:"rgba(0,0,0,0)",stroke:"rgba(0,0,0,0)",sWidth:0,fValue:""},this.initElement(kt,_e,Dt)}extendPrototype([BaseElement,TransformElement,CVBaseElement,HierarchyElement,FrameElement,RenderableElement,ITextElement],CVTextElement),CVTextElement.prototype.tHelper=createTag("canvas").getContext("2d"),CVTextElement.prototype.buildNewText=function(){var kt=this.textProperty.currentData;this.renderedLetters=createSizedArray(kt.l?kt.l.length:0);var _e=!1;kt.fc?(_e=!0,this.values.fill=this.buildColor(kt.fc)):this.values.fill="rgba(0,0,0,0)",this.fill=_e;var Dt=!1;kt.sc&&(Dt=!0,this.values.stroke=this.buildColor(kt.sc),this.values.sWidth=kt.sw);var Vt=this.globalData.fontManager.getFontByName(kt.f),Gt,zt,jt=kt.l,Ht=this.mHelper;this.stroke=Dt,this.values.fValue=kt.finalSize+"px "+this.globalData.fontManager.getFontByName(kt.f).fFamily,zt=kt.finalText.length;var Wt,qt,Xt,Kt,Yt,Zt,Jt,nn,rn,Qt,en=this.data.singleShape,tn=kt.tr*.001*kt.finalSize,sn=0,cn=0,un=!0,hn=0;for(Gt=0;Gt<zt;Gt+=1){Wt=this.globalData.fontManager.getCharData(kt.finalText[Gt],Vt.fStyle,this.globalData.fontManager.getFontByName(kt.f).fFamily),qt=Wt&&Wt.data||{},Ht.reset(),en&&jt[Gt].n&&(sn=-tn,cn+=kt.yOffset,cn+=un?1:0,un=!1),Yt=qt.shapes?qt.shapes[0].it:[],Jt=Yt.length,Ht.scale(kt.finalSize/100,kt.finalSize/100),en&&this.applyTextPropertiesToMatrix(kt,Ht,jt[Gt].line,sn,cn),rn=createSizedArray(Jt-1);var dn=0;for(Zt=0;Zt<Jt;Zt+=1)if(Yt[Zt].ty==="sh"){for(Kt=Yt[Zt].ks.k.i.length,nn=Yt[Zt].ks.k,Qt=[],Xt=1;Xt<Kt;Xt+=1)Xt===1&&Qt.push(Ht.applyToX(nn.v[0][0],nn.v[0][1],0),Ht.applyToY(nn.v[0][0],nn.v[0][1],0)),Qt.push(Ht.applyToX(nn.o[Xt-1][0],nn.o[Xt-1][1],0),Ht.applyToY(nn.o[Xt-1][0],nn.o[Xt-1][1],0),Ht.applyToX(nn.i[Xt][0],nn.i[Xt][1],0),Ht.applyToY(nn.i[Xt][0],nn.i[Xt][1],0),Ht.applyToX(nn.v[Xt][0],nn.v[Xt][1],0),Ht.applyToY(nn.v[Xt][0],nn.v[Xt][1],0));Qt.push(Ht.applyToX(nn.o[Xt-1][0],nn.o[Xt-1][1],0),Ht.applyToY(nn.o[Xt-1][0],nn.o[Xt-1][1],0),Ht.applyToX(nn.i[0][0],nn.i[0][1],0),Ht.applyToY(nn.i[0][0],nn.i[0][1],0),Ht.applyToX(nn.v[0][0],nn.v[0][1],0),Ht.applyToY(nn.v[0][0],nn.v[0][1],0)),rn[dn]=Qt,dn+=1}en&&(sn+=jt[Gt].l,sn+=tn),this.textSpans[hn]?this.textSpans[hn].elem=rn:this.textSpans[hn]={elem:rn},hn+=1}},CVTextElement.prototype.renderInnerContent=function(){this.validateText();var kt=this.canvasContext;kt.font=this.values.fValue,this.globalData.renderer.ctxLineCap("butt"),this.globalData.renderer.ctxLineJoin("miter"),this.globalData.renderer.ctxMiterLimit(4),this.data.singleShape||this.textAnimator.getMeasures(this.textProperty.currentData,this.lettersChangedFlag);var _e,Dt,Vt,Gt,zt,jt,Ht=this.textAnimator.renderedLetters,Wt=this.textProperty.currentData.l;Dt=Wt.length;var qt,Xt=null,Kt=null,Yt=null,Zt,Jt,nn=this.globalData.renderer;for(_e=0;_e<Dt;_e+=1)if(!Wt[_e].n){if(qt=Ht[_e],qt&&(nn.save(),nn.ctxTransform(qt.p),nn.ctxOpacity(qt.o)),this.fill){for(qt&&qt.fc?Xt!==qt.fc&&(nn.ctxFillStyle(qt.fc),Xt=qt.fc):Xt!==this.values.fill&&(Xt=this.values.fill,nn.ctxFillStyle(this.values.fill)),Zt=this.textSpans[_e].elem,Gt=Zt.length,this.globalData.canvasContext.beginPath(),Vt=0;Vt<Gt;Vt+=1)for(Jt=Zt[Vt],jt=Jt.length,this.globalData.canvasContext.moveTo(Jt[0],Jt[1]),zt=2;zt<jt;zt+=6)this.globalData.canvasContext.bezierCurveTo(Jt[zt],Jt[zt+1],Jt[zt+2],Jt[zt+3],Jt[zt+4],Jt[zt+5]);this.globalData.canvasContext.closePath(),nn.ctxFill()}if(this.stroke){for(qt&&qt.sw?Yt!==qt.sw&&(Yt=qt.sw,nn.ctxLineWidth(qt.sw)):Yt!==this.values.sWidth&&(Yt=this.values.sWidth,nn.ctxLineWidth(this.values.sWidth)),qt&&qt.sc?Kt!==qt.sc&&(Kt=qt.sc,nn.ctxStrokeStyle(qt.sc)):Kt!==this.values.stroke&&(Kt=this.values.stroke,nn.ctxStrokeStyle(this.values.stroke)),Zt=this.textSpans[_e].elem,Gt=Zt.length,this.globalData.canvasContext.beginPath(),Vt=0;Vt<Gt;Vt+=1)for(Jt=Zt[Vt],jt=Jt.length,this.globalData.canvasContext.moveTo(Jt[0],Jt[1]),zt=2;zt<jt;zt+=6)this.globalData.canvasContext.bezierCurveTo(Jt[zt],Jt[zt+1],Jt[zt+2],Jt[zt+3],Jt[zt+4],Jt[zt+5]);this.globalData.canvasContext.closePath(),nn.ctxStroke()}qt&&this.globalData.renderer.restore()}};function CVImageElement(kt,_e,Dt){this.assetData=_e.getAssetData(kt.refId),this.img=_e.imageLoader.getAsset(this.assetData),this.initElement(kt,_e,Dt)}extendPrototype([BaseElement,TransformElement,CVBaseElement,HierarchyElement,FrameElement,RenderableElement],CVImageElement),CVImageElement.prototype.initElement=SVGShapeElement.prototype.initElement,CVImageElement.prototype.prepareFrame=IImageElement.prototype.prepareFrame,CVImageElement.prototype.createContent=function(){if(this.img.width&&(this.assetData.w!==this.img.width||this.assetData.h!==this.img.height)){var kt=createTag("canvas");kt.width=this.assetData.w,kt.height=this.assetData.h;var _e=kt.getContext("2d"),Dt=this.img.width,Vt=this.img.height,Gt=Dt/Vt,zt=this.assetData.w/this.assetData.h,jt,Ht,Wt=this.assetData.pr||this.globalData.renderConfig.imagePreserveAspectRatio;Gt>zt&&Wt==="xMidYMid slice"||Gt<zt&&Wt!=="xMidYMid slice"?(Ht=Vt,jt=Ht*zt):(jt=Dt,Ht=jt/zt),_e.drawImage(this.img,(Dt-jt)/2,(Vt-Ht)/2,jt,Ht,0,0,this.assetData.w,this.assetData.h),this.img=kt}},CVImageElement.prototype.renderInnerContent=function(){this.canvasContext.drawImage(this.img,0,0)},CVImageElement.prototype.destroy=function(){this.img=null};function CVSolidElement(kt,_e,Dt){this.initElement(kt,_e,Dt)}extendPrototype([BaseElement,TransformElement,CVBaseElement,HierarchyElement,FrameElement,RenderableElement],CVSolidElement),CVSolidElement.prototype.initElement=SVGShapeElement.prototype.initElement,CVSolidElement.prototype.prepareFrame=IImageElement.prototype.prepareFrame,CVSolidElement.prototype.renderInnerContent=function(){this.globalData.renderer.ctxFillStyle(this.data.sc),this.globalData.renderer.ctxFillRect(0,0,this.data.sw,this.data.sh)};function CanvasRendererBase(){}extendPrototype([BaseRenderer],CanvasRendererBase),CanvasRendererBase.prototype.createShape=function(kt){return new CVShapeElement(kt,this.globalData,this)},CanvasRendererBase.prototype.createText=function(kt){return new CVTextElement(kt,this.globalData,this)},CanvasRendererBase.prototype.createImage=function(kt){return new CVImageElement(kt,this.globalData,this)},CanvasRendererBase.prototype.createSolid=function(kt){return new CVSolidElement(kt,this.globalData,this)},CanvasRendererBase.prototype.createNull=SVGRenderer.prototype.createNull,CanvasRendererBase.prototype.ctxTransform=function(kt){kt[0]===1&&kt[1]===0&&kt[4]===0&&kt[5]===1&&kt[12]===0&&kt[13]===0||this.canvasContext.transform(kt[0],kt[1],kt[4],kt[5],kt[12],kt[13])},CanvasRendererBase.prototype.ctxOpacity=function(kt){this.canvasContext.globalAlpha*=kt<0?0:kt},CanvasRendererBase.prototype.ctxFillStyle=function(kt){this.canvasContext.fillStyle=kt},CanvasRendererBase.prototype.ctxStrokeStyle=function(kt){this.canvasContext.strokeStyle=kt},CanvasRendererBase.prototype.ctxLineWidth=function(kt){this.canvasContext.lineWidth=kt},CanvasRendererBase.prototype.ctxLineCap=function(kt){this.canvasContext.lineCap=kt},CanvasRendererBase.prototype.ctxLineJoin=function(kt){this.canvasContext.lineJoin=kt},CanvasRendererBase.prototype.ctxMiterLimit=function(kt){this.canvasContext.miterLimit=kt},CanvasRendererBase.prototype.ctxFill=function(kt){this.canvasContext.fill(kt)},CanvasRendererBase.prototype.ctxFillRect=function(kt,_e,Dt,Vt){this.canvasContext.fillRect(kt,_e,Dt,Vt)},CanvasRendererBase.prototype.ctxStroke=function(){this.canvasContext.stroke()},CanvasRendererBase.prototype.reset=function(){if(!this.renderConfig.clearCanvas){this.canvasContext.restore();return}this.contextData.reset()},CanvasRendererBase.prototype.save=function(){this.canvasContext.save()},CanvasRendererBase.prototype.restore=function(kt){if(!this.renderConfig.clearCanvas){this.canvasContext.restore();return}kt&&(this.globalData.blendMode="source-over"),this.contextData.restore(kt)},CanvasRendererBase.prototype.configAnimation=function(kt){if(this.animationItem.wrapper){this.animationItem.container=createTag("canvas");var _e=this.animationItem.container.style;_e.width="100%",_e.height="100%";var Dt="0px 0px 0px";_e.transformOrigin=Dt,_e.mozTransformOrigin=Dt,_e.webkitTransformOrigin=Dt,_e["-webkit-transform"]=Dt,_e.contentVisibility=this.renderConfig.contentVisibility,this.animationItem.wrapper.appendChild(this.animationItem.container),this.canvasContext=this.animationItem.container.getContext("2d"),this.renderConfig.className&&this.animationItem.container.setAttribute("class",this.renderConfig.className),this.renderConfig.id&&this.animationItem.container.setAttribute("id",this.renderConfig.id)}else this.canvasContext=this.renderConfig.context;this.contextData.setContext(this.canvasContext),this.data=kt,this.layers=kt.layers,this.transformCanvas={w:kt.w,h:kt.h,sx:0,sy:0,tx:0,ty:0},this.setupGlobalData(kt,document.body),this.globalData.canvasContext=this.canvasContext,this.globalData.renderer=this,this.globalData.isDashed=!1,this.globalData.progressiveLoad=this.renderConfig.progressiveLoad,this.globalData.transformCanvas=this.transformCanvas,this.elements=createSizedArray(kt.layers.length),this.updateContainerSize()},CanvasRendererBase.prototype.updateContainerSize=function(kt,_e){this.reset();var Dt,Vt;kt?(Dt=kt,Vt=_e,this.canvasContext.canvas.width=Dt,this.canvasContext.canvas.height=Vt):(this.animationItem.wrapper&&this.animationItem.container?(Dt=this.animationItem.wrapper.offsetWidth,Vt=this.animationItem.wrapper.offsetHeight):(Dt=this.canvasContext.canvas.width,Vt=this.canvasContext.canvas.height),this.canvasContext.canvas.width=Dt*this.renderConfig.dpr,this.canvasContext.canvas.height=Vt*this.renderConfig.dpr);var Gt,zt;if(this.renderConfig.preserveAspectRatio.indexOf("meet")!==-1||this.renderConfig.preserveAspectRatio.indexOf("slice")!==-1){var jt=this.renderConfig.preserveAspectRatio.split(" "),Ht=jt[1]||"meet",Wt=jt[0]||"xMidYMid",qt=Wt.substr(0,4),Xt=Wt.substr(4);Gt=Dt/Vt,zt=this.transformCanvas.w/this.transformCanvas.h,zt>Gt&&Ht==="meet"||zt<Gt&&Ht==="slice"?(this.transformCanvas.sx=Dt/(this.transformCanvas.w/this.renderConfig.dpr),this.transformCanvas.sy=Dt/(this.transformCanvas.w/this.renderConfig.dpr)):(this.transformCanvas.sx=Vt/(this.transformCanvas.h/this.renderConfig.dpr),this.transformCanvas.sy=Vt/(this.transformCanvas.h/this.renderConfig.dpr)),qt==="xMid"&&(zt<Gt&&Ht==="meet"||zt>Gt&&Ht==="slice")?this.transformCanvas.tx=(Dt-this.transformCanvas.w*(Vt/this.transformCanvas.h))/2*this.renderConfig.dpr:qt==="xMax"&&(zt<Gt&&Ht==="meet"||zt>Gt&&Ht==="slice")?this.transformCanvas.tx=(Dt-this.transformCanvas.w*(Vt/this.transformCanvas.h))*this.renderConfig.dpr:this.transformCanvas.tx=0,Xt==="YMid"&&(zt>Gt&&Ht==="meet"||zt<Gt&&Ht==="slice")?this.transformCanvas.ty=(Vt-this.transformCanvas.h*(Dt/this.transformCanvas.w))/2*this.renderConfig.dpr:Xt==="YMax"&&(zt>Gt&&Ht==="meet"||zt<Gt&&Ht==="slice")?this.transformCanvas.ty=(Vt-this.transformCanvas.h*(Dt/this.transformCanvas.w))*this.renderConfig.dpr:this.transformCanvas.ty=0}else this.renderConfig.preserveAspectRatio==="none"?(this.transformCanvas.sx=Dt/(this.transformCanvas.w/this.renderConfig.dpr),this.transformCanvas.sy=Vt/(this.transformCanvas.h/this.renderConfig.dpr),this.transformCanvas.tx=0,this.transformCanvas.ty=0):(this.transformCanvas.sx=this.renderConfig.dpr,this.transformCanvas.sy=this.renderConfig.dpr,this.transformCanvas.tx=0,this.transformCanvas.ty=0);this.transformCanvas.props=[this.transformCanvas.sx,0,0,0,0,this.transformCanvas.sy,0,0,0,0,1,0,this.transformCanvas.tx,this.transformCanvas.ty,0,1],this.ctxTransform(this.transformCanvas.props),this.canvasContext.beginPath(),this.canvasContext.rect(0,0,this.transformCanvas.w,this.transformCanvas.h),this.canvasContext.closePath(),this.canvasContext.clip(),this.renderFrame(this.renderedFrame,!0)},CanvasRendererBase.prototype.destroy=function(){this.renderConfig.clearCanvas&&this.animationItem.wrapper&&(this.animationItem.wrapper.innerText="");var kt,_e=this.layers?this.layers.length:0;for(kt=_e-1;kt>=0;kt-=1)this.elements[kt]&&this.elements[kt].destroy&&this.elements[kt].destroy();this.elements.length=0,this.globalData.canvasContext=null,this.animationItem.container=null,this.destroyed=!0},CanvasRendererBase.prototype.renderFrame=function(kt,_e){if(!(this.renderedFrame===kt&&this.renderConfig.clearCanvas===!0&&!_e||this.destroyed||kt===-1)){this.renderedFrame=kt,this.globalData.frameNum=kt-this.animationItem._isFirstFrame,this.globalData.frameId+=1,this.globalData._mdf=!this.renderConfig.clearCanvas||_e,this.globalData.projectInterface.currentFrame=kt;var Dt,Vt=this.layers.length;for(this.completeLayers||this.checkLayers(kt),Dt=Vt-1;Dt>=0;Dt-=1)(this.completeLayers||this.elements[Dt])&&this.elements[Dt].prepareFrame(kt-this.layers[Dt].st);if(this.globalData._mdf){for(this.renderConfig.clearCanvas===!0?this.canvasContext.clearRect(0,0,this.transformCanvas.w,this.transformCanvas.h):this.save(),Dt=Vt-1;Dt>=0;Dt-=1)(this.completeLayers||this.elements[Dt])&&this.elements[Dt].renderFrame();this.renderConfig.clearCanvas!==!0&&this.restore()}}},CanvasRendererBase.prototype.buildItem=function(kt){var _e=this.elements;if(!(_e[kt]||this.layers[kt].ty===99)){var Dt=this.createItem(this.layers[kt],this,this.globalData);_e[kt]=Dt,Dt.initExpressions()}},CanvasRendererBase.prototype.checkPendingElements=function(){for(;this.pendingElements.length;){var kt=this.pendingElements.pop();kt.checkParenting()}},CanvasRendererBase.prototype.hide=function(){this.animationItem.container.style.display="none"},CanvasRendererBase.prototype.show=function(){this.animationItem.container.style.display="block"};function CanvasContext(){this.opacity=-1,this.transform=createTypedArray("float32",16),this.fillStyle="",this.strokeStyle="",this.lineWidth="",this.lineCap="",this.lineJoin="",this.miterLimit="",this.id=Math.random()}function CVContextData(){this.stack=[],this.cArrPos=0,this.cTr=new Matrix;var kt,_e=15;for(kt=0;kt<_e;kt+=1){var Dt=new CanvasContext;this.stack[kt]=Dt}this._length=_e,this.nativeContext=null,this.transformMat=new Matrix,this.currentOpacity=1,this.currentFillStyle="",this.appliedFillStyle="",this.currentStrokeStyle="",this.appliedStrokeStyle="",this.currentLineWidth="",this.appliedLineWidth="",this.currentLineCap="",this.appliedLineCap="",this.currentLineJoin="",this.appliedLineJoin="",this.appliedMiterLimit="",this.currentMiterLimit=""}CVContextData.prototype.duplicate=function(){var kt=this._length*2,_e=0;for(_e=this._length;_e<kt;_e+=1)this.stack[_e]=new CanvasContext;this._length=kt},CVContextData.prototype.reset=function(){this.cArrPos=0,this.cTr.reset(),this.stack[this.cArrPos].opacity=1},CVContextData.prototype.restore=function(kt){this.cArrPos-=1;var _e=this.stack[this.cArrPos],Dt=_e.transform,Vt,Gt=this.cTr.props;for(Vt=0;Vt<16;Vt+=1)Gt[Vt]=Dt[Vt];if(kt){this.nativeContext.restore();var zt=this.stack[this.cArrPos+1];this.appliedFillStyle=zt.fillStyle,this.appliedStrokeStyle=zt.strokeStyle,this.appliedLineWidth=zt.lineWidth,this.appliedLineCap=zt.lineCap,this.appliedLineJoin=zt.lineJoin,this.appliedMiterLimit=zt.miterLimit}this.nativeContext.setTransform(Dt[0],Dt[1],Dt[4],Dt[5],Dt[12],Dt[13]),(kt||_e.opacity!==-1&&this.currentOpacity!==_e.opacity)&&(this.nativeContext.globalAlpha=_e.opacity,this.currentOpacity=_e.opacity),this.currentFillStyle=_e.fillStyle,this.currentStrokeStyle=_e.strokeStyle,this.currentLineWidth=_e.lineWidth,this.currentLineCap=_e.lineCap,this.currentLineJoin=_e.lineJoin,this.currentMiterLimit=_e.miterLimit},CVContextData.prototype.save=function(kt){kt&&this.nativeContext.save();var _e=this.cTr.props;this._length<=this.cArrPos&&this.duplicate();var Dt=this.stack[this.cArrPos],Vt;for(Vt=0;Vt<16;Vt+=1)Dt.transform[Vt]=_e[Vt];this.cArrPos+=1;var Gt=this.stack[this.cArrPos];Gt.opacity=Dt.opacity,Gt.fillStyle=Dt.fillStyle,Gt.strokeStyle=Dt.strokeStyle,Gt.lineWidth=Dt.lineWidth,Gt.lineCap=Dt.lineCap,Gt.lineJoin=Dt.lineJoin,Gt.miterLimit=Dt.miterLimit},CVContextData.prototype.setOpacity=function(kt){this.stack[this.cArrPos].opacity=kt},CVContextData.prototype.setContext=function(kt){this.nativeContext=kt},CVContextData.prototype.fillStyle=function(kt){this.stack[this.cArrPos].fillStyle!==kt&&(this.currentFillStyle=kt,this.stack[this.cArrPos].fillStyle=kt)},CVContextData.prototype.strokeStyle=function(kt){this.stack[this.cArrPos].strokeStyle!==kt&&(this.currentStrokeStyle=kt,this.stack[this.cArrPos].strokeStyle=kt)},CVContextData.prototype.lineWidth=function(kt){this.stack[this.cArrPos].lineWidth!==kt&&(this.currentLineWidth=kt,this.stack[this.cArrPos].lineWidth=kt)},CVContextData.prototype.lineCap=function(kt){this.stack[this.cArrPos].lineCap!==kt&&(this.currentLineCap=kt,this.stack[this.cArrPos].lineCap=kt)},CVContextData.prototype.lineJoin=function(kt){this.stack[this.cArrPos].lineJoin!==kt&&(this.currentLineJoin=kt,this.stack[this.cArrPos].lineJoin=kt)},CVContextData.prototype.miterLimit=function(kt){this.stack[this.cArrPos].miterLimit!==kt&&(this.currentMiterLimit=kt,this.stack[this.cArrPos].miterLimit=kt)},CVContextData.prototype.transform=function(kt){this.transformMat.cloneFromProps(kt);var _e=this.cTr;this.transformMat.multiply(_e),_e.cloneFromProps(this.transformMat.props);var Dt=_e.props;this.nativeContext.setTransform(Dt[0],Dt[1],Dt[4],Dt[5],Dt[12],Dt[13])},CVContextData.prototype.opacity=function(kt){var _e=this.stack[this.cArrPos].opacity;_e*=kt<0?0:kt,this.stack[this.cArrPos].opacity!==_e&&(this.currentOpacity!==kt&&(this.nativeContext.globalAlpha=kt,this.currentOpacity=kt),this.stack[this.cArrPos].opacity=_e)},CVContextData.prototype.fill=function(kt){this.appliedFillStyle!==this.currentFillStyle&&(this.appliedFillStyle=this.currentFillStyle,this.nativeContext.fillStyle=this.appliedFillStyle),this.nativeContext.fill(kt)},CVContextData.prototype.fillRect=function(kt,_e,Dt,Vt){this.appliedFillStyle!==this.currentFillStyle&&(this.appliedFillStyle=this.currentFillStyle,this.nativeContext.fillStyle=this.appliedFillStyle),this.nativeContext.fillRect(kt,_e,Dt,Vt)},CVContextData.prototype.stroke=function(){this.appliedStrokeStyle!==this.currentStrokeStyle&&(this.appliedStrokeStyle=this.currentStrokeStyle,this.nativeContext.strokeStyle=this.appliedStrokeStyle),this.appliedLineWidth!==this.currentLineWidth&&(this.appliedLineWidth=this.currentLineWidth,this.nativeContext.lineWidth=this.appliedLineWidth),this.appliedLineCap!==this.currentLineCap&&(this.appliedLineCap=this.currentLineCap,this.nativeContext.lineCap=this.appliedLineCap),this.appliedLineJoin!==this.currentLineJoin&&(this.appliedLineJoin=this.currentLineJoin,this.nativeContext.lineJoin=this.appliedLineJoin),this.appliedMiterLimit!==this.currentMiterLimit&&(this.appliedMiterLimit=this.currentMiterLimit,this.nativeContext.miterLimit=this.appliedMiterLimit),this.nativeContext.stroke()};function CVCompElement(kt,_e,Dt){this.completeLayers=!1,this.layers=kt.layers,this.pendingElements=[],this.elements=createSizedArray(this.layers.length),this.initElement(kt,_e,Dt),this.tm=kt.tm?PropertyFactory.getProp(this,kt.tm,0,_e.frameRate,this):{_placeholder:!0}}extendPrototype([CanvasRendererBase,ICompElement,CVBaseElement],CVCompElement),CVCompElement.prototype.renderInnerContent=function(){var kt=this.canvasContext;kt.beginPath(),kt.moveTo(0,0),kt.lineTo(this.data.w,0),kt.lineTo(this.data.w,this.data.h),kt.lineTo(0,this.data.h),kt.lineTo(0,0),kt.clip();var _e,Dt=this.layers.length;for(_e=Dt-1;_e>=0;_e-=1)(this.completeLayers||this.elements[_e])&&this.elements[_e].renderFrame()},CVCompElement.prototype.destroy=function(){var kt,_e=this.layers.length;for(kt=_e-1;kt>=0;kt-=1)this.elements[kt]&&this.elements[kt].destroy();this.layers=null,this.elements=null},CVCompElement.prototype.createComp=function(kt){return new CVCompElement(kt,this.globalData,this)};function CanvasRenderer(kt,_e){this.animationItem=kt,this.renderConfig={clearCanvas:_e&&_e.clearCanvas!==void 0?_e.clearCanvas:!0,context:_e&&_e.context||null,progressiveLoad:_e&&_e.progressiveLoad||!1,preserveAspectRatio:_e&&_e.preserveAspectRatio||"xMidYMid meet",imagePreserveAspectRatio:_e&&_e.imagePreserveAspectRatio||"xMidYMid slice",contentVisibility:_e&&_e.contentVisibility||"visible",className:_e&&_e.className||"",id:_e&&_e.id||"",runExpressions:!_e||_e.runExpressions===void 0||_e.runExpressions},this.renderConfig.dpr=_e&&_e.dpr||1,this.animationItem.wrapper&&(this.renderConfig.dpr=_e&&_e.dpr||window.devicePixelRatio||1),this.renderedFrame=-1,this.globalData={frameNum:-1,_mdf:!1,renderConfig:this.renderConfig,currentGlobalAlpha:-1},this.contextData=new CVContextData,this.elements=[],this.pendingElements=[],this.transformMat=new Matrix,this.completeLayers=!1,this.rendererType="canvas",this.renderConfig.clearCanvas&&(this.ctxTransform=this.contextData.transform.bind(this.contextData),this.ctxOpacity=this.contextData.opacity.bind(this.contextData),this.ctxFillStyle=this.contextData.fillStyle.bind(this.contextData),this.ctxStrokeStyle=this.contextData.strokeStyle.bind(this.contextData),this.ctxLineWidth=this.contextData.lineWidth.bind(this.contextData),this.ctxLineCap=this.contextData.lineCap.bind(this.contextData),this.ctxLineJoin=this.contextData.lineJoin.bind(this.contextData),this.ctxMiterLimit=this.contextData.miterLimit.bind(this.contextData),this.ctxFill=this.contextData.fill.bind(this.contextData),this.ctxFillRect=this.contextData.fillRect.bind(this.contextData),this.ctxStroke=this.contextData.stroke.bind(this.contextData),this.save=this.contextData.save.bind(this.contextData))}extendPrototype([CanvasRendererBase],CanvasRenderer),CanvasRenderer.prototype.createComp=function(kt){return new CVCompElement(kt,this.globalData,this)};function HBaseElement(){}HBaseElement.prototype={checkBlendMode:function(){},initRendererElement:function(){this.baseElement=createTag(this.data.tg||"div"),this.data.hasMask?(this.svgElement=createNS("svg"),this.layerElement=createNS("g"),this.maskedElement=this.layerElement,this.svgElement.appendChild(this.layerElement),this.baseElement.appendChild(this.svgElement)):this.layerElement=this.baseElement,styleDiv(this.baseElement)},createContainerElements:function(){this.renderableEffectsManager=new CVEffects(this),this.transformedElement=this.baseElement,this.maskedElement=this.layerElement,this.data.ln&&this.layerElement.setAttribute("id",this.data.ln),this.data.cl&&this.layerElement.setAttribute("class",this.data.cl),this.data.bm!==0&&this.setBlendMode()},renderElement:function(){var _e=this.transformedElement?this.transformedElement.style:{};if(this.finalTransform._matMdf){var Dt=this.finalTransform.mat.toCSS();_e.transform=Dt,_e.webkitTransform=Dt}this.finalTransform._opMdf&&(_e.opacity=this.finalTransform.mProp.o.v)},renderFrame:function(){this.data.hd||this.hidden||(this.renderTransform(),this.renderRenderable(),this.renderElement(),this.renderInnerContent(),this._isFirstFrame&&(this._isFirstFrame=!1))},destroy:function(){this.layerElement=null,this.transformedElement=null,this.matteElement&&(this.matteElement=null),this.maskManager&&(this.maskManager.destroy(),this.maskManager=null)},createRenderableComponents:function(){this.maskManager=new MaskElement(this.data,this,this.globalData)},addEffects:function(){},setMatte:function(){}},HBaseElement.prototype.getBaseElement=SVGBaseElement.prototype.getBaseElement,HBaseElement.prototype.destroyBaseElement=HBaseElement.prototype.destroy,HBaseElement.prototype.buildElementParenting=BaseRenderer.prototype.buildElementParenting;function HSolidElement(kt,_e,Dt){this.initElement(kt,_e,Dt)}extendPrototype([BaseElement,TransformElement,HBaseElement,HierarchyElement,FrameElement,RenderableDOMElement],HSolidElement),HSolidElement.prototype.createContent=function(){var kt;this.data.hasMask?(kt=createNS("rect"),kt.setAttribute("width",this.data.sw),kt.setAttribute("height",this.data.sh),kt.setAttribute("fill",this.data.sc),this.svgElement.setAttribute("width",this.data.sw),this.svgElement.setAttribute("height",this.data.sh)):(kt=createTag("div"),kt.style.width=this.data.sw+"px",kt.style.height=this.data.sh+"px",kt.style.backgroundColor=this.data.sc),this.layerElement.appendChild(kt)};function HShapeElement(kt,_e,Dt){this.shapes=[],this.shapesData=kt.shapes,this.stylesList=[],this.shapeModifiers=[],this.itemsData=[],this.processedElements=[],this.animatedContents=[],this.shapesContainer=createNS("g"),this.initElement(kt,_e,Dt),this.prevViewData=[],this.currentBBox={x:999999,y:-999999,h:0,w:0}}extendPrototype([BaseElement,TransformElement,HSolidElement,SVGShapeElement,HBaseElement,HierarchyElement,FrameElement,RenderableElement],HShapeElement),HShapeElement.prototype._renderShapeFrame=HShapeElement.prototype.renderInnerContent,HShapeElement.prototype.createContent=function(){var kt;if(this.baseElement.style.fontSize=0,this.data.hasMask)this.layerElement.appendChild(this.shapesContainer),kt=this.svgElement;else{kt=createNS("svg");var _e=this.comp.data?this.comp.data:this.globalData.compSize;kt.setAttribute("width",_e.w),kt.setAttribute("height",_e.h),kt.appendChild(this.shapesContainer),this.layerElement.appendChild(kt)}this.searchShapes(this.shapesData,this.itemsData,this.prevViewData,this.shapesContainer,0,[],!0),this.filterUniqueShapes(),this.shapeCont=kt},HShapeElement.prototype.getTransformedPoint=function(kt,_e){var Dt,Vt=kt.length;for(Dt=0;Dt<Vt;Dt+=1)_e=kt[Dt].mProps.v.applyToPointArray(_e[0],_e[1],0);return _e},HShapeElement.prototype.calculateShapeBoundingBox=function(kt,_e){var Dt=kt.sh.v,Vt=kt.transformers,Gt,zt=Dt._length,jt,Ht,Wt,qt;if(!(zt<=1)){for(Gt=0;Gt<zt-1;Gt+=1)jt=this.getTransformedPoint(Vt,Dt.v[Gt]),Ht=this.getTransformedPoint(Vt,Dt.o[Gt]),Wt=this.getTransformedPoint(Vt,Dt.i[Gt+1]),qt=this.getTransformedPoint(Vt,Dt.v[Gt+1]),this.checkBounds(jt,Ht,Wt,qt,_e);Dt.c&&(jt=this.getTransformedPoint(Vt,Dt.v[Gt]),Ht=this.getTransformedPoint(Vt,Dt.o[Gt]),Wt=this.getTransformedPoint(Vt,Dt.i[0]),qt=this.getTransformedPoint(Vt,Dt.v[0]),this.checkBounds(jt,Ht,Wt,qt,_e))}},HShapeElement.prototype.checkBounds=function(kt,_e,Dt,Vt,Gt){this.getBoundsOfCurve(kt,_e,Dt,Vt);var zt=this.shapeBoundingBox;Gt.x=bmMin(zt.left,Gt.x),Gt.xMax=bmMax(zt.right,Gt.xMax),Gt.y=bmMin(zt.top,Gt.y),Gt.yMax=bmMax(zt.bottom,Gt.yMax)},HShapeElement.prototype.shapeBoundingBox={left:0,right:0,top:0,bottom:0},HShapeElement.prototype.tempBoundingBox={x:0,xMax:0,y:0,yMax:0,width:0,height:0},HShapeElement.prototype.getBoundsOfCurve=function(kt,_e,Dt,Vt){for(var Gt=[[kt[0],Vt[0]],[kt[1],Vt[1]]],zt,jt,Ht,Wt,qt,Xt,Kt,Yt=0;Yt<2;++Yt)jt=6*kt[Yt]-12*_e[Yt]+6*Dt[Yt],zt=-3*kt[Yt]+9*_e[Yt]-9*Dt[Yt]+3*Vt[Yt],Ht=3*_e[Yt]-3*kt[Yt],jt|=0,zt|=0,Ht|=0,zt===0&&jt===0||(zt===0?(Wt=-Ht/jt,Wt>0&&Wt<1&&Gt[Yt].push(this.calculateF(Wt,kt,_e,Dt,Vt,Yt))):(qt=jt*jt-4*Ht*zt,qt>=0&&(Xt=(-jt+bmSqrt(qt))/(2*zt),Xt>0&&Xt<1&&Gt[Yt].push(this.calculateF(Xt,kt,_e,Dt,Vt,Yt)),Kt=(-jt-bmSqrt(qt))/(2*zt),Kt>0&&Kt<1&&Gt[Yt].push(this.calculateF(Kt,kt,_e,Dt,Vt,Yt)))));this.shapeBoundingBox.left=bmMin.apply(null,Gt[0]),this.shapeBoundingBox.top=bmMin.apply(null,Gt[1]),this.shapeBoundingBox.right=bmMax.apply(null,Gt[0]),this.shapeBoundingBox.bottom=bmMax.apply(null,Gt[1])},HShapeElement.prototype.calculateF=function(kt,_e,Dt,Vt,Gt,zt){return bmPow(1-kt,3)*_e[zt]+3*bmPow(1-kt,2)*kt*Dt[zt]+3*(1-kt)*bmPow(kt,2)*Vt[zt]+bmPow(kt,3)*Gt[zt]},HShapeElement.prototype.calculateBoundingBox=function(kt,_e){var Dt,Vt=kt.length;for(Dt=0;Dt<Vt;Dt+=1)kt[Dt]&&kt[Dt].sh?this.calculateShapeBoundingBox(kt[Dt],_e):kt[Dt]&&kt[Dt].it?this.calculateBoundingBox(kt[Dt].it,_e):kt[Dt]&&kt[Dt].style&&kt[Dt].w&&this.expandStrokeBoundingBox(kt[Dt].w,_e)},HShapeElement.prototype.expandStrokeBoundingBox=function(kt,_e){var Dt=0;if(kt.keyframes){for(var Vt=0;Vt<kt.keyframes.length;Vt+=1){var Gt=kt.keyframes[Vt].s;Gt>Dt&&(Dt=Gt)}Dt*=kt.mult}else Dt=kt.v*kt.mult;_e.x-=Dt,_e.xMax+=Dt,_e.y-=Dt,_e.yMax+=Dt},HShapeElement.prototype.currentBoxContains=function(kt){return this.currentBBox.x<=kt.x&&this.currentBBox.y<=kt.y&&this.currentBBox.width+this.currentBBox.x>=kt.x+kt.width&&this.currentBBox.height+this.currentBBox.y>=kt.y+kt.height},HShapeElement.prototype.renderInnerContent=function(){if(this._renderShapeFrame(),!this.hidden&&(this._isFirstFrame||this._mdf)){var kt=this.tempBoundingBox,_e=999999;if(kt.x=_e,kt.xMax=-_e,kt.y=_e,kt.yMax=-_e,this.calculateBoundingBox(this.itemsData,kt),kt.width=kt.xMax<kt.x?0:kt.xMax-kt.x,kt.height=kt.yMax<kt.y?0:kt.yMax-kt.y,this.currentBoxContains(kt))return;var Dt=!1;if(this.currentBBox.w!==kt.width&&(this.currentBBox.w=kt.width,this.shapeCont.setAttribute("width",kt.width),Dt=!0),this.currentBBox.h!==kt.height&&(this.currentBBox.h=kt.height,this.shapeCont.setAttribute("height",kt.height),Dt=!0),Dt||this.currentBBox.x!==kt.x||this.currentBBox.y!==kt.y){this.currentBBox.w=kt.width,this.currentBBox.h=kt.height,this.currentBBox.x=kt.x,this.currentBBox.y=kt.y,this.shapeCont.setAttribute("viewBox",this.currentBBox.x+" "+this.currentBBox.y+" "+this.currentBBox.w+" "+this.currentBBox.h);var Vt=this.shapeCont.style,Gt="translate("+this.currentBBox.x+"px,"+this.currentBBox.y+"px)";Vt.transform=Gt,Vt.webkitTransform=Gt}}};function HTextElement(kt,_e,Dt){this.textSpans=[],this.textPaths=[],this.currentBBox={x:999999,y:-999999,h:0,w:0},this.renderType="svg",this.isMasked=!1,this.initElement(kt,_e,Dt)}extendPrototype([BaseElement,TransformElement,HBaseElement,HierarchyElement,FrameElement,RenderableDOMElement,ITextElement],HTextElement),HTextElement.prototype.createContent=function(){if(this.isMasked=this.checkMasks(),this.isMasked){this.renderType="svg",this.compW=this.comp.data.w,this.compH=this.comp.data.h,this.svgElement.setAttribute("width",this.compW),this.svgElement.setAttribute("height",this.compH);var kt=createNS("g");this.maskedElement.appendChild(kt),this.innerElem=kt}else this.renderType="html",this.innerElem=this.layerElement;this.checkParenting()},HTextElement.prototype.buildNewText=function(){var kt=this.textProperty.currentData;this.renderedLetters=createSizedArray(kt.l?kt.l.length:0);var _e=this.innerElem.style,Dt=kt.fc?this.buildColor(kt.fc):"rgba(0,0,0,0)";_e.fill=Dt,_e.color=Dt,kt.sc&&(_e.stroke=this.buildColor(kt.sc),_e.strokeWidth=kt.sw+"px");var Vt=this.globalData.fontManager.getFontByName(kt.f);if(!this.globalData.fontManager.chars)if(_e.fontSize=kt.finalSize+"px",_e.lineHeight=kt.finalSize+"px",Vt.fClass)this.innerElem.className=Vt.fClass;else{_e.fontFamily=Vt.fFamily;var Gt=kt.fWeight,zt=kt.fStyle;_e.fontStyle=zt,_e.fontWeight=Gt}var jt,Ht,Wt=kt.l;Ht=Wt.length;var qt,Xt,Kt,Yt=this.mHelper,Zt,Jt="",nn=0;for(jt=0;jt<Ht;jt+=1){if(this.globalData.fontManager.chars?(this.textPaths[nn]?qt=this.textPaths[nn]:(qt=createNS("path"),qt.setAttribute("stroke-linecap",lineCapEnum[1]),qt.setAttribute("stroke-linejoin",lineJoinEnum[2]),qt.setAttribute("stroke-miterlimit","4")),this.isMasked||(this.textSpans[nn]?(Xt=this.textSpans[nn],Kt=Xt.children[0]):(Xt=createTag("div"),Xt.style.lineHeight=0,Kt=createNS("svg"),Kt.appendChild(qt),styleDiv(Xt)))):this.isMasked?qt=this.textPaths[nn]?this.textPaths[nn]:createNS("text"):this.textSpans[nn]?(Xt=this.textSpans[nn],qt=this.textPaths[nn]):(Xt=createTag("span"),styleDiv(Xt),qt=createTag("span"),styleDiv(qt),Xt.appendChild(qt)),this.globalData.fontManager.chars){var rn=this.globalData.fontManager.getCharData(kt.finalText[jt],Vt.fStyle,this.globalData.fontManager.getFontByName(kt.f).fFamily),Qt;if(rn?Qt=rn.data:Qt=null,Yt.reset(),Qt&&Qt.shapes&&Qt.shapes.length&&(Zt=Qt.shapes[0].it,Yt.scale(kt.finalSize/100,kt.finalSize/100),Jt=this.createPathShape(Yt,Zt),qt.setAttribute("d",Jt)),this.isMasked)this.innerElem.appendChild(qt);else{if(this.innerElem.appendChild(Xt),Qt&&Qt.shapes){document.body.appendChild(Kt);var en=Kt.getBBox();Kt.setAttribute("width",en.width+2),Kt.setAttribute("height",en.height+2),Kt.setAttribute("viewBox",en.x-1+" "+(en.y-1)+" "+(en.width+2)+" "+(en.height+2));var tn=Kt.style,sn="translate("+(en.x-1)+"px,"+(en.y-1)+"px)";tn.transform=sn,tn.webkitTransform=sn,Wt[jt].yOffset=en.y-1}else Kt.setAttribute("width",1),Kt.setAttribute("height",1);Xt.appendChild(Kt)}}else if(qt.textContent=Wt[jt].val,qt.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),this.isMasked)this.innerElem.appendChild(qt);else{this.innerElem.appendChild(Xt);var cn=qt.style,un="translate3d(0,"+-kt.finalSize/1.2+"px,0)";cn.transform=un,cn.webkitTransform=un}this.isMasked?this.textSpans[nn]=qt:this.textSpans[nn]=Xt,this.textSpans[nn].style.display="block",this.textPaths[nn]=qt,nn+=1}for(;nn<this.textSpans.length;)this.textSpans[nn].style.display="none",nn+=1},HTextElement.prototype.renderInnerContent=function(){this.validateText();var kt;if(this.data.singleShape){if(!this._isFirstFrame&&!this.lettersChangedFlag)return;if(this.isMasked&&this.finalTransform._matMdf){this.svgElement.setAttribute("viewBox",-this.finalTransform.mProp.p.v[0]+" "+-this.finalTransform.mProp.p.v[1]+" "+this.compW+" "+this.compH),kt=this.svgElement.style;var _e="translate("+-this.finalTransform.mProp.p.v[0]+"px,"+-this.finalTransform.mProp.p.v[1]+"px)";kt.transform=_e,kt.webkitTransform=_e}}if(this.textAnimator.getMeasures(this.textProperty.currentData,this.lettersChangedFlag),!(!this.lettersChangedFlag&&!this.textAnimator.lettersChangedFlag)){var Dt,Vt,Gt=0,zt=this.textAnimator.renderedLetters,jt=this.textProperty.currentData.l;Vt=jt.length;var Ht,Wt,qt;for(Dt=0;Dt<Vt;Dt+=1)jt[Dt].n?Gt+=1:(Wt=this.textSpans[Dt],qt=this.textPaths[Dt],Ht=zt[Gt],Gt+=1,Ht._mdf.m&&(this.isMasked?Wt.setAttribute("transform",Ht.m):(Wt.style.webkitTransform=Ht.m,Wt.style.transform=Ht.m)),Wt.style.opacity=Ht.o,Ht.sw&&Ht._mdf.sw&&qt.setAttribute("stroke-width",Ht.sw),Ht.sc&&Ht._mdf.sc&&qt.setAttribute("stroke",Ht.sc),Ht.fc&&Ht._mdf.fc&&(qt.setAttribute("fill",Ht.fc),qt.style.color=Ht.fc));if(this.innerElem.getBBox&&!this.hidden&&(this._isFirstFrame||this._mdf)){var Xt=this.innerElem.getBBox();this.currentBBox.w!==Xt.width&&(this.currentBBox.w=Xt.width,this.svgElement.setAttribute("width",Xt.width)),this.currentBBox.h!==Xt.height&&(this.currentBBox.h=Xt.height,this.svgElement.setAttribute("height",Xt.height));var Kt=1;if(this.currentBBox.w!==Xt.width+Kt*2||this.currentBBox.h!==Xt.height+Kt*2||this.currentBBox.x!==Xt.x-Kt||this.currentBBox.y!==Xt.y-Kt){this.currentBBox.w=Xt.width+Kt*2,this.currentBBox.h=Xt.height+Kt*2,this.currentBBox.x=Xt.x-Kt,this.currentBBox.y=Xt.y-Kt,this.svgElement.setAttribute("viewBox",this.currentBBox.x+" "+this.currentBBox.y+" "+this.currentBBox.w+" "+this.currentBBox.h),kt=this.svgElement.style;var Yt="translate("+this.currentBBox.x+"px,"+this.currentBBox.y+"px)";kt.transform=Yt,kt.webkitTransform=Yt}}}};function HCameraElement(kt,_e,Dt){this.initFrame(),this.initBaseData(kt,_e,Dt),this.initHierarchy();var Vt=PropertyFactory.getProp;if(this.pe=Vt(this,kt.pe,0,0,this),kt.ks.p.s?(this.px=Vt(this,kt.ks.p.x,1,0,this),this.py=Vt(this,kt.ks.p.y,1,0,this),this.pz=Vt(this,kt.ks.p.z,1,0,this)):this.p=Vt(this,kt.ks.p,1,0,this),kt.ks.a&&(this.a=Vt(this,kt.ks.a,1,0,this)),kt.ks.or.k.length&&kt.ks.or.k[0].to){var Gt,zt=kt.ks.or.k.length;for(Gt=0;Gt<zt;Gt+=1)kt.ks.or.k[Gt].to=null,kt.ks.or.k[Gt].ti=null}this.or=Vt(this,kt.ks.or,1,degToRads,this),this.or.sh=!0,this.rx=Vt(this,kt.ks.rx,0,degToRads,this),this.ry=Vt(this,kt.ks.ry,0,degToRads,this),this.rz=Vt(this,kt.ks.rz,0,degToRads,this),this.mat=new Matrix,this._prevMat=new Matrix,this._isFirstFrame=!0,this.finalTransform={mProp:this}}extendPrototype([BaseElement,FrameElement,HierarchyElement],HCameraElement),HCameraElement.prototype.setup=function(){var kt,_e=this.comp.threeDElements.length,Dt,Vt,Gt;for(kt=0;kt<_e;kt+=1)if(Dt=this.comp.threeDElements[kt],Dt.type==="3d"){Vt=Dt.perspectiveElem.style,Gt=Dt.container.style;var zt=this.pe.v+"px",jt="0px 0px 0px",Ht="matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1)";Vt.perspective=zt,Vt.webkitPerspective=zt,Gt.transformOrigin=jt,Gt.mozTransformOrigin=jt,Gt.webkitTransformOrigin=jt,Vt.transform=Ht,Vt.webkitTransform=Ht}},HCameraElement.prototype.createElements=function(){},HCameraElement.prototype.hide=function(){},HCameraElement.prototype.renderFrame=function(){var kt=this._isFirstFrame,_e,Dt;if(this.hierarchy)for(Dt=this.hierarchy.length,_e=0;_e<Dt;_e+=1)kt=this.hierarchy[_e].finalTransform.mProp._mdf||kt;if(kt||this.pe._mdf||this.p&&this.p._mdf||this.px&&(this.px._mdf||this.py._mdf||this.pz._mdf)||this.rx._mdf||this.ry._mdf||this.rz._mdf||this.or._mdf||this.a&&this.a._mdf){if(this.mat.reset(),this.hierarchy)for(Dt=this.hierarchy.length-1,_e=Dt;_e>=0;_e-=1){var Vt=this.hierarchy[_e].finalTransform.mProp;this.mat.translate(-Vt.p.v[0],-Vt.p.v[1],Vt.p.v[2]),this.mat.rotateX(-Vt.or.v[0]).rotateY(-Vt.or.v[1]).rotateZ(Vt.or.v[2]),this.mat.rotateX(-Vt.rx.v).rotateY(-Vt.ry.v).rotateZ(Vt.rz.v),this.mat.scale(1/Vt.s.v[0],1/Vt.s.v[1],1/Vt.s.v[2]),this.mat.translate(Vt.a.v[0],Vt.a.v[1],Vt.a.v[2])}if(this.p?this.mat.translate(-this.p.v[0],-this.p.v[1],this.p.v[2]):this.mat.translate(-this.px.v,-this.py.v,this.pz.v),this.a){var Gt;this.p?Gt=[this.p.v[0]-this.a.v[0],this.p.v[1]-this.a.v[1],this.p.v[2]-this.a.v[2]]:Gt=[this.px.v-this.a.v[0],this.py.v-this.a.v[1],this.pz.v-this.a.v[2]];var zt=Math.sqrt(Math.pow(Gt[0],2)+Math.pow(Gt[1],2)+Math.pow(Gt[2],2)),jt=[Gt[0]/zt,Gt[1]/zt,Gt[2]/zt],Ht=Math.sqrt(jt[2]*jt[2]+jt[0]*jt[0]),Wt=Math.atan2(jt[1],Ht),qt=Math.atan2(jt[0],-jt[2]);this.mat.rotateY(qt).rotateX(-Wt)}this.mat.rotateX(-this.rx.v).rotateY(-this.ry.v).rotateZ(this.rz.v),this.mat.rotateX(-this.or.v[0]).rotateY(-this.or.v[1]).rotateZ(this.or.v[2]),this.mat.translate(this.globalData.compSize.w/2,this.globalData.compSize.h/2,0),this.mat.translate(0,0,this.pe.v);var Xt=!this._prevMat.equals(this.mat);if((Xt||this.pe._mdf)&&this.comp.threeDElements){Dt=this.comp.threeDElements.length;var Kt,Yt,Zt;for(_e=0;_e<Dt;_e+=1)if(Kt=this.comp.threeDElements[_e],Kt.type==="3d"){if(Xt){var Jt=this.mat.toCSS();Zt=Kt.container.style,Zt.transform=Jt,Zt.webkitTransform=Jt}this.pe._mdf&&(Yt=Kt.perspectiveElem.style,Yt.perspective=this.pe.v+"px",Yt.webkitPerspective=this.pe.v+"px")}this.mat.clone(this._prevMat)}}this._isFirstFrame=!1},HCameraElement.prototype.prepareFrame=function(kt){this.prepareProperties(kt,!0)},HCameraElement.prototype.destroy=function(){},HCameraElement.prototype.getBaseElement=function(){return null};function HImageElement(kt,_e,Dt){this.assetData=_e.getAssetData(kt.refId),this.initElement(kt,_e,Dt)}extendPrototype([BaseElement,TransformElement,HBaseElement,HSolidElement,HierarchyElement,FrameElement,RenderableElement],HImageElement),HImageElement.prototype.createContent=function(){var kt=this.globalData.getAssetsPath(this.assetData),_e=new Image;this.data.hasMask?(this.imageElem=createNS("image"),this.imageElem.setAttribute("width",this.assetData.w+"px"),this.imageElem.setAttribute("height",this.assetData.h+"px"),this.imageElem.setAttributeNS("http://www.w3.org/1999/xlink","href",kt),this.layerElement.appendChild(this.imageElem),this.baseElement.setAttribute("width",this.assetData.w),this.baseElement.setAttribute("height",this.assetData.h)):this.layerElement.appendChild(_e),_e.crossOrigin="anonymous",_e.src=kt,this.data.ln&&this.baseElement.setAttribute("id",this.data.ln)};function HybridRendererBase(kt,_e){this.animationItem=kt,this.layers=null,this.renderedFrame=-1,this.renderConfig={className:_e&&_e.className||"",imagePreserveAspectRatio:_e&&_e.imagePreserveAspectRatio||"xMidYMid slice",hideOnTransparent:!(_e&&_e.hideOnTransparent===!1),filterSize:{width:_e&&_e.filterSize&&_e.filterSize.width||"400%",height:_e&&_e.filterSize&&_e.filterSize.height||"400%",x:_e&&_e.filterSize&&_e.filterSize.x||"-100%",y:_e&&_e.filterSize&&_e.filterSize.y||"-100%"}},this.globalData={_mdf:!1,frameNum:-1,renderConfig:this.renderConfig},this.pendingElements=[],this.elements=[],this.threeDElements=[],this.destroyed=!1,this.camera=null,this.supports3d=!0,this.rendererType="html"}extendPrototype([BaseRenderer],HybridRendererBase),HybridRendererBase.prototype.buildItem=SVGRenderer.prototype.buildItem,HybridRendererBase.prototype.checkPendingElements=function(){for(;this.pendingElements.length;){var kt=this.pendingElements.pop();kt.checkParenting()}},HybridRendererBase.prototype.appendElementInPos=function(kt,_e){var Dt=kt.getBaseElement();if(Dt){var Vt=this.layers[_e];if(!Vt.ddd||!this.supports3d)if(this.threeDElements)this.addTo3dContainer(Dt,_e);else{for(var Gt=0,zt,jt,Ht;Gt<_e;)this.elements[Gt]&&this.elements[Gt]!==!0&&this.elements[Gt].getBaseElement&&(jt=this.elements[Gt],Ht=this.layers[Gt].ddd?this.getThreeDContainerByPos(Gt):jt.getBaseElement(),zt=Ht||zt),Gt+=1;zt?(!Vt.ddd||!this.supports3d)&&this.layerElement.insertBefore(Dt,zt):(!Vt.ddd||!this.supports3d)&&this.layerElement.appendChild(Dt)}else this.addTo3dContainer(Dt,_e)}},HybridRendererBase.prototype.createShape=function(kt){return this.supports3d?new HShapeElement(kt,this.globalData,this):new SVGShapeElement(kt,this.globalData,this)},HybridRendererBase.prototype.createText=function(kt){return this.supports3d?new HTextElement(kt,this.globalData,this):new SVGTextLottieElement(kt,this.globalData,this)},HybridRendererBase.prototype.createCamera=function(kt){return this.camera=new HCameraElement(kt,this.globalData,this),this.camera},HybridRendererBase.prototype.createImage=function(kt){return this.supports3d?new HImageElement(kt,this.globalData,this):new IImageElement(kt,this.globalData,this)},HybridRendererBase.prototype.createSolid=function(kt){return this.supports3d?new HSolidElement(kt,this.globalData,this):new ISolidElement(kt,this.globalData,this)},HybridRendererBase.prototype.createNull=SVGRenderer.prototype.createNull,HybridRendererBase.prototype.getThreeDContainerByPos=function(kt){for(var _e=0,Dt=this.threeDElements.length;_e<Dt;){if(this.threeDElements[_e].startPos<=kt&&this.threeDElements[_e].endPos>=kt)return this.threeDElements[_e].perspectiveElem;_e+=1}return null},HybridRendererBase.prototype.createThreeDContainer=function(kt,_e){var Dt=createTag("div"),Vt,Gt;styleDiv(Dt);var zt=createTag("div");if(styleDiv(zt),_e==="3d"){Vt=Dt.style,Vt.width=this.globalData.compSize.w+"px",Vt.height=this.globalData.compSize.h+"px";var jt="50% 50%";Vt.webkitTransformOrigin=jt,Vt.mozTransformOrigin=jt,Vt.transformOrigin=jt,Gt=zt.style;var Ht="matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1)";Gt.transform=Ht,Gt.webkitTransform=Ht}Dt.appendChild(zt);var Wt={container:zt,perspectiveElem:Dt,startPos:kt,endPos:kt,type:_e};return this.threeDElements.push(Wt),Wt},HybridRendererBase.prototype.build3dContainers=function(){var kt,_e=this.layers.length,Dt,Vt="";for(kt=0;kt<_e;kt+=1)this.layers[kt].ddd&&this.layers[kt].ty!==3?(Vt!=="3d"&&(Vt="3d",Dt=this.createThreeDContainer(kt,"3d")),Dt.endPos=Math.max(Dt.endPos,kt)):(Vt!=="2d"&&(Vt="2d",Dt=this.createThreeDContainer(kt,"2d")),Dt.endPos=Math.max(Dt.endPos,kt));for(_e=this.threeDElements.length,kt=_e-1;kt>=0;kt-=1)this.resizerElem.appendChild(this.threeDElements[kt].perspectiveElem)},HybridRendererBase.prototype.addTo3dContainer=function(kt,_e){for(var Dt=0,Vt=this.threeDElements.length;Dt<Vt;){if(_e<=this.threeDElements[Dt].endPos){for(var Gt=this.threeDElements[Dt].startPos,zt;Gt<_e;)this.elements[Gt]&&this.elements[Gt].getBaseElement&&(zt=this.elements[Gt].getBaseElement()),Gt+=1;zt?this.threeDElements[Dt].container.insertBefore(kt,zt):this.threeDElements[Dt].container.appendChild(kt);break}Dt+=1}},HybridRendererBase.prototype.configAnimation=function(kt){var _e=createTag("div"),Dt=this.animationItem.wrapper,Vt=_e.style;Vt.width=kt.w+"px",Vt.height=kt.h+"px",this.resizerElem=_e,styleDiv(_e),Vt.transformStyle="flat",Vt.mozTransformStyle="flat",Vt.webkitTransformStyle="flat",this.renderConfig.className&&_e.setAttribute("class",this.renderConfig.className),Dt.appendChild(_e),Vt.overflow="hidden";var Gt=createNS("svg");Gt.setAttribute("width","1"),Gt.setAttribute("height","1"),styleDiv(Gt),this.resizerElem.appendChild(Gt);var zt=createNS("defs");Gt.appendChild(zt),this.data=kt,this.setupGlobalData(kt,Gt),this.globalData.defs=zt,this.layers=kt.layers,this.layerElement=this.resizerElem,this.build3dContainers(),this.updateContainerSize()},HybridRendererBase.prototype.destroy=function(){this.animationItem.wrapper&&(this.animationItem.wrapper.innerText=""),this.animationItem.container=null,this.globalData.defs=null;var kt,_e=this.layers?this.layers.length:0;for(kt=0;kt<_e;kt+=1)this.elements[kt]&&this.elements[kt].destroy&&this.elements[kt].destroy();this.elements.length=0,this.destroyed=!0,this.animationItem=null},HybridRendererBase.prototype.updateContainerSize=function(){var kt=this.animationItem.wrapper.offsetWidth,_e=this.animationItem.wrapper.offsetHeight,Dt=kt/_e,Vt=this.globalData.compSize.w/this.globalData.compSize.h,Gt,zt,jt,Ht;Vt>Dt?(Gt=kt/this.globalData.compSize.w,zt=kt/this.globalData.compSize.w,jt=0,Ht=(_e-this.globalData.compSize.h*(kt/this.globalData.compSize.w))/2):(Gt=_e/this.globalData.compSize.h,zt=_e/this.globalData.compSize.h,jt=(kt-this.globalData.compSize.w*(_e/this.globalData.compSize.h))/2,Ht=0);var Wt=this.resizerElem.style;Wt.webkitTransform="matrix3d("+Gt+",0,0,0,0,"+zt+",0,0,0,0,1,0,"+jt+","+Ht+",0,1)",Wt.transform=Wt.webkitTransform},HybridRendererBase.prototype.renderFrame=SVGRenderer.prototype.renderFrame,HybridRendererBase.prototype.hide=function(){this.resizerElem.style.display="none"},HybridRendererBase.prototype.show=function(){this.resizerElem.style.display="block"},HybridRendererBase.prototype.initItems=function(){if(this.buildAllItems(),this.camera)this.camera.setup();else{var kt=this.globalData.compSize.w,_e=this.globalData.compSize.h,Dt,Vt=this.threeDElements.length;for(Dt=0;Dt<Vt;Dt+=1){var Gt=this.threeDElements[Dt].perspectiveElem.style;Gt.webkitPerspective=Math.sqrt(Math.pow(kt,2)+Math.pow(_e,2))+"px",Gt.perspective=Gt.webkitPerspective}}},HybridRendererBase.prototype.searchExtraCompositions=function(kt){var _e,Dt=kt.length,Vt=createTag("div");for(_e=0;_e<Dt;_e+=1)if(kt[_e].xt){var Gt=this.createComp(kt[_e],Vt,this.globalData.comp,null);Gt.initExpressions(),this.globalData.projectInterface.registerComposition(Gt)}};function HCompElement(kt,_e,Dt){this.layers=kt.layers,this.supports3d=!kt.hasMask,this.completeLayers=!1,this.pendingElements=[],this.elements=this.layers?createSizedArray(this.layers.length):[],this.initElement(kt,_e,Dt),this.tm=kt.tm?PropertyFactory.getProp(this,kt.tm,0,_e.frameRate,this):{_placeholder:!0}}extendPrototype([HybridRendererBase,ICompElement,HBaseElement],HCompElement),HCompElement.prototype._createBaseContainerElements=HCompElement.prototype.createContainerElements,HCompElement.prototype.createContainerElements=function(){this._createBaseContainerElements(),this.data.hasMask?(this.svgElement.setAttribute("width",this.data.w),this.svgElement.setAttribute("height",this.data.h),this.transformedElement=this.baseElement):this.transformedElement=this.layerElement},HCompElement.prototype.addTo3dContainer=function(kt,_e){for(var Dt=0,Vt;Dt<_e;)this.elements[Dt]&&this.elements[Dt].getBaseElement&&(Vt=this.elements[Dt].getBaseElement()),Dt+=1;Vt?this.layerElement.insertBefore(kt,Vt):this.layerElement.appendChild(kt)},HCompElement.prototype.createComp=function(kt){return this.supports3d?new HCompElement(kt,this.globalData,this):new SVGCompElement(kt,this.globalData,this)};function HybridRenderer(kt,_e){this.animationItem=kt,this.layers=null,this.renderedFrame=-1,this.renderConfig={className:_e&&_e.className||"",imagePreserveAspectRatio:_e&&_e.imagePreserveAspectRatio||"xMidYMid slice",hideOnTransparent:!(_e&&_e.hideOnTransparent===!1),filterSize:{width:_e&&_e.filterSize&&_e.filterSize.width||"400%",height:_e&&_e.filterSize&&_e.filterSize.height||"400%",x:_e&&_e.filterSize&&_e.filterSize.x||"-100%",y:_e&&_e.filterSize&&_e.filterSize.y||"-100%"},runExpressions:!_e||_e.runExpressions===void 0||_e.runExpressions},this.globalData={_mdf:!1,frameNum:-1,renderConfig:this.renderConfig},this.pendingElements=[],this.elements=[],this.threeDElements=[],this.destroyed=!1,this.camera=null,this.supports3d=!0,this.rendererType="html"}extendPrototype([HybridRendererBase],HybridRenderer),HybridRenderer.prototype.createComp=function(kt){return this.supports3d?new HCompElement(kt,this.globalData,this):new SVGCompElement(kt,this.globalData,this)};var CompExpressionInterface=function(){return function(kt){function _e(Dt){for(var Vt=0,Gt=kt.layers.length;Vt<Gt;){if(kt.layers[Vt].nm===Dt||kt.layers[Vt].ind===Dt)return kt.elements[Vt].layerInterface;Vt+=1}return null}return Object.defineProperty(_e,"_name",{value:kt.data.nm}),_e.layer=_e,_e.pixelAspect=1,_e.height=kt.data.h||kt.globalData.compSize.h,_e.width=kt.data.w||kt.globalData.compSize.w,_e.pixelAspect=1,_e.frameDuration=1/kt.globalData.frameRate,_e.displayStartTime=0,_e.numLayers=kt.layers.length,_e}}();function _typeof$2(kt){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?_typeof$2=function(Dt){return typeof Dt}:_typeof$2=function(Dt){return Dt&&typeof Symbol=="function"&&Dt.constructor===Symbol&&Dt!==Symbol.prototype?"symbol":typeof Dt},_typeof$2(kt)}function seedRandom(kt,_e){var Dt=this,Vt=256,Gt=6,zt=52,jt="random",Ht=_e.pow(Vt,Gt),Wt=_e.pow(2,zt),qt=Wt*2,Xt=Vt-1,Kt;function Yt(tn,sn,cn){var un=[];sn=sn===!0?{entropy:!0}:sn||{};var hn=rn(nn(sn.entropy?[tn,en(kt)]:tn===null?Qt():tn,3),un),dn=new Zt(un),pn=function(){for(var mn=dn.g(Gt),vn=Ht,_n=0;mn<Wt;)mn=(mn+_n)*Vt,vn*=Vt,_n=dn.g(1);for(;mn>=qt;)mn/=2,vn/=2,_n>>>=1;return(mn+_n)/vn};return pn.int32=function(){return dn.g(4)|0},pn.quick=function(){return dn.g(4)/4294967296},pn.double=pn,rn(en(dn.S),kt),(sn.pass||cn||function(fn,mn,vn,_n){return _n&&(_n.S&&Jt(_n,dn),fn.state=function(){return Jt(dn,{})}),vn?(_e[jt]=fn,mn):fn})(pn,hn,"global"in sn?sn.global:this==_e,sn.state)}_e["seed"+jt]=Yt;function Zt(tn){var sn,cn=tn.length,un=this,hn=0,dn=un.i=un.j=0,pn=un.S=[];for(cn||(tn=[cn++]);hn<Vt;)pn[hn]=hn++;for(hn=0;hn<Vt;hn++)pn[hn]=pn[dn=Xt&dn+tn[hn%cn]+(sn=pn[hn])],pn[dn]=sn;un.g=function(fn){for(var mn,vn=0,_n=un.i,En=un.j,An=un.S;fn--;)mn=An[_n=Xt&_n+1],vn=vn*Vt+An[Xt&(An[_n]=An[En=Xt&En+mn])+(An[En]=mn)];return un.i=_n,un.j=En,vn}}function Jt(tn,sn){return sn.i=tn.i,sn.j=tn.j,sn.S=tn.S.slice(),sn}function nn(tn,sn){var cn=[],un=_typeof$2(tn),hn;if(sn&&un=="object")for(hn in tn)try{cn.push(nn(tn[hn],sn-1))}catch{}return cn.length?cn:un=="string"?tn:tn+"\0"}function rn(tn,sn){for(var cn=tn+"",un,hn=0;hn<cn.length;)sn[Xt&hn]=Xt&(un^=sn[Xt&hn]*19)+cn.charCodeAt(hn++);return en(sn)}function Qt(){try{var tn=new Uint8Array(Vt);return(Dt.crypto||Dt.msCrypto).getRandomValues(tn),en(tn)}catch{var sn=Dt.navigator,cn=sn&&sn.plugins;return[+new Date,Dt,cn,Dt.screen,en(kt)]}}function en(tn){return String.fromCharCode.apply(0,tn)}rn(_e.random(),kt)}function initialize$2(kt){seedRandom([],kt)}var propTypes={SHAPE:"shape"};function _typeof$1(kt){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?_typeof$1=function(Dt){return typeof Dt}:_typeof$1=function(Dt){return Dt&&typeof Symbol=="function"&&Dt.constructor===Symbol&&Dt!==Symbol.prototype?"symbol":typeof Dt},_typeof$1(kt)}var ExpressionManager=function(){var ob={},Math=BMMath,window=null,document=null,XMLHttpRequest=null,fetch=null,frames=null,_lottieGlobal={};initialize$2(BMMath);function resetFrame(){_lottieGlobal={}}function $bm_isInstanceOfArray(kt){return kt.constructor===Array||kt.constructor===Float32Array}function isNumerable(kt,_e){return kt==="number"||_e instanceof Number||kt==="boolean"||kt==="string"}function $bm_neg(kt){var _e=_typeof$1(kt);if(_e==="number"||kt instanceof Number||_e==="boolean")return-kt;if($bm_isInstanceOfArray(kt)){var Dt,Vt=kt.length,Gt=[];for(Dt=0;Dt<Vt;Dt+=1)Gt[Dt]=-kt[Dt];return Gt}return kt.propType?kt.v:-kt}var easeInBez=BezierFactory.getBezierEasing(.333,0,.833,.833,"easeIn").get,easeOutBez=BezierFactory.getBezierEasing(.167,.167,.667,1,"easeOut").get,easeInOutBez=BezierFactory.getBezierEasing(.33,0,.667,1,"easeInOut").get;function sum(kt,_e){var Dt=_typeof$1(kt),Vt=_typeof$1(_e);if(isNumerable(Dt,kt)&&isNumerable(Vt,_e)||Dt==="string"||Vt==="string")return kt+_e;if($bm_isInstanceOfArray(kt)&&isNumerable(Vt,_e))return kt=kt.slice(0),kt[0]+=_e,kt;if(isNumerable(Dt,kt)&&$bm_isInstanceOfArray(_e))return _e=_e.slice(0),_e[0]=kt+_e[0],_e;if($bm_isInstanceOfArray(kt)&&$bm_isInstanceOfArray(_e)){for(var Gt=0,zt=kt.length,jt=_e.length,Ht=[];Gt<zt||Gt<jt;)(typeof kt[Gt]=="number"||kt[Gt]instanceof Number)&&(typeof _e[Gt]=="number"||_e[Gt]instanceof Number)?Ht[Gt]=kt[Gt]+_e[Gt]:Ht[Gt]=_e[Gt]===void 0?kt[Gt]:kt[Gt]||_e[Gt],Gt+=1;return Ht}return 0}var add=sum;function sub(kt,_e){var Dt=_typeof$1(kt),Vt=_typeof$1(_e);if(isNumerable(Dt,kt)&&isNumerable(Vt,_e))return Dt==="string"&&(kt=parseInt(kt,10)),Vt==="string"&&(_e=parseInt(_e,10)),kt-_e;if($bm_isInstanceOfArray(kt)&&isNumerable(Vt,_e))return kt=kt.slice(0),kt[0]-=_e,kt;if(isNumerable(Dt,kt)&&$bm_isInstanceOfArray(_e))return _e=_e.slice(0),_e[0]=kt-_e[0],_e;if($bm_isInstanceOfArray(kt)&&$bm_isInstanceOfArray(_e)){for(var Gt=0,zt=kt.length,jt=_e.length,Ht=[];Gt<zt||Gt<jt;)(typeof kt[Gt]=="number"||kt[Gt]instanceof Number)&&(typeof _e[Gt]=="number"||_e[Gt]instanceof Number)?Ht[Gt]=kt[Gt]-_e[Gt]:Ht[Gt]=_e[Gt]===void 0?kt[Gt]:kt[Gt]||_e[Gt],Gt+=1;return Ht}return 0}function mul(kt,_e){var Dt=_typeof$1(kt),Vt=_typeof$1(_e),Gt;if(isNumerable(Dt,kt)&&isNumerable(Vt,_e))return kt*_e;var zt,jt;if($bm_isInstanceOfArray(kt)&&isNumerable(Vt,_e)){for(jt=kt.length,Gt=createTypedArray("float32",jt),zt=0;zt<jt;zt+=1)Gt[zt]=kt[zt]*_e;return Gt}if(isNumerable(Dt,kt)&&$bm_isInstanceOfArray(_e)){for(jt=_e.length,Gt=createTypedArray("float32",jt),zt=0;zt<jt;zt+=1)Gt[zt]=kt*_e[zt];return Gt}return 0}function div(kt,_e){var Dt=_typeof$1(kt),Vt=_typeof$1(_e),Gt;if(isNumerable(Dt,kt)&&isNumerable(Vt,_e))return kt/_e;var zt,jt;if($bm_isInstanceOfArray(kt)&&isNumerable(Vt,_e)){for(jt=kt.length,Gt=createTypedArray("float32",jt),zt=0;zt<jt;zt+=1)Gt[zt]=kt[zt]/_e;return Gt}if(isNumerable(Dt,kt)&&$bm_isInstanceOfArray(_e)){for(jt=_e.length,Gt=createTypedArray("float32",jt),zt=0;zt<jt;zt+=1)Gt[zt]=kt/_e[zt];return Gt}return 0}function mod(kt,_e){return typeof kt=="string"&&(kt=parseInt(kt,10)),typeof _e=="string"&&(_e=parseInt(_e,10)),kt%_e}var $bm_sum=sum,$bm_sub=sub,$bm_mul=mul,$bm_div=div,$bm_mod=mod;function clamp(kt,_e,Dt){if(_e>Dt){var Vt=Dt;Dt=_e,_e=Vt}return Math.min(Math.max(kt,_e),Dt)}function radiansToDegrees(kt){return kt/degToRads}var radians_to_degrees=radiansToDegrees;function degreesToRadians(kt){return kt*degToRads}var degrees_to_radians=radiansToDegrees,helperLengthArray=[0,0,0,0,0,0];function length(kt,_e){if(typeof kt=="number"||kt instanceof Number)return _e=_e||0,Math.abs(kt-_e);_e||(_e=helperLengthArray);var Dt,Vt=Math.min(kt.length,_e.length),Gt=0;for(Dt=0;Dt<Vt;Dt+=1)Gt+=Math.pow(_e[Dt]-kt[Dt],2);return Math.sqrt(Gt)}function normalize(kt){return div(kt,length(kt))}function rgbToHsl(kt){var _e=kt[0],Dt=kt[1],Vt=kt[2],Gt=Math.max(_e,Dt,Vt),zt=Math.min(_e,Dt,Vt),jt,Ht,Wt=(Gt+zt)/2;if(Gt===zt)jt=0,Ht=0;else{var qt=Gt-zt;switch(Ht=Wt>.5?qt/(2-Gt-zt):qt/(Gt+zt),Gt){case _e:jt=(Dt-Vt)/qt+(Dt<Vt?6:0);break;case Dt:jt=(Vt-_e)/qt+2;break;case Vt:jt=(_e-Dt)/qt+4;break}jt/=6}return[jt,Ht,Wt,kt[3]]}function hue2rgb(kt,_e,Dt){return Dt<0&&(Dt+=1),Dt>1&&(Dt-=1),Dt<1/6?kt+(_e-kt)*6*Dt:Dt<1/2?_e:Dt<2/3?kt+(_e-kt)*(2/3-Dt)*6:kt}function hslToRgb(kt){var _e=kt[0],Dt=kt[1],Vt=kt[2],Gt,zt,jt;if(Dt===0)Gt=Vt,jt=Vt,zt=Vt;else{var Ht=Vt<.5?Vt*(1+Dt):Vt+Dt-Vt*Dt,Wt=2*Vt-Ht;Gt=hue2rgb(Wt,Ht,_e+1/3),zt=hue2rgb(Wt,Ht,_e),jt=hue2rgb(Wt,Ht,_e-1/3)}return[Gt,zt,jt,kt[3]]}function linear(kt,_e,Dt,Vt,Gt){if((Vt===void 0||Gt===void 0)&&(Vt=_e,Gt=Dt,_e=0,Dt=1),Dt<_e){var zt=Dt;Dt=_e,_e=zt}if(kt<=_e)return Vt;if(kt>=Dt)return Gt;var jt=Dt===_e?0:(kt-_e)/(Dt-_e);if(!Vt.length)return Vt+(Gt-Vt)*jt;var Ht,Wt=Vt.length,qt=createTypedArray("float32",Wt);for(Ht=0;Ht<Wt;Ht+=1)qt[Ht]=Vt[Ht]+(Gt[Ht]-Vt[Ht])*jt;return qt}function random(kt,_e){if(_e===void 0&&(kt===void 0?(kt=0,_e=1):(_e=kt,kt=void 0)),_e.length){var Dt,Vt=_e.length;kt||(kt=createTypedArray("float32",Vt));var Gt=createTypedArray("float32",Vt),zt=BMMath.random();for(Dt=0;Dt<Vt;Dt+=1)Gt[Dt]=kt[Dt]+zt*(_e[Dt]-kt[Dt]);return Gt}kt===void 0&&(kt=0);var jt=BMMath.random();return kt+jt*(_e-kt)}function createPath(kt,_e,Dt,Vt){var Gt,zt=kt.length,jt=shapePool.newElement();jt.setPathData(!!Vt,zt);var Ht=[0,0],Wt,qt;for(Gt=0;Gt<zt;Gt+=1)Wt=_e&&_e[Gt]?_e[Gt]:Ht,qt=Dt&&Dt[Gt]?Dt[Gt]:Ht,jt.setTripleAt(kt[Gt][0],kt[Gt][1],qt[0]+kt[Gt][0],qt[1]+kt[Gt][1],Wt[0]+kt[Gt][0],Wt[1]+kt[Gt][1],Gt,!0);return jt}function initiateExpression(elem,data,property){function noOp(kt){return kt}if(!elem.globalData.renderConfig.runExpressions)return noOp;var val=data.x,needsVelocity=/velocity(?![\w\d])/.test(val),_needsRandom=val.indexOf("random")!==-1,elemType=elem.data.ty,transform,$bm_transform,content,effect,thisProperty=property;thisProperty.valueAtTime=thisProperty.getValueAtTime,Object.defineProperty(thisProperty,"value",{get:function(){return thisProperty.v}}),elem.comp.frameDuration=1/elem.comp.globalData.frameRate,elem.comp.displayStartTime=0;var inPoint=elem.data.ip/elem.comp.globalData.frameRate,outPoint=elem.data.op/elem.comp.globalData.frameRate,width=elem.data.sw?elem.data.sw:0,height=elem.data.sh?elem.data.sh:0,name=elem.data.nm,loopIn,loop_in,loopOut,loop_out,smooth,toWorld,fromWorld,fromComp,toComp,fromCompToSurface,position,rotation,anchorPoint,scale,thisLayer,thisComp,mask,valueAtTime,velocityAtTime,scoped_bm_rt,expression_function=eval("[function _expression_function(){"+val+";scoped_bm_rt=$bm_rt}]")[0],numKeys=property.kf?data.k.length:0,active=!this.data||this.data.hd!==!0,wiggle=function kt(_e,Dt){var Vt,Gt,zt=this.pv.length?this.pv.length:1,jt=createTypedArray("float32",zt);_e=5;var Ht=Math.floor(time*_e);for(Vt=0,Gt=0;Vt<Ht;){for(Gt=0;Gt<zt;Gt+=1)jt[Gt]+=-Dt+Dt*2*BMMath.random();Vt+=1}var Wt=time*_e,qt=Wt-Math.floor(Wt),Xt=createTypedArray("float32",zt);if(zt>1){for(Gt=0;Gt<zt;Gt+=1)Xt[Gt]=this.pv[Gt]+jt[Gt]+(-Dt+Dt*2*BMMath.random())*qt;return Xt}return this.pv+jt[0]+(-Dt+Dt*2*BMMath.random())*qt}.bind(this);thisProperty.loopIn&&(loopIn=thisProperty.loopIn.bind(thisProperty),loop_in=loopIn),thisProperty.loopOut&&(loopOut=thisProperty.loopOut.bind(thisProperty),loop_out=loopOut),thisProperty.smooth&&(smooth=thisProperty.smooth.bind(thisProperty));function loopInDuration(kt,_e){return loopIn(kt,_e,!0)}function loopOutDuration(kt,_e){return loopOut(kt,_e,!0)}this.getValueAtTime&&(valueAtTime=this.getValueAtTime.bind(this)),this.getVelocityAtTime&&(velocityAtTime=this.getVelocityAtTime.bind(this));var comp=elem.comp.globalData.projectInterface.bind(elem.comp.globalData.projectInterface);function lookAt(kt,_e){var Dt=[_e[0]-kt[0],_e[1]-kt[1],_e[2]-kt[2]],Vt=Math.atan2(Dt[0],Math.sqrt(Dt[1]*Dt[1]+Dt[2]*Dt[2]))/degToRads,Gt=-Math.atan2(Dt[1],Dt[2])/degToRads;return[Gt,Vt,0]}function easeOut(kt,_e,Dt,Vt,Gt){return applyEase(easeOutBez,kt,_e,Dt,Vt,Gt)}function easeIn(kt,_e,Dt,Vt,Gt){return applyEase(easeInBez,kt,_e,Dt,Vt,Gt)}function ease(kt,_e,Dt,Vt,Gt){return applyEase(easeInOutBez,kt,_e,Dt,Vt,Gt)}function applyEase(kt,_e,Dt,Vt,Gt,zt){Gt===void 0?(Gt=Dt,zt=Vt):_e=(_e-Dt)/(Vt-Dt),_e>1?_e=1:_e<0&&(_e=0);var jt=kt(_e);if($bm_isInstanceOfArray(Gt)){var Ht,Wt=Gt.length,qt=createTypedArray("float32",Wt);for(Ht=0;Ht<Wt;Ht+=1)qt[Ht]=(zt[Ht]-Gt[Ht])*jt+Gt[Ht];return qt}return(zt-Gt)*jt+Gt}function nearestKey(kt){var _e,Dt=data.k.length,Vt,Gt;if(!data.k.length||typeof data.k[0]=="number")Vt=0,Gt=0;else if(Vt=-1,kt*=elem.comp.globalData.frameRate,kt<data.k[0].t)Vt=1,Gt=data.k[0].t;else{for(_e=0;_e<Dt-1;_e+=1)if(kt===data.k[_e].t){Vt=_e+1,Gt=data.k[_e].t;break}else if(kt>data.k[_e].t&&kt<data.k[_e+1].t){kt-data.k[_e].t>data.k[_e+1].t-kt?(Vt=_e+2,Gt=data.k[_e+1].t):(Vt=_e+1,Gt=data.k[_e].t);break}Vt===-1&&(Vt=_e+1,Gt=data.k[_e].t)}var zt={};return zt.index=Vt,zt.time=Gt/elem.comp.globalData.frameRate,zt}function key(kt){var _e,Dt,Vt;if(!data.k.length||typeof data.k[0]=="number")throw new Error("The property has no keyframe at index "+kt);kt-=1,_e={time:data.k[kt].t/elem.comp.globalData.frameRate,value:[]};var Gt=Object.prototype.hasOwnProperty.call(data.k[kt],"s")?data.k[kt].s:data.k[kt-1].e;for(Vt=Gt.length,Dt=0;Dt<Vt;Dt+=1)_e[Dt]=Gt[Dt],_e.value[Dt]=Gt[Dt];return _e}function framesToTime(kt,_e){return _e||(_e=elem.comp.globalData.frameRate),kt/_e}function timeToFrames(kt,_e){return!kt&&kt!==0&&(kt=time),_e||(_e=elem.comp.globalData.frameRate),kt*_e}function seedRandom(kt){BMMath.seedrandom(randSeed+kt)}function sourceRectAtTime(){return elem.sourceRectAtTime()}function substring(kt,_e){return typeof value=="string"?_e===void 0?value.substring(kt):value.substring(kt,_e):""}function substr(kt,_e){return typeof value=="string"?_e===void 0?value.substr(kt):value.substr(kt,_e):""}function posterizeTime(kt){time=kt===0?0:Math.floor(time*kt)/kt,value=valueAtTime(time)}var time,velocity,value,text,textIndex,textTotal,selectorValue,index=elem.data.ind,hasParent=!!(elem.hierarchy&&elem.hierarchy.length),parent,randSeed=Math.floor(Math.random()*1e6),globalData=elem.globalData;function executeExpression(kt){return value=kt,this.frameExpressionId===elem.globalData.frameId&&this.propType!=="textSelector"?value:(this.propType==="textSelector"&&(textIndex=this.textIndex,textTotal=this.textTotal,selectorValue=this.selectorValue),thisLayer||(text=elem.layerInterface.text,thisLayer=elem.layerInterface,thisComp=elem.comp.compInterface,toWorld=thisLayer.toWorld.bind(thisLayer),fromWorld=thisLayer.fromWorld.bind(thisLayer),fromComp=thisLayer.fromComp.bind(thisLayer),toComp=thisLayer.toComp.bind(thisLayer),mask=thisLayer.mask?thisLayer.mask.bind(thisLayer):null,fromCompToSurface=fromComp),transform||(transform=elem.layerInterface("ADBE Transform Group"),$bm_transform=transform,transform&&(anchorPoint=transform.anchorPoint)),elemType===4&&!content&&(content=thisLayer("ADBE Root Vectors Group")),effect||(effect=thisLayer(4)),hasParent=!!(elem.hierarchy&&elem.hierarchy.length),hasParent&&!parent&&(parent=elem.hierarchy[0].layerInterface),time=this.comp.renderedFrame/this.comp.globalData.frameRate,_needsRandom&&seedRandom(randSeed+time),needsVelocity&&(velocity=velocityAtTime(time)),expression_function(),this.frameExpressionId=elem.globalData.frameId,scoped_bm_rt=scoped_bm_rt.propType===propTypes.SHAPE?scoped_bm_rt.v:scoped_bm_rt,scoped_bm_rt)}return executeExpression.__preventDeadCodeRemoval=[$bm_transform,anchorPoint,time,velocity,inPoint,outPoint,width,height,name,loop_in,loop_out,smooth,toComp,fromCompToSurface,toWorld,fromWorld,mask,position,rotation,scale,thisComp,numKeys,active,wiggle,loopInDuration,loopOutDuration,comp,lookAt,easeOut,easeIn,ease,nearestKey,key,text,textIndex,textTotal,selectorValue,framesToTime,timeToFrames,sourceRectAtTime,substring,substr,posterizeTime,index,globalData],executeExpression}return ob.initiateExpression=initiateExpression,ob.__preventDeadCodeRemoval=[window,document,XMLHttpRequest,fetch,frames,$bm_neg,add,$bm_sum,$bm_sub,$bm_mul,$bm_div,$bm_mod,clamp,radians_to_degrees,degreesToRadians,degrees_to_radians,normalize,rgbToHsl,hslToRgb,linear,random,createPath,_lottieGlobal],ob.resetFrame=resetFrame,ob}(),Expressions=function(){var kt={};kt.initExpressions=_e,kt.resetFrame=ExpressionManager.resetFrame;function _e(Dt){var Vt=0,Gt=[];function zt(){Vt+=1}function jt(){Vt-=1,Vt===0&&Wt()}function Ht(qt){Gt.indexOf(qt)===-1&&Gt.push(qt)}function Wt(){var qt,Xt=Gt.length;for(qt=0;qt<Xt;qt+=1)Gt[qt].release();Gt.length=0}Dt.renderer.compInterface=CompExpressionInterface(Dt.renderer),Dt.renderer.globalData.projectInterface.registerComposition(Dt.renderer),Dt.renderer.globalData.pushExpression=zt,Dt.renderer.globalData.popExpression=jt,Dt.renderer.globalData.registerExpressionProperty=Ht}return kt}(),MaskManagerInterface=function(){function kt(Dt,Vt){this._mask=Dt,this._data=Vt}Object.defineProperty(kt.prototype,"maskPath",{get:function(){return this._mask.prop.k&&this._mask.prop.getValue(),this._mask.prop}}),Object.defineProperty(kt.prototype,"maskOpacity",{get:function(){return this._mask.op.k&&this._mask.op.getValue(),this._mask.op.v*100}});var _e=function(Vt){var Gt=createSizedArray(Vt.viewData.length),zt,jt=Vt.viewData.length;for(zt=0;zt<jt;zt+=1)Gt[zt]=new kt(Vt.viewData[zt],Vt.masksProperties[zt]);var Ht=function(qt){for(zt=0;zt<jt;){if(Vt.masksProperties[zt].nm===qt)return Gt[zt];zt+=1}return null};return Ht};return _e}(),ExpressionPropertyInterface=function(){var kt={pv:0,v:0,mult:1},_e={pv:[0,0,0],v:[0,0,0],mult:1};function Dt(jt,Ht,Wt){Object.defineProperty(jt,"velocity",{get:function(){return Ht.getVelocityAtTime(Ht.comp.currentFrame)}}),jt.numKeys=Ht.keyframes?Ht.keyframes.length:0,jt.key=function(qt){if(!jt.numKeys)return 0;var Xt="";"s"in Ht.keyframes[qt-1]?Xt=Ht.keyframes[qt-1].s:"e"in Ht.keyframes[qt-2]?Xt=Ht.keyframes[qt-2].e:Xt=Ht.keyframes[qt-2].s;var Kt=Wt==="unidimensional"?new Number(Xt):Object.assign({},Xt);return Kt.time=Ht.keyframes[qt-1].t/Ht.elem.comp.globalData.frameRate,Kt.value=Wt==="unidimensional"?Xt[0]:Xt,Kt},jt.valueAtTime=Ht.getValueAtTime,jt.speedAtTime=Ht.getSpeedAtTime,jt.velocityAtTime=Ht.getVelocityAtTime,jt.propertyGroup=Ht.propertyGroup}function Vt(jt){(!jt||!("pv"in jt))&&(jt=kt);var Ht=1/jt.mult,Wt=jt.pv*Ht,qt=new Number(Wt);return qt.value=Wt,Dt(qt,jt,"unidimensional"),function(){return jt.k&&jt.getValue(),Wt=jt.v*Ht,qt.value!==Wt&&(qt=new Number(Wt),qt.value=Wt,Dt(qt,jt,"unidimensional")),qt}}function Gt(jt){(!jt||!("pv"in jt))&&(jt=_e);var Ht=1/jt.mult,Wt=jt.data&&jt.data.l||jt.pv.length,qt=createTypedArray("float32",Wt),Xt=createTypedArray("float32",Wt);return qt.value=Xt,Dt(qt,jt,"multidimensional"),function(){jt.k&&jt.getValue();for(var Kt=0;Kt<Wt;Kt+=1)Xt[Kt]=jt.v[Kt]*Ht,qt[Kt]=Xt[Kt];return qt}}function zt(){return kt}return function(jt){return jt?jt.propType==="unidimensional"?Vt(jt):Gt(jt):zt}}(),TransformExpressionInterface=function(){return function(kt){function _e(jt){switch(jt){case"scale":case"Scale":case"ADBE Scale":case 6:return _e.scale;case"rotation":case"Rotation":case"ADBE Rotation":case"ADBE Rotate Z":case 10:return _e.rotation;case"ADBE Rotate X":return _e.xRotation;case"ADBE Rotate Y":return _e.yRotation;case"position":case"Position":case"ADBE Position":case 2:return _e.position;case"ADBE Position_0":return _e.xPosition;case"ADBE Position_1":return _e.yPosition;case"ADBE Position_2":return _e.zPosition;case"anchorPoint":case"AnchorPoint":case"Anchor Point":case"ADBE AnchorPoint":case 1:return _e.anchorPoint;case"opacity":case"Opacity":case 11:return _e.opacity;default:return null}}Object.defineProperty(_e,"rotation",{get:ExpressionPropertyInterface(kt.r||kt.rz)}),Object.defineProperty(_e,"zRotation",{get:ExpressionPropertyInterface(kt.rz||kt.r)}),Object.defineProperty(_e,"xRotation",{get:ExpressionPropertyInterface(kt.rx)}),Object.defineProperty(_e,"yRotation",{get:ExpressionPropertyInterface(kt.ry)}),Object.defineProperty(_e,"scale",{get:ExpressionPropertyInterface(kt.s)});var Dt,Vt,Gt,zt;return kt.p?zt=ExpressionPropertyInterface(kt.p):(Dt=ExpressionPropertyInterface(kt.px),Vt=ExpressionPropertyInterface(kt.py),kt.pz&&(Gt=ExpressionPropertyInterface(kt.pz))),Object.defineProperty(_e,"position",{get:function(){return kt.p?zt():[Dt(),Vt(),Gt?Gt():0]}}),Object.defineProperty(_e,"xPosition",{get:ExpressionPropertyInterface(kt.px)}),Object.defineProperty(_e,"yPosition",{get:ExpressionPropertyInterface(kt.py)}),Object.defineProperty(_e,"zPosition",{get:ExpressionPropertyInterface(kt.pz)}),Object.defineProperty(_e,"anchorPoint",{get:ExpressionPropertyInterface(kt.a)}),Object.defineProperty(_e,"opacity",{get:ExpressionPropertyInterface(kt.o)}),Object.defineProperty(_e,"skew",{get:ExpressionPropertyInterface(kt.sk)}),Object.defineProperty(_e,"skewAxis",{get:ExpressionPropertyInterface(kt.sa)}),Object.defineProperty(_e,"orientation",{get:ExpressionPropertyInterface(kt.or)}),_e}}(),LayerExpressionInterface=function(){function kt(qt){var Xt=new Matrix;if(qt!==void 0){var Kt=this._elem.finalTransform.mProp.getValueAtTime(qt);Kt.clone(Xt)}else{var Yt=this._elem.finalTransform.mProp;Yt.applyToMatrix(Xt)}return Xt}function _e(qt,Xt){var Kt=this.getMatrix(Xt);return Kt.props[12]=0,Kt.props[13]=0,Kt.props[14]=0,this.applyPoint(Kt,qt)}function Dt(qt,Xt){var Kt=this.getMatrix(Xt);return this.applyPoint(Kt,qt)}function Vt(qt,Xt){var Kt=this.getMatrix(Xt);return Kt.props[12]=0,Kt.props[13]=0,Kt.props[14]=0,this.invertPoint(Kt,qt)}function Gt(qt,Xt){var Kt=this.getMatrix(Xt);return this.invertPoint(Kt,qt)}function zt(qt,Xt){if(this._elem.hierarchy&&this._elem.hierarchy.length){var Kt,Yt=this._elem.hierarchy.length;for(Kt=0;Kt<Yt;Kt+=1)this._elem.hierarchy[Kt].finalTransform.mProp.applyToMatrix(qt)}return qt.applyToPointArray(Xt[0],Xt[1],Xt[2]||0)}function jt(qt,Xt){if(this._elem.hierarchy&&this._elem.hierarchy.length){var Kt,Yt=this._elem.hierarchy.length;for(Kt=0;Kt<Yt;Kt+=1)this._elem.hierarchy[Kt].finalTransform.mProp.applyToMatrix(qt)}return qt.inversePoint(Xt)}function Ht(qt){var Xt=new Matrix;if(Xt.reset(),this._elem.finalTransform.mProp.applyToMatrix(Xt),this._elem.hierarchy&&this._elem.hierarchy.length){var Kt,Yt=this._elem.hierarchy.length;for(Kt=0;Kt<Yt;Kt+=1)this._elem.hierarchy[Kt].finalTransform.mProp.applyToMatrix(Xt);return Xt.inversePoint(qt)}return Xt.inversePoint(qt)}function Wt(){return[1,1,1,1]}return function(qt){var Xt;function Kt(nn){Zt.mask=new MaskManagerInterface(nn,qt)}function Yt(nn){Zt.effect=nn}function Zt(nn){switch(nn){case"ADBE Root Vectors Group":case"Contents":case 2:return Zt.shapeInterface;case 1:case 6:case"Transform":case"transform":case"ADBE Transform Group":return Xt;case 4:case"ADBE Effect Parade":case"effects":case"Effects":return Zt.effect;case"ADBE Text Properties":return Zt.textInterface;default:return null}}Zt.getMatrix=kt,Zt.invertPoint=jt,Zt.applyPoint=zt,Zt.toWorld=Dt,Zt.toWorldVec=_e,Zt.fromWorld=Gt,Zt.fromWorldVec=Vt,Zt.toComp=Dt,Zt.fromComp=Ht,Zt.sampleImage=Wt,Zt.sourceRectAtTime=qt.sourceRectAtTime.bind(qt),Zt._elem=qt,Xt=TransformExpressionInterface(qt.finalTransform.mProp);var Jt=getDescriptor(Xt,"anchorPoint");return Object.defineProperties(Zt,{hasParent:{get:function(){return qt.hierarchy.length}},parent:{get:function(){return qt.hierarchy[0].layerInterface}},rotation:getDescriptor(Xt,"rotation"),scale:getDescriptor(Xt,"scale"),position:getDescriptor(Xt,"position"),opacity:getDescriptor(Xt,"opacity"),anchorPoint:Jt,anchor_point:Jt,transform:{get:function(){return Xt}},active:{get:function(){return qt.isInRange}}}),Zt.startTime=qt.data.st,Zt.index=qt.data.ind,Zt.source=qt.data.refId,Zt.height=qt.data.ty===0?qt.data.h:100,Zt.width=qt.data.ty===0?qt.data.w:100,Zt.inPoint=qt.data.ip/qt.comp.globalData.frameRate,Zt.outPoint=qt.data.op/qt.comp.globalData.frameRate,Zt._name=qt.data.nm,Zt.registerMaskInterface=Kt,Zt.registerEffectsInterface=Yt,Zt}}(),propertyGroupFactory=function(){return function(kt,_e){return function(Dt){return Dt=Dt===void 0?1:Dt,Dt<=0?kt:_e(Dt-1)}}}(),PropertyInterface=function(){return function(kt,_e){var Dt={_name:kt};function Vt(Gt){return Gt=Gt===void 0?1:Gt,Gt<=0?Dt:_e(Gt-1)}return Vt}}(),EffectsExpressionInterface=function(){var kt={createEffectsInterface:_e};function _e(Gt,zt){if(Gt.effectsManager){var jt=[],Ht=Gt.data.ef,Wt,qt=Gt.effectsManager.effectElements.length;for(Wt=0;Wt<qt;Wt+=1)jt.push(Dt(Ht[Wt],Gt.effectsManager.effectElements[Wt],zt,Gt));var Xt=Gt.data.ef||[],Kt=function(Zt){for(Wt=0,qt=Xt.length;Wt<qt;){if(Zt===Xt[Wt].nm||Zt===Xt[Wt].mn||Zt===Xt[Wt].ix)return jt[Wt];Wt+=1}return null};return Object.defineProperty(Kt,"numProperties",{get:function(){return Xt.length}}),Kt}return null}function Dt(Gt,zt,jt,Ht){function Wt(Zt){for(var Jt=Gt.ef,nn=0,rn=Jt.length;nn<rn;){if(Zt===Jt[nn].nm||Zt===Jt[nn].mn||Zt===Jt[nn].ix)return Jt[nn].ty===5?Xt[nn]:Xt[nn]();nn+=1}throw new Error}var qt=propertyGroupFactory(Wt,jt),Xt=[],Kt,Yt=Gt.ef.length;for(Kt=0;Kt<Yt;Kt+=1)Gt.ef[Kt].ty===5?Xt.push(Dt(Gt.ef[Kt],zt.effectElements[Kt],zt.effectElements[Kt].propertyGroup,Ht)):Xt.push(Vt(zt.effectElements[Kt],Gt.ef[Kt].ty,Ht,qt));return Gt.mn==="ADBE Color Control"&&Object.defineProperty(Wt,"color",{get:function(){return Xt[0]()}}),Object.defineProperties(Wt,{numProperties:{get:function(){return Gt.np}},_name:{value:Gt.nm},propertyGroup:{value:qt}}),Wt.enabled=Gt.en!==0,Wt.active=Wt.enabled,Wt}function Vt(Gt,zt,jt,Ht){var Wt=ExpressionPropertyInterface(Gt.p);function qt(){return zt===10?jt.comp.compInterface(Gt.p.v):Wt()}return Gt.p.setGroupProperty&&Gt.p.setGroupProperty(PropertyInterface("",Ht)),qt}return kt}(),ShapePathInterface=function(){return function(_e,Dt,Vt){var Gt=Dt.sh;function zt(Ht){return Ht==="Shape"||Ht==="shape"||Ht==="Path"||Ht==="path"||Ht==="ADBE Vector Shape"||Ht===2?zt.path:null}var jt=propertyGroupFactory(zt,Vt);return Gt.setGroupProperty(PropertyInterface("Path",jt)),Object.defineProperties(zt,{path:{get:function(){return Gt.k&&Gt.getValue(),Gt}},shape:{get:function(){return Gt.k&&Gt.getValue(),Gt}},_name:{value:_e.nm},ix:{value:_e.ix},propertyIndex:{value:_e.ix},mn:{value:_e.mn},propertyGroup:{value:Vt}}),zt}}(),ShapeExpressionInterface=function(){function kt(Jt,nn,rn){var Qt=[],en,tn=Jt?Jt.length:0;for(en=0;en<tn;en+=1)Jt[en].ty==="gr"?Qt.push(Dt(Jt[en],nn[en],rn)):Jt[en].ty==="fl"?Qt.push(Vt(Jt[en],nn[en],rn)):Jt[en].ty==="st"?Qt.push(jt(Jt[en],nn[en],rn)):Jt[en].ty==="tm"?Qt.push(Ht(Jt[en],nn[en],rn)):Jt[en].ty==="tr"||(Jt[en].ty==="el"?Qt.push(qt(Jt[en],nn[en],rn)):Jt[en].ty==="sr"?Qt.push(Xt(Jt[en],nn[en],rn)):Jt[en].ty==="sh"?Qt.push(ShapePathInterface(Jt[en],nn[en],rn)):Jt[en].ty==="rc"?Qt.push(Kt(Jt[en],nn[en],rn)):Jt[en].ty==="rd"?Qt.push(Yt(Jt[en],nn[en],rn)):Jt[en].ty==="rp"?Qt.push(Zt(Jt[en],nn[en],rn)):Jt[en].ty==="gf"?Qt.push(Gt(Jt[en],nn[en],rn)):Qt.push(zt(Jt[en],nn[en])));return Qt}function _e(Jt,nn,rn){var Qt,en=function(cn){for(var un=0,hn=Qt.length;un<hn;){if(Qt[un]._name===cn||Qt[un].mn===cn||Qt[un].propertyIndex===cn||Qt[un].ix===cn||Qt[un].ind===cn)return Qt[un];un+=1}return typeof cn=="number"?Qt[cn-1]:null};en.propertyGroup=propertyGroupFactory(en,rn),Qt=kt(Jt.it,nn.it,en.propertyGroup),en.numProperties=Qt.length;var tn=Wt(Jt.it[Jt.it.length-1],nn.it[nn.it.length-1],en.propertyGroup);return en.transform=tn,en.propertyIndex=Jt.cix,en._name=Jt.nm,en}function Dt(Jt,nn,rn){var Qt=function(cn){switch(cn){case"ADBE Vectors Group":case"Contents":case 2:return Qt.content;default:return Qt.transform}};Qt.propertyGroup=propertyGroupFactory(Qt,rn);var en=_e(Jt,nn,Qt.propertyGroup),tn=Wt(Jt.it[Jt.it.length-1],nn.it[nn.it.length-1],Qt.propertyGroup);return Qt.content=en,Qt.transform=tn,Object.defineProperty(Qt,"_name",{get:function(){return Jt.nm}}),Qt.numProperties=Jt.np,Qt.propertyIndex=Jt.ix,Qt.nm=Jt.nm,Qt.mn=Jt.mn,Qt}function Vt(Jt,nn,rn){function Qt(en){return en==="Color"||en==="color"?Qt.color:en==="Opacity"||en==="opacity"?Qt.opacity:null}return Object.defineProperties(Qt,{color:{get:ExpressionPropertyInterface(nn.c)},opacity:{get:ExpressionPropertyInterface(nn.o)},_name:{value:Jt.nm},mn:{value:Jt.mn}}),nn.c.setGroupProperty(PropertyInterface("Color",rn)),nn.o.setGroupProperty(PropertyInterface("Opacity",rn)),Qt}function Gt(Jt,nn,rn){function Qt(en){return en==="Start Point"||en==="start point"?Qt.startPoint:en==="End Point"||en==="end point"?Qt.endPoint:en==="Opacity"||en==="opacity"?Qt.opacity:null}return Object.defineProperties(Qt,{startPoint:{get:ExpressionPropertyInterface(nn.s)},endPoint:{get:ExpressionPropertyInterface(nn.e)},opacity:{get:ExpressionPropertyInterface(nn.o)},type:{get:function(){return"a"}},_name:{value:Jt.nm},mn:{value:Jt.mn}}),nn.s.setGroupProperty(PropertyInterface("Start Point",rn)),nn.e.setGroupProperty(PropertyInterface("End Point",rn)),nn.o.setGroupProperty(PropertyInterface("Opacity",rn)),Qt}function zt(){function Jt(){return null}return Jt}function jt(Jt,nn,rn){var Qt=propertyGroupFactory(hn,rn),en=propertyGroupFactory(un,Qt);function tn(dn){Object.defineProperty(un,Jt.d[dn].nm,{get:ExpressionPropertyInterface(nn.d.dataProps[dn].p)})}var sn,cn=Jt.d?Jt.d.length:0,un={};for(sn=0;sn<cn;sn+=1)tn(sn),nn.d.dataProps[sn].p.setGroupProperty(en);function hn(dn){return dn==="Color"||dn==="color"?hn.color:dn==="Opacity"||dn==="opacity"?hn.opacity:dn==="Stroke Width"||dn==="stroke width"?hn.strokeWidth:null}return Object.defineProperties(hn,{color:{get:ExpressionPropertyInterface(nn.c)},opacity:{get:ExpressionPropertyInterface(nn.o)},strokeWidth:{get:ExpressionPropertyInterface(nn.w)},dash:{get:function(){return un}},_name:{value:Jt.nm},mn:{value:Jt.mn}}),nn.c.setGroupProperty(PropertyInterface("Color",Qt)),nn.o.setGroupProperty(PropertyInterface("Opacity",Qt)),nn.w.setGroupProperty(PropertyInterface("Stroke Width",Qt)),hn}function Ht(Jt,nn,rn){function Qt(tn){return tn===Jt.e.ix||tn==="End"||tn==="end"?Qt.end:tn===Jt.s.ix?Qt.start:tn===Jt.o.ix?Qt.offset:null}var en=propertyGroupFactory(Qt,rn);return Qt.propertyIndex=Jt.ix,nn.s.setGroupProperty(PropertyInterface("Start",en)),nn.e.setGroupProperty(PropertyInterface("End",en)),nn.o.setGroupProperty(PropertyInterface("Offset",en)),Qt.propertyIndex=Jt.ix,Qt.propertyGroup=rn,Object.defineProperties(Qt,{start:{get:ExpressionPropertyInterface(nn.s)},end:{get:ExpressionPropertyInterface(nn.e)},offset:{get:ExpressionPropertyInterface(nn.o)},_name:{value:Jt.nm}}),Qt.mn=Jt.mn,Qt}function Wt(Jt,nn,rn){function Qt(tn){return Jt.a.ix===tn||tn==="Anchor Point"?Qt.anchorPoint:Jt.o.ix===tn||tn==="Opacity"?Qt.opacity:Jt.p.ix===tn||tn==="Position"?Qt.position:Jt.r.ix===tn||tn==="Rotation"||tn==="ADBE Vector Rotation"?Qt.rotation:Jt.s.ix===tn||tn==="Scale"?Qt.scale:Jt.sk&&Jt.sk.ix===tn||tn==="Skew"?Qt.skew:Jt.sa&&Jt.sa.ix===tn||tn==="Skew Axis"?Qt.skewAxis:null}var en=propertyGroupFactory(Qt,rn);return nn.transform.mProps.o.setGroupProperty(PropertyInterface("Opacity",en)),nn.transform.mProps.p.setGroupProperty(PropertyInterface("Position",en)),nn.transform.mProps.a.setGroupProperty(PropertyInterface("Anchor Point",en)),nn.transform.mProps.s.setGroupProperty(PropertyInterface("Scale",en)),nn.transform.mProps.r.setGroupProperty(PropertyInterface("Rotation",en)),nn.transform.mProps.sk&&(nn.transform.mProps.sk.setGroupProperty(PropertyInterface("Skew",en)),nn.transform.mProps.sa.setGroupProperty(PropertyInterface("Skew Angle",en))),nn.transform.op.setGroupProperty(PropertyInterface("Opacity",en)),Object.defineProperties(Qt,{opacity:{get:ExpressionPropertyInterface(nn.transform.mProps.o)},position:{get:ExpressionPropertyInterface(nn.transform.mProps.p)},anchorPoint:{get:ExpressionPropertyInterface(nn.transform.mProps.a)},scale:{get:ExpressionPropertyInterface(nn.transform.mProps.s)},rotation:{get:ExpressionPropertyInterface(nn.transform.mProps.r)},skew:{get:ExpressionPropertyInterface(nn.transform.mProps.sk)},skewAxis:{get:ExpressionPropertyInterface(nn.transform.mProps.sa)},_name:{value:Jt.nm}}),Qt.ty="tr",Qt.mn=Jt.mn,Qt.propertyGroup=rn,Qt}function qt(Jt,nn,rn){function Qt(sn){return Jt.p.ix===sn?Qt.position:Jt.s.ix===sn?Qt.size:null}var en=propertyGroupFactory(Qt,rn);Qt.propertyIndex=Jt.ix;var tn=nn.sh.ty==="tm"?nn.sh.prop:nn.sh;return tn.s.setGroupProperty(PropertyInterface("Size",en)),tn.p.setGroupProperty(PropertyInterface("Position",en)),Object.defineProperties(Qt,{size:{get:ExpressionPropertyInterface(tn.s)},position:{get:ExpressionPropertyInterface(tn.p)},_name:{value:Jt.nm}}),Qt.mn=Jt.mn,Qt}function Xt(Jt,nn,rn){function Qt(sn){return Jt.p.ix===sn?Qt.position:Jt.r.ix===sn?Qt.rotation:Jt.pt.ix===sn?Qt.points:Jt.or.ix===sn||sn==="ADBE Vector Star Outer Radius"?Qt.outerRadius:Jt.os.ix===sn?Qt.outerRoundness:Jt.ir&&(Jt.ir.ix===sn||sn==="ADBE Vector Star Inner Radius")?Qt.innerRadius:Jt.is&&Jt.is.ix===sn?Qt.innerRoundness:null}var en=propertyGroupFactory(Qt,rn),tn=nn.sh.ty==="tm"?nn.sh.prop:nn.sh;return Qt.propertyIndex=Jt.ix,tn.or.setGroupProperty(PropertyInterface("Outer Radius",en)),tn.os.setGroupProperty(PropertyInterface("Outer Roundness",en)),tn.pt.setGroupProperty(PropertyInterface("Points",en)),tn.p.setGroupProperty(PropertyInterface("Position",en)),tn.r.setGroupProperty(PropertyInterface("Rotation",en)),Jt.ir&&(tn.ir.setGroupProperty(PropertyInterface("Inner Radius",en)),tn.is.setGroupProperty(PropertyInterface("Inner Roundness",en))),Object.defineProperties(Qt,{position:{get:ExpressionPropertyInterface(tn.p)},rotation:{get:ExpressionPropertyInterface(tn.r)},points:{get:ExpressionPropertyInterface(tn.pt)},outerRadius:{get:ExpressionPropertyInterface(tn.or)},outerRoundness:{get:ExpressionPropertyInterface(tn.os)},innerRadius:{get:ExpressionPropertyInterface(tn.ir)},innerRoundness:{get:ExpressionPropertyInterface(tn.is)},_name:{value:Jt.nm}}),Qt.mn=Jt.mn,Qt}function Kt(Jt,nn,rn){function Qt(sn){return Jt.p.ix===sn?Qt.position:Jt.r.ix===sn?Qt.roundness:Jt.s.ix===sn||sn==="Size"||sn==="ADBE Vector Rect Size"?Qt.size:null}var en=propertyGroupFactory(Qt,rn),tn=nn.sh.ty==="tm"?nn.sh.prop:nn.sh;return Qt.propertyIndex=Jt.ix,tn.p.setGroupProperty(PropertyInterface("Position",en)),tn.s.setGroupProperty(PropertyInterface("Size",en)),tn.r.setGroupProperty(PropertyInterface("Rotation",en)),Object.defineProperties(Qt,{position:{get:ExpressionPropertyInterface(tn.p)},roundness:{get:ExpressionPropertyInterface(tn.r)},size:{get:ExpressionPropertyInterface(tn.s)},_name:{value:Jt.nm}}),Qt.mn=Jt.mn,Qt}function Yt(Jt,nn,rn){function Qt(sn){return Jt.r.ix===sn||sn==="Round Corners 1"?Qt.radius:null}var en=propertyGroupFactory(Qt,rn),tn=nn;return Qt.propertyIndex=Jt.ix,tn.rd.setGroupProperty(PropertyInterface("Radius",en)),Object.defineProperties(Qt,{radius:{get:ExpressionPropertyInterface(tn.rd)},_name:{value:Jt.nm}}),Qt.mn=Jt.mn,Qt}function Zt(Jt,nn,rn){function Qt(sn){return Jt.c.ix===sn||sn==="Copies"?Qt.copies:Jt.o.ix===sn||sn==="Offset"?Qt.offset:null}var en=propertyGroupFactory(Qt,rn),tn=nn;return Qt.propertyIndex=Jt.ix,tn.c.setGroupProperty(PropertyInterface("Copies",en)),tn.o.setGroupProperty(PropertyInterface("Offset",en)),Object.defineProperties(Qt,{copies:{get:ExpressionPropertyInterface(tn.c)},offset:{get:ExpressionPropertyInterface(tn.o)},_name:{value:Jt.nm}}),Qt.mn=Jt.mn,Qt}return function(Jt,nn,rn){var Qt;function en(sn){if(typeof sn=="number")return sn=sn===void 0?1:sn,sn===0?rn:Qt[sn-1];for(var cn=0,un=Qt.length;cn<un;){if(Qt[cn]._name===sn)return Qt[cn];cn+=1}return null}function tn(){return rn}return en.propertyGroup=propertyGroupFactory(en,tn),Qt=kt(Jt,nn,en.propertyGroup),en.numProperties=Qt.length,en._name="Contents",en}}(),TextExpressionInterface=function(){return function(kt){var _e;function Dt(Vt){switch(Vt){case"ADBE Text Document":return Dt.sourceText;default:return null}}return Object.defineProperty(Dt,"sourceText",{get:function(){kt.textProperty.getValue();var Gt=kt.textProperty.currentData.t;return(!_e||Gt!==_e.value)&&(_e=new String(Gt),_e.value=Gt||new String(Gt),Object.defineProperty(_e,"style",{get:function(){return{fillColor:kt.textProperty.currentData.fc}}})),_e}}),Dt}}();function _typeof(kt){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?_typeof=function(Dt){return typeof Dt}:_typeof=function(Dt){return Dt&&typeof Symbol=="function"&&Dt.constructor===Symbol&&Dt!==Symbol.prototype?"symbol":typeof Dt},_typeof(kt)}var FootageInterface=function(){var kt=function(Vt){var Gt="",zt=Vt.getFootageData();function jt(){return Gt="",zt=Vt.getFootageData(),Ht}function Ht(Wt){if(zt[Wt])return Gt=Wt,zt=zt[Wt],_typeof(zt)==="object"?Ht:zt;var qt=Wt.indexOf(Gt);if(qt!==-1){var Xt=parseInt(Wt.substr(qt+Gt.length),10);return zt=zt[Xt],_typeof(zt)==="object"?Ht:zt}return""}return jt},_e=function(Vt){function Gt(zt){return zt==="Outline"?Gt.outlineInterface():null}return Gt._name="Outline",Gt.outlineInterface=kt(Vt),Gt};return function(Dt){function Vt(Gt){return Gt==="Data"?Vt.dataInterface:null}return Vt._name="Data",Vt.dataInterface=_e(Dt),Vt}}(),interfaces={layer:LayerExpressionInterface,effects:EffectsExpressionInterface,comp:CompExpressionInterface,shape:ShapeExpressionInterface,text:TextExpressionInterface,footage:FootageInterface};function getInterface(kt){return interfaces[kt]||null}var expressionHelpers=function(){function kt(jt,Ht,Wt){Ht.x&&(Wt.k=!0,Wt.x=!0,Wt.initiateExpression=ExpressionManager.initiateExpression,Wt.effectsSequence.push(Wt.initiateExpression(jt,Ht,Wt).bind(Wt)))}function _e(jt){return jt*=this.elem.globalData.frameRate,jt-=this.offsetTime,jt!==this._cachingAtTime.lastFrame&&(this._cachingAtTime.lastIndex=this._cachingAtTime.lastFrame<jt?this._cachingAtTime.lastIndex:0,this._cachingAtTime.value=this.interpolateValue(jt,this._cachingAtTime),this._cachingAtTime.lastFrame=jt),this._cachingAtTime.value}function Dt(jt){var Ht=-.01,Wt=this.getValueAtTime(jt),qt=this.getValueAtTime(jt+Ht),Xt=0;if(Wt.length){var Kt;for(Kt=0;Kt<Wt.length;Kt+=1)Xt+=Math.pow(qt[Kt]-Wt[Kt],2);Xt=Math.sqrt(Xt)*100}else Xt=0;return Xt}function Vt(jt){if(this.vel!==void 0)return this.vel;var Ht=-.001,Wt=this.getValueAtTime(jt),qt=this.getValueAtTime(jt+Ht),Xt;if(Wt.length){Xt=createTypedArray("float32",Wt.length);var Kt;for(Kt=0;Kt<Wt.length;Kt+=1)Xt[Kt]=(qt[Kt]-Wt[Kt])/Ht}else Xt=(qt-Wt)/Ht;return Xt}function Gt(){return this.pv}function zt(jt){this.propertyGroup=jt}return{searchExpressions:kt,getSpeedAtTime:Dt,getVelocityAtTime:Vt,getValueAtTime:_e,getStaticValueAtTime:Gt,setGroupProperty:zt}}();function addPropertyDecorator(){function kt(Yt,Zt,Jt){if(!this.k||!this.keyframes)return this.pv;Yt=Yt?Yt.toLowerCase():"";var nn=this.comp.renderedFrame,rn=this.keyframes,Qt=rn[rn.length-1].t;if(nn<=Qt)return this.pv;var en,tn;Jt?(Zt?en=Math.abs(Qt-this.elem.comp.globalData.frameRate*Zt):en=Math.max(0,Qt-this.elem.data.ip),tn=Qt-en):((!Zt||Zt>rn.length-1)&&(Zt=rn.length-1),tn=rn[rn.length-1-Zt].t,en=Qt-tn);var sn,cn,un;if(Yt==="pingpong"){var hn=Math.floor((nn-tn)/en);if(hn%2!==0)return this.getValueAtTime((en-(nn-tn)%en+tn)/this.comp.globalData.frameRate,0)}else if(Yt==="offset"){var dn=this.getValueAtTime(tn/this.comp.globalData.frameRate,0),pn=this.getValueAtTime(Qt/this.comp.globalData.frameRate,0),fn=this.getValueAtTime(((nn-tn)%en+tn)/this.comp.globalData.frameRate,0),mn=Math.floor((nn-tn)/en);if(this.pv.length){for(un=new Array(dn.length),cn=un.length,sn=0;sn<cn;sn+=1)un[sn]=(pn[sn]-dn[sn])*mn+fn[sn];return un}return(pn-dn)*mn+fn}else if(Yt==="continue"){var vn=this.getValueAtTime(Qt/this.comp.globalData.frameRate,0),_n=this.getValueAtTime((Qt-.001)/this.comp.globalData.frameRate,0);if(this.pv.length){for(un=new Array(vn.length),cn=un.length,sn=0;sn<cn;sn+=1)un[sn]=vn[sn]+(vn[sn]-_n[sn])*((nn-Qt)/this.comp.globalData.frameRate)/5e-4;return un}return vn+(vn-_n)*((nn-Qt)/.001)}return this.getValueAtTime(((nn-tn)%en+tn)/this.comp.globalData.frameRate,0)}function _e(Yt,Zt,Jt){if(!this.k)return this.pv;Yt=Yt?Yt.toLowerCase():"";var nn=this.comp.renderedFrame,rn=this.keyframes,Qt=rn[0].t;if(nn>=Qt)return this.pv;var en,tn;Jt?(Zt?en=Math.abs(this.elem.comp.globalData.frameRate*Zt):en=Math.max(0,this.elem.data.op-Qt),tn=Qt+en):((!Zt||Zt>rn.length-1)&&(Zt=rn.length-1),tn=rn[Zt].t,en=tn-Qt);var sn,cn,un;if(Yt==="pingpong"){var hn=Math.floor((Qt-nn)/en);if(hn%2===0)return this.getValueAtTime(((Qt-nn)%en+Qt)/this.comp.globalData.frameRate,0)}else if(Yt==="offset"){var dn=this.getValueAtTime(Qt/this.comp.globalData.frameRate,0),pn=this.getValueAtTime(tn/this.comp.globalData.frameRate,0),fn=this.getValueAtTime((en-(Qt-nn)%en+Qt)/this.comp.globalData.frameRate,0),mn=Math.floor((Qt-nn)/en)+1;if(this.pv.length){for(un=new Array(dn.length),cn=un.length,sn=0;sn<cn;sn+=1)un[sn]=fn[sn]-(pn[sn]-dn[sn])*mn;return un}return fn-(pn-dn)*mn}else if(Yt==="continue"){var vn=this.getValueAtTime(Qt/this.comp.globalData.frameRate,0),_n=this.getValueAtTime((Qt+.001)/this.comp.globalData.frameRate,0);if(this.pv.length){for(un=new Array(vn.length),cn=un.length,sn=0;sn<cn;sn+=1)un[sn]=vn[sn]+(vn[sn]-_n[sn])*(Qt-nn)/.001;return un}return vn+(vn-_n)*(Qt-nn)/.001}return this.getValueAtTime((en-((Qt-nn)%en+Qt))/this.comp.globalData.frameRate,0)}function Dt(Yt,Zt){if(!this.k)return this.pv;if(Yt=(Yt||.4)*.5,Zt=Math.floor(Zt||5),Zt<=1)return this.pv;var Jt=this.comp.renderedFrame/this.comp.globalData.frameRate,nn=Jt-Yt,rn=Jt+Yt,Qt=Zt>1?(rn-nn)/(Zt-1):1,en=0,tn=0,sn;this.pv.length?sn=createTypedArray("float32",this.pv.length):sn=0;for(var cn;en<Zt;){if(cn=this.getValueAtTime(nn+en*Qt),this.pv.length)for(tn=0;tn<this.pv.length;tn+=1)sn[tn]+=cn[tn];else sn+=cn;en+=1}if(this.pv.length)for(tn=0;tn<this.pv.length;tn+=1)sn[tn]/=Zt;else sn/=Zt;return sn}function Vt(Yt){this._transformCachingAtTime||(this._transformCachingAtTime={v:new Matrix});var Zt=this._transformCachingAtTime.v;if(Zt.cloneFromProps(this.pre.props),this.appliedTransformations<1){var Jt=this.a.getValueAtTime(Yt);Zt.translate(-Jt[0]*this.a.mult,-Jt[1]*this.a.mult,Jt[2]*this.a.mult)}if(this.appliedTransformations<2){var nn=this.s.getValueAtTime(Yt);Zt.scale(nn[0]*this.s.mult,nn[1]*this.s.mult,nn[2]*this.s.mult)}if(this.sk&&this.appliedTransformations<3){var rn=this.sk.getValueAtTime(Yt),Qt=this.sa.getValueAtTime(Yt);Zt.skewFromAxis(-rn*this.sk.mult,Qt*this.sa.mult)}if(this.r&&this.appliedTransformations<4){var en=this.r.getValueAtTime(Yt);Zt.rotate(-en*this.r.mult)}else if(!this.r&&this.appliedTransformations<4){var tn=this.rz.getValueAtTime(Yt),sn=this.ry.getValueAtTime(Yt),cn=this.rx.getValueAtTime(Yt),un=this.or.getValueAtTime(Yt);Zt.rotateZ(-tn*this.rz.mult).rotateY(sn*this.ry.mult).rotateX(cn*this.rx.mult).rotateZ(-un[2]*this.or.mult).rotateY(un[1]*this.or.mult).rotateX(un[0]*this.or.mult)}if(this.data.p&&this.data.p.s){var hn=this.px.getValueAtTime(Yt),dn=this.py.getValueAtTime(Yt);if(this.data.p.z){var pn=this.pz.getValueAtTime(Yt);Zt.translate(hn*this.px.mult,dn*this.py.mult,-pn*this.pz.mult)}else Zt.translate(hn*this.px.mult,dn*this.py.mult,0)}else{var fn=this.p.getValueAtTime(Yt);Zt.translate(fn[0]*this.p.mult,fn[1]*this.p.mult,-fn[2]*this.p.mult)}return Zt}function Gt(){return this.v.clone(new Matrix)}var zt=TransformPropertyFactory.getTransformProperty;TransformPropertyFactory.getTransformProperty=function(Yt,Zt,Jt){var nn=zt(Yt,Zt,Jt);return nn.dynamicProperties.length?nn.getValueAtTime=Vt.bind(nn):nn.getValueAtTime=Gt.bind(nn),nn.setGroupProperty=expressionHelpers.setGroupProperty,nn};var jt=PropertyFactory.getProp;PropertyFactory.getProp=function(Yt,Zt,Jt,nn,rn){var Qt=jt(Yt,Zt,Jt,nn,rn);Qt.kf?Qt.getValueAtTime=expressionHelpers.getValueAtTime.bind(Qt):Qt.getValueAtTime=expressionHelpers.getStaticValueAtTime.bind(Qt),Qt.setGroupProperty=expressionHelpers.setGroupProperty,Qt.loopOut=kt,Qt.loopIn=_e,Qt.smooth=Dt,Qt.getVelocityAtTime=expressionHelpers.getVelocityAtTime.bind(Qt),Qt.getSpeedAtTime=expressionHelpers.getSpeedAtTime.bind(Qt),Qt.numKeys=Zt.a===1?Zt.k.length:0,Qt.propertyIndex=Zt.ix;var en=0;return Jt!==0&&(en=createTypedArray("float32",Zt.a===1?Zt.k[0].s.length:Zt.k.length)),Qt._cachingAtTime={lastFrame:initialDefaultFrame,lastIndex:0,value:en},expressionHelpers.searchExpressions(Yt,Zt,Qt),Qt.k&&rn.addDynamicProperty(Qt),Qt};function Ht(Yt){return this._cachingAtTime||(this._cachingAtTime={shapeValue:shapePool.clone(this.pv),lastIndex:0,lastTime:initialDefaultFrame}),Yt*=this.elem.globalData.frameRate,Yt-=this.offsetTime,Yt!==this._cachingAtTime.lastTime&&(this._cachingAtTime.lastIndex=this._cachingAtTime.lastTime<Yt?this._caching.lastIndex:0,this._cachingAtTime.lastTime=Yt,this.interpolateShape(Yt,this._cachingAtTime.shapeValue,this._cachingAtTime)),this._cachingAtTime.shapeValue}var Wt=ShapePropertyFactory.getConstructorFunction(),qt=ShapePropertyFactory.getKeyframedConstructorFunction();function Xt(){}Xt.prototype={vertices:function(Zt,Jt){this.k&&this.getValue();var nn=this.v;Jt!==void 0&&(nn=this.getValueAtTime(Jt,0));var rn,Qt=nn._length,en=nn[Zt],tn=nn.v,sn=createSizedArray(Qt);for(rn=0;rn<Qt;rn+=1)Zt==="i"||Zt==="o"?sn[rn]=[en[rn][0]-tn[rn][0],en[rn][1]-tn[rn][1]]:sn[rn]=[en[rn][0],en[rn][1]];return sn},points:function(Zt){return this.vertices("v",Zt)},inTangents:function(Zt){return this.vertices("i",Zt)},outTangents:function(Zt){return this.vertices("o",Zt)},isClosed:function(){return this.v.c},pointOnPath:function(Zt,Jt){var nn=this.v;Jt!==void 0&&(nn=this.getValueAtTime(Jt,0)),this._segmentsLength||(this._segmentsLength=bez.getSegmentsLength(nn));for(var rn=this._segmentsLength,Qt=rn.lengths,en=rn.totalLength*Zt,tn=0,sn=Qt.length,cn=0,un;tn<sn;){if(cn+Qt[tn].addedLength>en){var hn=tn,dn=nn.c&&tn===sn-1?0:tn+1,pn=(en-cn)/Qt[tn].addedLength;un=bez.getPointInSegment(nn.v[hn],nn.v[dn],nn.o[hn],nn.i[dn],pn,Qt[tn]);break}else cn+=Qt[tn].addedLength;tn+=1}return un||(un=nn.c?[nn.v[0][0],nn.v[0][1]]:[nn.v[nn._length-1][0],nn.v[nn._length-1][1]]),un},vectorOnPath:function(Zt,Jt,nn){Zt==1?Zt=this.v.c:Zt==0&&(Zt=.999);var rn=this.pointOnPath(Zt,Jt),Qt=this.pointOnPath(Zt+.001,Jt),en=Qt[0]-rn[0],tn=Qt[1]-rn[1],sn=Math.sqrt(Math.pow(en,2)+Math.pow(tn,2));if(sn===0)return[0,0];var cn=nn==="tangent"?[en/sn,tn/sn]:[-tn/sn,en/sn];return cn},tangentOnPath:function(Zt,Jt){return this.vectorOnPath(Zt,Jt,"tangent")},normalOnPath:function(Zt,Jt){return this.vectorOnPath(Zt,Jt,"normal")},setGroupProperty:expressionHelpers.setGroupProperty,getValueAtTime:expressionHelpers.getStaticValueAtTime},extendPrototype([Xt],Wt),extendPrototype([Xt],qt),qt.prototype.getValueAtTime=Ht,qt.prototype.initiateExpression=ExpressionManager.initiateExpression;var Kt=ShapePropertyFactory.getShapeProp;ShapePropertyFactory.getShapeProp=function(Yt,Zt,Jt,nn,rn){var Qt=Kt(Yt,Zt,Jt,nn,rn);return Qt.propertyIndex=Zt.ix,Qt.lock=!1,Jt===3?expressionHelpers.searchExpressions(Yt,Zt.pt,Qt):Jt===4&&expressionHelpers.searchExpressions(Yt,Zt.ks,Qt),Qt.k&&Yt.addDynamicProperty(Qt),Qt}}function initialize$1(){addPropertyDecorator()}function addDecorator(){function kt(){return this.data.d.x?(this.calculateExpression=ExpressionManager.initiateExpression.bind(this)(this.elem,this.data.d,this),this.addEffect(this.getExpressionValue.bind(this)),!0):null}TextProperty.prototype.getExpressionValue=function(_e,Dt){var Vt=this.calculateExpression(Dt);if(_e.t!==Vt){var Gt={};return this.copyData(Gt,_e),Gt.t=Vt.toString(),Gt.__complete=!1,Gt}return _e},TextProperty.prototype.searchProperty=function(){var _e=this.searchKeyframes(),Dt=this.searchExpressions();return this.kf=_e||Dt,this.kf},TextProperty.prototype.searchExpressions=kt}function initialize(){addDecorator()}function SVGComposableEffect(){}SVGComposableEffect.prototype={createMergeNode:function kt(_e,Dt){var Vt=createNS("feMerge");Vt.setAttribute("result",_e);var Gt,zt;for(zt=0;zt<Dt.length;zt+=1)Gt=createNS("feMergeNode"),Gt.setAttribute("in",Dt[zt]),Vt.appendChild(Gt),Vt.appendChild(Gt);return Vt}};var linearFilterValue="0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0";function SVGTintFilter(kt,_e,Dt,Vt,Gt){this.filterManager=_e;var zt=createNS("feColorMatrix");zt.setAttribute("type","matrix"),zt.setAttribute("color-interpolation-filters","linearRGB"),zt.setAttribute("values",linearFilterValue+" 1 0"),this.linearFilter=zt,zt.setAttribute("result",Vt+"_tint_1"),kt.appendChild(zt),zt=createNS("feColorMatrix"),zt.setAttribute("type","matrix"),zt.setAttribute("color-interpolation-filters","sRGB"),zt.setAttribute("values","1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0"),zt.setAttribute("result",Vt+"_tint_2"),kt.appendChild(zt),this.matrixFilter=zt;var jt=this.createMergeNode(Vt,[Gt,Vt+"_tint_1",Vt+"_tint_2"]);kt.appendChild(jt)}extendPrototype([SVGComposableEffect],SVGTintFilter),SVGTintFilter.prototype.renderFrame=function(kt){if(kt||this.filterManager._mdf){var _e=this.filterManager.effectElements[0].p.v,Dt=this.filterManager.effectElements[1].p.v,Vt=this.filterManager.effectElements[2].p.v/100;this.linearFilter.setAttribute("values",linearFilterValue+" "+Vt+" 0"),this.matrixFilter.setAttribute("values",Dt[0]-_e[0]+" 0 0 0 "+_e[0]+" "+(Dt[1]-_e[1])+" 0 0 0 "+_e[1]+" "+(Dt[2]-_e[2])+" 0 0 0 "+_e[2]+" 0 0 0 1 0")}};function SVGFillFilter(kt,_e,Dt,Vt){this.filterManager=_e;var Gt=createNS("feColorMatrix");Gt.setAttribute("type","matrix"),Gt.setAttribute("color-interpolation-filters","sRGB"),Gt.setAttribute("values","1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0"),Gt.setAttribute("result",Vt),kt.appendChild(Gt),this.matrixFilter=Gt}SVGFillFilter.prototype.renderFrame=function(kt){if(kt||this.filterManager._mdf){var _e=this.filterManager.effectElements[2].p.v,Dt=this.filterManager.effectElements[6].p.v;this.matrixFilter.setAttribute("values","0 0 0 0 "+_e[0]+" 0 0 0 0 "+_e[1]+" 0 0 0 0 "+_e[2]+" 0 0 0 "+Dt+" 0")}};function SVGStrokeEffect(kt,_e,Dt){this.initialized=!1,this.filterManager=_e,this.elem=Dt,this.paths=[]}SVGStrokeEffect.prototype.initialize=function(){var kt=this.elem.layerElement.children||this.elem.layerElement.childNodes,_e,Dt,Vt,Gt;for(this.filterManager.effectElements[1].p.v===1?(Gt=this.elem.maskManager.masksProperties.length,Vt=0):(Vt=this.filterManager.effectElements[0].p.v-1,Gt=Vt+1),Dt=createNS("g"),Dt.setAttribute("fill","none"),Dt.setAttribute("stroke-linecap","round"),Dt.setAttribute("stroke-dashoffset",1),Vt;Vt<Gt;Vt+=1)_e=createNS("path"),Dt.appendChild(_e),this.paths.push({p:_e,m:Vt});if(this.filterManager.effectElements[10].p.v===3){var zt=createNS("mask"),jt=createElementID();zt.setAttribute("id",jt),zt.setAttribute("mask-type","alpha"),zt.appendChild(Dt),this.elem.globalData.defs.appendChild(zt);var Ht=createNS("g");for(Ht.setAttribute("mask","url("+getLocationHref()+"#"+jt+")");kt[0];)Ht.appendChild(kt[0]);this.elem.layerElement.appendChild(Ht),this.masker=zt,Dt.setAttribute("stroke","#fff")}else if(this.filterManager.effectElements[10].p.v===1||this.filterManager.effectElements[10].p.v===2){if(this.filterManager.effectElements[10].p.v===2)for(kt=this.elem.layerElement.children||this.elem.layerElement.childNodes;kt.length;)this.elem.layerElement.removeChild(kt[0]);this.elem.layerElement.appendChild(Dt),this.elem.layerElement.removeAttribute("mask"),Dt.setAttribute("stroke","#fff")}this.initialized=!0,this.pathMasker=Dt},SVGStrokeEffect.prototype.renderFrame=function(kt){this.initialized||this.initialize();var _e,Dt=this.paths.length,Vt,Gt;for(_e=0;_e<Dt;_e+=1)if(this.paths[_e].m!==-1&&(Vt=this.elem.maskManager.viewData[this.paths[_e].m],Gt=this.paths[_e].p,(kt||this.filterManager._mdf||Vt.prop._mdf)&&Gt.setAttribute("d",Vt.lastPath),kt||this.filterManager.effectElements[9].p._mdf||this.filterManager.effectElements[4].p._mdf||this.filterManager.effectElements[7].p._mdf||this.filterManager.effectElements[8].p._mdf||Vt.prop._mdf)){var zt;if(this.filterManager.effectElements[7].p.v!==0||this.filterManager.effectElements[8].p.v!==100){var jt=Math.min(this.filterManager.effectElements[7].p.v,this.filterManager.effectElements[8].p.v)*.01,Ht=Math.max(this.filterManager.effectElements[7].p.v,this.filterManager.effectElements[8].p.v)*.01,Wt=Gt.getTotalLength();zt="0 0 0 "+Wt*jt+" ";var qt=Wt*(Ht-jt),Xt=1+this.filterManager.effectElements[4].p.v*2*this.filterManager.effectElements[9].p.v*.01,Kt=Math.floor(qt/Xt),Yt;for(Yt=0;Yt<Kt;Yt+=1)zt+="1 "+this.filterManager.effectElements[4].p.v*2*this.filterManager.effectElements[9].p.v*.01+" ";zt+="0 "+Wt*10+" 0 0"}else zt="1 "+this.filterManager.effectElements[4].p.v*2*this.filterManager.effectElements[9].p.v*.01;Gt.setAttribute("stroke-dasharray",zt)}if((kt||this.filterManager.effectElements[4].p._mdf)&&this.pathMasker.setAttribute("stroke-width",this.filterManager.effectElements[4].p.v*2),(kt||this.filterManager.effectElements[6].p._mdf)&&this.pathMasker.setAttribute("opacity",this.filterManager.effectElements[6].p.v),(this.filterManager.effectElements[10].p.v===1||this.filterManager.effectElements[10].p.v===2)&&(kt||this.filterManager.effectElements[3].p._mdf)){var Zt=this.filterManager.effectElements[3].p.v;this.pathMasker.setAttribute("stroke","rgb("+bmFloor(Zt[0]*255)+","+bmFloor(Zt[1]*255)+","+bmFloor(Zt[2]*255)+")")}};function SVGTritoneFilter(kt,_e,Dt,Vt){this.filterManager=_e;var Gt=createNS("feColorMatrix");Gt.setAttribute("type","matrix"),Gt.setAttribute("color-interpolation-filters","linearRGB"),Gt.setAttribute("values","0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0"),kt.appendChild(Gt);var zt=createNS("feComponentTransfer");zt.setAttribute("color-interpolation-filters","sRGB"),zt.setAttribute("result",Vt),this.matrixFilter=zt;var jt=createNS("feFuncR");jt.setAttribute("type","table"),zt.appendChild(jt),this.feFuncR=jt;var Ht=createNS("feFuncG");Ht.setAttribute("type","table"),zt.appendChild(Ht),this.feFuncG=Ht;var Wt=createNS("feFuncB");Wt.setAttribute("type","table"),zt.appendChild(Wt),this.feFuncB=Wt,kt.appendChild(zt)}SVGTritoneFilter.prototype.renderFrame=function(kt){if(kt||this.filterManager._mdf){var _e=this.filterManager.effectElements[0].p.v,Dt=this.filterManager.effectElements[1].p.v,Vt=this.filterManager.effectElements[2].p.v,Gt=Vt[0]+" "+Dt[0]+" "+_e[0],zt=Vt[1]+" "+Dt[1]+" "+_e[1],jt=Vt[2]+" "+Dt[2]+" "+_e[2];this.feFuncR.setAttribute("tableValues",Gt),this.feFuncG.setAttribute("tableValues",zt),this.feFuncB.setAttribute("tableValues",jt)}};function SVGProLevelsFilter(kt,_e,Dt,Vt){this.filterManager=_e;var Gt=this.filterManager.effectElements,zt=createNS("feComponentTransfer");(Gt[10].p.k||Gt[10].p.v!==0||Gt[11].p.k||Gt[11].p.v!==1||Gt[12].p.k||Gt[12].p.v!==1||Gt[13].p.k||Gt[13].p.v!==0||Gt[14].p.k||Gt[14].p.v!==1)&&(this.feFuncR=this.createFeFunc("feFuncR",zt)),(Gt[17].p.k||Gt[17].p.v!==0||Gt[18].p.k||Gt[18].p.v!==1||Gt[19].p.k||Gt[19].p.v!==1||Gt[20].p.k||Gt[20].p.v!==0||Gt[21].p.k||Gt[21].p.v!==1)&&(this.feFuncG=this.createFeFunc("feFuncG",zt)),(Gt[24].p.k||Gt[24].p.v!==0||Gt[25].p.k||Gt[25].p.v!==1||Gt[26].p.k||Gt[26].p.v!==1||Gt[27].p.k||Gt[27].p.v!==0||Gt[28].p.k||Gt[28].p.v!==1)&&(this.feFuncB=this.createFeFunc("feFuncB",zt)),(Gt[31].p.k||Gt[31].p.v!==0||Gt[32].p.k||Gt[32].p.v!==1||Gt[33].p.k||Gt[33].p.v!==1||Gt[34].p.k||Gt[34].p.v!==0||Gt[35].p.k||Gt[35].p.v!==1)&&(this.feFuncA=this.createFeFunc("feFuncA",zt)),(this.feFuncR||this.feFuncG||this.feFuncB||this.feFuncA)&&(zt.setAttribute("color-interpolation-filters","sRGB"),kt.appendChild(zt)),(Gt[3].p.k||Gt[3].p.v!==0||Gt[4].p.k||Gt[4].p.v!==1||Gt[5].p.k||Gt[5].p.v!==1||Gt[6].p.k||Gt[6].p.v!==0||Gt[7].p.k||Gt[7].p.v!==1)&&(zt=createNS("feComponentTransfer"),zt.setAttribute("color-interpolation-filters","sRGB"),zt.setAttribute("result",Vt),kt.appendChild(zt),this.feFuncRComposed=this.createFeFunc("feFuncR",zt),this.feFuncGComposed=this.createFeFunc("feFuncG",zt),this.feFuncBComposed=this.createFeFunc("feFuncB",zt))}SVGProLevelsFilter.prototype.createFeFunc=function(kt,_e){var Dt=createNS(kt);return Dt.setAttribute("type","table"),_e.appendChild(Dt),Dt},SVGProLevelsFilter.prototype.getTableValue=function(kt,_e,Dt,Vt,Gt){for(var zt=0,jt=256,Ht,Wt=Math.min(kt,_e),qt=Math.max(kt,_e),Xt=Array.call(null,{length:jt}),Kt,Yt=0,Zt=Gt-Vt,Jt=_e-kt;zt<=256;)Ht=zt/256,Ht<=Wt?Kt=Jt<0?Gt:Vt:Ht>=qt?Kt=Jt<0?Vt:Gt:Kt=Vt+Zt*Math.pow((Ht-kt)/Jt,1/Dt),Xt[Yt]=Kt,Yt+=1,zt+=256/(jt-1);return Xt.join(" ")},SVGProLevelsFilter.prototype.renderFrame=function(kt){if(kt||this.filterManager._mdf){var _e,Dt=this.filterManager.effectElements;this.feFuncRComposed&&(kt||Dt[3].p._mdf||Dt[4].p._mdf||Dt[5].p._mdf||Dt[6].p._mdf||Dt[7].p._mdf)&&(_e=this.getTableValue(Dt[3].p.v,Dt[4].p.v,Dt[5].p.v,Dt[6].p.v,Dt[7].p.v),this.feFuncRComposed.setAttribute("tableValues",_e),this.feFuncGComposed.setAttribute("tableValues",_e),this.feFuncBComposed.setAttribute("tableValues",_e)),this.feFuncR&&(kt||Dt[10].p._mdf||Dt[11].p._mdf||Dt[12].p._mdf||Dt[13].p._mdf||Dt[14].p._mdf)&&(_e=this.getTableValue(Dt[10].p.v,Dt[11].p.v,Dt[12].p.v,Dt[13].p.v,Dt[14].p.v),this.feFuncR.setAttribute("tableValues",_e)),this.feFuncG&&(kt||Dt[17].p._mdf||Dt[18].p._mdf||Dt[19].p._mdf||Dt[20].p._mdf||Dt[21].p._mdf)&&(_e=this.getTableValue(Dt[17].p.v,Dt[18].p.v,Dt[19].p.v,Dt[20].p.v,Dt[21].p.v),this.feFuncG.setAttribute("tableValues",_e)),this.feFuncB&&(kt||Dt[24].p._mdf||Dt[25].p._mdf||Dt[26].p._mdf||Dt[27].p._mdf||Dt[28].p._mdf)&&(_e=this.getTableValue(Dt[24].p.v,Dt[25].p.v,Dt[26].p.v,Dt[27].p.v,Dt[28].p.v),this.feFuncB.setAttribute("tableValues",_e)),this.feFuncA&&(kt||Dt[31].p._mdf||Dt[32].p._mdf||Dt[33].p._mdf||Dt[34].p._mdf||Dt[35].p._mdf)&&(_e=this.getTableValue(Dt[31].p.v,Dt[32].p.v,Dt[33].p.v,Dt[34].p.v,Dt[35].p.v),this.feFuncA.setAttribute("tableValues",_e))}};function SVGDropShadowEffect(kt,_e,Dt,Vt,Gt){var zt=_e.container.globalData.renderConfig.filterSize,jt=_e.data.fs||zt;kt.setAttribute("x",jt.x||zt.x),kt.setAttribute("y",jt.y||zt.y),kt.setAttribute("width",jt.width||zt.width),kt.setAttribute("height",jt.height||zt.height),this.filterManager=_e;var Ht=createNS("feGaussianBlur");Ht.setAttribute("in","SourceAlpha"),Ht.setAttribute("result",Vt+"_drop_shadow_1"),Ht.setAttribute("stdDeviation","0"),this.feGaussianBlur=Ht,kt.appendChild(Ht);var Wt=createNS("feOffset");Wt.setAttribute("dx","25"),Wt.setAttribute("dy","0"),Wt.setAttribute("in",Vt+"_drop_shadow_1"),Wt.setAttribute("result",Vt+"_drop_shadow_2"),this.feOffset=Wt,kt.appendChild(Wt);var qt=createNS("feFlood");qt.setAttribute("flood-color","#00ff00"),qt.setAttribute("flood-opacity","1"),qt.setAttribute("result",Vt+"_drop_shadow_3"),this.feFlood=qt,kt.appendChild(qt);var Xt=createNS("feComposite");Xt.setAttribute("in",Vt+"_drop_shadow_3"),Xt.setAttribute("in2",Vt+"_drop_shadow_2"),Xt.setAttribute("operator","in"),Xt.setAttribute("result",Vt+"_drop_shadow_4"),kt.appendChild(Xt);var Kt=this.createMergeNode(Vt,[Vt+"_drop_shadow_4",Gt]);kt.appendChild(Kt)}extendPrototype([SVGComposableEffect],SVGDropShadowEffect),SVGDropShadowEffect.prototype.renderFrame=function(kt){if(kt||this.filterManager._mdf){if((kt||this.filterManager.effectElements[4].p._mdf)&&this.feGaussianBlur.setAttribute("stdDeviation",this.filterManager.effectElements[4].p.v/4),kt||this.filterManager.effectElements[0].p._mdf){var _e=this.filterManager.effectElements[0].p.v;this.feFlood.setAttribute("flood-color",rgbToHex(Math.round(_e[0]*255),Math.round(_e[1]*255),Math.round(_e[2]*255)))}if((kt||this.filterManager.effectElements[1].p._mdf)&&this.feFlood.setAttribute("flood-opacity",this.filterManager.effectElements[1].p.v/255),kt||this.filterManager.effectElements[2].p._mdf||this.filterManager.effectElements[3].p._mdf){var Dt=this.filterManager.effectElements[3].p.v,Vt=(this.filterManager.effectElements[2].p.v-90)*degToRads,Gt=Dt*Math.cos(Vt),zt=Dt*Math.sin(Vt);this.feOffset.setAttribute("dx",Gt),this.feOffset.setAttribute("dy",zt)}}};var _svgMatteSymbols=[];function SVGMatte3Effect(kt,_e,Dt){this.initialized=!1,this.filterManager=_e,this.filterElem=kt,this.elem=Dt,Dt.matteElement=createNS("g"),Dt.matteElement.appendChild(Dt.layerElement),Dt.matteElement.appendChild(Dt.transformedElement),Dt.baseElement=Dt.matteElement}SVGMatte3Effect.prototype.findSymbol=function(kt){for(var _e=0,Dt=_svgMatteSymbols.length;_e<Dt;){if(_svgMatteSymbols[_e]===kt)return _svgMatteSymbols[_e];_e+=1}return null},SVGMatte3Effect.prototype.replaceInParent=function(kt,_e){var Dt=kt.layerElement.parentNode;if(Dt){for(var Vt=Dt.children,Gt=0,zt=Vt.length;Gt<zt&&Vt[Gt]!==kt.layerElement;)Gt+=1;var jt;Gt<=zt-2&&(jt=Vt[Gt+1]);var Ht=createNS("use");Ht.setAttribute("href","#"+_e),jt?Dt.insertBefore(Ht,jt):Dt.appendChild(Ht)}},SVGMatte3Effect.prototype.setElementAsMask=function(kt,_e){if(!this.findSymbol(_e)){var Dt=createElementID(),Vt=createNS("mask");Vt.setAttribute("id",_e.layerId),Vt.setAttribute("mask-type","alpha"),_svgMatteSymbols.push(_e);var Gt=kt.globalData.defs;Gt.appendChild(Vt);var zt=createNS("symbol");zt.setAttribute("id",Dt),this.replaceInParent(_e,Dt),zt.appendChild(_e.layerElement),Gt.appendChild(zt);var jt=createNS("use");jt.setAttribute("href","#"+Dt),Vt.appendChild(jt),_e.data.hd=!1,_e.show()}kt.setMatte(_e.layerId)},SVGMatte3Effect.prototype.initialize=function(){for(var kt=this.filterManager.effectElements[0].p.v,_e=this.elem.comp.elements,Dt=0,Vt=_e.length;Dt<Vt;)_e[Dt]&&_e[Dt].data.ind===kt&&this.setElementAsMask(this.elem,_e[Dt]),Dt+=1;this.initialized=!0},SVGMatte3Effect.prototype.renderFrame=function(){this.initialized||this.initialize()};function SVGGaussianBlurEffect(kt,_e,Dt,Vt){kt.setAttribute("x","-100%"),kt.setAttribute("y","-100%"),kt.setAttribute("width","300%"),kt.setAttribute("height","300%"),this.filterManager=_e;var Gt=createNS("feGaussianBlur");Gt.setAttribute("result",Vt),kt.appendChild(Gt),this.feGaussianBlur=Gt}SVGGaussianBlurEffect.prototype.renderFrame=function(kt){if(kt||this.filterManager._mdf){var _e=.3,Dt=this.filterManager.effectElements[0].p.v*_e,Vt=this.filterManager.effectElements[1].p.v,Gt=Vt==3?0:Dt,zt=Vt==2?0:Dt;this.feGaussianBlur.setAttribute("stdDeviation",Gt+" "+zt);var jt=this.filterManager.effectElements[2].p.v==1?"wrap":"duplicate";this.feGaussianBlur.setAttribute("edgeMode",jt)}};function TransformEffect(){}TransformEffect.prototype.init=function(kt){this.effectsManager=kt,this.type=effectTypes.TRANSFORM_EFFECT,this.matrix=new Matrix,this.opacity=-1,this._mdf=!1,this._opMdf=!1},TransformEffect.prototype.renderFrame=function(kt){if(this._opMdf=!1,this._mdf=!1,kt||this.effectsManager._mdf){var _e=this.effectsManager.effectElements,Dt=_e[0].p.v,Vt=_e[1].p.v,Gt=_e[2].p.v===1,zt=_e[3].p.v,jt=Gt?zt:_e[4].p.v,Ht=_e[5].p.v,Wt=_e[6].p.v,qt=_e[7].p.v;this.matrix.reset(),this.matrix.translate(-Dt[0],-Dt[1],Dt[2]),this.matrix.scale(jt*.01,zt*.01,1),this.matrix.rotate(-qt*degToRads),this.matrix.skewFromAxis(-Ht*degToRads,(Wt+90)*degToRads),this.matrix.translate(Vt[0],Vt[1],0),this._mdf=!0,this.opacity!==_e[8].p.v&&(this.opacity=_e[8].p.v,this._opMdf=!0)}};function SVGTransformEffect(kt,_e){this.init(_e)}extendPrototype([TransformEffect],SVGTransformEffect);function CVTransformEffect(kt){this.init(kt)}return extendPrototype([TransformEffect],CVTransformEffect),registerRenderer("canvas",CanvasRenderer),registerRenderer("html",HybridRenderer),registerRenderer("svg",SVGRenderer),ShapeModifiers.registerModifier("tm",TrimModifier),ShapeModifiers.registerModifier("pb",PuckerAndBloatModifier),ShapeModifiers.registerModifier("rp",RepeaterModifier),ShapeModifiers.registerModifier("rd",RoundCornersModifier),ShapeModifiers.registerModifier("zz",ZigZagModifier),ShapeModifiers.registerModifier("op",OffsetPathModifier),setExpressionsPlugin(Expressions),setExpressionInterfaces(getInterface),initialize$1(),initialize(),registerEffect$1(20,SVGTintFilter,!0),registerEffect$1(21,SVGFillFilter,!0),registerEffect$1(22,SVGStrokeEffect,!1),registerEffect$1(23,SVGTritoneFilter,!0),registerEffect$1(24,SVGProLevelsFilter,!0),registerEffect$1(25,SVGDropShadowEffect,!0),registerEffect$1(28,SVGMatte3Effect,!1),registerEffect$1(29,SVGGaussianBlurEffect,!0),registerEffect$1(35,SVGTransformEffect,!1),registerEffect(35,CVTransformEffect),lottie})})(lottie$1,lottie$1.exports);var lottieExports=lottie$1.exports;const lottie=getDefaultExportFromCjs(lottieExports);function _iterableToArrayLimit(kt,_e){var Dt=kt==null?null:typeof Symbol<"u"&&kt[Symbol.iterator]||kt["@@iterator"];if(Dt!=null){var Vt,Gt,zt,jt,Ht=[],Wt=!0,qt=!1;try{if(zt=(Dt=Dt.call(kt)).next,_e===0){if(Object(Dt)!==Dt)return;Wt=!1}else for(;!(Wt=(Vt=zt.call(Dt)).done)&&(Ht.push(Vt.value),Ht.length!==_e);Wt=!0);}catch(Xt){qt=!0,Gt=Xt}finally{try{if(!Wt&&Dt.return!=null&&(jt=Dt.return(),Object(jt)!==jt))return}finally{if(qt)throw Gt}}return Ht}}function ownKeys$1(kt,_e){var Dt=Object.keys(kt);if(Object.getOwnPropertySymbols){var Vt=Object.getOwnPropertySymbols(kt);_e&&(Vt=Vt.filter(function(Gt){return Object.getOwnPropertyDescriptor(kt,Gt).enumerable})),Dt.push.apply(Dt,Vt)}return Dt}function _objectSpread2$1(kt){for(var _e=1;_e<arguments.length;_e++){var Dt=arguments[_e]!=null?arguments[_e]:{};_e%2?ownKeys$1(Object(Dt),!0).forEach(function(Vt){_defineProperty$1(kt,Vt,Dt[Vt])}):Object.getOwnPropertyDescriptors?Object.defineProperties(kt,Object.getOwnPropertyDescriptors(Dt)):ownKeys$1(Object(Dt)).forEach(function(Vt){Object.defineProperty(kt,Vt,Object.getOwnPropertyDescriptor(Dt,Vt))})}return kt}function _defineProperty$1(kt,_e,Dt){return _e=_toPropertyKey$1(_e),_e in kt?Object.defineProperty(kt,_e,{value:Dt,enumerable:!0,configurable:!0,writable:!0}):kt[_e]=Dt,kt}function _objectWithoutPropertiesLoose$1(kt,_e){if(kt==null)return{};var Dt={},Vt=Object.keys(kt),Gt,zt;for(zt=0;zt<Vt.length;zt++)Gt=Vt[zt],!(_e.indexOf(Gt)>=0)&&(Dt[Gt]=kt[Gt]);return Dt}function _objectWithoutProperties$1(kt,_e){if(kt==null)return{};var Dt=_objectWithoutPropertiesLoose$1(kt,_e),Vt,Gt;if(Object.getOwnPropertySymbols){var zt=Object.getOwnPropertySymbols(kt);for(Gt=0;Gt<zt.length;Gt++)Vt=zt[Gt],!(_e.indexOf(Vt)>=0)&&Object.prototype.propertyIsEnumerable.call(kt,Vt)&&(Dt[Vt]=kt[Vt])}return Dt}function _slicedToArray(kt,_e){return _arrayWithHoles(kt)||_iterableToArrayLimit(kt,_e)||_unsupportedIterableToArray(kt,_e)||_nonIterableRest()}function _arrayWithHoles(kt){if(Array.isArray(kt))return kt}function _unsupportedIterableToArray(kt,_e){if(kt){if(typeof kt=="string")return _arrayLikeToArray(kt,_e);var Dt=Object.prototype.toString.call(kt).slice(8,-1);if(Dt==="Object"&&kt.constructor&&(Dt=kt.constructor.name),Dt==="Map"||Dt==="Set")return Array.from(kt);if(Dt==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(Dt))return _arrayLikeToArray(kt,_e)}}function _arrayLikeToArray(kt,_e){(_e==null||_e>kt.length)&&(_e=kt.length);for(var Dt=0,Vt=new Array(_e);Dt<_e;Dt++)Vt[Dt]=kt[Dt];return Vt}function _nonIterableRest(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
3950
3950
|
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function _toPrimitive$1(kt,_e){if(typeof kt!="object"||kt===null)return kt;var Dt=kt[Symbol.toPrimitive];if(Dt!==void 0){var Vt=Dt.call(kt,_e||"default");if(typeof Vt!="object")return Vt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(_e==="string"?String:Number)(kt)}function _toPropertyKey$1(kt){var _e=_toPrimitive$1(kt,"string");return typeof _e=="symbol"?_e:String(_e)}var _excluded$1=["animationData","loop","autoplay","initialSegment","onComplete","onLoopComplete","onEnterFrame","onSegmentStart","onConfigReady","onDataReady","onDataFailed","onLoadedImages","onDOMLoaded","onDestroy","lottieRef","renderer","name","assetsPath","rendererSettings"],useLottie=function kt(_e,Dt){var Vt=_e.animationData,Gt=_e.loop,zt=_e.autoplay,jt=_e.initialSegment,Ht=_e.onComplete,Wt=_e.onLoopComplete,qt=_e.onEnterFrame,Xt=_e.onSegmentStart,Kt=_e.onConfigReady,Yt=_e.onDataReady,Zt=_e.onDataFailed,Jt=_e.onLoadedImages,nn=_e.onDOMLoaded,rn=_e.onDestroy;_e.lottieRef,_e.renderer,_e.name,_e.assetsPath,_e.rendererSettings;var Qt=_objectWithoutProperties$1(_e,_excluded$1),en=reactExports.useState(!1),tn=_slicedToArray(en,2),sn=tn[0],cn=tn[1],un=reactExports.useRef(),hn=reactExports.useRef(null),dn=function(){var Rn;(Rn=un.current)===null||Rn===void 0||Rn.play()},pn=function(){var Rn;(Rn=un.current)===null||Rn===void 0||Rn.stop()},fn=function(){var Rn;(Rn=un.current)===null||Rn===void 0||Rn.pause()},mn=function(Rn){var Dn;(Dn=un.current)===null||Dn===void 0||Dn.setSpeed(Rn)},vn=function(Rn,Dn){var kn;(kn=un.current)===null||kn===void 0||kn.goToAndPlay(Rn,Dn)},_n=function(Rn,Dn){var kn;(kn=un.current)===null||kn===void 0||kn.goToAndStop(Rn,Dn)},En=function(Rn){var Dn;(Dn=un.current)===null||Dn===void 0||Dn.setDirection(Rn)},An=function(Rn,Dn){var kn;(kn=un.current)===null||kn===void 0||kn.playSegments(Rn,Dn)},Tn=function(Rn){var Dn;(Dn=un.current)===null||Dn===void 0||Dn.setSubframe(Rn)},Cn=function(Rn){var Dn;return(Dn=un.current)===null||Dn===void 0?void 0:Dn.getDuration(Rn)},yn=function(){var Rn;(Rn=un.current)===null||Rn===void 0||Rn.destroy(),un.current=void 0},Sn=function(){var Rn=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},Dn;if(hn.current){(Dn=un.current)===null||Dn===void 0||Dn.destroy();var kn=_objectSpread2$1(_objectSpread2$1(_objectSpread2$1({},_e),Rn),{},{container:hn.current});return un.current=lottie.loadAnimation(kn),cn(!!un.current),function(){var Fn;(Fn=un.current)===null||Fn===void 0||Fn.destroy(),un.current=void 0}}};reactExports.useEffect(function(){var xn=Sn();return function(){return xn?.()}},[Vt,Gt]),reactExports.useEffect(function(){un.current&&(un.current.autoplay=!!zt)},[zt]),reactExports.useEffect(function(){if(un.current){if(!jt){un.current.resetSegments(!0);return}!Array.isArray(jt)||!jt.length||((un.current.currentRawFrame<jt[0]||un.current.currentRawFrame>jt[1])&&(un.current.currentRawFrame=jt[0]),un.current.setSegment(jt[0],jt[1]))}},[jt]),reactExports.useEffect(function(){var xn=[{name:"complete",handler:Ht},{name:"loopComplete",handler:Wt},{name:"enterFrame",handler:qt},{name:"segmentStart",handler:Xt},{name:"config_ready",handler:Kt},{name:"data_ready",handler:Yt},{name:"data_failed",handler:Zt},{name:"loaded_images",handler:Jt},{name:"DOMLoaded",handler:nn},{name:"destroy",handler:rn}],Rn=xn.filter(function(kn){return kn.handler!=null});if(Rn.length){var Dn=Rn.map(function(kn){var Fn;return(Fn=un.current)===null||Fn===void 0||Fn.addEventListener(kn.name,kn.handler),function(){var Pn;(Pn=un.current)===null||Pn===void 0||Pn.removeEventListener(kn.name,kn.handler)}});return function(){Dn.forEach(function(kn){return kn()})}}},[Ht,Wt,qt,Xt,Kt,Yt,Zt,Jt,nn,rn]);var wn=React.createElement("div",_objectSpread2$1({style:Dt,ref:hn},Qt));return{View:wn,play:dn,stop:pn,pause:fn,setSpeed:mn,goToAndStop:_n,goToAndPlay:vn,setDirection:En,playSegments:An,setSubframe:Tn,getDuration:Cn,destroy:yn,animationContainerRef:hn,animationLoaded:sn,animationItem:un.current}};function getContainerVisibility(kt){var _e=kt.getBoundingClientRect(),Dt=_e.top,Vt=_e.height,Gt=window.innerHeight-Dt,zt=window.innerHeight+Vt;return Gt/zt}function getContainerCursorPosition(kt,_e,Dt){var Vt=kt.getBoundingClientRect(),Gt=Vt.top,zt=Vt.left,jt=Vt.width,Ht=Vt.height,Wt=(_e-zt)/jt,qt=(Dt-Gt)/Ht;return{x:Wt,y:qt}}var useInitInteractivity=function kt(_e){var Dt=_e.wrapperRef,Vt=_e.animationItem,Gt=_e.mode,zt=_e.actions;reactExports.useEffect(function(){var jt=Dt.current;if(!(!jt||!Vt||!zt.length)){Vt.stop();var Ht=function(){var Xt=null,Kt=function(){var Zt=getContainerVisibility(jt),Jt=zt.find(function(rn){var Qt=rn.visibility;return Qt&&Zt>=Qt[0]&&Zt<=Qt[1]});if(Jt){if(Jt.type==="seek"&&Jt.visibility&&Jt.frames.length===2){var nn=Jt.frames[0]+Math.ceil((Zt-Jt.visibility[0])/(Jt.visibility[1]-Jt.visibility[0])*Jt.frames[1]);//! goToAndStop must be relative to the start of the current segment
|
|
3951
3951
|
Vt.goToAndStop(nn-Vt.firstFrame-1,!0)}Jt.type==="loop"&&(Xt===null||Xt!==Jt.frames||Vt.isPaused)&&(Vt.playSegments(Jt.frames,!0),Xt=Jt.frames),Jt.type==="play"&&Vt.isPaused&&(Vt.resetSegments(!0),Vt.play()),Jt.type==="stop"&&Vt.goToAndStop(Jt.frames[0]-Vt.firstFrame-1,!0)}};return document.addEventListener("scroll",Kt),function(){document.removeEventListener("scroll",Kt)}},Wt=function(){var Xt=function(Jt,nn){var rn=Jt,Qt=nn;if(rn!==-1&&Qt!==-1){var en=getContainerCursorPosition(jt,rn,Qt);rn=en.x,Qt=en.y}var tn=zt.find(function(un){var hn=un.position;return hn&&Array.isArray(hn.x)&&Array.isArray(hn.y)?rn>=hn.x[0]&&rn<=hn.x[1]&&Qt>=hn.y[0]&&Qt<=hn.y[1]:hn&&!Number.isNaN(hn.x)&&!Number.isNaN(hn.y)?rn===hn.x&&Qt===hn.y:!1});if(tn){if(tn.type==="seek"&&tn.position&&Array.isArray(tn.position.x)&&Array.isArray(tn.position.y)&&tn.frames.length===2){var sn=(rn-tn.position.x[0])/(tn.position.x[1]-tn.position.x[0]),cn=(Qt-tn.position.y[0])/(tn.position.y[1]-tn.position.y[0]);Vt.playSegments(tn.frames,!0),Vt.goToAndStop(Math.ceil((sn+cn)/2*(tn.frames[1]-tn.frames[0])),!0)}tn.type==="loop"&&Vt.playSegments(tn.frames,!0),tn.type==="play"&&(Vt.isPaused&&Vt.resetSegments(!1),Vt.playSegments(tn.frames)),tn.type==="stop"&&Vt.goToAndStop(tn.frames[0],!0)}},Kt=function(Jt){Xt(Jt.clientX,Jt.clientY)},Yt=function(){Xt(-1,-1)};return jt.addEventListener("mousemove",Kt),jt.addEventListener("mouseout",Yt),function(){jt.removeEventListener("mousemove",Kt),jt.removeEventListener("mouseout",Yt)}};switch(Gt){case"scroll":return Ht();case"cursor":return Wt()}}},[Gt,Vt])},useLottieInteractivity=function kt(_e){var Dt=_e.actions,Vt=_e.mode,Gt=_e.lottieObj,zt=Gt.animationItem,jt=Gt.View,Ht=Gt.animationContainerRef;return useInitInteractivity({actions:Dt,animationItem:zt,mode:Vt,wrapperRef:Ht}),jt},_excluded$2=["style","interactivity"],Lottie=function kt(_e){var Dt,Vt,Gt,zt=_e.style,jt=_e.interactivity,Ht=_objectWithoutProperties$1(_e,_excluded$2),Wt=useLottie(Ht,zt),qt=Wt.View,Xt=Wt.play,Kt=Wt.stop,Yt=Wt.pause,Zt=Wt.setSpeed,Jt=Wt.goToAndStop,nn=Wt.goToAndPlay,rn=Wt.setDirection,Qt=Wt.playSegments,en=Wt.setSubframe,tn=Wt.getDuration,sn=Wt.destroy,cn=Wt.animationContainerRef,un=Wt.animationLoaded,hn=Wt.animationItem;return reactExports.useEffect(function(){_e.lottieRef&&(_e.lottieRef.current={play:Xt,stop:Kt,pause:Yt,setSpeed:Zt,goToAndPlay:nn,goToAndStop:Jt,setDirection:rn,playSegments:Qt,setSubframe:en,getDuration:tn,destroy:sn,animationContainerRef:cn,animationLoaded:un,animationItem:hn})},[(Dt=_e.lottieRef)===null||Dt===void 0?void 0:Dt.current]),useLottieInteractivity({lottieObj:{View:qt,play:Xt,stop:Kt,pause:Yt,setSpeed:Zt,goToAndStop:Jt,goToAndPlay:nn,setDirection:rn,playSegments:Qt,setSubframe:en,getDuration:tn,destroy:sn,animationContainerRef:cn,animationLoaded:un,animationItem:hn},actions:(Vt=jt?.actions)!==null&&Vt!==void 0?Vt:[],mode:(Gt=jt?.mode)!==null&&Gt!==void 0?Gt:"scroll"})};const InstructionModal=reactExports.forwardRef((kt,_e)=>{const Dt=kt.stores.uiSceneStore(en=>en.CORE_API),[Vt,Gt]=reactExports.useState(0),[zt,jt]=reactExports.useState(!1),[Ht,Wt]=reactExports.useState(null),[qt,Xt]=reactExports.useState("Instruction step header here."),[Kt,Yt]=reactExports.useState("Instruction step description here."),Zt=reactExports.useCallback(()=>{const en=Dt.sceneSettings.instructionsSettings;!en||en.length<=0||(_e.current?(Gt(0),jt(!0),_e.current.show()):LOGGER.warn("Instructions modal not initialized"))},[Gt,Ht,Dt,_e]);addCoreEventListener(kt.stores,Dt.EVENTS.UI.Instructions_Show,Zt);const Jt=async en=>{try{const tn=await fetch(resolveAssetUrl(en));if(!tn.ok)throw new Error("Network response was not ok");const sn=await tn.json();setTimeout(()=>{Wt(sn)},Vt===0?800:0)}catch(tn){LOGGER.error("Error fetching JSON data:",tn)}};reactExports.useEffect(()=>{Wt(null);const en=Dt.sceneSettings.instructionsSettings;if(!en||en.length<=0)return;const tn=en[Vt];Jt(tn.lottieURL),Xt(tn.header),Yt(tn.description)},[Vt]),reactExports.useEffect(()=>{_e.current&&kt.showOnStartup&&(localStorage.getItem("instructionsDisplayed-"+Dt.projectId)||Dt.showInstructions())},[_e,kt]);const nn=reactExports.useCallback(()=>{const en=Dt.sceneSettings.instructionsSettings.length,tn=((Vt+1/en)*100).toFixed(2);Dt.sendInstructionsAnalyticsCompletionRate(tn)},[Dt,Vt]),rn=()=>{nn(),localStorage.setItem("instructionsDisplayed-"+Dt.projectId,"true")},Qt=reactExports.useCallback(()=>{nn(),Vt<Dt.sceneSettings.instructionsSettings.length-1?Gt(Vt+1):(localStorage.setItem("instructionsDisplayed-"+Dt.projectId,"true"),jt(!1),_e.current.hide())},[Dt,Vt,_e]);return jsxRuntimeExports.jsx(FullScreenModal,{stores:kt.stores,open:zt,onExit:rn,ref:_e,className:"instructionsModalFSModal",children:jsxRuntimeExports.jsxs("div",{className:"ins-panel",children:[Ht?jsxRuntimeExports.jsx(Lottie,{className:"lottie-anim-ins",animationData:Ht,loop:!0,autoplay:!0}):jsxRuntimeExports.jsx("div",{className:"lottie-anim-loader",children:jsxRuntimeExports.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink",style:{margin:"auto",background:"none",display:"block",shapeRendering:"auto"},width:"50px",height:"50px",viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",children:jsxRuntimeExports.jsx("path",{d:"M10 50A40 40 0 0 0 90 50A40 42 0 0 1 10 50",fill:"#000000",stroke:"none",children:jsxRuntimeExports.jsx("animateTransform",{attributeName:"transform",type:"rotate",dur:"1s",repeatCount:"indefinite",keyTimes:"0;1",values:"0 50 51;360 50 51"})})})}),jsxRuntimeExports.jsxs("div",{className:"ins-instructions",children:[jsxRuntimeExports.jsx("p",{className:"ins-header",children:qt}),jsxRuntimeExports.jsx("p",{className:"ins-description",children:Kt}),jsxRuntimeExports.jsx("button",{role:"button","aria-label":"Next Button","aria-hidden":!zt,tabIndex:zt?0:-1,onClick:Qt,className:"ins-nextButton",children:Vt<Dt.sceneSettings.instructionsSettings.length-1?"Next":"Close"})]})]})})}),OverlayUIManager$1=({stores:kt,configuratorWcRef:_e,coreRef:Dt,viewInYourSpaceRef:Vt,disableUI:Gt})=>{const zt=kt.uiSceneStore(Ln=>Ln.setSideMenuState),jt=kt.uiSceneStore(Ln=>Ln.sideMenuState),Ht=kt.uiSceneStore(Ln=>Ln.sideMenuOpen),Wt=kt.uiSceneStore(Ln=>Ln.setSideMenuOpen),[qt,Xt]=reactExports.useState(!1),[Kt,Yt]=reactExports.useState(!1),Zt=kt.infoStore(Ln=>Ln.infoModalOpen),Jt=kt.infoStore(Ln=>Ln.updateInfoModalOpen);reactExports.useState(!1);const[nn,rn]=reactExports.useState(!1),[Qt,en]=reactExports.useState("Link not generated!"),[tn,sn]=reactExports.useState(!1),[cn,un]=reactExports.useState(!1),hn=kt.uiSceneStore(Ln=>Ln.loadConfigId),dn=kt.uiSceneStore(Ln=>Ln.loadConfigModalOpen),pn=kt.uiSceneStore(Ln=>Ln.setLoadConfigModalOpen),fn=kt.uiSceneStore(Ln=>Ln.removeModalOpen),mn=kt.uiSceneStore(Ln=>Ln.setRemoveModalOpen),vn=kt.uiSceneStore(Ln=>Ln.moveModalOpen),_n=kt.uiSceneStore(Ln=>Ln.setMoveModalOpen),En=kt.uiSceneStore(Ln=>Ln.outOfStockModalOpen),An=kt.uiSceneStore(Ln=>Ln.setOutOfStockModalOpen),Tn=reactExports.useRef(null),Cn=reactExports.useRef(null),yn=reactExports.useRef(null),Sn=reactExports.useRef(null),[wn,xn]=reactExports.useState({}),[Rn,Dn]=reactExports.useState({}),[kn,Fn]=reactExports.useState(!1),[Pn,Bn]=reactExports.useState(""),[qn,tr]=reactExports.useState(""),[ar,zn]=reactExports.useState(""),ur=kt.productDataStore(Ln=>Ln.productData),Hn=kt.cartStore(Ln=>Ln.cart),sr=kt.cartStore(Ln=>Ln.previewCartModalOpen),gr=kt.cartStore(Ln=>Ln.togglePreviewCartModal),[fr,Un]=reactExports.useState(!1),[In,jn]=reactExports.useState(!1),[or,cr]=reactExports.useState(!0),lr=kt.uiHotspotStore(Ln=>Ln),vr=kt.uiSceneStore(Ln=>Ln.CORE_API),[mr,Ar]=reactExports.useState(!1),[Lr,Cr]=reactExports.useState(!0),[Rr,zr]=reactExports.useState(!1),[Pr,Fr]=reactExports.useState(vr.sceneSettings.showSaveButton),[os,rs]=reactExports.useState(vr.sceneSettings.showContextMenu),Qr=kt.uiSceneStore(Ln=>Ln.viewInYourSpaceMenuBtnVisible),[cs,fs]=reactExports.useState(vr.sceneSettings.showResetBtn),Br=reactExports.useRef(null),[rr,Dr]=reactExports.useState(vr.sceneSettings.showInstructionsBtn),[_r,Gr]=reactExports.useState(vr.sceneSettings.showInstructionsOnStartup),[Yr,Es]=reactExports.useState(vr.sceneSettings.showDimensionBtn),[gs,Ts]=reactExports.useState(vr.sceneSettings.showHotspotsBtn),[Ps,bs]=reactExports.useState(vr.sceneSettings.currency);reactExports.useEffect(()=>(cr(vr.areHotspotsVisible()),()=>{}),[jt]);const Vs=reactExports.useCallback(()=>{cr(!vr.areHotspotsVisible()),vr.areHotspotsVisible()?vr.hideAllHotspots():vr.showAllHotspots()},[]),Gs=reactExports.useCallback(()=>{vr.sendShowInstructionsBtnAnalyticsEvent(),vr.showInstructions()},[vr]),to=reactExports.useCallback(()=>{Ar(!vr.areDimensionsVisible()),vr.areDimensionsVisible()?vr.hideDimensions():vr.showDimensions()},[]);function Fo(){un(!0)}const Bo=reactExports.useCallback(()=>{jn(!0),rn(!0),vr.shareScene().then(Ln=>{en(Ln),jn(!1),vr.alert({alertMsg:"Configuration saved successfully!",alertTime:4e3,alertType:"success",alertLabel:"Success",alertId:"configurationSaved"})}).catch(Ln=>{jn(!1),vr.alert({alertMsg:"Error saving this configuration!",alertTime:5e3,alertType:"error",alertLabel:"Unsaved Changes",persistant:!0})})},[]);reactExports.useEffect(()=>{Cn.current&&Cn.current.appendChild(Dt.current)},[Cn]),reactExports.useEffect(()=>{yn.current&&yn.current.appendChild(Vt.current)},[yn]),addCoreEventListener(kt,vr.EVENTS.SCENE.Hotspot_Enter,Ln=>{LOGGER.info({title:vr.getActiveHotspot()}),Dn(vr.getActiveHotspot().hotspotData),Yt(!0);const{hotspotAbsID:$n}=Ln;lr.actions.enterHotspotInFeaturesTab($n)}),addCoreEventListener(kt,vr.EVENTS.SCENE.Hotspot_Exit,Ln=>{lr.actions.exitHotspot()}),addCoreEventListener(kt,vr.EVENTS.SCENE.MaterialOverrides_Exists,Ln=>{kt.uiSceneStore.setState({materialOverrideExists:Ln})}),addCoreEventListener(kt,vr.EVENTS.UI.UtilityMenu_Hide,Ln=>{Cr(!1)}),addCoreEventListener(kt,vr.EVENTS.UI.UtilityMenu_Show,Ln=>{Cr(!0)}),addCoreEventListener(kt,vr.EVENTS.UI.ShareButton_Hide,Ln=>{zr(!1)}),addCoreEventListener(kt,vr.EVENTS.UI.ShareButton_Show,Ln=>{zr(!0)}),addCoreEventListener(kt,vr.EVENTS.UI.ContextMenu_Show,Ln=>{xn(Ln?.primary.data),Un(!0)}),addCoreEventListener(kt,vr.EVENTS.UI.ContextMenu_Hide,Ln=>{LOGGER.info({title:"Context Menu Closed"}),Un(!1)}),addCoreEventListener(kt,vr.EVENTS.SCENE.ItemRemoveModalTriggered,Ln=>{mn(!0);let $n=`Deleting this item will remove it from your build, as well as any item attached to it. Below is a list of all items that will be removed:
|
|
3952
|
-
`;const On={};Object.keys(Ln).forEach(Gn=>{const{skuID:Wn,name:er}=Ln[Gn].itemData
|
|
3952
|
+
`;const On={};Object.keys(Ln).forEach(Gn=>{const{skuID:Wn,name:er,gltfURL:ir,ignoreInCart:pr}=Ln[Gn].itemData;!ir||pr===!0||(On[Wn]={count:(On[Wn]?.count||0)+1,name:er||Wn})}),Object.keys(On).forEach(Gn=>{$n+=`
|
|
3953
3953
|
• ${On[Gn].name} (qty ${On[Gn].count})`}),tr($n)}),addCoreEventListener(kt,vr.EVENTS.SCENE.DraggingOnDrop_CollsionDetected,Ln=>{_n(!0);let $n="";const On={};Object.keys(Ln).forEach(Gn=>{const{skuID:Wn,name:er}=Ln[Gn].itemData;Ln[Gn].itemData.gltfURL&&(On[Wn]={count:(On[Wn]?.count||0)+1,name:er||Wn})}),$n+=Object.keys(On).length==1?`Moving this item will remove some of the attached items from your build. Below is the item that will be removed:
|
|
3954
3954
|
`:`Moving this item will remove some of the attached items from your build. Below is a list of all items that will be removed:
|
|
3955
3955
|
`,Object.keys(On).forEach(Gn=>{$n+=`
|
|
@@ -4001,7 +4001,7 @@ Error generating stack: `+Nn.message+`
|
|
|
4001
4001
|
`+(bn.join(" > ")+`
|
|
4002
4002
|
|
|
4003
4003
|
No matching component was found for:
|
|
4004
|
-
`)+on.join(" > ")}return null},Dt.getPublicRootInstance=function(on){if(on=on.current,!on.child)return null;switch(on.child.tag){case 5:return Tn(on.child.stateNode);default:return on.child.stateNode}},Dt.injectIntoDevTools=function(on){if(on={bundleType:on.bundleType,version:on.version,rendererPackageName:on.rendererPackageName,rendererConfig:on.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:Ht.ReactCurrentDispatcher,findHostInstanceByFiber:dy,findFiberByHostInstance:on.findFiberByHostInstance||my,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.0.0-fc46dba67-20220329"},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u")on=!1;else{var an=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(an.isDisabled||!an.supportsFiber)on=!0;else{try{tu=an.inject(on),Eo=an}catch{}on=!!an.checkDCE}}return on},Dt.isAlreadyRendering=function(){return!1},Dt.observeVisibleRects=function(on,an,gn,bn){if(!or)throw Error(jt(363));on=Ip(on,an);var Mn=Cr(on,gn,bn).disconnect;return{disconnect:function(){Mn()}}},Dt.registerMutableSourceForHydration=function(on,an){var gn=an._getVersion;gn=gn(an._source),on.mutableSourceEagerHydrationData==null?on.mutableSourceEagerHydrationData=[an,gn]:on.mutableSourceEagerHydrationData.push(an,gn)},Dt.runWithPriority=function(on,an){var gn=_s;try{return _s=on,an()}finally{_s=gn}},Dt.shouldError=function(){return null},Dt.shouldSuspend=function(){return!1},Dt.updateContainer=function(on,an,gn,bn){var Mn=an.current,Nn=Ks(),nr=zo(Mn);return gn=xv(gn),an.context===null?an.context=gn:an.pendingContext=gn,an=Oo(Nn,nr),an.payload={element:on},bn=bn===void 0?null:bn,bn!==null&&(an.callback=bn),$o(Mn,an),on=po(Mn,nr,Nn),on!==null&&ou(on,Mn,nr),nr},Dt};reactReconciler.exports=reactReconciler_production_min;var reactReconcilerExports=reactReconciler.exports;const Reconciler=getDefaultExportFromCjs(reactReconcilerExports),isPromise=kt=>typeof kt=="object"&&typeof kt.then=="function",globalCache=[];function shallowEqualArrays(kt,_e,Dt=(Vt,Gt)=>Vt===Gt){if(kt===_e)return!0;if(!kt||!_e)return!1;const Vt=kt.length;if(_e.length!==Vt)return!1;for(let Gt=0;Gt<Vt;Gt++)if(!Dt(kt[Gt],_e[Gt]))return!1;return!0}function query(kt,_e=null,Dt=!1,Vt={}){_e===null&&(_e=[kt]);for(const zt of globalCache)if(shallowEqualArrays(_e,zt.keys,zt.equal)){if(Dt)return;if(Object.prototype.hasOwnProperty.call(zt,"error"))throw zt.error;if(Object.prototype.hasOwnProperty.call(zt,"response"))return Vt.lifespan&&Vt.lifespan>0&&(zt.timeout&&clearTimeout(zt.timeout),zt.timeout=setTimeout(zt.remove,Vt.lifespan)),zt.response;if(!Dt)throw zt.promise}const Gt={keys:_e,equal:Vt.equal,remove:()=>{const zt=globalCache.indexOf(Gt);zt!==-1&&globalCache.splice(zt,1)},promise:(isPromise(kt)?kt:kt(..._e)).then(zt=>{Gt.response=zt,Vt.lifespan&&Vt.lifespan>0&&(Gt.timeout=setTimeout(Gt.remove,Vt.lifespan))}).catch(zt=>Gt.error=zt)};if(globalCache.push(Gt),!Dt)throw Gt.promise}const suspend=(kt,_e,Dt)=>query(kt,_e,!1,Dt),preload=(kt,_e,Dt)=>void query(kt,_e,!0,Dt),clear=kt=>{if(kt===void 0||kt.length===0)globalCache.splice(0,globalCache.length);else{const _e=globalCache.find(Dt=>shallowEqualArrays(kt,Dt.keys,Dt.equal));_e&&_e.remove()}},catalogue={},extend=kt=>void Object.assign(catalogue,kt);function createRenderer(kt,_e){function Dt(Xt,{args:Kt=[],attach:Yt,...Zt},Jt){let nn=`${Xt[0].toUpperCase()}${Xt.slice(1)}`,rn;if(Xt==="primitive"){if(Zt.object===void 0)throw new Error("R3F: Primitives without 'object' are invalid!");const Qt=Zt.object;rn=prepare(Qt,{type:Xt,root:Jt,attach:Yt,primitive:!0})}else{const Qt=catalogue[nn];if(!Qt)throw new Error(`R3F: ${nn} 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(Kt))throw new Error("R3F: The args prop must be an array!");rn=prepare(new Qt(...Kt),{type:Xt,root:Jt,attach:Yt,memoizedProps:{args:Kt}})}return rn.__r3f.attach===void 0&&(rn instanceof BufferGeometry?rn.__r3f.attach="geometry":rn instanceof Material&&(rn.__r3f.attach="material")),nn!=="inject"&&applyProps$1(rn,Zt),rn}function Vt(Xt,Kt){let Yt=!1;if(Kt){var Zt,Jt;(Zt=Kt.__r3f)!=null&&Zt.attach?attach(Xt,Kt,Kt.__r3f.attach):Kt.isObject3D&&Xt.isObject3D&&(Xt.add(Kt),Yt=!0),Yt||(Jt=Xt.__r3f)==null||Jt.objects.push(Kt),Kt.__r3f||prepare(Kt,{}),Kt.__r3f.parent=Xt,updateInstance(Kt),invalidateInstance(Kt)}}function Gt(Xt,Kt,Yt){let Zt=!1;if(Kt){var Jt,nn;if((Jt=Kt.__r3f)!=null&&Jt.attach)attach(Xt,Kt,Kt.__r3f.attach);else if(Kt.isObject3D&&Xt.isObject3D){Kt.parent=Xt,Kt.dispatchEvent({type:"added"}),Xt.dispatchEvent({type:"childadded",child:Kt});const rn=Xt.children.filter(en=>en!==Kt),Qt=rn.indexOf(Yt);Xt.children=[...rn.slice(0,Qt),Kt,...rn.slice(Qt)],Zt=!0}Zt||(nn=Xt.__r3f)==null||nn.objects.push(Kt),Kt.__r3f||prepare(Kt,{}),Kt.__r3f.parent=Xt,updateInstance(Kt),invalidateInstance(Kt)}}function zt(Xt,Kt,Yt=!1){Xt&&[...Xt].forEach(Zt=>jt(Kt,Zt,Yt))}function jt(Xt,Kt,Yt){if(Kt){var Zt,Jt,nn;if(Kt.__r3f&&(Kt.__r3f.parent=null),(Zt=Xt.__r3f)!=null&&Zt.objects&&(Xt.__r3f.objects=Xt.__r3f.objects.filter(sn=>sn!==Kt)),(Jt=Kt.__r3f)!=null&&Jt.attach)detach(Xt,Kt,Kt.__r3f.attach);else if(Kt.isObject3D&&Xt.isObject3D){var rn;Xt.remove(Kt),(rn=Kt.__r3f)!=null&&rn.root&&removeInteractivity(findInitialRoot(Kt),Kt)}const en=(nn=Kt.__r3f)==null?void 0:nn.primitive,tn=!en&&(Yt===void 0?Kt.dispose!==null:Yt);if(!en){var Qt;zt((Qt=Kt.__r3f)==null?void 0:Qt.objects,Kt,tn),zt(Kt.children,Kt,tn)}if(delete Kt.__r3f,tn&&Kt.dispose&&Kt.type!=="Scene"){const sn=()=>{try{Kt.dispose()}catch{}};typeof IS_REACT_ACT_ENVIRONMENT>"u"?schedulerExports.unstable_scheduleCallback(schedulerExports.unstable_IdlePriority,sn):sn()}invalidateInstance(Xt)}}function Ht(Xt,Kt,Yt,Zt){var Jt;const nn=(Jt=Xt.__r3f)==null?void 0:Jt.parent;if(!nn)return;const rn=Dt(Kt,Yt,Xt.__r3f.root);if(Xt.children){for(const Qt of Xt.children)Qt.__r3f&&Vt(rn,Qt);Xt.children=Xt.children.filter(Qt=>!Qt.__r3f)}Xt.__r3f.objects.forEach(Qt=>Vt(rn,Qt)),Xt.__r3f.objects=[],Xt.__r3f.autoRemovedBeforeAppend||jt(nn,Xt),rn.parent&&(rn.__r3f.autoRemovedBeforeAppend=!0),Vt(nn,rn),rn.raycast&&rn.__r3f.eventCount&&findInitialRoot(rn).getState().internal.interaction.push(rn),[Zt,Zt.alternate].forEach(Qt=>{Qt!==null&&(Qt.stateNode=rn,Qt.ref&&(typeof Qt.ref=="function"?Qt.ref(rn):Qt.ref.current=rn))})}const Wt=()=>console.warn("Text is not allowed in the R3F tree! This could be stray whitespace or characters.");return{reconciler:Reconciler({createInstance:Dt,removeChild:jt,appendChild:Vt,appendInitialChild:Vt,insertBefore:Gt,supportsMutation:!0,isPrimaryRenderer:!1,supportsPersistence:!1,supportsHydration:!1,noTimeout:-1,appendChildToContainer:(Xt,Kt)=>{if(!Kt)return;const Yt=Xt.getState().scene;Yt.__r3f&&(Yt.__r3f.root=Xt,Vt(Yt,Kt))},removeChildFromContainer:(Xt,Kt)=>{Kt&&jt(Xt.getState().scene,Kt)},insertInContainerBefore:(Xt,Kt,Yt)=>{if(!Kt||!Yt)return;const Zt=Xt.getState().scene;Zt.__r3f&&Gt(Zt,Kt,Yt)},getRootHostContext:()=>null,getChildHostContext:Xt=>Xt,finalizeInitialChildren(Xt){var Kt;return!!((Kt=Xt?.__r3f)!=null?Kt:{}).handlers},prepareUpdate(Xt,Kt,Yt,Zt){var Jt;if(((Jt=Xt?.__r3f)!=null?Jt:{}).primitive&&Zt.object&&Zt.object!==Xt)return[!0];{const{args:rn=[],children:Qt,...en}=Zt,{args:tn=[],children:sn,...cn}=Yt;if(!Array.isArray(rn))throw new Error("R3F: the args prop must be an array!");if(rn.some((hn,dn)=>hn!==tn[dn]))return[!0];const un=diffProps(Xt,en,cn,!0);return un.changes.length?[!1,un]:null}},commitUpdate(Xt,[Kt,Yt],Zt,Jt,nn,rn){Kt?Ht(Xt,Zt,nn,rn):applyProps$1(Xt,Yt)},commitMount(Xt,Kt,Yt,Zt){var Jt;const nn=(Jt=Xt.__r3f)!=null?Jt:{};Xt.raycast&&nn.handlers&&nn.eventCount&&findInitialRoot(Xt).getState().internal.interaction.push(Xt)},getPublicInstance:Xt=>Xt,prepareForCommit:()=>null,preparePortalMount:Xt=>prepare(Xt.getState().scene),resetAfterCommit:()=>{},shouldSetTextContent:()=>!1,clearContainer:()=>!1,hideInstance(Xt){var Kt;const{attach:Yt,parent:Zt}=(Kt=Xt.__r3f)!=null?Kt:{};Yt&&Zt&&detach(Zt,Xt,Yt),Xt.isObject3D&&(Xt.visible=!1),invalidateInstance(Xt)},unhideInstance(Xt,Kt){var Yt;const{attach:Zt,parent:Jt}=(Yt=Xt.__r3f)!=null?Yt:{};Zt&&Jt&&attach(Jt,Xt,Zt),(Xt.isObject3D&&Kt.visible==null||Kt.visible)&&(Xt.visible=!0),invalidateInstance(Xt)},createTextInstance:Wt,hideTextInstance:Wt,unhideTextInstance:Wt,getCurrentEventPriority:()=>_e?_e():constantsExports.DefaultEventPriority,beforeActiveInstanceBlur:()=>{},afterActiveInstanceBlur:()=>{},detachDeletedInstance:()=>{},now:typeof performance<"u"&&is.fun(performance.now)?performance.now:is.fun(Date.now)?Date.now:()=>0,scheduleTimeout:is.fun(setTimeout)?setTimeout:void 0,cancelTimeout:is.fun(clearTimeout)?clearTimeout:void 0}),applyProps:applyProps$1}}var _window$document,_window$navigator;const hasColorSpace$1=kt=>"colorSpace"in kt||"outputColorSpace"in kt,getColorManagement=()=>{var kt;return(kt=catalogue.ColorManagement)!=null?kt:null},isOrthographicCamera$1=kt=>kt&&kt.isOrthographicCamera,isRef$2=kt=>kt&&kt.hasOwnProperty("current"),useIsomorphicLayoutEffect=typeof window<"u"&&((_window$document=window.document)!=null&&_window$document.createElement||((_window$navigator=window.navigator)==null?void 0:_window$navigator.product)==="ReactNative")?reactExports.useLayoutEffect:reactExports.useEffect;function useMutableCallback(kt){const _e=reactExports.useRef(kt);return useIsomorphicLayoutEffect(()=>void(_e.current=kt),[kt]),_e}function Block({set:kt}){return useIsomorphicLayoutEffect(()=>(kt(new Promise(()=>null)),()=>kt(!1)),[kt]),null}class ErrorBoundary extends reactExports.Component{constructor(..._e){super(..._e),this.state={error:!1}}componentDidCatch(_e){this.props.set(_e)}render(){return this.state.error?null:this.props.children}}ErrorBoundary.getDerivedStateFromError=()=>({error:!0});const DEFAULT="__default",DEFAULTS=new Map,isDiffSet=kt=>kt&&!!kt.memoized&&!!kt.changes;function calculateDpr(kt){var _e;const Dt=typeof window<"u"?(_e=window.devicePixelRatio)!=null?_e:2:1;return Array.isArray(kt)?Math.min(Math.max(kt[0],Dt),kt[1]):kt}const getRootState=kt=>{var _e;return(_e=kt.__r3f)==null?void 0:_e.root.getState()};function findInitialRoot(kt){let _e=kt.__r3f.root;for(;_e.getState().previousRoot;)_e=_e.getState().previousRoot;return _e}const is={obj:kt=>kt===Object(kt)&&!is.arr(kt)&&typeof kt!="function",fun:kt=>typeof kt=="function",str:kt=>typeof kt=="string",num:kt=>typeof kt=="number",boo:kt=>typeof kt=="boolean",und:kt=>kt===void 0,arr:kt=>Array.isArray(kt),equ(kt,_e,{arrays:Dt="shallow",objects:Vt="reference",strict:Gt=!0}={}){if(typeof kt!=typeof _e||!!kt!=!!_e)return!1;if(is.str(kt)||is.num(kt)||is.boo(kt))return kt===_e;const zt=is.obj(kt);if(zt&&Vt==="reference")return kt===_e;const jt=is.arr(kt);if(jt&&Dt==="reference")return kt===_e;if((jt||zt)&&kt===_e)return!0;let Ht;for(Ht in kt)if(!(Ht in _e))return!1;if(zt&&Dt==="shallow"&&Vt==="shallow"){for(Ht in Gt?_e:kt)if(!is.equ(kt[Ht],_e[Ht],{strict:Gt,objects:"reference"}))return!1}else for(Ht in Gt?_e:kt)if(kt[Ht]!==_e[Ht])return!1;if(is.und(Ht)){if(jt&&kt.length===0&&_e.length===0||zt&&Object.keys(kt).length===0&&Object.keys(_e).length===0)return!0;if(kt!==_e)return!1}return!0}};function buildGraph(kt){const _e={nodes:{},materials:{}};return kt&&kt.traverse(Dt=>{Dt.name&&(_e.nodes[Dt.name]=Dt),Dt.material&&!_e.materials[Dt.material.name]&&(_e.materials[Dt.material.name]=Dt.material)}),_e}function dispose(kt){kt.dispose&&kt.type!=="Scene"&&kt.dispose();for(const _e in kt)_e.dispose==null||_e.dispose(),delete kt[_e]}function prepare(kt,_e){const Dt=kt;return Dt.__r3f={type:"",root:null,previousAttach:null,memoizedProps:{},eventCount:0,handlers:{},objects:[],parent:null,..._e},kt}function resolve(kt,_e){let Dt=kt;if(_e.includes("-")){const Vt=_e.split("-"),Gt=Vt.pop();return Dt=Vt.reduce((zt,jt)=>zt[jt],kt),{target:Dt,key:Gt}}else return{target:Dt,key:_e}}const INDEX_REGEX=/-\d+$/;function attach(kt,_e,Dt){if(is.str(Dt)){if(INDEX_REGEX.test(Dt)){const zt=Dt.replace(INDEX_REGEX,""),{target:jt,key:Ht}=resolve(kt,zt);Array.isArray(jt[Ht])||(jt[Ht]=[])}const{target:Vt,key:Gt}=resolve(kt,Dt);_e.__r3f.previousAttach=Vt[Gt],Vt[Gt]=_e}else _e.__r3f.previousAttach=Dt(kt,_e)}function detach(kt,_e,Dt){var Vt,Gt;if(is.str(Dt)){const{target:zt,key:jt}=resolve(kt,Dt),Ht=_e.__r3f.previousAttach;Ht===void 0?delete zt[jt]:zt[jt]=Ht}else(Vt=_e.__r3f)==null||Vt.previousAttach==null||Vt.previousAttach(kt,_e);(Gt=_e.__r3f)==null||delete Gt.previousAttach}function diffProps(kt,{children:_e,key:Dt,ref:Vt,...Gt},{children:zt,key:jt,ref:Ht,...Wt}={},qt=!1){const Xt=kt.__r3f,Kt=Object.entries(Gt),Yt=[];if(qt){const Jt=Object.keys(Wt);for(let nn=0;nn<Jt.length;nn++)Gt.hasOwnProperty(Jt[nn])||Kt.unshift([Jt[nn],DEFAULT+"remove"])}Kt.forEach(([Jt,nn])=>{var rn;if((rn=kt.__r3f)!=null&&rn.primitive&&Jt==="object"||is.equ(nn,Wt[Jt]))return;if(/^on(Pointer|Click|DoubleClick|ContextMenu|Wheel)/.test(Jt))return Yt.push([Jt,nn,!0,[]]);let Qt=[];Jt.includes("-")&&(Qt=Jt.split("-")),Yt.push([Jt,nn,!1,Qt]);for(const en in Gt){const tn=Gt[en];en.startsWith(`${Jt}-`)&&Yt.push([en,tn,!1,en.split("-")])}});const Zt={...Gt};return Xt!=null&&Xt.memoizedProps&&Xt!=null&&Xt.memoizedProps.args&&(Zt.args=Xt.memoizedProps.args),Xt!=null&&Xt.memoizedProps&&Xt!=null&&Xt.memoizedProps.attach&&(Zt.attach=Xt.memoizedProps.attach),{memoized:Zt,changes:Yt}}const __DEV__=typeof process<"u"&&!1;function applyProps$1(kt,_e){var Dt;const Vt=kt.__r3f,Gt=Vt?.root,zt=Gt==null||Gt.getState==null?void 0:Gt.getState(),{memoized:jt,changes:Ht}=isDiffSet(_e)?_e:diffProps(kt,_e),Wt=Vt?.eventCount;kt.__r3f&&(kt.__r3f.memoizedProps=jt);for(let Xt=0;Xt<Ht.length;Xt++){let[Kt,Yt,Zt,Jt]=Ht[Xt];if(hasColorSpace$1(kt)){const en="srgb",tn="srgb-linear";Kt==="encoding"?(Kt="colorSpace",Yt=Yt===3001?en:tn):Kt==="outputEncoding"&&(Kt="outputColorSpace",Yt=Yt===3001?en:tn)}let nn=kt,rn=nn[Kt];if(Jt.length&&(rn=Jt.reduce((Qt,en)=>Qt[en],kt),!(rn&&rn.set))){const[Qt,...en]=Jt.reverse();nn=en.reverse().reduce((tn,sn)=>tn[sn],kt),Kt=Qt}if(Yt===DEFAULT+"remove")if(nn.constructor){let Qt=DEFAULTS.get(nn.constructor);Qt||(Qt=new nn.constructor,DEFAULTS.set(nn.constructor,Qt)),Yt=Qt[Kt]}else Yt=0;if(Zt&&Vt)Yt?Vt.handlers[Kt]=Yt:delete Vt.handlers[Kt],Vt.eventCount=Object.keys(Vt.handlers).length;else if(rn&&rn.set&&(rn.copy||rn instanceof Layers)){if(Array.isArray(Yt))rn.fromArray?rn.fromArray(Yt):rn.set(...Yt);else if(rn.copy&&Yt&&Yt.constructor&&(__DEV__?rn.constructor.name===Yt.constructor.name:rn.constructor===Yt.constructor))rn.copy(Yt);else if(Yt!==void 0){const Qt=rn instanceof Color$1;!Qt&&rn.setScalar?rn.setScalar(Yt):rn instanceof Layers&&Yt instanceof Layers?rn.mask=Yt.mask:rn.set(Yt),!getColorManagement()&&zt&&!zt.linear&&Qt&&rn.convertSRGBToLinear()}}else if(nn[Kt]=Yt,nn[Kt]instanceof Texture&&nn[Kt].format===RGBAFormat&&nn[Kt].type===UnsignedByteType&&zt){const Qt=nn[Kt];hasColorSpace$1(Qt)&&hasColorSpace$1(zt.gl)?Qt.colorSpace=zt.gl.outputColorSpace:Qt.encoding=zt.gl.outputEncoding}invalidateInstance(kt)}if(Vt&&Vt.parent&&kt.raycast&&Wt!==Vt.eventCount){const Xt=findInitialRoot(kt).getState().internal,Kt=Xt.interaction.indexOf(kt);Kt>-1&&Xt.interaction.splice(Kt,1),Vt.eventCount&&Xt.interaction.push(kt)}return!(Ht.length===1&&Ht[0][0]==="onUpdate")&&Ht.length&&(Dt=kt.__r3f)!=null&&Dt.parent&&updateInstance(kt),kt}function invalidateInstance(kt){var _e,Dt;const Vt=(_e=kt.__r3f)==null||(Dt=_e.root)==null||Dt.getState==null?void 0:Dt.getState();Vt&&Vt.internal.frames===0&&Vt.invalidate()}function updateInstance(kt){kt.onUpdate==null||kt.onUpdate(kt)}function updateCamera(kt,_e){kt.manual||(isOrthographicCamera$1(kt)?(kt.left=_e.width/-2,kt.right=_e.width/2,kt.top=_e.height/2,kt.bottom=_e.height/-2):kt.aspect=_e.width/_e.height,kt.updateProjectionMatrix(),kt.updateMatrixWorld())}function makeId(kt){return(kt.eventObject||kt.object).uuid+"/"+kt.index+kt.instanceId}function getEventPriority(){var kt;const _e=typeof self<"u"&&self||typeof window<"u"&&window;if(!_e)return constantsExports.DefaultEventPriority;switch((kt=_e.event)==null?void 0:kt.type){case"click":case"contextmenu":case"dblclick":case"pointercancel":case"pointerdown":case"pointerup":return constantsExports.DiscreteEventPriority;case"pointermove":case"pointerout":case"pointerover":case"pointerenter":case"pointerleave":case"wheel":return constantsExports.ContinuousEventPriority;default:return constantsExports.DefaultEventPriority}}function releaseInternalPointerCapture(kt,_e,Dt,Vt){const Gt=Dt.get(_e);Gt&&(Dt.delete(_e),Dt.size===0&&(kt.delete(Vt),Gt.target.releasePointerCapture(Vt)))}function removeInteractivity(kt,_e){const{internal:Dt}=kt.getState();Dt.interaction=Dt.interaction.filter(Vt=>Vt!==_e),Dt.initialHits=Dt.initialHits.filter(Vt=>Vt!==_e),Dt.hovered.forEach((Vt,Gt)=>{(Vt.eventObject===_e||Vt.object===_e)&&Dt.hovered.delete(Gt)}),Dt.capturedMap.forEach((Vt,Gt)=>{releaseInternalPointerCapture(Dt.capturedMap,_e,Vt,Gt)})}function createEvents(kt){function _e(Wt){const{internal:qt}=kt.getState(),Xt=Wt.offsetX-qt.initialClick[0],Kt=Wt.offsetY-qt.initialClick[1];return Math.round(Math.sqrt(Xt*Xt+Kt*Kt))}function Dt(Wt){return Wt.filter(qt=>["Move","Over","Enter","Out","Leave"].some(Xt=>{var Kt;return(Kt=qt.__r3f)==null?void 0:Kt.handlers["onPointer"+Xt]}))}function Vt(Wt,qt){const Xt=kt.getState(),Kt=new Set,Yt=[],Zt=qt?qt(Xt.internal.interaction):Xt.internal.interaction;for(let Qt=0;Qt<Zt.length;Qt++){const en=getRootState(Zt[Qt]);en&&(en.raycaster.camera=void 0)}Xt.previousRoot||Xt.events.compute==null||Xt.events.compute(Wt,Xt);function Jt(Qt){const en=getRootState(Qt);if(!en||!en.events.enabled||en.raycaster.camera===null)return[];if(en.raycaster.camera===void 0){var tn;en.events.compute==null||en.events.compute(Wt,en,(tn=en.previousRoot)==null?void 0:tn.getState()),en.raycaster.camera===void 0&&(en.raycaster.camera=null)}return en.raycaster.camera?en.raycaster.intersectObject(Qt,!0):[]}let nn=Zt.flatMap(Jt).sort((Qt,en)=>{const tn=getRootState(Qt.object),sn=getRootState(en.object);return!tn||!sn?Qt.distance-en.distance:sn.events.priority-tn.events.priority||Qt.distance-en.distance}).filter(Qt=>{const en=makeId(Qt);return Kt.has(en)?!1:(Kt.add(en),!0)});Xt.events.filter&&(nn=Xt.events.filter(nn,Xt));for(const Qt of nn){let en=Qt.object;for(;en;){var rn;(rn=en.__r3f)!=null&&rn.eventCount&&Yt.push({...Qt,eventObject:en}),en=en.parent}}if("pointerId"in Wt&&Xt.internal.capturedMap.has(Wt.pointerId))for(let Qt of Xt.internal.capturedMap.get(Wt.pointerId).values())Kt.has(makeId(Qt.intersection))||Yt.push(Qt.intersection);return Yt}function Gt(Wt,qt,Xt,Kt){const Yt=kt.getState();if(Wt.length){const Zt={stopped:!1};for(const Jt of Wt){const nn=getRootState(Jt.object)||Yt,{raycaster:rn,pointer:Qt,camera:en,internal:tn}=nn,sn=new Vector3(Qt.x,Qt.y,0).unproject(en),cn=fn=>{var mn,vn;return(mn=(vn=tn.capturedMap.get(fn))==null?void 0:vn.has(Jt.eventObject))!=null?mn:!1},un=fn=>{const mn={intersection:Jt,target:qt.target};tn.capturedMap.has(fn)?tn.capturedMap.get(fn).set(Jt.eventObject,mn):tn.capturedMap.set(fn,new Map([[Jt.eventObject,mn]])),qt.target.setPointerCapture(fn)},hn=fn=>{const mn=tn.capturedMap.get(fn);mn&&releaseInternalPointerCapture(tn.capturedMap,Jt.eventObject,mn,fn)};let dn={};for(let fn in qt){let mn=qt[fn];typeof mn!="function"&&(dn[fn]=mn)}let pn={...Jt,...dn,pointer:Qt,intersections:Wt,stopped:Zt.stopped,delta:Xt,unprojectedPoint:sn,ray:rn.ray,camera:en,stopPropagation(){const fn="pointerId"in qt&&tn.capturedMap.get(qt.pointerId);if((!fn||fn.has(Jt.eventObject))&&(pn.stopped=Zt.stopped=!0,tn.hovered.size&&Array.from(tn.hovered.values()).find(mn=>mn.eventObject===Jt.eventObject))){const mn=Wt.slice(0,Wt.indexOf(Jt));zt([...mn,Jt])}},target:{hasPointerCapture:cn,setPointerCapture:un,releasePointerCapture:hn},currentTarget:{hasPointerCapture:cn,setPointerCapture:un,releasePointerCapture:hn},nativeEvent:qt};if(Kt(pn),Zt.stopped===!0)break}}return Wt}function zt(Wt){const{internal:qt}=kt.getState();for(const Xt of qt.hovered.values())if(!Wt.length||!Wt.find(Kt=>Kt.object===Xt.object&&Kt.index===Xt.index&&Kt.instanceId===Xt.instanceId)){const Yt=Xt.eventObject.__r3f,Zt=Yt?.handlers;if(qt.hovered.delete(makeId(Xt)),Yt!=null&&Yt.eventCount){const Jt={...Xt,intersections:Wt};Zt.onPointerOut==null||Zt.onPointerOut(Jt),Zt.onPointerLeave==null||Zt.onPointerLeave(Jt)}}}function jt(Wt,qt){for(let Xt=0;Xt<qt.length;Xt++){const Kt=qt[Xt].__r3f;Kt==null||Kt.handlers.onPointerMissed==null||Kt.handlers.onPointerMissed(Wt)}}function Ht(Wt){switch(Wt){case"onPointerLeave":case"onPointerCancel":return()=>zt([]);case"onLostPointerCapture":return qt=>{const{internal:Xt}=kt.getState();"pointerId"in qt&&Xt.capturedMap.has(qt.pointerId)&&requestAnimationFrame(()=>{Xt.capturedMap.has(qt.pointerId)&&(Xt.capturedMap.delete(qt.pointerId),zt([]))})}}return function(Xt){const{onPointerMissed:Kt,internal:Yt}=kt.getState();Yt.lastEvent.current=Xt;const Zt=Wt==="onPointerMove",Jt=Wt==="onClick"||Wt==="onContextMenu"||Wt==="onDoubleClick",rn=Vt(Xt,Zt?Dt:void 0),Qt=Jt?_e(Xt):0;Wt==="onPointerDown"&&(Yt.initialClick=[Xt.offsetX,Xt.offsetY],Yt.initialHits=rn.map(tn=>tn.eventObject)),Jt&&!rn.length&&Qt<=2&&(jt(Xt,Yt.interaction),Kt&&Kt(Xt)),Zt&&zt(rn);function en(tn){const sn=tn.eventObject,cn=sn.__r3f,un=cn?.handlers;if(cn!=null&&cn.eventCount)if(Zt){if(un.onPointerOver||un.onPointerEnter||un.onPointerOut||un.onPointerLeave){const hn=makeId(tn),dn=Yt.hovered.get(hn);dn?dn.stopped&&tn.stopPropagation():(Yt.hovered.set(hn,tn),un.onPointerOver==null||un.onPointerOver(tn),un.onPointerEnter==null||un.onPointerEnter(tn))}un.onPointerMove==null||un.onPointerMove(tn)}else{const hn=un[Wt];hn?(!Jt||Yt.initialHits.includes(sn))&&(jt(Xt,Yt.interaction.filter(dn=>!Yt.initialHits.includes(dn))),hn(tn)):Jt&&Yt.initialHits.includes(sn)&&jt(Xt,Yt.interaction.filter(dn=>!Yt.initialHits.includes(dn)))}}Gt(rn,Xt,Qt,en)}}return{handlePointer:Ht}}const privateKeys=["set","get","setSize","setFrameloop","setDpr","events","invalidate","advance","size","viewport"],isRenderer=kt=>!!(kt!=null&&kt.render),context=reactExports.createContext(null),createStore$1=(kt,_e)=>{const Dt=create$2((Ht,Wt)=>{const qt=new Vector3,Xt=new Vector3,Kt=new Vector3;function Yt(Qt=Wt().camera,en=Xt,tn=Wt().size){const{width:sn,height:cn,top:un,left:hn}=tn,dn=sn/cn;en instanceof Vector3?Kt.copy(en):Kt.set(...en);const pn=Qt.getWorldPosition(qt).distanceTo(Kt);if(isOrthographicCamera$1(Qt))return{width:sn/Qt.zoom,height:cn/Qt.zoom,top:un,left:hn,factor:1,distance:pn,aspect:dn};{const fn=Qt.fov*Math.PI/180,mn=2*Math.tan(fn/2)*pn,vn=mn*(sn/cn);return{width:vn,height:mn,top:un,left:hn,factor:sn/vn,distance:pn,aspect:dn}}}let Zt;const Jt=Qt=>Ht(en=>({performance:{...en.performance,current:Qt}})),nn=new Vector2;return{set:Ht,get:Wt,gl:null,camera:null,raycaster:null,events:{priority:1,enabled:!0,connected:!1},xr:null,scene:null,invalidate:(Qt=1)=>kt(Wt(),Qt),advance:(Qt,en)=>_e(Qt,en,Wt()),legacy:!1,linear:!1,flat:!1,controls:null,clock:new Clock,pointer:nn,mouse:nn,frameloop:"always",onPointerMissed:void 0,performance:{current:1,min:.5,max:1,debounce:200,regress:()=>{const Qt=Wt();Zt&&clearTimeout(Zt),Qt.performance.current!==Qt.performance.min&&Jt(Qt.performance.min),Zt=setTimeout(()=>Jt(Wt().performance.max),Qt.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:Yt},setEvents:Qt=>Ht(en=>({...en,events:{...en.events,...Qt}})),setSize:(Qt,en,tn,sn,cn)=>{const un=Wt().camera,hn={width:Qt,height:en,top:sn||0,left:cn||0,updateStyle:tn};Ht(dn=>({size:hn,viewport:{...dn.viewport,...Yt(un,Xt,hn)}}))},setDpr:Qt=>Ht(en=>{const tn=calculateDpr(Qt);return{viewport:{...en.viewport,dpr:tn,initialDpr:en.viewport.initialDpr||tn}}}),setFrameloop:(Qt="always")=>{const en=Wt().clock;en.stop(),en.elapsedTime=0,Qt!=="never"&&(en.start(),en.elapsedTime=0),Ht(()=>({frameloop:Qt}))},previousRoot:void 0,internal:{active:!1,priority:0,frames:0,lastEvent:reactExports.createRef(),interaction:[],hovered:new Map,subscribers:[],initialClick:[0,0],initialHits:[],capturedMap:new Map,subscribe:(Qt,en,tn)=>{const sn=Wt().internal;return sn.priority=sn.priority+(en>0?1:0),sn.subscribers.push({ref:Qt,priority:en,store:tn}),sn.subscribers=sn.subscribers.sort((cn,un)=>cn.priority-un.priority),()=>{const cn=Wt().internal;cn!=null&&cn.subscribers&&(cn.priority=cn.priority-(en>0?1:0),cn.subscribers=cn.subscribers.filter(un=>un.ref!==Qt))}}}}}),Vt=Dt.getState();let Gt=Vt.size,zt=Vt.viewport.dpr,jt=Vt.camera;return Dt.subscribe(()=>{const{camera:Ht,size:Wt,viewport:qt,gl:Xt,set:Kt}=Dt.getState();if(Wt.width!==Gt.width||Wt.height!==Gt.height||qt.dpr!==zt){var Yt;Gt=Wt,zt=qt.dpr,updateCamera(Ht,Wt),Xt.setPixelRatio(qt.dpr);const Zt=(Yt=Wt.updateStyle)!=null?Yt:typeof HTMLCanvasElement<"u"&&Xt.domElement instanceof HTMLCanvasElement;Xt.setSize(Wt.width,Wt.height,Zt)}Ht!==jt&&(jt=Ht,Kt(Zt=>({viewport:{...Zt.viewport,...Zt.viewport.getCurrentViewport(Ht)}})))}),Dt.subscribe(Ht=>kt(Ht)),Dt};let i$2,globalEffects=new Set,globalAfterEffects=new Set,globalTailEffects=new Set;function run(kt,_e){if(kt.size)for(const{callback:Dt}of kt.values())Dt(_e)}function flushGlobalEffects(kt,_e){switch(kt){case"before":return run(globalEffects,_e);case"after":return run(globalAfterEffects,_e);case"tail":return run(globalTailEffects,_e)}}let subscribers,subscription;function render$1(kt,_e,Dt){let Vt=_e.clock.getDelta();for(_e.frameloop==="never"&&typeof kt=="number"&&(Vt=kt-_e.clock.elapsedTime,_e.clock.oldTime=_e.clock.elapsedTime,_e.clock.elapsedTime=kt),subscribers=_e.internal.subscribers,i$2=0;i$2<subscribers.length;i$2++)subscription=subscribers[i$2],subscription.ref.current(subscription.store.getState(),Vt,Dt);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 createLoop(kt){let _e=!1,Dt=!1,Vt,Gt,zt;function jt(qt){Gt=requestAnimationFrame(jt),_e=!0,Vt=0,flushGlobalEffects("before",qt),Dt=!0;for(const Kt of kt.values()){var Xt;zt=Kt.store.getState(),zt.internal.active&&(zt.frameloop==="always"||zt.internal.frames>0)&&!((Xt=zt.gl.xr)!=null&&Xt.isPresenting)&&(Vt+=render$1(qt,zt))}if(Dt=!1,flushGlobalEffects("after",qt),Vt===0)return flushGlobalEffects("tail",qt),_e=!1,cancelAnimationFrame(Gt)}function Ht(qt,Xt=1){var Kt;if(!qt)return kt.forEach(Yt=>Ht(Yt.store.getState(),Xt));(Kt=qt.gl.xr)!=null&&Kt.isPresenting||!qt.internal.active||qt.frameloop==="never"||(Xt>1?qt.internal.frames=Math.min(60,qt.internal.frames+Xt):Dt?qt.internal.frames=2:qt.internal.frames=1,_e||(_e=!0,requestAnimationFrame(jt)))}function Wt(qt,Xt=!0,Kt,Yt){if(Xt&&flushGlobalEffects("before",qt),Kt)render$1(qt,Kt,Yt);else for(const Zt of kt.values())render$1(qt,Zt.store.getState());Xt&&flushGlobalEffects("after",qt)}return{loop:jt,invalidate:Ht,advance:Wt}}function useInstanceHandle(kt){const _e=reactExports.useRef(null);return useIsomorphicLayoutEffect(()=>void(_e.current=kt.current.__r3f),[kt]),_e}function useStore$1(){const kt=reactExports.useContext(context);if(!kt)throw new Error("R3F: Hooks can only be used within the Canvas component!");return kt}function useThree(kt=Dt=>Dt,_e){return useStore$1()(kt,_e)}function useFrame(kt,_e=0){const Dt=useStore$1(),Vt=Dt.getState().internal.subscribe,Gt=useMutableCallback(kt);return useIsomorphicLayoutEffect(()=>Vt(Gt,_e,Dt),[_e,Vt,Dt]),null}const memoizedLoaders=new WeakMap;function loadingFn(kt,_e){return function(Dt,...Vt){let Gt=memoizedLoaders.get(Dt);return Gt||(Gt=new Dt,memoizedLoaders.set(Dt,Gt)),kt&&kt(Gt),Promise.all(Vt.map(zt=>new Promise((jt,Ht)=>Gt.load(zt,Wt=>{Wt.scene&&Object.assign(Wt,buildGraph(Wt.scene)),jt(Wt)},_e,Wt=>Ht(new Error(`Could not load ${zt}: ${Wt?.message}`))))))}}function useLoader(kt,_e,Dt,Vt){const Gt=Array.isArray(_e)?_e:[_e],zt=suspend(loadingFn(Dt,Vt),[kt,...Gt],{equal:is.equ});return Array.isArray(_e)?zt:zt[0]}useLoader.preload=function(kt,_e,Dt){const Vt=Array.isArray(_e)?_e:[_e];return preload(loadingFn(Dt),[kt,...Vt])};useLoader.clear=function(kt,_e){const Dt=Array.isArray(_e)?_e:[_e];return clear([kt,...Dt])};const roots=new Map,{invalidate,advance}=createLoop(roots),{reconciler,applyProps}=createRenderer(roots,getEventPriority),shallowLoose={objects:"shallow",strict:!1},createRendererInstance=(kt,_e)=>{const Dt=typeof kt=="function"?kt(_e):kt;return isRenderer(Dt)?Dt:new WebGLRenderer({powerPreference:"high-performance",canvas:_e,antialias:!0,alpha:!0,...kt})};function computeInitialSize(kt,_e){const Dt=typeof HTMLCanvasElement<"u"&&kt instanceof HTMLCanvasElement;if(_e){const{width:Vt,height:Gt,top:zt,left:jt,updateStyle:Ht=Dt}=_e;return{width:Vt,height:Gt,top:zt,left:jt,updateStyle:Ht}}else if(typeof HTMLCanvasElement<"u"&&kt instanceof HTMLCanvasElement&&kt.parentElement){const{width:Vt,height:Gt,top:zt,left:jt}=kt.parentElement.getBoundingClientRect();return{width:Vt,height:Gt,top:zt,left:jt,updateStyle:Dt}}else if(typeof OffscreenCanvas<"u"&&kt instanceof OffscreenCanvas)return{width:kt.width,height:kt.height,top:0,left:0,updateStyle:Dt};return{width:0,height:0,top:0,left:0}}function createRoot$1(kt){const _e=roots.get(kt),Dt=_e?.fiber,Vt=_e?.store;_e&&console.warn("R3F.createRoot should only be called once!");const Gt=typeof reportError=="function"?reportError:console.error,zt=Vt||createStore$1(invalidate,advance),jt=Dt||reconciler.createContainer(zt,constantsExports.ConcurrentRoot,null,!1,null,"",Gt,null);_e||roots.set(kt,{fiber:jt,store:zt});let Ht,Wt=!1,qt;return{configure(Xt={}){let{gl:Kt,size:Yt,scene:Zt,events:Jt,onCreated:nn,shadows:rn=!1,linear:Qt=!1,flat:en=!1,legacy:tn=!1,orthographic:sn=!1,frameloop:cn="always",dpr:un=[1,2],performance:hn,raycaster:dn,camera:pn,onPointerMissed:fn}=Xt,mn=zt.getState(),vn=mn.gl;mn.gl||mn.set({gl:vn=createRendererInstance(Kt,kt)});let _n=mn.raycaster;_n||mn.set({raycaster:_n=new Raycaster});const{params:En,...An}=dn||{};if(is.equ(An,_n,shallowLoose)||applyProps(_n,{...An}),is.equ(En,_n.params,shallowLoose)||applyProps(_n,{params:{..._n.params,...En}}),!mn.camera||mn.camera===qt&&!is.equ(qt,pn,shallowLoose)){qt=pn;const wn=pn instanceof Camera,xn=wn?pn:sn?new OrthographicCamera(0,0,0,0,.1,1e3):new PerspectiveCamera(75,0,.1,1e3);wn||(xn.position.z=5,pn&&(applyProps(xn,pn),("aspect"in pn||"left"in pn||"right"in pn||"bottom"in pn||"top"in pn)&&(xn.manual=!0,xn.updateProjectionMatrix())),!mn.camera&&!(pn!=null&&pn.rotation)&&xn.lookAt(0,0,0)),mn.set({camera:xn}),_n.camera=xn}if(!mn.scene){let wn;Zt instanceof Scene?wn=Zt:(wn=new Scene,Zt&&applyProps(wn,Zt)),mn.set({scene:prepare(wn)})}if(!mn.xr){var Tn;const wn=(Dn,kn)=>{const Fn=zt.getState();Fn.frameloop!=="never"&&advance(Dn,!0,Fn,kn)},xn=()=>{const Dn=zt.getState();Dn.gl.xr.enabled=Dn.gl.xr.isPresenting,Dn.gl.xr.setAnimationLoop(Dn.gl.xr.isPresenting?wn:null),Dn.gl.xr.isPresenting||invalidate(Dn)},Rn={connect(){const Dn=zt.getState().gl;Dn.xr.addEventListener("sessionstart",xn),Dn.xr.addEventListener("sessionend",xn)},disconnect(){const Dn=zt.getState().gl;Dn.xr.removeEventListener("sessionstart",xn),Dn.xr.removeEventListener("sessionend",xn)}};typeof((Tn=vn.xr)==null?void 0:Tn.addEventListener)=="function"&&Rn.connect(),mn.set({xr:Rn})}if(vn.shadowMap){const wn=vn.shadowMap.enabled,xn=vn.shadowMap.type;if(vn.shadowMap.enabled=!!rn,is.boo(rn))vn.shadowMap.type=PCFSoftShadowMap;else if(is.str(rn)){var Cn;const Rn={basic:BasicShadowMap,percentage:PCFShadowMap,soft:PCFSoftShadowMap,variance:VSMShadowMap};vn.shadowMap.type=(Cn=Rn[rn])!=null?Cn:PCFSoftShadowMap}else is.obj(rn)&&Object.assign(vn.shadowMap,rn);(wn!==vn.shadowMap.enabled||xn!==vn.shadowMap.type)&&(vn.shadowMap.needsUpdate=!0)}const yn=getColorManagement();yn&&("enabled"in yn?yn.enabled=!tn:"legacyMode"in yn&&(yn.legacyMode=tn)),Wt||applyProps(vn,{outputEncoding:Qt?3e3:3001,toneMapping:en?NoToneMapping:ACESFilmicToneMapping}),mn.legacy!==tn&&mn.set(()=>({legacy:tn})),mn.linear!==Qt&&mn.set(()=>({linear:Qt})),mn.flat!==en&&mn.set(()=>({flat:en})),Kt&&!is.fun(Kt)&&!isRenderer(Kt)&&!is.equ(Kt,vn,shallowLoose)&&applyProps(vn,Kt),Jt&&!mn.events.handlers&&mn.set({events:Jt(zt)});const Sn=computeInitialSize(kt,Yt);return is.equ(Sn,mn.size,shallowLoose)||mn.setSize(Sn.width,Sn.height,Sn.updateStyle,Sn.top,Sn.left),un&&mn.viewport.dpr!==calculateDpr(un)&&mn.setDpr(un),mn.frameloop!==cn&&mn.setFrameloop(cn),mn.onPointerMissed||mn.set({onPointerMissed:fn}),hn&&!is.equ(hn,mn.performance,shallowLoose)&&mn.set(wn=>({performance:{...wn.performance,...hn}})),Ht=nn,Wt=!0,this},render(Xt){return Wt||this.configure(),reconciler.updateContainer(jsxRuntimeExports.jsx(Provider,{store:zt,children:Xt,onCreated:Ht,rootElement:kt}),jt,null,()=>{}),zt},unmount(){unmountComponentAtNode(kt)}}}function Provider({store:kt,children:_e,onCreated:Dt,rootElement:Vt}){return useIsomorphicLayoutEffect(()=>{const Gt=kt.getState();Gt.set(zt=>({internal:{...zt.internal,active:!0}})),Dt&&Dt(Gt),kt.getState().events.connected||Gt.events.connect==null||Gt.events.connect(Vt)},[]),jsxRuntimeExports.jsx(context.Provider,{value:kt,children:_e})}function unmountComponentAtNode(kt,_e){const Dt=roots.get(kt),Vt=Dt?.fiber;if(Vt){const Gt=Dt?.store.getState();Gt&&(Gt.internal.active=!1),reconciler.updateContainer(null,Vt,null,()=>{Gt&&setTimeout(()=>{try{var zt,jt,Ht,Wt;Gt.events.disconnect==null||Gt.events.disconnect(),(zt=Gt.gl)==null||(jt=zt.renderLists)==null||jt.dispose==null||jt.dispose(),(Ht=Gt.gl)==null||Ht.forceContextLoss==null||Ht.forceContextLoss(),(Wt=Gt.gl)!=null&&Wt.xr&&Gt.xr.disconnect(),dispose(Gt),roots.delete(kt),_e&&_e(kt)}catch{}},500)})}}function createPortal(kt,_e,Dt){return jsxRuntimeExports.jsx(Portal,{children:kt,container:_e,state:Dt},_e.uuid)}function Portal({state:kt={},children:_e,container:Dt}){const{events:Vt,size:Gt,...zt}=kt,jt=useStore$1(),[Ht]=reactExports.useState(()=>new Raycaster),[Wt]=reactExports.useState(()=>new Vector2),qt=reactExports.useCallback((Kt,Yt)=>{const Zt={...Kt};Object.keys(Kt).forEach(nn=>{(privateKeys.includes(nn)||Kt[nn]!==Yt[nn]&&Yt[nn])&&delete Zt[nn]});let Jt;if(Yt&&Gt){const nn=Yt.camera;Jt=Kt.viewport.getCurrentViewport(nn,new Vector3,Gt),nn!==Kt.camera&&updateCamera(nn,Gt)}return{...Zt,scene:Dt,raycaster:Ht,pointer:Wt,mouse:Wt,previousRoot:jt,events:{...Kt.events,...Yt?.events,...Vt},size:{...Kt.size,...Gt},viewport:{...Kt.viewport,...Jt},...zt}},[kt]),[Xt]=reactExports.useState(()=>{const Kt=jt.getState();return create$2((Zt,Jt)=>({...Kt,scene:Dt,raycaster:Ht,pointer:Wt,mouse:Wt,previousRoot:jt,events:{...Kt.events,...Vt},size:{...Kt.size,...Gt},...zt,set:Zt,get:Jt,setEvents:nn=>Zt(rn=>({...rn,events:{...rn.events,...nn}}))}))});return reactExports.useEffect(()=>{const Kt=jt.subscribe(Yt=>Xt.setState(Zt=>qt(Yt,Zt)));return()=>{Kt()}},[qt]),reactExports.useEffect(()=>{Xt.setState(Kt=>qt(jt.getState(),Kt))},[qt]),reactExports.useEffect(()=>()=>{Xt.destroy()},[]),jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:reconciler.createPortal(jsxRuntimeExports.jsx(context.Provider,{value:Xt,children:_e}),Xt,null)})}reconciler.injectIntoDevTools({bundleType:0,rendererPackageName:"@react-three/fiber",version:reactExports.version});function g$1(kt,_e){let Dt;return(...Vt)=>{window.clearTimeout(Dt),Dt=window.setTimeout(()=>kt(...Vt),_e)}}function j$1({debounce:kt,scroll:_e,polyfill:Dt,offsetSize:Vt}={debounce:0,scroll:!1,offsetSize:!1}){const Gt=Dt||(typeof window>"u"?class{}:window.ResizeObserver);if(!Gt)throw new Error("This browser does not support ResizeObserver out of the box. See: https://github.com/react-spring/react-use-measure/#resize-observer-polyfills");const[zt,jt]=reactExports.useState({left:0,top:0,width:0,height:0,bottom:0,right:0,x:0,y:0}),Ht=reactExports.useRef({element:null,scrollContainers:null,resizeObserver:null,lastBounds:zt,orientationHandler:null}),Wt=kt?typeof kt=="number"?kt:kt.scroll:null,qt=kt?typeof kt=="number"?kt:kt.resize:null,Xt=reactExports.useRef(!1);reactExports.useEffect(()=>(Xt.current=!0,()=>void(Xt.current=!1)));const[Kt,Yt,Zt]=reactExports.useMemo(()=>{const Qt=()=>{if(!Ht.current.element)return;const{left:en,top:tn,width:sn,height:cn,bottom:un,right:hn,x:dn,y:pn}=Ht.current.element.getBoundingClientRect(),fn={left:en,top:tn,width:sn,height:cn,bottom:un,right:hn,x:dn,y:pn};Ht.current.element instanceof HTMLElement&&Vt&&(fn.height=Ht.current.element.offsetHeight,fn.width=Ht.current.element.offsetWidth),Object.freeze(fn),Xt.current&&!D$1(Ht.current.lastBounds,fn)&&jt(Ht.current.lastBounds=fn)};return[Qt,qt?g$1(Qt,qt):Qt,Wt?g$1(Qt,Wt):Qt]},[jt,Vt,Wt,qt]);function Jt(){Ht.current.scrollContainers&&(Ht.current.scrollContainers.forEach(Qt=>Qt.removeEventListener("scroll",Zt,!0)),Ht.current.scrollContainers=null),Ht.current.resizeObserver&&(Ht.current.resizeObserver.disconnect(),Ht.current.resizeObserver=null),Ht.current.orientationHandler&&("orientation"in screen&&"removeEventListener"in screen.orientation?screen.orientation.removeEventListener("change",Ht.current.orientationHandler):"onorientationchange"in window&&window.removeEventListener("orientationchange",Ht.current.orientationHandler))}function nn(){Ht.current.element&&(Ht.current.resizeObserver=new Gt(Zt),Ht.current.resizeObserver.observe(Ht.current.element),_e&&Ht.current.scrollContainers&&Ht.current.scrollContainers.forEach(Qt=>Qt.addEventListener("scroll",Zt,{capture:!0,passive:!0})),Ht.current.orientationHandler=()=>{Zt()},"orientation"in screen&&"addEventListener"in screen.orientation?screen.orientation.addEventListener("change",Ht.current.orientationHandler):"onorientationchange"in window&&window.addEventListener("orientationchange",Ht.current.orientationHandler))}const rn=Qt=>{!Qt||Qt===Ht.current.element||(Jt(),Ht.current.element=Qt,Ht.current.scrollContainers=E$1(Qt),nn())};return X$1(Zt,!!_e),W$1(Yt),reactExports.useEffect(()=>{Jt(),nn()},[_e,Zt,Yt]),reactExports.useEffect(()=>Jt,[]),[rn,zt,Kt]}function W$1(kt){reactExports.useEffect(()=>{const _e=kt;return window.addEventListener("resize",_e),()=>void window.removeEventListener("resize",_e)},[kt])}function X$1(kt,_e){reactExports.useEffect(()=>{if(_e){const Dt=kt;return window.addEventListener("scroll",Dt,{capture:!0,passive:!0}),()=>void window.removeEventListener("scroll",Dt,!0)}},[kt,_e])}function E$1(kt){const _e=[];if(!kt||kt===document.body)return _e;const{overflow:Dt,overflowX:Vt,overflowY:Gt}=window.getComputedStyle(kt);return[Dt,Vt,Gt].some(zt=>zt==="auto"||zt==="scroll")&&_e.push(kt),[..._e,...E$1(kt.parentElement)]}const k$2=["x","y","top","bottom","left","right","width","height"],D$1=(kt,_e)=>k$2.every(Dt=>kt[Dt]===_e[Dt]);var __defProp=Object.defineProperty,__defProps=Object.defineProperties,__getOwnPropDescs=Object.getOwnPropertyDescriptors,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(kt,_e,Dt)=>_e in kt?__defProp(kt,_e,{enumerable:!0,configurable:!0,writable:!0,value:Dt}):kt[_e]=Dt,__spreadValues=(kt,_e)=>{for(var Dt in _e||(_e={}))__hasOwnProp.call(_e,Dt)&&__defNormalProp(kt,Dt,_e[Dt]);if(__getOwnPropSymbols)for(var Dt of __getOwnPropSymbols(_e))__propIsEnum.call(_e,Dt)&&__defNormalProp(kt,Dt,_e[Dt]);return kt},__spreadProps=(kt,_e)=>__defProps(kt,__getOwnPropDescs(_e)),_a$3,_b$2;typeof window<"u"&&((_a$3=window.document)!=null&&_a$3.createElement||((_b$2=window.navigator)==null?void 0:_b$2.product)==="ReactNative")?reactExports.useLayoutEffect:reactExports.useEffect;function traverseFiber(kt,_e,Dt){if(!kt)return;if(Dt(kt)===!0)return kt;let Vt=_e?kt.return:kt.child;for(;Vt;){const Gt=traverseFiber(Vt,_e,Dt);if(Gt)return Gt;Vt=_e?null:Vt.sibling}}function wrapContext(kt){try{return Object.defineProperties(kt,{_currentRenderer:{get(){return null},set(){}},_currentRenderer2:{get(){return null},set(){}}})}catch{return kt}}const error=console.error;console.error=function(){const kt=[...arguments].join("");if(kt?.startsWith("Warning:")&&kt.includes("useContext")){console.error=error;return}return error.apply(this,arguments)};const FiberContext=wrapContext(reactExports.createContext(null));class FiberProvider extends reactExports.Component{render(){return reactExports.createElement(FiberContext.Provider,{value:this._reactInternals},this.props.children)}}function useFiber(){const kt=reactExports.useContext(FiberContext);if(kt===null)throw new Error("its-fine: useFiber must be called within a <FiberProvider />!");const _e=reactExports.useId();return reactExports.useMemo(()=>{for(const Vt of[kt,kt?.alternate]){if(!Vt)continue;const Gt=traverseFiber(Vt,!1,zt=>{let jt=zt.memoizedState;for(;jt;){if(jt.memoizedState===_e)return!0;jt=jt.next}});if(Gt)return Gt}},[kt,_e])}function useContextMap(){const kt=useFiber(),[_e]=reactExports.useState(()=>new Map);_e.clear();let Dt=kt;for(;Dt;){if(Dt.type&&typeof Dt.type=="object"){const Gt=Dt.type._context===void 0&&Dt.type.Provider===Dt.type?Dt.type:Dt.type._context;Gt&&Gt!==FiberContext&&!_e.has(Gt)&&_e.set(Gt,reactExports.useContext(wrapContext(Gt)))}Dt=Dt.return}return _e}function useContextBridge(){const kt=useContextMap();return reactExports.useMemo(()=>Array.from(kt.keys()).reduce((_e,Dt)=>Vt=>reactExports.createElement(_e,null,reactExports.createElement(Dt.Provider,__spreadProps(__spreadValues({},Vt),{value:kt.get(Dt)}))),_e=>reactExports.createElement(FiberProvider,__spreadValues({},_e))),[kt])}const DOM_EVENTS={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 createPointerEvents(kt){const{handlePointer:_e}=createEvents(kt);return{priority:1,enabled:!0,compute(Dt,Vt,Gt){Vt.pointer.set(Dt.offsetX/Vt.size.width*2-1,-(Dt.offsetY/Vt.size.height)*2+1),Vt.raycaster.setFromCamera(Vt.pointer,Vt.camera)},connected:void 0,handlers:Object.keys(DOM_EVENTS).reduce((Dt,Vt)=>({...Dt,[Vt]:_e(Vt)}),{}),update:()=>{var Dt;const{events:Vt,internal:Gt}=kt.getState();(Dt=Gt.lastEvent)!=null&&Dt.current&&Vt.handlers&&Vt.handlers.onPointerMove(Gt.lastEvent.current)},connect:Dt=>{var Vt;const{set:Gt,events:zt}=kt.getState();zt.disconnect==null||zt.disconnect(),Gt(jt=>({events:{...jt.events,connected:Dt}})),Object.entries((Vt=zt.handlers)!=null?Vt:[]).forEach(([jt,Ht])=>{const[Wt,qt]=DOM_EVENTS[jt];Dt.addEventListener(Wt,Ht,{passive:qt})})},disconnect:()=>{const{set:Dt,events:Vt}=kt.getState();if(Vt.connected){var Gt;Object.entries((Gt=Vt.handlers)!=null?Gt:[]).forEach(([zt,jt])=>{if(Vt&&Vt.connected instanceof HTMLElement){const[Ht]=DOM_EVENTS[zt];Vt.connected.removeEventListener(Ht,jt)}}),Dt(zt=>({events:{...zt.events,connected:void 0}}))}}}}const CanvasImpl=reactExports.forwardRef(function kt({children:_e,fallback:Dt,resize:Vt,style:Gt,gl:zt,events:jt=createPointerEvents,eventSource:Ht,eventPrefix:Wt,shadows:qt,linear:Xt,flat:Kt,legacy:Yt,orthographic:Zt,frameloop:Jt,dpr:nn,performance:rn,raycaster:Qt,camera:en,scene:tn,onPointerMissed:sn,onCreated:cn,...un},hn){reactExports.useMemo(()=>extend(THREE$1),[]);const dn=useContextBridge(),[pn,fn]=j$1({scroll:!0,debounce:{scroll:50,resize:0},...Vt}),mn=reactExports.useRef(null),vn=reactExports.useRef(null);reactExports.useImperativeHandle(hn,()=>mn.current);const _n=useMutableCallback(sn),[En,An]=reactExports.useState(!1),[Tn,Cn]=reactExports.useState(!1);if(En)throw En;if(Tn)throw Tn;const yn=reactExports.useRef(null);useIsomorphicLayoutEffect(()=>{const wn=mn.current;fn.width>0&&fn.height>0&&wn&&(yn.current||(yn.current=createRoot$1(wn)),yn.current.configure({gl:zt,events:jt,shadows:qt,linear:Xt,flat:Kt,legacy:Yt,orthographic:Zt,frameloop:Jt,dpr:nn,performance:rn,raycaster:Qt,camera:en,scene:tn,size:fn,onPointerMissed:(...xn)=>_n.current==null?void 0:_n.current(...xn),onCreated:xn=>{xn.events.connect==null||xn.events.connect(Ht?isRef$2(Ht)?Ht.current:Ht:vn.current),Wt&&xn.setEvents({compute:(Rn,Dn)=>{const kn=Rn[Wt+"X"],Fn=Rn[Wt+"Y"];Dn.pointer.set(kn/Dn.size.width*2-1,-(Fn/Dn.size.height)*2+1),Dn.raycaster.setFromCamera(Dn.pointer,Dn.camera)}}),cn?.(xn)}}),yn.current.render(jsxRuntimeExports.jsx(dn,{children:jsxRuntimeExports.jsx(ErrorBoundary,{set:Cn,children:jsxRuntimeExports.jsx(reactExports.Suspense,{fallback:jsxRuntimeExports.jsx(Block,{set:An}),children:_e})})})))}),reactExports.useEffect(()=>{const wn=mn.current;if(wn)return()=>unmountComponentAtNode(wn)},[]);const Sn=Ht?"none":"auto";return jsxRuntimeExports.jsx("div",{ref:vn,style:{position:"relative",width:"100%",height:"100%",overflow:"hidden",pointerEvents:Sn,...Gt},...un,children:jsxRuntimeExports.jsx("div",{ref:pn,style:{width:"100%",height:"100%"},children:jsxRuntimeExports.jsx("canvas",{ref:mn,style:{display:"block"},children:Dt})})})}),Canvas=reactExports.forwardRef(function kt(_e,Dt){return jsxRuntimeExports.jsx(FiberProvider,{children:jsxRuntimeExports.jsx(CanvasImpl,{..._e,ref:Dt})})});function _extends$1(){return _extends$1=Object.assign?Object.assign.bind():function(kt){for(var _e=1;_e<arguments.length;_e++){var Dt=arguments[_e];for(var Vt in Dt)({}).hasOwnProperty.call(Dt,Vt)&&(kt[Vt]=Dt[Vt])}return kt},_extends$1.apply(null,arguments)}var createRoot,m$2=reactDomExports;createRoot=m$2.createRoot,m$2.hydrateRoot;const v1=new Vector3,v2=new Vector3,v3=new Vector3,v4$1=new Vector2;function defaultCalculatePosition(kt,_e,Dt){const Vt=v1.setFromMatrixPosition(kt.matrixWorld);Vt.project(_e);const Gt=Dt.width/2,zt=Dt.height/2;return[Vt.x*Gt+Gt,-(Vt.y*zt)+zt]}function isObjectBehindCamera(kt,_e){const Dt=v1.setFromMatrixPosition(kt.matrixWorld),Vt=v2.setFromMatrixPosition(_e.matrixWorld),Gt=Dt.sub(Vt),zt=_e.getWorldDirection(v3);return Gt.angleTo(zt)>Math.PI/2}function isObjectVisible(kt,_e,Dt,Vt){const Gt=v1.setFromMatrixPosition(kt.matrixWorld),zt=Gt.clone();zt.project(_e),v4$1.set(zt.x,zt.y),Dt.setFromCamera(v4$1,_e);const jt=Dt.intersectObjects(Vt,!0);if(jt.length){const Ht=jt[0].distance;return Gt.distanceTo(Dt.ray.origin)<Ht}return!0}function objectScale(kt,_e){if(_e instanceof OrthographicCamera)return _e.zoom;if(_e instanceof PerspectiveCamera){const Dt=v1.setFromMatrixPosition(kt.matrixWorld),Vt=v2.setFromMatrixPosition(_e.matrixWorld),Gt=_e.fov*Math.PI/180,zt=Dt.distanceTo(Vt);return 1/(2*Math.tan(Gt/2)*zt)}else return 1}function objectZIndex(kt,_e,Dt){if(_e instanceof PerspectiveCamera||_e instanceof OrthographicCamera){const Vt=v1.setFromMatrixPosition(kt.matrixWorld),Gt=v2.setFromMatrixPosition(_e.matrixWorld),zt=Vt.distanceTo(Gt),jt=(Dt[1]-Dt[0])/(_e.far-_e.near),Ht=Dt[1]-jt*_e.far;return Math.round(jt*zt+Ht)}}const epsilon=kt=>Math.abs(kt)<1e-10?0:kt;function getCSSMatrix(kt,_e,Dt=""){let Vt="matrix3d(";for(let Gt=0;Gt!==16;Gt++)Vt+=epsilon(_e[Gt]*kt.elements[Gt])+(Gt!==15?",":")");return Dt+Vt}const getCameraCSSMatrix=(kt=>_e=>getCSSMatrix(_e,kt))([1,-1,1,1,1,-1,1,1,1,-1,1,1,1,-1,1,1]),getObjectCSSMatrix=(kt=>(_e,Dt)=>getCSSMatrix(_e,kt(Dt),"translate(-50%,-50%)"))(kt=>[1/kt,1/kt,1/kt,1,-1/kt,-1/kt,-1/kt,-1,1/kt,1/kt,1/kt,1,1,1,1,1]);function isRefObject(kt){return kt&&typeof kt=="object"&&"current"in kt}const Html=reactExports.forwardRef(({children:kt,eps:_e=.001,style:Dt,className:Vt,prepend:Gt,center:zt,fullscreen:jt,portal:Ht,distanceFactor:Wt,sprite:qt=!1,transform:Xt=!1,occlude:Kt,onOcclude:Yt,castShadow:Zt,receiveShadow:Jt,material:nn,geometry:rn,zIndexRange:Qt=[16777271,0],calculatePosition:en=defaultCalculatePosition,as:tn="div",wrapperClass:sn,pointerEvents:cn="auto",...un},hn)=>{const{gl:dn,camera:pn,scene:fn,size:mn,raycaster:vn,events:_n,viewport:En}=useThree(),[An]=reactExports.useState(()=>document.createElement(tn)),Tn=reactExports.useRef(),Cn=reactExports.useRef(null),yn=reactExports.useRef(0),Sn=reactExports.useRef([0,0]),wn=reactExports.useRef(null),xn=reactExports.useRef(null),Rn=Ht?.current||_n.connected||dn.domElement.parentNode,Dn=reactExports.useRef(null),kn=reactExports.useRef(!1),Fn=reactExports.useMemo(()=>Kt&&Kt!=="blending"||Array.isArray(Kt)&&Kt.length&&isRefObject(Kt[0]),[Kt]);reactExports.useLayoutEffect(()=>{const ar=dn.domElement;Kt&&Kt==="blending"?(ar.style.zIndex=`${Math.floor(Qt[0]/2)}`,ar.style.position="absolute",ar.style.pointerEvents="none"):(ar.style.zIndex=null,ar.style.position=null,ar.style.pointerEvents=null)},[Kt]),reactExports.useLayoutEffect(()=>{if(Cn.current){const ar=Tn.current=createRoot(An);if(fn.updateMatrixWorld(),Xt)An.style.cssText="position:absolute;top:0;left:0;pointer-events:none;overflow:hidden;";else{const zn=en(Cn.current,pn,mn);An.style.cssText=`position:absolute;top:0;left:0;transform:translate3d(${zn[0]}px,${zn[1]}px,0);transform-origin:0 0;`}return Rn&&(Gt?Rn.prepend(An):Rn.appendChild(An)),()=>{Rn&&Rn.removeChild(An),ar.unmount()}}},[Rn,Xt]),reactExports.useLayoutEffect(()=>{sn&&(An.className=sn)},[sn]);const Pn=reactExports.useMemo(()=>Xt?{position:"absolute",top:0,left:0,width:mn.width,height:mn.height,transformStyle:"preserve-3d",pointerEvents:"none"}:{position:"absolute",transform:zt?"translate3d(-50%,-50%,0)":"none",...jt&&{top:-mn.height/2,left:-mn.width/2,width:mn.width,height:mn.height},...Dt},[Dt,zt,jt,mn,Xt]),Bn=reactExports.useMemo(()=>({position:"absolute",pointerEvents:cn}),[cn]);reactExports.useLayoutEffect(()=>{if(kn.current=!1,Xt){var ar;(ar=Tn.current)==null||ar.render(reactExports.createElement("div",{ref:wn,style:Pn},reactExports.createElement("div",{ref:xn,style:Bn},reactExports.createElement("div",{ref:hn,className:Vt,style:Dt,children:kt}))))}else{var zn;(zn=Tn.current)==null||zn.render(reactExports.createElement("div",{ref:hn,style:Pn,className:Vt,children:kt}))}});const qn=reactExports.useRef(!0);useFrame(ar=>{if(Cn.current){pn.updateMatrixWorld(),Cn.current.updateWorldMatrix(!0,!1);const zn=Xt?Sn.current:en(Cn.current,pn,mn);if(Xt||Math.abs(yn.current-pn.zoom)>_e||Math.abs(Sn.current[0]-zn[0])>_e||Math.abs(Sn.current[1]-zn[1])>_e){const ur=isObjectBehindCamera(Cn.current,pn);let Hn=!1;Fn&&(Array.isArray(Kt)?Hn=Kt.map(Un=>Un.current):Kt!=="blending"&&(Hn=[fn]));const sr=qn.current;if(Hn){const Un=isObjectVisible(Cn.current,pn,vn,Hn);qn.current=Un&&!ur}else qn.current=!ur;sr!==qn.current&&(Yt?Yt(!qn.current):An.style.display=qn.current?"block":"none");const gr=Math.floor(Qt[0]/2),fr=Kt?Fn?[Qt[0],gr]:[gr-1,0]:Qt;if(An.style.zIndex=`${objectZIndex(Cn.current,pn,fr)}`,Xt){const[Un,In]=[mn.width/2,mn.height/2],jn=pn.projectionMatrix.elements[5]*In,{isOrthographicCamera:or,top:cr,left:lr,bottom:vr,right:mr}=pn,Ar=getCameraCSSMatrix(pn.matrixWorldInverse),Lr=or?`scale(${jn})translate(${epsilon(-(mr+lr)/2)}px,${epsilon((cr+vr)/2)}px)`:`translateZ(${jn}px)`;let Cr=Cn.current.matrixWorld;qt&&(Cr=pn.matrixWorldInverse.clone().transpose().copyPosition(Cr).scale(Cn.current.scale),Cr.elements[3]=Cr.elements[7]=Cr.elements[11]=0,Cr.elements[15]=1),An.style.width=mn.width+"px",An.style.height=mn.height+"px",An.style.perspective=or?"":`${jn}px`,wn.current&&xn.current&&(wn.current.style.transform=`${Lr}${Ar}translate(${Un}px,${In}px)`,xn.current.style.transform=getObjectCSSMatrix(Cr,1/((Wt||10)/400)))}else{const Un=Wt===void 0?1:objectScale(Cn.current,pn)*Wt;An.style.transform=`translate3d(${zn[0]}px,${zn[1]}px,0) scale(${Un})`}Sn.current=zn,yn.current=pn.zoom}}if(!Fn&&Dn.current&&!kn.current)if(Xt){if(wn.current){const zn=wn.current.children[0];if(zn!=null&&zn.clientWidth&&zn!=null&&zn.clientHeight){const{isOrthographicCamera:ur}=pn;if(ur||rn)un.scale&&(Array.isArray(un.scale)?un.scale instanceof Vector3?Dn.current.scale.copy(un.scale.clone().divideScalar(1)):Dn.current.scale.set(1/un.scale[0],1/un.scale[1],1/un.scale[2]):Dn.current.scale.setScalar(1/un.scale));else{const Hn=(Wt||10)/400,sr=zn.clientWidth*Hn,gr=zn.clientHeight*Hn;Dn.current.scale.set(sr,gr,1)}kn.current=!0}}}else{const zn=An.children[0];if(zn!=null&&zn.clientWidth&&zn!=null&&zn.clientHeight){const ur=1/En.factor,Hn=zn.clientWidth*ur,sr=zn.clientHeight*ur;Dn.current.scale.set(Hn,sr,1),kn.current=!0}Dn.current.lookAt(ar.camera.position)}});const tr=reactExports.useMemo(()=>({vertexShader:Xt?void 0:`
|
|
4004
|
+
`)+on.join(" > ")}return null},Dt.getPublicRootInstance=function(on){if(on=on.current,!on.child)return null;switch(on.child.tag){case 5:return Tn(on.child.stateNode);default:return on.child.stateNode}},Dt.injectIntoDevTools=function(on){if(on={bundleType:on.bundleType,version:on.version,rendererPackageName:on.rendererPackageName,rendererConfig:on.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:Ht.ReactCurrentDispatcher,findHostInstanceByFiber:dy,findFiberByHostInstance:on.findFiberByHostInstance||my,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.0.0-fc46dba67-20220329"},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u")on=!1;else{var an=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(an.isDisabled||!an.supportsFiber)on=!0;else{try{tu=an.inject(on),Eo=an}catch{}on=!!an.checkDCE}}return on},Dt.isAlreadyRendering=function(){return!1},Dt.observeVisibleRects=function(on,an,gn,bn){if(!or)throw Error(jt(363));on=Ip(on,an);var Mn=Cr(on,gn,bn).disconnect;return{disconnect:function(){Mn()}}},Dt.registerMutableSourceForHydration=function(on,an){var gn=an._getVersion;gn=gn(an._source),on.mutableSourceEagerHydrationData==null?on.mutableSourceEagerHydrationData=[an,gn]:on.mutableSourceEagerHydrationData.push(an,gn)},Dt.runWithPriority=function(on,an){var gn=_s;try{return _s=on,an()}finally{_s=gn}},Dt.shouldError=function(){return null},Dt.shouldSuspend=function(){return!1},Dt.updateContainer=function(on,an,gn,bn){var Mn=an.current,Nn=Ks(),nr=zo(Mn);return gn=xv(gn),an.context===null?an.context=gn:an.pendingContext=gn,an=Oo(Nn,nr),an.payload={element:on},bn=bn===void 0?null:bn,bn!==null&&(an.callback=bn),$o(Mn,an),on=po(Mn,nr,Nn),on!==null&&ou(on,Mn,nr),nr},Dt};reactReconciler.exports=reactReconciler_production_min;var reactReconcilerExports=reactReconciler.exports;const Reconciler=getDefaultExportFromCjs(reactReconcilerExports),isPromise=kt=>typeof kt=="object"&&typeof kt.then=="function",globalCache=[];function shallowEqualArrays(kt,_e,Dt=(Vt,Gt)=>Vt===Gt){if(kt===_e)return!0;if(!kt||!_e)return!1;const Vt=kt.length;if(_e.length!==Vt)return!1;for(let Gt=0;Gt<Vt;Gt++)if(!Dt(kt[Gt],_e[Gt]))return!1;return!0}function query(kt,_e=null,Dt=!1,Vt={}){_e===null&&(_e=[kt]);for(const zt of globalCache)if(shallowEqualArrays(_e,zt.keys,zt.equal)){if(Dt)return;if(Object.prototype.hasOwnProperty.call(zt,"error"))throw zt.error;if(Object.prototype.hasOwnProperty.call(zt,"response"))return Vt.lifespan&&Vt.lifespan>0&&(zt.timeout&&clearTimeout(zt.timeout),zt.timeout=setTimeout(zt.remove,Vt.lifespan)),zt.response;if(!Dt)throw zt.promise}const Gt={keys:_e,equal:Vt.equal,remove:()=>{const zt=globalCache.indexOf(Gt);zt!==-1&&globalCache.splice(zt,1)},promise:(isPromise(kt)?kt:kt(..._e)).then(zt=>{Gt.response=zt,Vt.lifespan&&Vt.lifespan>0&&(Gt.timeout=setTimeout(Gt.remove,Vt.lifespan))}).catch(zt=>Gt.error=zt)};if(globalCache.push(Gt),!Dt)throw Gt.promise}const suspend=(kt,_e,Dt)=>query(kt,_e,!1,Dt),preload=(kt,_e,Dt)=>void query(kt,_e,!0,Dt),clear=kt=>{if(kt===void 0||kt.length===0)globalCache.splice(0,globalCache.length);else{const _e=globalCache.find(Dt=>shallowEqualArrays(kt,Dt.keys,Dt.equal));_e&&_e.remove()}},catalogue={},extend=kt=>void Object.assign(catalogue,kt);function createRenderer(kt,_e){function Dt(Xt,{args:Kt=[],attach:Yt,...Zt},Jt){let nn=`${Xt[0].toUpperCase()}${Xt.slice(1)}`,rn;if(Xt==="primitive"){if(Zt.object===void 0)throw new Error("R3F: Primitives without 'object' are invalid!");const Qt=Zt.object;rn=prepare(Qt,{type:Xt,root:Jt,attach:Yt,primitive:!0})}else{const Qt=catalogue[nn];if(!Qt)throw new Error(`R3F: ${nn} 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(Kt))throw new Error("R3F: The args prop must be an array!");rn=prepare(new Qt(...Kt),{type:Xt,root:Jt,attach:Yt,memoizedProps:{args:Kt}})}return rn.__r3f.attach===void 0&&(rn instanceof BufferGeometry?rn.__r3f.attach="geometry":rn instanceof Material&&(rn.__r3f.attach="material")),nn!=="inject"&&applyProps$1(rn,Zt),rn}function Vt(Xt,Kt){let Yt=!1;if(Kt){var Zt,Jt;(Zt=Kt.__r3f)!=null&&Zt.attach?attach(Xt,Kt,Kt.__r3f.attach):Kt.isObject3D&&Xt.isObject3D&&(Xt.add(Kt),Yt=!0),Yt||(Jt=Xt.__r3f)==null||Jt.objects.push(Kt),Kt.__r3f||prepare(Kt,{}),Kt.__r3f.parent=Xt,updateInstance(Kt),invalidateInstance(Kt)}}function Gt(Xt,Kt,Yt){let Zt=!1;if(Kt){var Jt,nn;if((Jt=Kt.__r3f)!=null&&Jt.attach)attach(Xt,Kt,Kt.__r3f.attach);else if(Kt.isObject3D&&Xt.isObject3D){Kt.parent=Xt,Kt.dispatchEvent({type:"added"}),Xt.dispatchEvent({type:"childadded",child:Kt});const rn=Xt.children.filter(en=>en!==Kt),Qt=rn.indexOf(Yt);Xt.children=[...rn.slice(0,Qt),Kt,...rn.slice(Qt)],Zt=!0}Zt||(nn=Xt.__r3f)==null||nn.objects.push(Kt),Kt.__r3f||prepare(Kt,{}),Kt.__r3f.parent=Xt,updateInstance(Kt),invalidateInstance(Kt)}}function zt(Xt,Kt,Yt=!1){Xt&&[...Xt].forEach(Zt=>jt(Kt,Zt,Yt))}function jt(Xt,Kt,Yt){if(Kt){var Zt,Jt,nn;if(Kt.__r3f&&(Kt.__r3f.parent=null),(Zt=Xt.__r3f)!=null&&Zt.objects&&(Xt.__r3f.objects=Xt.__r3f.objects.filter(sn=>sn!==Kt)),(Jt=Kt.__r3f)!=null&&Jt.attach)detach(Xt,Kt,Kt.__r3f.attach);else if(Kt.isObject3D&&Xt.isObject3D){var rn;Xt.remove(Kt),(rn=Kt.__r3f)!=null&&rn.root&&removeInteractivity(findInitialRoot(Kt),Kt)}const en=(nn=Kt.__r3f)==null?void 0:nn.primitive,tn=!en&&(Yt===void 0?Kt.dispose!==null:Yt);if(!en){var Qt;zt((Qt=Kt.__r3f)==null?void 0:Qt.objects,Kt,tn),zt(Kt.children,Kt,tn)}if(delete Kt.__r3f,tn&&Kt.dispose&&Kt.type!=="Scene"){const sn=()=>{try{Kt.dispose()}catch{}};typeof IS_REACT_ACT_ENVIRONMENT>"u"?schedulerExports.unstable_scheduleCallback(schedulerExports.unstable_IdlePriority,sn):sn()}invalidateInstance(Xt)}}function Ht(Xt,Kt,Yt,Zt){var Jt;const nn=(Jt=Xt.__r3f)==null?void 0:Jt.parent;if(!nn)return;const rn=Dt(Kt,Yt,Xt.__r3f.root);if(Xt.children){for(const Qt of Xt.children)Qt.__r3f&&Vt(rn,Qt);Xt.children=Xt.children.filter(Qt=>!Qt.__r3f)}Xt.__r3f.objects.forEach(Qt=>Vt(rn,Qt)),Xt.__r3f.objects=[],Xt.__r3f.autoRemovedBeforeAppend||jt(nn,Xt),rn.parent&&(rn.__r3f.autoRemovedBeforeAppend=!0),Vt(nn,rn),rn.raycast&&rn.__r3f.eventCount&&findInitialRoot(rn).getState().internal.interaction.push(rn),[Zt,Zt.alternate].forEach(Qt=>{Qt!==null&&(Qt.stateNode=rn,Qt.ref&&(typeof Qt.ref=="function"?Qt.ref(rn):Qt.ref.current=rn))})}const Wt=()=>console.warn("Text is not allowed in the R3F tree! This could be stray whitespace or characters.");return{reconciler:Reconciler({createInstance:Dt,removeChild:jt,appendChild:Vt,appendInitialChild:Vt,insertBefore:Gt,supportsMutation:!0,isPrimaryRenderer:!1,supportsPersistence:!1,supportsHydration:!1,noTimeout:-1,appendChildToContainer:(Xt,Kt)=>{if(!Kt)return;const Yt=Xt.getState().scene;Yt.__r3f&&(Yt.__r3f.root=Xt,Vt(Yt,Kt))},removeChildFromContainer:(Xt,Kt)=>{Kt&&jt(Xt.getState().scene,Kt)},insertInContainerBefore:(Xt,Kt,Yt)=>{if(!Kt||!Yt)return;const Zt=Xt.getState().scene;Zt.__r3f&&Gt(Zt,Kt,Yt)},getRootHostContext:()=>null,getChildHostContext:Xt=>Xt,finalizeInitialChildren(Xt){var Kt;return!!((Kt=Xt?.__r3f)!=null?Kt:{}).handlers},prepareUpdate(Xt,Kt,Yt,Zt){var Jt;if(((Jt=Xt?.__r3f)!=null?Jt:{}).primitive&&Zt.object&&Zt.object!==Xt)return[!0];{const{args:rn=[],children:Qt,...en}=Zt,{args:tn=[],children:sn,...cn}=Yt;if(!Array.isArray(rn))throw new Error("R3F: the args prop must be an array!");if(rn.some((hn,dn)=>hn!==tn[dn]))return[!0];const un=diffProps(Xt,en,cn,!0);return un.changes.length?[!1,un]:null}},commitUpdate(Xt,[Kt,Yt],Zt,Jt,nn,rn){Kt?Ht(Xt,Zt,nn,rn):applyProps$1(Xt,Yt)},commitMount(Xt,Kt,Yt,Zt){var Jt;const nn=(Jt=Xt.__r3f)!=null?Jt:{};Xt.raycast&&nn.handlers&&nn.eventCount&&findInitialRoot(Xt).getState().internal.interaction.push(Xt)},getPublicInstance:Xt=>Xt,prepareForCommit:()=>null,preparePortalMount:Xt=>prepare(Xt.getState().scene),resetAfterCommit:()=>{},shouldSetTextContent:()=>!1,clearContainer:()=>!1,hideInstance(Xt){var Kt;const{attach:Yt,parent:Zt}=(Kt=Xt.__r3f)!=null?Kt:{};Yt&&Zt&&detach(Zt,Xt,Yt),Xt.isObject3D&&(Xt.visible=!1),invalidateInstance(Xt)},unhideInstance(Xt,Kt){var Yt;const{attach:Zt,parent:Jt}=(Yt=Xt.__r3f)!=null?Yt:{};Zt&&Jt&&attach(Jt,Xt,Zt),(Xt.isObject3D&&Kt.visible==null||Kt.visible)&&(Xt.visible=!0),invalidateInstance(Xt)},createTextInstance:Wt,hideTextInstance:Wt,unhideTextInstance:Wt,getCurrentEventPriority:()=>_e?_e():constantsExports.DefaultEventPriority,beforeActiveInstanceBlur:()=>{},afterActiveInstanceBlur:()=>{},detachDeletedInstance:()=>{},now:typeof performance<"u"&&is.fun(performance.now)?performance.now:is.fun(Date.now)?Date.now:()=>0,scheduleTimeout:is.fun(setTimeout)?setTimeout:void 0,cancelTimeout:is.fun(clearTimeout)?clearTimeout:void 0}),applyProps:applyProps$1}}var _window$document,_window$navigator;const hasColorSpace$1=kt=>"colorSpace"in kt||"outputColorSpace"in kt,getColorManagement=()=>{var kt;return(kt=catalogue.ColorManagement)!=null?kt:null},isOrthographicCamera$1=kt=>kt&&kt.isOrthographicCamera,isRef$2=kt=>kt&&kt.hasOwnProperty("current"),useIsomorphicLayoutEffect=typeof window<"u"&&((_window$document=window.document)!=null&&_window$document.createElement||((_window$navigator=window.navigator)==null?void 0:_window$navigator.product)==="ReactNative")?reactExports.useLayoutEffect:reactExports.useEffect;function useMutableCallback(kt){const _e=reactExports.useRef(kt);return useIsomorphicLayoutEffect(()=>void(_e.current=kt),[kt]),_e}function Block({set:kt}){return useIsomorphicLayoutEffect(()=>(kt(new Promise(()=>null)),()=>kt(!1)),[kt]),null}class ErrorBoundary extends reactExports.Component{constructor(..._e){super(..._e),this.state={error:!1}}componentDidCatch(_e){this.props.set(_e)}render(){return this.state.error?null:this.props.children}}ErrorBoundary.getDerivedStateFromError=()=>({error:!0});const DEFAULT="__default",DEFAULTS=new Map,isDiffSet=kt=>kt&&!!kt.memoized&&!!kt.changes;function calculateDpr(kt){var _e;const Dt=typeof window<"u"?(_e=window.devicePixelRatio)!=null?_e:2:1;return Array.isArray(kt)?Math.min(Math.max(kt[0],Dt),kt[1]):kt}const getRootState=kt=>{var _e;return(_e=kt.__r3f)==null?void 0:_e.root.getState()};function findInitialRoot(kt){let _e=kt.__r3f.root;for(;_e.getState().previousRoot;)_e=_e.getState().previousRoot;return _e}const is={obj:kt=>kt===Object(kt)&&!is.arr(kt)&&typeof kt!="function",fun:kt=>typeof kt=="function",str:kt=>typeof kt=="string",num:kt=>typeof kt=="number",boo:kt=>typeof kt=="boolean",und:kt=>kt===void 0,arr:kt=>Array.isArray(kt),equ(kt,_e,{arrays:Dt="shallow",objects:Vt="reference",strict:Gt=!0}={}){if(typeof kt!=typeof _e||!!kt!=!!_e)return!1;if(is.str(kt)||is.num(kt)||is.boo(kt))return kt===_e;const zt=is.obj(kt);if(zt&&Vt==="reference")return kt===_e;const jt=is.arr(kt);if(jt&&Dt==="reference")return kt===_e;if((jt||zt)&&kt===_e)return!0;let Ht;for(Ht in kt)if(!(Ht in _e))return!1;if(zt&&Dt==="shallow"&&Vt==="shallow"){for(Ht in Gt?_e:kt)if(!is.equ(kt[Ht],_e[Ht],{strict:Gt,objects:"reference"}))return!1}else for(Ht in Gt?_e:kt)if(kt[Ht]!==_e[Ht])return!1;if(is.und(Ht)){if(jt&&kt.length===0&&_e.length===0||zt&&Object.keys(kt).length===0&&Object.keys(_e).length===0)return!0;if(kt!==_e)return!1}return!0}};function buildGraph(kt){const _e={nodes:{},materials:{}};return kt&&kt.traverse(Dt=>{Dt.name&&(_e.nodes[Dt.name]=Dt),Dt.material&&!_e.materials[Dt.material.name]&&(_e.materials[Dt.material.name]=Dt.material)}),_e}function dispose(kt){kt.dispose&&kt.type!=="Scene"&&kt.dispose();for(const _e in kt)_e.dispose==null||_e.dispose(),delete kt[_e]}function prepare(kt,_e){const Dt=kt;return Dt.__r3f={type:"",root:null,previousAttach:null,memoizedProps:{},eventCount:0,handlers:{},objects:[],parent:null,..._e},kt}function resolve(kt,_e){let Dt=kt;if(_e.includes("-")){const Vt=_e.split("-"),Gt=Vt.pop();return Dt=Vt.reduce((zt,jt)=>zt[jt],kt),{target:Dt,key:Gt}}else return{target:Dt,key:_e}}const INDEX_REGEX=/-\d+$/;function attach(kt,_e,Dt){if(is.str(Dt)){if(INDEX_REGEX.test(Dt)){const zt=Dt.replace(INDEX_REGEX,""),{target:jt,key:Ht}=resolve(kt,zt);Array.isArray(jt[Ht])||(jt[Ht]=[])}const{target:Vt,key:Gt}=resolve(kt,Dt);_e.__r3f.previousAttach=Vt[Gt],Vt[Gt]=_e}else _e.__r3f.previousAttach=Dt(kt,_e)}function detach(kt,_e,Dt){var Vt,Gt;if(is.str(Dt)){const{target:zt,key:jt}=resolve(kt,Dt),Ht=_e.__r3f.previousAttach;Ht===void 0?delete zt[jt]:zt[jt]=Ht}else(Vt=_e.__r3f)==null||Vt.previousAttach==null||Vt.previousAttach(kt,_e);(Gt=_e.__r3f)==null||delete Gt.previousAttach}function diffProps(kt,{children:_e,key:Dt,ref:Vt,...Gt},{children:zt,key:jt,ref:Ht,...Wt}={},qt=!1){const Xt=kt.__r3f,Kt=Object.entries(Gt),Yt=[];if(qt){const Jt=Object.keys(Wt);for(let nn=0;nn<Jt.length;nn++)Gt.hasOwnProperty(Jt[nn])||Kt.unshift([Jt[nn],DEFAULT+"remove"])}Kt.forEach(([Jt,nn])=>{var rn;if((rn=kt.__r3f)!=null&&rn.primitive&&Jt==="object"||is.equ(nn,Wt[Jt]))return;if(/^on(Pointer|Click|DoubleClick|ContextMenu|Wheel)/.test(Jt))return Yt.push([Jt,nn,!0,[]]);let Qt=[];Jt.includes("-")&&(Qt=Jt.split("-")),Yt.push([Jt,nn,!1,Qt]);for(const en in Gt){const tn=Gt[en];en.startsWith(`${Jt}-`)&&Yt.push([en,tn,!1,en.split("-")])}});const Zt={...Gt};return Xt!=null&&Xt.memoizedProps&&Xt!=null&&Xt.memoizedProps.args&&(Zt.args=Xt.memoizedProps.args),Xt!=null&&Xt.memoizedProps&&Xt!=null&&Xt.memoizedProps.attach&&(Zt.attach=Xt.memoizedProps.attach),{memoized:Zt,changes:Yt}}const __DEV__=typeof process<"u"&&!1;function applyProps$1(kt,_e){var Dt;const Vt=kt.__r3f,Gt=Vt?.root,zt=Gt==null||Gt.getState==null?void 0:Gt.getState(),{memoized:jt,changes:Ht}=isDiffSet(_e)?_e:diffProps(kt,_e),Wt=Vt?.eventCount;kt.__r3f&&(kt.__r3f.memoizedProps=jt);for(let Xt=0;Xt<Ht.length;Xt++){let[Kt,Yt,Zt,Jt]=Ht[Xt];if(hasColorSpace$1(kt)){const en="srgb",tn="srgb-linear";Kt==="encoding"?(Kt="colorSpace",Yt=Yt===3001?en:tn):Kt==="outputEncoding"&&(Kt="outputColorSpace",Yt=Yt===3001?en:tn)}let nn=kt,rn=nn[Kt];if(Jt.length&&(rn=Jt.reduce((Qt,en)=>Qt[en],kt),!(rn&&rn.set))){const[Qt,...en]=Jt.reverse();nn=en.reverse().reduce((tn,sn)=>tn[sn],kt),Kt=Qt}if(Yt===DEFAULT+"remove")if(nn.constructor){let Qt=DEFAULTS.get(nn.constructor);Qt||(Qt=new nn.constructor,DEFAULTS.set(nn.constructor,Qt)),Yt=Qt[Kt]}else Yt=0;if(Zt&&Vt)Yt?Vt.handlers[Kt]=Yt:delete Vt.handlers[Kt],Vt.eventCount=Object.keys(Vt.handlers).length;else if(rn&&rn.set&&(rn.copy||rn instanceof Layers)){if(Array.isArray(Yt))rn.fromArray?rn.fromArray(Yt):rn.set(...Yt);else if(rn.copy&&Yt&&Yt.constructor&&(__DEV__?rn.constructor.name===Yt.constructor.name:rn.constructor===Yt.constructor))rn.copy(Yt);else if(Yt!==void 0){const Qt=rn instanceof Color$1;!Qt&&rn.setScalar?rn.setScalar(Yt):rn instanceof Layers&&Yt instanceof Layers?rn.mask=Yt.mask:rn.set(Yt),!getColorManagement()&&zt&&!zt.linear&&Qt&&rn.convertSRGBToLinear()}}else if(nn[Kt]=Yt,nn[Kt]instanceof Texture&&nn[Kt].format===RGBAFormat&&nn[Kt].type===UnsignedByteType&&zt){const Qt=nn[Kt];hasColorSpace$1(Qt)&&hasColorSpace$1(zt.gl)?Qt.colorSpace=zt.gl.outputColorSpace:Qt.encoding=zt.gl.outputEncoding}invalidateInstance(kt)}if(Vt&&Vt.parent&&kt.raycast&&Wt!==Vt.eventCount){const Xt=findInitialRoot(kt).getState().internal,Kt=Xt.interaction.indexOf(kt);Kt>-1&&Xt.interaction.splice(Kt,1),Vt.eventCount&&Xt.interaction.push(kt)}return!(Ht.length===1&&Ht[0][0]==="onUpdate")&&Ht.length&&(Dt=kt.__r3f)!=null&&Dt.parent&&updateInstance(kt),kt}function invalidateInstance(kt){var _e,Dt;const Vt=(_e=kt.__r3f)==null||(Dt=_e.root)==null||Dt.getState==null?void 0:Dt.getState();Vt&&Vt.internal.frames===0&&Vt.invalidate()}function updateInstance(kt){kt.onUpdate==null||kt.onUpdate(kt)}function updateCamera(kt,_e){kt.manual||(isOrthographicCamera$1(kt)?(kt.left=_e.width/-2,kt.right=_e.width/2,kt.top=_e.height/2,kt.bottom=_e.height/-2):kt.aspect=_e.width/_e.height,kt.updateProjectionMatrix(),kt.updateMatrixWorld())}function makeId(kt){return(kt.eventObject||kt.object).uuid+"/"+kt.index+kt.instanceId}function getEventPriority(){var kt;const _e=typeof self<"u"&&self||typeof window<"u"&&window;if(!_e)return constantsExports.DefaultEventPriority;switch((kt=_e.event)==null?void 0:kt.type){case"click":case"contextmenu":case"dblclick":case"pointercancel":case"pointerdown":case"pointerup":return constantsExports.DiscreteEventPriority;case"pointermove":case"pointerout":case"pointerover":case"pointerenter":case"pointerleave":case"wheel":return constantsExports.ContinuousEventPriority;default:return constantsExports.DefaultEventPriority}}function releaseInternalPointerCapture(kt,_e,Dt,Vt){const Gt=Dt.get(_e);Gt&&(Dt.delete(_e),Dt.size===0&&(kt.delete(Vt),Gt.target.releasePointerCapture(Vt)))}function removeInteractivity(kt,_e){const{internal:Dt}=kt.getState();Dt.interaction=Dt.interaction.filter(Vt=>Vt!==_e),Dt.initialHits=Dt.initialHits.filter(Vt=>Vt!==_e),Dt.hovered.forEach((Vt,Gt)=>{(Vt.eventObject===_e||Vt.object===_e)&&Dt.hovered.delete(Gt)}),Dt.capturedMap.forEach((Vt,Gt)=>{releaseInternalPointerCapture(Dt.capturedMap,_e,Vt,Gt)})}function createEvents(kt){function _e(Wt){const{internal:qt}=kt.getState(),Xt=Wt.offsetX-qt.initialClick[0],Kt=Wt.offsetY-qt.initialClick[1];return Math.round(Math.sqrt(Xt*Xt+Kt*Kt))}function Dt(Wt){return Wt.filter(qt=>["Move","Over","Enter","Out","Leave"].some(Xt=>{var Kt;return(Kt=qt.__r3f)==null?void 0:Kt.handlers["onPointer"+Xt]}))}function Vt(Wt,qt){const Xt=kt.getState(),Kt=new Set,Yt=[],Zt=qt?qt(Xt.internal.interaction):Xt.internal.interaction;for(let Qt=0;Qt<Zt.length;Qt++){const en=getRootState(Zt[Qt]);en&&(en.raycaster.camera=void 0)}Xt.previousRoot||Xt.events.compute==null||Xt.events.compute(Wt,Xt);function Jt(Qt){const en=getRootState(Qt);if(!en||!en.events.enabled||en.raycaster.camera===null)return[];if(en.raycaster.camera===void 0){var tn;en.events.compute==null||en.events.compute(Wt,en,(tn=en.previousRoot)==null?void 0:tn.getState()),en.raycaster.camera===void 0&&(en.raycaster.camera=null)}return en.raycaster.camera?en.raycaster.intersectObject(Qt,!0):[]}let nn=Zt.flatMap(Jt).sort((Qt,en)=>{const tn=getRootState(Qt.object),sn=getRootState(en.object);return!tn||!sn?Qt.distance-en.distance:sn.events.priority-tn.events.priority||Qt.distance-en.distance}).filter(Qt=>{const en=makeId(Qt);return Kt.has(en)?!1:(Kt.add(en),!0)});Xt.events.filter&&(nn=Xt.events.filter(nn,Xt));for(const Qt of nn){let en=Qt.object;for(;en;){var rn;(rn=en.__r3f)!=null&&rn.eventCount&&Yt.push({...Qt,eventObject:en}),en=en.parent}}if("pointerId"in Wt&&Xt.internal.capturedMap.has(Wt.pointerId))for(let Qt of Xt.internal.capturedMap.get(Wt.pointerId).values())Kt.has(makeId(Qt.intersection))||Yt.push(Qt.intersection);return Yt}function Gt(Wt,qt,Xt,Kt){const Yt=kt.getState();if(Wt.length){const Zt={stopped:!1};for(const Jt of Wt){const nn=getRootState(Jt.object)||Yt,{raycaster:rn,pointer:Qt,camera:en,internal:tn}=nn,sn=new Vector3(Qt.x,Qt.y,0).unproject(en),cn=fn=>{var mn,vn;return(mn=(vn=tn.capturedMap.get(fn))==null?void 0:vn.has(Jt.eventObject))!=null?mn:!1},un=fn=>{const mn={intersection:Jt,target:qt.target};tn.capturedMap.has(fn)?tn.capturedMap.get(fn).set(Jt.eventObject,mn):tn.capturedMap.set(fn,new Map([[Jt.eventObject,mn]])),qt.target.setPointerCapture(fn)},hn=fn=>{const mn=tn.capturedMap.get(fn);mn&&releaseInternalPointerCapture(tn.capturedMap,Jt.eventObject,mn,fn)};let dn={};for(let fn in qt){let mn=qt[fn];typeof mn!="function"&&(dn[fn]=mn)}let pn={...Jt,...dn,pointer:Qt,intersections:Wt,stopped:Zt.stopped,delta:Xt,unprojectedPoint:sn,ray:rn.ray,camera:en,stopPropagation(){const fn="pointerId"in qt&&tn.capturedMap.get(qt.pointerId);if((!fn||fn.has(Jt.eventObject))&&(pn.stopped=Zt.stopped=!0,tn.hovered.size&&Array.from(tn.hovered.values()).find(mn=>mn.eventObject===Jt.eventObject))){const mn=Wt.slice(0,Wt.indexOf(Jt));zt([...mn,Jt])}},target:{hasPointerCapture:cn,setPointerCapture:un,releasePointerCapture:hn},currentTarget:{hasPointerCapture:cn,setPointerCapture:un,releasePointerCapture:hn},nativeEvent:qt};if(Kt(pn),Zt.stopped===!0)break}}return Wt}function zt(Wt){const{internal:qt}=kt.getState();for(const Xt of qt.hovered.values())if(!Wt.length||!Wt.find(Kt=>Kt.object===Xt.object&&Kt.index===Xt.index&&Kt.instanceId===Xt.instanceId)){const Yt=Xt.eventObject.__r3f,Zt=Yt?.handlers;if(qt.hovered.delete(makeId(Xt)),Yt!=null&&Yt.eventCount){const Jt={...Xt,intersections:Wt};Zt.onPointerOut==null||Zt.onPointerOut(Jt),Zt.onPointerLeave==null||Zt.onPointerLeave(Jt)}}}function jt(Wt,qt){for(let Xt=0;Xt<qt.length;Xt++){const Kt=qt[Xt].__r3f;Kt==null||Kt.handlers.onPointerMissed==null||Kt.handlers.onPointerMissed(Wt)}}function Ht(Wt){switch(Wt){case"onPointerLeave":case"onPointerCancel":return()=>zt([]);case"onLostPointerCapture":return qt=>{const{internal:Xt}=kt.getState();"pointerId"in qt&&Xt.capturedMap.has(qt.pointerId)&&requestAnimationFrame(()=>{Xt.capturedMap.has(qt.pointerId)&&(Xt.capturedMap.delete(qt.pointerId),zt([]))})}}return function(Xt){const{onPointerMissed:Kt,internal:Yt}=kt.getState();Yt.lastEvent.current=Xt;const Zt=Wt==="onPointerMove",Jt=Wt==="onClick"||Wt==="onContextMenu"||Wt==="onDoubleClick",rn=Vt(Xt,Zt?Dt:void 0),Qt=Jt?_e(Xt):0;Wt==="onPointerDown"&&(Yt.initialClick=[Xt.offsetX,Xt.offsetY],Yt.initialHits=rn.map(tn=>tn.eventObject)),Jt&&!rn.length&&Qt<=2&&(jt(Xt,Yt.interaction),Kt&&Kt(Xt)),Zt&&zt(rn);function en(tn){const sn=tn.eventObject,cn=sn.__r3f,un=cn?.handlers;if(cn!=null&&cn.eventCount)if(Zt){if(un.onPointerOver||un.onPointerEnter||un.onPointerOut||un.onPointerLeave){const hn=makeId(tn),dn=Yt.hovered.get(hn);dn?dn.stopped&&tn.stopPropagation():(Yt.hovered.set(hn,tn),un.onPointerOver==null||un.onPointerOver(tn),un.onPointerEnter==null||un.onPointerEnter(tn))}un.onPointerMove==null||un.onPointerMove(tn)}else{const hn=un[Wt];hn?(!Jt||Yt.initialHits.includes(sn))&&(jt(Xt,Yt.interaction.filter(dn=>!Yt.initialHits.includes(dn))),hn(tn)):Jt&&Yt.initialHits.includes(sn)&&jt(Xt,Yt.interaction.filter(dn=>!Yt.initialHits.includes(dn)))}}Gt(rn,Xt,Qt,en)}}return{handlePointer:Ht}}const privateKeys=["set","get","setSize","setFrameloop","setDpr","events","invalidate","advance","size","viewport"],isRenderer=kt=>!!(kt!=null&&kt.render),context=reactExports.createContext(null),createStore$1=(kt,_e)=>{const Dt=create$2((Ht,Wt)=>{const qt=new Vector3,Xt=new Vector3,Kt=new Vector3;function Yt(Qt=Wt().camera,en=Xt,tn=Wt().size){const{width:sn,height:cn,top:un,left:hn}=tn,dn=sn/cn;en instanceof Vector3?Kt.copy(en):Kt.set(...en);const pn=Qt.getWorldPosition(qt).distanceTo(Kt);if(isOrthographicCamera$1(Qt))return{width:sn/Qt.zoom,height:cn/Qt.zoom,top:un,left:hn,factor:1,distance:pn,aspect:dn};{const fn=Qt.fov*Math.PI/180,mn=2*Math.tan(fn/2)*pn,vn=mn*(sn/cn);return{width:vn,height:mn,top:un,left:hn,factor:sn/vn,distance:pn,aspect:dn}}}let Zt;const Jt=Qt=>Ht(en=>({performance:{...en.performance,current:Qt}})),nn=new Vector2;return{set:Ht,get:Wt,gl:null,camera:null,raycaster:null,events:{priority:1,enabled:!0,connected:!1},xr:null,scene:null,invalidate:(Qt=1)=>kt(Wt(),Qt),advance:(Qt,en)=>_e(Qt,en,Wt()),legacy:!1,linear:!1,flat:!1,controls:null,clock:new Clock,pointer:nn,mouse:nn,frameloop:"always",onPointerMissed:void 0,performance:{current:1,min:.5,max:1,debounce:200,regress:()=>{const Qt=Wt();Zt&&clearTimeout(Zt),Qt.performance.current!==Qt.performance.min&&Jt(Qt.performance.min),Zt=setTimeout(()=>Jt(Wt().performance.max),Qt.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:Yt},setEvents:Qt=>Ht(en=>({...en,events:{...en.events,...Qt}})),setSize:(Qt,en,tn,sn,cn)=>{const un=Wt().camera,hn={width:Qt,height:en,top:sn||0,left:cn||0,updateStyle:tn};Ht(dn=>({size:hn,viewport:{...dn.viewport,...Yt(un,Xt,hn)}}))},setDpr:Qt=>Ht(en=>{const tn=calculateDpr(Qt);return{viewport:{...en.viewport,dpr:tn,initialDpr:en.viewport.initialDpr||tn}}}),setFrameloop:(Qt="always")=>{const en=Wt().clock;en.stop(),en.elapsedTime=0,Qt!=="never"&&(en.start(),en.elapsedTime=0),Ht(()=>({frameloop:Qt}))},previousRoot:void 0,internal:{active:!1,priority:0,frames:0,lastEvent:reactExports.createRef(),interaction:[],hovered:new Map,subscribers:[],initialClick:[0,0],initialHits:[],capturedMap:new Map,subscribe:(Qt,en,tn)=>{const sn=Wt().internal;return sn.priority=sn.priority+(en>0?1:0),sn.subscribers.push({ref:Qt,priority:en,store:tn}),sn.subscribers=sn.subscribers.sort((cn,un)=>cn.priority-un.priority),()=>{const cn=Wt().internal;cn!=null&&cn.subscribers&&(cn.priority=cn.priority-(en>0?1:0),cn.subscribers=cn.subscribers.filter(un=>un.ref!==Qt))}}}}}),Vt=Dt.getState();let Gt=Vt.size,zt=Vt.viewport.dpr,jt=Vt.camera;return Dt.subscribe(()=>{const{camera:Ht,size:Wt,viewport:qt,gl:Xt,set:Kt}=Dt.getState();if(Wt.width!==Gt.width||Wt.height!==Gt.height||qt.dpr!==zt){var Yt;Gt=Wt,zt=qt.dpr,updateCamera(Ht,Wt),Xt.setPixelRatio(qt.dpr);const Zt=(Yt=Wt.updateStyle)!=null?Yt:typeof HTMLCanvasElement<"u"&&Xt.domElement instanceof HTMLCanvasElement;Xt.setSize(Wt.width,Wt.height,Zt)}Ht!==jt&&(jt=Ht,Kt(Zt=>({viewport:{...Zt.viewport,...Zt.viewport.getCurrentViewport(Ht)}})))}),Dt.subscribe(Ht=>kt(Ht)),Dt};let i$2,globalEffects=new Set,globalAfterEffects=new Set,globalTailEffects=new Set;function run(kt,_e){if(kt.size)for(const{callback:Dt}of kt.values())Dt(_e)}function flushGlobalEffects(kt,_e){switch(kt){case"before":return run(globalEffects,_e);case"after":return run(globalAfterEffects,_e);case"tail":return run(globalTailEffects,_e)}}let subscribers,subscription;function render$1(kt,_e,Dt){let Vt=_e.clock.getDelta();for(_e.frameloop==="never"&&typeof kt=="number"&&(Vt=kt-_e.clock.elapsedTime,_e.clock.oldTime=_e.clock.elapsedTime,_e.clock.elapsedTime=kt),subscribers=_e.internal.subscribers,i$2=0;i$2<subscribers.length;i$2++)subscription=subscribers[i$2],subscription.ref.current(subscription.store.getState(),Vt,Dt);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 createLoop(kt){let _e=!1,Dt=!1,Vt,Gt,zt;function jt(qt){Gt=requestAnimationFrame(jt),_e=!0,Vt=0,flushGlobalEffects("before",qt),Dt=!0;for(const Kt of kt.values()){var Xt;zt=Kt.store.getState(),zt.internal.active&&(zt.frameloop==="always"||zt.internal.frames>0)&&!((Xt=zt.gl.xr)!=null&&Xt.isPresenting)&&(Vt+=render$1(qt,zt))}if(Dt=!1,flushGlobalEffects("after",qt),Vt===0)return flushGlobalEffects("tail",qt),_e=!1,cancelAnimationFrame(Gt)}function Ht(qt,Xt=1){var Kt;if(!qt)return kt.forEach(Yt=>Ht(Yt.store.getState(),Xt));(Kt=qt.gl.xr)!=null&&Kt.isPresenting||!qt.internal.active||qt.frameloop==="never"||(Xt>1?qt.internal.frames=Math.min(60,qt.internal.frames+Xt):Dt?qt.internal.frames=2:qt.internal.frames=1,_e||(_e=!0,requestAnimationFrame(jt)))}function Wt(qt,Xt=!0,Kt,Yt){if(Xt&&flushGlobalEffects("before",qt),Kt)render$1(qt,Kt,Yt);else for(const Zt of kt.values())render$1(qt,Zt.store.getState());Xt&&flushGlobalEffects("after",qt)}return{loop:jt,invalidate:Ht,advance:Wt}}function useInstanceHandle(kt){const _e=reactExports.useRef(null);return useIsomorphicLayoutEffect(()=>void(_e.current=kt.current.__r3f),[kt]),_e}function useStore$1(){const kt=reactExports.useContext(context);if(!kt)throw new Error("R3F: Hooks can only be used within the Canvas component!");return kt}function useThree(kt=Dt=>Dt,_e){return useStore$1()(kt,_e)}function useFrame(kt,_e=0){const Dt=useStore$1(),Vt=Dt.getState().internal.subscribe,Gt=useMutableCallback(kt);return useIsomorphicLayoutEffect(()=>Vt(Gt,_e,Dt),[_e,Vt,Dt]),null}const memoizedLoaders=new WeakMap;function loadingFn(kt,_e){return function(Dt,...Vt){let Gt=memoizedLoaders.get(Dt);return Gt||(Gt=new Dt,memoizedLoaders.set(Dt,Gt)),kt&&kt(Gt),Promise.all(Vt.map(zt=>new Promise((jt,Ht)=>Gt.load(zt,Wt=>{Wt.scene&&Object.assign(Wt,buildGraph(Wt.scene)),jt(Wt)},_e,Wt=>Ht(new Error(`Could not load ${zt}: ${Wt?.message}`))))))}}function useLoader(kt,_e,Dt,Vt){const Gt=Array.isArray(_e)?_e:[_e],zt=suspend(loadingFn(Dt,Vt),[kt,...Gt],{equal:is.equ});return Array.isArray(_e)?zt:zt[0]}useLoader.preload=function(kt,_e,Dt){const Vt=Array.isArray(_e)?_e:[_e];return preload(loadingFn(Dt),[kt,...Vt])};useLoader.clear=function(kt,_e){const Dt=Array.isArray(_e)?_e:[_e];return clear([kt,...Dt])};const roots=new Map,{invalidate,advance}=createLoop(roots),{reconciler,applyProps}=createRenderer(roots,getEventPriority),shallowLoose={objects:"shallow",strict:!1},createRendererInstance=(kt,_e)=>{const Dt=typeof kt=="function"?kt(_e):kt;return isRenderer(Dt)?Dt:new WebGLRenderer({powerPreference:"high-performance",canvas:_e,antialias:!0,alpha:!0,...kt})};function computeInitialSize(kt,_e){const Dt=typeof HTMLCanvasElement<"u"&&kt instanceof HTMLCanvasElement;if(_e){const{width:Vt,height:Gt,top:zt,left:jt,updateStyle:Ht=Dt}=_e;return{width:Vt,height:Gt,top:zt,left:jt,updateStyle:Ht}}else if(typeof HTMLCanvasElement<"u"&&kt instanceof HTMLCanvasElement&&kt.parentElement){const{width:Vt,height:Gt,top:zt,left:jt}=kt.parentElement.getBoundingClientRect();return{width:Vt,height:Gt,top:zt,left:jt,updateStyle:Dt}}else if(typeof OffscreenCanvas<"u"&&kt instanceof OffscreenCanvas)return{width:kt.width,height:kt.height,top:0,left:0,updateStyle:Dt};return{width:0,height:0,top:0,left:0}}function createRoot$1(kt){const _e=roots.get(kt),Dt=_e?.fiber,Vt=_e?.store;_e&&console.warn("R3F.createRoot should only be called once!");const Gt=typeof reportError=="function"?reportError:console.error,zt=Vt||createStore$1(invalidate,advance),jt=Dt||reconciler.createContainer(zt,constantsExports.ConcurrentRoot,null,!1,null,"",Gt,null);_e||roots.set(kt,{fiber:jt,store:zt});let Ht,Wt=!1,qt;return{configure(Xt={}){let{gl:Kt,size:Yt,scene:Zt,events:Jt,onCreated:nn,shadows:rn=!1,linear:Qt=!1,flat:en=!1,legacy:tn=!1,orthographic:sn=!1,frameloop:cn="always",dpr:un=[1,2],performance:hn,raycaster:dn,camera:pn,onPointerMissed:fn}=Xt,mn=zt.getState(),vn=mn.gl;mn.gl||mn.set({gl:vn=createRendererInstance(Kt,kt)});let _n=mn.raycaster;_n||mn.set({raycaster:_n=new Raycaster});const{params:En,...An}=dn||{};if(is.equ(An,_n,shallowLoose)||applyProps(_n,{...An}),is.equ(En,_n.params,shallowLoose)||applyProps(_n,{params:{..._n.params,...En}}),!mn.camera||mn.camera===qt&&!is.equ(qt,pn,shallowLoose)){qt=pn;const wn=pn instanceof Camera,xn=wn?pn:sn?new OrthographicCamera(0,0,0,0,.1,1e3):new PerspectiveCamera(75,0,.1,1e3);wn||(xn.position.z=5,pn&&(applyProps(xn,pn),("aspect"in pn||"left"in pn||"right"in pn||"bottom"in pn||"top"in pn)&&(xn.manual=!0,xn.updateProjectionMatrix())),!mn.camera&&!(pn!=null&&pn.rotation)&&xn.lookAt(0,0,0)),mn.set({camera:xn}),_n.camera=xn}if(!mn.scene){let wn;Zt instanceof Scene?wn=Zt:(wn=new Scene,Zt&&applyProps(wn,Zt)),mn.set({scene:prepare(wn)})}if(!mn.xr){var Tn;const wn=(Dn,kn)=>{const Fn=zt.getState();Fn.frameloop!=="never"&&advance(Dn,!0,Fn,kn)},xn=()=>{const Dn=zt.getState();Dn.gl.xr.enabled=Dn.gl.xr.isPresenting,Dn.gl.xr.setAnimationLoop(Dn.gl.xr.isPresenting?wn:null),Dn.gl.xr.isPresenting||invalidate(Dn)},Rn={connect(){const Dn=zt.getState().gl;Dn.xr.addEventListener("sessionstart",xn),Dn.xr.addEventListener("sessionend",xn)},disconnect(){const Dn=zt.getState().gl;Dn.xr.removeEventListener("sessionstart",xn),Dn.xr.removeEventListener("sessionend",xn)}};typeof((Tn=vn.xr)==null?void 0:Tn.addEventListener)=="function"&&Rn.connect(),mn.set({xr:Rn})}if(vn.shadowMap){const wn=vn.shadowMap.enabled,xn=vn.shadowMap.type;if(vn.shadowMap.enabled=!!rn,is.boo(rn))vn.shadowMap.type=PCFSoftShadowMap;else if(is.str(rn)){var Cn;const Rn={basic:BasicShadowMap,percentage:PCFShadowMap,soft:PCFSoftShadowMap,variance:VSMShadowMap};vn.shadowMap.type=(Cn=Rn[rn])!=null?Cn:PCFSoftShadowMap}else is.obj(rn)&&Object.assign(vn.shadowMap,rn);(wn!==vn.shadowMap.enabled||xn!==vn.shadowMap.type)&&(vn.shadowMap.needsUpdate=!0)}const yn=getColorManagement();yn&&("enabled"in yn?yn.enabled=!tn:"legacyMode"in yn&&(yn.legacyMode=tn)),Wt||applyProps(vn,{outputEncoding:Qt?3e3:3001,toneMapping:en?NoToneMapping:ACESFilmicToneMapping}),mn.legacy!==tn&&mn.set(()=>({legacy:tn})),mn.linear!==Qt&&mn.set(()=>({linear:Qt})),mn.flat!==en&&mn.set(()=>({flat:en})),Kt&&!is.fun(Kt)&&!isRenderer(Kt)&&!is.equ(Kt,vn,shallowLoose)&&applyProps(vn,Kt),Jt&&!mn.events.handlers&&mn.set({events:Jt(zt)});const Sn=computeInitialSize(kt,Yt);return is.equ(Sn,mn.size,shallowLoose)||mn.setSize(Sn.width,Sn.height,Sn.updateStyle,Sn.top,Sn.left),un&&mn.viewport.dpr!==calculateDpr(un)&&mn.setDpr(un),mn.frameloop!==cn&&mn.setFrameloop(cn),mn.onPointerMissed||mn.set({onPointerMissed:fn}),hn&&!is.equ(hn,mn.performance,shallowLoose)&&mn.set(wn=>({performance:{...wn.performance,...hn}})),Ht=nn,Wt=!0,this},render(Xt){return Wt||this.configure(),reconciler.updateContainer(jsxRuntimeExports.jsx(Provider,{store:zt,children:Xt,onCreated:Ht,rootElement:kt}),jt,null,()=>{}),zt},unmount(){unmountComponentAtNode(kt)}}}function Provider({store:kt,children:_e,onCreated:Dt,rootElement:Vt}){return useIsomorphicLayoutEffect(()=>{const Gt=kt.getState();Gt.set(zt=>({internal:{...zt.internal,active:!0}})),Dt&&Dt(Gt),kt.getState().events.connected||Gt.events.connect==null||Gt.events.connect(Vt)},[]),jsxRuntimeExports.jsx(context.Provider,{value:kt,children:_e})}function unmountComponentAtNode(kt,_e){const Dt=roots.get(kt),Vt=Dt?.fiber;if(Vt){const Gt=Dt?.store.getState();Gt&&(Gt.internal.active=!1),reconciler.updateContainer(null,Vt,null,()=>{Gt&&setTimeout(()=>{try{var zt,jt,Ht,Wt;Gt.events.disconnect==null||Gt.events.disconnect(),(zt=Gt.gl)==null||(jt=zt.renderLists)==null||jt.dispose==null||jt.dispose(),(Ht=Gt.gl)==null||Ht.forceContextLoss==null||Ht.forceContextLoss(),(Wt=Gt.gl)!=null&&Wt.xr&&Gt.xr.disconnect(),dispose(Gt),roots.delete(kt),_e&&_e(kt)}catch{}},500)})}}function createPortal(kt,_e,Dt){return jsxRuntimeExports.jsx(Portal,{children:kt,container:_e,state:Dt},_e.uuid)}function Portal({state:kt={},children:_e,container:Dt}){const{events:Vt,size:Gt,...zt}=kt,jt=useStore$1(),[Ht]=reactExports.useState(()=>new Raycaster),[Wt]=reactExports.useState(()=>new Vector2),qt=reactExports.useCallback((Kt,Yt)=>{const Zt={...Kt};Object.keys(Kt).forEach(nn=>{(privateKeys.includes(nn)||Kt[nn]!==Yt[nn]&&Yt[nn])&&delete Zt[nn]});let Jt;if(Yt&&Gt){const nn=Yt.camera;Jt=Kt.viewport.getCurrentViewport(nn,new Vector3,Gt),nn!==Kt.camera&&updateCamera(nn,Gt)}return{...Zt,scene:Dt,raycaster:Ht,pointer:Wt,mouse:Wt,previousRoot:jt,events:{...Kt.events,...Yt?.events,...Vt},size:{...Kt.size,...Gt},viewport:{...Kt.viewport,...Jt},...zt}},[kt]),[Xt]=reactExports.useState(()=>{const Kt=jt.getState();return create$2((Zt,Jt)=>({...Kt,scene:Dt,raycaster:Ht,pointer:Wt,mouse:Wt,previousRoot:jt,events:{...Kt.events,...Vt},size:{...Kt.size,...Gt},...zt,set:Zt,get:Jt,setEvents:nn=>Zt(rn=>({...rn,events:{...rn.events,...nn}}))}))});return reactExports.useEffect(()=>{const Kt=jt.subscribe(Yt=>Xt.setState(Zt=>qt(Yt,Zt)));return()=>{Kt()}},[qt]),reactExports.useEffect(()=>{Xt.setState(Kt=>qt(jt.getState(),Kt))},[qt]),reactExports.useEffect(()=>()=>{Xt.destroy()},[]),jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:reconciler.createPortal(jsxRuntimeExports.jsx(context.Provider,{value:Xt,children:_e}),Xt,null)})}reconciler.injectIntoDevTools({bundleType:0,rendererPackageName:"@react-three/fiber",version:reactExports.version});function debounce(kt,_e,Dt){var Vt,Gt,zt,jt,Ht;_e==null&&(_e=100);function Wt(){var Xt=Date.now()-jt;Xt<_e&&Xt>=0?Vt=setTimeout(Wt,_e-Xt):(Vt=null,Dt||(Ht=kt.apply(zt,Gt),zt=Gt=null))}var qt=function(){zt=this,Gt=arguments,jt=Date.now();var Xt=Dt&&!Vt;return Vt||(Vt=setTimeout(Wt,_e)),Xt&&(Ht=kt.apply(zt,Gt),zt=Gt=null),Ht};return qt.clear=function(){Vt&&(clearTimeout(Vt),Vt=null)},qt.flush=function(){Vt&&(Ht=kt.apply(zt,Gt),zt=Gt=null,clearTimeout(Vt),Vt=null)},qt}debounce.debounce=debounce;var debounce_1=debounce;const createDebounce=getDefaultExportFromCjs(debounce_1);function useMeasure(kt){let{debounce:_e,scroll:Dt,polyfill:Vt,offsetSize:Gt}=kt===void 0?{debounce:0,scroll:!1,offsetSize:!1}:kt;const zt=Vt||(typeof window>"u"?class{}:window.ResizeObserver);if(!zt)throw new Error("This browser does not support ResizeObserver out of the box. See: https://github.com/react-spring/react-use-measure/#resize-observer-polyfills");const[jt,Ht]=reactExports.useState({left:0,top:0,width:0,height:0,bottom:0,right:0,x:0,y:0}),Wt=reactExports.useRef({element:null,scrollContainers:null,resizeObserver:null,lastBounds:jt}),qt=_e?typeof _e=="number"?_e:_e.scroll:null,Xt=_e?typeof _e=="number"?_e:_e.resize:null,Kt=reactExports.useRef(!1);reactExports.useEffect(()=>(Kt.current=!0,()=>void(Kt.current=!1)));const[Yt,Zt,Jt]=reactExports.useMemo(()=>{const en=()=>{if(!Wt.current.element)return;const{left:tn,top:sn,width:cn,height:un,bottom:hn,right:dn,x:pn,y:fn}=Wt.current.element.getBoundingClientRect(),mn={left:tn,top:sn,width:cn,height:un,bottom:hn,right:dn,x:pn,y:fn};Wt.current.element instanceof HTMLElement&&Gt&&(mn.height=Wt.current.element.offsetHeight,mn.width=Wt.current.element.offsetWidth),Object.freeze(mn),Kt.current&&!areBoundsEqual(Wt.current.lastBounds,mn)&&Ht(Wt.current.lastBounds=mn)};return[en,Xt?createDebounce(en,Xt):en,qt?createDebounce(en,qt):en]},[Ht,Gt,qt,Xt]);function nn(){Wt.current.scrollContainers&&(Wt.current.scrollContainers.forEach(en=>en.removeEventListener("scroll",Jt,!0)),Wt.current.scrollContainers=null),Wt.current.resizeObserver&&(Wt.current.resizeObserver.disconnect(),Wt.current.resizeObserver=null)}function rn(){Wt.current.element&&(Wt.current.resizeObserver=new zt(Jt),Wt.current.resizeObserver.observe(Wt.current.element),Dt&&Wt.current.scrollContainers&&Wt.current.scrollContainers.forEach(en=>en.addEventListener("scroll",Jt,{capture:!0,passive:!0})))}const Qt=en=>{!en||en===Wt.current.element||(nn(),Wt.current.element=en,Wt.current.scrollContainers=findScrollContainers(en),rn())};return useOnWindowScroll(Jt,!!Dt),useOnWindowResize(Zt),reactExports.useEffect(()=>{nn(),rn()},[Dt,Jt,Zt]),reactExports.useEffect(()=>nn,[]),[Qt,jt,Yt]}function useOnWindowResize(kt){reactExports.useEffect(()=>{const _e=kt;return window.addEventListener("resize",_e),()=>void window.removeEventListener("resize",_e)},[kt])}function useOnWindowScroll(kt,_e){reactExports.useEffect(()=>{if(_e){const Dt=kt;return window.addEventListener("scroll",Dt,{capture:!0,passive:!0}),()=>void window.removeEventListener("scroll",Dt,!0)}},[kt,_e])}function findScrollContainers(kt){const _e=[];if(!kt||kt===document.body)return _e;const{overflow:Dt,overflowX:Vt,overflowY:Gt}=window.getComputedStyle(kt);return[Dt,Vt,Gt].some(zt=>zt==="auto"||zt==="scroll")&&_e.push(kt),[..._e,...findScrollContainers(kt.parentElement)]}const keys$3=["x","y","top","bottom","left","right","width","height"],areBoundsEqual=(kt,_e)=>keys$3.every(Dt=>kt[Dt]===_e[Dt]);var __defProp=Object.defineProperty,__defProps=Object.defineProperties,__getOwnPropDescs=Object.getOwnPropertyDescriptors,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(kt,_e,Dt)=>_e in kt?__defProp(kt,_e,{enumerable:!0,configurable:!0,writable:!0,value:Dt}):kt[_e]=Dt,__spreadValues=(kt,_e)=>{for(var Dt in _e||(_e={}))__hasOwnProp.call(_e,Dt)&&__defNormalProp(kt,Dt,_e[Dt]);if(__getOwnPropSymbols)for(var Dt of __getOwnPropSymbols(_e))__propIsEnum.call(_e,Dt)&&__defNormalProp(kt,Dt,_e[Dt]);return kt},__spreadProps=(kt,_e)=>__defProps(kt,__getOwnPropDescs(_e)),_a$3,_b$2;typeof window<"u"&&((_a$3=window.document)!=null&&_a$3.createElement||((_b$2=window.navigator)==null?void 0:_b$2.product)==="ReactNative")?reactExports.useLayoutEffect:reactExports.useEffect;function traverseFiber(kt,_e,Dt){if(!kt)return;if(Dt(kt)===!0)return kt;let Vt=_e?kt.return:kt.child;for(;Vt;){const Gt=traverseFiber(Vt,_e,Dt);if(Gt)return Gt;Vt=_e?null:Vt.sibling}}function wrapContext(kt){try{return Object.defineProperties(kt,{_currentRenderer:{get(){return null},set(){}},_currentRenderer2:{get(){return null},set(){}}})}catch{return kt}}const error=console.error;console.error=function(){const kt=[...arguments].join("");if(kt?.startsWith("Warning:")&&kt.includes("useContext")){console.error=error;return}return error.apply(this,arguments)};const FiberContext=wrapContext(reactExports.createContext(null));class FiberProvider extends reactExports.Component{render(){return reactExports.createElement(FiberContext.Provider,{value:this._reactInternals},this.props.children)}}function useFiber(){const kt=reactExports.useContext(FiberContext);if(kt===null)throw new Error("its-fine: useFiber must be called within a <FiberProvider />!");const _e=reactExports.useId();return reactExports.useMemo(()=>{for(const Vt of[kt,kt?.alternate]){if(!Vt)continue;const Gt=traverseFiber(Vt,!1,zt=>{let jt=zt.memoizedState;for(;jt;){if(jt.memoizedState===_e)return!0;jt=jt.next}});if(Gt)return Gt}},[kt,_e])}function useContextMap(){const kt=useFiber(),[_e]=reactExports.useState(()=>new Map);_e.clear();let Dt=kt;for(;Dt;){if(Dt.type&&typeof Dt.type=="object"){const Gt=Dt.type._context===void 0&&Dt.type.Provider===Dt.type?Dt.type:Dt.type._context;Gt&&Gt!==FiberContext&&!_e.has(Gt)&&_e.set(Gt,reactExports.useContext(wrapContext(Gt)))}Dt=Dt.return}return _e}function useContextBridge(){const kt=useContextMap();return reactExports.useMemo(()=>Array.from(kt.keys()).reduce((_e,Dt)=>Vt=>reactExports.createElement(_e,null,reactExports.createElement(Dt.Provider,__spreadProps(__spreadValues({},Vt),{value:kt.get(Dt)}))),_e=>reactExports.createElement(FiberProvider,__spreadValues({},_e))),[kt])}const DOM_EVENTS={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 createPointerEvents(kt){const{handlePointer:_e}=createEvents(kt);return{priority:1,enabled:!0,compute(Dt,Vt,Gt){Vt.pointer.set(Dt.offsetX/Vt.size.width*2-1,-(Dt.offsetY/Vt.size.height)*2+1),Vt.raycaster.setFromCamera(Vt.pointer,Vt.camera)},connected:void 0,handlers:Object.keys(DOM_EVENTS).reduce((Dt,Vt)=>({...Dt,[Vt]:_e(Vt)}),{}),update:()=>{var Dt;const{events:Vt,internal:Gt}=kt.getState();(Dt=Gt.lastEvent)!=null&&Dt.current&&Vt.handlers&&Vt.handlers.onPointerMove(Gt.lastEvent.current)},connect:Dt=>{var Vt;const{set:Gt,events:zt}=kt.getState();zt.disconnect==null||zt.disconnect(),Gt(jt=>({events:{...jt.events,connected:Dt}})),Object.entries((Vt=zt.handlers)!=null?Vt:[]).forEach(([jt,Ht])=>{const[Wt,qt]=DOM_EVENTS[jt];Dt.addEventListener(Wt,Ht,{passive:qt})})},disconnect:()=>{const{set:Dt,events:Vt}=kt.getState();if(Vt.connected){var Gt;Object.entries((Gt=Vt.handlers)!=null?Gt:[]).forEach(([zt,jt])=>{if(Vt&&Vt.connected instanceof HTMLElement){const[Ht]=DOM_EVENTS[zt];Vt.connected.removeEventListener(Ht,jt)}}),Dt(zt=>({events:{...zt.events,connected:void 0}}))}}}}const CanvasImpl=reactExports.forwardRef(function kt({children:_e,fallback:Dt,resize:Vt,style:Gt,gl:zt,events:jt=createPointerEvents,eventSource:Ht,eventPrefix:Wt,shadows:qt,linear:Xt,flat:Kt,legacy:Yt,orthographic:Zt,frameloop:Jt,dpr:nn,performance:rn,raycaster:Qt,camera:en,scene:tn,onPointerMissed:sn,onCreated:cn,...un},hn){reactExports.useMemo(()=>extend(THREE$1),[]);const dn=useContextBridge(),[pn,fn]=useMeasure({scroll:!0,debounce:{scroll:50,resize:0},...Vt}),mn=reactExports.useRef(null),vn=reactExports.useRef(null);reactExports.useImperativeHandle(hn,()=>mn.current);const _n=useMutableCallback(sn),[En,An]=reactExports.useState(!1),[Tn,Cn]=reactExports.useState(!1);if(En)throw En;if(Tn)throw Tn;const yn=reactExports.useRef(null);useIsomorphicLayoutEffect(()=>{const wn=mn.current;fn.width>0&&fn.height>0&&wn&&(yn.current||(yn.current=createRoot$1(wn)),yn.current.configure({gl:zt,events:jt,shadows:qt,linear:Xt,flat:Kt,legacy:Yt,orthographic:Zt,frameloop:Jt,dpr:nn,performance:rn,raycaster:Qt,camera:en,scene:tn,size:fn,onPointerMissed:(...xn)=>_n.current==null?void 0:_n.current(...xn),onCreated:xn=>{xn.events.connect==null||xn.events.connect(Ht?isRef$2(Ht)?Ht.current:Ht:vn.current),Wt&&xn.setEvents({compute:(Rn,Dn)=>{const kn=Rn[Wt+"X"],Fn=Rn[Wt+"Y"];Dn.pointer.set(kn/Dn.size.width*2-1,-(Fn/Dn.size.height)*2+1),Dn.raycaster.setFromCamera(Dn.pointer,Dn.camera)}}),cn?.(xn)}}),yn.current.render(jsxRuntimeExports.jsx(dn,{children:jsxRuntimeExports.jsx(ErrorBoundary,{set:Cn,children:jsxRuntimeExports.jsx(reactExports.Suspense,{fallback:jsxRuntimeExports.jsx(Block,{set:An}),children:_e})})})))}),reactExports.useEffect(()=>{const wn=mn.current;if(wn)return()=>unmountComponentAtNode(wn)},[]);const Sn=Ht?"none":"auto";return jsxRuntimeExports.jsx("div",{ref:vn,style:{position:"relative",width:"100%",height:"100%",overflow:"hidden",pointerEvents:Sn,...Gt},...un,children:jsxRuntimeExports.jsx("div",{ref:pn,style:{width:"100%",height:"100%"},children:jsxRuntimeExports.jsx("canvas",{ref:mn,style:{display:"block"},children:Dt})})})}),Canvas=reactExports.forwardRef(function kt(_e,Dt){return jsxRuntimeExports.jsx(FiberProvider,{children:jsxRuntimeExports.jsx(CanvasImpl,{..._e,ref:Dt})})});function _extends$1(){return _extends$1=Object.assign?Object.assign.bind():function(kt){for(var _e=1;_e<arguments.length;_e++){var Dt=arguments[_e];for(var Vt in Dt)({}).hasOwnProperty.call(Dt,Vt)&&(kt[Vt]=Dt[Vt])}return kt},_extends$1.apply(null,arguments)}var createRoot,m$2=reactDomExports;createRoot=m$2.createRoot,m$2.hydrateRoot;const v1=new Vector3,v2=new Vector3,v3=new Vector3,v4$1=new Vector2;function defaultCalculatePosition(kt,_e,Dt){const Vt=v1.setFromMatrixPosition(kt.matrixWorld);Vt.project(_e);const Gt=Dt.width/2,zt=Dt.height/2;return[Vt.x*Gt+Gt,-(Vt.y*zt)+zt]}function isObjectBehindCamera(kt,_e){const Dt=v1.setFromMatrixPosition(kt.matrixWorld),Vt=v2.setFromMatrixPosition(_e.matrixWorld),Gt=Dt.sub(Vt),zt=_e.getWorldDirection(v3);return Gt.angleTo(zt)>Math.PI/2}function isObjectVisible(kt,_e,Dt,Vt){const Gt=v1.setFromMatrixPosition(kt.matrixWorld),zt=Gt.clone();zt.project(_e),v4$1.set(zt.x,zt.y),Dt.setFromCamera(v4$1,_e);const jt=Dt.intersectObjects(Vt,!0);if(jt.length){const Ht=jt[0].distance;return Gt.distanceTo(Dt.ray.origin)<Ht}return!0}function objectScale(kt,_e){if(_e instanceof OrthographicCamera)return _e.zoom;if(_e instanceof PerspectiveCamera){const Dt=v1.setFromMatrixPosition(kt.matrixWorld),Vt=v2.setFromMatrixPosition(_e.matrixWorld),Gt=_e.fov*Math.PI/180,zt=Dt.distanceTo(Vt);return 1/(2*Math.tan(Gt/2)*zt)}else return 1}function objectZIndex(kt,_e,Dt){if(_e instanceof PerspectiveCamera||_e instanceof OrthographicCamera){const Vt=v1.setFromMatrixPosition(kt.matrixWorld),Gt=v2.setFromMatrixPosition(_e.matrixWorld),zt=Vt.distanceTo(Gt),jt=(Dt[1]-Dt[0])/(_e.far-_e.near),Ht=Dt[1]-jt*_e.far;return Math.round(jt*zt+Ht)}}const epsilon=kt=>Math.abs(kt)<1e-10?0:kt;function getCSSMatrix(kt,_e,Dt=""){let Vt="matrix3d(";for(let Gt=0;Gt!==16;Gt++)Vt+=epsilon(_e[Gt]*kt.elements[Gt])+(Gt!==15?",":")");return Dt+Vt}const getCameraCSSMatrix=(kt=>_e=>getCSSMatrix(_e,kt))([1,-1,1,1,1,-1,1,1,1,-1,1,1,1,-1,1,1]),getObjectCSSMatrix=(kt=>(_e,Dt)=>getCSSMatrix(_e,kt(Dt),"translate(-50%,-50%)"))(kt=>[1/kt,1/kt,1/kt,1,-1/kt,-1/kt,-1/kt,-1,1/kt,1/kt,1/kt,1,1,1,1,1]);function isRefObject(kt){return kt&&typeof kt=="object"&&"current"in kt}const Html=reactExports.forwardRef(({children:kt,eps:_e=.001,style:Dt,className:Vt,prepend:Gt,center:zt,fullscreen:jt,portal:Ht,distanceFactor:Wt,sprite:qt=!1,transform:Xt=!1,occlude:Kt,onOcclude:Yt,castShadow:Zt,receiveShadow:Jt,material:nn,geometry:rn,zIndexRange:Qt=[16777271,0],calculatePosition:en=defaultCalculatePosition,as:tn="div",wrapperClass:sn,pointerEvents:cn="auto",...un},hn)=>{const{gl:dn,camera:pn,scene:fn,size:mn,raycaster:vn,events:_n,viewport:En}=useThree(),[An]=reactExports.useState(()=>document.createElement(tn)),Tn=reactExports.useRef(),Cn=reactExports.useRef(null),yn=reactExports.useRef(0),Sn=reactExports.useRef([0,0]),wn=reactExports.useRef(null),xn=reactExports.useRef(null),Rn=Ht?.current||_n.connected||dn.domElement.parentNode,Dn=reactExports.useRef(null),kn=reactExports.useRef(!1),Fn=reactExports.useMemo(()=>Kt&&Kt!=="blending"||Array.isArray(Kt)&&Kt.length&&isRefObject(Kt[0]),[Kt]);reactExports.useLayoutEffect(()=>{const ar=dn.domElement;Kt&&Kt==="blending"?(ar.style.zIndex=`${Math.floor(Qt[0]/2)}`,ar.style.position="absolute",ar.style.pointerEvents="none"):(ar.style.zIndex=null,ar.style.position=null,ar.style.pointerEvents=null)},[Kt]),reactExports.useLayoutEffect(()=>{if(Cn.current){const ar=Tn.current=createRoot(An);if(fn.updateMatrixWorld(),Xt)An.style.cssText="position:absolute;top:0;left:0;pointer-events:none;overflow:hidden;";else{const zn=en(Cn.current,pn,mn);An.style.cssText=`position:absolute;top:0;left:0;transform:translate3d(${zn[0]}px,${zn[1]}px,0);transform-origin:0 0;`}return Rn&&(Gt?Rn.prepend(An):Rn.appendChild(An)),()=>{Rn&&Rn.removeChild(An),ar.unmount()}}},[Rn,Xt]),reactExports.useLayoutEffect(()=>{sn&&(An.className=sn)},[sn]);const Pn=reactExports.useMemo(()=>Xt?{position:"absolute",top:0,left:0,width:mn.width,height:mn.height,transformStyle:"preserve-3d",pointerEvents:"none"}:{position:"absolute",transform:zt?"translate3d(-50%,-50%,0)":"none",...jt&&{top:-mn.height/2,left:-mn.width/2,width:mn.width,height:mn.height},...Dt},[Dt,zt,jt,mn,Xt]),Bn=reactExports.useMemo(()=>({position:"absolute",pointerEvents:cn}),[cn]);reactExports.useLayoutEffect(()=>{if(kn.current=!1,Xt){var ar;(ar=Tn.current)==null||ar.render(reactExports.createElement("div",{ref:wn,style:Pn},reactExports.createElement("div",{ref:xn,style:Bn},reactExports.createElement("div",{ref:hn,className:Vt,style:Dt,children:kt}))))}else{var zn;(zn=Tn.current)==null||zn.render(reactExports.createElement("div",{ref:hn,style:Pn,className:Vt,children:kt}))}});const qn=reactExports.useRef(!0);useFrame(ar=>{if(Cn.current){pn.updateMatrixWorld(),Cn.current.updateWorldMatrix(!0,!1);const zn=Xt?Sn.current:en(Cn.current,pn,mn);if(Xt||Math.abs(yn.current-pn.zoom)>_e||Math.abs(Sn.current[0]-zn[0])>_e||Math.abs(Sn.current[1]-zn[1])>_e){const ur=isObjectBehindCamera(Cn.current,pn);let Hn=!1;Fn&&(Array.isArray(Kt)?Hn=Kt.map(Un=>Un.current):Kt!=="blending"&&(Hn=[fn]));const sr=qn.current;if(Hn){const Un=isObjectVisible(Cn.current,pn,vn,Hn);qn.current=Un&&!ur}else qn.current=!ur;sr!==qn.current&&(Yt?Yt(!qn.current):An.style.display=qn.current?"block":"none");const gr=Math.floor(Qt[0]/2),fr=Kt?Fn?[Qt[0],gr]:[gr-1,0]:Qt;if(An.style.zIndex=`${objectZIndex(Cn.current,pn,fr)}`,Xt){const[Un,In]=[mn.width/2,mn.height/2],jn=pn.projectionMatrix.elements[5]*In,{isOrthographicCamera:or,top:cr,left:lr,bottom:vr,right:mr}=pn,Ar=getCameraCSSMatrix(pn.matrixWorldInverse),Lr=or?`scale(${jn})translate(${epsilon(-(mr+lr)/2)}px,${epsilon((cr+vr)/2)}px)`:`translateZ(${jn}px)`;let Cr=Cn.current.matrixWorld;qt&&(Cr=pn.matrixWorldInverse.clone().transpose().copyPosition(Cr).scale(Cn.current.scale),Cr.elements[3]=Cr.elements[7]=Cr.elements[11]=0,Cr.elements[15]=1),An.style.width=mn.width+"px",An.style.height=mn.height+"px",An.style.perspective=or?"":`${jn}px`,wn.current&&xn.current&&(wn.current.style.transform=`${Lr}${Ar}translate(${Un}px,${In}px)`,xn.current.style.transform=getObjectCSSMatrix(Cr,1/((Wt||10)/400)))}else{const Un=Wt===void 0?1:objectScale(Cn.current,pn)*Wt;An.style.transform=`translate3d(${zn[0]}px,${zn[1]}px,0) scale(${Un})`}Sn.current=zn,yn.current=pn.zoom}}if(!Fn&&Dn.current&&!kn.current)if(Xt){if(wn.current){const zn=wn.current.children[0];if(zn!=null&&zn.clientWidth&&zn!=null&&zn.clientHeight){const{isOrthographicCamera:ur}=pn;if(ur||rn)un.scale&&(Array.isArray(un.scale)?un.scale instanceof Vector3?Dn.current.scale.copy(un.scale.clone().divideScalar(1)):Dn.current.scale.set(1/un.scale[0],1/un.scale[1],1/un.scale[2]):Dn.current.scale.setScalar(1/un.scale));else{const Hn=(Wt||10)/400,sr=zn.clientWidth*Hn,gr=zn.clientHeight*Hn;Dn.current.scale.set(sr,gr,1)}kn.current=!0}}}else{const zn=An.children[0];if(zn!=null&&zn.clientWidth&&zn!=null&&zn.clientHeight){const ur=1/En.factor,Hn=zn.clientWidth*ur,sr=zn.clientHeight*ur;Dn.current.scale.set(Hn,sr,1),kn.current=!0}Dn.current.lookAt(ar.camera.position)}});const tr=reactExports.useMemo(()=>({vertexShader:Xt?void 0:`
|
|
4005
4005
|
/*
|
|
4006
4006
|
This shader is from the THREE's SpriteMaterial.
|
|
4007
4007
|
We need to turn the backing plane into a Sprite
|
|
@@ -4458,9 +4458,9 @@ return orthographicDepthToViewZ(depth,cameraNear,cameraFar);
|
|
|
4458
4458
|
`+Vt),this.needsDepthTexture=this.getDepthTexture()===null):this.needsDepthTexture=!1,kt.colorSpace===SRGBColorSpace$1&&(Vt+=`color0 = sRGBToLinear(color0);
|
|
4459
4459
|
`),kt.uvTransformation?(Gt=`vec2 transformedUv = vUv;
|
|
4460
4460
|
`+Gt,kt.defines.set("UV","transformedUv")):kt.defines.set("UV","vUv"),kt.shaderParts.set(EffectShaderSection.FRAGMENT_HEAD,Dt),kt.shaderParts.set(EffectShaderSection.FRAGMENT_MAIN_IMAGE,Vt),kt.shaderParts.set(EffectShaderSection.FRAGMENT_MAIN_UV,Gt);for(const[jt,Ht]of kt.shaderParts)Ht!==null&&kt.shaderParts.set(jt,Ht.trim().replace(/^#/,`
|
|
4461
|
-
#`));this.skipRendering=_e===0,this.needsSwap=!this.skipRendering,this.fullscreenMaterial.setShaderData(kt)}recompile(){this.updateMaterial()}getDepthTexture(){return this.fullscreenMaterial.depthBuffer}setDepthTexture(kt,_e=BasicDepthPacking){this.fullscreenMaterial.depthBuffer=kt,this.fullscreenMaterial.depthPacking=_e;for(const Dt of this.effects)Dt.setDepthTexture(kt,_e)}render(kt,_e,Dt,Vt,Gt){for(const zt of this.effects)zt.update(kt,_e,Vt);if(!this.skipRendering||this.renderToScreen){const zt=this.fullscreenMaterial;zt.inputBuffer=_e.texture,zt.time+=Vt*this.timeScale,kt.setRenderTarget(this.renderToScreen?null:Dt),kt.render(this.scene,this.camera)}}setSize(kt,_e){this.fullscreenMaterial.setSize(kt,_e);for(const Dt of this.effects)Dt.setSize(kt,_e)}initialize(kt,_e,Dt){this.renderer=kt;for(const Vt of this.effects)Vt.initialize(kt,_e,Dt);this.updateMaterial(),Dt!==void 0&&Dt!==UnsignedByteType&&(this.fullscreenMaterial.defines.FRAMEBUFFER_PRECISION_HIGH="1")}dispose(){super.dispose();for(const kt of this.effects)kt.removeEventListener("change",this.listener),kt.dispose()}handleEvent(kt){switch(kt.type){case"change":this.recompile();break}}},NormalPass=class extends Pass{constructor(kt,_e,{renderTarget:Dt,resolutionScale:Vt=1,width:Gt=Resolution.AUTO_SIZE,height:zt=Resolution.AUTO_SIZE,resolutionX:jt=Gt,resolutionY:Ht=zt}={}){super("NormalPass"),this.needsSwap=!1,this.renderPass=new RenderPass(kt,_e,new MeshNormalMaterial);const Wt=this.renderPass;Wt.ignoreBackground=!0,Wt.skipShadowMapUpdate=!0;const qt=Wt.getClearPass();qt.overrideClearColor=new Color$1(7829503),qt.overrideClearAlpha=1,this.renderTarget=Dt,this.renderTarget===void 0&&(this.renderTarget=new WebGLRenderTarget(1,1,{minFilter:NearestFilter,magFilter:NearestFilter}),this.renderTarget.texture.name="NormalPass.Target");const Xt=this.resolution=new Resolution(this,jt,Ht,Vt);Xt.addEventListener("change",Kt=>this.setSize(Xt.baseWidth,Xt.baseHeight))}set mainScene(kt){this.renderPass.mainScene=kt}set mainCamera(kt){this.renderPass.mainCamera=kt}get texture(){return this.renderTarget.texture}getTexture(){return this.renderTarget.texture}getResolution(){return this.resolution}getResolutionScale(){return this.resolution.scale}setResolutionScale(kt){this.resolution.scale=kt}render(kt,_e,Dt,Vt,Gt){const zt=this.renderToScreen?null:this.renderTarget;this.renderPass.render(kt,zt,zt)}setSize(kt,_e){const Dt=this.resolution;Dt.setBaseSize(kt,_e),this.renderTarget.setSize(Dt.width,Dt.height)}};const EffectComposerContext=reactExports.createContext(null),isConvolution=kt=>(kt.getAttributes()&EffectAttribute.CONVOLUTION)===EffectAttribute.CONVOLUTION,EffectComposer=React.memo(reactExports.forwardRef(({children:kt,camera:_e,scene:Dt,resolutionScale:Vt,enabled:Gt=!0,renderPriority:zt=1,autoClear:jt=!0,depthBuffer:Ht,enableNormalPass:Wt,stencilBuffer:qt,multisampling:Xt=8,frameBufferType:Kt=HalfFloatType},Yt)=>{const{gl:Zt,scene:Jt,camera:nn,size:rn}=useThree(),Qt=Dt||Jt,en=_e||nn,[tn,sn,cn]=reactExports.useMemo(()=>{const pn=isWebGL2Available(),fn=new EffectComposer$1(Zt,{depthBuffer:Ht,stencilBuffer:qt,multisampling:Xt>0&&pn?Xt:0,frameBufferType:Kt});fn.addPass(new RenderPass(Qt,en));let mn=null,vn=null;return Wt&&(vn=new NormalPass(Qt,en),vn.enabled=!1,fn.addPass(vn),Vt!==void 0&&pn&&(mn=new DepthDownsamplingPass({normalBuffer:vn.texture,resolutionScale:Vt}),mn.enabled=!1,fn.addPass(mn))),[fn,vn,mn]},[en,Zt,Ht,qt,Xt,Kt,Qt,Wt,Vt]);reactExports.useEffect(()=>tn?.setSize(rn.width,rn.height),[tn,rn]),useFrame((pn,fn)=>{if(Gt){const mn=Zt.autoClear;Zt.autoClear=jt,qt&&!jt&&Zt.clearStencil(),tn.render(fn),Zt.autoClear=mn}},Gt?zt:0);const un=reactExports.useRef(null),hn=useInstanceHandle(un);reactExports.useLayoutEffect(()=>{const pn=[];if(un.current&&hn.current&&tn){const fn=hn.current.objects;for(let mn=0;mn<fn.length;mn++){const vn=fn[mn];if(vn instanceof Effect){const _n=[vn];if(!isConvolution(vn)){let An=null;for(;(An=fn[mn+1])instanceof Effect&&!isConvolution(An);)_n.push(An),mn++}const En=new EffectPass(en,..._n);pn.push(En)}else vn instanceof Pass&&pn.push(vn)}for(const mn of pn)tn?.addPass(mn);sn&&(sn.enabled=!0),cn&&(cn.enabled=!0)}return()=>{for(const fn of pn)tn?.removePass(fn);sn&&(sn.enabled=!1),cn&&(cn.enabled=!1)}},[tn,kt,en,sn,cn,hn]),reactExports.useEffect(()=>{const pn=Zt.toneMapping;return Zt.toneMapping=NoToneMapping,()=>{Zt.toneMapping=pn}},[]);const dn=reactExports.useMemo(()=>({composer:tn,normalPass:sn,downSamplingPass:cn,resolutionScale:Vt,camera:en,scene:Qt}),[tn,sn,cn,Vt,en,Qt]);return reactExports.useImperativeHandle(Yt,()=>tn,[tn]),jsxRuntimeExports.jsx(EffectComposerContext.Provider,{value:dn,children:jsxRuntimeExports.jsx("group",{ref:un,children:kt})})})),resolveRef=kt=>typeof kt=="object"&&kt!=null&&"current"in kt?kt.current:kt,Outline=reactExports.forwardRef(function kt({selection:_e=[],selectionLayer:Dt=10,blendFunction:Vt,patternTexture:Gt,edgeStrength:zt,pulseSpeed:jt,visibleEdgeColor:Ht,hiddenEdgeColor:Wt,width:qt,height:Xt,kernelSize:Kt,blur:Yt,xRay:Zt,...Jt},nn){const rn=useThree(cn=>cn.invalidate),{scene:Qt,camera:en}=reactExports.useContext(EffectComposerContext),tn=reactExports.useMemo(()=>new OutlineEffect(Qt,en,{blendFunction:Vt,patternTexture:Gt,edgeStrength:zt,pulseSpeed:jt,visibleEdgeColor:Ht,hiddenEdgeColor:Wt,width:qt,height:Xt,kernelSize:Kt,blur:Yt,xRay:Zt,...Jt}),[Vt,Yt,en,zt,Xt,Wt,Kt,Gt,jt,Qt,Ht,qt,Zt]),sn=reactExports.useContext(selectionContext);return reactExports.useEffect(()=>{if(!sn&&_e)return tn.selection.set(Array.isArray(_e)?_e.map(resolveRef):[resolveRef(_e)]),rn(),()=>{tn.selection.clear(),rn()}},[tn,_e,sn,rn]),reactExports.useEffect(()=>{tn.selectionLayer=Dt,rn()},[tn,rn,Dt]),reactExports.useRef(),reactExports.useEffect(()=>{var cn;if(sn&&sn.enabled&&(cn=sn.selected)!=null&&cn.length)return tn.selection.set(sn.selected),rn(),()=>{tn.selection.clear(),rn()}},[sn,tn.selection,rn]),reactExports.useEffect(()=>()=>{tn.dispose()},[tn]),jsxRuntimeExports.jsx("primitive",{ref:nn,object:tn})}),ToneMapping=reactExports.forwardRef(function kt({blendFunction:_e,adaptive:Dt,mode:Vt,resolution:Gt,maxLuminance:zt,whitePoint:jt,middleGrey:Ht,minLuminance:Wt,averageLuminance:qt,adaptationRate:Xt,...Kt},Yt){const Zt=reactExports.useMemo(()=>new ToneMappingEffect({blendFunction:_e,adaptive:Dt,mode:Vt,resolution:Gt,maxLuminance:zt,whitePoint:jt,middleGrey:Ht,minLuminance:Wt,averageLuminance:qt,adaptationRate:Xt}),[_e,Dt,Vt,Gt,zt,jt,Ht,Wt,qt,Xt]);return reactExports.useEffect(()=>{Zt.dispose()},[Zt]),jsxRuntimeExports.jsx("primitive",{...Kt,ref:Yt,object:Zt,attributes:EffectAttribute.CONVOLUTION})}),Model=reactExports.forwardRef(({stores:kt,itemKey:_e,mainModel:Dt,scale:Vt,onDragStartHandler:Gt,onDragEndHandler:zt,onItemClickHandler:jt,stockAlert:Ht=!0},Wt)=>{const qt=kt.itemStore(hn=>hn.focusedGUID),Xt=kt.itemStore(hn=>hn),Kt=kt.itemStore(hn=>hn.hoveredItemRef),Yt=reactExports.useRef(null),Zt=reactExports.useRef([]),Jt=reactExports.useRef(0),nn=reactExports.useRef(0),[rn,Qt]=reactExports.useState(!1);reactExports.useEffect(()=>()=>{dispose3(Dt)},[Dt]);const en=reactExports.useCallback(()=>{if(!Wt.current)return;const hn=nn.current<1e-4,{meshArr:dn,restored:pn}=findMeshAndCloneMatFromScene(kt,Wt.current,Wt.current.inStock,hn);if(Zt.current=dn,Zt.current.length==0)return;if(Wt.current.inStock===!1){Ht==!0&&(Ht=!1,kt.coreSceneStore.getState().CORE_API.alert({alertMsg:"Some item(s) in configuration are out of stock",alertTime:7e3,alertType:"warn",alertLabel:"Stock Alert",persistant:!0,alertId:"outOfStock"}));return}if(pn)return;const{current:fn}=nn;for(let mn=0;mn<Zt.current.length;mn++){const vn=Zt.current[mn].material;vn.emissiveIntensity=fn}},[nn,Wt]),tn=reactExports.useCallback(()=>{Jt.current=0},[Zt]),sn=reactExports.useCallback(()=>{Jt.current=.005},[Zt,Dt]);useFrame(()=>{if(!rn||kt.coreSceneStore.getState().builderMode)return;const hn=kt.cameraStore.getState().userDragging,dn=0;nn.current=MathUtils.lerp(nn.current,hn?dn:Jt.current,.1),en()}),reactExports.useEffect(()=>{const hn=kt.attachmentStore.getState().attachmentSystem.currentStructure,dn=hn.getNodeByGUID(_e.itemData.guid);if(dn?.isDependent&&!dn.isInteractive&&Object.keys(Kt).length>0){const pn=hn.getNodeByGUID(Object.keys(Kt)[0]);if(!pn||!pn.myDependenciesGUID)return;pn.myDependenciesGUID.includes(_e.itemData.guid)?tn():sn()}else Kt.hasOwnProperty(_e.itemData.guid)||Object.keys(Kt).length==0?tn():sn()},[Kt]);const cn=reactExports.useCallback(hn=>{hn.stopPropagation();const dn=Xt.selectedItemData;kt.coreSceneStore.setState({canvasTooltipText:"-"+_e.itemData.name+"-"}),dn||kt.itemStore.setState({hoveredItemRef:{}});let pn=kt.itemStore.getState().hoveredItemRef;pn.hasOwnProperty(_e.itemData.guid)||(pn[_e.itemData.guid]={instance:Wt.current},Xt.actions.setHoveredItemRef({...pn}))},[Xt,Kt,Yt]),un=reactExports.useCallback(hn=>{hn.stopPropagation();const dn=Xt.selectedItemData;if(kt.coreSceneStore.setState({canvasTooltipText:""}),dn){if(dn.itemData.guid==_e.itemData.guid)return;Kt[_e.itemData.guid]&&(delete Kt[_e.itemData.guid],Xt.actions.setHoveredItemRef({...Kt}))}else kt.itemStore.setState({hoveredItemRef:{}})},[Yt,Xt,Kt]);return reactExports.useEffect(()=>{kt.attachmentStore.getState().actions.updateFittingSkuIds();const dn=kt.attachmentStore.getState().attachmentSystem.currentStructure.getNodeByGUID(_e.itemData.guid);dn&&dn.checkGeometryVariant(),kt.coreSceneStore.getState().CORE_API.fireEvent(kt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Model_Loaded,_e.itemData.skuID),kt.coreSceneStore.getState().CORE_API.fireEvent(kt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Item_Added,{..._e,visualizedInScene:!0}),Qt(!0)},[]),reactExports.useEffect(()=>{rn&&(kt.coreSceneStore.getState().actions.refreshShadows(),kt.coreSceneStore.getState().actions.triggerAutoFocus())},[rn]),jsxRuntimeExports.jsx(Select,{enabled:qt===_e.itemData.guid,children:jsxRuntimeExports.jsx(Draggable,{stores:kt,guid:_e.itemData.guid,onDragStartHandler:Gt,onDragEndHandler:zt,onItemClickHandler:jt,onPointerEnter:cn,onPointerLeave:un,isInteractive:_e.itemData.isInteractive,children:jsxRuntimeExports.jsx(Clone,{name:"GRP_RenderGeometry",ref:Wt,object:Dt,scale:Vt,inStock:!0})})})}),ModelAnimation=({stores:kt,modelAnimations:_e,mainModel:Dt,itemKey:Vt,scale:Gt,onDragStartHandler:zt,onDragEndHandler:jt,onItemClickHandler:Ht})=>{const{ref:Wt,actions:qt,names:Xt}=useAnimations(_e),Kt=kt.hotspotStore(nn=>nn),Yt=reactExports.useRef(null),Zt=reactExports.useCallback((nn,rn,Qt,en)=>playAnimation(nn,rn,Qt,en,Xt,qt),[Xt,qt]),Jt=reactExports.useCallback(nn=>stopAnimation(nn,Xt,qt),[Xt,qt]);return reactExports.useEffect(()=>{if(Yt.current===Vt.itemData.guid){if(Yt.current=null,!Kt.lastActiveHotspotData)return;let nn=Kt.lastActiveHotspotData.hotspotData;if(!nn)return;if(nn.exitAnim?Zt(nn.exitAnim,!1,!1,!1):nn.entryAnim&&Zt(nn.entryAnim,!1,!0,!1),nn.activeAnim&&Jt(nn.activeAnim),Kt.activeHotspotData){if(Vt.itemData.guid===Kt.activeHotspotData.itemData.guid){Yt.current=Vt.itemData.guid;let rn=Kt.activeHotspotData.hotspotData;if(!rn)return;rn.entryAnim&&Zt(rn.entryAnim,!1,!1,!0),rn.activeAnim&&Zt(rn.activeAnim,!0,!1,!1)}}else return}else if(Kt.activeHotspotData){if(Vt.itemData.guid===Kt.activeHotspotData.itemData.guid){Yt.current=Vt.itemData.guid;let nn=Kt.activeHotspotData.hotspotData;if(!nn)return;nn.entryAnim&&Zt(nn.entryAnim,!1,!1,!0),nn.activeAnim&&Zt(nn.activeAnim,!0,!1,!1)}}else return},[Kt.activeHotspotData]),jsxRuntimeExports.jsx(Model,{stores:kt,ref:Wt,mainModel:Dt,itemKey:Vt,scale:Gt,onDragStartHandler:zt,onDragEndHandler:jt,onItemClickHandler:Ht})};function playAnimation(kt,_e,Dt,Vt,Gt,zt){if(!Gt.includes(kt))return;const jt=zt[kt];jt.setLoop(_e?LoopRepeat:LoopOnce),jt.clampWhenFinished=!_e,Vt&&jt.reset(),Dt?jt.fadeOut(.5).play():jt.fadeIn(.5).play()}function stopAnimation(kt,_e,Dt){if(!_e.includes(kt))return;Dt[kt].stop()}const RenderGeo=({stores:kt,url:_e,itemKey:Dt,scale:Vt,onDragStartHandler:Gt,onDragEndHandler:zt,onItemClickHandler:jt})=>{const[Ht,Wt]=reactExports.useState(!1),qt=useLoader(GLTFLoader,_e,Xt=>{Xt.setDRACOLoader(kt.assetStore.getState().dracoLoader),Xt.register(Kt=>new GLTFMaterialsVariantsExtension(Kt))});return reactExports.useEffect(()=>((async()=>{if(qt.functions){const Kt=kt.attachmentStore.getState().attachmentSystem.currentStructure.getNodeByGUID(Dt.itemData.guid);if(Kt){Kt.modelFunctions=qt.functions;const Yt=findVariantForGUID(kt,Dt.itemData.guid);Yt&&(Kt.currentVariant=Yt,await qt.functions.selectVariant(qt.scene,Yt),kt.itemStore.setState({variantChangeAlert:!kt.itemStore.getState().variantChangeAlert}))}}LOGGER.info({title:"model loaded: "+Dt.itemData.skuID}),Dt.itemData.hasItemLoaded=!0,kt.itemStore.getState().actions.triggerModelLoaded(),await kt.attachmentStore.getState().actions.updateFittingSkuIds(),Wt(!0)})(),()=>{kt.coreSceneStore.getState().CORE_API.fireEvent(kt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Model_Removed,Dt.itemData.skuID)}),[qt]),jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:Ht&&qt&&(qt.animations?jsxRuntimeExports.jsx(ModelAnimation,{stores:kt,modelAnimations:qt.animations,mainModel:qt.scene,itemKey:Dt,scale:Vt,onDragStartHandler:Gt,onDragEndHandler:zt,onItemClickHandler:jt}):jsxRuntimeExports.jsx(Model,{stores:kt,mainModel:qt.scene,itemKey:Dt,scale:Vt,onDragStartHandler:Gt,onDragEndHandler:zt,onItemClickHandler:jt}))})},SceneItem=({stores:kt,position:_e,rotation:Dt,itemKey:Vt,scale:Gt,rejectFunc:zt,onItemClickHandler:jt,onDragEndHandler:Ht,onDragStartHandler:Wt,itemIndex:qt,proxyScene:Xt,proxyOnly:Kt})=>{const Yt=reactExports.useRef(null);return reactExports.useEffect(()=>{if(!Yt.current)return;const Zt=kt.coreSceneStore.getState().sceneRef;if(Zt&&Vt.itemData.hasOwnProperty("excludeFromSceneBounds")&&Vt.itemData.excludeFromSceneBounds){const rn=Zt.getObjectByName("#GRP_EXCLUDED");rn!==void 0&&rn.attach(Yt.current)}const nn=kt.attachmentStore.getState().attachmentSystem.currentStructure.getNodeByGUID(Vt.itemData.guid);nn&&nn.ref!==Yt.current&&(nn.ref=Yt.current,nn.transform={position:_e,rotation:Dt})},[Yt]),jsxRuntimeExports.jsxs("group",{ref:Yt,position:_e,quaternion:Dt,name:`GRP_${Vt.itemData.name}_`+qt.toString().padStart(2,"0"),children:[jsxRuntimeExports.jsx(ColliderGeo,{stores:kt,itemKey:Vt}),jsxRuntimeExports.jsx(ProxyGeo,{stores:kt,proxyScene:Xt,scale:Gt,proxyOnly:Kt,itemKey:Vt}),!Kt&&jsxRuntimeExports.jsx(reactExports.Suspense,{children:jsxRuntimeExports.jsx(RenderGeo,{stores:kt,scale:Gt,itemKey:Vt,url:resolveAssetUrl(kt.coreSceneStore.getState().CORE_API.isMobile&&Vt.itemData.gltfURL_mobile?Vt.itemData.gltfURL_mobile:Vt.itemData.gltfURL),onDragStartHandler:Wt,onDragEndHandler:Ht,onItemClickHandler:jt})})]})};function GhostEventHandler({index:kt,children:_e,...Dt}){const Vt=reactExports.useRef(),Gt=useGesture({onPointerEnter:zt=>{zt.event.stopPropagation(),Dt.stores.coreSceneStore.getState().itemDraggedSkuID&&Dt.stores.coreSceneStore.setState({hoveredGhostIndex:kt})},onPointerLeave:zt=>{zt.event.stopPropagation(),Dt.stores.coreSceneStore.getState().itemDraggedSkuID&&Dt.stores.coreSceneStore.getState().hoveredGhostIndex===kt&&Dt.stores.coreSceneStore.setState({hoveredGhostIndex:-1})}});return jsxRuntimeExports.jsx("group",{ref:Vt,...Gt(),...Dt,children:_e})}const Ghost=({stores:kt,ghostVisibility:_e,ghostData:Dt,ghostTransform:Vt,index:Gt})=>{const zt=reactExports.useRef(),jt=reactExports.useMemo(()=>Dt.proxyScene.clone(),[Dt]),Ht=kt.coreSceneStore(Wt=>Wt.hoveredGhostIndex);return reactExports.useEffect(()=>()=>{dispose3(jt)},[jt]),reactExports.useEffect(()=>{const{current:Wt}=zt;Wt&&(Wt.userData.incomingPlugName=Vt.incomingPlugName,Wt.userData.receiverPlugName=Vt.receiverPlugName,Wt.userData.incomingPlugGUID=Vt.incomingPlugGUID,Wt.userData.receiverPlugGUID=Vt.receiverPlugGUID,kt.coreSceneStore.getState().CORE_API.fireEvent(kt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Ghost_Loaded,{ghostData:Dt,ghostTransform:Vt}))},[zt]),jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:jsxRuntimeExports.jsx(GhostEventHandler,{stores:kt,index:Gt,children:jsxRuntimeExports.jsx(Select,{enabled:Ht===Gt,children:jsxRuntimeExports.jsx("primitive",{isGhost:!0,ref:zt,index:Gt,autoFocusEnabled:_e,position:Vt.position,scale:kt.coreSceneStore.getState().sceneSettings.ghostScale,quaternion:Vt.rotation,object:jt,castShadow:!1,receiveShadow:!1,frustumCulled:!1},`ghost${Gt}`)})})})},GhostManager=({stores:kt,intersectingGhostObject:_e=null})=>{const{camera:Dt}=useThree(),Vt=kt.ghostStore(Xt=>Xt.ghostVisibility),Gt=kt.ghostStore(Xt=>Xt.ghostData),zt=kt.ghostStore(Xt=>Xt.ghostsTransform),jt=reactExports.useRef(),{_touch2D:Ht,raycasterGhost:Wt}=reactExports.useMemo(()=>({_touch2D:new Vector2,raycasterGhost:new Raycaster}),[]);reactExports.useEffect(()=>{const{current:Xt}=jt;Xt&&kt.ghostStore.setState({ghostParentRef:Xt})},[jt]);const qt=Xt=>{let Kt=0,Yt=0;if(Xt.touches&&Xt.touches[0])Kt=Xt.touches[0].clientX,Yt=Xt.touches[0].clientY;else return;if(!kt.coreSceneStore.getState().itemDraggedSkuID)return;const Zt=kt.coreSceneStore.getState().cursorParentRef,Jt=kt.coreSceneStore.getState().canvasSize;if(!Zt)return;const nn=Zt.getBoundingClientRect(),rn=nn.top,Qt=nn.left,en=(Kt-Qt)/Jt.width*2-1,tn=(-Yt+rn)/Jt.height*2+1;Ht.set(en,tn),Wt.layers.enable(GHOST_LAYER),Wt.setFromCamera(Ht,Dt);const sn=Wt.intersectObject(kt.ghostStore.getState().ghostParentRef);sn.length>0?(_e=sn[0].object,kt.coreSceneStore.setState({hoveredGhostIndex:_e.parent.index})):(_e=null,kt.coreSceneStore.setState({hoveredGhostIndex:-1}))};return reactExports.useEffect(()=>(kt.wcRef.addEventListener("touchmove",qt,!1),LOGGER.info({title:"Ghost Manager Mounted!"}),()=>{const Kt=kt.wcRef;Kt&&Kt.removeEventListener("touchmove",qt,!1)}),[]),jsxRuntimeExports.jsx("group",{name:"#GRP_GhostParent",visible:Vt,scale:Vt?[1,1,1]:[0,0,0],ref:jt,children:Gt&&jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:zt.map((Xt,Kt)=>Kt<Gt.count&&jsxRuntimeExports.jsx(Ghost,{stores:kt,ghostVisibility:Vt,ghostData:Gt,ghostTransform:Xt,index:Kt},"ghosts"+Kt))})})},ItemManager=({stores:kt})=>{const _e=kt.attachmentStore(fn=>fn),Dt=kt.itemStore(fn=>fn.removeItemTrigger),Vt=kt.itemStore(fn=>fn.variantChangeAlert),Gt=kt.hotspotStore(fn=>fn),zt=kt.coreSceneStore(fn=>fn.showDimensions),jt=kt.itemStore(fn=>fn),Ht=kt.itemStore(fn=>fn.lastDeletedItemData),Wt=kt.cameraStore(fn=>fn),qt=kt.itemStore(fn=>fn.selectedItemData),Xt=kt.itemStore(fn=>fn.itemsSpawned),Kt=kt.itemStore(fn=>fn.fittingSkuIds),Yt=kt.coreSceneStore(fn=>fn.coreReady),Zt=reactExports.useRef(null),Jt=reactExports.useRef(null),nn=reactExports.useRef(!1),rn=reactExports.useRef(null),Qt=reactExports.useRef(null),en=reactExports.useRef(!1),tn=reactExports.useRef(!1);reactExports.useRef(!1),reactExports.useRef(!1);const sn=reactExports.useCallback(async({guid:fn,node:mn,detachedData:vn,attachedChildrenGuids:_n})=>{if(nn.current===!0)return;const En=kt.attachmentStore.getState().attachmentSystem.currentStructure;return nn.current=!0,kt.cameraStore.getState().actions.canCameraRotate(!1),Gt.actions.switchHotspotsVisibility(!1,!0),rn.current={position:mn.ref.position.clone(),rotation:mn.ref.rotation.clone()},Qt.current=vn,await En.removeNodeFromStructure(mn),_n.length<=0&&(_n=!1),kt.ghostStore.getState().actions.spawnGhostsForSkuID(Xt[fn].itemData.skuID,_n)},[Wt,Xt]),cn=reactExports.useCallback(async({node:fn,intersectingGhostObject:mn,attachedChildrenGuids:vn,attachedNodesToCurrentNode:_n})=>{if(!nn.current)return;const En=kt.attachmentStore.getState().attachmentSystem.currentStructure;nn.current=!1,kt.cameraStore.getState().actions.canCameraRotate(!0),Gt.actions.switchHotspotsVisibility(!0,!0);function An(){fn.ref.position.set(0,0,0),kt.ghostStore.getState().actions.clearAllGhosts()}if(!kt.ghostStore.getState().ghostData?.connectablePlugs){An();return}En.addNode(fn);let Cn=null,yn=null,Sn=!1,wn=[],xn={};if(kt.coreSceneStore.getState().sceneSettings.ignoreCollisionPostDragging===!1&&vn.map((Rn,Dn)=>{wn[Dn]=En.checkCollisionForGUID(Rn,vn),wn[Dn]&&(xn[Rn]=Xt[Rn],En.getNodeByGUID(Rn).getAllBranchedNodesAttachedToUs().map(Pn=>{xn[Pn.guid]=Xt[Pn.guid]}))}),wn.map(Rn=>{Sn||(Sn=Rn)}),mn&&Sn){kt.coreSceneStore.setState({draggingOnDropCollisionData:{node:fn,attachedChildrenGuids:vn,collidingStatus:wn,intersectingGhostObject:mn,initPosition:rn.current.position,initRotation:rn.current.rotation,detachedPlugs:Qt.current,attachedNodesToCurrentNode:_n}}),fn.ref.position.set(mn.position.x,mn.position.y,mn.position.z),fn.ref.setRotationFromEuler(mn.rotation),kt.coreSceneStore.getState().CORE_API.fireEvent(kt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.DraggingOnDrop_CollsionDetected,xn);return}if(mn){const Rn=mn.userData;Cn=fn.getPlugByName(Rn.incomingPlugName),yn=En.getPlugByGUID(Rn.receiverPlugGUID),fn.ref.position.set(mn.position.x,mn.position.y,mn.position.z),fn.ref.setRotationFromEuler(mn.rotation),fn.transform={position:mn.position,rotation:mn.quaternion}}else{const Rn=Qt.current.neighborDetachedPlugs;Rn&&(Qt.current.neighborNode.detachNodeFromReceiver(),En.connectPlugs({incomingPlug:Rn.incomingPlug,receiverPlug:Rn.receiverPlug})),Cn=Qt.current.rootDetachedPlugs.incomingPlug,yn=Qt.current.rootDetachedPlugs.receiverPlug,fn.ref.position.set(rn.current.position.x,rn.current.position.y,rn.current.position.z),fn.ref.setRotationFromEuler(rn.current.rotation);let Dn=new Quaternion().identity();fn.ref.getWorldQuaternion(Dn),fn.transform={position:rn.current.position,rotation:Dn}}En.connectPlugs({incomingPlug:Cn,receiverPlug:yn}),kt.ghostStore.getState().actions.clearAllGhosts(),kt.itemStore.getState().actions.deselectItem(),_n.map(Rn=>{fn.ref.parent.attach(Rn.ref),Rn.transform={position:Rn.ref.position,rotation:Rn.ref.quaternion},fn.dragging=!1,Rn.dragging=!1}),await kt.attachmentStore.getState().actions.updateFittingSkuIds()},[Wt,kt.coreSceneStore,kt.ghostStore,_e,Xt]),un=reactExports.useCallback((fn,mn,vn)=>{if(kt.coreSceneStore.getState().sceneSettings.disableContextMenu)return;const _n=kt.attachmentStore.getState().attachmentSystem.currentStructure,En=_n.getNodeByGUID(vn);let An=[];if(!En?.myDependenciesGUID)return;En.myDependenciesGUID.map(yn=>{const Sn=_n.getNodeByGUID(yn);if(!Sn)return;let wn={guid:yn,name:Xt[yn].itemData.guid,data:{...Xt[yn],overrideVariant:Sn.overrideVariant,currentVariant:Sn.currentVariant,offsetX:fn,offsetY:mn}};An.push(wn)}),An.sort((yn,Sn)=>yn.name>Sn.name?1:Sn.name>yn.name?-1:0);let Tn=kt.inventoryStore.getState().inventoryData[Xt[vn].itemData.skuID];const Cn={primary:{guid:vn,name:Xt[vn].itemData.name,data:{inventory:Tn,...Xt[vn],overrideVariant:En.overrideVariant,currentVariant:En.currentVariant,offsetX:fn,offsetY:mn}},dependencies:An};jt.actions.setSelectedItemData(Cn.primary.data),kt.coreSceneStore.getState().CORE_API.fireEvent(kt.coreSceneStore.getState().CORE_API.EVENTS.UI.ContextMenu_Show,Cn)},[Xt]),hn=reactExports.useCallback(fn=>{if(!fn)return;kt.itemStore.setState({lastDeletedItemData:{...Xt[fn]}});const mn={...Xt[fn]};delete Xt[fn],jt.actions.setItemsSpawned({...Xt}),kt.coreSceneStore.getState().CORE_API.fireEvent(kt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Item_Removed,mn)},[jt,kt.itemStore,Xt]);reactExports.useEffect(()=>{let fn=kt.itemStore.getState().removeItems;if(fn.length<=0&&!Ht)return;let mn=fn.pop();hn(mn)},[Dt,Ht]);const dn=reactExports.useCallback(function(fn){const mn=kt.coreSceneStore.getState().sceneSettings,vn=fn>1?!0:fn===1?Object.values(Xt)[0].itemData.skuID.toLowerCase()!=="root":!1,_n=!vn;LOGGER.groupCollapsed("Resolving buttons visibility"),LOGGER.table({sceneIsEmpty:_n,sceneIsNotEmpty:vn}),LOGGER.groupEnd(),mn.showViewInYourSpaceBtn===!0&&(vn&&en.current===!1?(kt.coreSceneStore.getState().CORE_API.fireEvent(kt.coreSceneStore.getState().CORE_API.EVENTS.UI.ViewInYourSpaceButton_Show),en.current=!0):_n&&en.current===!0&&(kt.coreSceneStore.getState().CORE_API.fireEvent(kt.coreSceneStore.getState().CORE_API.EVENTS.UI.ViewInYourSpaceButton_Hide),en.current=!1)),mn.showShareBtn===!0&&(vn&&tn.current===!1?(kt.coreSceneStore.getState().CORE_API.fireEvent(kt.coreSceneStore.getState().CORE_API.EVENTS.UI.ShareButton_Show),tn.current=!0):_n&&tn.current===!0&&(kt.coreSceneStore.getState().CORE_API.fireEvent(kt.coreSceneStore.getState().CORE_API.EVENTS.UI.ShareButton_Hide),tn.current=!1))},[Xt]);reactExports.useEffect(()=>{kt.coreSceneStore.getState().preconfigurationLoaded&&kt.coreSceneStore.getState().configurationLoaded&&kt.coreSceneStore.getState().CORE_API.fireEvent(kt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Items_Updated,{itemsSpawned:Xt});const fn=kt.coreSceneStore.getState().sceneSettings,mn=kt.itemStore.getState().defaultSceneItemCount;Object.keys(Xt).length===mn?kt.coreSceneStore.setState({canvasTooltipText:fn.textSettings.tooltipEmptySceneText}):Object.keys(Xt).length===mn+1&&kt.coreSceneStore.setState({canvasTooltipText:fn.textSettings.tooltipInstructionText})},[Xt]),reactExports.useEffect(()=>{Yt===!0&&dn(Object.keys(Xt).length)},[Xt,Yt]),reactExports.useEffect(()=>{if(kt.inventoryStore.getState().actions.refreshInventory(Xt),!kt.coreSceneStore.getState().preconfigurationLoaded||!kt.coreSceneStore.getState().configurationLoaded)return;async function fn(){const mn=kt.attachmentStore.getState().attachmentSystem;if(!mn)return;const vn=await mn.getCartItemsAsync();kt.coreSceneStore.getState().CORE_API.fireEvent(kt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.CartItems_Updated,vn),kt.coreSceneStore.getState().CORE_API.fireEvent(kt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.ReplaceableCategory_Updated,mn.currentStructure.getCurrentItemsInReplaceableCategory())}fn()},[Xt,Vt]);const pn=reactExports.useCallback((fn,mn,vn)=>{kt.coreSceneStore.getState().CORE_API.removeItemByGUID(vn),kt.coreSceneStore.getState().CORE_API.alert({alertMsg:mn+": "+fn,alertTime:5e3,alertType:"error",alertLabel:"Error",persistant:!0})},[]);return reactExports.useEffect(()=>{const{current:fn}=Jt;fn&&kt.attachmentStore.setState({colliderMeshRef:fn})},[Jt]),reactExports.useEffect(()=>{const{current:fn}=Zt;fn&&kt.coreSceneStore.setState({sceneRef:fn})},[Zt]),reactExports.useEffect(()=>{let fn=qt?kt.cameraStore.getState().cameraSettings.zoomingMultiplier:kt.cameraStore.getState().cameraSettings.zoomingMultiplier+.1;fn+=zt?.3:.1,kt.cameraStore.setState({boundsMargin:fn}),kt.coreSceneStore.getState().actions.triggerAutoFocus()},[zt,qt]),reactExports.useEffect(()=>{kt.coreSceneStore.getState().CORE_API.fireEvent(kt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.FittingSkuIds_Updated,{skuids:Kt})},[Kt]),reactExports.useEffect(()=>{const fn=kt.itemStore.getState().itemsSpawned;if(LOGGER.info({title:"item Manager mounted"}),!kt.coreSceneStore.getState().preconfigurationLoaded)kt.attachmentStore.getState().actions.loadDefaultStructure();else if(Object.keys(fn).length===1){const mn=Object.keys(fn)[0];kt.itemStore.getState().actions.resolvePlugDependencyOnGUID(mn)}},[]),jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsxs("group",{name:"Scene",ref:Zt,onPointerMissed:()=>{qt&&jt.actions.deselectItem(),kt.hotspotStore.getState().isAnyHotspotActive&&kt.hotspotStore.getState().actions.exitHotspot()},children:[jsxRuntimeExports.jsx("group",{name:"#GRP_EXCLUDED"}),jsxRuntimeExports.jsxs("group",{name:"#ITEMS_AND_GHOSTS",children:[jsxRuntimeExports.jsx("group",{name:"#ITEMS",children:Object.keys(Xt).map((fn,mn)=>jsxRuntimeExports.jsx(SceneItem,{stores:kt,scale:[1,1,1],onDragStartHandler:sn,onDragEndHandler:cn,onItemClickHandler:un,itemKey:Xt[fn],position:Xt[fn].itemData.position,rotation:Xt[fn].itemData.rotation,itemIndex:mn,proxyScene:Xt[fn].itemData.proxyScene,rejectFunc:pn,proxyOnly:Xt[fn].itemData.gltfURL==""},fn))}),jsxRuntimeExports.jsx(GhostManager,{stores:kt})]})]}),jsxRuntimeExports.jsx("group",{name:"#Parent_ColliderMesh",children:jsxRuntimeExports.jsx("mesh",{ref:Jt,visible:!1,enabled:!0,name:"#COLLIDER_MESH",children:jsxRuntimeExports.jsx("meshPhongMaterial",{depthTest:!1,transparent:!0,opacity:.8})})})]})},ContactShadows=reactExports.forwardRef(({scale:kt=10,frames:_e=1/0,excludeLayer:Dt=-1,bbmin:Vt=1,bbmax:Gt=1,opacity:zt=1,width:jt=1,height:Ht=1,blur:Wt=1,near:qt=0,far:Xt=10,resolution:Kt=512,smooth:Yt=!0,color:Zt="#000000",depthWrite:Jt=!1,renderOrder:nn,...rn},Qt)=>{const en=reactExports.useRef(null),tn=useThree(Cn=>Cn.scene),sn=useThree(Cn=>Cn.gl),cn=reactExports.useRef(null);jt=jt*(Array.isArray(kt)?kt[0]:kt||1),Ht=Ht*(Array.isArray(kt)?kt[1]:kt||1);const[un,hn,dn,pn,fn,mn,vn]=reactExports.useMemo(()=>{const Cn=new WebGLRenderTarget(Kt,Kt),yn=new WebGLRenderTarget(Kt,Kt);yn.texture.generateMipmaps=Cn.texture.generateMipmaps=!1;const Sn=new PlaneGeometry(jt,Ht).rotateX(Math.PI/2),wn=new Mesh(Sn),xn=new MeshDepthMaterial;xn.depthTest=xn.depthWrite=!1,xn.onBeforeCompile=kn=>{kn.uniforms={...kn.uniforms,ucolor:{value:new Color$1(Zt)}},kn.fragmentShader=kn.fragmentShader.replace("void main() {",`uniform vec3 ucolor;
|
|
4461
|
+
#`));this.skipRendering=_e===0,this.needsSwap=!this.skipRendering,this.fullscreenMaterial.setShaderData(kt)}recompile(){this.updateMaterial()}getDepthTexture(){return this.fullscreenMaterial.depthBuffer}setDepthTexture(kt,_e=BasicDepthPacking){this.fullscreenMaterial.depthBuffer=kt,this.fullscreenMaterial.depthPacking=_e;for(const Dt of this.effects)Dt.setDepthTexture(kt,_e)}render(kt,_e,Dt,Vt,Gt){for(const zt of this.effects)zt.update(kt,_e,Vt);if(!this.skipRendering||this.renderToScreen){const zt=this.fullscreenMaterial;zt.inputBuffer=_e.texture,zt.time+=Vt*this.timeScale,kt.setRenderTarget(this.renderToScreen?null:Dt),kt.render(this.scene,this.camera)}}setSize(kt,_e){this.fullscreenMaterial.setSize(kt,_e);for(const Dt of this.effects)Dt.setSize(kt,_e)}initialize(kt,_e,Dt){this.renderer=kt;for(const Vt of this.effects)Vt.initialize(kt,_e,Dt);this.updateMaterial(),Dt!==void 0&&Dt!==UnsignedByteType&&(this.fullscreenMaterial.defines.FRAMEBUFFER_PRECISION_HIGH="1")}dispose(){super.dispose();for(const kt of this.effects)kt.removeEventListener("change",this.listener),kt.dispose()}handleEvent(kt){switch(kt.type){case"change":this.recompile();break}}},NormalPass=class extends Pass{constructor(kt,_e,{renderTarget:Dt,resolutionScale:Vt=1,width:Gt=Resolution.AUTO_SIZE,height:zt=Resolution.AUTO_SIZE,resolutionX:jt=Gt,resolutionY:Ht=zt}={}){super("NormalPass"),this.needsSwap=!1,this.renderPass=new RenderPass(kt,_e,new MeshNormalMaterial);const Wt=this.renderPass;Wt.ignoreBackground=!0,Wt.skipShadowMapUpdate=!0;const qt=Wt.getClearPass();qt.overrideClearColor=new Color$1(7829503),qt.overrideClearAlpha=1,this.renderTarget=Dt,this.renderTarget===void 0&&(this.renderTarget=new WebGLRenderTarget(1,1,{minFilter:NearestFilter,magFilter:NearestFilter}),this.renderTarget.texture.name="NormalPass.Target");const Xt=this.resolution=new Resolution(this,jt,Ht,Vt);Xt.addEventListener("change",Kt=>this.setSize(Xt.baseWidth,Xt.baseHeight))}set mainScene(kt){this.renderPass.mainScene=kt}set mainCamera(kt){this.renderPass.mainCamera=kt}get texture(){return this.renderTarget.texture}getTexture(){return this.renderTarget.texture}getResolution(){return this.resolution}getResolutionScale(){return this.resolution.scale}setResolutionScale(kt){this.resolution.scale=kt}render(kt,_e,Dt,Vt,Gt){const zt=this.renderToScreen?null:this.renderTarget;this.renderPass.render(kt,zt,zt)}setSize(kt,_e){const Dt=this.resolution;Dt.setBaseSize(kt,_e),this.renderTarget.setSize(Dt.width,Dt.height)}};const EffectComposerContext=reactExports.createContext(null),isConvolution=kt=>(kt.getAttributes()&EffectAttribute.CONVOLUTION)===EffectAttribute.CONVOLUTION,EffectComposer=React.memo(reactExports.forwardRef(({children:kt,camera:_e,scene:Dt,resolutionScale:Vt,enabled:Gt=!0,renderPriority:zt=1,autoClear:jt=!0,depthBuffer:Ht,enableNormalPass:Wt,stencilBuffer:qt,multisampling:Xt=8,frameBufferType:Kt=HalfFloatType},Yt)=>{const{gl:Zt,scene:Jt,camera:nn,size:rn}=useThree(),Qt=Dt||Jt,en=_e||nn,[tn,sn,cn]=reactExports.useMemo(()=>{const pn=isWebGL2Available(),fn=new EffectComposer$1(Zt,{depthBuffer:Ht,stencilBuffer:qt,multisampling:Xt>0&&pn?Xt:0,frameBufferType:Kt});fn.addPass(new RenderPass(Qt,en));let mn=null,vn=null;return Wt&&(vn=new NormalPass(Qt,en),vn.enabled=!1,fn.addPass(vn),Vt!==void 0&&pn&&(mn=new DepthDownsamplingPass({normalBuffer:vn.texture,resolutionScale:Vt}),mn.enabled=!1,fn.addPass(mn))),[fn,vn,mn]},[en,Zt,Ht,qt,Xt,Kt,Qt,Wt,Vt]);reactExports.useEffect(()=>tn?.setSize(rn.width,rn.height),[tn,rn]),useFrame((pn,fn)=>{if(Gt){const mn=Zt.autoClear;Zt.autoClear=jt,qt&&!jt&&Zt.clearStencil(),tn.render(fn),Zt.autoClear=mn}},Gt?zt:0);const un=reactExports.useRef(null),hn=useInstanceHandle(un);reactExports.useLayoutEffect(()=>{const pn=[];if(un.current&&hn.current&&tn){const fn=hn.current.objects;for(let mn=0;mn<fn.length;mn++){const vn=fn[mn];if(vn instanceof Effect){const _n=[vn];if(!isConvolution(vn)){let An=null;for(;(An=fn[mn+1])instanceof Effect&&!isConvolution(An);)_n.push(An),mn++}const En=new EffectPass(en,..._n);pn.push(En)}else vn instanceof Pass&&pn.push(vn)}for(const mn of pn)tn?.addPass(mn);sn&&(sn.enabled=!0),cn&&(cn.enabled=!0)}return()=>{for(const fn of pn)tn?.removePass(fn);sn&&(sn.enabled=!1),cn&&(cn.enabled=!1)}},[tn,kt,en,sn,cn,hn]),reactExports.useEffect(()=>{const pn=Zt.toneMapping;return Zt.toneMapping=NoToneMapping,()=>{Zt.toneMapping=pn}},[]);const dn=reactExports.useMemo(()=>({composer:tn,normalPass:sn,downSamplingPass:cn,resolutionScale:Vt,camera:en,scene:Qt}),[tn,sn,cn,Vt,en,Qt]);return reactExports.useImperativeHandle(Yt,()=>tn,[tn]),jsxRuntimeExports.jsx(EffectComposerContext.Provider,{value:dn,children:jsxRuntimeExports.jsx("group",{ref:un,children:kt})})})),resolveRef=kt=>typeof kt=="object"&&kt!=null&&"current"in kt?kt.current:kt,Outline=reactExports.forwardRef(function kt({selection:_e=[],selectionLayer:Dt=10,blendFunction:Vt,patternTexture:Gt,edgeStrength:zt,pulseSpeed:jt,visibleEdgeColor:Ht,hiddenEdgeColor:Wt,width:qt,height:Xt,kernelSize:Kt,blur:Yt,xRay:Zt,...Jt},nn){const rn=useThree(cn=>cn.invalidate),{scene:Qt,camera:en}=reactExports.useContext(EffectComposerContext),tn=reactExports.useMemo(()=>new OutlineEffect(Qt,en,{blendFunction:Vt,patternTexture:Gt,edgeStrength:zt,pulseSpeed:jt,visibleEdgeColor:Ht,hiddenEdgeColor:Wt,width:qt,height:Xt,kernelSize:Kt,blur:Yt,xRay:Zt,...Jt}),[Vt,Yt,en,zt,Xt,Wt,Kt,Gt,jt,Qt,Ht,qt,Zt]),sn=reactExports.useContext(selectionContext);return reactExports.useEffect(()=>{if(!sn&&_e)return tn.selection.set(Array.isArray(_e)?_e.map(resolveRef):[resolveRef(_e)]),rn(),()=>{tn.selection.clear(),rn()}},[tn,_e,sn,rn]),reactExports.useEffect(()=>{tn.selectionLayer=Dt,rn()},[tn,rn,Dt]),reactExports.useRef(),reactExports.useEffect(()=>{var cn;if(sn&&sn.enabled&&(cn=sn.selected)!=null&&cn.length)return tn.selection.set(sn.selected),rn(),()=>{tn.selection.clear(),rn()}},[sn,tn.selection,rn]),reactExports.useEffect(()=>()=>{tn.dispose()},[tn]),jsxRuntimeExports.jsx("primitive",{ref:nn,object:tn})}),ToneMapping=reactExports.forwardRef(function kt({blendFunction:_e,adaptive:Dt,mode:Vt,resolution:Gt,maxLuminance:zt,whitePoint:jt,middleGrey:Ht,minLuminance:Wt,averageLuminance:qt,adaptationRate:Xt,...Kt},Yt){const Zt=reactExports.useMemo(()=>new ToneMappingEffect({blendFunction:_e,adaptive:Dt,mode:Vt,resolution:Gt,maxLuminance:zt,whitePoint:jt,middleGrey:Ht,minLuminance:Wt,averageLuminance:qt,adaptationRate:Xt}),[_e,Dt,Vt,Gt,zt,jt,Ht,Wt,qt,Xt]);return reactExports.useEffect(()=>{Zt.dispose()},[Zt]),jsxRuntimeExports.jsx("primitive",{...Kt,ref:Yt,object:Zt,attributes:EffectAttribute.CONVOLUTION})}),Model=reactExports.forwardRef(({stores:kt,itemKey:_e,mainModel:Dt,scale:Vt,onDragStartHandler:Gt,onDragEndHandler:zt,onItemClickHandler:jt,stockAlert:Ht=!0},Wt)=>{const qt=kt.itemStore(hn=>hn.focusedGUID),Xt=kt.itemStore(hn=>hn),Kt=kt.itemStore(hn=>hn.hoveredItemRef),Yt=reactExports.useRef(null),Zt=reactExports.useRef([]),Jt=reactExports.useRef(0),nn=reactExports.useRef(0),[rn,Qt]=reactExports.useState(!1);reactExports.useEffect(()=>()=>{dispose3(Dt)},[Dt]);const en=reactExports.useCallback(()=>{if(!Wt.current)return;const hn=nn.current<1e-4,{meshArr:dn,restored:pn}=findMeshAndCloneMatFromScene(kt,Wt.current,Wt.current.inStock,hn);if(Zt.current=dn,Zt.current.length==0)return;if(Wt.current.inStock===!1){Ht==!0&&(Ht=!1,kt.coreSceneStore.getState().CORE_API.alert({alertMsg:"Some item(s) in configuration are out of stock",alertTime:7e3,alertType:"warn",alertLabel:"Stock Alert",persistant:!0,alertId:"outOfStock"}));return}if(pn)return;const{current:fn}=nn;for(let mn=0;mn<Zt.current.length;mn++){const vn=Zt.current[mn].material;vn.emissiveIntensity=fn}},[nn,Wt]),tn=reactExports.useCallback(()=>{Jt.current=0},[Zt]),sn=reactExports.useCallback(()=>{Jt.current=.005},[Zt,Dt]);useFrame(()=>{if(!rn||kt.coreSceneStore.getState().builderMode)return;const hn=kt.cameraStore.getState().userDragging,dn=0;nn.current=MathUtils.lerp(nn.current,hn?dn:Jt.current,.1),en()}),reactExports.useEffect(()=>{const hn=kt.attachmentStore.getState().attachmentSystem.currentStructure,dn=hn.getNodeByGUID(_e.itemData.guid);if(dn?.isDependent&&!dn.isInteractive&&Object.keys(Kt).length>0){const pn=hn.getNodeByGUID(Object.keys(Kt)[0]);if(!pn||!pn.myDependenciesGUID)return;pn.myDependenciesGUID.includes(_e.itemData.guid)?tn():sn()}else Kt.hasOwnProperty(_e.itemData.guid)||Object.keys(Kt).length==0?tn():sn()},[Kt]);const cn=reactExports.useCallback(hn=>{hn.stopPropagation();const dn=Xt.selectedItemData;kt.coreSceneStore.setState({canvasTooltipText:"-"+_e.itemData.name+"-"}),dn||kt.itemStore.setState({hoveredItemRef:{}});let pn=kt.itemStore.getState().hoveredItemRef;const fn=kt.attachmentStore.getState().attachmentSystem.currentStructure;if(pn.hasOwnProperty(_e.itemData.guid)||(pn[_e.itemData.guid]={instance:Wt.current}),fn){const mn=fn.getNodeByGUID(_e.itemData.guid);mn&&mn.getNonInteractiveBranchedNodesIncludingSelf&&mn.getNonInteractiveBranchedNodesIncludingSelf().forEach(_n=>{const En=_n.guid;pn.hasOwnProperty(En)||(pn[En]={instance:null})})}Xt.actions.setHoveredItemRef({...pn})},[Xt,Kt,Yt]),un=reactExports.useCallback(hn=>{hn.stopPropagation();const dn=Xt.selectedItemData;if(kt.coreSceneStore.setState({canvasTooltipText:""}),dn){if(dn.itemData.guid==_e.itemData.guid)return;Kt[_e.itemData.guid]&&(delete Kt[_e.itemData.guid],Xt.actions.setHoveredItemRef({...Kt}))}else kt.itemStore.setState({hoveredItemRef:{}})},[Yt,Xt,Kt]);return reactExports.useEffect(()=>{kt.attachmentStore.getState().actions.updateFittingSkuIds();const dn=kt.attachmentStore.getState().attachmentSystem.currentStructure.getNodeByGUID(_e.itemData.guid);dn&&dn.checkGeometryVariant(),kt.coreSceneStore.getState().CORE_API.fireEvent(kt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Model_Loaded,_e.itemData.skuID),kt.coreSceneStore.getState().CORE_API.fireEvent(kt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Item_Added,{..._e,visualizedInScene:!0}),Qt(!0)},[]),reactExports.useEffect(()=>{rn&&(kt.coreSceneStore.getState().actions.refreshShadows(),kt.coreSceneStore.getState().actions.triggerAutoFocus())},[rn]),jsxRuntimeExports.jsx(Select,{enabled:qt===_e.itemData.guid,children:jsxRuntimeExports.jsx(Draggable,{stores:kt,guid:_e.itemData.guid,onDragStartHandler:Gt,onDragEndHandler:zt,onItemClickHandler:jt,onPointerEnter:cn,onPointerLeave:un,isInteractive:_e.itemData.isInteractive,children:jsxRuntimeExports.jsx(Clone,{name:"GRP_RenderGeometry",ref:Wt,object:Dt,scale:Vt,inStock:!0})})})}),ModelAnimation=({stores:kt,modelAnimations:_e,mainModel:Dt,itemKey:Vt,scale:Gt,onDragStartHandler:zt,onDragEndHandler:jt,onItemClickHandler:Ht})=>{const{ref:Wt,actions:qt,names:Xt}=useAnimations(_e),Kt=kt.hotspotStore(nn=>nn),Yt=reactExports.useRef(null),Zt=reactExports.useCallback((nn,rn,Qt,en)=>playAnimation(nn,rn,Qt,en,Xt,qt),[Xt,qt]),Jt=reactExports.useCallback(nn=>stopAnimation(nn,Xt,qt),[Xt,qt]);return reactExports.useEffect(()=>{if(Yt.current===Vt.itemData.guid){if(Yt.current=null,!Kt.lastActiveHotspotData)return;let nn=Kt.lastActiveHotspotData.hotspotData;if(!nn)return;if(nn.exitAnim?Zt(nn.exitAnim,!1,!1,!1):nn.entryAnim&&Zt(nn.entryAnim,!1,!0,!1),nn.activeAnim&&Jt(nn.activeAnim),Kt.activeHotspotData){if(Vt.itemData.guid===Kt.activeHotspotData.itemData.guid){Yt.current=Vt.itemData.guid;let rn=Kt.activeHotspotData.hotspotData;if(!rn)return;rn.entryAnim&&Zt(rn.entryAnim,!1,!1,!0),rn.activeAnim&&Zt(rn.activeAnim,!0,!1,!1)}}else return}else if(Kt.activeHotspotData){if(Vt.itemData.guid===Kt.activeHotspotData.itemData.guid){Yt.current=Vt.itemData.guid;let nn=Kt.activeHotspotData.hotspotData;if(!nn)return;nn.entryAnim&&Zt(nn.entryAnim,!1,!1,!0),nn.activeAnim&&Zt(nn.activeAnim,!0,!1,!1)}}else return},[Kt.activeHotspotData]),jsxRuntimeExports.jsx(Model,{stores:kt,ref:Wt,mainModel:Dt,itemKey:Vt,scale:Gt,onDragStartHandler:zt,onDragEndHandler:jt,onItemClickHandler:Ht})};function playAnimation(kt,_e,Dt,Vt,Gt,zt){if(!Gt.includes(kt))return;const jt=zt[kt];jt.setLoop(_e?LoopRepeat:LoopOnce),jt.clampWhenFinished=!_e,Vt&&jt.reset(),Dt?jt.fadeOut(.5).play():jt.fadeIn(.5).play()}function stopAnimation(kt,_e,Dt){if(!_e.includes(kt))return;Dt[kt].stop()}const RenderGeo=({stores:kt,url:_e,itemKey:Dt,scale:Vt,onDragStartHandler:Gt,onDragEndHandler:zt,onItemClickHandler:jt})=>{const[Ht,Wt]=reactExports.useState(!1),qt=useLoader(GLTFLoader,_e,Xt=>{Xt.setDRACOLoader(kt.assetStore.getState().dracoLoader),Xt.register(Kt=>new GLTFMaterialsVariantsExtension(Kt))});return reactExports.useEffect(()=>((async()=>{if(qt.functions){const Kt=kt.attachmentStore.getState().attachmentSystem.currentStructure.getNodeByGUID(Dt.itemData.guid);if(Kt){Kt.modelFunctions=qt.functions;const Yt=findVariantForGUID(kt,Dt.itemData.guid);Yt&&(Kt.currentVariant=Yt,await qt.functions.selectVariant(qt.scene,Yt),kt.itemStore.setState({variantChangeAlert:!kt.itemStore.getState().variantChangeAlert}))}}LOGGER.info({title:"model loaded: "+Dt.itemData.skuID}),Dt.itemData.hasItemLoaded=!0,kt.itemStore.getState().actions.triggerModelLoaded(),await kt.attachmentStore.getState().actions.updateFittingSkuIds(),Wt(!0)})(),()=>{kt.coreSceneStore.getState().CORE_API.fireEvent(kt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Model_Removed,Dt.itemData.skuID)}),[qt]),jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:Ht&&qt&&(qt.animations?jsxRuntimeExports.jsx(ModelAnimation,{stores:kt,modelAnimations:qt.animations,mainModel:qt.scene,itemKey:Dt,scale:Vt,onDragStartHandler:Gt,onDragEndHandler:zt,onItemClickHandler:jt}):jsxRuntimeExports.jsx(Model,{stores:kt,mainModel:qt.scene,itemKey:Dt,scale:Vt,onDragStartHandler:Gt,onDragEndHandler:zt,onItemClickHandler:jt}))})},SceneItem=({stores:kt,position:_e,rotation:Dt,itemKey:Vt,scale:Gt,rejectFunc:zt,onItemClickHandler:jt,onDragEndHandler:Ht,onDragStartHandler:Wt,itemIndex:qt,proxyScene:Xt,proxyOnly:Kt})=>{const Yt=reactExports.useRef(null);return reactExports.useEffect(()=>{if(!Yt.current)return;const Zt=kt.coreSceneStore.getState().sceneRef;if(Zt&&Vt.itemData.hasOwnProperty("excludeFromSceneBounds")&&Vt.itemData.excludeFromSceneBounds){const rn=Zt.getObjectByName("#GRP_EXCLUDED");rn!==void 0&&rn.attach(Yt.current)}const nn=kt.attachmentStore.getState().attachmentSystem.currentStructure.getNodeByGUID(Vt.itemData.guid);nn&&nn.ref!==Yt.current&&(nn.ref=Yt.current,nn.transform={position:_e,rotation:Dt})},[Yt]),jsxRuntimeExports.jsxs("group",{ref:Yt,position:_e,quaternion:Dt,name:`GRP_${Vt.itemData.name}_`+qt.toString().padStart(2,"0"),children:[jsxRuntimeExports.jsx(ColliderGeo,{stores:kt,itemKey:Vt}),jsxRuntimeExports.jsx(ProxyGeo,{stores:kt,proxyScene:Xt,scale:Gt,proxyOnly:Kt,itemKey:Vt}),!Kt&&jsxRuntimeExports.jsx(reactExports.Suspense,{children:jsxRuntimeExports.jsx(RenderGeo,{stores:kt,scale:Gt,itemKey:Vt,url:resolveAssetUrl(kt.coreSceneStore.getState().CORE_API.isMobile&&Vt.itemData.gltfURL_mobile?Vt.itemData.gltfURL_mobile:Vt.itemData.gltfURL),onDragStartHandler:Wt,onDragEndHandler:Ht,onItemClickHandler:jt})})]})};function GhostEventHandler({index:kt,children:_e,...Dt}){const Vt=reactExports.useRef(),Gt=useGesture({onPointerEnter:zt=>{zt.event.stopPropagation(),Dt.stores.coreSceneStore.getState().itemDraggedSkuID&&Dt.stores.coreSceneStore.setState({hoveredGhostIndex:kt})},onPointerLeave:zt=>{zt.event.stopPropagation(),Dt.stores.coreSceneStore.getState().itemDraggedSkuID&&Dt.stores.coreSceneStore.getState().hoveredGhostIndex===kt&&Dt.stores.coreSceneStore.setState({hoveredGhostIndex:-1})}});return jsxRuntimeExports.jsx("group",{ref:Vt,...Gt(),...Dt,children:_e})}const Ghost=({stores:kt,ghostVisibility:_e,ghostData:Dt,ghostTransform:Vt,index:Gt})=>{const zt=reactExports.useRef(),jt=reactExports.useMemo(()=>{let Wt=null;const qt=Vt?.skuID,Xt=kt?.assetStore?.getState?kt.assetStore.getState():null;return qt&&Xt?.assets?.items?.[qt]?.proxy?.data?.scene?Wt=Xt.assets.items[qt].proxy.data.scene.clone():Dt&&Dt.proxyScene?Wt=Dt.proxyScene.clone():Wt=null,Wt},[Dt,Vt,kt]),Ht=kt.coreSceneStore(Wt=>Wt.hoveredGhostIndex);return reactExports.useEffect(()=>()=>{dispose3(jt)},[jt]),reactExports.useEffect(()=>{const{current:Wt}=zt;Wt&&(Wt.userData.incomingPlugName=Vt.incomingPlugName,Wt.userData.receiverPlugName=Vt.receiverPlugName,Wt.userData.incomingPlugGUID=Vt.incomingPlugGUID,Wt.userData.receiverPlugGUID=Vt.receiverPlugGUID,kt.coreSceneStore.getState().CORE_API.fireEvent(kt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Ghost_Loaded,{ghostData:Dt,ghostTransform:Vt}))},[zt]),jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:jsxRuntimeExports.jsx(GhostEventHandler,{stores:kt,index:Gt,children:jsxRuntimeExports.jsx(Select,{enabled:Ht===Gt,children:jsxRuntimeExports.jsx("primitive",{isGhost:!0,ref:zt,index:Gt,autoFocusEnabled:_e,position:Vt.position,scale:kt.coreSceneStore.getState().sceneSettings.ghostScale,quaternion:Vt.rotation,object:jt,castShadow:!1,receiveShadow:!1,frustumCulled:!1},`ghost${Gt}`)})})})},GhostManager=({stores:kt,intersectingGhostObject:_e=null})=>{const{camera:Dt}=useThree(),Vt=kt.ghostStore(Xt=>Xt.ghostVisibility),Gt=kt.ghostStore(Xt=>Xt.ghostData),zt=kt.ghostStore(Xt=>Xt.ghostsTransform),jt=reactExports.useRef(),{_touch2D:Ht,raycasterGhost:Wt}=reactExports.useMemo(()=>({_touch2D:new Vector2,raycasterGhost:new Raycaster}),[]);reactExports.useEffect(()=>{const{current:Xt}=jt;Xt&&kt.ghostStore.setState({ghostParentRef:Xt})},[jt]);const qt=Xt=>{let Kt=0,Yt=0;if(Xt.touches&&Xt.touches[0])Kt=Xt.touches[0].clientX,Yt=Xt.touches[0].clientY;else return;if(!kt.coreSceneStore.getState().itemDraggedSkuID)return;const Zt=kt.coreSceneStore.getState().cursorParentRef,Jt=kt.coreSceneStore.getState().canvasSize;if(!Zt)return;const nn=Zt.getBoundingClientRect(),rn=nn.top,Qt=nn.left,en=(Kt-Qt)/Jt.width*2-1,tn=(-Yt+rn)/Jt.height*2+1;Ht.set(en,tn),Wt.layers.enable(GHOST_LAYER),Wt.setFromCamera(Ht,Dt);const sn=Wt.intersectObject(kt.ghostStore.getState().ghostParentRef);sn.length>0?(_e=sn[0].object,kt.coreSceneStore.setState({hoveredGhostIndex:_e.parent.index})):(_e=null,kt.coreSceneStore.setState({hoveredGhostIndex:-1}))};return reactExports.useEffect(()=>(kt.wcRef.addEventListener("touchmove",qt,!1),LOGGER.info({title:"Ghost Manager Mounted!"}),()=>{const Kt=kt.wcRef;Kt&&Kt.removeEventListener("touchmove",qt,!1)}),[]),jsxRuntimeExports.jsx("group",{name:"#GRP_GhostParent",visible:Vt,scale:Vt?[1,1,1]:[0,0,0],ref:jt,children:Gt&&jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:zt.map((Xt,Kt)=>Kt<Gt.count&&jsxRuntimeExports.jsx(Ghost,{stores:kt,ghostVisibility:Vt,ghostData:Gt,ghostTransform:Xt,index:Kt},"ghosts"+Kt))})})},ItemManager=({stores:kt})=>{const _e=kt.attachmentStore(fn=>fn),Dt=kt.itemStore(fn=>fn.removeItemTrigger),Vt=kt.itemStore(fn=>fn.variantChangeAlert),Gt=kt.hotspotStore(fn=>fn),zt=kt.coreSceneStore(fn=>fn.showDimensions),jt=kt.itemStore(fn=>fn),Ht=kt.itemStore(fn=>fn.lastDeletedItemData),Wt=kt.cameraStore(fn=>fn),qt=kt.itemStore(fn=>fn.selectedItemData),Xt=kt.itemStore(fn=>fn.itemsSpawned),Kt=kt.itemStore(fn=>fn.fittingSkuIds),Yt=kt.coreSceneStore(fn=>fn.coreReady),Zt=reactExports.useRef(null),Jt=reactExports.useRef(null),nn=reactExports.useRef(!1),rn=reactExports.useRef(null),Qt=reactExports.useRef(null),en=reactExports.useRef(!1),tn=reactExports.useRef(!1);reactExports.useRef(!1),reactExports.useRef(!1);const sn=reactExports.useCallback(async({guid:fn,node:mn,detachedData:vn,attachedChildrenGuids:_n})=>{if(nn.current===!0)return;const En=kt.attachmentStore.getState().attachmentSystem.currentStructure;return nn.current=!0,kt.cameraStore.getState().actions.canCameraRotate(!1),Gt.actions.switchHotspotsVisibility(!1,!0),rn.current={position:mn.ref.position.clone(),rotation:mn.ref.rotation.clone()},Qt.current=vn,await En.removeNodeFromStructure(mn),_n.length<=0&&(_n=!1),kt.ghostStore.getState().actions.spawnGhostsForSkuID(Xt[fn].itemData.skuID,_n)},[Wt,Xt]),cn=reactExports.useCallback(async({node:fn,intersectingGhostObject:mn,attachedChildrenGuids:vn,attachedNodesToCurrentNode:_n})=>{if(!nn.current)return;const En=kt.attachmentStore.getState().attachmentSystem.currentStructure;nn.current=!1,kt.cameraStore.getState().actions.canCameraRotate(!0),Gt.actions.switchHotspotsVisibility(!0,!0);function An(){fn.ref.position.set(0,0,0),kt.ghostStore.getState().actions.clearAllGhosts()}if(!kt.ghostStore.getState().ghostData?.connectablePlugs){An();return}En.addNode(fn);let Cn=null,yn=null,Sn=!1,wn=[],xn={};if(kt.coreSceneStore.getState().sceneSettings.ignoreCollisionPostDragging===!1&&vn.map((Rn,Dn)=>{wn[Dn]=En.checkCollisionForGUID(Rn,vn),wn[Dn]&&(xn[Rn]=Xt[Rn],En.getNodeByGUID(Rn).getAllBranchedNodesAttachedToUs().map(Pn=>{xn[Pn.guid]=Xt[Pn.guid]}))}),wn.map(Rn=>{Sn||(Sn=Rn)}),mn&&Sn){kt.coreSceneStore.setState({draggingOnDropCollisionData:{node:fn,attachedChildrenGuids:vn,collidingStatus:wn,intersectingGhostObject:mn,initPosition:rn.current.position,initRotation:rn.current.rotation,detachedPlugs:Qt.current,attachedNodesToCurrentNode:_n}}),fn.ref.position.set(mn.position.x,mn.position.y,mn.position.z),fn.ref.setRotationFromEuler(mn.rotation),kt.coreSceneStore.getState().CORE_API.fireEvent(kt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.DraggingOnDrop_CollsionDetected,xn);return}if(mn){const Rn=mn.userData;Cn=fn.getPlugByName(Rn.incomingPlugName),yn=En.getPlugByGUID(Rn.receiverPlugGUID),fn.ref.position.set(mn.position.x,mn.position.y,mn.position.z),fn.ref.setRotationFromEuler(mn.rotation),fn.transform={position:mn.position,rotation:mn.quaternion}}else{const Rn=Qt.current.neighborDetachedPlugs;Rn&&(Qt.current.neighborNode.detachNodeFromReceiver(),En.connectPlugs({incomingPlug:Rn.incomingPlug,receiverPlug:Rn.receiverPlug})),Cn=Qt.current.rootDetachedPlugs.incomingPlug,yn=Qt.current.rootDetachedPlugs.receiverPlug,fn.ref.position.set(rn.current.position.x,rn.current.position.y,rn.current.position.z),fn.ref.setRotationFromEuler(rn.current.rotation);let Dn=new Quaternion().identity();fn.ref.getWorldQuaternion(Dn),fn.transform={position:rn.current.position,rotation:Dn}}En.connectPlugs({incomingPlug:Cn,receiverPlug:yn}),kt.ghostStore.getState().actions.clearAllGhosts(),kt.itemStore.getState().actions.deselectItem(),_n.map(Rn=>{fn.ref.parent.attach(Rn.ref),Rn.transform={position:Rn.ref.position,rotation:Rn.ref.quaternion},fn.dragging=!1,Rn.dragging=!1}),await kt.attachmentStore.getState().actions.updateFittingSkuIds()},[Wt,kt.coreSceneStore,kt.ghostStore,_e,Xt]),un=reactExports.useCallback((fn,mn,vn)=>{if(kt.coreSceneStore.getState().sceneSettings.disableContextMenu)return;const _n=kt.attachmentStore.getState().attachmentSystem.currentStructure,En=_n.getNodeByGUID(vn);let An=[];if(!En?.myDependenciesGUID)return;En.myDependenciesGUID.map(yn=>{const Sn=_n.getNodeByGUID(yn);if(!Sn)return;let wn={guid:yn,name:Xt[yn].itemData.guid,data:{...Xt[yn],overrideVariant:Sn.overrideVariant,currentVariant:Sn.currentVariant,offsetX:fn,offsetY:mn}};An.push(wn)}),An.sort((yn,Sn)=>yn.name>Sn.name?1:Sn.name>yn.name?-1:0);let Tn=kt.inventoryStore.getState().inventoryData[Xt[vn].itemData.skuID];const Cn={primary:{guid:vn,name:Xt[vn].itemData.name,data:{inventory:Tn,...Xt[vn],overrideVariant:En.overrideVariant,currentVariant:En.currentVariant,offsetX:fn,offsetY:mn}},dependencies:An};jt.actions.setSelectedItemData(Cn.primary.data),kt.coreSceneStore.getState().CORE_API.fireEvent(kt.coreSceneStore.getState().CORE_API.EVENTS.UI.ContextMenu_Show,Cn)},[Xt]),hn=reactExports.useCallback(fn=>{if(!fn)return;kt.itemStore.setState({lastDeletedItemData:{...Xt[fn]}});const mn={...Xt[fn]};delete Xt[fn],jt.actions.setItemsSpawned({...Xt}),kt.coreSceneStore.getState().CORE_API.fireEvent(kt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Item_Removed,mn)},[jt,kt.itemStore,Xt]);reactExports.useEffect(()=>{let fn=kt.itemStore.getState().removeItems;if(fn.length<=0&&!Ht)return;let mn=fn.pop();hn(mn)},[Dt,Ht]);const dn=reactExports.useCallback(function(fn){const mn=kt.coreSceneStore.getState().sceneSettings,vn=fn>1?!0:fn===1?Object.values(Xt)[0].itemData.skuID.toLowerCase()!=="root":!1,_n=!vn;LOGGER.groupCollapsed("Resolving buttons visibility"),LOGGER.table({sceneIsEmpty:_n,sceneIsNotEmpty:vn}),LOGGER.groupEnd(),mn.showViewInYourSpaceBtn===!0&&(vn&&en.current===!1?(kt.coreSceneStore.getState().CORE_API.fireEvent(kt.coreSceneStore.getState().CORE_API.EVENTS.UI.ViewInYourSpaceButton_Show),en.current=!0):_n&&en.current===!0&&(kt.coreSceneStore.getState().CORE_API.fireEvent(kt.coreSceneStore.getState().CORE_API.EVENTS.UI.ViewInYourSpaceButton_Hide),en.current=!1)),mn.showShareBtn===!0&&(vn&&tn.current===!1?(kt.coreSceneStore.getState().CORE_API.fireEvent(kt.coreSceneStore.getState().CORE_API.EVENTS.UI.ShareButton_Show),tn.current=!0):_n&&tn.current===!0&&(kt.coreSceneStore.getState().CORE_API.fireEvent(kt.coreSceneStore.getState().CORE_API.EVENTS.UI.ShareButton_Hide),tn.current=!1))},[Xt]);reactExports.useEffect(()=>{kt.coreSceneStore.getState().preconfigurationLoaded&&kt.coreSceneStore.getState().configurationLoaded&&kt.coreSceneStore.getState().CORE_API.fireEvent(kt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Items_Updated,{itemsSpawned:Xt});const fn=kt.coreSceneStore.getState().sceneSettings,mn=kt.itemStore.getState().defaultSceneItemCount;Object.keys(Xt).length===mn?kt.coreSceneStore.setState({canvasTooltipText:fn.textSettings.tooltipEmptySceneText}):Object.keys(Xt).length===mn+1&&kt.coreSceneStore.setState({canvasTooltipText:fn.textSettings.tooltipInstructionText})},[Xt]),reactExports.useEffect(()=>{Yt===!0&&dn(Object.keys(Xt).length)},[Xt,Yt]),reactExports.useEffect(()=>{if(kt.inventoryStore.getState().actions.refreshInventory(Xt),!kt.coreSceneStore.getState().preconfigurationLoaded||!kt.coreSceneStore.getState().configurationLoaded)return;async function fn(){const mn=kt.attachmentStore.getState().attachmentSystem;if(!mn)return;const vn=await mn.getCartItemsAsync();kt.coreSceneStore.getState().CORE_API.fireEvent(kt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.CartItems_Updated,vn),kt.coreSceneStore.getState().CORE_API.fireEvent(kt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.ReplaceableCategory_Updated,mn.currentStructure.getCurrentItemsInReplaceableCategory())}fn()},[Xt,Vt]);const pn=reactExports.useCallback((fn,mn,vn)=>{kt.coreSceneStore.getState().CORE_API.removeItemByGUID(vn),kt.coreSceneStore.getState().CORE_API.alert({alertMsg:mn+": "+fn,alertTime:5e3,alertType:"error",alertLabel:"Error",persistant:!0})},[]);return reactExports.useEffect(()=>{const{current:fn}=Jt;fn&&kt.attachmentStore.setState({colliderMeshRef:fn})},[Jt]),reactExports.useEffect(()=>{const{current:fn}=Zt;fn&&kt.coreSceneStore.setState({sceneRef:fn})},[Zt]),reactExports.useEffect(()=>{let fn=qt?kt.cameraStore.getState().cameraSettings.zoomingMultiplier:kt.cameraStore.getState().cameraSettings.zoomingMultiplier+.1;fn+=zt?.3:.1,kt.cameraStore.setState({boundsMargin:fn}),kt.coreSceneStore.getState().actions.triggerAutoFocus()},[zt,qt]),reactExports.useEffect(()=>{kt.coreSceneStore.getState().CORE_API.fireEvent(kt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.FittingSkuIds_Updated,{skuids:Kt})},[Kt]),reactExports.useEffect(()=>{const fn=kt.itemStore.getState().itemsSpawned;if(LOGGER.info({title:"item Manager mounted"}),!kt.coreSceneStore.getState().preconfigurationLoaded)kt.attachmentStore.getState().actions.loadDefaultStructure();else if(Object.keys(fn).length===1){const mn=Object.keys(fn)[0];kt.itemStore.getState().actions.resolvePlugDependencyOnGUID(mn)}},[]),jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsxs("group",{name:"Scene",ref:Zt,onPointerMissed:()=>{qt&&jt.actions.deselectItem(),kt.hotspotStore.getState().isAnyHotspotActive&&kt.hotspotStore.getState().actions.exitHotspot()},children:[jsxRuntimeExports.jsx("group",{name:"#GRP_EXCLUDED"}),jsxRuntimeExports.jsxs("group",{name:"#ITEMS_AND_GHOSTS",children:[jsxRuntimeExports.jsx("group",{name:"#ITEMS",children:Object.keys(Xt).map((fn,mn)=>jsxRuntimeExports.jsx(SceneItem,{stores:kt,scale:[1,1,1],onDragStartHandler:sn,onDragEndHandler:cn,onItemClickHandler:un,itemKey:Xt[fn],position:Xt[fn].itemData.position,rotation:Xt[fn].itemData.rotation,itemIndex:mn,proxyScene:Xt[fn].itemData.proxyScene,rejectFunc:pn,proxyOnly:Xt[fn].itemData.gltfURL==""},fn))}),jsxRuntimeExports.jsx(GhostManager,{stores:kt})]})]}),jsxRuntimeExports.jsx("group",{name:"#Parent_ColliderMesh",children:jsxRuntimeExports.jsx("mesh",{ref:Jt,visible:!1,enabled:!0,name:"#COLLIDER_MESH",children:jsxRuntimeExports.jsx("meshPhongMaterial",{depthTest:!1,transparent:!0,opacity:.8})})})]})},ContactShadows=reactExports.forwardRef(({scale:kt=10,frames:_e=1/0,excludeLayer:Dt=-1,bbmin:Vt=1,bbmax:Gt=1,opacity:zt=1,width:jt=1,height:Ht=1,blur:Wt=1,near:qt=0,far:Xt=10,resolution:Kt=512,smooth:Yt=!0,color:Zt="#000000",depthWrite:Jt=!1,renderOrder:nn,...rn},Qt)=>{const en=reactExports.useRef(null),tn=useThree(Cn=>Cn.scene),sn=useThree(Cn=>Cn.gl),cn=reactExports.useRef(null);jt=jt*(Array.isArray(kt)?kt[0]:kt||1),Ht=Ht*(Array.isArray(kt)?kt[1]:kt||1);const[un,hn,dn,pn,fn,mn,vn]=reactExports.useMemo(()=>{const Cn=new WebGLRenderTarget(Kt,Kt),yn=new WebGLRenderTarget(Kt,Kt);yn.texture.generateMipmaps=Cn.texture.generateMipmaps=!1;const Sn=new PlaneGeometry(jt,Ht).rotateX(Math.PI/2),wn=new Mesh(Sn),xn=new MeshDepthMaterial;xn.depthTest=xn.depthWrite=!1,xn.onBeforeCompile=kn=>{kn.uniforms={...kn.uniforms,ucolor:{value:new Color$1(Zt)}},kn.fragmentShader=kn.fragmentShader.replace("void main() {",`uniform vec3 ucolor;
|
|
4462
4462
|
void main() {
|
|
4463
|
-
`),kn.fragmentShader=kn.fragmentShader.replace("vec4( vec3( 1.0 - fragCoordZ ), opacity );","vec4( ucolor * fragCoordZ * 2.0, ( 1.0 - fragCoordZ ) * 1.0 );")};const Rn=new ShaderMaterial(HorizontalBlurShader),Dn=new ShaderMaterial(VerticalBlurShader);return Dn.depthTest=Rn.depthTest=!1,[Cn,Sn,xn,wn,Rn,Dn,yn]},[Kt,jt,Ht,kt,Zt]),_n=Cn=>{pn.visible=!0,pn.material=fn,fn.uniforms.tDiffuse.value=un.texture,fn.uniforms.h.value=Cn*1/256,sn.setRenderTarget(vn),sn.render(pn,cn.current),pn.material=mn,mn.uniforms.tDiffuse.value=vn.texture,mn.uniforms.v.value=Cn*1/256,sn.setRenderTarget(un),sn.render(pn,cn.current),pn.visible=!1};let En=0,An,Tn;return useFrame(()=>{cn.current&&(_e===1/0||En<_e)&&(En++,An=tn.background,Tn=tn.overrideMaterial,en.current.visible=!1,tn.background=null,tn.overrideMaterial=dn,sn.setRenderTarget(un),sn.render(tn,cn.current),_n(Wt),Yt&&_n(Wt*.4),sn.setRenderTarget(null),en.current.visible=!0,tn.overrideMaterial=Tn,tn.background=An)}),reactExports.useEffect(()=>()=>{cn.current&&cn.current.layers.disable(Dt)},[cn]),reactExports.useEffect(()=>()=>{un.dispose(),vn.dispose(),hn.dispose(),dn.dispose(),pn.geometry.dispose(),fn.dispose(),mn.dispose()},[]),reactExports.useImperativeHandle(Qt,()=>en.current,[]),reactExports.createElement("group",_extends$1({"rotation-x":Math.PI/2},rn,{ref:en}),reactExports.createElement("mesh",{renderOrder:nn,geometry:hn,layers:2,scale:[1,-1,1],rotation:[-Math.PI/2,0,0]},reactExports.createElement("meshBasicMaterial",{transparent:!0,map:un.texture,opacity:zt,depthWrite:Jt})),reactExports.createElement("orthographicCamera",{ref:cn,args:[-jt/2,jt/2,Ht/2,-Ht/2,qt,Xt]}))}),EffectsComposer=({stores:kt})=>{const[_e,Dt]=reactExports.useState(10),Vt=kt.coreSceneStore(Wt=>Wt.bbox),Gt=kt.itemStore(Wt=>Wt.itemsSpawned),zt=kt.ghostStore(Wt=>Wt.ghostsTransform),jt=kt.coreSceneStore(Wt=>Wt.sceneSettings),Ht=kt.coreSceneStore(Wt=>Wt.shadowRefreshKey);return reactExports.useEffect(()=>{zt.length===0&&kt.coreSceneStore.getState().actions.refreshShadows()},[Gt,zt]),reactExports.useEffect(()=>{if(!Vt||!Vt.isBox3){Dt(10);return}const Wt=new Vector3(0,0,0);let qt=Wt.distanceTo(Vt.min)*2,Xt=Wt.distanceTo(Vt.max)*2,Kt=Xt>qt?Xt:qt;Kt!=1/0&&Kt!=-1/0&&(Kt+=5,Dt(Kt||10))},[Vt]),jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsxs(EffectComposer,{multisampling:4,autoClear:!1,disableNormalPass:!0,children:[jsxRuntimeExports.jsx(ToneMapping,{mode:ToneMappingMode.ACES_FILMIC,blendFunction:BlendFunction.NORMAL,adaptive:!1,resolution:256,maxLuminance:40,middleGrey:5}),jsxRuntimeExports.jsx(Outline,{...jt.outlineSettings})]}),jt.contactShadowVisibility&&jsxRuntimeExports.jsx(ContactShadows,{excludeLayer:GHOST_LAYER,position:[0,0,0],opacity:.3,scale:_e,blur:.35,far:2,resolution:256,frames:1},Ht)]})};function Hotspot({stores:kt,hotspotKey:_e}){const Dt=kt.coreSceneStore(tn=>tn.sceneSettings),Vt=kt.attachmentStore(tn=>tn.attachmentSystem),Gt=kt.hotspotStore(tn=>tn),zt=kt.hotspotStore(tn=>tn.activeHotspotData),jt=kt.itemStore(tn=>tn.lastDeletedItemData),Ht=kt.ghostStore(tn=>tn.ghostData),Wt=kt.hotspotStore(tn=>tn.actions),qt=kt.hotspotStore(tn=>tn.hotspotsVisibility),Xt=kt.hotspotStore(tn=>tn.hotspotsTempVisibility),[Kt,Yt]=reactExports.useState(null),[Zt,Jt]=reactExports.useState(!1),nn=reactExports.useRef(null),rn=reactExports.useRef(null),Qt=reactExports.useRef(null),en=reactExports.useCallback(tn=>{tn.includes(_e.itemData.skuID+"_"+_e.hotspotData.hotspotID)&&Jt(!0)},[_e]);return reactExports.useEffect(()=>en(Gt.visitedHotspotsID),[Gt,en]),reactExports.useEffect(()=>{Yt(zt?zt.hotspotData.guid:null)},[zt]),reactExports.useEffect(()=>{rn.current&&(Kt===_e.hotspotData.guid?rn.current.parentNode.classList.add("topmostActive"):rn.current.parentNode.classList.remove("topmostActive"))},[Kt]),reactExports.useEffect(()=>{nn.current&&Kt===_e.hotspotData.guid&&(nn.current.style.opacity=1)},[Kt,nn]),reactExports.useEffect(()=>{if(!Qt.current&&!jt)return;let tn=Vt.currentStructure.getNodeByGUID(_e.itemData.guid);tn?.ref&&(Qt.current.parent=tn.ref)},[Qt,Vt,qt,jt]),jsxRuntimeExports.jsx("group",{ref:Qt,position:_e.hotspotData.hotspotPointTransform,children:jsxRuntimeExports.jsx(Html,{ref:rn,zIndexRange:[6,0],style:qt&&Xt&&!Ht&&Dt.showHotspotsBtn?{opacity:"1",pointerEvents:"all",transition:"0.5s"}:{opacity:"0",pointerEvents:"none",transition:"0.5s"},children:jsxRuntimeExports.jsxs("button",{style:{display:_e.hotspotData.visibleInScene==!1?"none":"block"},ref:nn,className:Kt===_e.hotspotData.guid?"hotspot hotspot-0 active":Zt?"hotspot hotspot-0 visited":"hotspot hotspot-0",onPointerEnter:tn=>{tn.stopPropagation(),nn.current&&Kt!==_e.hotspotData.guid&&(nn.current.getClientRects()[0].left>kt.coreSceneStore.getState().canvasSize.width/1.6?nn.current.classList.add("left"):nn.current.classList.remove("left")),rn.current&&rn.current.parentNode.classList.add("topmostHover")},onPointerLeave:tn=>{tn.stopPropagation(),rn.current&&rn.current.parentNode.classList.remove("topmostHover")},id:"hotspot3D_"+_e.itemData.skuID+"_"+_e.hotspotData.hotspotID,role:"button",tabIndex:0,"aria-label":_e.hotspotData.title,onClick:tn=>{if(tn.stopPropagation(),Gt.isAnyHotspotActive&&Gt.activeHotspotData.hotspotData.guid===_e.hotspotData.guid){Wt.exitHotspot();return}Wt.clickHotspot(_e.hotspotData.hotspotID,_e.hotspotData.guid,_e.itemData.guid)},children:[jsxRuntimeExports.jsx("span",{className:"inner-circle"}),jsxRuntimeExports.jsx("span",{className:"hotspot-annotation",children:_e.hotspotData.title})]})})})}const HotspotManager=({stores:kt})=>{const{camera:_e}=useThree(),Dt=reactExports.useRef(null),Vt=reactExports.useRef(0),[Gt,zt]=reactExports.useState(null),jt=kt.hotspotStore(Qt=>Qt),Ht=kt.hotspotStore(Qt=>Qt.hotspotsHealthCheck),Wt=kt.itemStore(Qt=>Qt.lastDeletedItemData),qt=kt.hotspotStore(Qt=>Qt.hotspotsSpawned),Xt=kt.itemStore(Qt=>Qt.itemsSpawned),Kt=kt.hotspotStore(Qt=>Qt.activeHotspotData),{raycasterHotspot:Yt,worldPos:Zt}=reactExports.useMemo(()=>({raycasterHotspot:new Raycaster,worldPos:new Vector3}),[]),Jt=reactExports.useCallback(()=>{const Qt=kt.hotspotStore.getState().hotspotSpawnedForCategoryIDs,en=kt.attachmentStore.getState().attachmentSystem.globalGeometryVariants;Object.entries(Xt).forEach(([tn,sn])=>{if(!sn.hotspotsData)return;let cn=!1;Object.entries(qt).forEach(([un,hn])=>{const dn=hn.hotspotData.geometryVariantID;if(dn&&!Object.values(en).includes(dn)){cn=!0;const pn=hn.hotspotData.categoryID;Qt.splice(Qt.indexOf(pn),1),delete qt[un]}}),cn&&kt.hotspotStore.setState({hotspotSpawned:{...qt},hotspotSpawnedForCategoryIDs:Qt}),sn.hotspotsData.forEach(un=>{un.geometryVariantID&&!Object.values(en).includes(un.geometryVariantID)||un.categoryID!==""&&Qt.includes(un.categoryID)||(sn.hotspotSpawned=!0,Qt.push(un.categoryID),nn(tn,un))})})},[Xt,qt]),nn=reactExports.useCallback((Qt,en)=>{const tn=`${Xt[Qt].itemData.skuID}_${en.hotspotID}`;qt[tn]={itemData:{guid:Qt,...Xt[Qt].itemData},hotspotData:{guid:tn,...en}},kt.hotspotStore.setState({hotspotsSpawned:{...qt}})},[Xt,jt,qt]);reactExports.useEffect(()=>{if(!Wt?.itemData)return;if(Wt.hotspotSpawned){kt.hotspotStore.getState().actions.removeHotspotForItem({...Wt});const en=kt.hotspotStore.getState().hotspotSpawnedForCategoryIDs,tn=Wt.hotspotsData.map(sn=>sn.categoryID);filterArrWithCondition(en,sn=>!tn.includes(sn)),kt.hotspotStore.setState({hotspotSpawnedForCategoryIDs:en})}kt.itemStore.setState({lastDeletedItemData:null});const Qt=kt.attachmentStore.getState().attachmentSystem;Qt.currentStructure.removeNodeByGUID(Wt.itemData.guid),kt.coreSceneStore.getState().CORE_API.fireEvent(kt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.MaterialOverrides_Exists,Qt.currentStructure.materialOverrideExists())},[Wt]);const rn=(Qt,en)=>{const tn=Qt.clone().sub(_e.position),sn=tn.length();Yt.set(_e.position,tn.normalize());const cn=Yt.intersectObject(kt.coreSceneStore.getState().sceneRef);en.style.opacity=cn.length>0&&cn[0].distance<sn||Gt?.5:1};return reactExports.useEffect(()=>{zt(Kt?.hotspotData.guid||null)},[Kt]),useFrame(()=>{if(!Dt.current||Dt.current.children.length===0)return;Vt.current=(Vt.current+1)%Dt.current.children.length;const Qt=Object.keys(qt)[Vt.current];if(!qt[Qt])return;const en=`hotspot3D_${qt[Qt].itemData.skuID}_${qt[Qt].hotspotData.hotspotID}`,tn=kt.coreSceneStore.getState().CORE_API.coreWCRef.shadowRootRef.getElementById(en);Gt===Qt||!tn||(Dt.current.children[Vt.current].getWorldPosition(Zt),rn(Zt,tn))}),reactExports.useEffect(()=>{Jt()},[Object.keys(Xt).length,Ht]),reactExports.useEffect(()=>()=>{kt.hotspotStore.setState({hotspotsSpawned:{}}),kt.hotspotStore.setState({hotspotSpawnedForCategoryIDs:[]})},[]),jt.hotspotsVisibility&&jsxRuntimeExports.jsx("group",{name:"#GRP_HotspotManager",ref:Dt,children:Object.entries(qt).map(([Qt,en])=>jsxRuntimeExports.jsx(Hotspot,{stores:kt,hotspotKey:en},Qt))})};var objectTypes$3={boolean:!1,function:!0,object:!0,number:!1,string:!1,undefined:!1},lodash__objecttypes=objectTypes$3,objectTypes$2=lodash__objecttypes;function isObject$4(kt){return!!(kt&&objectTypes$2[typeof kt])}var lodash_isobject=isObject$4,objectProto$1=Object.prototype,toString=objectProto$1.toString,reNative$4=RegExp("^"+String(toString).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),lodash__renative=reNative$4,objectTypes$1=lodash__objecttypes,objectProto=Object.prototype,hasOwnProperty=objectProto.hasOwnProperty,shimKeys$1=function(kt){var _e,Dt=kt,Vt=[];if(!Dt||!objectTypes$1[typeof kt])return Vt;for(_e in Dt)hasOwnProperty.call(Dt,_e)&&Vt.push(_e);return Vt},lodash__shimkeys=shimKeys$1,isObject$3=lodash_isobject,reNative$3=lodash__renative,shimKeys=lodash__shimkeys,nativeKeys=reNative$3.test(nativeKeys=Object.keys)&&nativeKeys,keys$2=nativeKeys?function(kt){return isObject$3(kt)?nativeKeys(kt):[]}:shimKeys,lodash_keys=keys$2;function noop$1(){}var lodash_noop=noop$1,isObject$2=lodash_isobject,reNative$2=lodash__renative,nativeCreate=reNative$2.test(nativeCreate=Object.create)&&nativeCreate;function baseCreate$2(kt,_e){return isObject$2(kt)?nativeCreate(kt):{}}nativeCreate||(baseCreate$2=function(){function kt(){}return function(_e){if(isObject$2(_e)){kt.prototype=_e;var Dt=new kt;kt.prototype=null}return Dt||commonjsGlobal.Object()}}());var lodash__basecreate=baseCreate$2,noop=lodash_noop,reNative$1=lodash__renative,descriptor={configurable:!1,enumerable:!1,value:null,writable:!1},defineProperty=function(){try{var kt={},_e=reNative$1.test(_e=Object.defineProperty)&&_e,Dt=_e(kt,kt,kt)&&_e}catch{}return Dt}(),setBindData$3=defineProperty?function(kt,_e){descriptor.value=_e,defineProperty(kt,"__bindData__",descriptor)}:noop,lodash__setbinddata=setBindData$3,baseCreate$1=lodash__basecreate,isObject$1=lodash_isobject,setBindData$2=lodash__setbinddata,arrayRef$2=[],push$2=arrayRef$2.push;function baseBind$1(kt){var _e=kt[0],Dt=kt[2],Vt=kt[4];function Gt(){if(Dt){var zt=Dt.slice();push$2.apply(zt,arguments)}if(this instanceof Gt){var jt=baseCreate$1(_e.prototype),Ht=_e.apply(jt,zt||arguments);return isObject$1(Ht)?Ht:jt}return _e.apply(Vt,zt||arguments)}return setBindData$2(Gt,kt),Gt}var lodash__basebind=baseBind$1;function slice$2(kt,_e,Dt){_e||(_e=0),typeof Dt>"u"&&(Dt=kt?kt.length:0);for(var Vt=-1,Gt=Dt-_e||0,zt=Array(Gt<0?0:Gt);++Vt<Gt;)zt[Vt]=kt[_e+Vt];return zt}var lodash__slice=slice$2,baseCreate=lodash__basecreate,isObject=lodash_isobject,setBindData$1=lodash__setbinddata,slice$1=lodash__slice,arrayRef$1=[],push$1=arrayRef$1.push;function baseCreateWrapper$1(kt){var _e=kt[0],Dt=kt[1],Vt=kt[2],Gt=kt[3],zt=kt[4],jt=kt[5],Ht=Dt&1,Wt=Dt&2,qt=Dt&4,Xt=Dt&8,Kt=_e;function Yt(){var Zt=Ht?zt:this;if(Vt){var Jt=Vt.slice();push$1.apply(Jt,arguments)}if((Gt||qt)&&(Jt||(Jt=slice$1(arguments)),Gt&&push$1.apply(Jt,Gt),qt&&Jt.length<jt))return Dt|=16,baseCreateWrapper$1([_e,Xt?Dt:Dt&-4,Jt,null,zt,jt]);if(Jt||(Jt=arguments),Wt&&(_e=Zt[Kt]),this instanceof Yt){Zt=baseCreate(_e.prototype);var nn=_e.apply(Zt,Jt);return isObject(nn)?nn:Zt}return _e.apply(Zt,Jt)}return setBindData$1(Yt,kt),Yt}var lodash__basecreatewrapper=baseCreateWrapper$1;function isFunction$1(kt){return typeof kt=="function"}var lodash_isfunction=isFunction$1,baseBind=lodash__basebind,baseCreateWrapper=lodash__basecreatewrapper,isFunction=lodash_isfunction,arrayRef=[],push=arrayRef.push;function createWrapper$1(kt,_e,Dt,Vt,Gt,zt){var jt=_e&1,Ht=_e&2,Wt=_e&4,qt=_e&16,Xt=_e&32;if(!Ht&&!isFunction(kt))throw new TypeError;qt&&!Dt.length&&(_e&=-17,qt=Dt=!1),Xt&&!Vt.length&&(_e&=-33,Xt=Vt=!1);var Kt=kt&&kt.__bindData__;if(Kt&&Kt!==!0)return Kt=Kt.slice(),jt&&!(Kt[1]&1)&&(Kt[4]=Gt),!jt&&Kt[1]&1&&(_e|=8),Wt&&!(Kt[1]&4)&&(Kt[5]=zt),qt&&push.apply(Kt[2]||(Kt[2]=[]),Dt),Xt&&push.apply(Kt[3]||(Kt[3]=[]),Vt),Kt[1]|=_e,createWrapper$1.apply(null,Kt);var Yt=_e==1||_e===17?baseBind:baseCreateWrapper;return Yt([kt,_e,Dt,Vt,Gt,zt])}var lodash__createwrapper=createWrapper$1,createWrapper=lodash__createwrapper,slice=lodash__slice;function bind$1(kt,_e){return arguments.length>2?createWrapper(kt,17,slice(arguments,2),null,_e):createWrapper(kt,1,null,null,_e)}var lodash_bind=bind$1;function identity$1(kt){return kt}var lodash_identity=identity$1,reNative=lodash__renative,reThis$1=/\bthis\b/,support$1={};support$1.funcDecomp=!reNative.test(commonjsGlobal.WinRTError)&&reThis$1.test(function(){return this});support$1.funcNames=typeof Function.name=="string";var lodash_support=support$1,bind=lodash_bind,identity=lodash_identity,setBindData=lodash__setbinddata,support=lodash_support,reFuncName=/^\s*function[ \n\r\t]+\w/,reThis=/\bthis\b/,fnToString=Function.prototype.toString;function baseCreateCallback$2(kt,_e,Dt){if(typeof kt!="function")return identity;if(typeof _e>"u"||!("prototype"in kt))return kt;var Vt=kt.__bindData__;if(typeof Vt>"u"&&(support.funcNames&&(Vt=!kt.name),Vt=Vt||!support.funcDecomp,!Vt)){var Gt=fnToString.call(kt);support.funcNames||(Vt=!reFuncName.test(Gt)),Vt||(Vt=reThis.test(Gt),setBindData(kt,Vt))}if(Vt===!1||Vt!==!0&&Vt[1]&1)return kt;switch(Dt){case 1:return function(zt){return kt.call(_e,zt)};case 2:return function(zt,jt){return kt.call(_e,zt,jt)};case 3:return function(zt,jt,Ht){return kt.call(_e,zt,jt,Ht)};case 4:return function(zt,jt,Ht,Wt){return kt.call(_e,zt,jt,Ht,Wt)}}return bind(kt,_e)}var lodash__basecreatecallback=baseCreateCallback$2,baseCreateCallback$1=lodash__basecreatecallback,keys$1=lodash_keys,objectTypes=lodash__objecttypes,forOwn$1=function(kt,_e,Dt){var Vt,Gt=kt,zt=Gt;if(!Gt||!objectTypes[typeof Gt])return zt;_e=_e&&typeof Dt>"u"?_e:baseCreateCallback$1(_e,Dt,3);for(var jt=-1,Ht=objectTypes[typeof Gt]&&keys$1(Gt),Wt=Ht?Ht.length:0;++jt<Wt;)if(Vt=Ht[jt],_e(Gt[Vt],Vt,kt)===!1)return zt;return zt},lodash_forown=forOwn$1,baseCreateCallback=lodash__basecreatecallback,forOwn=lodash_forown;function forEach(kt,_e,Dt){var Vt=-1,Gt=kt?kt.length:0;if(_e=_e&&typeof Dt>"u"?_e:baseCreateCallback(_e,Dt,3),typeof Gt=="number")for(;++Vt<Gt&&_e(kt[Vt],Vt,kt)!==!1;);else forOwn(kt,_e);return kt}var lodash_foreach=forEach,metric$b,imperial$9;metric$b={mm:{name:{singular:"Millimeter",plural:"Millimeters"},to_anchor:1/1e3},cm:{name:{singular:"Centimeter",plural:"Centimeters"},to_anchor:1/100},m:{name:{singular:"Meter",plural:"Meters"},to_anchor:1},km:{name:{singular:"Kilometer",plural:"Kilometers"},to_anchor:1e3}};imperial$9={in:{name:{singular:"Inch",plural:"Inches"},to_anchor:1/12},yd:{name:{singular:"Yard",plural:"Yards"},to_anchor:3},"ft-us":{name:{singular:"US Survey Foot",plural:"US Survey Feet"},to_anchor:1.000002},ft:{name:{singular:"Foot",plural:"Feet"},to_anchor:1},mi:{name:{singular:"Mile",plural:"Miles"},to_anchor:5280}};var length={metric:metric$b,imperial:imperial$9,_anchors:{metric:{unit:"m",ratio:3.28084},imperial:{unit:"ft",ratio:1/3.28084}}},metric$a,imperial$8;metric$a={mm2:{name:{singular:"Square Millimeter",plural:"Square Millimeters"},to_anchor:1/1e6},cm2:{name:{singular:"Centimeter",plural:"Centimeters"},to_anchor:1/1e4},m2:{name:{singular:"Square Meter",plural:"Square Meters"},to_anchor:1},ha:{name:{singular:"Hectare",plural:"Hectares"},to_anchor:1e4},km2:{name:{singular:"Square Kilometer",plural:"Square Kilometers"},to_anchor:1e6}};imperial$8={in2:{name:{singular:"Square Inch",plural:"Square Inches"},to_anchor:1/144},yd2:{name:{singular:"Square Yard",plural:"Square Yards"},to_anchor:9},ft2:{name:{singular:"Square Foot",plural:"Square Feet"},to_anchor:1},ac:{name:{singular:"Acre",plural:"Acres"},to_anchor:43560},mi2:{name:{singular:"Square Mile",plural:"Square Miles"},to_anchor:27878400}};var area={metric:metric$a,imperial:imperial$8,_anchors:{metric:{unit:"m2",ratio:10.7639},imperial:{unit:"ft2",ratio:1/10.7639}}},metric$9,imperial$7;metric$9={mcg:{name:{singular:"Microgram",plural:"Micrograms"},to_anchor:1/1e6},mg:{name:{singular:"Milligram",plural:"Milligrams"},to_anchor:1/1e3},g:{name:{singular:"Gram",plural:"Grams"},to_anchor:1},kg:{name:{singular:"Kilogram",plural:"Kilograms"},to_anchor:1e3},mt:{name:{singular:"Metric Tonne",plural:"Metric Tonnes"},to_anchor:1e6}};imperial$7={oz:{name:{singular:"Ounce",plural:"Ounces"},to_anchor:1/16},lb:{name:{singular:"Pound",plural:"Pounds"},to_anchor:1},t:{name:{singular:"Ton",plural:"Tons"},to_anchor:2e3}};var mass={metric:metric$9,imperial:imperial$7,_anchors:{metric:{unit:"g",ratio:1/453.592},imperial:{unit:"lb",ratio:453.592}}},metric$8,imperial$6;metric$8={mm3:{name:{singular:"Cubic Millimeter",plural:"Cubic Millimeters"},to_anchor:1/1e6},cm3:{name:{singular:"Cubic Centimeter",plural:"Cubic Centimeters"},to_anchor:1/1e3},ml:{name:{singular:"Millilitre",plural:"Millilitres"},to_anchor:1/1e3},cl:{name:{singular:"Centilitre",plural:"Centilitres"},to_anchor:1/100},dl:{name:{singular:"Decilitre",plural:"Decilitres"},to_anchor:1/10},l:{name:{singular:"Litre",plural:"Litres"},to_anchor:1},kl:{name:{singular:"Kilolitre",plural:"Kilolitres"},to_anchor:1e3},m3:{name:{singular:"Cubic meter",plural:"Cubic meters"},to_anchor:1e3},km3:{name:{singular:"Cubic kilometer",plural:"Cubic kilometers"},to_anchor:1e12},krm:{name:{singular:"Matsked",plural:"Matskedar"},to_anchor:1/1e3},tsk:{name:{singular:"Tesked",plural:"Teskedar"},to_anchor:5/1e3},msk:{name:{singular:"Matsked",plural:"Matskedar"},to_anchor:15/1e3},kkp:{name:{singular:"Kaffekopp",plural:"Kaffekoppar"},to_anchor:150/1e3},glas:{name:{singular:"Glas",plural:"Glas"},to_anchor:200/1e3},kanna:{name:{singular:"Kanna",plural:"Kannor"},to_anchor:2.617}};imperial$6={tsp:{name:{singular:"Teaspoon",plural:"Teaspoons"},to_anchor:1/6},Tbs:{name:{singular:"Tablespoon",plural:"Tablespoons"},to_anchor:1/2},in3:{name:{singular:"Cubic inch",plural:"Cubic inches"},to_anchor:.55411},"fl-oz":{name:{singular:"Fluid Ounce",plural:"Fluid Ounces"},to_anchor:1},cup:{name:{singular:"Cup",plural:"Cups"},to_anchor:8},pnt:{name:{singular:"Pint",plural:"Pints"},to_anchor:16},qt:{name:{singular:"Quart",plural:"Quarts"},to_anchor:32},gal:{name:{singular:"Gallon",plural:"Gallons"},to_anchor:128},ft3:{name:{singular:"Cubic foot",plural:"Cubic feet"},to_anchor:957.506},yd3:{name:{singular:"Cubic yard",plural:"Cubic yards"},to_anchor:25852.7}};var volume={metric:metric$8,imperial:imperial$6,_anchors:{metric:{unit:"l",ratio:33.8140226},imperial:{unit:"fl-oz",ratio:1/33.8140226}}},metric$7;metric$7={ea:{name:{singular:"Each",plural:"Each"},to_anchor:1},dz:{name:{singular:"Dozen",plural:"Dozens"},to_anchor:12}};var each$1={metric:metric$7,imperial:{},_anchors:{metric:{unit:"ea",ratio:1}}},metric$6,imperial$5;metric$6={C:{name:{singular:"degree Celsius",plural:"degrees Celsius"},to_anchor:1,anchor_shift:0},K:{name:{singular:"degree Kelvin",plural:"degrees Kelvin"},to_anchor:1,anchor_shift:273.15}};imperial$5={F:{name:{singular:"degree Fahrenheit",plural:"degrees Fahrenheit"},to_anchor:1},R:{name:{singular:"degree Rankine",plural:"degrees Rankine"},to_anchor:1,anchor_shift:459.67}};var temperature={metric:metric$6,imperial:imperial$5,_anchors:{metric:{unit:"C",transform:function(kt){return kt/(5/9)+32}},imperial:{unit:"F",transform:function(kt){return(kt-32)*(5/9)}}}},time,daysInYear=365.25;time={ns:{name:{singular:"Nanosecond",plural:"Nanoseconds"},to_anchor:1/1e9},mu:{name:{singular:"Microsecond",plural:"Microseconds"},to_anchor:1/1e6},ms:{name:{singular:"Millisecond",plural:"Milliseconds"},to_anchor:1/1e3},s:{name:{singular:"Second",plural:"Seconds"},to_anchor:1},min:{name:{singular:"Minute",plural:"Minutes"},to_anchor:60},h:{name:{singular:"Hour",plural:"Hours"},to_anchor:60*60},d:{name:{singular:"Day",plural:"Days"},to_anchor:60*60*24},week:{name:{singular:"Week",plural:"Weeks"},to_anchor:60*60*24*7},month:{name:{singular:"Month",plural:"Months"},to_anchor:60*60*24*daysInYear/12},year:{name:{singular:"Year",plural:"Years"},to_anchor:60*60*24*daysInYear}};var time_1={metric:time,_anchors:{metric:{unit:"s",ratio:1}}},bits,bytes;bits={b:{name:{singular:"Bit",plural:"Bits"},to_anchor:1},Kb:{name:{singular:"Kilobit",plural:"Kilobits"},to_anchor:1024},Mb:{name:{singular:"Megabit",plural:"Megabits"},to_anchor:1048576},Gb:{name:{singular:"Gigabit",plural:"Gigabits"},to_anchor:1073741824},Tb:{name:{singular:"Terabit",plural:"Terabits"},to_anchor:1099511627776}};bytes={B:{name:{singular:"Byte",plural:"Bytes"},to_anchor:1},KB:{name:{singular:"Kilobyte",plural:"Kilobytes"},to_anchor:1024},MB:{name:{singular:"Megabyte",plural:"Megabytes"},to_anchor:1048576},GB:{name:{singular:"Gigabyte",plural:"Gigabytes"},to_anchor:1073741824},TB:{name:{singular:"Terabyte",plural:"Terabytes"},to_anchor:1099511627776}};var digital={bits,bytes,_anchors:{bits:{unit:"b",ratio:1/8},bytes:{unit:"B",ratio:8}}},metric$5;metric$5={ppm:{name:{singular:"Part-per Million",plural:"Parts-per Million"},to_anchor:1},ppb:{name:{singular:"Part-per Billion",plural:"Parts-per Billion"},to_anchor:.001},ppt:{name:{singular:"Part-per Trillion",plural:"Parts-per Trillion"},to_anchor:1e-6},ppq:{name:{singular:"Part-per Quadrillion",plural:"Parts-per Quadrillion"},to_anchor:1e-9}};var partsPer={metric:metric$5,imperial:{},_anchors:{metric:{unit:"ppm",ratio:1e-6}}},metric$4,imperial$4;metric$4={"m/s":{name:{singular:"Metre per second",plural:"Metres per second"},to_anchor:3.6},"km/h":{name:{singular:"Kilometre per hour",plural:"Kilometres per hour"},to_anchor:1}};imperial$4={"m/h":{name:{singular:"Mile per hour",plural:"Miles per hour"},to_anchor:1},knot:{name:{singular:"Knot",plural:"Knots"},to_anchor:1.150779},"ft/s":{name:{singular:"Foot per second",plural:"Feet per second"},to_anchor:.681818}};var speed={metric:metric$4,imperial:imperial$4,_anchors:{metric:{unit:"km/h",ratio:1/1.609344},imperial:{unit:"m/h",ratio:1.609344}}},metric$3,imperial$3;metric$3={"min/km":{name:{singular:"Minute per kilometre",plural:"Minutes per kilometre"},to_anchor:.06},"s/m":{name:{singular:"Second per metre",plural:"Seconds per metre"},to_anchor:1}};imperial$3={"min/mi":{name:{singular:"Minute per mile",plural:"Minutes per mile"},to_anchor:.0113636},"s/ft":{name:{singular:"Second per foot",plural:"Seconds per foot"},to_anchor:1}};var pace={metric:metric$3,imperial:imperial$3,_anchors:{metric:{unit:"s/m",ratio:.3048},imperial:{unit:"s/ft",ratio:1/.3048}}},metric$2,imperial$2;metric$2={Pa:{name:{singular:"pascal",plural:"pascals"},to_anchor:1/1e3},kPa:{name:{singular:"kilopascal",plural:"kilopascals"},to_anchor:1},MPa:{name:{singular:"megapascal",plural:"megapascals"},to_anchor:1e3},hPa:{name:{singular:"hectopascal",plural:"hectopascals"},to_anchor:1/10},bar:{name:{singular:"bar",plural:"bar"},to_anchor:100},torr:{name:{singular:"torr",plural:"torr"},to_anchor:101325/76e4}};imperial$2={psi:{name:{singular:"pound per square inch",plural:"pounds per square inch"},to_anchor:1/1e3},ksi:{name:{singular:"kilopound per square inch",plural:"kilopound per square inch"},to_anchor:1}};var pressure={metric:metric$2,imperial:imperial$2,_anchors:{metric:{unit:"kPa",ratio:.00014503768078},imperial:{unit:"psi",ratio:1/.00014503768078}}},current;current={A:{name:{singular:"Ampere",plural:"Amperes"},to_anchor:1},mA:{name:{singular:"Milliampere",plural:"Milliamperes"},to_anchor:.001},kA:{name:{singular:"Kiloampere",plural:"Kiloamperes"},to_anchor:1e3}};var current_1={metric:current,_anchors:{metric:{unit:"A",ratio:1}}},voltage;voltage={V:{name:{singular:"Volt",plural:"Volts"},to_anchor:1},mV:{name:{singular:"Millivolt",plural:"Millivolts"},to_anchor:.001},kV:{name:{singular:"Kilovolt",plural:"Kilovolts"},to_anchor:1e3}};var voltage_1={metric:voltage,_anchors:{metric:{unit:"V",ratio:1}}},power;power={W:{name:{singular:"Watt",plural:"Watts"},to_anchor:1},mW:{name:{singular:"Milliwatt",plural:"Milliwatts"},to_anchor:.001},kW:{name:{singular:"Kilowatt",plural:"Kilowatts"},to_anchor:1e3},MW:{name:{singular:"Megawatt",plural:"Megawatts"},to_anchor:1e6},GW:{name:{singular:"Gigawatt",plural:"Gigawatts"},to_anchor:1e9}};var power_1={metric:power,_anchors:{metric:{unit:"W",ratio:1}}},reactivePower;reactivePower={VAR:{name:{singular:"Volt-Ampere Reactive",plural:"Volt-Amperes Reactive"},to_anchor:1},mVAR:{name:{singular:"Millivolt-Ampere Reactive",plural:"Millivolt-Amperes Reactive"},to_anchor:.001},kVAR:{name:{singular:"Kilovolt-Ampere Reactive",plural:"Kilovolt-Amperes Reactive"},to_anchor:1e3},MVAR:{name:{singular:"Megavolt-Ampere Reactive",plural:"Megavolt-Amperes Reactive"},to_anchor:1e6},GVAR:{name:{singular:"Gigavolt-Ampere Reactive",plural:"Gigavolt-Amperes Reactive"},to_anchor:1e9}};var reactivePower_1={metric:reactivePower,_anchors:{metric:{unit:"VAR",ratio:1}}},apparentPower;apparentPower={VA:{name:{singular:"Volt-Ampere",plural:"Volt-Amperes"},to_anchor:1},mVA:{name:{singular:"Millivolt-Ampere",plural:"Millivolt-Amperes"},to_anchor:.001},kVA:{name:{singular:"Kilovolt-Ampere",plural:"Kilovolt-Amperes"},to_anchor:1e3},MVA:{name:{singular:"Megavolt-Ampere",plural:"Megavolt-Amperes"},to_anchor:1e6},GVA:{name:{singular:"Gigavolt-Ampere",plural:"Gigavolt-Amperes"},to_anchor:1e9}};var apparentPower_1={metric:apparentPower,_anchors:{metric:{unit:"VA",ratio:1}}},energy;energy={Wh:{name:{singular:"Watt-hour",plural:"Watt-hours"},to_anchor:3600},mWh:{name:{singular:"Milliwatt-hour",plural:"Milliwatt-hours"},to_anchor:3.6},kWh:{name:{singular:"Kilowatt-hour",plural:"Kilowatt-hours"},to_anchor:36e5},MWh:{name:{singular:"Megawatt-hour",plural:"Megawatt-hours"},to_anchor:36e8},GWh:{name:{singular:"Gigawatt-hour",plural:"Gigawatt-hours"},to_anchor:36e11},J:{name:{singular:"Joule",plural:"Joules"},to_anchor:1},kJ:{name:{singular:"Kilojoule",plural:"Kilojoules"},to_anchor:1e3}};var energy_1={metric:energy,_anchors:{metric:{unit:"J",ratio:1}}},reactiveEnergy;reactiveEnergy={VARh:{name:{singular:"Volt-Ampere Reactive Hour",plural:"Volt-Amperes Reactive Hour"},to_anchor:1},mVARh:{name:{singular:"Millivolt-Ampere Reactive Hour",plural:"Millivolt-Amperes Reactive Hour"},to_anchor:.001},kVARh:{name:{singular:"Kilovolt-Ampere Reactive Hour",plural:"Kilovolt-Amperes Reactive Hour"},to_anchor:1e3},MVARh:{name:{singular:"Megavolt-Ampere Reactive Hour",plural:"Megavolt-Amperes Reactive Hour"},to_anchor:1e6},GVARh:{name:{singular:"Gigavolt-Ampere Reactive Hour",plural:"Gigavolt-Amperes Reactive Hour"},to_anchor:1e9}};var reactiveEnergy_1={metric:reactiveEnergy,_anchors:{metric:{unit:"VARh",ratio:1}}},metric$1,imperial$1;metric$1={"mm3/s":{name:{singular:"Cubic Millimeter per second",plural:"Cubic Millimeters per second"},to_anchor:1/1e6},"cm3/s":{name:{singular:"Cubic Centimeter per second",plural:"Cubic Centimeters per second"},to_anchor:1/1e3},"ml/s":{name:{singular:"Millilitre per second",plural:"Millilitres per second"},to_anchor:1/1e3},"cl/s":{name:{singular:"Centilitre per second",plural:"Centilitres per second"},to_anchor:1/100},"dl/s":{name:{singular:"Decilitre per second",plural:"Decilitres per second"},to_anchor:1/10},"l/s":{name:{singular:"Litre per second",plural:"Litres per second"},to_anchor:1},"l/min":{name:{singular:"Litre per minute",plural:"Litres per minute"},to_anchor:1/60},"l/h":{name:{singular:"Litre per hour",plural:"Litres per hour"},to_anchor:1/3600},"kl/s":{name:{singular:"Kilolitre per second",plural:"Kilolitres per second"},to_anchor:1e3},"kl/min":{name:{singular:"Kilolitre per minute",plural:"Kilolitres per minute"},to_anchor:50/3},"kl/h":{name:{singular:"Kilolitre per hour",plural:"Kilolitres per hour"},to_anchor:5/18},"m3/s":{name:{singular:"Cubic meter per second",plural:"Cubic meters per second"},to_anchor:1e3},"m3/min":{name:{singular:"Cubic meter per minute",plural:"Cubic meters per minute"},to_anchor:50/3},"m3/h":{name:{singular:"Cubic meter per hour",plural:"Cubic meters per hour"},to_anchor:5/18},"km3/s":{name:{singular:"Cubic kilometer per second",plural:"Cubic kilometers per second"},to_anchor:1e12}};imperial$1={"tsp/s":{name:{singular:"Teaspoon per second",plural:"Teaspoons per second"},to_anchor:1/6},"Tbs/s":{name:{singular:"Tablespoon per second",plural:"Tablespoons per second"},to_anchor:1/2},"in3/s":{name:{singular:"Cubic inch per second",plural:"Cubic inches per second"},to_anchor:.55411},"in3/min":{name:{singular:"Cubic inch per minute",plural:"Cubic inches per minute"},to_anchor:.55411/60},"in3/h":{name:{singular:"Cubic inch per hour",plural:"Cubic inches per hour"},to_anchor:.55411/3600},"fl-oz/s":{name:{singular:"Fluid Ounce per second",plural:"Fluid Ounces per second"},to_anchor:1},"fl-oz/min":{name:{singular:"Fluid Ounce per minute",plural:"Fluid Ounces per minute"},to_anchor:1/60},"fl-oz/h":{name:{singular:"Fluid Ounce per hour",plural:"Fluid Ounces per hour"},to_anchor:1/3600},"cup/s":{name:{singular:"Cup per second",plural:"Cups per second"},to_anchor:8},"pnt/s":{name:{singular:"Pint per second",plural:"Pints per second"},to_anchor:16},"pnt/min":{name:{singular:"Pint per minute",plural:"Pints per minute"},to_anchor:4/15},"pnt/h":{name:{singular:"Pint per hour",plural:"Pints per hour"},to_anchor:1/225},"qt/s":{name:{singular:"Quart per second",plural:"Quarts per second"},to_anchor:32},"gal/s":{name:{singular:"Gallon per second",plural:"Gallons per second"},to_anchor:128},"gal/min":{name:{singular:"Gallon per minute",plural:"Gallons per minute"},to_anchor:32/15},"gal/h":{name:{singular:"Gallon per hour",plural:"Gallons per hour"},to_anchor:8/225},"ft3/s":{name:{singular:"Cubic foot per second",plural:"Cubic feet per second"},to_anchor:957.506},"ft3/min":{name:{singular:"Cubic foot per minute",plural:"Cubic feet per minute"},to_anchor:957.506/60},"ft3/h":{name:{singular:"Cubic foot per hour",plural:"Cubic feet per hour"},to_anchor:957.506/3600},"yd3/s":{name:{singular:"Cubic yard per second",plural:"Cubic yards per second"},to_anchor:25852.7},"yd3/min":{name:{singular:"Cubic yard per minute",plural:"Cubic yards per minute"},to_anchor:25852.7/60},"yd3/h":{name:{singular:"Cubic yard per hour",plural:"Cubic yards per hour"},to_anchor:25852.7/3600}};var volumeFlowRate={metric:metric$1,imperial:imperial$1,_anchors:{metric:{unit:"l/s",ratio:33.8140227},imperial:{unit:"fl-oz/s",ratio:1/33.8140227}}},metric,imperial;metric={lx:{name:{singular:"Lux",plural:"Lux"},to_anchor:1}};imperial={"ft-cd":{name:{singular:"Foot-candle",plural:"Foot-candles"},to_anchor:1}};var illuminance={metric,imperial,_anchors:{metric:{unit:"lx",ratio:1/10.76391},imperial:{unit:"ft-cd",ratio:10.76391}}},frequency;frequency={mHz:{name:{singular:"millihertz",plural:"millihertz"},to_anchor:1/1e3},Hz:{name:{singular:"hertz",plural:"hertz"},to_anchor:1},kHz:{name:{singular:"kilohertz",plural:"kilohertz"},to_anchor:1e3},MHz:{name:{singular:"megahertz",plural:"megahertz"},to_anchor:1e3*1e3},GHz:{name:{singular:"gigahertz",plural:"gigahertz"},to_anchor:1e3*1e3*1e3},THz:{name:{singular:"terahertz",plural:"terahertz"},to_anchor:1e3*1e3*1e3*1e3},rpm:{name:{singular:"rotation per minute",plural:"rotations per minute"},to_anchor:1/60},"deg/s":{name:{singular:"degree per second",plural:"degrees per second"},to_anchor:1/360},"rad/s":{name:{singular:"radian per second",plural:"radians per second"},to_anchor:1/(Math.PI*2)}};var frequency_1={metric:frequency,_anchors:{frequency:{unit:"hz",ratio:1}}},angle;angle={rad:{name:{singular:"radian",plural:"radians"},to_anchor:180/Math.PI},deg:{name:{singular:"degree",plural:"degrees"},to_anchor:1},grad:{name:{singular:"gradian",plural:"gradians"},to_anchor:9/10},arcmin:{name:{singular:"arcminute",plural:"arcminutes"},to_anchor:1/60},arcsec:{name:{singular:"arcsecond",plural:"arcseconds"},to_anchor:1/3600}};var angle_1={metric:angle,_anchors:{metric:{unit:"deg",ratio:1}}},convert,keys=lodash_keys,each=lodash_foreach,measures={length,area,mass,volume,each:each$1,temperature,time:time_1,digital,partsPer,speed,pace,pressure,current:current_1,voltage:voltage_1,power:power_1,reactivePower:reactivePower_1,apparentPower:apparentPower_1,energy:energy_1,reactiveEnergy:reactiveEnergy_1,volumeFlowRate,illuminance,frequency:frequency_1,angle:angle_1},Converter;Converter=function(kt,_e){_e?this.val=kt/_e:this.val=kt};Converter.prototype.from=function(kt){if(this.destination)throw new Error(".from must be called before .to");return this.origin=this.getUnit(kt),this.origin||this.throwUnsupportedUnitError(kt),this};Converter.prototype.to=function(kt){if(!this.origin)throw new Error(".to must be called after .from");this.destination=this.getUnit(kt);var _e,Dt;if(this.destination||this.throwUnsupportedUnitError(kt),this.origin.abbr===this.destination.abbr)return this.val;if(this.destination.measure!=this.origin.measure)throw new Error("Cannot convert incompatible measures of "+this.destination.measure+" and "+this.origin.measure);return _e=this.val*this.origin.unit.to_anchor,this.origin.unit.anchor_shift&&(_e-=this.origin.unit.anchor_shift),this.origin.system!=this.destination.system&&(Dt=measures[this.origin.measure]._anchors[this.origin.system].transform,typeof Dt=="function"?_e=Dt(_e):_e*=measures[this.origin.measure]._anchors[this.origin.system].ratio),this.destination.unit.anchor_shift&&(_e+=this.destination.unit.anchor_shift),_e/this.destination.unit.to_anchor};Converter.prototype.toBest=function(_e){if(!this.origin)throw new Error(".toBest must be called after .from");var _e=Object.assign({exclude:[],cutOffNumber:1},_e),Dt;return each(this.possibilities(),function(Vt){var Gt=this.describe(Vt),zt=_e.exclude.indexOf(Vt)===-1;if(zt&&Gt.system===this.origin.system){var jt=this.to(Vt);(!Dt||jt>=_e.cutOffNumber&&jt<Dt.val)&&(Dt={val:jt,unit:Vt,singular:Gt.singular,plural:Gt.plural})}}.bind(this)),Dt};Converter.prototype.getUnit=function(kt){var _e;return each(measures,function(Dt,Vt){if(each(Dt,function(Gt,zt){if(zt=="_anchors"||(each(Gt,function(jt,Ht){if(Ht==kt)return _e={abbr:kt,measure:Vt,system:zt,unit:jt},!1}),_e))return!1}),_e)return!1}),_e};var describe=function(kt){return{abbr:kt.abbr,measure:kt.measure,system:kt.system,singular:kt.unit.name.singular,plural:kt.unit.name.plural}};Converter.prototype.describe=function(kt){var _e=Converter.prototype.getUnit(kt),Dt=null;try{Dt=describe(_e)}catch{this.throwUnsupportedUnitError(kt)}return Dt};Converter.prototype.list=function(kt){var _e=[];return each(measures,function(Dt,Vt){kt&&kt!==Vt||each(Dt,function(Gt,zt){if(zt=="_anchors")return!1;each(Gt,function(jt,Ht){_e=_e.concat(describe({abbr:Ht,measure:Vt,system:zt,unit:jt}))})})}),_e};Converter.prototype.throwUnsupportedUnitError=function(kt){var _e=[];throw each(measures,function(Dt,Vt){each(Dt,function(Gt,zt){if(zt=="_anchors")return!1;_e=_e.concat(keys(Gt))})}),new Error("Unsupported unit "+kt+", use one of: "+_e.join(", "))};Converter.prototype.possibilities=function(kt){var _e=[];return!this.origin&&!kt?each(keys(measures),function(Dt){each(measures[Dt],function(Vt,Gt){if(Gt=="_anchors")return!1;_e=_e.concat(keys(Vt))})}):(kt=kt||this.origin.measure,each(measures[kt],function(Dt,Vt){if(Vt=="_anchors")return!1;_e=_e.concat(keys(Dt))})),_e};Converter.prototype.measures=function(){return keys(measures)};convert=function(kt){return new Converter(kt)};var lib=convert;const convert$1=getDefaultExportFromCjs(lib),DimensionsManager=({stores:kt})=>{const _e=kt.itemStore(Jt=>Jt.itemsSpawned),{showDimensions:Dt,sceneSettings:Vt,boundData:Gt}=kt.coreSceneStore(),{sceneScaleUnit:zt,sceneScaleDisplayUnit:jt}=Vt||{},Ht=reactExports.useRef(null),Wt=reactExports.useRef(0),qt=reactExports.useMemo(()=>{if(!Vt)return"#000000";const{r:Jt,g:nn,b:rn}=Vt.dimensionColor;return rgbToHex(Jt,nn,rn)},[Vt]),[Xt,Kt]=reactExports.useMemo(()=>{if(!Gt||!Gt.size)return[.2,.01];const Jt=Math.min(Gt.size.x,Gt.size.z),nn=Math.min(Jt/20,.005);return[Math.min(Jt,.2),nn]},[Gt]);reactExports.useEffect(()=>{Wt.current=0},[Dt]),useFrame(()=>{Ht.current&&Wt.current<1&&(Wt.current+=.05,Ht.current.scale.set(Wt.current,Wt.current,Wt.current))});const Yt=Jt=>jsxRuntimeExports.jsxs(Html,{center:!0,className:"dimensionsText ignore",style:{opacity:"1"},zIndexRange:[29,0],children:[convert$1(Jt).from("m").to(zt).toFixed(Vt.measurementPrecision),jt??zt]}),Zt=(Jt,nn,rn,Qt)=>jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:jsxRuntimeExports.jsxs(RoundedBox,{position:Jt,rotation:nn,scale:rn,visible:!0,children:[jsxRuntimeExports.jsx(RoundedBox,{position:[0,.5,0],scale:Qt==="z"?[7,Kt,1]:[1,Kt,7],visible:!0,children:jsxRuntimeExports.jsx("meshBasicMaterial",{color:qt})}),jsxRuntimeExports.jsx(RoundedBox,{position:[0,-.5,0],scale:Qt==="z"?[7,Kt,1]:[1,Kt,7],visible:!0,children:jsxRuntimeExports.jsx("meshBasicMaterial",{color:qt})}),jsxRuntimeExports.jsx("meshBasicMaterial",{color:qt}),Yt(Gt.size[Qt])]})});return!Dt||!Gt||Object.keys(Gt.size).some(Jt=>Gt.size[Jt]===0)||Object.keys(_e).length===0?null:jsxRuntimeExports.jsxs("group",{ref:Ht,children:[Zt([Gt.center.x,Gt.center.y-Gt.size.y/2,Gt.center.z+Gt.size.z/2+Xt],[0,0,degToRad(90)],[Kt,Gt.size.x,Kt],"x"),Zt([Gt.center.x-Gt.size.x/2-Xt,Gt.center.y,Gt.center.z+Gt.size.z/2+Xt],[0,0,0],[Kt,Gt.size.y,Kt],"y"),Zt([Gt.center.x+Gt.size.x/2+Xt,Gt.center.y-Gt.size.y/2,Gt.center.z],[degToRad(90),0,0],[Kt,Gt.size.z,Kt],"z")]})},BaseScene=({stores:kt})=>jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx(HotspotManager,{stores:kt}),jsxRuntimeExports.jsx(DimensionsManager,{stores:kt}),jsxRuntimeExports.jsxs(Selection$1,{children:[jsxRuntimeExports.jsx(ItemManager,{stores:kt}),jsxRuntimeExports.jsx(EffectsComposer,{stores:kt})]})]}),CameraManager=({stores:kt})=>{const _e=reactExports.useRef(null),Dt=kt.hotspotStore(Jt=>Jt.isAnyHotspotActive),Vt=kt.cameraStore(Jt=>Jt.cameraSettings),Gt=kt.cameraStore(Jt=>Jt.disableAutoRotate),zt=kt.coreSceneStore(Jt=>Jt.autoFocusTrigger),jt=kt.coreSceneStore(Jt=>Jt.dragging),Ht=kt.cameraStore(Jt=>Jt.sendCameraDetailsTrigger),Wt=kt.cameraStore(Jt=>Jt.focusPointPosition),qt=kt.cameraStore(Jt=>Jt.viewPointPosition),{raycaster:Xt,camera:Kt}=useThree(),Yt=kt.ghostStore(Jt=>Jt.ghostsTransform),Zt=()=>{if(_e.current===null)return;const nn=1/_e.current._lastZoom,rn=kt.cameraStore.getState().boundsMargin,Qt=kt.coreSceneStore.getState().autoFocusRef;let en=new Box3;Qt?en.setFromObject(Qt):kt.coreSceneStore.getState().sceneRef.traverse(sn=>{sn.autoFocusEnabled&&en.expandByObject(sn)}),Qt||kt.coreSceneStore.setState({bbox:en});const tn=new Vector3;if(en.getSize(tn),tn.x>0){const sn=new Vector3;en.getCenter(sn);const cn=new Vector3(en.max.x,en.max.y,en.max.z);cn.sub(en.min),kt.coreSceneStore.setState({boundData:{center:sn,size:cn}}),_e.current.setBoundary(en);const un=new Box3(en.min,en.max);un.min=new Vector3((un.min.x-rn/2)*nn,(un.min.y-rn/2)*nn,(un.min.z-rn/2)*nn),un.max=new Vector3((un.max.x+rn/2)*nn,(un.max.y+rn/2)*nn,(un.max.z+rn/2)*nn);const hn=un.getBoundingSphere(new Sphere(sn));hn.radius>0&&_e.current.fitToSphere(hn,!0)}else{const sn=new Vector3(0,0,0),cn=new Vector3(0,0,0);kt.coreSceneStore.setState({boundData:{center:sn,size:cn}})}_e.current.zoomTo(1,!0)};return reactExports.useEffect(()=>{Zt()},[zt]),reactExports.useEffect(()=>{kt.coreSceneStore.getState().CORE_API!=null&&(kt.itemStore.getState().isBusy()||(kt.coreSceneStore.getState().sceneSettings.focusCameraOnGhosts===!0?kt.coreSceneStore.getState().CORE_API.focusOnGhosts():kt.coreSceneStore.getState().CORE_API.refocus()))},[Yt]),reactExports.useEffect(()=>{if(_e.current===null)return;const Jt=kt.cameraStore.getState().savedState,nn=kt.cameraStore.getState().resetToLastPosition;if(Dt===!1){Jt===!0&&(nn===!0?_e.current.reset(!0):kt.cameraStore.setState({resetToLastPosition:!0}),kt.cameraStore.setState({savedState:!1}));return}Jt===!1&&nn===!0&&(_e.current.saveState(),kt.cameraStore.setState({savedState:!0})),_e.current.setLookAt(qt.x,qt.y,qt.z,Wt.x,Wt.y,Wt.z,!0)},[Dt,qt,Wt]),reactExports.useEffect(()=>{kt.coreSceneStore.getState().CORE_API!=null&&kt.coreSceneStore.getState().CORE_API.fireEvent(kt.coreSceneStore.getState().CORE_API.EVENTS.CONFIGURATION.CameraDetails_Update,Kt)},[Ht]),useFrame(Jt=>{Vt.canAutoRotate===!1||_e.current===null||Gt===!1&&Dt===!1&&(_e.current.azimuthAngle+=20*Jt*MathUtils.DEG2RAD*Vt.autoRotateSpeed)}),reactExports.useEffect(()=>{_e.current!==null&&(Vt.canZoom===!0&&jt===!1?(_e.current.mouseButtons.wheel=CAMERA_ACTION.ZOOM,_e.current.mouseButtons.middle=CAMERA_ACTION.ZOOM):(_e.current.mouseButtons.wheel=CAMERA_ACTION.NONE,_e.current.mouseButtons.middle=CAMERA_ACTION.NONE),Vt.canPan===!0&&jt===!1?(_e.current.mouseButtons.right=CAMERA_ACTION.OFFSET,Vt.canZoom===!0&&jt===!1?(_e.current.touches.two=CAMERA_ACTION.TOUCH_ZOOM_OFFSET,_e.current.touches.three=CAMERA_ACTION.TOUCH_ZOOM_OFFSET):(_e.current.touches.two=CAMERA_ACTION.TOUCH_OFFSET,_e.current.touches.three=CAMERA_ACTION.TOUCH_OFFSET)):(_e.current.mouseButtons.right=CAMERA_ACTION.NONE,Vt.canZoom===!0&&jt===!1?(_e.current.touches.two=CAMERA_ACTION.TOUCH_ZOOM,_e.current.touches.three=CAMERA_ACTION.TOUCH_ZOOM):(_e.current.touches.two=CAMERA_ACTION.NONE,_e.current.touches.three=CAMERA_ACTION.NONE)))},[_e,Vt,jt]),reactExports.useEffect(()=>{if(_e.current===null)return;Kt.fov=Vt.fov,Kt.updateProjectionMatrix();const Jt=()=>{_e.current!==null&&(_e.current.removeEventListener("rest",Jt),kt.cameraStore.setState({userDragging:!1,disableAutoRotate:!1}))};_e.current.addEventListener("controlstart",()=>{kt.hotspotStore.getState().isAnyHotspotActive&&kt.hotspotStore.getState().actions.exitHotspot(),_e.current!==null&&(_e.current.removeEventListener("rest",Jt),kt.cameraStore.setState({userDragging:!0,disableAutoRotate:!0}))}),_e.current.addEventListener("controlend",()=>{_e.current!==null&&(_e.current.active?_e.current.addEventListener("rest",Jt):Jt())}),_e.current.addEventListener("transitionstart",()=>{_e.current!==null&&kt.cameraStore.getState().userDragging!==!0&&(kt.cameraStore.setState({disableAutoRotate:!0}),_e.current.addEventListener("rest",Jt))})},[_e]),reactExports.useEffect(()=>{_e.current&&(Xt.layers.enable(GHOST_LAYER),Kt.layers.enable(GHOST_LAYER),kt.cameraStore.setState({cameraControlsRef:_e.current}))},[_e]),jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:jsxRuntimeExports.jsx(CameraControls,{ref:_e,makeDefault:!0,dollySpeed:Vt.dollySpeed,truckSpeed:Vt.truckSpeed,minZoom:Vt.minZoom,maxZoom:Vt.maxZoom,minPolarAngle:Dt?-Math.PI:degToRad(Vt.minPolarAngle),maxPolarAngle:Dt?Math.PI:degToRad(Vt.maxPolarAngle)})})},Root=({stores:kt})=>{const{gl:_e}=useThree();return reactExports.useEffect(()=>{kt.coreSceneStore.setState({glContext:_e}),_e.getContext("3d").canvas.ariaLabel="A 3D Canvas to visualize products from the Configurator."},[]),jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx(BaseScene,{stores:kt}),jsxRuntimeExports.jsx(CameraManager,{stores:kt}),jsxRuntimeExports.jsx(LightManager,{stores:kt})]})},Alert=({stores:kt,handleCloseAlert:_e,alertData:Dt})=>{const Vt=reactExports.useRef(null),Gt=reactExports.useRef(null),zt=reactExports.useRef(null),jt=kt.uiSceneStore(Xt=>Xt.dialogPopupOpen),Ht=kt.uiSceneStore(Xt=>Xt.isScreenPortrait),Wt=kt.cartStore(Xt=>Xt.previewCartModalOpen),qt=()=>{clearTimeout(Vt.current),zt.current.style="",Gt.current.style="",_e()};return reactExports.useEffect(()=>{if(zt.current===null||Gt.current===null)return;const Xt=Dt.alertTime?Dt.alertTime:1e3;zt.current.style="animation: loader "+Xt+"ms; animation-timing-function: linear;",Gt.current.style="animation: loader "+Xt+"ms; animation-timing-function: linear;",Vt.current=setTimeout(qt,Xt)},[zt,Gt,Dt]),jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsxs("div",{className:"alert-bg ".concat(ALERT_TYPES[Dt.alertType].cssClass),tabIndex:Ht?-1:0,"aria-hidden":Ht,children:[jsxRuntimeExports.jsx("div",{className:"alert-icon-bg ".concat(ALERT_TYPES[Dt.alertType].cssClass),children:jsxRuntimeExports.jsx("img",{src:ALERT_TYPES[Dt.alertType].src,className:"alert-icon",alt:Dt.alertType})}),jsxRuntimeExports.jsxs("div",{className:"alert-msg-cross-timer-bg",children:[jsxRuntimeExports.jsxs("div",{className:"alert-msg-cross-bg",children:[jsxRuntimeExports.jsxs("div",{className:"alert-msg-bg",style:Dt.alertLabel?{}:{display:"flex",alignItems:"center"},children:[Dt.alertLabel&&jsxRuntimeExports.jsx("p",{className:"alert-label",children:Dt.alertLabel}),jsxRuntimeExports.jsx("span",{className:"alert-msg",children:Dt.alertMsg})]}),jsxRuntimeExports.jsx("div",{className:"alert-close-btn-bg",children:jsxRuntimeExports.jsx("img",{tabIndex:jt?-1:0,"aria-hidden":jt,onClick:qt,className:"alert-cross-btn",alt:"Close",role:"button","aria-label":"Close",src:PUBLIC_DESIGN_ASSETS_ENDPOINT+"/Icon/X.svg"})})]}),jsxRuntimeExports.jsx("div",{ref:Gt,className:"alert-timer ".concat(ALERT_TYPES[Dt.alertType].cssClass)})]})]}),jsxRuntimeExports.jsxs("div",{className:"alert-bg alert-mobile ".concat(ALERT_TYPES[Dt.alertType].cssClass),tabIndex:Ht?0:-1,"aria-hidden":!Ht,children:[jsxRuntimeExports.jsxs("div",{className:"alert-icon-msg-cross-bg",children:[jsxRuntimeExports.jsx("div",{className:"alert-icon-bg ".concat(ALERT_TYPES[Dt.alertType].cssClass),children:jsxRuntimeExports.jsx("img",{src:ALERT_TYPES[Dt.alertType].src,className:"alert-icon",alt:Dt.alertType})}),jsxRuntimeExports.jsxs("div",{className:"alert-msg-bg",children:[Dt.alertLabel&&jsxRuntimeExports.jsx("p",{className:"alert-label",children:Dt.alertLabel}),jsxRuntimeExports.jsx("span",{className:"alert-msg",children:Dt.alertMsg_Mobile?Dt.alertMsg_Mobile:Dt.alertMsg})]}),jsxRuntimeExports.jsx("div",{className:"alert-close-btn-bg",children:jsxRuntimeExports.jsx("img",{tabIndex:!jt&&!Wt?0:-1,"aria-hidden":jt||Wt,onClick:qt,className:"alert-cross-btn",alt:"Close",role:"button","aria-label":"Close",src:PUBLIC_DESIGN_ASSETS_ENDPOINT+"/Icon/X.svg"})})]}),jsxRuntimeExports.jsx("div",{ref:zt,className:"alert-timer ".concat(ALERT_TYPES[Dt.alertType].cssClass)})]})]})},AlertManager=({stores:kt})=>{const _e=kt.coreSceneStore(Wt=>Wt.alertData),Dt=kt.coreSceneStore(Wt=>Wt.persistantAlertData),Vt=kt.coreSceneStore(Wt=>Wt.currentAlertData),Gt=Wt=>{kt.coreSceneStore.setState({currentAlertData:Wt})};reactExports.useEffect(()=>{!_e||!_e.alertMsg||zt(_e)},[_e]),reactExports.useEffect(()=>{const Wt=kt.coreSceneStore.getState().alertQueue;Wt.length<=0||(Vt===null&&(Gt(Wt[0]),Wt[0].persistant===!0&&kt.coreSceneStore.setState({persistantAlertData:Wt[0]})),kt.coreSceneStore.getState().actions.popFromAlertQueue())},[Vt]);const zt=reactExports.useCallback(Wt=>{if(kt.coreSceneStore.getState().sceneSettings.disableAlerts===!0)return;let qt=Wt.alertType,Xt=Wt.alertId;const Kt=kt.coreSceneStore.getState().sceneSettings.alertControl;let Yt=!1;Object.keys(Kt).map(nn=>{nn==Xt&&(Yt=!0)}),Yt==!1&&(Xt="default");let Zt=!1;if(Object.keys(ALERT_TYPES).map(nn=>{nn==qt.toLowerCase()&&(Zt=!0)}),Zt==!1&&(qt=ALERT_TYPES.info.id,Wt.alertType=qt),ALERT_TYPES[Wt.alertType].level<kt.coreSceneStore.getState().sceneSettings.alertLevel||kt.coreSceneStore.getState().sceneSettings.alertControl[Xt]!==!0)return;const Jt=kt.coreSceneStore.getState().actions.addToAlertQueue(Wt);Vt===null&&Jt.length===1&&(Gt(Wt),Wt.persistant===!0&&kt.coreSceneStore.setState({persistantAlertData:Wt}))},[Vt]),jt=reactExports.useCallback(()=>{Gt(Dt)},[Dt]),Ht=reactExports.useCallback(async()=>{Gt(null)},[]);return reactExports.useEffect(()=>{async function Wt(){await wait(1500);let qt=null,Xt={alertMsg:"Add items by selecting from the panel",alertMsg_Mobile:"Add items by selecting from the panel",alertTime:8e3,alertType:"info",alertLabel:"Get Started"};kt.coreSceneStore.getState().alertSettings&&(kt.coreSceneStore.getState().alertSettings.welcomeMessage&&(qt=kt.coreSceneStore.getState().alertSettings.welcomeMessage),kt.coreSceneStore.getState().alertSettings.instructionMessage&&(Xt=kt.coreSceneStore.getState().alertSettings.instructionMessage)),qt!==null&&zt(qt),zt(Xt)}Wt()},[]),jsxRuntimeExports.jsxs("div",{className:"alert-space",children:[Vt===null&&Dt&&jsxRuntimeExports.jsx("div",{role:"button","aria-label":"Alert Button",onClick:jt,className:"alert-persistant-btn-bg",style:{background:ALERT_TYPES[Dt.alertType].background,border:"1px solid "+ALERT_TYPES[Dt.alertType].color},children:jsxRuntimeExports.jsx("img",{style:{filter:ALERT_TYPES[Dt.alertType].filter},className:"alert-persistant-btn",alt:Dt.alertType,src:ALERT_TYPES[Dt.alertType].src})}),Vt&&jsxRuntimeExports.jsx(Alert,{stores:kt,handleCloseAlert:Ht,alertData:Vt})]})},FocusManager=({stores:kt})=>{const _e=kt.itemStore(Gt=>Gt.itemsSpawned),Dt=kt.uiSceneStore(Gt=>Gt.dialogPopupOpen),Vt=kt.cartStore(Gt=>Gt.previewCartModalOpen);return jsxRuntimeExports.jsx("div",{id:"focusBtns",children:Object.keys(_e).map((Gt,zt)=>jsxRuntimeExports.jsx("div",{children:_e[Gt].itemData.isInteractive&&_e[Gt].itemData.gltfURL&&jsxRuntimeExports.jsx("div",{onFocus:()=>{kt.itemStore.setState({focusedGUID:Gt})},onBlur:()=>{kt.itemStore.setState({focusedGUID:null})},onClick:()=>{const jt=kt.coreSceneStore.getState().canvasSize,Ht=kt.itemStore.getState().itemsSpawned,Wt=kt.attachmentStore.getState().attachmentSystem.currentStructure.getNodeByGUID(Gt),qt={primary:{guid:Gt,name:_e[Gt].itemData.name,data:{...Ht[Gt],overrideVariant:Wt.overrideVariant,currentVariant:Wt.currentVariant,offsetX:jt.width/2,offsetY:jt.height/2}}};kt.itemStore.getState().actions.setSelectedItemData(qt.primary.data),kt.coreSceneStore.getState().CORE_API.fireEvent(kt.coreSceneStore.getState().CORE_API.EVENTS.UI.ContextMenu_Show,qt)},role:"button",id:"focusBtn-"+Gt,tabIndex:!Vt&&!Dt?0:-1,className:"canvasFocusButton","aria-hidden":Vt||Dt,"aria-label":_e[Gt].itemData.name?_e[Gt].itemData.name:_e[Gt].itemData.skuID},"focusBtn-key-"+Gt)},"focusBtn-single-key-"+Gt))},"focusBtns")},OverlayUIManager=({stores:kt})=>{const _e=kt.coreSceneStore(zt=>zt.canvasTooltipText),Dt=kt.coreSceneStore(zt=>zt.sceneSettings),Vt=kt.ghostStore(zt=>zt.ghostData),Gt=kt.itemStore(zt=>zt.defaultSceneItemCount);return jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:jsxRuntimeExports.jsxs("div",{children:[jsxRuntimeExports.jsx(AlertManager,{stores:kt}),jsxRuntimeExports.jsx(FocusManager,{stores:kt}),kt.coreSceneStore.getState().CORE_API.getSceneItemCount()<=Gt&&!Vt&&jsxRuntimeExports.jsx("div",{style:{fontSize:Dt.emptySceneTextFontSize},className:"emptySceneBG",children:Dt.emptySceneText}),jsxRuntimeExports.jsx("div",{className:"canvasTooltip",children:_e})]})})};function getPlugAttributesFromObject(kt){let _e={};if(kt.type.toLowerCase()==="object3d"){const Dt=kt.userData;if(Dt?.isPlug===1){const Vt=Dt.name;Vt&&typeof Vt=="string"&&(_e.name=Vt);const Gt=Dt.type;Gt&&typeof Gt=="string"?_e.type=Gt:_e.type="";const zt=Dt.weight;zt&&typeof zt=="number"?_e.weight=zt:_e.weight=1;const jt=Dt.affectedNodes;jt&&typeof jt=="string"?_e.affectedNodes=jt.replaceAll(" ","").split(","):_e.affectedNodes=[];const Ht=Dt.acceptedPlugTypes;Ht&&typeof Ht=="string"?_e.acceptedPlugTypes=Ht.replaceAll(" ","").split(","):_e.acceptedPlugTypes=[];const Wt=Dt.connectsToPlugTypes;Wt&&typeof Wt=="string"?_e.connectsToPlugTypes=Wt.replaceAll(" ","").split(","):_e.connectsToPlugTypes=[];const qt=Dt.dependencySku;qt&&typeof qt=="string"?_e.dependencySku=qt:_e.dependencySku="";const Xt=Dt.isDependencySkuInteractive;qt!==void 0&&typeof Xt=="number"?_e.isDependencySkuInteractive=Xt:_e.isDependencySkuInteractive=1}}return _e}async function loadAllDynamicHooks(kt,_e){if(!kt){LOGGER.info({title:"No hook URL provided"});return}try{const Dt=resolveAssetUrl(kt),Vt=_e.dynamicHookStore.getState(),Gt=await __vitePreload(()=>import(Dt),[]);for(const[zt,jt]of Object.entries(Gt))typeof jt=="function"&&(Vt[zt]!==void 0?(Vt[zt]=jt,LOGGER.info({title:`${zt} successfully updated from `+Dt})):LOGGER.warn({title:`No matching hook found for ${zt}`}))}catch(Dt){LOGGER.error({title:`Error loading dynamic hooks from: ${kt}`,details:Dt})}}async function loadAllProxies(kt,_e){kt.assetStore.getState().actions.init();const Dt=kt.assetStore.getState().actions,Vt=kt.coreSceneStore.getState().sceneSettings,Gt=Object.keys(_e).length;LOGGER.info({title:`Starting concurrent loading of ${Gt} proxies`});const zt=performance.now(),jt=Object.entries(_e).map(([Kt,Yt])=>loadSingleProxy(Kt,Yt,Dt,Vt)),Ht=await Promise.all(jt),Wt=performance.now(),qt=Ht.filter(Kt=>Kt.success).length;LOGGER.info({title:`Concurrent loading completed: ${qt}/${Gt} proxies loaded successfully in ${((Wt-zt)/1e3).toFixed(2)} seconds`});const Xt=Ht.filter(Kt=>!Kt.success);Xt.length>0&&LOGGER.warn({title:`Failed to load ${Xt.length} proxies:`,details:Xt.map(Kt=>Kt.skuID)})}async function loadSingleProxy(kt,_e,Dt,Vt){try{LOGGER.info({title:`Loading proxy: ${kt}`});const Gt=performance.now(),zt=await Dt.loadProxyAsset(kt,!0),jt=performance.now();if(LOGGER.info({title:`${kt} proxy: ${((jt-Gt)/1e3).toFixed(2)} seconds to load.`}),LOGGER.info({title:`Loaded proxy: ${kt}`,details:zt}),!zt?.proxy?.data)return{success:!1,skuID:kt,error:"No proxy data available"};const Ht=!_e.plugs||_e.plugs.length===0;Ht&&LOGGER.info({title:`Collecting plugs information for ${kt} from the proxy mesh`});let Wt=[];return zt.proxy.data.scene.traverse(qt=>{if(Ht){const Xt=getPlugAttributesFromObject(qt);Object.keys(Xt).length>0&&Wt.push(Xt)}qt.isMesh&&processMesh(qt,Vt)}),Wt.length>0&&(_e.plugs=Wt),updateBoundingBoxInfo(_e,zt),{success:!0,skuID:kt}}catch(Gt){return LOGGER.error({title:`Error loading proxy ${kt}:`,details:Gt}),{success:!1,skuID:kt,error:Gt.message}}}function processMesh(kt,_e){kt.layers.set(GHOST_LAYER);const Dt=_e.ghostColor;Object.assign(kt.material,{color:new Color$1(0,0,0),emissive:new Color$1(Dt.r/255,Dt.g/255,Dt.b/255),emissiveIntensity:.75,alphaTest:Dt.a,transparent:Dt.a<1,opacity:Dt.a,depthTest:!1,reflectivity:0,metalness:0,wireframe:_e.ghostAsWireframe})}function updateBoundingBoxInfo(kt,_e){const{boundingBox:Dt,boundingSphere:Vt}=computeProxyBoundingBox(_e);if(Dt&&Vt){const Gt=calculateBoundingBoxSize(Dt);Object.assign(kt,{boundingBox:Dt,boundingSphereCenter:Vt.center,boundingBoxSize:Gt})}else kt.boundingSphereCenter={x:0,y:0,z:0},kt.boundingBoxSize={x:0,y:0,z:0}}function calculateBoundingBoxSize(kt){return{x:kt.max.x-kt.min.x,y:kt.max.y-kt.min.y,z:kt.max.z-kt.min.z}}function computeProxyBoundingBox(kt){const _e=kt.proxy.data.scene;if(_e){let Dt=null;return _e.traverse(Vt=>{if(Vt.isMesh){Dt=Vt;return}}),Dt?(Dt.geometry.boundingBox||Dt.geometry.computeBoundingBox(),{boundingBox:Dt.geometry.boundingBox,boundingSphere:Dt.geometry.boundingSphere}):!1}}const AlertStyles=`.alert-space{position:absolute;width:auto;height:auto;max-width:40%;top:0;margin:1rem}.alert-bg{display:flex;flex-direction:row;border-radius:5.04px}.alert-mobile{display:none}.alert-persistant-btn{width:2rem;height:2rem;margin:4px;filter:invert(100%) brightness(200%)}.alert-persistant-btn-bg{cursor:pointer;display:flex;justify-content:center;align-items:center;border-radius:4px}.alert-persistant-btn-bg:hover{opacity:.9!important}.alert-icon{width:2rem;height:2rem;margin:14px;filter:invert(100%) brightness(200%)}.alert-icon-bg{border-radius:5.04px 0 0 5.04px}.alert-msg-bg{padding:1rem}.alert-label{font-weight:600;font-size:1.125rem;margin:0 0 4px;text-transform:capitalize}.alert-msg{font-size:1rem}.alert-cross-btn{width:1.5rem;cursor:pointer;margin:.5rem}.alert-msg-cross-timer-bg{display:flex;flex-direction:column;justify-content:space-between}.alert-msg-cross-bg{display:flex;flex-direction:row}.alert-timer{width:0%;height:2px;transition:10ms}.alert-bg.alert-info,.alert-bg.alert-mobile.alert-info{background-color:var(--info-light);border:1.26px solid var(--info-dark)}.alert-icon-bg.alert-info{background-color:var(--info-dark);border:1.26px solid var(--info-dark)}.alert-timer.alert-info{background-color:var(--info-dark)}.alert-bg.alert-warn,.alert-bg.alert-mobile.alert-warn{background-color:var(--warn-light);border:1.26px solid var(--warn-dark)}.alert-icon-bg.alert-warn{background-color:var(--warn-dark);border:1.26px solid var(--warn-dark)}.alert-timer.alert-warn{background-color:var(--warn-dark)}.alert-bg.alert-error,.alert-bg.alert-mobile.alert-error{background-color:var(--error-light);border:1.26px solid var(--error-dark)}.alert-icon-bg.alert-error{background-color:var(--error-dark);border:1.26px solid var(--error-dark)}.alert-timer.alert-error{background-color:var(--error-dark)}.alert-bg.alert-success,.alert-bg.alert-mobile.alert-success{background-color:var(--success-light);border:1.26px solid var(--success-dark)}.alert-icon-bg.alert-success{background-color:var(--success-dark);border:1.26px solid var(--success-dark)}.alert-timer.alert-success{background-color:var(--success-dark)}@keyframes loader{0%{width:0%}to{width:100%}}@media only screen and (orientation: portrait){.alert-label{margin:auto}.alert-close-btn-bg{display:flex;justify-content:center}.alert-icon-msg-cross-bg{display:flex;flex-direction:row;width:100%;align-items:center}.alert-space{width:100%;max-width:100%;margin:auto}.alert-bg{display:none;flex-direction:column}.alert-mobile{display:flex;justify-content:center;align-items:flex-start}.alert-icon{margin:4px}.alert-icon-bg{display:flex;justify-content:center;align-items:center;border-radius:5.04px;margin:8px 16px;height:fit-content}.alert-msg-bg{padding:1rem 0rem;width:calc(100% - 70px)}.alert-persistant-btn{margin:4px!important}.alert-persistant-btn-bg{display:flex;justify-content:center;width:calc(8px + 2rem)!important;align-items:center;border-radius:5.04px;margin:8px 16px}}
|
|
4463
|
+
`),kn.fragmentShader=kn.fragmentShader.replace("vec4( vec3( 1.0 - fragCoordZ ), opacity );","vec4( ucolor * fragCoordZ * 2.0, ( 1.0 - fragCoordZ ) * 1.0 );")};const Rn=new ShaderMaterial(HorizontalBlurShader),Dn=new ShaderMaterial(VerticalBlurShader);return Dn.depthTest=Rn.depthTest=!1,[Cn,Sn,xn,wn,Rn,Dn,yn]},[Kt,jt,Ht,kt,Zt]),_n=Cn=>{pn.visible=!0,pn.material=fn,fn.uniforms.tDiffuse.value=un.texture,fn.uniforms.h.value=Cn*1/256,sn.setRenderTarget(vn),sn.render(pn,cn.current),pn.material=mn,mn.uniforms.tDiffuse.value=vn.texture,mn.uniforms.v.value=Cn*1/256,sn.setRenderTarget(un),sn.render(pn,cn.current),pn.visible=!1};let En=0,An,Tn;return useFrame(()=>{cn.current&&(_e===1/0||En<_e)&&(En++,An=tn.background,Tn=tn.overrideMaterial,en.current.visible=!1,tn.background=null,tn.overrideMaterial=dn,sn.setRenderTarget(un),sn.render(tn,cn.current),_n(Wt),Yt&&_n(Wt*.4),sn.setRenderTarget(null),en.current.visible=!0,tn.overrideMaterial=Tn,tn.background=An)}),reactExports.useEffect(()=>()=>{cn.current&&cn.current.layers.disable(Dt)},[cn]),reactExports.useEffect(()=>()=>{un.dispose(),vn.dispose(),hn.dispose(),dn.dispose(),pn.geometry.dispose(),fn.dispose(),mn.dispose()},[]),reactExports.useImperativeHandle(Qt,()=>en.current,[]),reactExports.createElement("group",_extends$1({"rotation-x":Math.PI/2},rn,{ref:en}),reactExports.createElement("mesh",{renderOrder:nn,geometry:hn,layers:2,scale:[1,-1,1],rotation:[-Math.PI/2,0,0]},reactExports.createElement("meshBasicMaterial",{transparent:!0,map:un.texture,opacity:zt,depthWrite:Jt})),reactExports.createElement("orthographicCamera",{ref:cn,args:[-jt/2,jt/2,Ht/2,-Ht/2,qt,Xt]}))}),EffectsComposer=({stores:kt})=>{const[_e,Dt]=reactExports.useState(10),Vt=kt.coreSceneStore(Wt=>Wt.bbox),Gt=kt.itemStore(Wt=>Wt.itemsSpawned),zt=kt.ghostStore(Wt=>Wt.ghostsTransform),jt=kt.coreSceneStore(Wt=>Wt.sceneSettings),Ht=kt.coreSceneStore(Wt=>Wt.shadowRefreshKey);return reactExports.useEffect(()=>{zt.length===0&&kt.coreSceneStore.getState().actions.refreshShadows()},[Gt,zt]),reactExports.useEffect(()=>{if(!Vt||!Vt.isBox3){Dt(10);return}const Wt=new Vector3(0,0,0);let qt=Wt.distanceTo(Vt.min)*2,Xt=Wt.distanceTo(Vt.max)*2,Kt=Xt>qt?Xt:qt;Kt!=1/0&&Kt!=-1/0&&(Kt+=5,Dt(Kt||10))},[Vt]),jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsxs(EffectComposer,{multisampling:4,autoClear:!1,disableNormalPass:!0,children:[jsxRuntimeExports.jsx(ToneMapping,{mode:ToneMappingMode.ACES_FILMIC,blendFunction:BlendFunction.NORMAL,adaptive:!1,resolution:256,maxLuminance:40,middleGrey:5}),jsxRuntimeExports.jsx(Outline,{...jt.outlineSettings})]}),jt.contactShadowVisibility&&jsxRuntimeExports.jsx(ContactShadows,{excludeLayer:GHOST_LAYER,position:[0,0,0],opacity:.3,scale:_e,blur:.35,far:2,resolution:256,frames:1},Ht)]})};function Hotspot({stores:kt,hotspotKey:_e}){const Dt=kt.coreSceneStore(tn=>tn.sceneSettings),Vt=kt.attachmentStore(tn=>tn.attachmentSystem),Gt=kt.hotspotStore(tn=>tn),zt=kt.hotspotStore(tn=>tn.activeHotspotData),jt=kt.itemStore(tn=>tn.lastDeletedItemData),Ht=kt.ghostStore(tn=>tn.ghostData),Wt=kt.hotspotStore(tn=>tn.actions),qt=kt.hotspotStore(tn=>tn.hotspotsVisibility),Xt=kt.hotspotStore(tn=>tn.hotspotsTempVisibility),[Kt,Yt]=reactExports.useState(null),[Zt,Jt]=reactExports.useState(!1),nn=reactExports.useRef(null),rn=reactExports.useRef(null),Qt=reactExports.useRef(null),en=reactExports.useCallback(tn=>{tn.includes(_e.itemData.skuID+"_"+_e.hotspotData.hotspotID)&&Jt(!0)},[_e]);return reactExports.useEffect(()=>en(Gt.visitedHotspotsID),[Gt,en]),reactExports.useEffect(()=>{Yt(zt?zt.hotspotData.guid:null)},[zt]),reactExports.useEffect(()=>{rn.current&&(Kt===_e.hotspotData.guid?rn.current.parentNode.classList.add("topmostActive"):rn.current.parentNode.classList.remove("topmostActive"))},[Kt]),reactExports.useEffect(()=>{nn.current&&Kt===_e.hotspotData.guid&&(nn.current.style.opacity=1)},[Kt,nn]),reactExports.useEffect(()=>{if(!Qt.current&&!jt)return;let tn=Vt.currentStructure.getNodeByGUID(_e.itemData.guid);tn?.ref&&(Qt.current.parent=tn.ref)},[Qt,Vt,qt,jt]),jsxRuntimeExports.jsx("group",{ref:Qt,position:_e.hotspotData.hotspotPointTransform,children:jsxRuntimeExports.jsx(Html,{ref:rn,zIndexRange:[6,0],style:qt&&Xt&&!Ht&&Dt.showHotspotsBtn?{opacity:"1",pointerEvents:"all",transition:"0.5s"}:{opacity:"0",pointerEvents:"none",transition:"0.5s"},children:jsxRuntimeExports.jsxs("button",{style:{display:_e.hotspotData.visibleInScene==!1?"none":"block"},ref:nn,className:Kt===_e.hotspotData.guid?"hotspot hotspot-0 active":Zt?"hotspot hotspot-0 visited":"hotspot hotspot-0",onPointerEnter:tn=>{tn.stopPropagation(),nn.current&&Kt!==_e.hotspotData.guid&&(nn.current.getClientRects()[0].left>kt.coreSceneStore.getState().canvasSize.width/1.6?nn.current.classList.add("left"):nn.current.classList.remove("left")),rn.current&&rn.current.parentNode.classList.add("topmostHover")},onPointerLeave:tn=>{tn.stopPropagation(),rn.current&&rn.current.parentNode.classList.remove("topmostHover")},id:"hotspot3D_"+_e.itemData.skuID+"_"+_e.hotspotData.hotspotID,role:"button",tabIndex:0,"aria-label":_e.hotspotData.title,onClick:tn=>{if(tn.stopPropagation(),Gt.isAnyHotspotActive&&Gt.activeHotspotData.hotspotData.guid===_e.hotspotData.guid){Wt.exitHotspot();return}Wt.clickHotspot(_e.hotspotData.hotspotID,_e.hotspotData.guid,_e.itemData.guid)},children:[jsxRuntimeExports.jsx("span",{className:"inner-circle"}),jsxRuntimeExports.jsx("span",{className:"hotspot-annotation",children:_e.hotspotData.title})]})})})}const HotspotManager=({stores:kt})=>{const{camera:_e}=useThree(),Dt=reactExports.useRef(null),Vt=reactExports.useRef(0),[Gt,zt]=reactExports.useState(null),jt=kt.hotspotStore(Qt=>Qt),Ht=kt.hotspotStore(Qt=>Qt.hotspotsHealthCheck),Wt=kt.itemStore(Qt=>Qt.lastDeletedItemData),qt=kt.hotspotStore(Qt=>Qt.hotspotsSpawned),Xt=kt.itemStore(Qt=>Qt.itemsSpawned),Kt=kt.hotspotStore(Qt=>Qt.activeHotspotData),{raycasterHotspot:Yt,worldPos:Zt}=reactExports.useMemo(()=>({raycasterHotspot:new Raycaster,worldPos:new Vector3}),[]),Jt=reactExports.useCallback(()=>{const Qt=kt.hotspotStore.getState().hotspotSpawnedForCategoryIDs,en=kt.attachmentStore.getState().attachmentSystem.globalGeometryVariants;Object.entries(Xt).forEach(([tn,sn])=>{if(!sn.hotspotsData)return;let cn=!1;Object.entries(qt).forEach(([un,hn])=>{const dn=hn.hotspotData.geometryVariantID;if(dn&&!Object.values(en).includes(dn)){cn=!0;const pn=hn.hotspotData.categoryID;Qt.splice(Qt.indexOf(pn),1),delete qt[un]}}),cn&&kt.hotspotStore.setState({hotspotSpawned:{...qt},hotspotSpawnedForCategoryIDs:Qt}),sn.hotspotsData.forEach(un=>{un.geometryVariantID&&!Object.values(en).includes(un.geometryVariantID)||un.categoryID!==""&&Qt.includes(un.categoryID)||(sn.hotspotSpawned=!0,Qt.push(un.categoryID),nn(tn,un))})})},[Xt,qt]),nn=reactExports.useCallback((Qt,en)=>{const tn=`${Xt[Qt].itemData.skuID}_${en.hotspotID}`;qt[tn]={itemData:{guid:Qt,...Xt[Qt].itemData},hotspotData:{guid:tn,...en}},kt.hotspotStore.setState({hotspotsSpawned:{...qt}})},[Xt,jt,qt]);reactExports.useEffect(()=>{if(!Wt?.itemData)return;if(Wt.hotspotSpawned){kt.hotspotStore.getState().actions.removeHotspotForItem({...Wt});const en=kt.hotspotStore.getState().hotspotSpawnedForCategoryIDs,tn=Wt.hotspotsData.map(sn=>sn.categoryID);filterArrWithCondition(en,sn=>!tn.includes(sn)),kt.hotspotStore.setState({hotspotSpawnedForCategoryIDs:en})}kt.itemStore.setState({lastDeletedItemData:null});const Qt=kt.attachmentStore.getState().attachmentSystem;Qt.currentStructure.removeNodeByGUID(Wt.itemData.guid),kt.coreSceneStore.getState().CORE_API.fireEvent(kt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.MaterialOverrides_Exists,Qt.currentStructure.materialOverrideExists()),kt.coreSceneStore.getState().actions.triggerAutoFocus()},[Wt]);const rn=(Qt,en)=>{const tn=Qt.clone().sub(_e.position),sn=tn.length();Yt.set(_e.position,tn.normalize());const cn=Yt.intersectObject(kt.coreSceneStore.getState().sceneRef);en.style.opacity=cn.length>0&&cn[0].distance<sn||Gt?.5:1};return reactExports.useEffect(()=>{zt(Kt?.hotspotData.guid||null)},[Kt]),useFrame(()=>{if(!Dt.current||Dt.current.children.length===0)return;Vt.current=(Vt.current+1)%Dt.current.children.length;const Qt=Object.keys(qt)[Vt.current];if(!qt[Qt])return;const en=`hotspot3D_${qt[Qt].itemData.skuID}_${qt[Qt].hotspotData.hotspotID}`,tn=kt.coreSceneStore.getState().CORE_API.coreWCRef.shadowRootRef.getElementById(en);Gt===Qt||!tn||(Dt.current.children[Vt.current].getWorldPosition(Zt),rn(Zt,tn))}),reactExports.useEffect(()=>{Jt()},[Object.keys(Xt).length,Ht]),reactExports.useEffect(()=>()=>{kt.hotspotStore.setState({hotspotsSpawned:{}}),kt.hotspotStore.setState({hotspotSpawnedForCategoryIDs:[]})},[]),jt.hotspotsVisibility&&jsxRuntimeExports.jsx("group",{name:"#GRP_HotspotManager",ref:Dt,children:Object.entries(qt).map(([Qt,en])=>jsxRuntimeExports.jsx(Hotspot,{stores:kt,hotspotKey:en},Qt))})};var objectTypes$3={boolean:!1,function:!0,object:!0,number:!1,string:!1,undefined:!1},lodash__objecttypes=objectTypes$3,objectTypes$2=lodash__objecttypes;function isObject$4(kt){return!!(kt&&objectTypes$2[typeof kt])}var lodash_isobject=isObject$4,objectProto$1=Object.prototype,toString=objectProto$1.toString,reNative$4=RegExp("^"+String(toString).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),lodash__renative=reNative$4,objectTypes$1=lodash__objecttypes,objectProto=Object.prototype,hasOwnProperty=objectProto.hasOwnProperty,shimKeys$1=function(kt){var _e,Dt=kt,Vt=[];if(!Dt||!objectTypes$1[typeof kt])return Vt;for(_e in Dt)hasOwnProperty.call(Dt,_e)&&Vt.push(_e);return Vt},lodash__shimkeys=shimKeys$1,isObject$3=lodash_isobject,reNative$3=lodash__renative,shimKeys=lodash__shimkeys,nativeKeys=reNative$3.test(nativeKeys=Object.keys)&&nativeKeys,keys$2=nativeKeys?function(kt){return isObject$3(kt)?nativeKeys(kt):[]}:shimKeys,lodash_keys=keys$2;function noop$1(){}var lodash_noop=noop$1,isObject$2=lodash_isobject,reNative$2=lodash__renative,nativeCreate=reNative$2.test(nativeCreate=Object.create)&&nativeCreate;function baseCreate$2(kt,_e){return isObject$2(kt)?nativeCreate(kt):{}}nativeCreate||(baseCreate$2=function(){function kt(){}return function(_e){if(isObject$2(_e)){kt.prototype=_e;var Dt=new kt;kt.prototype=null}return Dt||commonjsGlobal.Object()}}());var lodash__basecreate=baseCreate$2,noop=lodash_noop,reNative$1=lodash__renative,descriptor={configurable:!1,enumerable:!1,value:null,writable:!1},defineProperty=function(){try{var kt={},_e=reNative$1.test(_e=Object.defineProperty)&&_e,Dt=_e(kt,kt,kt)&&_e}catch{}return Dt}(),setBindData$3=defineProperty?function(kt,_e){descriptor.value=_e,defineProperty(kt,"__bindData__",descriptor)}:noop,lodash__setbinddata=setBindData$3,baseCreate$1=lodash__basecreate,isObject$1=lodash_isobject,setBindData$2=lodash__setbinddata,arrayRef$2=[],push$2=arrayRef$2.push;function baseBind$1(kt){var _e=kt[0],Dt=kt[2],Vt=kt[4];function Gt(){if(Dt){var zt=Dt.slice();push$2.apply(zt,arguments)}if(this instanceof Gt){var jt=baseCreate$1(_e.prototype),Ht=_e.apply(jt,zt||arguments);return isObject$1(Ht)?Ht:jt}return _e.apply(Vt,zt||arguments)}return setBindData$2(Gt,kt),Gt}var lodash__basebind=baseBind$1;function slice$2(kt,_e,Dt){_e||(_e=0),typeof Dt>"u"&&(Dt=kt?kt.length:0);for(var Vt=-1,Gt=Dt-_e||0,zt=Array(Gt<0?0:Gt);++Vt<Gt;)zt[Vt]=kt[_e+Vt];return zt}var lodash__slice=slice$2,baseCreate=lodash__basecreate,isObject=lodash_isobject,setBindData$1=lodash__setbinddata,slice$1=lodash__slice,arrayRef$1=[],push$1=arrayRef$1.push;function baseCreateWrapper$1(kt){var _e=kt[0],Dt=kt[1],Vt=kt[2],Gt=kt[3],zt=kt[4],jt=kt[5],Ht=Dt&1,Wt=Dt&2,qt=Dt&4,Xt=Dt&8,Kt=_e;function Yt(){var Zt=Ht?zt:this;if(Vt){var Jt=Vt.slice();push$1.apply(Jt,arguments)}if((Gt||qt)&&(Jt||(Jt=slice$1(arguments)),Gt&&push$1.apply(Jt,Gt),qt&&Jt.length<jt))return Dt|=16,baseCreateWrapper$1([_e,Xt?Dt:Dt&-4,Jt,null,zt,jt]);if(Jt||(Jt=arguments),Wt&&(_e=Zt[Kt]),this instanceof Yt){Zt=baseCreate(_e.prototype);var nn=_e.apply(Zt,Jt);return isObject(nn)?nn:Zt}return _e.apply(Zt,Jt)}return setBindData$1(Yt,kt),Yt}var lodash__basecreatewrapper=baseCreateWrapper$1;function isFunction$1(kt){return typeof kt=="function"}var lodash_isfunction=isFunction$1,baseBind=lodash__basebind,baseCreateWrapper=lodash__basecreatewrapper,isFunction=lodash_isfunction,arrayRef=[],push=arrayRef.push;function createWrapper$1(kt,_e,Dt,Vt,Gt,zt){var jt=_e&1,Ht=_e&2,Wt=_e&4,qt=_e&16,Xt=_e&32;if(!Ht&&!isFunction(kt))throw new TypeError;qt&&!Dt.length&&(_e&=-17,qt=Dt=!1),Xt&&!Vt.length&&(_e&=-33,Xt=Vt=!1);var Kt=kt&&kt.__bindData__;if(Kt&&Kt!==!0)return Kt=Kt.slice(),jt&&!(Kt[1]&1)&&(Kt[4]=Gt),!jt&&Kt[1]&1&&(_e|=8),Wt&&!(Kt[1]&4)&&(Kt[5]=zt),qt&&push.apply(Kt[2]||(Kt[2]=[]),Dt),Xt&&push.apply(Kt[3]||(Kt[3]=[]),Vt),Kt[1]|=_e,createWrapper$1.apply(null,Kt);var Yt=_e==1||_e===17?baseBind:baseCreateWrapper;return Yt([kt,_e,Dt,Vt,Gt,zt])}var lodash__createwrapper=createWrapper$1,createWrapper=lodash__createwrapper,slice=lodash__slice;function bind$1(kt,_e){return arguments.length>2?createWrapper(kt,17,slice(arguments,2),null,_e):createWrapper(kt,1,null,null,_e)}var lodash_bind=bind$1;function identity$1(kt){return kt}var lodash_identity=identity$1,reNative=lodash__renative,reThis$1=/\bthis\b/,support$1={};support$1.funcDecomp=!reNative.test(commonjsGlobal.WinRTError)&&reThis$1.test(function(){return this});support$1.funcNames=typeof Function.name=="string";var lodash_support=support$1,bind=lodash_bind,identity=lodash_identity,setBindData=lodash__setbinddata,support=lodash_support,reFuncName=/^\s*function[ \n\r\t]+\w/,reThis=/\bthis\b/,fnToString=Function.prototype.toString;function baseCreateCallback$2(kt,_e,Dt){if(typeof kt!="function")return identity;if(typeof _e>"u"||!("prototype"in kt))return kt;var Vt=kt.__bindData__;if(typeof Vt>"u"&&(support.funcNames&&(Vt=!kt.name),Vt=Vt||!support.funcDecomp,!Vt)){var Gt=fnToString.call(kt);support.funcNames||(Vt=!reFuncName.test(Gt)),Vt||(Vt=reThis.test(Gt),setBindData(kt,Vt))}if(Vt===!1||Vt!==!0&&Vt[1]&1)return kt;switch(Dt){case 1:return function(zt){return kt.call(_e,zt)};case 2:return function(zt,jt){return kt.call(_e,zt,jt)};case 3:return function(zt,jt,Ht){return kt.call(_e,zt,jt,Ht)};case 4:return function(zt,jt,Ht,Wt){return kt.call(_e,zt,jt,Ht,Wt)}}return bind(kt,_e)}var lodash__basecreatecallback=baseCreateCallback$2,baseCreateCallback$1=lodash__basecreatecallback,keys$1=lodash_keys,objectTypes=lodash__objecttypes,forOwn$1=function(kt,_e,Dt){var Vt,Gt=kt,zt=Gt;if(!Gt||!objectTypes[typeof Gt])return zt;_e=_e&&typeof Dt>"u"?_e:baseCreateCallback$1(_e,Dt,3);for(var jt=-1,Ht=objectTypes[typeof Gt]&&keys$1(Gt),Wt=Ht?Ht.length:0;++jt<Wt;)if(Vt=Ht[jt],_e(Gt[Vt],Vt,kt)===!1)return zt;return zt},lodash_forown=forOwn$1,baseCreateCallback=lodash__basecreatecallback,forOwn=lodash_forown;function forEach(kt,_e,Dt){var Vt=-1,Gt=kt?kt.length:0;if(_e=_e&&typeof Dt>"u"?_e:baseCreateCallback(_e,Dt,3),typeof Gt=="number")for(;++Vt<Gt&&_e(kt[Vt],Vt,kt)!==!1;);else forOwn(kt,_e);return kt}var lodash_foreach=forEach,metric$b,imperial$9;metric$b={mm:{name:{singular:"Millimeter",plural:"Millimeters"},to_anchor:1/1e3},cm:{name:{singular:"Centimeter",plural:"Centimeters"},to_anchor:1/100},m:{name:{singular:"Meter",plural:"Meters"},to_anchor:1},km:{name:{singular:"Kilometer",plural:"Kilometers"},to_anchor:1e3}};imperial$9={in:{name:{singular:"Inch",plural:"Inches"},to_anchor:1/12},yd:{name:{singular:"Yard",plural:"Yards"},to_anchor:3},"ft-us":{name:{singular:"US Survey Foot",plural:"US Survey Feet"},to_anchor:1.000002},ft:{name:{singular:"Foot",plural:"Feet"},to_anchor:1},mi:{name:{singular:"Mile",plural:"Miles"},to_anchor:5280}};var length={metric:metric$b,imperial:imperial$9,_anchors:{metric:{unit:"m",ratio:3.28084},imperial:{unit:"ft",ratio:1/3.28084}}},metric$a,imperial$8;metric$a={mm2:{name:{singular:"Square Millimeter",plural:"Square Millimeters"},to_anchor:1/1e6},cm2:{name:{singular:"Centimeter",plural:"Centimeters"},to_anchor:1/1e4},m2:{name:{singular:"Square Meter",plural:"Square Meters"},to_anchor:1},ha:{name:{singular:"Hectare",plural:"Hectares"},to_anchor:1e4},km2:{name:{singular:"Square Kilometer",plural:"Square Kilometers"},to_anchor:1e6}};imperial$8={in2:{name:{singular:"Square Inch",plural:"Square Inches"},to_anchor:1/144},yd2:{name:{singular:"Square Yard",plural:"Square Yards"},to_anchor:9},ft2:{name:{singular:"Square Foot",plural:"Square Feet"},to_anchor:1},ac:{name:{singular:"Acre",plural:"Acres"},to_anchor:43560},mi2:{name:{singular:"Square Mile",plural:"Square Miles"},to_anchor:27878400}};var area={metric:metric$a,imperial:imperial$8,_anchors:{metric:{unit:"m2",ratio:10.7639},imperial:{unit:"ft2",ratio:1/10.7639}}},metric$9,imperial$7;metric$9={mcg:{name:{singular:"Microgram",plural:"Micrograms"},to_anchor:1/1e6},mg:{name:{singular:"Milligram",plural:"Milligrams"},to_anchor:1/1e3},g:{name:{singular:"Gram",plural:"Grams"},to_anchor:1},kg:{name:{singular:"Kilogram",plural:"Kilograms"},to_anchor:1e3},mt:{name:{singular:"Metric Tonne",plural:"Metric Tonnes"},to_anchor:1e6}};imperial$7={oz:{name:{singular:"Ounce",plural:"Ounces"},to_anchor:1/16},lb:{name:{singular:"Pound",plural:"Pounds"},to_anchor:1},t:{name:{singular:"Ton",plural:"Tons"},to_anchor:2e3}};var mass={metric:metric$9,imperial:imperial$7,_anchors:{metric:{unit:"g",ratio:1/453.592},imperial:{unit:"lb",ratio:453.592}}},metric$8,imperial$6;metric$8={mm3:{name:{singular:"Cubic Millimeter",plural:"Cubic Millimeters"},to_anchor:1/1e6},cm3:{name:{singular:"Cubic Centimeter",plural:"Cubic Centimeters"},to_anchor:1/1e3},ml:{name:{singular:"Millilitre",plural:"Millilitres"},to_anchor:1/1e3},cl:{name:{singular:"Centilitre",plural:"Centilitres"},to_anchor:1/100},dl:{name:{singular:"Decilitre",plural:"Decilitres"},to_anchor:1/10},l:{name:{singular:"Litre",plural:"Litres"},to_anchor:1},kl:{name:{singular:"Kilolitre",plural:"Kilolitres"},to_anchor:1e3},m3:{name:{singular:"Cubic meter",plural:"Cubic meters"},to_anchor:1e3},km3:{name:{singular:"Cubic kilometer",plural:"Cubic kilometers"},to_anchor:1e12},krm:{name:{singular:"Matsked",plural:"Matskedar"},to_anchor:1/1e3},tsk:{name:{singular:"Tesked",plural:"Teskedar"},to_anchor:5/1e3},msk:{name:{singular:"Matsked",plural:"Matskedar"},to_anchor:15/1e3},kkp:{name:{singular:"Kaffekopp",plural:"Kaffekoppar"},to_anchor:150/1e3},glas:{name:{singular:"Glas",plural:"Glas"},to_anchor:200/1e3},kanna:{name:{singular:"Kanna",plural:"Kannor"},to_anchor:2.617}};imperial$6={tsp:{name:{singular:"Teaspoon",plural:"Teaspoons"},to_anchor:1/6},Tbs:{name:{singular:"Tablespoon",plural:"Tablespoons"},to_anchor:1/2},in3:{name:{singular:"Cubic inch",plural:"Cubic inches"},to_anchor:.55411},"fl-oz":{name:{singular:"Fluid Ounce",plural:"Fluid Ounces"},to_anchor:1},cup:{name:{singular:"Cup",plural:"Cups"},to_anchor:8},pnt:{name:{singular:"Pint",plural:"Pints"},to_anchor:16},qt:{name:{singular:"Quart",plural:"Quarts"},to_anchor:32},gal:{name:{singular:"Gallon",plural:"Gallons"},to_anchor:128},ft3:{name:{singular:"Cubic foot",plural:"Cubic feet"},to_anchor:957.506},yd3:{name:{singular:"Cubic yard",plural:"Cubic yards"},to_anchor:25852.7}};var volume={metric:metric$8,imperial:imperial$6,_anchors:{metric:{unit:"l",ratio:33.8140226},imperial:{unit:"fl-oz",ratio:1/33.8140226}}},metric$7;metric$7={ea:{name:{singular:"Each",plural:"Each"},to_anchor:1},dz:{name:{singular:"Dozen",plural:"Dozens"},to_anchor:12}};var each$1={metric:metric$7,imperial:{},_anchors:{metric:{unit:"ea",ratio:1}}},metric$6,imperial$5;metric$6={C:{name:{singular:"degree Celsius",plural:"degrees Celsius"},to_anchor:1,anchor_shift:0},K:{name:{singular:"degree Kelvin",plural:"degrees Kelvin"},to_anchor:1,anchor_shift:273.15}};imperial$5={F:{name:{singular:"degree Fahrenheit",plural:"degrees Fahrenheit"},to_anchor:1},R:{name:{singular:"degree Rankine",plural:"degrees Rankine"},to_anchor:1,anchor_shift:459.67}};var temperature={metric:metric$6,imperial:imperial$5,_anchors:{metric:{unit:"C",transform:function(kt){return kt/(5/9)+32}},imperial:{unit:"F",transform:function(kt){return(kt-32)*(5/9)}}}},time,daysInYear=365.25;time={ns:{name:{singular:"Nanosecond",plural:"Nanoseconds"},to_anchor:1/1e9},mu:{name:{singular:"Microsecond",plural:"Microseconds"},to_anchor:1/1e6},ms:{name:{singular:"Millisecond",plural:"Milliseconds"},to_anchor:1/1e3},s:{name:{singular:"Second",plural:"Seconds"},to_anchor:1},min:{name:{singular:"Minute",plural:"Minutes"},to_anchor:60},h:{name:{singular:"Hour",plural:"Hours"},to_anchor:60*60},d:{name:{singular:"Day",plural:"Days"},to_anchor:60*60*24},week:{name:{singular:"Week",plural:"Weeks"},to_anchor:60*60*24*7},month:{name:{singular:"Month",plural:"Months"},to_anchor:60*60*24*daysInYear/12},year:{name:{singular:"Year",plural:"Years"},to_anchor:60*60*24*daysInYear}};var time_1={metric:time,_anchors:{metric:{unit:"s",ratio:1}}},bits,bytes;bits={b:{name:{singular:"Bit",plural:"Bits"},to_anchor:1},Kb:{name:{singular:"Kilobit",plural:"Kilobits"},to_anchor:1024},Mb:{name:{singular:"Megabit",plural:"Megabits"},to_anchor:1048576},Gb:{name:{singular:"Gigabit",plural:"Gigabits"},to_anchor:1073741824},Tb:{name:{singular:"Terabit",plural:"Terabits"},to_anchor:1099511627776}};bytes={B:{name:{singular:"Byte",plural:"Bytes"},to_anchor:1},KB:{name:{singular:"Kilobyte",plural:"Kilobytes"},to_anchor:1024},MB:{name:{singular:"Megabyte",plural:"Megabytes"},to_anchor:1048576},GB:{name:{singular:"Gigabyte",plural:"Gigabytes"},to_anchor:1073741824},TB:{name:{singular:"Terabyte",plural:"Terabytes"},to_anchor:1099511627776}};var digital={bits,bytes,_anchors:{bits:{unit:"b",ratio:1/8},bytes:{unit:"B",ratio:8}}},metric$5;metric$5={ppm:{name:{singular:"Part-per Million",plural:"Parts-per Million"},to_anchor:1},ppb:{name:{singular:"Part-per Billion",plural:"Parts-per Billion"},to_anchor:.001},ppt:{name:{singular:"Part-per Trillion",plural:"Parts-per Trillion"},to_anchor:1e-6},ppq:{name:{singular:"Part-per Quadrillion",plural:"Parts-per Quadrillion"},to_anchor:1e-9}};var partsPer={metric:metric$5,imperial:{},_anchors:{metric:{unit:"ppm",ratio:1e-6}}},metric$4,imperial$4;metric$4={"m/s":{name:{singular:"Metre per second",plural:"Metres per second"},to_anchor:3.6},"km/h":{name:{singular:"Kilometre per hour",plural:"Kilometres per hour"},to_anchor:1}};imperial$4={"m/h":{name:{singular:"Mile per hour",plural:"Miles per hour"},to_anchor:1},knot:{name:{singular:"Knot",plural:"Knots"},to_anchor:1.150779},"ft/s":{name:{singular:"Foot per second",plural:"Feet per second"},to_anchor:.681818}};var speed={metric:metric$4,imperial:imperial$4,_anchors:{metric:{unit:"km/h",ratio:1/1.609344},imperial:{unit:"m/h",ratio:1.609344}}},metric$3,imperial$3;metric$3={"min/km":{name:{singular:"Minute per kilometre",plural:"Minutes per kilometre"},to_anchor:.06},"s/m":{name:{singular:"Second per metre",plural:"Seconds per metre"},to_anchor:1}};imperial$3={"min/mi":{name:{singular:"Minute per mile",plural:"Minutes per mile"},to_anchor:.0113636},"s/ft":{name:{singular:"Second per foot",plural:"Seconds per foot"},to_anchor:1}};var pace={metric:metric$3,imperial:imperial$3,_anchors:{metric:{unit:"s/m",ratio:.3048},imperial:{unit:"s/ft",ratio:1/.3048}}},metric$2,imperial$2;metric$2={Pa:{name:{singular:"pascal",plural:"pascals"},to_anchor:1/1e3},kPa:{name:{singular:"kilopascal",plural:"kilopascals"},to_anchor:1},MPa:{name:{singular:"megapascal",plural:"megapascals"},to_anchor:1e3},hPa:{name:{singular:"hectopascal",plural:"hectopascals"},to_anchor:1/10},bar:{name:{singular:"bar",plural:"bar"},to_anchor:100},torr:{name:{singular:"torr",plural:"torr"},to_anchor:101325/76e4}};imperial$2={psi:{name:{singular:"pound per square inch",plural:"pounds per square inch"},to_anchor:1/1e3},ksi:{name:{singular:"kilopound per square inch",plural:"kilopound per square inch"},to_anchor:1}};var pressure={metric:metric$2,imperial:imperial$2,_anchors:{metric:{unit:"kPa",ratio:.00014503768078},imperial:{unit:"psi",ratio:1/.00014503768078}}},current;current={A:{name:{singular:"Ampere",plural:"Amperes"},to_anchor:1},mA:{name:{singular:"Milliampere",plural:"Milliamperes"},to_anchor:.001},kA:{name:{singular:"Kiloampere",plural:"Kiloamperes"},to_anchor:1e3}};var current_1={metric:current,_anchors:{metric:{unit:"A",ratio:1}}},voltage;voltage={V:{name:{singular:"Volt",plural:"Volts"},to_anchor:1},mV:{name:{singular:"Millivolt",plural:"Millivolts"},to_anchor:.001},kV:{name:{singular:"Kilovolt",plural:"Kilovolts"},to_anchor:1e3}};var voltage_1={metric:voltage,_anchors:{metric:{unit:"V",ratio:1}}},power;power={W:{name:{singular:"Watt",plural:"Watts"},to_anchor:1},mW:{name:{singular:"Milliwatt",plural:"Milliwatts"},to_anchor:.001},kW:{name:{singular:"Kilowatt",plural:"Kilowatts"},to_anchor:1e3},MW:{name:{singular:"Megawatt",plural:"Megawatts"},to_anchor:1e6},GW:{name:{singular:"Gigawatt",plural:"Gigawatts"},to_anchor:1e9}};var power_1={metric:power,_anchors:{metric:{unit:"W",ratio:1}}},reactivePower;reactivePower={VAR:{name:{singular:"Volt-Ampere Reactive",plural:"Volt-Amperes Reactive"},to_anchor:1},mVAR:{name:{singular:"Millivolt-Ampere Reactive",plural:"Millivolt-Amperes Reactive"},to_anchor:.001},kVAR:{name:{singular:"Kilovolt-Ampere Reactive",plural:"Kilovolt-Amperes Reactive"},to_anchor:1e3},MVAR:{name:{singular:"Megavolt-Ampere Reactive",plural:"Megavolt-Amperes Reactive"},to_anchor:1e6},GVAR:{name:{singular:"Gigavolt-Ampere Reactive",plural:"Gigavolt-Amperes Reactive"},to_anchor:1e9}};var reactivePower_1={metric:reactivePower,_anchors:{metric:{unit:"VAR",ratio:1}}},apparentPower;apparentPower={VA:{name:{singular:"Volt-Ampere",plural:"Volt-Amperes"},to_anchor:1},mVA:{name:{singular:"Millivolt-Ampere",plural:"Millivolt-Amperes"},to_anchor:.001},kVA:{name:{singular:"Kilovolt-Ampere",plural:"Kilovolt-Amperes"},to_anchor:1e3},MVA:{name:{singular:"Megavolt-Ampere",plural:"Megavolt-Amperes"},to_anchor:1e6},GVA:{name:{singular:"Gigavolt-Ampere",plural:"Gigavolt-Amperes"},to_anchor:1e9}};var apparentPower_1={metric:apparentPower,_anchors:{metric:{unit:"VA",ratio:1}}},energy;energy={Wh:{name:{singular:"Watt-hour",plural:"Watt-hours"},to_anchor:3600},mWh:{name:{singular:"Milliwatt-hour",plural:"Milliwatt-hours"},to_anchor:3.6},kWh:{name:{singular:"Kilowatt-hour",plural:"Kilowatt-hours"},to_anchor:36e5},MWh:{name:{singular:"Megawatt-hour",plural:"Megawatt-hours"},to_anchor:36e8},GWh:{name:{singular:"Gigawatt-hour",plural:"Gigawatt-hours"},to_anchor:36e11},J:{name:{singular:"Joule",plural:"Joules"},to_anchor:1},kJ:{name:{singular:"Kilojoule",plural:"Kilojoules"},to_anchor:1e3}};var energy_1={metric:energy,_anchors:{metric:{unit:"J",ratio:1}}},reactiveEnergy;reactiveEnergy={VARh:{name:{singular:"Volt-Ampere Reactive Hour",plural:"Volt-Amperes Reactive Hour"},to_anchor:1},mVARh:{name:{singular:"Millivolt-Ampere Reactive Hour",plural:"Millivolt-Amperes Reactive Hour"},to_anchor:.001},kVARh:{name:{singular:"Kilovolt-Ampere Reactive Hour",plural:"Kilovolt-Amperes Reactive Hour"},to_anchor:1e3},MVARh:{name:{singular:"Megavolt-Ampere Reactive Hour",plural:"Megavolt-Amperes Reactive Hour"},to_anchor:1e6},GVARh:{name:{singular:"Gigavolt-Ampere Reactive Hour",plural:"Gigavolt-Amperes Reactive Hour"},to_anchor:1e9}};var reactiveEnergy_1={metric:reactiveEnergy,_anchors:{metric:{unit:"VARh",ratio:1}}},metric$1,imperial$1;metric$1={"mm3/s":{name:{singular:"Cubic Millimeter per second",plural:"Cubic Millimeters per second"},to_anchor:1/1e6},"cm3/s":{name:{singular:"Cubic Centimeter per second",plural:"Cubic Centimeters per second"},to_anchor:1/1e3},"ml/s":{name:{singular:"Millilitre per second",plural:"Millilitres per second"},to_anchor:1/1e3},"cl/s":{name:{singular:"Centilitre per second",plural:"Centilitres per second"},to_anchor:1/100},"dl/s":{name:{singular:"Decilitre per second",plural:"Decilitres per second"},to_anchor:1/10},"l/s":{name:{singular:"Litre per second",plural:"Litres per second"},to_anchor:1},"l/min":{name:{singular:"Litre per minute",plural:"Litres per minute"},to_anchor:1/60},"l/h":{name:{singular:"Litre per hour",plural:"Litres per hour"},to_anchor:1/3600},"kl/s":{name:{singular:"Kilolitre per second",plural:"Kilolitres per second"},to_anchor:1e3},"kl/min":{name:{singular:"Kilolitre per minute",plural:"Kilolitres per minute"},to_anchor:50/3},"kl/h":{name:{singular:"Kilolitre per hour",plural:"Kilolitres per hour"},to_anchor:5/18},"m3/s":{name:{singular:"Cubic meter per second",plural:"Cubic meters per second"},to_anchor:1e3},"m3/min":{name:{singular:"Cubic meter per minute",plural:"Cubic meters per minute"},to_anchor:50/3},"m3/h":{name:{singular:"Cubic meter per hour",plural:"Cubic meters per hour"},to_anchor:5/18},"km3/s":{name:{singular:"Cubic kilometer per second",plural:"Cubic kilometers per second"},to_anchor:1e12}};imperial$1={"tsp/s":{name:{singular:"Teaspoon per second",plural:"Teaspoons per second"},to_anchor:1/6},"Tbs/s":{name:{singular:"Tablespoon per second",plural:"Tablespoons per second"},to_anchor:1/2},"in3/s":{name:{singular:"Cubic inch per second",plural:"Cubic inches per second"},to_anchor:.55411},"in3/min":{name:{singular:"Cubic inch per minute",plural:"Cubic inches per minute"},to_anchor:.55411/60},"in3/h":{name:{singular:"Cubic inch per hour",plural:"Cubic inches per hour"},to_anchor:.55411/3600},"fl-oz/s":{name:{singular:"Fluid Ounce per second",plural:"Fluid Ounces per second"},to_anchor:1},"fl-oz/min":{name:{singular:"Fluid Ounce per minute",plural:"Fluid Ounces per minute"},to_anchor:1/60},"fl-oz/h":{name:{singular:"Fluid Ounce per hour",plural:"Fluid Ounces per hour"},to_anchor:1/3600},"cup/s":{name:{singular:"Cup per second",plural:"Cups per second"},to_anchor:8},"pnt/s":{name:{singular:"Pint per second",plural:"Pints per second"},to_anchor:16},"pnt/min":{name:{singular:"Pint per minute",plural:"Pints per minute"},to_anchor:4/15},"pnt/h":{name:{singular:"Pint per hour",plural:"Pints per hour"},to_anchor:1/225},"qt/s":{name:{singular:"Quart per second",plural:"Quarts per second"},to_anchor:32},"gal/s":{name:{singular:"Gallon per second",plural:"Gallons per second"},to_anchor:128},"gal/min":{name:{singular:"Gallon per minute",plural:"Gallons per minute"},to_anchor:32/15},"gal/h":{name:{singular:"Gallon per hour",plural:"Gallons per hour"},to_anchor:8/225},"ft3/s":{name:{singular:"Cubic foot per second",plural:"Cubic feet per second"},to_anchor:957.506},"ft3/min":{name:{singular:"Cubic foot per minute",plural:"Cubic feet per minute"},to_anchor:957.506/60},"ft3/h":{name:{singular:"Cubic foot per hour",plural:"Cubic feet per hour"},to_anchor:957.506/3600},"yd3/s":{name:{singular:"Cubic yard per second",plural:"Cubic yards per second"},to_anchor:25852.7},"yd3/min":{name:{singular:"Cubic yard per minute",plural:"Cubic yards per minute"},to_anchor:25852.7/60},"yd3/h":{name:{singular:"Cubic yard per hour",plural:"Cubic yards per hour"},to_anchor:25852.7/3600}};var volumeFlowRate={metric:metric$1,imperial:imperial$1,_anchors:{metric:{unit:"l/s",ratio:33.8140227},imperial:{unit:"fl-oz/s",ratio:1/33.8140227}}},metric,imperial;metric={lx:{name:{singular:"Lux",plural:"Lux"},to_anchor:1}};imperial={"ft-cd":{name:{singular:"Foot-candle",plural:"Foot-candles"},to_anchor:1}};var illuminance={metric,imperial,_anchors:{metric:{unit:"lx",ratio:1/10.76391},imperial:{unit:"ft-cd",ratio:10.76391}}},frequency;frequency={mHz:{name:{singular:"millihertz",plural:"millihertz"},to_anchor:1/1e3},Hz:{name:{singular:"hertz",plural:"hertz"},to_anchor:1},kHz:{name:{singular:"kilohertz",plural:"kilohertz"},to_anchor:1e3},MHz:{name:{singular:"megahertz",plural:"megahertz"},to_anchor:1e3*1e3},GHz:{name:{singular:"gigahertz",plural:"gigahertz"},to_anchor:1e3*1e3*1e3},THz:{name:{singular:"terahertz",plural:"terahertz"},to_anchor:1e3*1e3*1e3*1e3},rpm:{name:{singular:"rotation per minute",plural:"rotations per minute"},to_anchor:1/60},"deg/s":{name:{singular:"degree per second",plural:"degrees per second"},to_anchor:1/360},"rad/s":{name:{singular:"radian per second",plural:"radians per second"},to_anchor:1/(Math.PI*2)}};var frequency_1={metric:frequency,_anchors:{frequency:{unit:"hz",ratio:1}}},angle;angle={rad:{name:{singular:"radian",plural:"radians"},to_anchor:180/Math.PI},deg:{name:{singular:"degree",plural:"degrees"},to_anchor:1},grad:{name:{singular:"gradian",plural:"gradians"},to_anchor:9/10},arcmin:{name:{singular:"arcminute",plural:"arcminutes"},to_anchor:1/60},arcsec:{name:{singular:"arcsecond",plural:"arcseconds"},to_anchor:1/3600}};var angle_1={metric:angle,_anchors:{metric:{unit:"deg",ratio:1}}},convert,keys=lodash_keys,each=lodash_foreach,measures={length,area,mass,volume,each:each$1,temperature,time:time_1,digital,partsPer,speed,pace,pressure,current:current_1,voltage:voltage_1,power:power_1,reactivePower:reactivePower_1,apparentPower:apparentPower_1,energy:energy_1,reactiveEnergy:reactiveEnergy_1,volumeFlowRate,illuminance,frequency:frequency_1,angle:angle_1},Converter;Converter=function(kt,_e){_e?this.val=kt/_e:this.val=kt};Converter.prototype.from=function(kt){if(this.destination)throw new Error(".from must be called before .to");return this.origin=this.getUnit(kt),this.origin||this.throwUnsupportedUnitError(kt),this};Converter.prototype.to=function(kt){if(!this.origin)throw new Error(".to must be called after .from");this.destination=this.getUnit(kt);var _e,Dt;if(this.destination||this.throwUnsupportedUnitError(kt),this.origin.abbr===this.destination.abbr)return this.val;if(this.destination.measure!=this.origin.measure)throw new Error("Cannot convert incompatible measures of "+this.destination.measure+" and "+this.origin.measure);return _e=this.val*this.origin.unit.to_anchor,this.origin.unit.anchor_shift&&(_e-=this.origin.unit.anchor_shift),this.origin.system!=this.destination.system&&(Dt=measures[this.origin.measure]._anchors[this.origin.system].transform,typeof Dt=="function"?_e=Dt(_e):_e*=measures[this.origin.measure]._anchors[this.origin.system].ratio),this.destination.unit.anchor_shift&&(_e+=this.destination.unit.anchor_shift),_e/this.destination.unit.to_anchor};Converter.prototype.toBest=function(_e){if(!this.origin)throw new Error(".toBest must be called after .from");var _e=Object.assign({exclude:[],cutOffNumber:1},_e),Dt;return each(this.possibilities(),function(Vt){var Gt=this.describe(Vt),zt=_e.exclude.indexOf(Vt)===-1;if(zt&&Gt.system===this.origin.system){var jt=this.to(Vt);(!Dt||jt>=_e.cutOffNumber&&jt<Dt.val)&&(Dt={val:jt,unit:Vt,singular:Gt.singular,plural:Gt.plural})}}.bind(this)),Dt};Converter.prototype.getUnit=function(kt){var _e;return each(measures,function(Dt,Vt){if(each(Dt,function(Gt,zt){if(zt=="_anchors"||(each(Gt,function(jt,Ht){if(Ht==kt)return _e={abbr:kt,measure:Vt,system:zt,unit:jt},!1}),_e))return!1}),_e)return!1}),_e};var describe=function(kt){return{abbr:kt.abbr,measure:kt.measure,system:kt.system,singular:kt.unit.name.singular,plural:kt.unit.name.plural}};Converter.prototype.describe=function(kt){var _e=Converter.prototype.getUnit(kt),Dt=null;try{Dt=describe(_e)}catch{this.throwUnsupportedUnitError(kt)}return Dt};Converter.prototype.list=function(kt){var _e=[];return each(measures,function(Dt,Vt){kt&&kt!==Vt||each(Dt,function(Gt,zt){if(zt=="_anchors")return!1;each(Gt,function(jt,Ht){_e=_e.concat(describe({abbr:Ht,measure:Vt,system:zt,unit:jt}))})})}),_e};Converter.prototype.throwUnsupportedUnitError=function(kt){var _e=[];throw each(measures,function(Dt,Vt){each(Dt,function(Gt,zt){if(zt=="_anchors")return!1;_e=_e.concat(keys(Gt))})}),new Error("Unsupported unit "+kt+", use one of: "+_e.join(", "))};Converter.prototype.possibilities=function(kt){var _e=[];return!this.origin&&!kt?each(keys(measures),function(Dt){each(measures[Dt],function(Vt,Gt){if(Gt=="_anchors")return!1;_e=_e.concat(keys(Vt))})}):(kt=kt||this.origin.measure,each(measures[kt],function(Dt,Vt){if(Vt=="_anchors")return!1;_e=_e.concat(keys(Dt))})),_e};Converter.prototype.measures=function(){return keys(measures)};convert=function(kt){return new Converter(kt)};var lib=convert;const convert$1=getDefaultExportFromCjs(lib),DimensionsManager=({stores:kt})=>{const _e=kt.itemStore(Jt=>Jt.itemsSpawned),{showDimensions:Dt,sceneSettings:Vt,boundData:Gt}=kt.coreSceneStore(),{sceneScaleUnit:zt,sceneScaleDisplayUnit:jt}=Vt||{},Ht=reactExports.useRef(null),Wt=reactExports.useRef(0),qt=reactExports.useMemo(()=>{if(!Vt)return"#000000";const{r:Jt,g:nn,b:rn}=Vt.dimensionColor;return rgbToHex(Jt,nn,rn)},[Vt]),[Xt,Kt]=reactExports.useMemo(()=>{if(!Gt||!Gt.size)return[.2,.01];const Jt=Math.min(Gt.size.x,Gt.size.z),nn=Math.min(Jt/20,.005);return[Math.min(Jt,.2),nn]},[Gt]);reactExports.useEffect(()=>{Wt.current=0},[Dt]),useFrame(()=>{Ht.current&&Wt.current<1&&(Wt.current+=.05,Ht.current.scale.set(Wt.current,Wt.current,Wt.current))});const Yt=Jt=>jsxRuntimeExports.jsxs(Html,{center:!0,className:"dimensionsText ignore",style:{opacity:"1"},zIndexRange:[29,0],children:[convert$1(Jt).from("m").to(zt).toFixed(Vt.measurementPrecision),jt??zt]}),Zt=(Jt,nn,rn,Qt)=>jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:jsxRuntimeExports.jsxs(RoundedBox,{position:Jt,rotation:nn,scale:rn,visible:!0,children:[jsxRuntimeExports.jsx(RoundedBox,{position:[0,.5,0],scale:Qt==="z"?[7,Kt,1]:[1,Kt,7],visible:!0,children:jsxRuntimeExports.jsx("meshBasicMaterial",{color:qt})}),jsxRuntimeExports.jsx(RoundedBox,{position:[0,-.5,0],scale:Qt==="z"?[7,Kt,1]:[1,Kt,7],visible:!0,children:jsxRuntimeExports.jsx("meshBasicMaterial",{color:qt})}),jsxRuntimeExports.jsx("meshBasicMaterial",{color:qt}),Yt(Gt.size[Qt])]})});return!Dt||!Gt||Object.keys(Gt.size).some(Jt=>Gt.size[Jt]===0)||Object.keys(_e).length===0?null:jsxRuntimeExports.jsxs("group",{ref:Ht,children:[Zt([Gt.center.x,Gt.center.y-Gt.size.y/2,Gt.center.z+Gt.size.z/2+Xt],[0,0,degToRad(90)],[Kt,Gt.size.x,Kt],"x"),Zt([Gt.center.x-Gt.size.x/2-Xt,Gt.center.y,Gt.center.z+Gt.size.z/2+Xt],[0,0,0],[Kt,Gt.size.y,Kt],"y"),Zt([Gt.center.x+Gt.size.x/2+Xt,Gt.center.y-Gt.size.y/2,Gt.center.z],[degToRad(90),0,0],[Kt,Gt.size.z,Kt],"z")]})},BaseScene=({stores:kt})=>jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx(HotspotManager,{stores:kt}),jsxRuntimeExports.jsx(DimensionsManager,{stores:kt}),jsxRuntimeExports.jsxs(Selection$1,{children:[jsxRuntimeExports.jsx(ItemManager,{stores:kt}),jsxRuntimeExports.jsx(EffectsComposer,{stores:kt})]})]}),CameraManager=({stores:kt})=>{const _e=reactExports.useRef(null),Dt=kt.hotspotStore(Jt=>Jt.isAnyHotspotActive),Vt=kt.cameraStore(Jt=>Jt.cameraSettings),Gt=kt.cameraStore(Jt=>Jt.disableAutoRotate),zt=kt.coreSceneStore(Jt=>Jt.autoFocusTrigger),jt=kt.coreSceneStore(Jt=>Jt.dragging),Ht=kt.cameraStore(Jt=>Jt.sendCameraDetailsTrigger),Wt=kt.cameraStore(Jt=>Jt.focusPointPosition),qt=kt.cameraStore(Jt=>Jt.viewPointPosition),{raycaster:Xt,camera:Kt}=useThree(),Yt=kt.ghostStore(Jt=>Jt.ghostsTransform),Zt=()=>{if(_e.current===null)return;const nn=1/_e.current._lastZoom,rn=kt.cameraStore.getState().boundsMargin,Qt=kt.coreSceneStore.getState().autoFocusRef;let en=new Box3;Qt?en.setFromObject(Qt):kt.coreSceneStore.getState().sceneRef.traverse(sn=>{sn.autoFocusEnabled&&en.expandByObject(sn)}),Qt||kt.coreSceneStore.setState({bbox:en});const tn=new Vector3;if(en.getSize(tn),tn.x>0){const sn=new Vector3;en.getCenter(sn);const cn=new Vector3(en.max.x,en.max.y,en.max.z);cn.sub(en.min),kt.coreSceneStore.setState({boundData:{center:sn,size:cn}}),_e.current.setBoundary(en);const un=new Box3(en.min,en.max);un.min=new Vector3((un.min.x-rn/2)*nn,(un.min.y-rn/2)*nn,(un.min.z-rn/2)*nn),un.max=new Vector3((un.max.x+rn/2)*nn,(un.max.y+rn/2)*nn,(un.max.z+rn/2)*nn);const hn=un.getBoundingSphere(new Sphere(sn));hn.radius>0&&_e.current.fitToSphere(hn,!0)}else{const sn=new Vector3(0,0,0),cn=new Vector3(0,0,0);kt.coreSceneStore.setState({boundData:{center:sn,size:cn}})}_e.current.zoomTo(1,!0)};return reactExports.useEffect(()=>{Zt()},[zt]),reactExports.useEffect(()=>{kt.coreSceneStore.getState().CORE_API!=null&&(kt.itemStore.getState().isBusy()||(kt.coreSceneStore.getState().sceneSettings.focusCameraOnGhosts===!0?kt.coreSceneStore.getState().CORE_API.focusOnGhosts():kt.coreSceneStore.getState().CORE_API.refocus()))},[Yt]),reactExports.useEffect(()=>{if(_e.current===null)return;const Jt=kt.cameraStore.getState().savedState,nn=kt.cameraStore.getState().resetToLastPosition;if(Dt===!1){Jt===!0&&(nn===!0?_e.current.reset(!0):kt.cameraStore.setState({resetToLastPosition:!0}),kt.cameraStore.setState({savedState:!1}));return}Jt===!1&&nn===!0&&(_e.current.saveState(),kt.cameraStore.setState({savedState:!0})),_e.current.setLookAt(qt.x,qt.y,qt.z,Wt.x,Wt.y,Wt.z,!0)},[Dt,qt,Wt]),reactExports.useEffect(()=>{kt.coreSceneStore.getState().CORE_API!=null&&kt.coreSceneStore.getState().CORE_API.fireEvent(kt.coreSceneStore.getState().CORE_API.EVENTS.CONFIGURATION.CameraDetails_Update,Kt)},[Ht]),useFrame(Jt=>{Vt.canAutoRotate===!1||_e.current===null||Gt===!1&&Dt===!1&&(_e.current.azimuthAngle+=20*Jt*MathUtils.DEG2RAD*Vt.autoRotateSpeed)}),reactExports.useEffect(()=>{_e.current!==null&&(Vt.canZoom===!0&&jt===!1?(_e.current.mouseButtons.wheel=CAMERA_ACTION.ZOOM,_e.current.mouseButtons.middle=CAMERA_ACTION.ZOOM):(_e.current.mouseButtons.wheel=CAMERA_ACTION.NONE,_e.current.mouseButtons.middle=CAMERA_ACTION.NONE),Vt.canPan===!0&&jt===!1?(_e.current.mouseButtons.right=CAMERA_ACTION.OFFSET,Vt.canZoom===!0&&jt===!1?(_e.current.touches.two=CAMERA_ACTION.TOUCH_ZOOM_OFFSET,_e.current.touches.three=CAMERA_ACTION.TOUCH_ZOOM_OFFSET):(_e.current.touches.two=CAMERA_ACTION.TOUCH_OFFSET,_e.current.touches.three=CAMERA_ACTION.TOUCH_OFFSET)):(_e.current.mouseButtons.right=CAMERA_ACTION.NONE,Vt.canZoom===!0&&jt===!1?(_e.current.touches.two=CAMERA_ACTION.TOUCH_ZOOM,_e.current.touches.three=CAMERA_ACTION.TOUCH_ZOOM):(_e.current.touches.two=CAMERA_ACTION.NONE,_e.current.touches.three=CAMERA_ACTION.NONE)))},[_e,Vt,jt]),reactExports.useEffect(()=>{if(_e.current===null)return;Kt.fov=Vt.fov,Kt.updateProjectionMatrix();const Jt=()=>{_e.current!==null&&(_e.current.removeEventListener("rest",Jt),kt.cameraStore.setState({userDragging:!1,disableAutoRotate:!1}))};_e.current.addEventListener("controlstart",()=>{kt.hotspotStore.getState().isAnyHotspotActive&&kt.hotspotStore.getState().actions.exitHotspot(),_e.current!==null&&(_e.current.removeEventListener("rest",Jt),kt.cameraStore.setState({userDragging:!0,disableAutoRotate:!0}))}),_e.current.addEventListener("controlend",()=>{_e.current!==null&&(_e.current.active?_e.current.addEventListener("rest",Jt):Jt())}),_e.current.addEventListener("transitionstart",()=>{_e.current!==null&&kt.cameraStore.getState().userDragging!==!0&&(kt.cameraStore.setState({disableAutoRotate:!0}),_e.current.addEventListener("rest",Jt))})},[_e]),reactExports.useEffect(()=>{_e.current&&(Xt.layers.enable(GHOST_LAYER),Kt.layers.enable(GHOST_LAYER),kt.cameraStore.setState({cameraControlsRef:_e.current}))},[_e]),jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:jsxRuntimeExports.jsx(CameraControls,{ref:_e,makeDefault:!0,dollySpeed:Vt.dollySpeed,truckSpeed:Vt.truckSpeed,minZoom:Vt.minZoom,maxZoom:Vt.maxZoom,minPolarAngle:Dt?-Math.PI:degToRad(Vt.minPolarAngle),maxPolarAngle:Dt?Math.PI:degToRad(Vt.maxPolarAngle)})})},Root=({stores:kt})=>{const{gl:_e}=useThree();return reactExports.useEffect(()=>{kt.coreSceneStore.setState({glContext:_e}),_e.getContext("3d").canvas.ariaLabel="A 3D Canvas to visualize products from the Configurator."},[]),jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx(BaseScene,{stores:kt}),jsxRuntimeExports.jsx(CameraManager,{stores:kt}),jsxRuntimeExports.jsx(LightManager,{stores:kt})]})},Alert=({stores:kt,handleCloseAlert:_e,alertData:Dt})=>{const Vt=reactExports.useRef(null),Gt=reactExports.useRef(null),zt=reactExports.useRef(null),jt=kt.uiSceneStore(Xt=>Xt.dialogPopupOpen),Ht=kt.uiSceneStore(Xt=>Xt.isScreenPortrait),Wt=kt.cartStore(Xt=>Xt.previewCartModalOpen),qt=()=>{clearTimeout(Vt.current),zt.current.style="",Gt.current.style="",_e()};return reactExports.useEffect(()=>{if(zt.current===null||Gt.current===null)return;const Xt=Dt.alertTime?Dt.alertTime:1e3;zt.current.style="animation: loader "+Xt+"ms; animation-timing-function: linear;",Gt.current.style="animation: loader "+Xt+"ms; animation-timing-function: linear;",Vt.current=setTimeout(qt,Xt)},[zt,Gt,Dt]),jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsxs("div",{className:"alert-bg ".concat(ALERT_TYPES[Dt.alertType].cssClass),tabIndex:Ht?-1:0,"aria-hidden":Ht,children:[jsxRuntimeExports.jsx("div",{className:"alert-icon-bg ".concat(ALERT_TYPES[Dt.alertType].cssClass),children:jsxRuntimeExports.jsx("img",{src:ALERT_TYPES[Dt.alertType].src,className:"alert-icon",alt:Dt.alertType})}),jsxRuntimeExports.jsxs("div",{className:"alert-msg-cross-timer-bg",children:[jsxRuntimeExports.jsxs("div",{className:"alert-msg-cross-bg",children:[jsxRuntimeExports.jsxs("div",{className:"alert-msg-bg",style:Dt.alertLabel?{}:{display:"flex",alignItems:"center"},children:[Dt.alertLabel&&jsxRuntimeExports.jsx("p",{className:"alert-label",children:Dt.alertLabel}),jsxRuntimeExports.jsx("span",{className:"alert-msg",children:Dt.alertMsg})]}),jsxRuntimeExports.jsx("div",{className:"alert-close-btn-bg",children:jsxRuntimeExports.jsx("img",{tabIndex:jt?-1:0,"aria-hidden":jt,onClick:qt,className:"alert-cross-btn",alt:"Close",role:"button","aria-label":"Close",src:PUBLIC_DESIGN_ASSETS_ENDPOINT+"/Icon/X.svg"})})]}),jsxRuntimeExports.jsx("div",{ref:Gt,className:"alert-timer ".concat(ALERT_TYPES[Dt.alertType].cssClass)})]})]}),jsxRuntimeExports.jsxs("div",{className:"alert-bg alert-mobile ".concat(ALERT_TYPES[Dt.alertType].cssClass),tabIndex:Ht?0:-1,"aria-hidden":!Ht,children:[jsxRuntimeExports.jsxs("div",{className:"alert-icon-msg-cross-bg",children:[jsxRuntimeExports.jsx("div",{className:"alert-icon-bg ".concat(ALERT_TYPES[Dt.alertType].cssClass),children:jsxRuntimeExports.jsx("img",{src:ALERT_TYPES[Dt.alertType].src,className:"alert-icon",alt:Dt.alertType})}),jsxRuntimeExports.jsxs("div",{className:"alert-msg-bg",children:[Dt.alertLabel&&jsxRuntimeExports.jsx("p",{className:"alert-label",children:Dt.alertLabel}),jsxRuntimeExports.jsx("span",{className:"alert-msg",children:Dt.alertMsg_Mobile?Dt.alertMsg_Mobile:Dt.alertMsg})]}),jsxRuntimeExports.jsx("div",{className:"alert-close-btn-bg",children:jsxRuntimeExports.jsx("img",{tabIndex:!jt&&!Wt?0:-1,"aria-hidden":jt||Wt,onClick:qt,className:"alert-cross-btn",alt:"Close",role:"button","aria-label":"Close",src:PUBLIC_DESIGN_ASSETS_ENDPOINT+"/Icon/X.svg"})})]}),jsxRuntimeExports.jsx("div",{ref:zt,className:"alert-timer ".concat(ALERT_TYPES[Dt.alertType].cssClass)})]})]})},AlertManager=({stores:kt})=>{const _e=kt.coreSceneStore(Wt=>Wt.alertData),Dt=kt.coreSceneStore(Wt=>Wt.persistantAlertData),Vt=kt.coreSceneStore(Wt=>Wt.currentAlertData),Gt=Wt=>{kt.coreSceneStore.setState({currentAlertData:Wt})};reactExports.useEffect(()=>{!_e||!_e.alertMsg||zt(_e)},[_e]),reactExports.useEffect(()=>{const Wt=kt.coreSceneStore.getState().alertQueue;Wt.length<=0||(Vt===null&&(Gt(Wt[0]),Wt[0].persistant===!0&&kt.coreSceneStore.setState({persistantAlertData:Wt[0]})),kt.coreSceneStore.getState().actions.popFromAlertQueue())},[Vt]);const zt=reactExports.useCallback(Wt=>{if(kt.coreSceneStore.getState().sceneSettings.disableAlerts===!0)return;let qt=Wt.alertType,Xt=Wt.alertId;const Kt=kt.coreSceneStore.getState().sceneSettings.alertControl;let Yt=!1;Object.keys(Kt).map(nn=>{nn==Xt&&(Yt=!0)}),Yt==!1&&(Xt="default");let Zt=!1;if(Object.keys(ALERT_TYPES).map(nn=>{nn==qt.toLowerCase()&&(Zt=!0)}),Zt==!1&&(qt=ALERT_TYPES.info.id,Wt.alertType=qt),ALERT_TYPES[Wt.alertType].level<kt.coreSceneStore.getState().sceneSettings.alertLevel||kt.coreSceneStore.getState().sceneSettings.alertControl[Xt]!==!0)return;const Jt=kt.coreSceneStore.getState().actions.addToAlertQueue(Wt);Vt===null&&Jt.length===1&&(Gt(Wt),Wt.persistant===!0&&kt.coreSceneStore.setState({persistantAlertData:Wt}))},[Vt]),jt=reactExports.useCallback(()=>{Gt(Dt)},[Dt]),Ht=reactExports.useCallback(async()=>{Gt(null)},[]);return reactExports.useEffect(()=>{async function Wt(){await wait(1500);let qt=null,Xt={alertMsg:"Add items by selecting from the panel",alertMsg_Mobile:"Add items by selecting from the panel",alertTime:8e3,alertType:"info",alertLabel:"Get Started"};kt.coreSceneStore.getState().alertSettings&&(kt.coreSceneStore.getState().alertSettings.welcomeMessage&&(qt=kt.coreSceneStore.getState().alertSettings.welcomeMessage),kt.coreSceneStore.getState().alertSettings.instructionMessage&&(Xt=kt.coreSceneStore.getState().alertSettings.instructionMessage)),qt!==null&&zt(qt),zt(Xt)}Wt()},[]),jsxRuntimeExports.jsxs("div",{className:"alert-space",children:[Vt===null&&Dt&&jsxRuntimeExports.jsx("div",{role:"button","aria-label":"Alert Button",onClick:jt,className:"alert-persistant-btn-bg",style:{background:ALERT_TYPES[Dt.alertType].background,border:"1px solid "+ALERT_TYPES[Dt.alertType].color},children:jsxRuntimeExports.jsx("img",{style:{filter:ALERT_TYPES[Dt.alertType].filter},className:"alert-persistant-btn",alt:Dt.alertType,src:ALERT_TYPES[Dt.alertType].src})}),Vt&&jsxRuntimeExports.jsx(Alert,{stores:kt,handleCloseAlert:Ht,alertData:Vt})]})},FocusManager=({stores:kt})=>{const _e=kt.itemStore(Gt=>Gt.itemsSpawned),Dt=kt.uiSceneStore(Gt=>Gt.dialogPopupOpen),Vt=kt.cartStore(Gt=>Gt.previewCartModalOpen);return jsxRuntimeExports.jsx("div",{id:"focusBtns",children:Object.keys(_e).map((Gt,zt)=>jsxRuntimeExports.jsx("div",{children:_e[Gt].itemData.isInteractive&&_e[Gt].itemData.gltfURL&&jsxRuntimeExports.jsx("div",{onFocus:()=>{kt.itemStore.setState({focusedGUID:Gt})},onBlur:()=>{kt.itemStore.setState({focusedGUID:null})},onClick:()=>{const jt=kt.coreSceneStore.getState().canvasSize,Ht=kt.itemStore.getState().itemsSpawned,Wt=kt.attachmentStore.getState().attachmentSystem.currentStructure.getNodeByGUID(Gt),qt={primary:{guid:Gt,name:_e[Gt].itemData.name,data:{...Ht[Gt],overrideVariant:Wt.overrideVariant,currentVariant:Wt.currentVariant,offsetX:jt.width/2,offsetY:jt.height/2}}};kt.itemStore.getState().actions.setSelectedItemData(qt.primary.data),kt.coreSceneStore.getState().CORE_API.fireEvent(kt.coreSceneStore.getState().CORE_API.EVENTS.UI.ContextMenu_Show,qt)},role:"button",id:"focusBtn-"+Gt,tabIndex:!Vt&&!Dt?0:-1,className:"canvasFocusButton","aria-hidden":Vt||Dt,"aria-label":_e[Gt].itemData.name?_e[Gt].itemData.name:_e[Gt].itemData.skuID},"focusBtn-key-"+Gt)},"focusBtn-single-key-"+Gt))},"focusBtns")},OverlayUIManager=({stores:kt})=>{const _e=kt.coreSceneStore(zt=>zt.canvasTooltipText),Dt=kt.coreSceneStore(zt=>zt.sceneSettings),Vt=kt.ghostStore(zt=>zt.ghostData),Gt=kt.itemStore(zt=>zt.defaultSceneItemCount);return jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:jsxRuntimeExports.jsxs("div",{children:[jsxRuntimeExports.jsx(AlertManager,{stores:kt}),jsxRuntimeExports.jsx(FocusManager,{stores:kt}),kt.coreSceneStore.getState().CORE_API.getSceneItemCount()<=Gt&&!Vt&&jsxRuntimeExports.jsx("div",{style:{fontSize:Dt.emptySceneTextFontSize},className:"emptySceneBG",children:Dt.emptySceneText}),jsxRuntimeExports.jsx("div",{className:"canvasTooltip",children:_e})]})})};function getPlugAttributesFromObject(kt){let _e={};if(kt.type.toLowerCase()==="object3d"){const Dt=kt.userData;if(Dt?.isPlug===1){const Vt=Dt.name;Vt&&typeof Vt=="string"&&(_e.name=Vt);const Gt=Dt.type;Gt&&typeof Gt=="string"?_e.type=Gt:_e.type="";const zt=Dt.weight;zt&&typeof zt=="number"?_e.weight=zt:_e.weight=1;const jt=Dt.affectedNodes;jt&&typeof jt=="string"?_e.affectedNodes=jt.replaceAll(" ","").split(","):_e.affectedNodes=[];const Ht=Dt.acceptedPlugTypes;Ht&&typeof Ht=="string"?_e.acceptedPlugTypes=Ht.replaceAll(" ","").split(","):_e.acceptedPlugTypes=[];const Wt=Dt.connectsToPlugTypes;Wt&&typeof Wt=="string"?_e.connectsToPlugTypes=Wt.replaceAll(" ","").split(","):_e.connectsToPlugTypes=[];const qt=Dt.dependencySku;qt&&typeof qt=="string"?_e.dependencySku=qt:_e.dependencySku="";const Xt=Dt.isDependencySkuInteractive;qt!==void 0&&typeof Xt=="number"?_e.isDependencySkuInteractive=Xt:_e.isDependencySkuInteractive=1}}return _e}async function loadAllDynamicHooks(kt,_e){if(!kt){LOGGER.info({title:"No hook URL provided"});return}try{const Dt=resolveAssetUrl(kt),Vt=_e.dynamicHookStore.getState(),Gt=await __vitePreload(()=>import(Dt),[]);for(const[zt,jt]of Object.entries(Gt))typeof jt=="function"&&(Vt[zt]!==void 0?(Vt[zt]=jt,LOGGER.info({title:`${zt} successfully updated from `+Dt})):LOGGER.warn({title:`No matching hook found for ${zt}`}))}catch(Dt){LOGGER.error({title:`Error loading dynamic hooks from: ${kt}`,details:Dt})}}async function loadAllProxies(kt,_e){kt.assetStore.getState().actions.init();const Dt=kt.assetStore.getState().actions,Vt=kt.coreSceneStore.getState().sceneSettings,Gt=Object.keys(_e).length;LOGGER.info({title:`Starting concurrent loading of ${Gt} proxies`});const zt=performance.now(),jt=Object.entries(_e).map(([Kt,Yt])=>loadSingleProxy(Kt,Yt,Dt,Vt)),Ht=await Promise.all(jt),Wt=performance.now(),qt=Ht.filter(Kt=>Kt.success).length;LOGGER.info({title:`Concurrent loading completed: ${qt}/${Gt} proxies loaded successfully in ${((Wt-zt)/1e3).toFixed(2)} seconds`});const Xt=Ht.filter(Kt=>!Kt.success);Xt.length>0&&LOGGER.warn({title:`Failed to load ${Xt.length} proxies:`,details:Xt.map(Kt=>Kt.skuID)})}async function loadSingleProxy(kt,_e,Dt,Vt){try{LOGGER.info({title:`Loading proxy: ${kt}`});const Gt=performance.now(),zt=await Dt.loadProxyAsset(kt,!0),jt=performance.now();if(LOGGER.info({title:`${kt} proxy: ${((jt-Gt)/1e3).toFixed(2)} seconds to load.`}),LOGGER.info({title:`Loaded proxy: ${kt}`,details:zt}),!zt?.proxy?.data)return{success:!1,skuID:kt,error:"No proxy data available"};const Ht=!_e.plugs||_e.plugs.length===0;Ht&&LOGGER.info({title:`Collecting plugs information for ${kt} from the proxy mesh`});let Wt=[];return zt.proxy.data.scene.traverse(qt=>{if(Ht){const Xt=getPlugAttributesFromObject(qt);Object.keys(Xt).length>0&&Wt.push(Xt)}qt.isMesh&&processMesh(qt,Vt)}),Wt.length>0&&(_e.plugs=Wt),updateBoundingBoxInfo(_e,zt),{success:!0,skuID:kt}}catch(Gt){return LOGGER.error({title:`Error loading proxy ${kt}:`,details:Gt}),{success:!1,skuID:kt,error:Gt.message}}}function processMesh(kt,_e){kt.layers.set(GHOST_LAYER);const Dt=_e.ghostColor;Object.assign(kt.material,{color:new Color$1(0,0,0),emissive:new Color$1(Dt.r/255,Dt.g/255,Dt.b/255),emissiveIntensity:.75,alphaTest:Dt.a,transparent:Dt.a<1,opacity:Dt.a,depthTest:!1,reflectivity:0,metalness:0,wireframe:_e.ghostAsWireframe})}function updateBoundingBoxInfo(kt,_e){const{boundingBox:Dt,boundingSphere:Vt}=computeProxyBoundingBox(_e);if(Dt&&Vt){const Gt=calculateBoundingBoxSize(Dt);Object.assign(kt,{boundingBox:Dt,boundingSphereCenter:Vt.center,boundingBoxSize:Gt})}else kt.boundingSphereCenter={x:0,y:0,z:0},kt.boundingBoxSize={x:0,y:0,z:0}}function calculateBoundingBoxSize(kt){return{x:kt.max.x-kt.min.x,y:kt.max.y-kt.min.y,z:kt.max.z-kt.min.z}}function computeProxyBoundingBox(kt){const _e=kt.proxy.data.scene;if(_e){let Dt=null;return _e.traverse(Vt=>{if(Vt.isMesh){Dt=Vt;return}}),Dt?(Dt.geometry.boundingBox||Dt.geometry.computeBoundingBox(),{boundingBox:Dt.geometry.boundingBox,boundingSphere:Dt.geometry.boundingSphere}):!1}}const AlertStyles=`.alert-space{position:absolute;width:auto;height:auto;max-width:40%;top:0;margin:1rem}.alert-bg{display:flex;flex-direction:row;border-radius:5.04px}.alert-mobile{display:none}.alert-persistant-btn{width:2rem;height:2rem;margin:4px;filter:invert(100%) brightness(200%)}.alert-persistant-btn-bg{cursor:pointer;display:flex;justify-content:center;align-items:center;border-radius:4px}.alert-persistant-btn-bg:hover{opacity:.9!important}.alert-icon{width:2rem;height:2rem;margin:14px;filter:invert(100%) brightness(200%)}.alert-icon-bg{border-radius:5.04px 0 0 5.04px}.alert-msg-bg{padding:1rem}.alert-label{font-weight:600;font-size:1.125rem;margin:0 0 4px;text-transform:capitalize}.alert-msg{font-size:1rem}.alert-cross-btn{width:1.5rem;cursor:pointer;margin:.5rem}.alert-msg-cross-timer-bg{display:flex;flex-direction:column;justify-content:space-between}.alert-msg-cross-bg{display:flex;flex-direction:row}.alert-timer{width:0%;height:2px;transition:10ms}.alert-bg.alert-info,.alert-bg.alert-mobile.alert-info{background-color:var(--info-light);border:1.26px solid var(--info-dark)}.alert-icon-bg.alert-info{background-color:var(--info-dark);border:1.26px solid var(--info-dark)}.alert-timer.alert-info{background-color:var(--info-dark)}.alert-bg.alert-warn,.alert-bg.alert-mobile.alert-warn{background-color:var(--warn-light);border:1.26px solid var(--warn-dark)}.alert-icon-bg.alert-warn{background-color:var(--warn-dark);border:1.26px solid var(--warn-dark)}.alert-timer.alert-warn{background-color:var(--warn-dark)}.alert-bg.alert-error,.alert-bg.alert-mobile.alert-error{background-color:var(--error-light);border:1.26px solid var(--error-dark)}.alert-icon-bg.alert-error{background-color:var(--error-dark);border:1.26px solid var(--error-dark)}.alert-timer.alert-error{background-color:var(--error-dark)}.alert-bg.alert-success,.alert-bg.alert-mobile.alert-success{background-color:var(--success-light);border:1.26px solid var(--success-dark)}.alert-icon-bg.alert-success{background-color:var(--success-dark);border:1.26px solid var(--success-dark)}.alert-timer.alert-success{background-color:var(--success-dark)}@keyframes loader{0%{width:0%}to{width:100%}}@media only screen and (orientation: portrait){.alert-label{margin:auto}.alert-close-btn-bg{display:flex;justify-content:center}.alert-icon-msg-cross-bg{display:flex;flex-direction:row;width:100%;align-items:center}.alert-space{width:100%;max-width:100%;margin:auto}.alert-bg{display:none;flex-direction:column}.alert-mobile{display:flex;justify-content:center;align-items:flex-start}.alert-icon{margin:4px}.alert-icon-bg{display:flex;justify-content:center;align-items:center;border-radius:5.04px;margin:8px 16px;height:fit-content}.alert-msg-bg{padding:1rem 0rem;width:calc(100% - 70px)}.alert-persistant-btn{margin:4px!important}.alert-persistant-btn-bg{display:flex;justify-content:center;width:calc(8px + 2rem)!important;align-items:center;border-radius:5.04px;margin:8px 16px}}
|
|
4464
4464
|
`,GenericStyles=`#epigraphConfiguratorCore{width:100%;height:100%;margin:0;padding:0;overflow:hidden;display:flex;align-items:center;justify-content:space-evenly;align-content:center;flex-direction:row}*{user-select:none!important;-webkit-user-select:none!important}.coreContainer{position:relative;width:100%;height:100%}.grabCursor{cursor:url(https://storage.googleapis.com/gsc-epigraph-design/product-assets/Icon/Cursor-Move.svg) 6 3,auto}.grabbingCursor{cursor:url(https://storage.googleapis.com/gsc-epigraph-design/product-assets/Icon/Cursor-Grab.svg) 6 3,auto}.pointerCursor{cursor:url(https://storage.googleapis.com/gsc-epigraph-design/product-assets/Icon/Cursor-Click.svg) 6 2,auto}.blockedCursor{cursor:url(https://storage.googleapis.com/gsc-epigraph-design/product-assets/Icon/Cursor-Block.svg),auto}.moveCursor{cursor:url(https://storage.googleapis.com/gsc-epigraph-design/product-assets/Icon/Cursor-MoveArrows.svg) 8.65 8.65,auto}.mainCanvas{width:100%!important;height:100%!important;background:white}.uninteractable{pointer-events:none;opacity:.8}.dimensionsButtonParent{position:relative;display:flex}.dimensionText{font-size:.8rem;font-style:normal;font-weight:600}.dimensionActive{border-color:#c7c7c7!important}.canvasFocusButton{width:0;height:0;position:absolute;top:0}.color-grid{display:flex;gap:1rem}.canvasTooltip{position:absolute;width:100%;display:flex;padding:1rem;bottom:0;justify-content:center;color:#898989;font-style:italic;font-size:.75rem;font-family:Inter,helvetica,sans-serif;opacity:1;transition:.2s all ease;-webkit-transition:.2s all ease;pointer-events:none;text-transform:uppercase;margin-bottom:5rem}.emptySceneBG{position:absolute;width:100%;height:100%;display:flex;padding:1rem;bottom:0;font-size:2rem;justify-content:center;align-items:center;text-align:center;color:#89898939;font-family:Inter,helvetica,sans-serif;opacity:1;transition:.2s all ease;-webkit-transition:.2s all ease;pointer-events:none;text-transform:uppercase}
|
|
4465
4465
|
`,HotspotStyles=`.topmostActive{z-index:1001!important}.topmostHover{z-index:1002!important}.hotspot{margin-left:0;transition:max-width .5s ease 0s;display:flex;flex-direction:row;align-items:center;justify-content:space-between;width:auto;max-width:36px;height:36px;border:3px solid var(--hotspot-button-border-color);border-radius:18px;box-shadow:#0000001f 0 1px 3px,#0000003d 0 1px 2px;background-color:var(--hotspot-button-background-color);transition:all .5s ease 0s;position:absolute;z-index:0;cursor:pointer;overflow:hidden;color:#000}.hotspot.left{right:-36px}.hotspot:hover{border:3px solid #000}.hotspot:hover,.hotspot.active{opacity:1!important;cursor:pointer;max-width:400px;box-shadow:#00000040 0 14px 28px,#00000038 0 10px 10px}.hotspot:hover .inner-circle{border:2px solid #000}.hotspot.active .inner-circle{background:#fff;border:10px solid var(--hotspot-active-inner-circle-border-color);width:30px;height:30px;left:-.2px;top:-.2px}.hotspot-annotation{display:inline-flex;margin:0 27px 0 34px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;font-style:normal;font-weight:500;font-size:14px;white-space:nowrap}.hotspot.visited:not(:focus) .inner-circle{background:#fff;border:12px solid var(--visited-color)}.hotspot .inner-circle{width:36px;height:36px;border:3px solid var(--hotspot-inner-circle-border-color);background:white;border-radius:18px;box-sizing:border-box;position:absolute;top:-3px;left:-3px;transition:.1s}.hotspot.left .inner-circle{left:auto;right:-2px}.hotspot.left:hover .inner-circle{left:auto;right:-3px}.hotspot.left .hotspot-annotation{margin:0 34px 0 27px}@media screen and (orientation: portrait){.hotspot:hover{opacity:1!important;cursor:pointer;max-width:36px;box-shadow:#0000001f 0 1px 3px,#0000003d 0 1px 2px;border:3px solid var(--hotspot-button-border-color)}.hotspot:hover .inner-circle{border:3px solid var(--hotspot-inner-circle-border-color)}.hotspot.active{opacity:1!important;cursor:pointer;max-width:400px;box-shadow:#00000040 0 14px 28px,#00000038 0 10px 10px}.hotspot.active .inner-circle{background:#fff;border:10px solid var(--hotspot-active-inner-circle-border-color);width:30px;height:30px;left:-.2px;top:-.2px}}
|
|
4466
4466
|
`,DimensionStyles=`.dimensionsText{background:rgb(0,0,0);padding:.2rem .6rem;border-radius:.5rem;color:#fff;white-space:nowrap;transition:.5s}.dimensions:before{content:"";display:block;position:absolute;top:50%;left:-30px;width:30px;height:1px;background-color:#000}.dimensions:after{content:"";display:block;position:absolute;top:50%;right:-30px;width:30px;height:1px;background-color:#000}.yDimension{transform:rotate(90deg)}.zDimension{transform:rotateY(90deg)}
|
|
@@ -4633,7 +4633,7 @@ ${zt.join(`
|
|
|
4633
4633
|
float verticalAperture = ${kt.getFilmHeight().toPrecision(PRECISION)}
|
|
4634
4634
|
}
|
|
4635
4635
|
|
|
4636
|
-
`}class EventDispatcher{constructor(){this._listeners={}}addEventListener(_e,Dt){const Vt=this._listeners;return Vt[_e]===void 0&&(Vt[_e]=[]),Vt[_e].indexOf(Dt)===-1&&Vt[_e].push(Dt),this}removeEventListener(_e,Dt){if(this._listeners===void 0)return this;const Gt=this._listeners[_e];if(Gt!==void 0){const zt=Gt.indexOf(Dt);zt!==-1&&Gt.splice(zt,1)}return this}dispatchEvent(_e){if(this._listeners===void 0)return this;const Vt=this._listeners[_e.type];if(Vt!==void 0){const Gt=Vt.slice(0);for(let zt=0,jt=Gt.length;zt<jt;zt++)Gt[zt].call(this,_e)}return this}dispose(){for(const _e in this._listeners)delete this._listeners[_e]}}class GraphEdge extends EventDispatcher{constructor(_e,Dt,Vt,Gt={}){if(super(),this._name=void 0,this._parent=void 0,this._child=void 0,this._attributes=void 0,this._disposed=!1,this._name=_e,this._parent=Dt,this._child=Vt,this._attributes=Gt,!Dt.isOnGraph(Vt))throw new Error("Cannot connect disconnected graphs.")}getName(){return this._name}getParent(){return this._parent}getChild(){return this._child}setChild(_e){return this._child=_e,this}getAttributes(){return this._attributes}dispose(){this._disposed||(this._disposed=!0,this.dispatchEvent({type:"dispose",target:this}),super.dispose())}isDisposed(){return this._disposed}}class Graph extends EventDispatcher{constructor(..._e){super(..._e),this._emptySet=new Set,this._edges=new Set,this._parentEdges=new Map,this._childEdges=new Map}listEdges(){return Array.from(this._edges)}listParentEdges(_e){return Array.from(this._childEdges.get(_e)||this._emptySet)}listParents(_e){return this.listParentEdges(_e).map(Dt=>Dt.getParent())}listChildEdges(_e){return Array.from(this._parentEdges.get(_e)||this._emptySet)}listChildren(_e){return this.listChildEdges(_e).map(Dt=>Dt.getChild())}disconnectParents(_e,Dt){let Vt=this.listParentEdges(_e);return Dt&&(Vt=Vt.filter(Gt=>Dt(Gt.getParent()))),Vt.forEach(Gt=>Gt.dispose()),this}createEdge(_e,Dt,Vt,Gt){return this._registerEdge(new GraphEdge(_e,Dt,Vt,Gt))}_registerEdge(_e){this._edges.add(_e);const Dt=_e.getParent();this._parentEdges.has(Dt)||this._parentEdges.set(Dt,new Set),this._parentEdges.get(Dt).add(_e);const Vt=_e.getChild();return this._childEdges.has(Vt)||this._childEdges.set(Vt,new Set),this._childEdges.get(Vt).add(_e),_e.addEventListener("dispose",()=>this._removeEdge(_e)),_e}_removeEdge(_e){return this._edges.delete(_e),this._parentEdges.get(_e.getParent()).delete(_e),this._childEdges.get(_e.getChild()).delete(_e),this}}function _extends(){return _extends=Object.assign||function(kt){for(var _e=1;_e<arguments.length;_e++){var Dt=arguments[_e];for(var Vt in Dt)Object.prototype.hasOwnProperty.call(Dt,Vt)&&(kt[Vt]=Dt[Vt])}return kt},_extends.apply(this,arguments)}function isRef(kt){return kt instanceof GraphEdge}function isRefList(kt){return Array.isArray(kt)&&kt[0]instanceof GraphEdge}function isRefMap(kt){return!!(isPlainObject(kt)&&getFirstValue(kt)instanceof GraphEdge)}function getFirstValue(kt){for(const _e in kt)return kt[_e]}function isPlainObject(kt){return!!kt&&Object.getPrototypeOf(kt)===Object.prototype}const $attributes=Symbol("attributes"),$immutableKeys=Symbol("immutableKeys");class GraphNode extends EventDispatcher{constructor(_e){super(),this._disposed=!1,this.graph=void 0,this[$attributes]=void 0,this[$immutableKeys]=void 0,this.graph=_e,this[$immutableKeys]=new Set,this[$attributes]=this._createAttributes()}getDefaults(){return{}}_createAttributes(){const _e=this.getDefaults(),Dt={};for(const Vt in _e){const Gt=_e[Vt];if(Gt instanceof GraphNode){const zt=this.graph.createEdge(Vt,this,Gt);zt.addEventListener("dispose",()=>Gt.dispose()),this[$immutableKeys].add(Vt),Dt[Vt]=zt}else Dt[Vt]=Gt}return Dt}isOnGraph(_e){return this.graph===_e.graph}isDisposed(){return this._disposed}dispose(){this._disposed||(this.graph.listChildEdges(this).forEach(_e=>_e.dispose()),this.graph.disconnectParents(this),this._disposed=!0,this.dispatchEvent({type:"dispose"}))}detach(){return this.graph.disconnectParents(this),this}swap(_e,Dt){for(const Vt in this[$attributes]){const Gt=this[$attributes][Vt];if(isRef(Gt)){const zt=Gt;zt.getChild()===_e&&this.setRef(Vt,Dt,zt.getAttributes())}else if(isRefList(Gt)){const jt=Gt.find(Ht=>Ht.getChild()===_e);if(jt){const Ht=jt.getAttributes();this.removeRef(Vt,_e).addRef(Vt,Dt,Ht)}}else if(isRefMap(Gt)){const zt=Gt;for(const jt in zt){const Ht=zt[jt];Ht.getChild()===_e&&this.setRefMap(Vt,jt,Dt,Ht.getAttributes())}}}return this}get(_e){return this[$attributes][_e]}set(_e,Dt){return this[$attributes][_e]=Dt,this.dispatchEvent({type:"change",attribute:_e})}getRef(_e){const Dt=this[$attributes][_e];return Dt?Dt.getChild():null}setRef(_e,Dt,Vt){if(this[$immutableKeys].has(_e))throw new Error(`Cannot overwrite immutable attribute, "${_e}".`);const Gt=this[$attributes][_e];if(Gt&&Gt.dispose(),!Dt)return this;const zt=this.graph.createEdge(_e,this,Dt,Vt);return zt.addEventListener("dispose",()=>{delete this[$attributes][_e],this.dispatchEvent({type:"change",attribute:_e})}),this[$attributes][_e]=zt,this.dispatchEvent({type:"change",attribute:_e})}listRefs(_e){return this[$attributes][_e].map(Vt=>Vt.getChild())}addRef(_e,Dt,Vt){const Gt=this.graph.createEdge(_e,this,Dt,Vt),zt=this[$attributes][_e];return zt.push(Gt),Gt.addEventListener("dispose",()=>{let jt;for(;(jt=zt.indexOf(Gt))!==-1;)zt.splice(jt,1);this.dispatchEvent({type:"change",attribute:_e})}),this.dispatchEvent({type:"change",attribute:_e})}removeRef(_e,Dt){return this[$attributes][_e].filter(zt=>zt.getChild()===Dt).forEach(zt=>zt.dispose()),this}listRefMapKeys(_e){return Object.keys(this[$attributes][_e])}listRefMapValues(_e){return Object.values(this[$attributes][_e]).map(Dt=>Dt.getChild())}getRefMap(_e,Dt){const Vt=this[$attributes][_e];return Vt[Dt]?Vt[Dt].getChild():null}setRefMap(_e,Dt,Vt,Gt){const zt=this[$attributes][_e],jt=zt[Dt];if(jt&&jt.dispose(),!Vt)return this;Gt=Object.assign(Gt||{},{key:Dt});const Ht=this.graph.createEdge(_e,this,Vt,_extends({},Gt,{key:Dt}));return Ht.addEventListener("dispose",()=>{delete zt[Dt],this.dispatchEvent({type:"change",attribute:_e,key:Dt})}),zt[Dt]=Ht,this.dispatchEvent({type:"change",attribute:_e,key:Dt})}dispatchEvent(_e){return super.dispatchEvent(_extends({},_e,{target:this})),this.graph.dispatchEvent(_extends({},_e,{target:this,type:`node:${_e.type}`})),this}}const u="v3.7.3",c="@glb.bin";var h,f,l,d,g;(function(kt){kt.ACCESSOR="Accessor",kt.ANIMATION="Animation",kt.ANIMATION_CHANNEL="AnimationChannel",kt.ANIMATION_SAMPLER="AnimationSampler",kt.BUFFER="Buffer",kt.CAMERA="Camera",kt.MATERIAL="Material",kt.MESH="Mesh",kt.PRIMITIVE="Primitive",kt.PRIMITIVE_TARGET="PrimitiveTarget",kt.NODE="Node",kt.ROOT="Root",kt.SCENE="Scene",kt.SKIN="Skin",kt.TEXTURE="Texture",kt.TEXTURE_INFO="TextureInfo"})(h||(h={})),function(kt){kt.INTERLEAVED="interleaved",kt.SEPARATE="separate"}(f||(f={})),function(kt){kt.ARRAY_BUFFER="ARRAY_BUFFER",kt.ELEMENT_ARRAY_BUFFER="ELEMENT_ARRAY_BUFFER",kt.INVERSE_BIND_MATRICES="INVERSE_BIND_MATRICES",kt.OTHER="OTHER",kt.SPARSE="SPARSE"}(l||(l={})),function(kt){kt[kt.R=4096]="R",kt[kt.G=256]="G",kt[kt.B=16]="B",kt[kt.A=1]="A"}(d||(d={})),function(kt){kt.GLTF="GLTF",kt.GLB="GLB"}(g||(g={}));const p={5120:Int8Array,5121:Uint8Array,5122:Int16Array,5123:Uint16Array,5125:Uint32Array,5126:Float32Array};var m,w=typeof Float32Array<"u"?Float32Array:Array;function y(kt){return Math.hypot(kt[0],kt[1],kt[2])}Math.hypot||(Math.hypot=function(){for(var kt=0,_e=arguments.length;_e--;)kt+=arguments[_e]*arguments[_e];return Math.sqrt(kt)}),m=new w(3),w!=Float32Array&&(m[0]=0,m[1]=0,m[2]=0);class E{static createBufferFromDataURI(_e){if(typeof Buffer>"u"){const Dt=atob(_e.split(",")[1]),Vt=new Uint8Array(Dt.length);for(let Gt=0;Gt<Dt.length;Gt++)Vt[Gt]=Dt.charCodeAt(Gt);return Vt}{const Dt=_e.split(",")[1],Vt=_e.indexOf("base64")>=0;return Buffer.from(Dt,Vt?"base64":"utf8")}}static encodeText(_e){return typeof TextEncoder<"u"?new TextEncoder().encode(_e):Buffer.from(_e)}static decodeText(_e){return typeof TextDecoder<"u"?new TextDecoder().decode(_e):Buffer.from(_e).toString("utf8")}static concat(_e){let Dt=0;for(const zt of _e)Dt+=zt.byteLength;const Vt=new Uint8Array(Dt);let Gt=0;for(const zt of _e)Vt.set(zt,Gt),Gt+=zt.byteLength;return Vt}static pad(_e,Dt=0){const Vt=this.padNumber(_e.byteLength);if(Vt===_e.byteLength)return _e;const Gt=new Uint8Array(Vt);if(Gt.set(_e),Dt!==0)for(let zt=_e.byteLength;zt<Vt;zt++)Gt[zt]=Dt;return Gt}static padNumber(_e){return 4*Math.ceil(_e/4)}static equals(_e,Dt){if(_e===Dt)return!0;if(_e.byteLength!==Dt.byteLength)return!1;let Vt=_e.byteLength;for(;Vt--;)if(_e[Vt]!==Dt[Vt])return!1;return!0}static toView(_e,Dt=0,Vt=1/0){return new Uint8Array(_e.buffer,_e.byteOffset+Dt,Math.min(_e.byteLength,Vt))}static assertView(_e){if(_e&&!ArrayBuffer.isView(_e))throw new Error(`Method requires Uint8Array parameter; received "${typeof _e}".`);return _e}}class S{static hexToFactor(_e,Dt){_e=Math.floor(_e);const Vt=Dt;return Vt[0]=(_e>>16&255)/255,Vt[1]=(_e>>8&255)/255,Vt[2]=(255&_e)/255,this.convertSRGBToLinear(Dt,Dt)}static factorToHex(_e){const Dt=[..._e],[Vt,Gt,zt]=this.convertLinearToSRGB(_e,Dt);return 255*Vt<<16^255*Gt<<8^255*zt<<0}static convertSRGBToLinear(_e,Dt){const Vt=_e,Gt=Dt;for(let zt=0;zt<3;zt++)Gt[zt]=Vt[zt]<.04045?.0773993808*Vt[zt]:Math.pow(.9478672986*Vt[zt]+.0521327014,2.4);return Dt}static convertLinearToSRGB(_e,Dt){const Vt=_e,Gt=Dt;for(let zt=0;zt<3;zt++)Gt[zt]=Vt[zt]<.0031308?12.92*Vt[zt]:1.055*Math.pow(Vt[zt],.41666)-.055;return Dt}}class M{match(_e){return _e.length>=8&&_e[0]===137&&_e[1]===80&&_e[2]===78&&_e[3]===71&&_e[4]===13&&_e[5]===10&&_e[6]===26&&_e[7]===10}getSize(_e){const Dt=new DataView(_e.buffer,_e.byteOffset);return E.decodeText(_e.slice(12,16))===M.PNG_FRIED_CHUNK_NAME?[Dt.getUint32(32,!1),Dt.getUint32(36,!1)]:[Dt.getUint32(16,!1),Dt.getUint32(20,!1)]}getChannels(_e){return 4}}M.PNG_FRIED_CHUNK_NAME="CgBI";class I{static registerFormat(_e,Dt){this.impls[_e]=Dt}static getMimeType(_e){for(const Dt in this.impls)if(this.impls[Dt].match(_e))return Dt;return null}static getSize(_e,Dt){return this.impls[Dt]?this.impls[Dt].getSize(_e):null}static getChannels(_e,Dt){return this.impls[Dt]?this.impls[Dt].getChannels(_e):null}static getVRAMByteLength(_e,Dt){if(!this.impls[Dt])return null;if(this.impls[Dt].getVRAMByteLength)return this.impls[Dt].getVRAMByteLength(_e);let Vt=0;const Gt=this.getSize(_e,Dt);if(!Gt)return null;for(;Gt[0]>1||Gt[1]>1;)Vt+=Gt[0]*Gt[1]*4,Gt[0]=Math.max(Math.floor(Gt[0]/2),1),Gt[1]=Math.max(Math.floor(Gt[1]/2),1);return Vt+=4,Vt}static mimeTypeToExtension(_e){return _e==="image/jpeg"?"jpg":_e.split("/").pop()}static extensionToMimeType(_e){return _e==="jpg"?"image/jpeg":_e?`image/${_e}`:""}}function R(kt,_e){if(_e>kt.byteLength)throw new TypeError("Corrupt JPG, exceeded buffer limits");if(kt.getUint8(_e)!==255)throw new TypeError("Invalid JPG, marker table corrupted");return kt}I.impls={"image/jpeg":new class{match(kt){return kt.length>=3&&kt[0]===255&&kt[1]===216&&kt[2]===255}getSize(kt){let _e,Dt,Vt=new DataView(kt.buffer,kt.byteOffset+4);for(;Vt.byteLength;){if(_e=Vt.getUint16(0,!1),R(Vt,_e),Dt=Vt.getUint8(_e+1),Dt===192||Dt===193||Dt===194)return[Vt.getUint16(_e+7,!1),Vt.getUint16(_e+5,!1)];Vt=new DataView(kt.buffer,Vt.byteOffset+_e+2)}throw new TypeError("Invalid JPG, no size found")}getChannels(kt){return 3}},"image/png":new M};class N{static basename(_e){const Dt=_e.split(/[\\/]/).pop();return Dt.substring(0,Dt.lastIndexOf("."))}static extension(_e){if(_e.startsWith("data:image/")){const Dt=_e.match(/data:(image\/\w+)/)[1];return I.mimeTypeToExtension(Dt)}return _e.startsWith("data:model/gltf+json")?"gltf":_e.startsWith("data:model/gltf-binary")?"glb":_e.startsWith("data:application/")?"bin":_e.split(/[\\/]/).pop().split(/[.]/).pop()}}function O(kt){return Object.prototype.toString.call(kt)==="[object Object]"}function C(kt){if(O(kt)===!1)return!1;const _e=kt.constructor;if(_e===void 0)return!0;const Dt=_e.prototype;return O(Dt)!==!1&&Object.prototype.hasOwnProperty.call(Dt,"isPrototypeOf")!==!1}var F,U;(function(kt){kt[kt.SILENT=4]="SILENT",kt[kt.ERROR=3]="ERROR",kt[kt.WARN=2]="WARN",kt[kt.INFO=1]="INFO",kt[kt.DEBUG=0]="DEBUG"})(U||(U={}));let B$1=class Ql{constructor(_e){this.verbosity=void 0,this.verbosity=_e}debug(_e){this.verbosity<=Ql.Verbosity.DEBUG&&console.debug(_e)}info(_e){this.verbosity<=Ql.Verbosity.INFO&&console.info(_e)}warn(_e){this.verbosity<=Ql.Verbosity.WARN&&console.warn(_e)}error(_e){this.verbosity<=Ql.Verbosity.ERROR&&console.error(_e)}};function P(kt,_e,Dt){var Vt=_e[0],Gt=_e[1],zt=_e[2],jt=_e[3],Ht=_e[4],Wt=_e[5],qt=_e[6],Xt=_e[7],Kt=_e[8],Yt=_e[9],Zt=_e[10],Jt=_e[11],nn=_e[12],rn=_e[13],Qt=_e[14],en=_e[15],tn=Dt[0],sn=Dt[1],cn=Dt[2],un=Dt[3];return kt[0]=tn*Vt+sn*Ht+cn*Kt+un*nn,kt[1]=tn*Gt+sn*Wt+cn*Yt+un*rn,kt[2]=tn*zt+sn*qt+cn*Zt+un*Qt,kt[3]=tn*jt+sn*Xt+cn*Jt+un*en,kt[4]=(tn=Dt[4])*Vt+(sn=Dt[5])*Ht+(cn=Dt[6])*Kt+(un=Dt[7])*nn,kt[5]=tn*Gt+sn*Wt+cn*Yt+un*rn,kt[6]=tn*zt+sn*qt+cn*Zt+un*Qt,kt[7]=tn*jt+sn*Xt+cn*Jt+un*en,kt[8]=(tn=Dt[8])*Vt+(sn=Dt[9])*Ht+(cn=Dt[10])*Kt+(un=Dt[11])*nn,kt[9]=tn*Gt+sn*Wt+cn*Yt+un*rn,kt[10]=tn*zt+sn*qt+cn*Zt+un*Qt,kt[11]=tn*jt+sn*Xt+cn*Jt+un*en,kt[12]=(tn=Dt[12])*Vt+(sn=Dt[13])*Ht+(cn=Dt[14])*Kt+(un=Dt[15])*nn,kt[13]=tn*Gt+sn*Wt+cn*Yt+un*rn,kt[14]=tn*zt+sn*qt+cn*Zt+un*Qt,kt[15]=tn*jt+sn*Xt+cn*Jt+un*en,kt}F=B$1,B$1.Verbosity=U,B$1.DEFAULT_INSTANCE=new F(F.Verbosity.INFO);class L{static identity(_e){return _e}static eq(_e,Dt,Vt=1e-5){if(_e.length!==Dt.length)return!1;for(let Gt=0;Gt<_e.length;Gt++)if(Math.abs(_e[Gt]-Dt[Gt])>Vt)return!1;return!0}static decodeNormalizedInt(_e,Dt){switch(Dt){case 5126:return _e;case 5123:return _e/65535;case 5121:return _e/255;case 5122:return Math.max(_e/32767,-1);case 5120:return Math.max(_e/127,-1);default:throw new Error("Invalid component type.")}}static denormalize(_e,Dt){return L.decodeNormalizedInt(_e,Dt)}static encodeNormalizedInt(_e,Dt){switch(Dt){case 5126:return _e;case 5123:return Math.round(65535*_e);case 5121:return Math.round(255*_e);case 5122:return Math.round(32767*_e);case 5120:return Math.round(127*_e);default:throw new Error("Invalid component type.")}}static normalize(_e,Dt){return L.encodeNormalizedInt(_e,Dt)}static decompose(_e,Dt,Vt,Gt){let zt=y([_e[0],_e[1],_e[2]]);const jt=y([_e[4],_e[5],_e[6]]),Ht=y([_e[8],_e[9],_e[10]]);var Wt,qt,Xt,Kt,Yt,Zt,Jt,nn,rn,Qt,en,tn,sn,cn,un,hn,dn;((qt=(Wt=_e)[0])*(Jt=Wt[5])-(Xt=Wt[1])*(Zt=Wt[4]))*((tn=Wt[10])*(dn=Wt[15])-(sn=Wt[11])*(hn=Wt[14]))-(qt*(nn=Wt[6])-(Kt=Wt[2])*Zt)*((en=Wt[9])*dn-sn*(un=Wt[13]))+(qt*(rn=Wt[7])-(Yt=Wt[3])*Zt)*(en*hn-tn*un)+(Xt*nn-Kt*Jt)*((Qt=Wt[8])*dn-sn*(cn=Wt[12]))-(Xt*rn-Yt*Jt)*(Qt*hn-tn*cn)+(Kt*rn-Yt*nn)*(Qt*un-en*cn)<0&&(zt=-zt),Dt[0]=_e[12],Dt[1]=_e[13],Dt[2]=_e[14];const pn=_e.slice(),fn=1/zt,mn=1/jt,vn=1/Ht;pn[0]*=fn,pn[1]*=fn,pn[2]*=fn,pn[4]*=mn,pn[5]*=mn,pn[6]*=mn,pn[8]*=vn,pn[9]*=vn,pn[10]*=vn,function(_n,En){var An=new w(3);(function(ar,zn){var ur=zn[4],Hn=zn[5],sr=zn[6],gr=zn[8],fr=zn[9],Un=zn[10];ar[0]=Math.hypot(zn[0],zn[1],zn[2]),ar[1]=Math.hypot(ur,Hn,sr),ar[2]=Math.hypot(gr,fr,Un)})(An,En);var Tn=1/An[0],Cn=1/An[1],yn=1/An[2],Sn=En[0]*Tn,wn=En[1]*Cn,xn=En[2]*yn,Rn=En[4]*Tn,Dn=En[5]*Cn,kn=En[6]*yn,Fn=En[8]*Tn,Pn=En[9]*Cn,Bn=En[10]*yn,qn=Sn+Dn+Bn,tr=0;qn>0?(tr=2*Math.sqrt(qn+1),_n[3]=.25*tr,_n[0]=(kn-Pn)/tr,_n[1]=(Fn-xn)/tr,_n[2]=(wn-Rn)/tr):Sn>Dn&&Sn>Bn?(tr=2*Math.sqrt(1+Sn-Dn-Bn),_n[3]=(kn-Pn)/tr,_n[0]=.25*tr,_n[1]=(wn+Rn)/tr,_n[2]=(Fn+xn)/tr):Dn>Bn?(tr=2*Math.sqrt(1+Dn-Sn-Bn),_n[3]=(Fn-xn)/tr,_n[0]=(wn+Rn)/tr,_n[1]=.25*tr,_n[2]=(kn+Pn)/tr):(tr=2*Math.sqrt(1+Bn-Sn-Dn),_n[3]=(wn-Rn)/tr,_n[0]=(Fn+xn)/tr,_n[1]=(kn+Pn)/tr,_n[2]=.25*tr)}(Vt,pn),Gt[0]=zt,Gt[1]=jt,Gt[2]=Ht}static compose(_e,Dt,Vt,Gt){const zt=Gt,jt=Dt[0],Ht=Dt[1],Wt=Dt[2],qt=Dt[3],Xt=jt+jt,Kt=Ht+Ht,Yt=Wt+Wt,Zt=jt*Xt,Jt=jt*Kt,nn=jt*Yt,rn=Ht*Kt,Qt=Ht*Yt,en=Wt*Yt,tn=qt*Xt,sn=qt*Kt,cn=qt*Yt,un=Vt[0],hn=Vt[1],dn=Vt[2];return zt[0]=(1-(rn+en))*un,zt[1]=(Jt+cn)*un,zt[2]=(nn-sn)*un,zt[3]=0,zt[4]=(Jt-cn)*hn,zt[5]=(1-(Zt+en))*hn,zt[6]=(Qt+tn)*hn,zt[7]=0,zt[8]=(nn+sn)*dn,zt[9]=(Qt-tn)*dn,zt[10]=(1-(Zt+rn))*dn,zt[11]=0,zt[12]=_e[0],zt[13]=_e[1],zt[14]=_e[2],zt[15]=1,zt}}function j(kt,_e){if(!!kt!=!!_e)return!1;const Dt=kt.getChild(),Vt=_e.getChild();return Dt===Vt||Dt.equals(Vt)}function D(kt,_e){if(!!kt!=!!_e||kt.length!==_e.length)return!1;for(let Dt=0;Dt<kt.length;Dt++){const Vt=kt[Dt],Gt=_e[Dt];if(Vt.getChild()!==Gt.getChild()&&!Vt.getChild().equals(Gt.getChild()))return!1}return!0}function _(kt,_e){if(!!kt!=!!_e)return!1;const Dt=Object.keys(kt),Vt=Object.keys(_e);if(Dt.length!==Vt.length)return!1;for(const Gt in kt){const zt=kt[Gt],jt=_e[Gt];if(!!zt!=!!jt)return!1;const Ht=zt.getChild(),Wt=jt.getChild();if(Ht!==Wt&&!Ht.equals(Wt))return!1}return!0}function k(kt,_e){if(kt===_e)return!0;if(!!kt!=!!_e||!kt||!_e||kt.length!==_e.length)return!1;for(let Dt=0;Dt<kt.length;Dt++)if(kt[Dt]!==_e[Dt])return!1;return!0}function z(kt,_e){if(kt===_e)return!0;if(!!kt!=!!_e)return!1;if(!C(kt)||!C(_e))return kt===_e;const Dt=kt,Vt=_e;let Gt,zt=0,jt=0;for(Gt in Dt)zt++;for(Gt in Vt)jt++;if(zt!==jt)return!1;for(Gt in Dt){const Ht=Dt[Gt],Wt=Vt[Gt];if(G(Ht)&&G(Wt)){if(!k(Ht,Wt))return!1}else if(C(Ht)&&C(Wt)){if(!z(Ht,Wt))return!1}else if(Ht!==Wt)return!1}return!0}function G(kt){return Array.isArray(kt)||ArrayBuffer.isView(kt)}const J=new Set,$=function(){let kt="";for(let _e=0;_e<6;_e++)kt+="23456789abdegjkmnpqrvwxyzABDEGJKMNPQRVWXYZ".charAt(Math.floor(42*Math.random()));return kt},V=function(){for(let kt=0;kt<999;kt++){const _e=$();if(!J.has(_e))return J.add(_e),_e}return""},W="https://null.example";let q$1=class{static dirname(_e){const Dt=_e.lastIndexOf("/");return Dt===-1?"./":_e.substring(0,Dt+1)}static basename(_e){return N.basename(new URL(_e,W).pathname)}static extension(_e){return N.extension(new URL(_e,W).pathname)}static resolve(_e,Dt){if(!this.isRelativePath(Dt))return Dt;const Vt=_e.split("/"),Gt=Dt.split("/");Vt.pop();for(let zt=0;zt<Gt.length;zt++)Gt[zt]!=="."&&(Gt[zt]===".."?Vt.pop():Vt.push(Gt[zt]));return Vt.join("/")}static isAbsoluteURL(_e){return this.PROTOCOL_REGEXP.test(_e)}static isRelativePath(_e){return!/^(?:[a-zA-Z]+:)?\//.test(_e)}};q$1.DEFAULT_INIT={},q$1.PROTOCOL_REGEXP=/^[a-zA-Z]+:\/\//;const H=kt=>kt,Y=new Set;let Z$1=class extends GraphNode{constructor(_e,Dt=""){super(_e),this[$attributes].name=Dt,this.init(),this.dispatchEvent({type:"create"})}getGraph(){return this.graph}getDefaults(){return Object.assign(super.getDefaults(),{name:"",extras:{}})}set(_e,Dt){return Array.isArray(Dt)&&(Dt=Dt.slice()),super.set(_e,Dt)}getName(){return this.get("name")}setName(_e){return this.set("name",_e)}getExtras(){return this.get("extras")}setExtras(_e){return this.set("extras",_e)}clone(){return new this.constructor(this.graph).copy(this,H)}copy(_e,Dt=H){for(const Vt in this[$attributes]){const Gt=this[$attributes][Vt];if(Gt instanceof GraphEdge)this[$immutableKeys].has(Vt)||Gt.dispose();else if(isRefList(Gt))for(const zt of Gt)zt.dispose();else if(isRefMap(Gt))for(const zt in Gt)Gt[zt].dispose()}for(const Vt in _e[$attributes]){const Gt=this[$attributes][Vt],zt=_e[$attributes][Vt];if(zt instanceof GraphEdge)this[$immutableKeys].has(Vt)?Gt.getChild().copy(Dt(zt.getChild()),Dt):this.setRef(Vt,Dt(zt.getChild()),zt.getAttributes());else if(isRefList(zt))for(const jt of zt)this.addRef(Vt,Dt(jt.getChild()),jt.getAttributes());else if(isRefMap(zt))for(const jt in zt){const Ht=zt[jt];this.setRefMap(Vt,jt,Dt(Ht.getChild()),Ht.getAttributes())}else this[$attributes][Vt]=C(zt)?JSON.parse(JSON.stringify(zt)):Array.isArray(zt)||zt instanceof ArrayBuffer||ArrayBuffer.isView(zt)?zt.slice():zt}return this}equals(_e,Dt=Y){if(this===_e)return!0;if(this.propertyType!==_e.propertyType)return!1;for(const Vt in this[$attributes]){if(Dt.has(Vt))continue;const Gt=this[$attributes][Vt],zt=_e[$attributes][Vt];if(isRef(Gt)||isRef(zt)){if(!j(Gt,zt))return!1}else if(isRefList(Gt)||isRefList(zt)){if(!D(Gt,zt))return!1}else if(isRefMap(Gt)||isRefMap(zt)){if(!_(Gt,zt))return!1}else if(C(Gt)||C(zt)){if(!z(Gt,zt))return!1}else if(G(Gt)||G(zt)){if(!k(Gt,zt))return!1}else if(Gt!==zt)return!1}return!0}detach(){return this.graph.disconnectParents(this,_e=>_e.propertyType!=="Root"),this}listParents(){return this.graph.listParents(this)}};class K extends Z$1{getDefaults(){return Object.assign(super.getDefaults(),{extensions:{}})}getExtension(_e){return this.getRefMap("extensions",_e)}setExtension(_e,Dt){return Dt&&Dt.t(this),this.setRefMap("extensions",_e,Dt)}listExtensions(){return this.listRefMapValues("extensions")}}class Q extends K{constructor(..._e){super(..._e),this.i=L.identity,this.o=L.identity}init(){this.propertyType=h.ACCESSOR}getDefaults(){return Object.assign(super.getDefaults(),{array:null,type:Q.Type.SCALAR,componentType:Q.ComponentType.FLOAT,normalized:!1,sparse:!1,buffer:null})}copy(_e,Dt=H){return super.copy(_e,Dt),this.i=_e.i,this.o=_e.o,this}static getElementSize(_e){switch(_e){case Q.Type.SCALAR:return 1;case Q.Type.VEC2:return 2;case Q.Type.VEC3:return 3;case Q.Type.VEC4:case Q.Type.MAT2:return 4;case Q.Type.MAT3:return 9;case Q.Type.MAT4:return 16;default:throw new Error("Unexpected type: "+_e)}}static getComponentSize(_e){switch(_e){case Q.ComponentType.BYTE:case Q.ComponentType.UNSIGNED_BYTE:return 1;case Q.ComponentType.SHORT:case Q.ComponentType.UNSIGNED_SHORT:return 2;case Q.ComponentType.UNSIGNED_INT:case Q.ComponentType.FLOAT:return 4;default:throw new Error("Unexpected component type: "+_e)}}getMinNormalized(_e){const Dt=this.getElementSize();this.getMin(_e);for(let Vt=0;Vt<Dt;Vt++)_e[Vt]=this.o(_e[Vt]);return _e}getMin(_e){const Dt=this.get("array"),Vt=this.getCount(),Gt=this.getElementSize();for(let zt=0;zt<Gt;zt++)_e[zt]=1/0;for(let zt=0;zt<Vt*Gt;zt+=Gt)for(let jt=0;jt<Gt;jt++){const Ht=Dt[zt+jt];Number.isFinite(Ht)&&(_e[jt]=Math.min(_e[jt],Ht))}return _e}getMaxNormalized(_e){const Dt=this.getElementSize();this.getMax(_e);for(let Vt=0;Vt<Dt;Vt++)_e[Vt]=this.o(_e[Vt]);return _e}getMax(_e){const Dt=this.get("array"),Vt=this.getCount(),Gt=this.getElementSize();for(let zt=0;zt<Gt;zt++)_e[zt]=-1/0;for(let zt=0;zt<Vt*Gt;zt+=Gt)for(let jt=0;jt<Gt;jt++){const Ht=Dt[zt+jt];Number.isFinite(Ht)&&(_e[jt]=Math.max(_e[jt],Ht))}return _e}getCount(){const _e=this.get("array");return _e?_e.length/this.getElementSize():0}getType(){return this.get("type")}setType(_e){return this.set("type",_e)}getElementSize(){return Q.getElementSize(this.get("type"))}getComponentSize(){return this.get("array").BYTES_PER_ELEMENT}getComponentType(){return this.get("componentType")}getNormalized(){return this.get("normalized")}setNormalized(_e){return this.set("normalized",_e),_e?(this.o=Dt=>L.decodeNormalizedInt(Dt,this.get("componentType")),this.i=Dt=>L.encodeNormalizedInt(Dt,this.get("componentType"))):(this.o=L.identity,this.i=L.identity),this}getScalar(_e){const Dt=this.getElementSize();return this.o(this.get("array")[_e*Dt])}setScalar(_e,Dt){return this.get("array")[_e*this.getElementSize()]=this.i(Dt),this}getElement(_e,Dt){const Vt=this.getElementSize(),Gt=this.get("array");for(let zt=0;zt<Vt;zt++)Dt[zt]=this.o(Gt[_e*Vt+zt]);return Dt}setElement(_e,Dt){const Vt=this.getElementSize(),Gt=this.get("array");for(let zt=0;zt<Vt;zt++)Gt[_e*Vt+zt]=this.i(Dt[zt]);return this}getSparse(){return this.get("sparse")}setSparse(_e){return this.set("sparse",_e)}getBuffer(){return this.getRef("buffer")}setBuffer(_e){return this.setRef("buffer",_e)}getArray(){return this.get("array")}setArray(_e){return this.set("componentType",_e?function(Dt){switch(Dt.constructor){case Float32Array:return Q.ComponentType.FLOAT;case Uint32Array:return Q.ComponentType.UNSIGNED_INT;case Uint16Array:return Q.ComponentType.UNSIGNED_SHORT;case Uint8Array:return Q.ComponentType.UNSIGNED_BYTE;case Int16Array:return Q.ComponentType.SHORT;case Int8Array:return Q.ComponentType.BYTE;default:throw new Error("Unknown accessor componentType.")}}(_e):Q.ComponentType.FLOAT),this.set("array",_e),this}getByteLength(){const _e=this.get("array");return _e?_e.byteLength:0}}Q.Type={SCALAR:"SCALAR",VEC2:"VEC2",VEC3:"VEC3",VEC4:"VEC4",MAT2:"MAT2",MAT3:"MAT3",MAT4:"MAT4"},Q.ComponentType={BYTE:5120,UNSIGNED_BYTE:5121,SHORT:5122,UNSIGNED_SHORT:5123,UNSIGNED_INT:5125,FLOAT:5126};class X extends K{init(){this.propertyType=h.ANIMATION}getDefaults(){return Object.assign(super.getDefaults(),{channels:[],samplers:[]})}addChannel(_e){return this.addRef("channels",_e)}removeChannel(_e){return this.removeRef("channels",_e)}listChannels(){return this.listRefs("channels")}addSampler(_e){return this.addRef("samplers",_e)}removeSampler(_e){return this.removeRef("samplers",_e)}listSamplers(){return this.listRefs("samplers")}}class tt extends K{init(){this.propertyType=h.ANIMATION_CHANNEL}getDefaults(){return Object.assign(super.getDefaults(),{targetPath:null,targetNode:null,sampler:null})}getTargetPath(){return this.get("targetPath")}setTargetPath(_e){return this.set("targetPath",_e)}getTargetNode(){return this.getRef("targetNode")}setTargetNode(_e){return this.setRef("targetNode",_e)}getSampler(){return this.getRef("sampler")}setSampler(_e){return this.setRef("sampler",_e)}}tt.TargetPath={TRANSLATION:"translation",ROTATION:"rotation",SCALE:"scale",WEIGHTS:"weights"};class et extends K{init(){this.propertyType=h.ANIMATION_SAMPLER}getDefaultAttributes(){return Object.assign(super.getDefaults(),{interpolation:et.Interpolation.LINEAR,input:null,output:null})}getInterpolation(){return this.get("interpolation")}setInterpolation(_e){return this.set("interpolation",_e)}getInput(){return this.getRef("input")}setInput(_e){return this.setRef("input",_e,{usage:l.OTHER})}getOutput(){return this.getRef("output")}setOutput(_e){return this.setRef("output",_e,{usage:l.OTHER})}}et.Interpolation={LINEAR:"LINEAR",STEP:"STEP",CUBICSPLINE:"CUBICSPLINE"};class rt extends K{init(){this.propertyType=h.BUFFER}getDefaults(){return Object.assign(super.getDefaults(),{uri:""})}getURI(){return this.get("uri")}setURI(_e){return this.set("uri",_e)}}class st extends K{init(){this.propertyType=h.CAMERA}getDefaults(){return Object.assign(super.getDefaults(),{type:st.Type.PERSPECTIVE,znear:.1,zfar:100,aspectRatio:null,yfov:2*Math.PI*50/360,xmag:1,ymag:1})}getType(){return this.get("type")}setType(_e){return this.set("type",_e)}getZNear(){return this.get("znear")}setZNear(_e){return this.set("znear",_e)}getZFar(){return this.get("zfar")}setZFar(_e){return this.set("zfar",_e)}getAspectRatio(){return this.get("aspectRatio")}setAspectRatio(_e){return this.set("aspectRatio",_e)}getYFov(){return this.get("yfov")}setYFov(_e){return this.set("yfov",_e)}getXMag(){return this.get("xmag")}setXMag(_e){return this.set("xmag",_e)}getYMag(){return this.get("ymag")}setYMag(_e){return this.set("ymag",_e)}}st.Type={PERSPECTIVE:"perspective",ORTHOGRAPHIC:"orthographic"};class nt extends Z$1{t(_e){if(!this.parentTypes.includes(_e.propertyType))throw new Error(`Parent "${_e.propertyType}" invalid for child "${this.propertyType}".`)}}nt.EXTENSION_NAME=void 0;class it extends K{init(){this.propertyType=h.TEXTURE_INFO}getDefaults(){return Object.assign(super.getDefaults(),{texCoord:0,magFilter:null,minFilter:null,wrapS:it.WrapMode.REPEAT,wrapT:it.WrapMode.REPEAT})}getTexCoord(){return this.get("texCoord")}setTexCoord(_e){return this.set("texCoord",_e)}getMagFilter(){return this.get("magFilter")}setMagFilter(_e){return this.set("magFilter",_e)}getMinFilter(){return this.get("minFilter")}setMinFilter(_e){return this.set("minFilter",_e)}getWrapS(){return this.get("wrapS")}setWrapS(_e){return this.set("wrapS",_e)}getWrapT(){return this.get("wrapT")}setWrapT(_e){return this.set("wrapT",_e)}}it.WrapMode={CLAMP_TO_EDGE:33071,MIRRORED_REPEAT:33648,REPEAT:10497},it.MagFilter={NEAREST:9728,LINEAR:9729},it.MinFilter={NEAREST:9728,LINEAR:9729,NEAREST_MIPMAP_NEAREST:9984,LINEAR_MIPMAP_NEAREST:9985,NEAREST_MIPMAP_LINEAR:9986,LINEAR_MIPMAP_LINEAR:9987};const{R:ot,G:at,B:ut,A:ct}=d;class ht extends K{init(){this.propertyType=h.MATERIAL}getDefaults(){return Object.assign(super.getDefaults(),{alphaMode:ht.AlphaMode.OPAQUE,alphaCutoff:.5,doubleSided:!1,baseColorFactor:[1,1,1,1],baseColorTexture:null,baseColorTextureInfo:new it(this.graph,"baseColorTextureInfo"),emissiveFactor:[0,0,0],emissiveTexture:null,emissiveTextureInfo:new it(this.graph,"emissiveTextureInfo"),normalScale:1,normalTexture:null,normalTextureInfo:new it(this.graph,"normalTextureInfo"),occlusionStrength:1,occlusionTexture:null,occlusionTextureInfo:new it(this.graph,"occlusionTextureInfo"),roughnessFactor:1,metallicFactor:1,metallicRoughnessTexture:null,metallicRoughnessTextureInfo:new it(this.graph,"metallicRoughnessTextureInfo")})}getDoubleSided(){return this.get("doubleSided")}setDoubleSided(_e){return this.set("doubleSided",_e)}getAlpha(){return this.get("baseColorFactor")[3]}setAlpha(_e){const Dt=this.get("baseColorFactor").slice();return Dt[3]=_e,this.set("baseColorFactor",Dt)}getAlphaMode(){return this.get("alphaMode")}setAlphaMode(_e){return this.set("alphaMode",_e)}getAlphaCutoff(){return this.get("alphaCutoff")}setAlphaCutoff(_e){return this.set("alphaCutoff",_e)}getBaseColorFactor(){return this.get("baseColorFactor")}setBaseColorFactor(_e){return this.set("baseColorFactor",_e)}getBaseColorHex(){return S.factorToHex(this.get("baseColorFactor"))}setBaseColorHex(_e){const Dt=this.get("baseColorFactor").slice();return this.set("baseColorFactor",S.hexToFactor(_e,Dt))}getBaseColorTexture(){return this.getRef("baseColorTexture")}getBaseColorTextureInfo(){return this.getRef("baseColorTexture")?this.getRef("baseColorTextureInfo"):null}setBaseColorTexture(_e){return this.setRef("baseColorTexture",_e,{channels:ot|at|ut|ct,isColor:!0})}getEmissiveFactor(){return this.get("emissiveFactor")}setEmissiveFactor(_e){return this.set("emissiveFactor",_e)}getEmissiveHex(){return S.factorToHex(this.get("emissiveFactor"))}setEmissiveHex(_e){const Dt=this.get("emissiveFactor").slice();return this.set("emissiveFactor",S.hexToFactor(_e,Dt))}getEmissiveTexture(){return this.getRef("emissiveTexture")}getEmissiveTextureInfo(){return this.getRef("emissiveTexture")?this.getRef("emissiveTextureInfo"):null}setEmissiveTexture(_e){return this.setRef("emissiveTexture",_e,{channels:ot|at|ut,isColor:!0})}getNormalScale(){return this.get("normalScale")}setNormalScale(_e){return this.set("normalScale",_e)}getNormalTexture(){return this.getRef("normalTexture")}getNormalTextureInfo(){return this.getRef("normalTexture")?this.getRef("normalTextureInfo"):null}setNormalTexture(_e){return this.setRef("normalTexture",_e,{channels:ot|at|ut})}getOcclusionStrength(){return this.get("occlusionStrength")}setOcclusionStrength(_e){return this.set("occlusionStrength",_e)}getOcclusionTexture(){return this.getRef("occlusionTexture")}getOcclusionTextureInfo(){return this.getRef("occlusionTexture")?this.getRef("occlusionTextureInfo"):null}setOcclusionTexture(_e){return this.setRef("occlusionTexture",_e,{channels:ot})}getRoughnessFactor(){return this.get("roughnessFactor")}setRoughnessFactor(_e){return this.set("roughnessFactor",_e)}getMetallicFactor(){return this.get("metallicFactor")}setMetallicFactor(_e){return this.set("metallicFactor",_e)}getMetallicRoughnessTexture(){return this.getRef("metallicRoughnessTexture")}getMetallicRoughnessTextureInfo(){return this.getRef("metallicRoughnessTexture")?this.getRef("metallicRoughnessTextureInfo"):null}setMetallicRoughnessTexture(_e){return this.setRef("metallicRoughnessTexture",_e,{channels:at|ut})}}ht.AlphaMode={OPAQUE:"OPAQUE",MASK:"MASK",BLEND:"BLEND"};class ft extends K{init(){this.propertyType=h.MESH}getDefaults(){return Object.assign(super.getDefaults(),{weights:[],primitives:[]})}addPrimitive(_e){return this.addRef("primitives",_e)}removePrimitive(_e){return this.removeRef("primitives",_e)}listPrimitives(){return this.listRefs("primitives")}getWeights(){return this.get("weights")}setWeights(_e){return this.set("weights",_e)}}class lt extends K{constructor(..._e){super(..._e),this.u=null,this.h=new Set}init(){this.propertyType=h.NODE}getDefaults(){return Object.assign(super.getDefaults(),{translation:[0,0,0],rotation:[0,0,0,1],scale:[1,1,1],weights:[],camera:null,mesh:null,skin:null,children:[]})}copy(_e,Dt=H){if(Dt===H)throw new Error("Node cannot be copied.");return super.copy(_e,Dt)}getTranslation(){return this.get("translation")}getRotation(){return this.get("rotation")}getScale(){return this.get("scale")}setTranslation(_e){return this.set("translation",_e)}setRotation(_e){return this.set("rotation",_e)}setScale(_e){return this.set("scale",_e)}getMatrix(){return L.compose(this.get("translation"),this.get("rotation"),this.get("scale"),[])}setMatrix(_e){const Dt=this.get("translation").slice(),Vt=this.get("rotation").slice(),Gt=this.get("scale").slice();return L.decompose(_e,Dt,Vt,Gt),this.set("translation",Dt).set("rotation",Vt).set("scale",Gt)}getWorldTranslation(){const _e=[0,0,0];return L.decompose(this.getWorldMatrix(),_e,[0,0,0,1],[1,1,1]),_e}getWorldRotation(){const _e=[0,0,0,1];return L.decompose(this.getWorldMatrix(),[0,0,0],_e,[1,1,1]),_e}getWorldScale(){const _e=[1,1,1];return L.decompose(this.getWorldMatrix(),[0,0,0],[0,0,0,1],_e),_e}getWorldMatrix(){const _e=[];for(let Gt=this;Gt!=null;Gt=Gt.u)_e.push(Gt);let Dt;const Vt=_e.pop().getMatrix();for(;Dt=_e.pop();)P(Vt,Vt,Dt.getMatrix());return Vt}addChild(_e){if(_e.u&&_e.u.removeChild(_e),_e.h.size)for(const Vt of _e.h)Vt.removeChild(_e);this.addRef("children",_e),_e.u=this;const Dt=this[$attributes].children;return Dt[Dt.length-1].addEventListener("dispose",()=>_e.u=null),this}removeChild(_e){return this.removeRef("children",_e)}listChildren(){return this.listRefs("children")}getParent(){return this.u?this.u:this.listParents().find(_e=>_e.propertyType===h.SCENE)||null}getParentNode(){return this.u}getMesh(){return this.getRef("mesh")}setMesh(_e){return this.setRef("mesh",_e)}getCamera(){return this.getRef("camera")}setCamera(_e){return this.setRef("camera",_e)}getSkin(){return this.getRef("skin")}setSkin(_e){return this.setRef("skin",_e)}getWeights(){return this.get("weights")}setWeights(_e){return this.set("weights",_e)}traverse(_e){_e(this);for(const Dt of this.listChildren())Dt.traverse(_e);return this}}class dt extends K{init(){this.propertyType=h.PRIMITIVE}getDefaults(){return Object.assign(super.getDefaults(),{mode:dt.Mode.TRIANGLES,material:null,indices:null,attributes:{},targets:[]})}getIndices(){return this.getRef("indices")}setIndices(_e){return this.setRef("indices",_e,{usage:l.ELEMENT_ARRAY_BUFFER})}getAttribute(_e){return this.getRefMap("attributes",_e)}setAttribute(_e,Dt){return this.setRefMap("attributes",_e,Dt,{usage:l.ARRAY_BUFFER})}listAttributes(){return this.listRefMapValues("attributes")}listSemantics(){return this.listRefMapKeys("attributes")}getMaterial(){return this.getRef("material")}setMaterial(_e){return this.setRef("material",_e)}getMode(){return this.get("mode")}setMode(_e){return this.set("mode",_e)}listTargets(){return this.listRefs("targets")}addTarget(_e){return this.addRef("targets",_e)}removeTarget(_e){return this.removeRef("targets",_e)}}dt.Mode={POINTS:0,LINES:1,LINE_LOOP:2,LINE_STRIP:3,TRIANGLES:4,TRIANGLE_STRIP:5,TRIANGLE_FAN:6};class gt extends Z$1{init(){this.propertyType=h.PRIMITIVE_TARGET}getDefaults(){return Object.assign(super.getDefaults(),{attributes:{}})}getAttribute(_e){return this.getRefMap("attributes",_e)}setAttribute(_e,Dt){return this.setRefMap("attributes",_e,Dt,{usage:l.ARRAY_BUFFER})}listAttributes(){return this.listRefMapValues("attributes")}listSemantics(){return this.listRefMapKeys("attributes")}}function pt(){return pt=Object.assign?Object.assign.bind():function(kt){for(var _e=1;_e<arguments.length;_e++){var Dt=arguments[_e];for(var Vt in Dt)Object.prototype.hasOwnProperty.call(Dt,Vt)&&(kt[Vt]=Dt[Vt])}return kt},pt.apply(this,arguments)}class mt extends K{init(){this.propertyType=h.SCENE}getDefaults(){return Object.assign(super.getDefaults(),{children:[]})}copy(_e,Dt=H){if(Dt===H)throw new Error("Scene cannot be copied.");return super.copy(_e,Dt)}addChild(_e){_e.u&&_e.u.removeChild(_e),this.addRef("children",_e),_e.h.add(this);const Dt=this[$attributes].children;return Dt[Dt.length-1].addEventListener("dispose",()=>_e.h.delete(this)),this}removeChild(_e){return this.removeRef("children",_e)}listChildren(){return this.listRefs("children")}traverse(_e){for(const Dt of this.listChildren())Dt.traverse(_e);return this}}class wt extends K{init(){this.propertyType=h.SKIN}getDefaults(){return Object.assign(super.getDefaults(),{skeleton:null,inverseBindMatrices:null,joints:[]})}getSkeleton(){return this.getRef("skeleton")}setSkeleton(_e){return this.setRef("skeleton",_e)}getInverseBindMatrices(){return this.getRef("inverseBindMatrices")}setInverseBindMatrices(_e){return this.setRef("inverseBindMatrices",_e,{usage:l.INVERSE_BIND_MATRICES})}addJoint(_e){return this.addRef("joints",_e)}removeJoint(_e){return this.removeRef("joints",_e)}listJoints(){return this.listRefs("joints")}}class yt extends K{init(){this.propertyType=h.TEXTURE}getDefaults(){return Object.assign(super.getDefaults(),{image:null,mimeType:"",uri:""})}getMimeType(){return this.get("mimeType")||I.extensionToMimeType(N.extension(this.get("uri")))}setMimeType(_e){return this.set("mimeType",_e)}getURI(){return this.get("uri")}setURI(_e){this.set("uri",_e);const Dt=I.extensionToMimeType(N.extension(_e));return Dt&&this.set("mimeType",Dt),this}getImage(){return this.get("image")}setImage(_e){return this.set("image",E.assertView(_e))}getSize(){const _e=this.get("image");return _e?I.getSize(_e,this.getMimeType()):null}}class vt extends K{init(){this.propertyType=h.ROOT}getDefaults(){return Object.assign(super.getDefaults(),{asset:{generator:`glTF-Transform ${u}`,version:"2.0"},defaultScene:null,accessors:[],animations:[],buffers:[],cameras:[],materials:[],meshes:[],nodes:[],scenes:[],skins:[],textures:[]})}constructor(_e){super(_e),this.l=new Set,_e.addEventListener("node:create",Dt=>{this.g(Dt.target)})}clone(){throw new Error("Root cannot be cloned.")}copy(_e,Dt=H){if(Dt===H)throw new Error("Root cannot be copied.");this.set("asset",pt({},_e.get("asset"))),this.setName(_e.getName()),this.setExtras(pt({},_e.getExtras())),this.setDefaultScene(_e.getDefaultScene()?Dt(_e.getDefaultScene()):null);for(const Vt of _e.listRefMapKeys("extensions")){const Gt=_e.getExtension(Vt);this.setExtension(Vt,Dt(Gt))}return this}g(_e){return _e instanceof mt?this.addRef("scenes",_e):_e instanceof lt?this.addRef("nodes",_e):_e instanceof st?this.addRef("cameras",_e):_e instanceof wt?this.addRef("skins",_e):_e instanceof ft?this.addRef("meshes",_e):_e instanceof ht?this.addRef("materials",_e):_e instanceof yt?this.addRef("textures",_e):_e instanceof X?this.addRef("animations",_e):_e instanceof Q?this.addRef("accessors",_e):_e instanceof rt&&this.addRef("buffers",_e),this}getAsset(){return this.get("asset")}listExtensionsUsed(){return Array.from(this.l)}listExtensionsRequired(){return this.listExtensionsUsed().filter(_e=>_e.isRequired())}p(_e){return this.l.add(_e),this}m(_e){return this.l.delete(_e),this}listScenes(){return this.listRefs("scenes")}setDefaultScene(_e){return this.setRef("defaultScene",_e)}getDefaultScene(){return this.getRef("defaultScene")}listNodes(){return this.listRefs("nodes")}listCameras(){return this.listRefs("cameras")}listSkins(){return this.listRefs("skins")}listMeshes(){return this.listRefs("meshes")}listMaterials(){return this.listRefs("materials")}listTextures(){return this.listRefs("textures")}listAnimations(){return this.listRefs("animations")}listAccessors(){return this.listRefs("accessors")}listBuffers(){return this.listRefs("buffers")}}class Tt{static fromGraph(_e){return Tt.v.get(_e)||null}constructor(){this.T=new Graph,this.S=new vt(this.T),this.M=B$1.DEFAULT_INSTANCE,Tt.v.set(this.T,this)}getRoot(){return this.S}getGraph(){return this.T}getLogger(){return this.M}setLogger(_e){return this.M=_e,this}clone(){return new Tt().setLogger(this.M).merge(this)}merge(_e){for(const zt of _e.getRoot().listExtensionsUsed()){const jt=this.createExtension(zt.constructor);zt.isRequired()&&jt.setRequired(!0)}const Dt=new Set,Vt=new Map;Dt.add(_e.S),Vt.set(_e.S,this.S);for(const zt of _e.T.listEdges())for(const jt of[zt.getParent(),zt.getChild()]){if(Dt.has(jt))continue;let Ht;Ht=jt.propertyType===h.TEXTURE_INFO?jt:new jt.constructor(this.T),Vt.set(jt,Ht),Dt.add(jt)}const Gt=zt=>{const jt=Vt.get(zt);if(!jt)throw new Error("Could resolve property.");return jt};for(const zt of Dt){const jt=Vt.get(zt);if(!jt)throw new Error("Could resolve property.");jt.propertyType!==h.TEXTURE_INFO&&jt.copy(zt,Gt)}return this}async transform(..._e){const Dt=_e.map(Vt=>Vt.name);for(const Vt of _e)await Vt(this,{stack:Dt});return this}createExtension(_e){const Dt=_e.EXTENSION_NAME;return this.getRoot().listExtensionsUsed().find(Vt=>Vt.extensionName===Dt)||new _e(this)}createScene(_e=""){return new mt(this.T,_e)}createNode(_e=""){return new lt(this.T,_e)}createCamera(_e=""){return new st(this.T,_e)}createSkin(_e=""){return new wt(this.T,_e)}createMesh(_e=""){return new ft(this.T,_e)}createPrimitive(){return new dt(this.T)}createPrimitiveTarget(_e=""){return new gt(this.T,_e)}createMaterial(_e=""){return new ht(this.T,_e)}createTexture(_e=""){return new yt(this.T,_e)}createAnimation(_e=""){return new X(this.T,_e)}createAnimationChannel(_e=""){return new tt(this.T,_e)}createAnimationSampler(_e=""){return new et(this.T,_e)}createAccessor(_e="",Dt=null){return Dt||(Dt=this.getRoot().listBuffers()[0]),new Q(this.T,_e).setBuffer(Dt)}createBuffer(_e=""){return new rt(this.T,_e)}}Tt.v=new WeakMap;class xt{constructor(_e){this.jsonDoc=void 0,this.buffers=[],this.bufferViews=[],this.bufferViewBuffers=[],this.accessors=[],this.textures=[],this.textureInfos=new Map,this.materials=[],this.meshes=[],this.cameras=[],this.nodes=[],this.skins=[],this.animations=[],this.scenes=[],this.jsonDoc=_e}setTextureInfo(_e,Dt){this.textureInfos.set(_e,Dt),Dt.texCoord!==void 0&&_e.setTexCoord(Dt.texCoord),Dt.extras!==void 0&&_e.setExtras(Dt.extras);const Vt=this.jsonDoc.json.textures[Dt.index];if(Vt.sampler===void 0)return;const Gt=this.jsonDoc.json.samplers[Vt.sampler];Gt.magFilter!==void 0&&_e.setMagFilter(Gt.magFilter),Gt.minFilter!==void 0&&_e.setMinFilter(Gt.minFilter),Gt.wrapS!==void 0&&_e.setWrapS(Gt.wrapS),Gt.wrapT!==void 0&&_e.setWrapT(Gt.wrapT)}}const At={logger:B$1.DEFAULT_INSTANCE,extensions:[],dependencies:{}};class Et{static read(_e,Dt=At){const Vt=pt({},At,Dt),{json:Gt}=_e,zt=new Tt().setLogger(Vt.logger);this.validate(_e,Vt);const jt=new xt(_e),Ht=Gt.asset,Wt=zt.getRoot().getAsset();Ht.copyright&&(Wt.copyright=Ht.copyright),Ht.extras&&(Wt.extras=Ht.extras),Gt.extras!==void 0&&zt.getRoot().setExtras(pt({},Gt.extras));const qt=Gt.extensionsUsed||[],Xt=Gt.extensionsRequired||[];for(const en of Vt.extensions)if(qt.includes(en.EXTENSION_NAME)){const tn=zt.createExtension(en).setRequired(Xt.includes(en.EXTENSION_NAME));for(const sn of tn.readDependencies)tn.install(sn,Vt.dependencies[sn])}const Kt=Gt.buffers||[];zt.getRoot().listExtensionsUsed().filter(en=>en.prereadTypes.includes(h.BUFFER)).forEach(en=>en.preread(jt,h.BUFFER)),jt.buffers=Kt.map(en=>{const tn=zt.createBuffer(en.name);return en.extras&&tn.setExtras(en.extras),en.uri&&en.uri.indexOf("__")!==0&&tn.setURI(en.uri),tn}),jt.bufferViewBuffers=(Gt.bufferViews||[]).map((en,tn)=>{if(!jt.bufferViews[tn]){const sn=_e.json.buffers[en.buffer];jt.bufferViews[tn]=E.toView(sn.uri?_e.resources[sn.uri]:_e.resources[c],en.byteOffset||0,en.byteLength)}return jt.buffers[en.buffer]});const Yt=Gt.accessors||[];jt.accessors=Yt.map(en=>{const tn=zt.createAccessor(en.name,jt.bufferViewBuffers[en.bufferView]).setType(en.type);return en.extras&&tn.setExtras(en.extras),en.normalized!==void 0&&tn.setNormalized(en.normalized),en.bufferView===void 0||tn.setArray(St(en,jt)),tn});const Zt=Gt.images||[],Jt=Gt.textures||[];zt.getRoot().listExtensionsUsed().filter(en=>en.prereadTypes.includes(h.TEXTURE)).forEach(en=>en.preread(jt,h.TEXTURE)),jt.textures=Zt.map(en=>{const tn=zt.createTexture(en.name);if(en.extras&&tn.setExtras(en.extras),en.bufferView!==void 0){const sn=Gt.bufferViews[en.bufferView],cn=_e.json.buffers[sn.buffer],un=sn.byteOffset||0,hn=(cn.uri?_e.resources[cn.uri]:_e.resources[c]).slice(un,un+sn.byteLength);tn.setImage(hn)}else en.uri!==void 0&&(tn.setImage(_e.resources[en.uri]),en.uri.indexOf("__")!==0&&tn.setURI(en.uri));if(en.mimeType!==void 0)tn.setMimeType(en.mimeType);else if(en.uri){const sn=N.extension(en.uri);tn.setMimeType(I.extensionToMimeType(sn))}return tn}),jt.materials=(Gt.materials||[]).map(en=>{const tn=zt.createMaterial(en.name);en.extras&&tn.setExtras(en.extras),en.alphaMode!==void 0&&tn.setAlphaMode(en.alphaMode),en.alphaCutoff!==void 0&&tn.setAlphaCutoff(en.alphaCutoff),en.doubleSided!==void 0&&tn.setDoubleSided(en.doubleSided);const sn=en.pbrMetallicRoughness||{};if(sn.baseColorFactor!==void 0&&tn.setBaseColorFactor(sn.baseColorFactor),en.emissiveFactor!==void 0&&tn.setEmissiveFactor(en.emissiveFactor),sn.metallicFactor!==void 0&&tn.setMetallicFactor(sn.metallicFactor),sn.roughnessFactor!==void 0&&tn.setRoughnessFactor(sn.roughnessFactor),sn.baseColorTexture!==void 0){const cn=sn.baseColorTexture;tn.setBaseColorTexture(jt.textures[Jt[cn.index].source]),jt.setTextureInfo(tn.getBaseColorTextureInfo(),cn)}if(en.emissiveTexture!==void 0){const cn=en.emissiveTexture;tn.setEmissiveTexture(jt.textures[Jt[cn.index].source]),jt.setTextureInfo(tn.getEmissiveTextureInfo(),cn)}if(en.normalTexture!==void 0){const cn=en.normalTexture;tn.setNormalTexture(jt.textures[Jt[cn.index].source]),jt.setTextureInfo(tn.getNormalTextureInfo(),cn),en.normalTexture.scale!==void 0&&tn.setNormalScale(en.normalTexture.scale)}if(en.occlusionTexture!==void 0){const cn=en.occlusionTexture;tn.setOcclusionTexture(jt.textures[Jt[cn.index].source]),jt.setTextureInfo(tn.getOcclusionTextureInfo(),cn),en.occlusionTexture.strength!==void 0&&tn.setOcclusionStrength(en.occlusionTexture.strength)}if(sn.metallicRoughnessTexture!==void 0){const cn=sn.metallicRoughnessTexture;tn.setMetallicRoughnessTexture(jt.textures[Jt[cn.index].source]),jt.setTextureInfo(tn.getMetallicRoughnessTextureInfo(),cn)}return tn});const nn=Gt.meshes||[];zt.getRoot().listExtensionsUsed().filter(en=>en.prereadTypes.includes(h.PRIMITIVE)).forEach(en=>en.preread(jt,h.PRIMITIVE)),jt.meshes=nn.map(en=>{const tn=zt.createMesh(en.name);return en.extras&&tn.setExtras(en.extras),en.weights!==void 0&&tn.setWeights(en.weights),(en.primitives||[]).forEach(sn=>{const cn=zt.createPrimitive();sn.extras&&cn.setExtras(sn.extras),sn.material!==void 0&&cn.setMaterial(jt.materials[sn.material]),sn.mode!==void 0&&cn.setMode(sn.mode);for(const[hn,dn]of Object.entries(sn.attributes||{}))cn.setAttribute(hn,jt.accessors[dn]);sn.indices!==void 0&&cn.setIndices(jt.accessors[sn.indices]);const un=en.extras&&en.extras.targetNames||[];(sn.targets||[]).forEach((hn,dn)=>{const pn=un[dn]||dn.toString(),fn=zt.createPrimitiveTarget(pn);for(const[mn,vn]of Object.entries(hn))fn.setAttribute(mn,jt.accessors[vn]);cn.addTarget(fn)}),tn.addPrimitive(cn)}),tn}),jt.cameras=(Gt.cameras||[]).map(en=>{const tn=zt.createCamera(en.name).setType(en.type);if(en.extras&&tn.setExtras(en.extras),en.type===st.Type.PERSPECTIVE){const sn=en.perspective;tn.setYFov(sn.yfov),tn.setZNear(sn.znear),sn.zfar!==void 0&&tn.setZFar(sn.zfar),sn.aspectRatio!==void 0&&tn.setAspectRatio(sn.aspectRatio)}else{const sn=en.orthographic;tn.setZNear(sn.znear).setZFar(sn.zfar).setXMag(sn.xmag).setYMag(sn.ymag)}return tn});const rn=Gt.nodes||[];zt.getRoot().listExtensionsUsed().filter(en=>en.prereadTypes.includes(h.NODE)).forEach(en=>en.preread(jt,h.NODE)),jt.nodes=rn.map(en=>{const tn=zt.createNode(en.name);if(en.extras&&tn.setExtras(en.extras),en.translation!==void 0&&tn.setTranslation(en.translation),en.rotation!==void 0&&tn.setRotation(en.rotation),en.scale!==void 0&&tn.setScale(en.scale),en.matrix!==void 0){const sn=[0,0,0],cn=[0,0,0,1],un=[1,1,1];L.decompose(en.matrix,sn,cn,un),tn.setTranslation(sn),tn.setRotation(cn),tn.setScale(un)}return en.weights!==void 0&&tn.setWeights(en.weights),tn}),jt.skins=(Gt.skins||[]).map(en=>{const tn=zt.createSkin(en.name);en.extras&&tn.setExtras(en.extras),en.inverseBindMatrices!==void 0&&tn.setInverseBindMatrices(jt.accessors[en.inverseBindMatrices]),en.skeleton!==void 0&&tn.setSkeleton(jt.nodes[en.skeleton]);for(const sn of en.joints)tn.addJoint(jt.nodes[sn]);return tn}),rn.map((en,tn)=>{const sn=jt.nodes[tn];(en.children||[]).forEach(cn=>sn.addChild(jt.nodes[cn])),en.mesh!==void 0&&sn.setMesh(jt.meshes[en.mesh]),en.camera!==void 0&&sn.setCamera(jt.cameras[en.camera]),en.skin!==void 0&&sn.setSkin(jt.skins[en.skin])}),jt.animations=(Gt.animations||[]).map(en=>{const tn=zt.createAnimation(en.name);en.extras&&tn.setExtras(en.extras);const sn=(en.samplers||[]).map(cn=>{const un=zt.createAnimationSampler().setInput(jt.accessors[cn.input]).setOutput(jt.accessors[cn.output]).setInterpolation(cn.interpolation||et.Interpolation.LINEAR);return cn.extras&&un.setExtras(cn.extras),tn.addSampler(un),un});return(en.channels||[]).forEach(cn=>{const un=zt.createAnimationChannel().setSampler(sn[cn.sampler]).setTargetPath(cn.target.path);cn.target.node!==void 0&&un.setTargetNode(jt.nodes[cn.target.node]),cn.extras&&un.setExtras(cn.extras),tn.addChannel(un)}),tn});const Qt=Gt.scenes||[];return zt.getRoot().listExtensionsUsed().filter(en=>en.prereadTypes.includes(h.SCENE)).forEach(en=>en.preread(jt,h.SCENE)),jt.scenes=Qt.map(en=>{const tn=zt.createScene(en.name);return en.extras&&tn.setExtras(en.extras),(en.nodes||[]).map(sn=>jt.nodes[sn]).forEach(sn=>tn.addChild(sn)),tn}),Gt.scene!==void 0&&zt.getRoot().setDefaultScene(jt.scenes[Gt.scene]),zt.getRoot().listExtensionsUsed().forEach(en=>en.read(jt)),Yt.forEach((en,tn)=>{const sn=jt.accessors[tn],cn=!!en.sparse,un=!en.bufferView&&!sn.getArray();(cn||un)&&sn.setSparse(!0).setArray(function(hn,dn){const pn=p[hn.componentType],fn=Q.getElementSize(hn.type);let mn;mn=hn.bufferView!==void 0?St(hn,dn):new pn(hn.count*fn);const vn=hn.sparse;if(!vn)return mn;const _n=vn.count,En=pt({},hn,vn.indices,{count:_n,type:"SCALAR"}),An=pt({},hn,vn.values,{count:_n}),Tn=St(En,dn),Cn=St(An,dn);for(let yn=0;yn<En.count;yn++)for(let Sn=0;Sn<fn;Sn++)mn[Tn[yn]*fn+Sn]=Cn[yn*fn+Sn];return mn}(en,jt))}),zt}static validate(_e,Dt){const Vt=_e.json;if(Vt.asset.version!=="2.0")throw new Error(`Unsupported glTF version, "${Vt.asset.version}".`);if(Vt.extensionsRequired){for(const Gt of Vt.extensionsRequired)if(!Dt.extensions.find(zt=>zt.EXTENSION_NAME===Gt))throw new Error(`Missing required extension, "${Gt}".`)}if(Vt.extensionsUsed)for(const Gt of Vt.extensionsUsed)Dt.extensions.find(zt=>zt.EXTENSION_NAME===Gt)||Dt.logger.warn(`Missing optional extension, "${Gt}".`)}}function St(kt,_e){const Dt=_e.bufferViews[kt.bufferView],Vt=_e.jsonDoc.json.bufferViews[kt.bufferView],Gt=p[kt.componentType],zt=Q.getElementSize(kt.type),jt=Gt.BYTES_PER_ELEMENT;if(Vt.byteStride!==void 0&&Vt.byteStride!==zt*jt)return function(Wt,qt){const Xt=qt.bufferViews[Wt.bufferView],Kt=qt.jsonDoc.json.bufferViews[Wt.bufferView],Yt=p[Wt.componentType],Zt=Q.getElementSize(Wt.type),Jt=Yt.BYTES_PER_ELEMENT,nn=Wt.byteOffset||0,rn=new Yt(Wt.count*Zt),Qt=new DataView(Xt.buffer,Xt.byteOffset,Xt.byteLength),en=Kt.byteStride;for(let tn=0;tn<Wt.count;tn++)for(let sn=0;sn<Zt;sn++){const cn=nn+tn*en+sn*Jt;let un;switch(Wt.componentType){case Q.ComponentType.FLOAT:un=Qt.getFloat32(cn,!0);break;case Q.ComponentType.UNSIGNED_INT:un=Qt.getUint32(cn,!0);break;case Q.ComponentType.UNSIGNED_SHORT:un=Qt.getUint16(cn,!0);break;case Q.ComponentType.UNSIGNED_BYTE:un=Qt.getUint8(cn);break;case Q.ComponentType.SHORT:un=Qt.getInt16(cn,!0);break;case Q.ComponentType.BYTE:un=Qt.getInt8(cn);break;default:throw new Error(`Unexpected componentType "${Wt.componentType}".`)}rn[tn*Zt+sn]=un}return rn}(kt,_e);const Ht=Dt.byteOffset+(kt.byteOffset||0);return new Gt(Dt.buffer.slice(Ht,Ht+kt.count*zt*jt))}var Mt;(function(kt){kt[kt.ARRAY_BUFFER=34962]="ARRAY_BUFFER",kt[kt.ELEMENT_ARRAY_BUFFER=34963]="ELEMENT_ARRAY_BUFFER"})(Mt||(Mt={}));class It{constructor(_e,Dt,Vt){this.C=void 0,this.jsonDoc=void 0,this.options=void 0,this.accessorIndexMap=new Map,this.animationIndexMap=new Map,this.bufferIndexMap=new Map,this.cameraIndexMap=new Map,this.skinIndexMap=new Map,this.materialIndexMap=new Map,this.meshIndexMap=new Map,this.nodeIndexMap=new Map,this.imageIndexMap=new Map,this.textureDefIndexMap=new Map,this.textureInfoDefMap=new Map,this.samplerDefIndexMap=new Map,this.sceneIndexMap=new Map,this.imageBufferViews=[],this.otherBufferViews=new Map,this.otherBufferViewsIndexMap=new Map,this.extensionData={},this.bufferURIGenerator=void 0,this.imageURIGenerator=void 0,this.logger=void 0,this.F=new Map,this.accessorUsageGroupedByParent=new Set(["ARRAY_BUFFER"]),this.accessorParents=new Map,this.C=_e,this.jsonDoc=Dt,this.options=Vt;const Gt=_e.getRoot(),zt=Gt.listBuffers().length,jt=Gt.listTextures().length;this.bufferURIGenerator=new Rt(zt>1,()=>Vt.basename||"buffer"),this.imageURIGenerator=new Rt(jt>1,Ht=>function(Wt,qt){const Xt=Wt.getGraph().listParentEdges(qt).find(Kt=>Kt.getParent()!==Wt.getRoot());return Xt?Xt.getName().replace(/texture$/i,""):""}(_e,Ht)||Vt.basename||"texture"),this.logger=_e.getLogger()}createTextureInfoDef(_e,Dt){const Vt={magFilter:Dt.getMagFilter()||void 0,minFilter:Dt.getMinFilter()||void 0,wrapS:Dt.getWrapS(),wrapT:Dt.getWrapT()},Gt=JSON.stringify(Vt);this.samplerDefIndexMap.has(Gt)||(this.samplerDefIndexMap.set(Gt,this.jsonDoc.json.samplers.length),this.jsonDoc.json.samplers.push(Vt));const zt={source:this.imageIndexMap.get(_e),sampler:this.samplerDefIndexMap.get(Gt)},jt=JSON.stringify(zt);this.textureDefIndexMap.has(jt)||(this.textureDefIndexMap.set(jt,this.jsonDoc.json.textures.length),this.jsonDoc.json.textures.push(zt));const Ht={index:this.textureDefIndexMap.get(jt)};return Dt.getTexCoord()!==0&&(Ht.texCoord=Dt.getTexCoord()),Object.keys(Dt.getExtras()).length>0&&(Ht.extras=Dt.getExtras()),this.textureInfoDefMap.set(Dt,Ht),Ht}createPropertyDef(_e){const Dt={};return _e.getName()&&(Dt.name=_e.getName()),Object.keys(_e.getExtras()).length>0&&(Dt.extras=_e.getExtras()),Dt}createAccessorDef(_e){const Dt=this.createPropertyDef(_e);return Dt.type=_e.getType(),Dt.componentType=_e.getComponentType(),Dt.count=_e.getCount(),this.C.getGraph().listParentEdges(_e).some(Vt=>Vt.getName()==="attributes"&&Vt.getAttributes().key==="POSITION"||Vt.getName()==="input")&&(Dt.max=_e.getMax([]).map(Math.fround),Dt.min=_e.getMin([]).map(Math.fround)),_e.getNormalized()&&(Dt.normalized=_e.getNormalized()),Dt}createImageData(_e,Dt,Vt){if(this.options.format===g.GLB)this.imageBufferViews.push(Dt),_e.bufferView=this.jsonDoc.json.bufferViews.length,this.jsonDoc.json.bufferViews.push({buffer:0,byteOffset:-1,byteLength:Dt.byteLength});else{const Gt=I.mimeTypeToExtension(Vt.getMimeType());_e.uri=this.imageURIGenerator.createURI(Vt,Gt),this.jsonDoc.resources[_e.uri]=Dt}}getAccessorUsage(_e){const Dt=this.F.get(_e);if(Dt)return Dt;if(_e.getSparse())return l.SPARSE;for(const Vt of this.C.getGraph().listParentEdges(_e)){const{usage:Gt}=Vt.getAttributes();if(Gt)return Gt;Vt.getParent().propertyType!==h.ROOT&&this.logger.warn(`Missing attribute ".usage" on edge, "${Vt.getName()}".`)}return l.OTHER}addAccessorToUsageGroup(_e,Dt){const Vt=this.F.get(_e);if(Vt&&Vt!==Dt)throw new Error(`Accessor with usage "${Vt}" cannot be reused as "${Dt}".`);return this.F.set(_e,Dt),this}listAccessorUsageGroups(){const _e={};for(const[Dt,Vt]of Array.from(this.F.entries()))_e[Vt]=_e[Vt]||[],_e[Vt].push(Dt);return _e}}It.BufferViewTarget=Mt,It.BufferViewUsage=l,It.USAGE_TO_TARGET={[l.ARRAY_BUFFER]:Mt.ARRAY_BUFFER,[l.ELEMENT_ARRAY_BUFFER]:Mt.ELEMENT_ARRAY_BUFFER};class Rt{constructor(_e,Dt){this.multiple=void 0,this.basename=void 0,this.counter={},this.multiple=_e,this.basename=Dt}createURI(_e,Dt){if(_e.getURI())return _e.getURI();if(this.multiple){const Vt=this.basename(_e);return this.counter[Vt]=this.counter[Vt]||1,`${Vt}_${this.counter[Vt]++}.${Dt}`}return`${this.basename(_e)}.${Dt}`}}const{BufferViewUsage:Nt}=It,{UNSIGNED_INT:Ot,UNSIGNED_SHORT:Ct,UNSIGNED_BYTE:Ft}=Q.ComponentType;class Ut{static write(_e,Dt){const Vt=_e.getRoot(),Gt={asset:pt({generator:`glTF-Transform ${u}`},Vt.getAsset()),extras:pt({},Vt.getExtras())},zt={json:Gt,resources:{}},jt=new It(_e,zt,Dt),Ht=Dt.logger||B$1.DEFAULT_INSTANCE,Wt=new Set(Dt.extensions.map(rn=>rn.EXTENSION_NAME)),qt=_e.getRoot().listExtensionsUsed().filter(rn=>Wt.has(rn.extensionName)),Xt=_e.getRoot().listExtensionsRequired().filter(rn=>Wt.has(rn.extensionName));qt.length<_e.getRoot().listExtensionsUsed().length&&Ht.warn("Some extensions were not registered for I/O, and will not be written.");for(const rn of qt)for(const Qt of rn.writeDependencies)rn.install(Qt,Dt.dependencies[Qt]);function Kt(rn,Qt,en,tn){const sn=[];let cn=0;for(const hn of rn){const dn=jt.createAccessorDef(hn);dn.bufferView=Gt.bufferViews.length;const pn=hn.getArray(),fn=E.pad(E.toView(pn));dn.byteOffset=cn,cn+=fn.byteLength,sn.push(fn),jt.accessorIndexMap.set(hn,Gt.accessors.length),Gt.accessors.push(dn)}const un={buffer:Qt,byteOffset:en,byteLength:E.concat(sn).byteLength};return tn&&(un.target=tn),Gt.bufferViews.push(un),{buffers:sn,byteLength:cn}}function Yt(rn,Qt,en){const tn=rn[0].getCount();let sn=0;for(const dn of rn){const pn=jt.createAccessorDef(dn);pn.bufferView=Gt.bufferViews.length,pn.byteOffset=sn;const fn=dn.getElementSize(),mn=dn.getComponentSize();sn+=E.padNumber(fn*mn),jt.accessorIndexMap.set(dn,Gt.accessors.length),Gt.accessors.push(pn)}const cn=tn*sn,un=new ArrayBuffer(cn),hn=new DataView(un);for(let dn=0;dn<tn;dn++){let pn=0;for(const fn of rn){const mn=fn.getElementSize(),vn=fn.getComponentSize(),_n=fn.getComponentType(),En=fn.getArray();for(let An=0;An<mn;An++){const Tn=dn*sn+pn+An*vn,Cn=En[dn*mn+An];switch(_n){case Q.ComponentType.FLOAT:hn.setFloat32(Tn,Cn,!0);break;case Q.ComponentType.BYTE:hn.setInt8(Tn,Cn);break;case Q.ComponentType.SHORT:hn.setInt16(Tn,Cn,!0);break;case Q.ComponentType.UNSIGNED_BYTE:hn.setUint8(Tn,Cn);break;case Q.ComponentType.UNSIGNED_SHORT:hn.setUint16(Tn,Cn,!0);break;case Q.ComponentType.UNSIGNED_INT:hn.setUint32(Tn,Cn,!0);break;default:throw new Error("Unexpected component type: "+_n)}}pn+=E.padNumber(mn*vn)}}return Gt.bufferViews.push({buffer:Qt,byteOffset:en,byteLength:cn,byteStride:sn,target:It.BufferViewTarget.ARRAY_BUFFER}),{byteLength:cn,buffers:[new Uint8Array(un)]}}function Zt(rn,Qt,en){const tn=[];let sn=0;const cn=new Map;let un=-1/0;for(const _n of rn){const En=jt.createAccessorDef(_n);Gt.accessors.push(En),jt.accessorIndexMap.set(_n,Gt.accessors.length-1);const An=[],Tn=[],Cn=[],yn=new Array(_n.getElementSize()).fill(0);for(let Rn=0,Dn=_n.getCount();Rn<Dn;Rn++)if(_n.getElement(Rn,Cn),!L.eq(Cn,yn,0)){un=Math.max(Rn,un),An.push(Rn);for(let kn=0;kn<Cn.length;kn++)Tn.push(Cn[kn])}const Sn=An.length,wn={accessorDef:En,count:Sn};if(cn.set(_n,wn),Sn===0)continue;if(Sn>_n.getCount()/3){const Rn=(100*An.length/_n.getCount()).toFixed(1);Ht.warn(`Sparse accessor with many non-zero elements (${Rn}%) may increase file size.`)}const xn=p[_n.getComponentType()];wn.indices=An,wn.values=new xn(Tn)}if(!Number.isFinite(un))return{buffers:tn,byteLength:sn};const hn=un<255?Uint8Array:un<65535?Uint16Array:Uint32Array,dn=un<255?Ft:un<65535?Ct:Ot,pn={buffer:Qt,byteOffset:en+sn,byteLength:0};for(const _n of rn){const En=cn.get(_n);if(En.count===0)continue;En.indicesByteOffset=pn.byteLength;const An=E.pad(E.toView(new hn(En.indices)));tn.push(An),sn+=An.byteLength,pn.byteLength+=An.byteLength}Gt.bufferViews.push(pn);const fn=Gt.bufferViews.length-1,mn={buffer:Qt,byteOffset:en+sn,byteLength:0};for(const _n of rn){const En=cn.get(_n);if(En.count===0)continue;En.valuesByteOffset=mn.byteLength;const An=E.pad(E.toView(En.values));tn.push(An),sn+=An.byteLength,mn.byteLength+=An.byteLength}Gt.bufferViews.push(mn);const vn=Gt.bufferViews.length-1;for(const _n of rn){const En=cn.get(_n);En.count!==0&&(En.accessorDef.sparse={count:En.count,indices:{bufferView:fn,byteOffset:En.indicesByteOffset,componentType:dn},values:{bufferView:vn,byteOffset:En.valuesByteOffset}})}return{buffers:tn,byteLength:sn}}const Jt=new Map;for(const rn of _e.getGraph().listEdges()){if(rn.getParent()===Vt)continue;const Qt=rn.getChild();if(Qt instanceof Q){const en=Jt.get(Qt)||[];en.push(rn),Jt.set(Qt,en)}}if(Gt.accessors=[],Gt.bufferViews=[],Gt.samplers=[],Gt.textures=[],Gt.images=Vt.listTextures().map((rn,Qt)=>{const en=jt.createPropertyDef(rn);rn.getMimeType()&&(en.mimeType=rn.getMimeType());const tn=rn.getImage();return tn&&jt.createImageData(en,tn,rn),jt.imageIndexMap.set(rn,Qt),en}),qt.filter(rn=>rn.prewriteTypes.includes(h.ACCESSOR)).forEach(rn=>rn.prewrite(jt,h.ACCESSOR)),Vt.listAccessors().forEach(rn=>{const Qt=jt.accessorUsageGroupedByParent,en=jt.accessorParents;if(jt.accessorIndexMap.has(rn))return;const tn=Jt.get(rn)||[],sn=jt.getAccessorUsage(rn);if(jt.addAccessorToUsageGroup(rn,sn),Qt.has(sn)){const cn=tn[0].getParent(),un=en.get(cn)||new Set;un.add(rn),en.set(cn,un)}}),qt.filter(rn=>rn.prewriteTypes.includes(h.BUFFER)).forEach(rn=>rn.prewrite(jt,h.BUFFER)),(Vt.listAccessors().length>0||Vt.listTextures().length>0||jt.otherBufferViews.size>0)&&Vt.listBuffers().length===0)throw new Error("Buffer required for Document resources, but none was found.");Gt.buffers=[],Vt.listBuffers().forEach((rn,Qt)=>{const en=jt.createPropertyDef(rn),tn=jt.accessorUsageGroupedByParent,sn=jt.accessorParents,cn=rn.listParents().filter(mn=>mn instanceof Q),un=new Set(cn),hn=[],dn=Gt.buffers.length;let pn=0;const fn=jt.listAccessorUsageGroups();for(const mn in fn)if(tn.has(mn))for(const vn of Array.from(sn.values())){const _n=Array.from(vn).filter(En=>un.has(En)).filter(En=>jt.getAccessorUsage(En)===mn);if(_n.length)if(mn!==Nt.ARRAY_BUFFER||Dt.vertexLayout===f.INTERLEAVED){const En=mn===Nt.ARRAY_BUFFER?Yt(_n,dn,pn):Kt(_n,dn,pn);pn+=En.byteLength,hn.push(...En.buffers)}else for(const En of _n){const An=Yt([En],dn,pn);pn+=An.byteLength,hn.push(...An.buffers)}}else{const vn=fn[mn].filter(An=>un.has(An));if(!vn.length)continue;const _n=mn===Nt.ELEMENT_ARRAY_BUFFER?It.BufferViewTarget.ELEMENT_ARRAY_BUFFER:void 0,En=mn===Nt.SPARSE?Zt(vn,dn,pn):Kt(vn,dn,pn,_n);pn+=En.byteLength,hn.push(...En.buffers)}if(jt.imageBufferViews.length&&Qt===0){for(let mn=0;mn<jt.imageBufferViews.length;mn++)if(Gt.bufferViews[Gt.images[mn].bufferView].byteOffset=pn,pn+=jt.imageBufferViews[mn].byteLength,hn.push(jt.imageBufferViews[mn]),pn%8){const vn=8-pn%8;pn+=vn,hn.push(new Uint8Array(vn))}}if(jt.otherBufferViews.has(rn))for(const mn of jt.otherBufferViews.get(rn))Gt.bufferViews.push({buffer:dn,byteOffset:pn,byteLength:mn.byteLength}),jt.otherBufferViewsIndexMap.set(mn,Gt.bufferViews.length-1),pn+=mn.byteLength,hn.push(mn);if(pn){let mn;Dt.format===g.GLB?mn=c:(mn=jt.bufferURIGenerator.createURI(rn,"bin"),en.uri=mn),en.byteLength=pn,zt.resources[mn]=E.concat(hn)}Gt.buffers.push(en),jt.bufferIndexMap.set(rn,Qt)}),Vt.listAccessors().find(rn=>!rn.getBuffer())&&Ht.warn("Skipped writing one or more Accessors: no Buffer assigned."),Gt.materials=Vt.listMaterials().map((rn,Qt)=>{const en=jt.createPropertyDef(rn);if(rn.getAlphaMode()!==ht.AlphaMode.OPAQUE&&(en.alphaMode=rn.getAlphaMode()),rn.getAlphaMode()===ht.AlphaMode.MASK&&(en.alphaCutoff=rn.getAlphaCutoff()),rn.getDoubleSided()&&(en.doubleSided=!0),en.pbrMetallicRoughness={},L.eq(rn.getBaseColorFactor(),[1,1,1,1])||(en.pbrMetallicRoughness.baseColorFactor=rn.getBaseColorFactor()),L.eq(rn.getEmissiveFactor(),[0,0,0])||(en.emissiveFactor=rn.getEmissiveFactor()),rn.getRoughnessFactor()!==1&&(en.pbrMetallicRoughness.roughnessFactor=rn.getRoughnessFactor()),rn.getMetallicFactor()!==1&&(en.pbrMetallicRoughness.metallicFactor=rn.getMetallicFactor()),rn.getBaseColorTexture()){const tn=rn.getBaseColorTexture(),sn=rn.getBaseColorTextureInfo();en.pbrMetallicRoughness.baseColorTexture=jt.createTextureInfoDef(tn,sn)}if(rn.getEmissiveTexture()){const tn=rn.getEmissiveTexture(),sn=rn.getEmissiveTextureInfo();en.emissiveTexture=jt.createTextureInfoDef(tn,sn)}if(rn.getNormalTexture()){const tn=rn.getNormalTexture(),sn=rn.getNormalTextureInfo(),cn=jt.createTextureInfoDef(tn,sn);rn.getNormalScale()!==1&&(cn.scale=rn.getNormalScale()),en.normalTexture=cn}if(rn.getOcclusionTexture()){const tn=rn.getOcclusionTexture(),sn=rn.getOcclusionTextureInfo(),cn=jt.createTextureInfoDef(tn,sn);rn.getOcclusionStrength()!==1&&(cn.strength=rn.getOcclusionStrength()),en.occlusionTexture=cn}if(rn.getMetallicRoughnessTexture()){const tn=rn.getMetallicRoughnessTexture(),sn=rn.getMetallicRoughnessTextureInfo();en.pbrMetallicRoughness.metallicRoughnessTexture=jt.createTextureInfoDef(tn,sn)}return jt.materialIndexMap.set(rn,Qt),en}),Gt.meshes=Vt.listMeshes().map((rn,Qt)=>{const en=jt.createPropertyDef(rn);let tn=null;return en.primitives=rn.listPrimitives().map(sn=>{const cn={attributes:{}};cn.mode=sn.getMode();const un=sn.getMaterial();un&&(cn.material=jt.materialIndexMap.get(un)),Object.keys(sn.getExtras()).length&&(cn.extras=sn.getExtras());const hn=sn.getIndices();hn&&(cn.indices=jt.accessorIndexMap.get(hn));for(const dn of sn.listSemantics())cn.attributes[dn]=jt.accessorIndexMap.get(sn.getAttribute(dn));for(const dn of sn.listTargets()){const pn={};for(const fn of dn.listSemantics())pn[fn]=jt.accessorIndexMap.get(dn.getAttribute(fn));cn.targets=cn.targets||[],cn.targets.push(pn)}return sn.listTargets().length&&!tn&&(tn=sn.listTargets().map(dn=>dn.getName())),cn}),rn.getWeights().length&&(en.weights=rn.getWeights()),tn&&(en.extras=en.extras||{},en.extras.targetNames=tn),jt.meshIndexMap.set(rn,Qt),en}),Gt.cameras=Vt.listCameras().map((rn,Qt)=>{const en=jt.createPropertyDef(rn);if(en.type=rn.getType(),en.type===st.Type.PERSPECTIVE){en.perspective={znear:rn.getZNear(),zfar:rn.getZFar(),yfov:rn.getYFov()};const tn=rn.getAspectRatio();tn!==null&&(en.perspective.aspectRatio=tn)}else en.orthographic={znear:rn.getZNear(),zfar:rn.getZFar(),xmag:rn.getXMag(),ymag:rn.getYMag()};return jt.cameraIndexMap.set(rn,Qt),en}),Gt.nodes=Vt.listNodes().map((rn,Qt)=>{const en=jt.createPropertyDef(rn);return L.eq(rn.getTranslation(),[0,0,0])||(en.translation=rn.getTranslation()),L.eq(rn.getRotation(),[0,0,0,1])||(en.rotation=rn.getRotation()),L.eq(rn.getScale(),[1,1,1])||(en.scale=rn.getScale()),rn.getWeights().length&&(en.weights=rn.getWeights()),jt.nodeIndexMap.set(rn,Qt),en}),Gt.skins=Vt.listSkins().map((rn,Qt)=>{const en=jt.createPropertyDef(rn),tn=rn.getInverseBindMatrices();tn&&(en.inverseBindMatrices=jt.accessorIndexMap.get(tn));const sn=rn.getSkeleton();return sn&&(en.skeleton=jt.nodeIndexMap.get(sn)),en.joints=rn.listJoints().map(cn=>jt.nodeIndexMap.get(cn)),jt.skinIndexMap.set(rn,Qt),en}),Vt.listNodes().forEach((rn,Qt)=>{const en=Gt.nodes[Qt],tn=rn.getMesh();tn&&(en.mesh=jt.meshIndexMap.get(tn));const sn=rn.getCamera();sn&&(en.camera=jt.cameraIndexMap.get(sn));const cn=rn.getSkin();cn&&(en.skin=jt.skinIndexMap.get(cn)),rn.listChildren().length>0&&(en.children=rn.listChildren().map(un=>jt.nodeIndexMap.get(un)))}),Gt.animations=Vt.listAnimations().map((rn,Qt)=>{const en=jt.createPropertyDef(rn),tn=new Map;return en.samplers=rn.listSamplers().map((sn,cn)=>{const un=jt.createPropertyDef(sn);return un.input=jt.accessorIndexMap.get(sn.getInput()),un.output=jt.accessorIndexMap.get(sn.getOutput()),un.interpolation=sn.getInterpolation(),tn.set(sn,cn),un}),en.channels=rn.listChannels().map(sn=>{const cn=jt.createPropertyDef(sn);return cn.sampler=tn.get(sn.getSampler()),cn.target={node:jt.nodeIndexMap.get(sn.getTargetNode()),path:sn.getTargetPath()},cn}),jt.animationIndexMap.set(rn,Qt),en}),Gt.scenes=Vt.listScenes().map((rn,Qt)=>{const en=jt.createPropertyDef(rn);return en.nodes=rn.listChildren().map(tn=>jt.nodeIndexMap.get(tn)),jt.sceneIndexMap.set(rn,Qt),en});const nn=Vt.getDefaultScene();return nn&&(Gt.scene=Vt.listScenes().indexOf(nn)),Gt.extensionsUsed=qt.map(rn=>rn.extensionName),Gt.extensionsRequired=Xt.map(rn=>rn.extensionName),qt.forEach(rn=>rn.write(jt)),function(rn){const Qt=[];for(const en in rn){const tn=rn[en];(Array.isArray(tn)&&tn.length===0||tn===null||tn===""||tn&&typeof tn=="object"&&Object.keys(tn).length===0)&&Qt.push(en)}for(const en of Qt)delete rn[en]}(Gt),zt}}var Bt;(function(kt){kt[kt.JSON=1313821514]="JSON",kt[kt.BIN=5130562]="BIN"})(Bt||(Bt={}));class Pt{constructor(){this.M=B$1.DEFAULT_INSTANCE,this.l=new Set,this.U={},this.P=f.INTERLEAVED,this.lastReadBytes=0,this.lastWriteBytes=0}setLogger(_e){return this.M=_e,this}registerExtensions(_e){for(const Dt of _e)this.l.add(Dt),Dt.register();return this}registerDependencies(_e){return Object.assign(this.U,_e),this}setVertexLayout(_e){return this.P=_e,this}async read(_e){return await this.readJSON(await this.readAsJSON(_e))}async readAsJSON(_e){const Dt=await this.readURI(_e,"view");this.lastReadBytes=Dt.byteLength;const Vt=Lt(Dt)?this.L(Dt):{json:JSON.parse(E.decodeText(Dt)),resources:{}};return await this.j(Vt,this.dirname(_e)),this.D(Vt),Vt}async readJSON(_e){return _e=this._(_e),this.D(_e),Et.read(_e,{extensions:Array.from(this.l),dependencies:this.U,logger:this.M})}async binaryToJSON(_e){const Dt=this.L(E.assertView(_e));this.D(Dt);const Vt=Dt.json;if(Vt.buffers&&Vt.buffers.some(Gt=>function(zt,jt){return jt.uri!==void 0&&!(jt.uri in zt.resources)}(Dt,Gt)))throw new Error("Cannot resolve external buffers with binaryToJSON().");if(Vt.images&&Vt.images.some(Gt=>function(zt,jt){return jt.uri!==void 0&&!(jt.uri in zt.resources)&&jt.bufferView===void 0}(Dt,Gt)))throw new Error("Cannot resolve external images with binaryToJSON().");return Dt}async readBinary(_e){return this.readJSON(await this.binaryToJSON(E.assertView(_e)))}async writeJSON(_e,Dt={}){if(Dt.format===g.GLB&&_e.getRoot().listBuffers().length>1)throw new Error("GLB must have 0–1 buffers.");return Ut.write(_e,{format:Dt.format||g.GLTF,basename:Dt.basename||"",logger:this.M,vertexLayout:this.P,dependencies:pt({},this.U),extensions:Array.from(this.l)})}async writeBinary(_e){const{json:Dt,resources:Vt}=await this.writeJSON(_e,{format:g.GLB}),Gt=new Uint32Array([1179937895,2,12]),zt=JSON.stringify(Dt),jt=E.pad(E.encodeText(zt),32),Ht=E.toView(new Uint32Array([jt.byteLength,1313821514])),Wt=E.concat([Ht,jt]);Gt[Gt.length-1]+=Wt.byteLength;const qt=Object.values(Vt)[0];if(!qt||!qt.byteLength)return E.concat([E.toView(Gt),Wt]);const Xt=E.pad(qt,0),Kt=E.toView(new Uint32Array([Xt.byteLength,5130562])),Yt=E.concat([Kt,Xt]);return Gt[Gt.length-1]+=Yt.byteLength,E.concat([E.toView(Gt),Wt,Yt])}async j(_e,Dt){var Vt=this;const Gt=[..._e.json.images||[],..._e.json.buffers||[]].map(async function(zt){const jt=zt.uri;if(!jt||jt.match(/data:/))return Promise.resolve();_e.resources[jt]=await Vt.readURI(Vt.resolve(Dt,jt),"view"),Vt.lastReadBytes+=_e.resources[jt].byteLength});await Promise.all(Gt)}D(_e){function Dt(Vt){if(Vt.uri){if(Vt.uri in _e.resources)E.assertView(_e.resources[Vt.uri]);else if(Vt.uri.match(/data:/)){const Gt=`__${V()}.${N.extension(Vt.uri)}`;_e.resources[Gt]=E.createBufferFromDataURI(Vt.uri),Vt.uri=Gt}}}(_e.json.images||[]).forEach(Vt=>{if(Vt.bufferView===void 0&&Vt.uri===void 0)throw new Error("Missing resource URI or buffer view.");Dt(Vt)}),(_e.json.buffers||[]).forEach(Dt)}_(_e){const{images:Dt,buffers:Vt}=_e.json;return _e={json:pt({},_e.json),resources:pt({},_e.resources)},Dt&&(_e.json.images=Dt.map(Gt=>pt({},Gt))),Vt&&(_e.json.buffers=Vt.map(Gt=>pt({},Gt))),_e}L(_e){if(!Lt(_e))throw new Error("Invalid glTF 2.0 binary.");const Dt=new Uint32Array(_e.buffer,_e.byteOffset+12,2);if(Dt[1]!==Bt.JSON)throw new Error("Missing required GLB JSON chunk.");const Vt=Dt[0],Gt=E.decodeText(E.toView(_e,20,Vt)),zt=JSON.parse(Gt),jt=20+Vt;if(_e.byteLength<=jt)return{json:zt,resources:{}};const Ht=new Uint32Array(_e.buffer,_e.byteOffset+jt,2);if(Ht[1]!==Bt.BIN)throw new Error("Expected GLB BIN in second chunk.");const Wt=E.toView(_e,jt+8,Ht[0]);return{json:zt,resources:{[c]:Wt}}}}function Lt(kt){if(kt.byteLength<3*Uint32Array.BYTES_PER_ELEMENT)return!1;const _e=new Uint32Array(kt.buffer,kt.byteOffset,3);return _e[0]===1179937895&&_e[1]===2}class _t extends Pt{constructor(_e=q$1.DEFAULT_INIT){super(),this.J=void 0,this.J=_e}async readURI(_e,Dt){const Vt=await fetch(_e,this.J);switch(Dt){case"view":return new Uint8Array(await Vt.arrayBuffer());case"text":return Vt.text()}}resolve(_e,Dt){return q$1.resolve(_e,Dt)}dirname(_e){return q$1.dirname(_e)}}function q(){return q=Object.assign?Object.assign.bind():function(kt){for(var _e=1;_e<arguments.length;_e++){var Dt=arguments[_e];for(var Vt in Dt)Object.prototype.hasOwnProperty.call(Dt,Vt)&&(kt[Vt]=Dt[Vt])}return kt},q.apply(this,arguments)}function B(kt,_e){return Object.defineProperty(_e,"name",{value:kt}),_e}function Z(kt,_e){if(kt==null&&_e==null)return!0;if(kt==null||_e==null||kt.length!==_e.length)return!1;for(let Dt=0;Dt<kt.length;Dt++)if(kt[Dt]!==_e[Dt])return!1;return!0}var ae=typeof Float32Array<"u"?Float32Array:Array;function ge(){var kt=new ae(3);return ae!=Float32Array&&(kt[0]=0,kt[1]=0,kt[2]=0),kt}function Ae(){var kt=new ae(4);return ae!=Float32Array&&(kt[0]=0,kt[1]=0,kt[2]=0,kt[3]=0),kt}Math.hypot||(Math.hypot=function(){for(var kt=0,_e=arguments.length;_e--;)kt+=arguments[_e]*arguments[_e];return Math.sqrt(kt)}),ge(),Ae();const Te="dedup",ye={propertyTypes:[h.ACCESSOR,h.MESH,h.TEXTURE,h.MATERIAL,h.SKIN]};function Ee(kt=ye){const _e=q({},ye,kt),Dt=new Set(_e.propertyTypes);for(const Vt of _e.propertyTypes)if(!ye.propertyTypes.includes(Vt))throw new Error(`${Te}: Unsupported deduplication on type "${Vt}".`);return B(Te,Vt=>{const Gt=Vt.getLogger();Dt.has(h.ACCESSOR)&&function(zt){const jt=zt.getLogger(),Ht=new Map,Wt=new Map,qt=new Map,Xt=new Map,Kt=zt.getRoot().listMeshes();Kt.forEach(rn=>{rn.listPrimitives().forEach(Qt=>{Qt.listAttributes().forEach(en=>Yt(en,Wt)),Yt(Qt.getIndices(),Ht)})});for(const rn of zt.getRoot().listAnimations())for(const Qt of rn.listSamplers())Yt(Qt.getInput(),qt),Yt(Qt.getOutput(),Xt);function Yt(rn,Qt){if(!rn)return;const en=[rn.getCount(),rn.getType(),rn.getComponentType(),rn.getNormalized(),rn.getSparse()].join(":");let tn=Qt.get(en);tn||Qt.set(en,tn=new Set),tn.add(rn)}function Zt(rn,Qt){for(let en=0;en<rn.length;en++){const tn=rn[en],sn=E.toView(tn.getArray());if(!Qt.has(tn))for(let cn=en+1;cn<rn.length;cn++){const un=rn[cn];Qt.has(un)||E.equals(sn,E.toView(un.getArray()))&&Qt.set(un,tn)}}}let Jt=0;const nn=new Map;for(const rn of[Wt,Ht,qt,Xt])for(const Qt of rn.values())Jt+=Qt.size,Zt(Array.from(Qt),nn);jt.debug(`${Te}: Merged ${nn.size} of ${Jt} accessors.`),Kt.forEach(rn=>{rn.listPrimitives().forEach(Qt=>{Qt.listAttributes().forEach(tn=>{nn.has(tn)&&Qt.swap(tn,nn.get(tn))});const en=Qt.getIndices();en&&nn.has(en)&&Qt.swap(en,nn.get(en))})});for(const rn of zt.getRoot().listAnimations())for(const Qt of rn.listSamplers()){const en=Qt.getInput(),tn=Qt.getOutput();en&&nn.has(en)&&Qt.swap(en,nn.get(en)),tn&&nn.has(tn)&&Qt.swap(tn,nn.get(tn))}Array.from(nn.keys()).forEach(rn=>rn.dispose())}(Vt),Dt.has(h.TEXTURE)&&function(zt){const jt=zt.getLogger(),Ht=zt.getRoot(),Wt=Ht.listTextures(),qt=new Map;for(let Xt=0;Xt<Wt.length;Xt++){const Kt=Wt[Xt],Yt=Kt.getImage();if(!qt.has(Kt))for(let Zt=Xt+1;Zt<Wt.length;Zt++){const Jt=Wt[Zt],nn=Jt.getImage();if(qt.has(Jt)||Kt.getMimeType()!==Jt.getMimeType())continue;const rn=Kt.getSize(),Qt=Jt.getSize();rn&&Qt&&rn[0]===Qt[0]&&rn[1]===Qt[1]&&Yt&&nn&&E.equals(Yt,nn)&&qt.set(Jt,Kt)}}jt.debug(`${Te}: Merged ${qt.size} of ${Ht.listTextures().length} textures.`),Array.from(qt.entries()).forEach(([Xt,Kt])=>{Xt.listParents().forEach(Yt=>{Yt instanceof vt||Yt.swap(Xt,Kt)}),Xt.dispose()})}(Vt),Dt.has(h.MATERIAL)&&function(zt){const jt=zt.getLogger(),Ht=zt.getRoot().listMaterials(),Wt=new Map,qt=new Set(["name"]),Xt=new Map;for(let Kt=0;Kt<Ht.length;Kt++){const Yt=Ht[Kt];if(!Wt.has(Yt)&&!Me(Yt,Xt))for(let Zt=Kt+1;Zt<Ht.length;Zt++){const Jt=Ht[Zt];Wt.has(Jt)||Me(Jt,Xt)||Yt.equals(Jt,qt)&&Wt.set(Jt,Yt)}}jt.debug(`${Te}: Merged ${Wt.size} of ${Ht.length} materials.`),Array.from(Wt.entries()).forEach(([Kt,Yt])=>{Kt.listParents().forEach(Zt=>{Zt instanceof vt||Zt.swap(Kt,Yt)}),Kt.dispose()})}(Vt),Dt.has(h.MESH)&&function(zt){const jt=zt.getLogger(),Ht=zt.getRoot(),Wt=new Map;Ht.listAccessors().forEach((Kt,Yt)=>Wt.set(Kt,Yt)),Ht.listMaterials().forEach((Kt,Yt)=>Wt.set(Kt,Yt));const qt=Ht.listMeshes().length,Xt=new Map;for(const Kt of Ht.listMeshes()){const Yt=[];for(const Jt of Kt.listPrimitives())Yt.push(Se(Jt,Wt));const Zt=Yt.join(";");if(Xt.has(Zt)){const Jt=Xt.get(Zt);Kt.listParents().forEach(nn=>{nn.propertyType!==h.ROOT&&nn.swap(Kt,Jt)}),Kt.dispose()}else Xt.set(Zt,Kt)}jt.debug(`${Te}: Merged ${qt-Xt.size} of ${qt} meshes.`)}(Vt),Dt.has(h.SKIN)&&function(zt){const jt=zt.getLogger(),Ht=zt.getRoot().listSkins(),Wt=new Map,qt=new Set(["name","joints"]);for(let Xt=0;Xt<Ht.length;Xt++){const Kt=Ht[Xt];if(!Wt.has(Kt))for(let Yt=Xt+1;Yt<Ht.length;Yt++){const Zt=Ht[Yt];Wt.has(Zt)||Kt.equals(Zt,qt)&&Z(Kt.listJoints(),Zt.listJoints())&&Wt.set(Zt,Kt)}}jt.debug(`${Te}: Merged ${Wt.size} of ${Ht.length} skins.`),Array.from(Wt.entries()).forEach(([Xt,Kt])=>{Xt.listParents().forEach(Yt=>{Yt instanceof vt||Yt.swap(Xt,Kt)}),Xt.dispose()})}(Vt),Gt.debug(`${Te}: Complete.`)})}function Se(kt,_e){const Dt=[];for(const Vt of kt.listSemantics()){const Gt=kt.getAttribute(Vt);Dt.push(Vt+":"+_e.get(Gt))}if(kt instanceof dt){const Vt=kt.getIndices();Vt&&Dt.push("indices:"+_e.get(Vt));const Gt=kt.getMaterial();Gt&&Dt.push("material:"+_e.get(Gt)),Dt.push("mode:"+kt.getMode());for(const zt of kt.listTargets())Dt.push("target:"+Se(zt,_e))}return Dt.join(",")}function Me(kt,_e){if(_e.has(kt))return _e.get(kt);const Dt=kt.getGraph(),Vt=new Set,Gt=Dt.listParentEdges(kt);for(;Gt.length>0;){const zt=Gt.pop();if(zt.getAttributes().modifyChild===!0)return _e.set(kt,!0),!0;const jt=zt.getChild();if(!Vt.has(jt))for(const Ht of Dt.listChildEdges(jt))Gt.push(Ht)}return _e.set(kt,!1),!1}function we(kt){const _e=kt.getGraph(),Dt=new Set,Vt=new Set;return function Gt(zt){const jt=new Set;for(const Ht of _e.listChildEdges(zt))Ht.getChild()instanceof yt&&jt.add(Ht.getName()+"Info");for(const Ht of _e.listChildEdges(zt)){const Wt=Ht.getChild();Dt.has(Wt)||(Dt.add(Wt),Wt instanceof it&&jt.has(Ht.getName())?Vt.add(Wt):Wt instanceof nt&&Gt(Wt))}}(kt),Array.from(Vt)}const be="prune",Ne={propertyTypes:[h.NODE,h.SKIN,h.MESH,h.CAMERA,h.PRIMITIVE,h.PRIMITIVE_TARGET,h.ANIMATION,h.MATERIAL,h.TEXTURE,h.ACCESSOR,h.BUFFER],keepLeaves:!1,keepAttributes:!0};function Re(kt=Ne){const _e=q({},Ne,kt),Dt=new Set(_e.propertyTypes);return B(be,Vt=>{const Gt=Vt.getLogger(),zt=Vt.getRoot(),jt=Vt.getGraph(),Ht={};if(Dt.has(h.MESH))for(const Yt of zt.listMeshes())Yt.listPrimitives().length>0||(Yt.dispose(),Kt(Yt));if(Dt.has(h.NODE)&&!_e.keepLeaves&&zt.listScenes().forEach(function Yt(Zt){if(Zt.listChildren().forEach(Yt),Zt instanceof mt)return;const Jt=jt.listParentEdges(Zt).some(nn=>{const rn=nn.getParent().propertyType;return rn!==h.ROOT&&rn!==h.SCENE&&rn!==h.NODE});jt.listChildren(Zt).length!==0||Jt||(Zt.dispose(),Kt(Zt))}),Dt.has(h.NODE)&&zt.listNodes().forEach(Wt),Dt.has(h.SKIN)&&zt.listSkins().forEach(Wt),Dt.has(h.MESH)&&zt.listMeshes().forEach(Wt),Dt.has(h.CAMERA)&&zt.listCameras().forEach(Wt),Dt.has(h.PRIMITIVE)&&qt(jt,h.PRIMITIVE),Dt.has(h.PRIMITIVE_TARGET)&&qt(jt,h.PRIMITIVE_TARGET),!_e.keepAttributes&&Dt.has(h.ACCESSOR)){const Yt=new Map;for(const Zt of zt.listMeshes())for(const Jt of Zt.listPrimitives()){const nn=Jt.getMaterial(),rn=Ce(Jt,Oe(Vt,nn));Xt(Jt,rn),Jt.listTargets().forEach(Qt=>Xt(Qt,rn)),nn&&(Yt.has(nn)?Yt.get(nn).add(Jt):Yt.set(nn,new Set([Jt])))}for(const[Zt,Jt]of Yt)$e(Zt,Array.from(Jt))}if(Dt.has(h.ANIMATION))for(const Yt of zt.listAnimations()){for(const Zt of Yt.listChannels())Zt.getTargetNode()||(Zt.dispose(),Kt(Zt));if(Yt.listChannels().length)Yt.listSamplers().forEach(Wt);else{const Zt=Yt.listSamplers();Wt(Yt),Zt.forEach(Wt)}}if(Dt.has(h.MATERIAL)&&zt.listMaterials().forEach(Wt),Dt.has(h.TEXTURE)&&zt.listTextures().forEach(Wt),Dt.has(h.ACCESSOR)&&zt.listAccessors().forEach(Wt),Dt.has(h.BUFFER)&&zt.listBuffers().forEach(Wt),Object.keys(Ht).length){const Yt=Object.keys(Ht).map(Zt=>`${Zt} (${Ht[Zt]})`).join(", ");Gt.info(`${be}: Removed types... ${Yt}`)}else Gt.info(`${be}: No unused properties found.`);function Wt(Yt){Yt.listParents().filter(Zt=>!(Zt instanceof vt||Zt instanceof tt)).length||(Yt.dispose(),Kt(Yt))}function qt(Yt,Zt){Yt.listEdges().map(Jt=>Jt.getParent()).filter(Jt=>Jt.propertyType===Zt).forEach(Wt)}function Xt(Yt,Zt){for(const Jt of Zt)Yt.setAttribute(Jt,null)}function Kt(Yt){Ht[Yt.propertyType]=Ht[Yt.propertyType]||0,Ht[Yt.propertyType]++}Gt.debug(`${be}: Complete.`)})}function Ce(kt,_e){const Dt=[];for(const Vt of kt.listSemantics())Vt!=="TANGENT"||_e.has(Vt)?(Vt.startsWith("TEXCOORD_")&&!_e.has(Vt)||Vt.startsWith("COLOR_")&&Vt!=="COLOR_0")&&Dt.push(Vt):Dt.push(Vt);return Dt}function Oe(kt,_e,Dt=new Set){if(!_e)return Dt;const Vt=kt.getGraph().listChildEdges(_e),Gt=new Set;for(const zt of Vt)zt.getChild()instanceof yt&&Gt.add(zt.getName());for(const zt of Vt){const jt=zt.getName(),Ht=zt.getChild();Ht instanceof it&&Gt.has(jt.replace(/Info$/,""))&&Dt.add(`TEXCOORD_${Ht.getTexCoord()}`),Ht instanceof yt&&jt.match(/normalTexture/i)&&Dt.add("TANGENT"),Ht instanceof nt&&Oe(kt,Ht,Dt)}return Dt}function $e(kt,_e){const Dt=we(kt),Vt=new Set(Dt.map(Wt=>Wt.getTexCoord())),Gt=Array.from(Vt).sort(),zt=new Map(Gt.map((Wt,qt)=>[Wt,qt])),jt=new Map(Gt.map((Wt,qt)=>[`TEXCOORD_${Wt}`,`TEXCOORD_${qt}`]));for(const Wt of Dt){const qt=Wt.getTexCoord();Wt.setTexCoord(zt.get(qt))}for(const Wt of _e){const qt=Wt.listSemantics().filter(Xt=>Xt.startsWith("TEXCOORD_")).sort();Ht(Wt,qt),Wt.listTargets().forEach(Xt=>Ht(Xt,qt))}function Ht(Wt,qt){for(const Xt of qt){const Kt=Wt.getAttribute(Xt);if(!Kt)continue;const Yt=jt.get(Xt);Yt!==Xt&&(Wt.setAttribute(Yt,Kt),Wt.setAttribute(Xt,null))}}}tt.TargetPath;var Vn;function Xn(kt,_e,Dt){for(let Vt=0,Gt=Dt.length;Vt<Gt;Vt++)Dt[Vt]=kt[_e*Gt+Vt];return Dt}function Kn(kt,_e,Dt){for(let Vt=0,Gt=Dt.length;Vt<Gt;Vt++)kt[_e*Gt+Vt]=Dt[Vt]}function Jn(kt,_e,Dt=0){if(kt.length!==_e.length)return!1;for(let Vt=0;Vt<kt.length;Vt++)if(Math.abs(kt[Vt]-_e[Vt])>Dt)return!1;return!0}function Zn(kt,_e,Dt){return kt*(1-Dt)+_e*Dt}function Qn(kt,_e,Dt,Vt){for(let Gt=0;Gt<_e.length;Gt++)kt[Gt]=Zn(_e[Gt],Dt[Gt],Vt);return kt}function Yn(kt,_e,Dt,Vt){let Gt,zt,jt,Ht,Wt,qt=_e[0],Xt=_e[1],Kt=_e[2],Yt=_e[3],Zt=Dt[0],Jt=Dt[1],nn=Dt[2],rn=Dt[3];return zt=qt*Zt+Xt*Jt+Kt*nn+Yt*rn,zt<0&&(zt=-zt,Zt=-Zt,Jt=-Jt,nn=-nn,rn=-rn),1-zt>1e-6?(Gt=Math.acos(zt),jt=Math.sin(Gt),Ht=Math.sin((1-Vt)*Gt)/jt,Wt=Math.sin(Vt*Gt)/jt):(Ht=1-Vt,Wt=Vt),kt[0]=Ht*qt+Wt*Zt,kt[1]=Ht*Xt+Wt*Jt,kt[2]=Ht*Kt+Wt*nn,kt[3]=Ht*Yt+Wt*rn,kt}function eo(kt,_e){const Dt=function(Vt,Gt){return Vt[0]*Gt[0]+Vt[1]*Gt[1]+Vt[2]*Gt[2]+Vt[3]*Gt[3]}(kt,_e);return Math.acos(2*Dt*Dt-1)}(function(kt){kt[kt.STEP=0]="STEP",kt[kt.LERP=1]="LERP",kt[kt.SLERP=2]="SLERP"})(Vn||(Vn={}));Promise.resolve();var yo;(function(kt){kt.LANCZOS3="lanczos3",kt.LANCZOS2="lanczos2"})(yo||(yo={}));yo.LANCZOS3;yo.LANCZOS3;async function getCurrentScene(kt){return kt.coreSceneStore.getState().sceneRef}function calculateSceneCenter(kt){const _e=new Box3().setFromObject(kt),Dt=new Vector3;return _e.getCenter(Dt),Dt.y=_e.min.y,Dt}function getItemsGroupFromScene(kt){return kt.getObjectByName("#ITEMS")}function filterOnlyItems(kt){return getItemsGroupFromScene(kt).children}async function getSceneAsUsdzUrl(kt){kt.coreSceneStore.setState({frameLoop:"never"}),await wait(1e3);try{const _e=new USDZExporter,Dt=await getCurrentScene(kt),Vt=calculateSceneCenter(Dt);Dt.position.sub(Vt);const Gt=Dt.rotation.clone(),zt=kt.coreSceneStore.getState().sceneSettings.arTransforms.rotation;Dt.rotation.set(MathUtils.degToRad(zt[0]),MathUtils.degToRad(zt[1]),MathUtils.degToRad(zt[2])),Dt.updateMatrixWorld();const jt=kt.coreSceneStore.getState().sceneSettings.usdzPrecision,Ht=kt.coreSceneStore.getState().sceneSettings.usdzMaxTextureSize,Wt=await _e.parseAsync(Dt,jt,Ht),qt=new Blob([Wt],{type:"model/vnd.usdz+zip"}),Xt=URL.createObjectURL(qt);return Dt.position.add(Vt),Dt.rotation.set(Gt.x,Gt.y,Gt.z),kt.coreSceneStore.setState({frameLoop:"always"}),Xt}catch(_e){return LOGGER.error("Error exporting USDZ: "+_e),kt.coreSceneStore.setState({frameLoop:"always"}),null}}async function getSceneAsGLBUrl(kt){kt.coreSceneStore.setState({frameLoop:"never"}),await wait(1e3);try{const _e=new _t,Dt=new GLTFExporter,Vt=await getCurrentScene(kt),Gt=filterOnlyItems(Vt),zt=calculateSceneCenter(Vt);for(const Yt of Gt)Yt.position.sub(zt);const jt={binary:!0,forceIndices:!0,trs:!1,onlyVisible:!0,embedImages:!0,maxTextureSize:1024},Ht=await Dt.parseAsync(Gt,jt),Wt=await _e.readBinary(new Uint8Array(Ht));for(const Yt of Gt)Yt.position.add(zt);const qt=await optimiseGlb(Wt),Xt=await _e.writeBinary(qt),Kt=await saveArrayBufferAsURL(Xt);return kt.coreSceneStore.setState({frameLoop:"always"}),Kt}catch(_e){return LOGGER.error({title:"Error exporting GLB: "+_e}),kt.coreSceneStore.setState({frameLoop:"always"}),null}}async function optimiseGlb(kt){const Dt=kt.getRoot().listNodes();for(const Vt of Dt){Vt.setExtras({});const Gt=Vt.getName();(Gt==="GRP_ProxyMesh"||Gt==="GRP_LoadingPlaceholder")&&Vt.dispose()}return await kt.transform(Ee(),Re()),LOGGER.info({title:"GLB as json"}),LOGGER.info({title:kt.getRoot().listTextures()}),kt}async function saveArrayBufferAsURL(kt){const _e=new Blob([kt],{type:"application/gltf-buffer"});return LOGGER.info({title:"Approx scene GLB size: "+_e.size/1e6}),URL.createObjectURL(_e)}const byteToHex=[];for(let kt=0;kt<256;++kt)byteToHex.push((kt+256).toString(16).slice(1));function unsafeStringify(kt,_e=0){return(byteToHex[kt[_e+0]]+byteToHex[kt[_e+1]]+byteToHex[kt[_e+2]]+byteToHex[kt[_e+3]]+"-"+byteToHex[kt[_e+4]]+byteToHex[kt[_e+5]]+"-"+byteToHex[kt[_e+6]]+byteToHex[kt[_e+7]]+"-"+byteToHex[kt[_e+8]]+byteToHex[kt[_e+9]]+"-"+byteToHex[kt[_e+10]]+byteToHex[kt[_e+11]]+byteToHex[kt[_e+12]]+byteToHex[kt[_e+13]]+byteToHex[kt[_e+14]]+byteToHex[kt[_e+15]]).toLowerCase()}let getRandomValues;const rnds8=new Uint8Array(16);function rng(){if(!getRandomValues){if(typeof crypto>"u"||!crypto.getRandomValues)throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");getRandomValues=crypto.getRandomValues.bind(crypto)}return getRandomValues(rnds8)}const randomUUID=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),native={randomUUID};function v4(kt,_e,Dt){if(native.randomUUID&&!_e&&!kt)return native.randomUUID();kt=kt||{};const Vt=kt.random??kt.rng?.()??rng();if(Vt.length<16)throw new Error("Random bytes length must be >= 16");if(Vt[6]=Vt[6]&15|64,Vt[8]=Vt[8]&63|128,_e){if(Dt=Dt||0,Dt<0||Dt+16>_e.length)throw new RangeError(`UUID byte range ${Dt}:${Dt+15} is out of buffer bounds`);for(let Gt=0;Gt<16;++Gt)_e[Dt+Gt]=Vt[Gt];return _e}return unsafeStringify(Vt)}class Plug{constructor(_e,Dt,Vt=null){this.stores=Dt.stores,this._attachedPlug=null,this._name=_e.name,this._acceptedPlugTypes=_e.acceptedPlugTypes,this._affectedNodes=_e.affectedNodes,this._unvisualizedCount=_e.unvisualizedCount,this._weight=_e.weight,this._connectsToPlugTypes=_e.connectsToPlugTypes,this._dependencySku=_e.dependencySku,this._isDependencySkuInteractive=_e.isDependencySkuInteractive,this._autoSpawnDependencyIfMissing=_e.autoSpawnDependencyIfMissing,this._node=Dt,Vt?(this._comboPlugConnector=Vt.comboPlugConnector,this._guid=Vt.guid,this._isOpen=Vt.isOpen,this._type=Vt.type,this._isReceiverPlug=Vt.isReceiverPlug,this._attachedPlugGUID=Vt.attachedPlugGUID):(this._comboPlugConnector=!1,this._guid=v4(),this._isOpen=!0,this._type=_e.type,this._isReceiverPlug=!1,this._attachedPlugGUID=null)}export(){return this.isOpen?null:{guid:this._guid,type:this._type,isOpen:this._isOpen,comboPlugConnector:this._comboPlugConnector,attachedPlugGUID:this._attachedPlugGUID,isReceiverPlug:this._isReceiverPlug}}get node(){return this._node}set comboPlugConnector(_e){this._comboPlugConnector=_e}get comboPlugConnector(){return this._comboPlugConnector}get attachedPlug(){return this._attachedPlug}set attachedPlug(_e){this._attachedPlug=_e}get attachedNode(){return this._attachedPlug?this._attachedPlug.node:null}get attachedPlugGUID(){return this._attachedPlugGUID}set type(_e){this._type=_e}get type(){return this._type}get weight(){return this._weight}get unvisualizedCount(){return this.__unvisualizedCount}get affectedNodes(){return this._affectedNodes}get guid(){return this._guid}get isReceiverPlug(){return this._isReceiverPlug}get name(){return this._name}get acceptedPlugTypes(){return this._acceptedPlugTypes}set acceptedPlugTypes(_e){this._acceptedPlugTypes=_e}get connectsToPlugTypes(){return this._connectsToPlugTypes}set connectsToPlugTypes(_e){this._connectsToPlugTypes=_e}get isOpen(){return this._isOpen}get isOccupied(){return!this.isOpen}get dependencySku(){return this._dependencySku}get isDependencySkuInteractive(){return this._isDependencySkuInteractive}attachPlug(_e,Dt=!1){this._attachedPlug=_e,this._attachedPlugGUID=_e.guid,this._isOpen=!1,this._isReceiverPlug=Dt;const Vt=this,Gt=this._node;if(Gt.isConnectedToRoot&&Dt){const zt=Gt.whichPlugAreWeAttachedUsing();switch(_e.type){case"weighted_hider":zt.weight<Vt.weight&&(Gt.showNodes(zt.affectedNodes)||this.stores.coreSceneStore.getState().CORE_API.coreWCRef.addEventListener(Gt.guid+":modelLoaded",function(){Gt.showNodes(zt.affectedNodes)},{once:!0}));break}}if(Dt&&_e.type!==""&&_e.type==Vt._type)switch(_e.type){default:case"weighted_hider":Vt._weight>_e.weight?_e.node.hideNodes(_e.affectedNodes)||this.stores.coreSceneStore.getState().CORE_API.coreWCRef.addEventListener(_e.node.guid+":modelLoaded",function(){_e.node.hideNodes(_e.affectedNodes)},{once:!0}):Vt._weight<_e.weight&&(Gt.hideNodes(Vt._affectedNodes)||this.stores.coreSceneStore.getState().CORE_API.coreWCRef.addEventListener(Gt.guid+":modelLoaded",function(){Gt.hideNodes(Vt._affectedNodes)},{once:!0}));break}Dt&&(Gt.isEndNode=!1)}async openPlug(){if(this._comboPlugConnector&&(this._comboPlugConnector=!1),this._node.isConnectedToRoot){const _e=this._node.whichPlugAreWeAttachedUsing();if(_e&&this._guid!==_e.guid)switch(this.type){case"weighted_hider":_e.type==="weighted_hider"&&_e.weight<this.weight&&this._node.hideNodes(_e.affectedNodes);break}}if(this._isReceiverPlug&&this._attachedPlug.type!==""&&this._attachedPlug.type==this._type)switch(this._attachedPlug.type){default:case"weighted_hider":this._weight>this._attachedPlug.weight?this._attachedPlug.node.showNodes(this._attachedPlug.affectedNodes):this._weight<this._attachedPlug.weight&&this._node.showNodes(this._affectedNodes);break}if(this._attachedPlug=null,this._attachedPlugGUID=null,this._isOpen=!0,this._isReceiverPlug&&(this._isReceiverPlug=!1,this._node.checkIfEndNode()),!!this._dependencySku&&!(this._autoSpawnDependencyIfMissing==!1||this._isDependencySkuInteractive||this.stores.coreSceneStore.getState().configurationLoaded===!1))try{const _e=await this.stores.ghostStore.getState().actions.spawnGhostsForSkuID(this._dependencySku,!0);if(!_e)return;const Dt=_e.connectablePlugs;let Vt=!1;const Gt=this._isDependencySkuInteractive?this.isDependencySkuInteractive===1:!1;for(const zt of Dt){if(zt.receiverPlug.guid!==this._guid)continue;Vt=!0;const jt=await this.stores.itemStore.getState().actions.addItemBySkuID(this._dependencySku,Dt.indexOf(zt),!0,Gt);jt!==null&&this._node.addMyDependenciesGUID(jt)}Vt||await this.stores.ghostStore.getState().actions.clearAllGhosts()}catch{LOGGER.info({title:"The Plug has been removed!"})}}canAttachToPlug(_e){for(let Dt=0;Dt<this._connectsToPlugTypes.length;Dt++)if(_e._acceptedPlugTypes.includes(this._connectsToPlugTypes[Dt]))return!0;return!1}}let Node$1=class{#t="default";#i=!1;#n=!1;#s=!0;#r={};#c=!1;#o=[];constructor(_e,Dt,Vt=null,Gt,zt){this.stores=_e;let jt=_e.productDataStore.getState().productData;this._plugs=[],this._skuID=Dt,this._ref=null,this._dragging=!1,this._modelFunctions=null,this._transform=null,this.#t="default",this._overrideVariant=null,this._followsParent=jt[Dt].followsParent,this._categoryID=jt[Dt].categoryID,this._replace=jt[Dt].replace,this._swappable=jt[Dt].swappable,this._price=this.#l(),this._compareAtPrice=this.#a(),this.#i=jt[Dt]?.ignoreInCart,Vt?(this._guid=Vt.guid,this._isEndNode=Vt.isEndNode,this._overrideVariant=Vt.overrideVariant,this.generatePlugsWithData(Dt,Vt.plugs)):(this._guid=v4(),this._isEndNode=!0,this.generatePlugsForNode(Dt)),Gt&&Object.keys(Gt).map(Ht=>{if(jt[Dt].looks&&jt[Dt].looks.includes(Ht)){this.#t=Ht;return}})}get isRoot(){return this._skuID.toLowerCase()==="root"}updateGeometryVariant(_e,Dt){const Gt=this.stores.productDataStore.getState().categoryData.geometryVariants;let zt=null;if(Gt.map(Xt=>{Xt.id==_e&&(zt=Xt)}),!zt)return;const jt=zt.productsInCategory,Wt=zt.variants[Dt].productsToSwitch,qt=this.stores.itemStore.getState().itemsSpawned;jt.map(Xt=>{Xt.products.map(Kt=>{this.skuID===Kt&&Xt.products.map(Yt=>{Wt.map(Zt=>{if(Zt==Yt){const Jt=this.stores.productDataStore.getState().actions.getProductDataById(Zt);this.skuID=Jt.skuID;const nn=qt[this.guid];nn&&nn.itemData&&Object.keys(Jt).map(rn=>{nn.itemData[rn]=Jt[rn]}),this.hideNodes(Jt.geometriesToHide),this.showNodes(Jt.geometriesToShow),this.updatePricing(),this.resetInStock(),this.stores.inventoryStore.getState().actions.refreshInventory(qt)}})})})})}resetInStock(){this.#r={},this.#c=!0}setInStockForRef(_e){if(!this.ref)return!1;let Dt=this.ref.getObjectByName("GRP_RenderGeometry");return Dt?(Dt.inStock=_e,!0):!1}set inStock({variantName:_e,newValue:Dt}){if(this.#r[_e]&&this.#r[_e]==Dt||(this.#r[_e]=Dt,_e!==this.currentVariant&&this.#c===!1))return;const Vt=()=>{this.setInStockForRef(Dt)};Vt()||this.stores.coreSceneStore.getState().CORE_API.coreWCRef.addEventListener(this.guid+":modelLoaded",Vt,{once:!0})}get myDependenciesGUID(){return this.#o}set myDependenciesGUID(_e){this.#o=_e}get dragging(){return this._dragging}set dragging(_e){this._dragging=_e}addMyDependenciesGUID(_e){this.#o.push(_e)}get isDependent(){return this.#n}set isDependent(_e){this.#n=_e}get isInteractive(){return this.#s}set isInteractive(_e){this.#s=_e}update(_e){this._skuID=_e;const Dt=this.stores.productDataStore.getState().productData,Vt=Dt[_e]?.plugs;if(this.ignoreInCart=Dt[_e].ignoreInCart,!!Vt)for(let Gt=0;Gt<this._plugs.length;Gt++)for(let zt=0;zt<Vt.length;zt++)this._plugs[Gt].name==Vt[zt].name&&(this._plugs[Gt].acceptedPlugTypes=Vt[zt].acceptedPlugTypes,this._plugs[Gt].connectsToPlugTypes=Vt[zt].connectsToPlugTypes)}export(){let _e={};for(let Dt=0;Dt<this._plugs.length;Dt++){let Vt=this._plugs[Dt].export();Vt&&(_e[this._plugs[Dt].name]=Vt)}return{skuID:this._skuID,guid:this._guid,isEndNode:this._isEndNode,plugs:_e,overrideVariant:this._overrideVariant}}get node(){return this}get swappable(){return this._swappable}get replace(){return this._replace}get ignoreInCart(){return this.#i}set ignoreInCart(_e){this.#i=_e}get isTypeCombo(){const _e=this.whichPlugAreWeAttachedUsing();return _e.type=="comboPlug"&&_e.connectsToPlugTypes.length>0}get canRotate(){let _e=!0;if(this.isTypeCombo)return!1;if(!this._isEndNode){const Vt=this.whichNodesAreAttachedToUs();if(Vt.length>0){let Gt=!0;if(Vt.map(zt=>{zt.followsParent===!1&&(Gt=!1)}),!Gt)return!1}}let Dt=!1;for(let Vt=0;Vt<this.plugs.length;Vt++)if(!this.plugs[Vt].isOpen&&this.plugs[Vt].attachedPlug.isReceiverPlug){const Gt=this.plugs[Vt].attachedPlug.acceptedPlugTypes;for(let zt=0;zt<this.plugs.length;zt++)if(Vt!=zt)for(let jt=0;jt<this.plugs[zt].connectsToPlugTypes.length;jt++)Gt.includes(this.plugs[zt].connectsToPlugTypes[jt])&&(Dt=!0)}return _e=Dt,_e}hideNodes(_e){if(!this.ref)return!1;const Dt=this.ref.getObjectByName("GRP_RenderGeometry"),Vt=this.ref.getObjectByName("GRP_ProxyMesh");return _e.map(Gt=>{if(Dt){const zt=Dt.getObjectByName(Gt);zt&&(zt.visible=!1)}if(Vt){const zt=Vt.getObjectByName(Gt);zt&&(zt.visible=!1)}}),!0}showNodes(_e){if(!this.ref)return!1;const Dt=this.ref.getObjectByName("GRP_RenderGeometry"),Vt=this.ref.getObjectByName("GRP_ProxyMesh");return _e.map(Gt=>{if(Dt){const zt=Dt.getObjectByName(Gt);zt&&(zt.visible=!0)}if(Vt){const zt=Vt.getObjectByName(Gt);zt&&(zt.visible=!0)}}),!0}canConnectToPlugType(_e){let Dt=!1;return this._plugs.map(Vt=>{Vt.connectsToPlugTypes.map(Gt=>{Gt==_e&&(Dt=!0)})}),Dt}isConnectedToSkuID(_e){let Dt=!1;return this._plugs.map(Vt=>{if(Vt.isOpen||Dt===!0)return;let Gt=Vt.attachedPlug;!Gt&&Vt.attachedPlugGUID&&(Gt=this.stores.attachmentStore.getState().attachmentSystem.currentStructure.getPlugByGUID(Vt.attachedPlugGUID)),Gt.node.skuID==_e&&(Dt=!0)}),Dt}get isConnectedToRoot(){return this.isConnectedToSkuID("Root")}swapRoot(){if(!this.canSwapRoot)return;const Dt=this.stores.attachmentStore.getState().attachmentSystem.currentStructure,Vt=this.whichNodesAreAttachedToUs();let Gt=null;Vt.map(qt=>{qt.followsParent===!1&&(Gt=qt)});const zt=Gt.detachNodeFromReceiver();let jt=null;this._plugs.map(qt=>{qt.isOpen||qt.attachedPlug.node.skuID=="Root"&&(jt=qt.attachedPlug)});const Ht=this.detachNodeFromReceiver();let Wt=null;return Gt.plugs.map(qt=>{qt.connectsToPlugTypes.includes("root")&&(Wt=qt)}),Dt.connectPlugs({incomingPlug:Wt,receiverPlug:jt}),{neighborDetachedPlugs:zt,rootDetachedPlugs:Ht,neighborNode:Gt}}get canSwapRoot(){if(this.stores.coreSceneStore.getState().sceneSettings.swappableRoot===!1)return!1;let _e=!1;if(this.isConnectedToRoot&&!this._isEndNode){const Vt=this.whichNodesAreAttachedToUs();let Gt=0,zt=null;Vt.map(jt=>{jt.followsParent===!1&&(Gt++,zt=jt)}),Gt==1?zt.canConnectToPlugType("root")&&(_e=!0):Gt>0&&(_e=!1)}return _e}get canRemove(){let _e=!0;return this._isEndNode||(this.whichNodesAreAttachedToUs().map(Vt=>{Vt.followsParent===!1&&(_e=!1)}),_e||(_e=this.canSwapRoot)),_e}getComboPlugNodesAttachedToUs(){let _e=[];return this.whichNodesAreAttachedToUs().forEach(Vt=>{Vt.isTypeCombo&&_e.push(Vt);const Gt=Vt.getComboPlugNodesAttachedToUs();Gt.length>0&&(_e=_e.concat(Gt))}),_e}getAllBranchedNodesAttachedToUs(){let _e=[];const Dt=this.whichNodesAreAttachedToUs();for(let Vt=0;Vt<Dt.length;Vt++){_e.push(Dt[Vt]);const Gt=Dt[Vt].getAllBranchedNodesAttachedToUs();Gt.length>0&&(_e=_e.concat(Gt))}return _e}get canDrag(){let _e=!0;if(this.isTypeCombo)return!1;for(let Vt=0;Vt<this._plugs.length;Vt++)if(this._plugs[Vt].isOpen==!1&&this._plugs[Vt].attachedPlug.type=="comboPlug")return!1;const Dt=this.getComboPlugNodesAttachedToUs();if(Dt.length>0){const Vt=this.getAllBranchedNodesAttachedToUs();let Gt=!0;if(Dt.map(zt=>{const jt=zt.whichNodesIsThisComboPlugAttachedTo();let Ht=!0;if(jt.map(Wt=>{let qt=!1;if(Vt.map(Xt=>{Wt.guid===Xt.guid&&(qt=!0)}),qt==!1){Ht=!1;return}}),Ht==!1){Gt=!1;return}}),Gt==!1)return!1}return this._isEndNode||(this.whichNodesAreAttachedToUs().map(Gt=>{Gt.followsParent===!1&&(_e=!1)}),_e||(_e=this.canSwapRoot)),_e}get followsParent(){return this._followsParent}set followsParent(_e){this._followsParent=_e}resetFollowsParent(){const _e=this.stores.productDataStore.getState().productData;this._followsParent=_e[this.skuID].followsParent}get currentVariant(){return this.#t==="default"?this.stores.productDataStore.getState().actions.getProductDataById(this._skuID).lookDetails.default.id:this.#t}get price(){return this._price}set price(_e){this._price=_e}get compareAtPrice(){return this._compareAtPrice}set compareAtPrice(_e){this._compareAtPrice=_e}updateCompareAtPricing(){this._compareAtPrice=this.#a()}updatePricing(){this._price=this.#l()}#a(){let Dt=this.stores.productDataStore.getState().actions.getProductDataById(this._skuID).lookDetails[this.#t]?.compareAtPrice;return Dt||(Dt=0),Dt}#l(){let Dt=this.stores.productDataStore.getState().actions.getProductDataById(this._skuID).lookDetails[this.#t]?.price;return Dt||(Dt=0),Dt}set currentVariant(_e){this.#t=_e,this._price=this.#l(),this._compareAtPrice=this.#a()}get overrideVariant(){return this._overrideVariant}set overrideVariant(_e){this._overrideVariant=_e,this.#t=this._overrideVariant,this._price=this.#l(),this._compareAtPrice=this.#a()}get guid(){return this._guid}get skuID(){return this._skuID}set skuID(_e){this._skuID=_e}get plugs(){return this._plugs}get ref(){return this._ref}set ref(_e){this._ref=_e}get modelFunctions(){return this._modelFunctions}set modelFunctions(_e){this._modelFunctions=_e}checkGeometryVariant(){let _e=new CustomEvent(this._guid+":modelLoaded",{bubbles:!0,cancelable:!1,composed:!0});const Dt=this.stores.attachmentStore.getState().attachmentSystem;Dt.globalGeometryVariants&&Object.keys(Dt.globalGeometryVariants).map(Vt=>{this.updateGeometryVariant(Vt,Dt.globalGeometryVariants[Vt])}),_e.data={},this.stores.coreSceneStore.getState().CORE_API.coreWCRef?this.stores.coreSceneStore.getState().CORE_API.coreWCRef.dispatchEvent(_e):LOGGER.warn({title:"core web component not found!"})}get isEndNode(){return this._isEndNode}set isEndNode(_e){this._isEndNode=_e}get categoryID(){return this._categoryID}get transform(){return this._transform}set transform(_e){this._transform=_e}setModelVisibility(_e){_e?this._ref?.scale.set(1,1,1):this._ref.scale.set(0,0,0)}checkIfEndNode(){let _e=!0;for(let Dt=0;Dt<this._plugs.length;Dt++)this._plugs[Dt].isReceiverPlug&&(_e=!1);this.isEndNode=_e}whichNodesAreAttachedToUs(){const _e=[];for(let Dt=0;Dt<this._plugs.length;Dt++)this._plugs[Dt].isReceiverPlug&&_e.push(this._plugs[Dt].attachedPlug.node);return _e}whichPlugsAreAttachedToUs(){const _e=[];for(let Dt=0;Dt<this._plugs.length;Dt++)this._plugs[Dt].isReceiverPlug&&_e.push({receiverPlug:this._plugs[Dt],incomingPlug:this._plugs[Dt].attachedPlug});return _e}whichNodeAreWeAttachedTo(){let _e=null;for(const Dt of this._plugs)Dt?.attachedPlug?.isReceiverPlug&&(_e=Dt.attachedPlug.node);return _e}whichNodesIsThisComboPlugAttachedTo(){if(!this.isTypeCombo)return[];let _e=[];for(const Dt of this._plugs)Dt?.attachedPlug?.isReceiverPlug&&_e.push(Dt.attachedPlug.node);return _e}isReplaceableWithSkuIdOld(_e){const Vt=this.stores.productDataStore.getState().productData[_e]?.plugs;let Gt=0;if(!Vt)return!1;for(let zt=0;zt<this._plugs.length;zt++)for(let jt=0;jt<Vt.length;jt++)this._plugs[zt].name==Vt[jt].name&&Gt++;return Gt==this._plugs.length}isReplaceableWithSkuId(_e){const Vt=this.stores.productDataStore.getState().productData[_e]?.plugs;if(!Vt)return LOGGER.warn({title:`The new sku ${_e} is invalid for this experience to replace this node: `,details:this}),!1;let Gt=!1,zt=!0;const jt=this.whichPlugAreWeAttachedTo();for(const Wt of Vt)if(Gt=hasCommonElement(jt.acceptedPlugTypes,Wt.connectsToPlugTypes),Gt===!0)break;const Ht=this.whichPlugsAreAttachedToUs();for(const Wt of Ht)for(const qt of Vt)if(zt=hasCommonElement(qt.acceptedPlugTypes,Wt.connectsToPlugTypes),zt===!1)break;return Gt&&zt}getAllSkusThatCanReplaceMe(){let _e=[];const Dt=this.stores.productDataStore.getState().productData;return Object.keys(Dt).map(Vt=>{Vt!=this.skuID&&this.isReplaceableWithSkuId(Vt)&&_e.push(Vt)}),_e}whichPlugAreWeAttachedUsing(){for(let _e=0;_e<this._plugs.length;_e++){const Dt=this._plugs[_e];let Vt=Dt.attachedPlug;if(!Vt&&Dt.attachedPlugGUID&&(Vt=this.stores.attachmentStore.getState().attachmentSystem.currentStructure.getPlugByGUID(Dt.attachedPlugGUID)),!Dt.isOpen&&Vt.isReceiverPlug)return Dt}}whichPlugAreWeAttachedTo(){for(let _e=0;_e<this._plugs.length;_e++)if(!this._plugs[_e].isOpen&&this._plugs[_e].attachedPlug.isReceiverPlug)return this._plugs[_e].attachedPlug}getPlugWhichCanConnectToType(_e){for(const Dt of this._plugs)if(Dt.connectsToPlugTypes.includes(_e))return Dt;return null}getOpenPlugsWeCanAttachFrom(){let _e=[];if(this.whichNodeAreWeAttachedTo())return _e;for(let Dt=0;Dt<this._plugs.length;Dt++)this.plugs[Dt].isOpen&&this.plugs[Dt].connectsToPlugTypes.length>0&&_e.push(this._plugs[Dt]);return _e}getOpenPlugsFromNode(){let _e=[];for(let Dt=0;Dt<this._plugs.length;Dt++)this._plugs[Dt].isOpen&&this._plugs[Dt].acceptedPlugTypes.length>0&&_e.push(this._plugs[Dt]);return _e}generatePlugsForNode(_e){this._plugs=[];let Dt=this.stores.productDataStore.getState().productData[_e]?.plugs;if(Dt)for(let Vt=0;Vt<Dt.length;Vt++)if(Dt[Vt].type==="unvisualizedPlug"){const Gt=Dt[Vt]?.unvisualizedCount>=0?Dt[Vt].unvisualizedCount:1e3;for(let zt=0;zt<Gt;zt++){const jt=new Plug({...Dt[Vt],name:`${Dt[Vt].name}_${zt}`},this);this._plugs.push(jt)}}else{const Gt=new Plug(Dt[Vt],this);this._plugs.push(Gt)}}generatePlugsWithData(_e,Dt){const Vt=this.stores.productDataStore.getState().productData[_e]?.plugs;Vt&&Vt.forEach(Gt=>{if(Gt.type==="unvisualizedPlug"){const zt=Gt.unvisualizedCount&&Gt.unvisualizedCount>=0?Gt.unvisualizedCount:1e3;for(let jt=0;jt<zt;jt++){const Ht=new Plug({...Gt,name:`${Gt.name}_${jt}`},this,Dt[`${Gt.name}_${jt}`]);this._plugs.push(Ht)}}else{const zt=new Plug(Gt,this,Dt[Gt.name]);this._plugs.push(zt)}})}detachNodeFromReceiver(){for(let _e=0;_e<this.plugs.length;_e++)if(!this.plugs[_e].isOpen&&this.plugs[_e].attachedPlug.isReceiverPlug){const Dt={incomingPlug:this.plugs[_e],receiverPlug:this.plugs[_e].attachedPlug};return this.plugs[_e].attachedPlug.openPlug(),this.plugs[_e].openPlug(),Dt}}detachNodeCompletely(){for(let _e=0;_e<this._plugs.length;_e++)this._plugs[_e].isOpen||(this._plugs[_e].attachedPlug.openPlug(),this._plugs[_e].openPlug())}getPlugByName(_e){for(let Dt=0;Dt<this._plugs.length;Dt++)if(this._plugs[Dt].name==_e)return this._plugs[Dt];return null}getPlugByGUID(_e){for(let Dt=0;Dt<this._plugs.length;Dt++)if(this._plugs[Dt].guid==_e)return this._plugs[Dt];return null}async removeNode(){const _e=[];for(const Dt of this._plugs)if(!Dt.isOpen){if(Dt.type==="comboPlug"&&Dt.connectsToPlugTypes.length>0){Dt.attachedPlug.openPlug();continue}Dt.attachedPlug.isReceiverPlug?Dt.attachedPlug.openPlug():_e.push(Dt.attachedPlug.node.guid)}if(_e.length>0)for(const Dt of _e)this.stores.itemStore.getState().actions.addToRemoveItems(Dt);this.modelFunctions=null,this.ref=null}};const EPIGRAPH_CONFIGURATOR_CATEGORY="Epigraph - Configurator",CONFIGURATOR_LOADING={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorLoading",label:"",interaction:{nonInteraction:!0}},CONFIGURATOR_READY={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorReady",label:"",interaction:{nonInteraction:!0}},CONFIGURATOR_FAILED={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorFailed",label:"",interaction:{nonInteraction:!0}},CONFIGURATOR_REVIEW_CART_SHOWN={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorReviewCartShown",label:"",interaction:{nonInteraction:!1}},CONFIGURATOR_REVIEW_CART_HIDE={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorReviewCartHide",label:"",interaction:{nonInteraction:!1}},CONFIGURATOR_CHECKOUT={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorCheckout",label:"",interaction:{nonInteraction:!1}},CONFIGURATOR_CHECKOUT_ITEM={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorCheckoutItemDetails",label:"",interaction:{nonInteraction:!1}},CONFIGURATOR_GLOBAL_GEOMETRY_VARIANT_SWITCHED={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorGlobalGeometryVariantSwitched",label:"",interaction:{nonInteraction:!1}},CONFIGURATOR_GLOBAL_VARIANT_SWITCHED={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorGlobalVariantSwitched",label:"",interaction:{nonInteraction:!1}},CONFIGURATOR_LOCAL_VARIANT_SWITCHED={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorLocalVariantSwitched",label:"",interaction:{nonInteraction:!1}},CONFIGURATOR_LOAD_FROM_PRECONFIG={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorLoadFromPreConfiguration",label:"",interaction:{nonInteraction:!0}},CONFIGURATOR_PRECONFIGURATION_ITEM_ADDED={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"preconfigurationItemAdded",label:"",interaction:{nonInteraction:!0}},CONFIGURATOR_SCENE_RESTARTED={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorSceneRestarted",label:"",interaction:{nonInteraction:!1}},CONFIGURATOR_AR_REQUESTED={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorArRequested",label:"",interaction:{nonInteraction:!1}},CONFIGURATOR_ITEM_REMOVED={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorItemRemoved",label:"",interaction:{nonInteraction:!1}},CONFIGURATOR_ITEM_ADDED={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorItemAdded",label:"",interaction:{nonInteraction:!1}},CONFIGURATOR_INSTRUCTIONS_BTN_CLICKED={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorInstructionsBtnClicked",label:"",interaction:{nonInteraction:!1}},CONFIGURATOR_INSTRUCTIONS_COMPLETION_RATE={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorInstructionsStageCompletionRate",label:"",interaction:{nonInteraction:!1}},CONFIGURATOR_INSTRUCTIONS_SHOWN={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorInstructionsShow",label:"",interaction:{nonInteraction:!1}},CONFIGURATOR_DIMENSION_SHOWN={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorDimensionsBtnShow",label:"",interaction:{nonInteraction:!1}},CONFIGURATOR_DIMENSION_HIDE={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorDimensionsBtnHide",label:"",interaction:{nonInteraction:!1}},CONFIGURATOR_HOTSPOT_ENTER={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorHotspotEnter",label:"",interaction:{nonInteraction:!1}},CONFIGURATOR_HOTSPOT_EXIT={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorHotspotExit",label:"",interaction:{nonInteraction:!1}},CONFIGURATOR_SCENE_SHARED={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorSceneShared",label:"",interaction:{nonInteraction:!1}};/* @license
|
|
4636
|
+
`}class EventDispatcher{constructor(){this._listeners={}}addEventListener(_e,Dt){const Vt=this._listeners;return Vt[_e]===void 0&&(Vt[_e]=[]),Vt[_e].indexOf(Dt)===-1&&Vt[_e].push(Dt),this}removeEventListener(_e,Dt){if(this._listeners===void 0)return this;const Gt=this._listeners[_e];if(Gt!==void 0){const zt=Gt.indexOf(Dt);zt!==-1&&Gt.splice(zt,1)}return this}dispatchEvent(_e){if(this._listeners===void 0)return this;const Vt=this._listeners[_e.type];if(Vt!==void 0){const Gt=Vt.slice(0);for(let zt=0,jt=Gt.length;zt<jt;zt++)Gt[zt].call(this,_e)}return this}dispose(){for(const _e in this._listeners)delete this._listeners[_e]}}class GraphEdge extends EventDispatcher{constructor(_e,Dt,Vt,Gt={}){if(super(),this._name=void 0,this._parent=void 0,this._child=void 0,this._attributes=void 0,this._disposed=!1,this._name=_e,this._parent=Dt,this._child=Vt,this._attributes=Gt,!Dt.isOnGraph(Vt))throw new Error("Cannot connect disconnected graphs.")}getName(){return this._name}getParent(){return this._parent}getChild(){return this._child}setChild(_e){return this._child=_e,this}getAttributes(){return this._attributes}dispose(){this._disposed||(this._disposed=!0,this.dispatchEvent({type:"dispose",target:this}),super.dispose())}isDisposed(){return this._disposed}}class Graph extends EventDispatcher{constructor(..._e){super(..._e),this._emptySet=new Set,this._edges=new Set,this._parentEdges=new Map,this._childEdges=new Map}listEdges(){return Array.from(this._edges)}listParentEdges(_e){return Array.from(this._childEdges.get(_e)||this._emptySet)}listParents(_e){return this.listParentEdges(_e).map(Dt=>Dt.getParent())}listChildEdges(_e){return Array.from(this._parentEdges.get(_e)||this._emptySet)}listChildren(_e){return this.listChildEdges(_e).map(Dt=>Dt.getChild())}disconnectParents(_e,Dt){let Vt=this.listParentEdges(_e);return Dt&&(Vt=Vt.filter(Gt=>Dt(Gt.getParent()))),Vt.forEach(Gt=>Gt.dispose()),this}createEdge(_e,Dt,Vt,Gt){return this._registerEdge(new GraphEdge(_e,Dt,Vt,Gt))}_registerEdge(_e){this._edges.add(_e);const Dt=_e.getParent();this._parentEdges.has(Dt)||this._parentEdges.set(Dt,new Set),this._parentEdges.get(Dt).add(_e);const Vt=_e.getChild();return this._childEdges.has(Vt)||this._childEdges.set(Vt,new Set),this._childEdges.get(Vt).add(_e),_e.addEventListener("dispose",()=>this._removeEdge(_e)),_e}_removeEdge(_e){return this._edges.delete(_e),this._parentEdges.get(_e.getParent()).delete(_e),this._childEdges.get(_e.getChild()).delete(_e),this}}function _extends(){return _extends=Object.assign||function(kt){for(var _e=1;_e<arguments.length;_e++){var Dt=arguments[_e];for(var Vt in Dt)Object.prototype.hasOwnProperty.call(Dt,Vt)&&(kt[Vt]=Dt[Vt])}return kt},_extends.apply(this,arguments)}function isRef(kt){return kt instanceof GraphEdge}function isRefList(kt){return Array.isArray(kt)&&kt[0]instanceof GraphEdge}function isRefMap(kt){return!!(isPlainObject(kt)&&getFirstValue(kt)instanceof GraphEdge)}function getFirstValue(kt){for(const _e in kt)return kt[_e]}function isPlainObject(kt){return!!kt&&Object.getPrototypeOf(kt)===Object.prototype}const $attributes=Symbol("attributes"),$immutableKeys=Symbol("immutableKeys");class GraphNode extends EventDispatcher{constructor(_e){super(),this._disposed=!1,this.graph=void 0,this[$attributes]=void 0,this[$immutableKeys]=void 0,this.graph=_e,this[$immutableKeys]=new Set,this[$attributes]=this._createAttributes()}getDefaults(){return{}}_createAttributes(){const _e=this.getDefaults(),Dt={};for(const Vt in _e){const Gt=_e[Vt];if(Gt instanceof GraphNode){const zt=this.graph.createEdge(Vt,this,Gt);zt.addEventListener("dispose",()=>Gt.dispose()),this[$immutableKeys].add(Vt),Dt[Vt]=zt}else Dt[Vt]=Gt}return Dt}isOnGraph(_e){return this.graph===_e.graph}isDisposed(){return this._disposed}dispose(){this._disposed||(this.graph.listChildEdges(this).forEach(_e=>_e.dispose()),this.graph.disconnectParents(this),this._disposed=!0,this.dispatchEvent({type:"dispose"}))}detach(){return this.graph.disconnectParents(this),this}swap(_e,Dt){for(const Vt in this[$attributes]){const Gt=this[$attributes][Vt];if(isRef(Gt)){const zt=Gt;zt.getChild()===_e&&this.setRef(Vt,Dt,zt.getAttributes())}else if(isRefList(Gt)){const jt=Gt.find(Ht=>Ht.getChild()===_e);if(jt){const Ht=jt.getAttributes();this.removeRef(Vt,_e).addRef(Vt,Dt,Ht)}}else if(isRefMap(Gt)){const zt=Gt;for(const jt in zt){const Ht=zt[jt];Ht.getChild()===_e&&this.setRefMap(Vt,jt,Dt,Ht.getAttributes())}}}return this}get(_e){return this[$attributes][_e]}set(_e,Dt){return this[$attributes][_e]=Dt,this.dispatchEvent({type:"change",attribute:_e})}getRef(_e){const Dt=this[$attributes][_e];return Dt?Dt.getChild():null}setRef(_e,Dt,Vt){if(this[$immutableKeys].has(_e))throw new Error(`Cannot overwrite immutable attribute, "${_e}".`);const Gt=this[$attributes][_e];if(Gt&&Gt.dispose(),!Dt)return this;const zt=this.graph.createEdge(_e,this,Dt,Vt);return zt.addEventListener("dispose",()=>{delete this[$attributes][_e],this.dispatchEvent({type:"change",attribute:_e})}),this[$attributes][_e]=zt,this.dispatchEvent({type:"change",attribute:_e})}listRefs(_e){return this[$attributes][_e].map(Vt=>Vt.getChild())}addRef(_e,Dt,Vt){const Gt=this.graph.createEdge(_e,this,Dt,Vt),zt=this[$attributes][_e];return zt.push(Gt),Gt.addEventListener("dispose",()=>{let jt;for(;(jt=zt.indexOf(Gt))!==-1;)zt.splice(jt,1);this.dispatchEvent({type:"change",attribute:_e})}),this.dispatchEvent({type:"change",attribute:_e})}removeRef(_e,Dt){return this[$attributes][_e].filter(zt=>zt.getChild()===Dt).forEach(zt=>zt.dispose()),this}listRefMapKeys(_e){return Object.keys(this[$attributes][_e])}listRefMapValues(_e){return Object.values(this[$attributes][_e]).map(Dt=>Dt.getChild())}getRefMap(_e,Dt){const Vt=this[$attributes][_e];return Vt[Dt]?Vt[Dt].getChild():null}setRefMap(_e,Dt,Vt,Gt){const zt=this[$attributes][_e],jt=zt[Dt];if(jt&&jt.dispose(),!Vt)return this;Gt=Object.assign(Gt||{},{key:Dt});const Ht=this.graph.createEdge(_e,this,Vt,_extends({},Gt,{key:Dt}));return Ht.addEventListener("dispose",()=>{delete zt[Dt],this.dispatchEvent({type:"change",attribute:_e,key:Dt})}),zt[Dt]=Ht,this.dispatchEvent({type:"change",attribute:_e,key:Dt})}dispatchEvent(_e){return super.dispatchEvent(_extends({},_e,{target:this})),this.graph.dispatchEvent(_extends({},_e,{target:this,type:`node:${_e.type}`})),this}}const u="v3.7.3",c="@glb.bin";var h,f,l,d,g;(function(kt){kt.ACCESSOR="Accessor",kt.ANIMATION="Animation",kt.ANIMATION_CHANNEL="AnimationChannel",kt.ANIMATION_SAMPLER="AnimationSampler",kt.BUFFER="Buffer",kt.CAMERA="Camera",kt.MATERIAL="Material",kt.MESH="Mesh",kt.PRIMITIVE="Primitive",kt.PRIMITIVE_TARGET="PrimitiveTarget",kt.NODE="Node",kt.ROOT="Root",kt.SCENE="Scene",kt.SKIN="Skin",kt.TEXTURE="Texture",kt.TEXTURE_INFO="TextureInfo"})(h||(h={})),function(kt){kt.INTERLEAVED="interleaved",kt.SEPARATE="separate"}(f||(f={})),function(kt){kt.ARRAY_BUFFER="ARRAY_BUFFER",kt.ELEMENT_ARRAY_BUFFER="ELEMENT_ARRAY_BUFFER",kt.INVERSE_BIND_MATRICES="INVERSE_BIND_MATRICES",kt.OTHER="OTHER",kt.SPARSE="SPARSE"}(l||(l={})),function(kt){kt[kt.R=4096]="R",kt[kt.G=256]="G",kt[kt.B=16]="B",kt[kt.A=1]="A"}(d||(d={})),function(kt){kt.GLTF="GLTF",kt.GLB="GLB"}(g||(g={}));const p={5120:Int8Array,5121:Uint8Array,5122:Int16Array,5123:Uint16Array,5125:Uint32Array,5126:Float32Array};var m,w=typeof Float32Array<"u"?Float32Array:Array;function y(kt){return Math.hypot(kt[0],kt[1],kt[2])}Math.hypot||(Math.hypot=function(){for(var kt=0,_e=arguments.length;_e--;)kt+=arguments[_e]*arguments[_e];return Math.sqrt(kt)}),m=new w(3),w!=Float32Array&&(m[0]=0,m[1]=0,m[2]=0);class E{static createBufferFromDataURI(_e){if(typeof Buffer>"u"){const Dt=atob(_e.split(",")[1]),Vt=new Uint8Array(Dt.length);for(let Gt=0;Gt<Dt.length;Gt++)Vt[Gt]=Dt.charCodeAt(Gt);return Vt}{const Dt=_e.split(",")[1],Vt=_e.indexOf("base64")>=0;return Buffer.from(Dt,Vt?"base64":"utf8")}}static encodeText(_e){return typeof TextEncoder<"u"?new TextEncoder().encode(_e):Buffer.from(_e)}static decodeText(_e){return typeof TextDecoder<"u"?new TextDecoder().decode(_e):Buffer.from(_e).toString("utf8")}static concat(_e){let Dt=0;for(const zt of _e)Dt+=zt.byteLength;const Vt=new Uint8Array(Dt);let Gt=0;for(const zt of _e)Vt.set(zt,Gt),Gt+=zt.byteLength;return Vt}static pad(_e,Dt=0){const Vt=this.padNumber(_e.byteLength);if(Vt===_e.byteLength)return _e;const Gt=new Uint8Array(Vt);if(Gt.set(_e),Dt!==0)for(let zt=_e.byteLength;zt<Vt;zt++)Gt[zt]=Dt;return Gt}static padNumber(_e){return 4*Math.ceil(_e/4)}static equals(_e,Dt){if(_e===Dt)return!0;if(_e.byteLength!==Dt.byteLength)return!1;let Vt=_e.byteLength;for(;Vt--;)if(_e[Vt]!==Dt[Vt])return!1;return!0}static toView(_e,Dt=0,Vt=1/0){return new Uint8Array(_e.buffer,_e.byteOffset+Dt,Math.min(_e.byteLength,Vt))}static assertView(_e){if(_e&&!ArrayBuffer.isView(_e))throw new Error(`Method requires Uint8Array parameter; received "${typeof _e}".`);return _e}}class S{static hexToFactor(_e,Dt){_e=Math.floor(_e);const Vt=Dt;return Vt[0]=(_e>>16&255)/255,Vt[1]=(_e>>8&255)/255,Vt[2]=(255&_e)/255,this.convertSRGBToLinear(Dt,Dt)}static factorToHex(_e){const Dt=[..._e],[Vt,Gt,zt]=this.convertLinearToSRGB(_e,Dt);return 255*Vt<<16^255*Gt<<8^255*zt<<0}static convertSRGBToLinear(_e,Dt){const Vt=_e,Gt=Dt;for(let zt=0;zt<3;zt++)Gt[zt]=Vt[zt]<.04045?.0773993808*Vt[zt]:Math.pow(.9478672986*Vt[zt]+.0521327014,2.4);return Dt}static convertLinearToSRGB(_e,Dt){const Vt=_e,Gt=Dt;for(let zt=0;zt<3;zt++)Gt[zt]=Vt[zt]<.0031308?12.92*Vt[zt]:1.055*Math.pow(Vt[zt],.41666)-.055;return Dt}}class M{match(_e){return _e.length>=8&&_e[0]===137&&_e[1]===80&&_e[2]===78&&_e[3]===71&&_e[4]===13&&_e[5]===10&&_e[6]===26&&_e[7]===10}getSize(_e){const Dt=new DataView(_e.buffer,_e.byteOffset);return E.decodeText(_e.slice(12,16))===M.PNG_FRIED_CHUNK_NAME?[Dt.getUint32(32,!1),Dt.getUint32(36,!1)]:[Dt.getUint32(16,!1),Dt.getUint32(20,!1)]}getChannels(_e){return 4}}M.PNG_FRIED_CHUNK_NAME="CgBI";class I{static registerFormat(_e,Dt){this.impls[_e]=Dt}static getMimeType(_e){for(const Dt in this.impls)if(this.impls[Dt].match(_e))return Dt;return null}static getSize(_e,Dt){return this.impls[Dt]?this.impls[Dt].getSize(_e):null}static getChannels(_e,Dt){return this.impls[Dt]?this.impls[Dt].getChannels(_e):null}static getVRAMByteLength(_e,Dt){if(!this.impls[Dt])return null;if(this.impls[Dt].getVRAMByteLength)return this.impls[Dt].getVRAMByteLength(_e);let Vt=0;const Gt=this.getSize(_e,Dt);if(!Gt)return null;for(;Gt[0]>1||Gt[1]>1;)Vt+=Gt[0]*Gt[1]*4,Gt[0]=Math.max(Math.floor(Gt[0]/2),1),Gt[1]=Math.max(Math.floor(Gt[1]/2),1);return Vt+=4,Vt}static mimeTypeToExtension(_e){return _e==="image/jpeg"?"jpg":_e.split("/").pop()}static extensionToMimeType(_e){return _e==="jpg"?"image/jpeg":_e?`image/${_e}`:""}}function R(kt,_e){if(_e>kt.byteLength)throw new TypeError("Corrupt JPG, exceeded buffer limits");if(kt.getUint8(_e)!==255)throw new TypeError("Invalid JPG, marker table corrupted");return kt}I.impls={"image/jpeg":new class{match(kt){return kt.length>=3&&kt[0]===255&&kt[1]===216&&kt[2]===255}getSize(kt){let _e,Dt,Vt=new DataView(kt.buffer,kt.byteOffset+4);for(;Vt.byteLength;){if(_e=Vt.getUint16(0,!1),R(Vt,_e),Dt=Vt.getUint8(_e+1),Dt===192||Dt===193||Dt===194)return[Vt.getUint16(_e+7,!1),Vt.getUint16(_e+5,!1)];Vt=new DataView(kt.buffer,Vt.byteOffset+_e+2)}throw new TypeError("Invalid JPG, no size found")}getChannels(kt){return 3}},"image/png":new M};class N{static basename(_e){const Dt=_e.split(/[\\/]/).pop();return Dt.substring(0,Dt.lastIndexOf("."))}static extension(_e){if(_e.startsWith("data:image/")){const Dt=_e.match(/data:(image\/\w+)/)[1];return I.mimeTypeToExtension(Dt)}return _e.startsWith("data:model/gltf+json")?"gltf":_e.startsWith("data:model/gltf-binary")?"glb":_e.startsWith("data:application/")?"bin":_e.split(/[\\/]/).pop().split(/[.]/).pop()}}function O(kt){return Object.prototype.toString.call(kt)==="[object Object]"}function C(kt){if(O(kt)===!1)return!1;const _e=kt.constructor;if(_e===void 0)return!0;const Dt=_e.prototype;return O(Dt)!==!1&&Object.prototype.hasOwnProperty.call(Dt,"isPrototypeOf")!==!1}var F,U;(function(kt){kt[kt.SILENT=4]="SILENT",kt[kt.ERROR=3]="ERROR",kt[kt.WARN=2]="WARN",kt[kt.INFO=1]="INFO",kt[kt.DEBUG=0]="DEBUG"})(U||(U={}));let B$1=class Ql{constructor(_e){this.verbosity=void 0,this.verbosity=_e}debug(_e){this.verbosity<=Ql.Verbosity.DEBUG&&console.debug(_e)}info(_e){this.verbosity<=Ql.Verbosity.INFO&&console.info(_e)}warn(_e){this.verbosity<=Ql.Verbosity.WARN&&console.warn(_e)}error(_e){this.verbosity<=Ql.Verbosity.ERROR&&console.error(_e)}};function P(kt,_e,Dt){var Vt=_e[0],Gt=_e[1],zt=_e[2],jt=_e[3],Ht=_e[4],Wt=_e[5],qt=_e[6],Xt=_e[7],Kt=_e[8],Yt=_e[9],Zt=_e[10],Jt=_e[11],nn=_e[12],rn=_e[13],Qt=_e[14],en=_e[15],tn=Dt[0],sn=Dt[1],cn=Dt[2],un=Dt[3];return kt[0]=tn*Vt+sn*Ht+cn*Kt+un*nn,kt[1]=tn*Gt+sn*Wt+cn*Yt+un*rn,kt[2]=tn*zt+sn*qt+cn*Zt+un*Qt,kt[3]=tn*jt+sn*Xt+cn*Jt+un*en,kt[4]=(tn=Dt[4])*Vt+(sn=Dt[5])*Ht+(cn=Dt[6])*Kt+(un=Dt[7])*nn,kt[5]=tn*Gt+sn*Wt+cn*Yt+un*rn,kt[6]=tn*zt+sn*qt+cn*Zt+un*Qt,kt[7]=tn*jt+sn*Xt+cn*Jt+un*en,kt[8]=(tn=Dt[8])*Vt+(sn=Dt[9])*Ht+(cn=Dt[10])*Kt+(un=Dt[11])*nn,kt[9]=tn*Gt+sn*Wt+cn*Yt+un*rn,kt[10]=tn*zt+sn*qt+cn*Zt+un*Qt,kt[11]=tn*jt+sn*Xt+cn*Jt+un*en,kt[12]=(tn=Dt[12])*Vt+(sn=Dt[13])*Ht+(cn=Dt[14])*Kt+(un=Dt[15])*nn,kt[13]=tn*Gt+sn*Wt+cn*Yt+un*rn,kt[14]=tn*zt+sn*qt+cn*Zt+un*Qt,kt[15]=tn*jt+sn*Xt+cn*Jt+un*en,kt}F=B$1,B$1.Verbosity=U,B$1.DEFAULT_INSTANCE=new F(F.Verbosity.INFO);class L{static identity(_e){return _e}static eq(_e,Dt,Vt=1e-5){if(_e.length!==Dt.length)return!1;for(let Gt=0;Gt<_e.length;Gt++)if(Math.abs(_e[Gt]-Dt[Gt])>Vt)return!1;return!0}static decodeNormalizedInt(_e,Dt){switch(Dt){case 5126:return _e;case 5123:return _e/65535;case 5121:return _e/255;case 5122:return Math.max(_e/32767,-1);case 5120:return Math.max(_e/127,-1);default:throw new Error("Invalid component type.")}}static denormalize(_e,Dt){return L.decodeNormalizedInt(_e,Dt)}static encodeNormalizedInt(_e,Dt){switch(Dt){case 5126:return _e;case 5123:return Math.round(65535*_e);case 5121:return Math.round(255*_e);case 5122:return Math.round(32767*_e);case 5120:return Math.round(127*_e);default:throw new Error("Invalid component type.")}}static normalize(_e,Dt){return L.encodeNormalizedInt(_e,Dt)}static decompose(_e,Dt,Vt,Gt){let zt=y([_e[0],_e[1],_e[2]]);const jt=y([_e[4],_e[5],_e[6]]),Ht=y([_e[8],_e[9],_e[10]]);var Wt,qt,Xt,Kt,Yt,Zt,Jt,nn,rn,Qt,en,tn,sn,cn,un,hn,dn;((qt=(Wt=_e)[0])*(Jt=Wt[5])-(Xt=Wt[1])*(Zt=Wt[4]))*((tn=Wt[10])*(dn=Wt[15])-(sn=Wt[11])*(hn=Wt[14]))-(qt*(nn=Wt[6])-(Kt=Wt[2])*Zt)*((en=Wt[9])*dn-sn*(un=Wt[13]))+(qt*(rn=Wt[7])-(Yt=Wt[3])*Zt)*(en*hn-tn*un)+(Xt*nn-Kt*Jt)*((Qt=Wt[8])*dn-sn*(cn=Wt[12]))-(Xt*rn-Yt*Jt)*(Qt*hn-tn*cn)+(Kt*rn-Yt*nn)*(Qt*un-en*cn)<0&&(zt=-zt),Dt[0]=_e[12],Dt[1]=_e[13],Dt[2]=_e[14];const pn=_e.slice(),fn=1/zt,mn=1/jt,vn=1/Ht;pn[0]*=fn,pn[1]*=fn,pn[2]*=fn,pn[4]*=mn,pn[5]*=mn,pn[6]*=mn,pn[8]*=vn,pn[9]*=vn,pn[10]*=vn,function(_n,En){var An=new w(3);(function(ar,zn){var ur=zn[4],Hn=zn[5],sr=zn[6],gr=zn[8],fr=zn[9],Un=zn[10];ar[0]=Math.hypot(zn[0],zn[1],zn[2]),ar[1]=Math.hypot(ur,Hn,sr),ar[2]=Math.hypot(gr,fr,Un)})(An,En);var Tn=1/An[0],Cn=1/An[1],yn=1/An[2],Sn=En[0]*Tn,wn=En[1]*Cn,xn=En[2]*yn,Rn=En[4]*Tn,Dn=En[5]*Cn,kn=En[6]*yn,Fn=En[8]*Tn,Pn=En[9]*Cn,Bn=En[10]*yn,qn=Sn+Dn+Bn,tr=0;qn>0?(tr=2*Math.sqrt(qn+1),_n[3]=.25*tr,_n[0]=(kn-Pn)/tr,_n[1]=(Fn-xn)/tr,_n[2]=(wn-Rn)/tr):Sn>Dn&&Sn>Bn?(tr=2*Math.sqrt(1+Sn-Dn-Bn),_n[3]=(kn-Pn)/tr,_n[0]=.25*tr,_n[1]=(wn+Rn)/tr,_n[2]=(Fn+xn)/tr):Dn>Bn?(tr=2*Math.sqrt(1+Dn-Sn-Bn),_n[3]=(Fn-xn)/tr,_n[0]=(wn+Rn)/tr,_n[1]=.25*tr,_n[2]=(kn+Pn)/tr):(tr=2*Math.sqrt(1+Bn-Sn-Dn),_n[3]=(wn-Rn)/tr,_n[0]=(Fn+xn)/tr,_n[1]=(kn+Pn)/tr,_n[2]=.25*tr)}(Vt,pn),Gt[0]=zt,Gt[1]=jt,Gt[2]=Ht}static compose(_e,Dt,Vt,Gt){const zt=Gt,jt=Dt[0],Ht=Dt[1],Wt=Dt[2],qt=Dt[3],Xt=jt+jt,Kt=Ht+Ht,Yt=Wt+Wt,Zt=jt*Xt,Jt=jt*Kt,nn=jt*Yt,rn=Ht*Kt,Qt=Ht*Yt,en=Wt*Yt,tn=qt*Xt,sn=qt*Kt,cn=qt*Yt,un=Vt[0],hn=Vt[1],dn=Vt[2];return zt[0]=(1-(rn+en))*un,zt[1]=(Jt+cn)*un,zt[2]=(nn-sn)*un,zt[3]=0,zt[4]=(Jt-cn)*hn,zt[5]=(1-(Zt+en))*hn,zt[6]=(Qt+tn)*hn,zt[7]=0,zt[8]=(nn+sn)*dn,zt[9]=(Qt-tn)*dn,zt[10]=(1-(Zt+rn))*dn,zt[11]=0,zt[12]=_e[0],zt[13]=_e[1],zt[14]=_e[2],zt[15]=1,zt}}function j(kt,_e){if(!!kt!=!!_e)return!1;const Dt=kt.getChild(),Vt=_e.getChild();return Dt===Vt||Dt.equals(Vt)}function D(kt,_e){if(!!kt!=!!_e||kt.length!==_e.length)return!1;for(let Dt=0;Dt<kt.length;Dt++){const Vt=kt[Dt],Gt=_e[Dt];if(Vt.getChild()!==Gt.getChild()&&!Vt.getChild().equals(Gt.getChild()))return!1}return!0}function _(kt,_e){if(!!kt!=!!_e)return!1;const Dt=Object.keys(kt),Vt=Object.keys(_e);if(Dt.length!==Vt.length)return!1;for(const Gt in kt){const zt=kt[Gt],jt=_e[Gt];if(!!zt!=!!jt)return!1;const Ht=zt.getChild(),Wt=jt.getChild();if(Ht!==Wt&&!Ht.equals(Wt))return!1}return!0}function k(kt,_e){if(kt===_e)return!0;if(!!kt!=!!_e||!kt||!_e||kt.length!==_e.length)return!1;for(let Dt=0;Dt<kt.length;Dt++)if(kt[Dt]!==_e[Dt])return!1;return!0}function z(kt,_e){if(kt===_e)return!0;if(!!kt!=!!_e)return!1;if(!C(kt)||!C(_e))return kt===_e;const Dt=kt,Vt=_e;let Gt,zt=0,jt=0;for(Gt in Dt)zt++;for(Gt in Vt)jt++;if(zt!==jt)return!1;for(Gt in Dt){const Ht=Dt[Gt],Wt=Vt[Gt];if(G(Ht)&&G(Wt)){if(!k(Ht,Wt))return!1}else if(C(Ht)&&C(Wt)){if(!z(Ht,Wt))return!1}else if(Ht!==Wt)return!1}return!0}function G(kt){return Array.isArray(kt)||ArrayBuffer.isView(kt)}const J=new Set,$=function(){let kt="";for(let _e=0;_e<6;_e++)kt+="23456789abdegjkmnpqrvwxyzABDEGJKMNPQRVWXYZ".charAt(Math.floor(42*Math.random()));return kt},V=function(){for(let kt=0;kt<999;kt++){const _e=$();if(!J.has(_e))return J.add(_e),_e}return""},W="https://null.example";let q$1=class{static dirname(_e){const Dt=_e.lastIndexOf("/");return Dt===-1?"./":_e.substring(0,Dt+1)}static basename(_e){return N.basename(new URL(_e,W).pathname)}static extension(_e){return N.extension(new URL(_e,W).pathname)}static resolve(_e,Dt){if(!this.isRelativePath(Dt))return Dt;const Vt=_e.split("/"),Gt=Dt.split("/");Vt.pop();for(let zt=0;zt<Gt.length;zt++)Gt[zt]!=="."&&(Gt[zt]===".."?Vt.pop():Vt.push(Gt[zt]));return Vt.join("/")}static isAbsoluteURL(_e){return this.PROTOCOL_REGEXP.test(_e)}static isRelativePath(_e){return!/^(?:[a-zA-Z]+:)?\//.test(_e)}};q$1.DEFAULT_INIT={},q$1.PROTOCOL_REGEXP=/^[a-zA-Z]+:\/\//;const H=kt=>kt,Y=new Set;let Z$1=class extends GraphNode{constructor(_e,Dt=""){super(_e),this[$attributes].name=Dt,this.init(),this.dispatchEvent({type:"create"})}getGraph(){return this.graph}getDefaults(){return Object.assign(super.getDefaults(),{name:"",extras:{}})}set(_e,Dt){return Array.isArray(Dt)&&(Dt=Dt.slice()),super.set(_e,Dt)}getName(){return this.get("name")}setName(_e){return this.set("name",_e)}getExtras(){return this.get("extras")}setExtras(_e){return this.set("extras",_e)}clone(){return new this.constructor(this.graph).copy(this,H)}copy(_e,Dt=H){for(const Vt in this[$attributes]){const Gt=this[$attributes][Vt];if(Gt instanceof GraphEdge)this[$immutableKeys].has(Vt)||Gt.dispose();else if(isRefList(Gt))for(const zt of Gt)zt.dispose();else if(isRefMap(Gt))for(const zt in Gt)Gt[zt].dispose()}for(const Vt in _e[$attributes]){const Gt=this[$attributes][Vt],zt=_e[$attributes][Vt];if(zt instanceof GraphEdge)this[$immutableKeys].has(Vt)?Gt.getChild().copy(Dt(zt.getChild()),Dt):this.setRef(Vt,Dt(zt.getChild()),zt.getAttributes());else if(isRefList(zt))for(const jt of zt)this.addRef(Vt,Dt(jt.getChild()),jt.getAttributes());else if(isRefMap(zt))for(const jt in zt){const Ht=zt[jt];this.setRefMap(Vt,jt,Dt(Ht.getChild()),Ht.getAttributes())}else this[$attributes][Vt]=C(zt)?JSON.parse(JSON.stringify(zt)):Array.isArray(zt)||zt instanceof ArrayBuffer||ArrayBuffer.isView(zt)?zt.slice():zt}return this}equals(_e,Dt=Y){if(this===_e)return!0;if(this.propertyType!==_e.propertyType)return!1;for(const Vt in this[$attributes]){if(Dt.has(Vt))continue;const Gt=this[$attributes][Vt],zt=_e[$attributes][Vt];if(isRef(Gt)||isRef(zt)){if(!j(Gt,zt))return!1}else if(isRefList(Gt)||isRefList(zt)){if(!D(Gt,zt))return!1}else if(isRefMap(Gt)||isRefMap(zt)){if(!_(Gt,zt))return!1}else if(C(Gt)||C(zt)){if(!z(Gt,zt))return!1}else if(G(Gt)||G(zt)){if(!k(Gt,zt))return!1}else if(Gt!==zt)return!1}return!0}detach(){return this.graph.disconnectParents(this,_e=>_e.propertyType!=="Root"),this}listParents(){return this.graph.listParents(this)}};class K extends Z$1{getDefaults(){return Object.assign(super.getDefaults(),{extensions:{}})}getExtension(_e){return this.getRefMap("extensions",_e)}setExtension(_e,Dt){return Dt&&Dt.t(this),this.setRefMap("extensions",_e,Dt)}listExtensions(){return this.listRefMapValues("extensions")}}class Q extends K{constructor(..._e){super(..._e),this.i=L.identity,this.o=L.identity}init(){this.propertyType=h.ACCESSOR}getDefaults(){return Object.assign(super.getDefaults(),{array:null,type:Q.Type.SCALAR,componentType:Q.ComponentType.FLOAT,normalized:!1,sparse:!1,buffer:null})}copy(_e,Dt=H){return super.copy(_e,Dt),this.i=_e.i,this.o=_e.o,this}static getElementSize(_e){switch(_e){case Q.Type.SCALAR:return 1;case Q.Type.VEC2:return 2;case Q.Type.VEC3:return 3;case Q.Type.VEC4:case Q.Type.MAT2:return 4;case Q.Type.MAT3:return 9;case Q.Type.MAT4:return 16;default:throw new Error("Unexpected type: "+_e)}}static getComponentSize(_e){switch(_e){case Q.ComponentType.BYTE:case Q.ComponentType.UNSIGNED_BYTE:return 1;case Q.ComponentType.SHORT:case Q.ComponentType.UNSIGNED_SHORT:return 2;case Q.ComponentType.UNSIGNED_INT:case Q.ComponentType.FLOAT:return 4;default:throw new Error("Unexpected component type: "+_e)}}getMinNormalized(_e){const Dt=this.getElementSize();this.getMin(_e);for(let Vt=0;Vt<Dt;Vt++)_e[Vt]=this.o(_e[Vt]);return _e}getMin(_e){const Dt=this.get("array"),Vt=this.getCount(),Gt=this.getElementSize();for(let zt=0;zt<Gt;zt++)_e[zt]=1/0;for(let zt=0;zt<Vt*Gt;zt+=Gt)for(let jt=0;jt<Gt;jt++){const Ht=Dt[zt+jt];Number.isFinite(Ht)&&(_e[jt]=Math.min(_e[jt],Ht))}return _e}getMaxNormalized(_e){const Dt=this.getElementSize();this.getMax(_e);for(let Vt=0;Vt<Dt;Vt++)_e[Vt]=this.o(_e[Vt]);return _e}getMax(_e){const Dt=this.get("array"),Vt=this.getCount(),Gt=this.getElementSize();for(let zt=0;zt<Gt;zt++)_e[zt]=-1/0;for(let zt=0;zt<Vt*Gt;zt+=Gt)for(let jt=0;jt<Gt;jt++){const Ht=Dt[zt+jt];Number.isFinite(Ht)&&(_e[jt]=Math.max(_e[jt],Ht))}return _e}getCount(){const _e=this.get("array");return _e?_e.length/this.getElementSize():0}getType(){return this.get("type")}setType(_e){return this.set("type",_e)}getElementSize(){return Q.getElementSize(this.get("type"))}getComponentSize(){return this.get("array").BYTES_PER_ELEMENT}getComponentType(){return this.get("componentType")}getNormalized(){return this.get("normalized")}setNormalized(_e){return this.set("normalized",_e),_e?(this.o=Dt=>L.decodeNormalizedInt(Dt,this.get("componentType")),this.i=Dt=>L.encodeNormalizedInt(Dt,this.get("componentType"))):(this.o=L.identity,this.i=L.identity),this}getScalar(_e){const Dt=this.getElementSize();return this.o(this.get("array")[_e*Dt])}setScalar(_e,Dt){return this.get("array")[_e*this.getElementSize()]=this.i(Dt),this}getElement(_e,Dt){const Vt=this.getElementSize(),Gt=this.get("array");for(let zt=0;zt<Vt;zt++)Dt[zt]=this.o(Gt[_e*Vt+zt]);return Dt}setElement(_e,Dt){const Vt=this.getElementSize(),Gt=this.get("array");for(let zt=0;zt<Vt;zt++)Gt[_e*Vt+zt]=this.i(Dt[zt]);return this}getSparse(){return this.get("sparse")}setSparse(_e){return this.set("sparse",_e)}getBuffer(){return this.getRef("buffer")}setBuffer(_e){return this.setRef("buffer",_e)}getArray(){return this.get("array")}setArray(_e){return this.set("componentType",_e?function(Dt){switch(Dt.constructor){case Float32Array:return Q.ComponentType.FLOAT;case Uint32Array:return Q.ComponentType.UNSIGNED_INT;case Uint16Array:return Q.ComponentType.UNSIGNED_SHORT;case Uint8Array:return Q.ComponentType.UNSIGNED_BYTE;case Int16Array:return Q.ComponentType.SHORT;case Int8Array:return Q.ComponentType.BYTE;default:throw new Error("Unknown accessor componentType.")}}(_e):Q.ComponentType.FLOAT),this.set("array",_e),this}getByteLength(){const _e=this.get("array");return _e?_e.byteLength:0}}Q.Type={SCALAR:"SCALAR",VEC2:"VEC2",VEC3:"VEC3",VEC4:"VEC4",MAT2:"MAT2",MAT3:"MAT3",MAT4:"MAT4"},Q.ComponentType={BYTE:5120,UNSIGNED_BYTE:5121,SHORT:5122,UNSIGNED_SHORT:5123,UNSIGNED_INT:5125,FLOAT:5126};class X extends K{init(){this.propertyType=h.ANIMATION}getDefaults(){return Object.assign(super.getDefaults(),{channels:[],samplers:[]})}addChannel(_e){return this.addRef("channels",_e)}removeChannel(_e){return this.removeRef("channels",_e)}listChannels(){return this.listRefs("channels")}addSampler(_e){return this.addRef("samplers",_e)}removeSampler(_e){return this.removeRef("samplers",_e)}listSamplers(){return this.listRefs("samplers")}}class tt extends K{init(){this.propertyType=h.ANIMATION_CHANNEL}getDefaults(){return Object.assign(super.getDefaults(),{targetPath:null,targetNode:null,sampler:null})}getTargetPath(){return this.get("targetPath")}setTargetPath(_e){return this.set("targetPath",_e)}getTargetNode(){return this.getRef("targetNode")}setTargetNode(_e){return this.setRef("targetNode",_e)}getSampler(){return this.getRef("sampler")}setSampler(_e){return this.setRef("sampler",_e)}}tt.TargetPath={TRANSLATION:"translation",ROTATION:"rotation",SCALE:"scale",WEIGHTS:"weights"};class et extends K{init(){this.propertyType=h.ANIMATION_SAMPLER}getDefaultAttributes(){return Object.assign(super.getDefaults(),{interpolation:et.Interpolation.LINEAR,input:null,output:null})}getInterpolation(){return this.get("interpolation")}setInterpolation(_e){return this.set("interpolation",_e)}getInput(){return this.getRef("input")}setInput(_e){return this.setRef("input",_e,{usage:l.OTHER})}getOutput(){return this.getRef("output")}setOutput(_e){return this.setRef("output",_e,{usage:l.OTHER})}}et.Interpolation={LINEAR:"LINEAR",STEP:"STEP",CUBICSPLINE:"CUBICSPLINE"};class rt extends K{init(){this.propertyType=h.BUFFER}getDefaults(){return Object.assign(super.getDefaults(),{uri:""})}getURI(){return this.get("uri")}setURI(_e){return this.set("uri",_e)}}class st extends K{init(){this.propertyType=h.CAMERA}getDefaults(){return Object.assign(super.getDefaults(),{type:st.Type.PERSPECTIVE,znear:.1,zfar:100,aspectRatio:null,yfov:2*Math.PI*50/360,xmag:1,ymag:1})}getType(){return this.get("type")}setType(_e){return this.set("type",_e)}getZNear(){return this.get("znear")}setZNear(_e){return this.set("znear",_e)}getZFar(){return this.get("zfar")}setZFar(_e){return this.set("zfar",_e)}getAspectRatio(){return this.get("aspectRatio")}setAspectRatio(_e){return this.set("aspectRatio",_e)}getYFov(){return this.get("yfov")}setYFov(_e){return this.set("yfov",_e)}getXMag(){return this.get("xmag")}setXMag(_e){return this.set("xmag",_e)}getYMag(){return this.get("ymag")}setYMag(_e){return this.set("ymag",_e)}}st.Type={PERSPECTIVE:"perspective",ORTHOGRAPHIC:"orthographic"};class nt extends Z$1{t(_e){if(!this.parentTypes.includes(_e.propertyType))throw new Error(`Parent "${_e.propertyType}" invalid for child "${this.propertyType}".`)}}nt.EXTENSION_NAME=void 0;class it extends K{init(){this.propertyType=h.TEXTURE_INFO}getDefaults(){return Object.assign(super.getDefaults(),{texCoord:0,magFilter:null,minFilter:null,wrapS:it.WrapMode.REPEAT,wrapT:it.WrapMode.REPEAT})}getTexCoord(){return this.get("texCoord")}setTexCoord(_e){return this.set("texCoord",_e)}getMagFilter(){return this.get("magFilter")}setMagFilter(_e){return this.set("magFilter",_e)}getMinFilter(){return this.get("minFilter")}setMinFilter(_e){return this.set("minFilter",_e)}getWrapS(){return this.get("wrapS")}setWrapS(_e){return this.set("wrapS",_e)}getWrapT(){return this.get("wrapT")}setWrapT(_e){return this.set("wrapT",_e)}}it.WrapMode={CLAMP_TO_EDGE:33071,MIRRORED_REPEAT:33648,REPEAT:10497},it.MagFilter={NEAREST:9728,LINEAR:9729},it.MinFilter={NEAREST:9728,LINEAR:9729,NEAREST_MIPMAP_NEAREST:9984,LINEAR_MIPMAP_NEAREST:9985,NEAREST_MIPMAP_LINEAR:9986,LINEAR_MIPMAP_LINEAR:9987};const{R:ot,G:at,B:ut,A:ct}=d;class ht extends K{init(){this.propertyType=h.MATERIAL}getDefaults(){return Object.assign(super.getDefaults(),{alphaMode:ht.AlphaMode.OPAQUE,alphaCutoff:.5,doubleSided:!1,baseColorFactor:[1,1,1,1],baseColorTexture:null,baseColorTextureInfo:new it(this.graph,"baseColorTextureInfo"),emissiveFactor:[0,0,0],emissiveTexture:null,emissiveTextureInfo:new it(this.graph,"emissiveTextureInfo"),normalScale:1,normalTexture:null,normalTextureInfo:new it(this.graph,"normalTextureInfo"),occlusionStrength:1,occlusionTexture:null,occlusionTextureInfo:new it(this.graph,"occlusionTextureInfo"),roughnessFactor:1,metallicFactor:1,metallicRoughnessTexture:null,metallicRoughnessTextureInfo:new it(this.graph,"metallicRoughnessTextureInfo")})}getDoubleSided(){return this.get("doubleSided")}setDoubleSided(_e){return this.set("doubleSided",_e)}getAlpha(){return this.get("baseColorFactor")[3]}setAlpha(_e){const Dt=this.get("baseColorFactor").slice();return Dt[3]=_e,this.set("baseColorFactor",Dt)}getAlphaMode(){return this.get("alphaMode")}setAlphaMode(_e){return this.set("alphaMode",_e)}getAlphaCutoff(){return this.get("alphaCutoff")}setAlphaCutoff(_e){return this.set("alphaCutoff",_e)}getBaseColorFactor(){return this.get("baseColorFactor")}setBaseColorFactor(_e){return this.set("baseColorFactor",_e)}getBaseColorHex(){return S.factorToHex(this.get("baseColorFactor"))}setBaseColorHex(_e){const Dt=this.get("baseColorFactor").slice();return this.set("baseColorFactor",S.hexToFactor(_e,Dt))}getBaseColorTexture(){return this.getRef("baseColorTexture")}getBaseColorTextureInfo(){return this.getRef("baseColorTexture")?this.getRef("baseColorTextureInfo"):null}setBaseColorTexture(_e){return this.setRef("baseColorTexture",_e,{channels:ot|at|ut|ct,isColor:!0})}getEmissiveFactor(){return this.get("emissiveFactor")}setEmissiveFactor(_e){return this.set("emissiveFactor",_e)}getEmissiveHex(){return S.factorToHex(this.get("emissiveFactor"))}setEmissiveHex(_e){const Dt=this.get("emissiveFactor").slice();return this.set("emissiveFactor",S.hexToFactor(_e,Dt))}getEmissiveTexture(){return this.getRef("emissiveTexture")}getEmissiveTextureInfo(){return this.getRef("emissiveTexture")?this.getRef("emissiveTextureInfo"):null}setEmissiveTexture(_e){return this.setRef("emissiveTexture",_e,{channels:ot|at|ut,isColor:!0})}getNormalScale(){return this.get("normalScale")}setNormalScale(_e){return this.set("normalScale",_e)}getNormalTexture(){return this.getRef("normalTexture")}getNormalTextureInfo(){return this.getRef("normalTexture")?this.getRef("normalTextureInfo"):null}setNormalTexture(_e){return this.setRef("normalTexture",_e,{channels:ot|at|ut})}getOcclusionStrength(){return this.get("occlusionStrength")}setOcclusionStrength(_e){return this.set("occlusionStrength",_e)}getOcclusionTexture(){return this.getRef("occlusionTexture")}getOcclusionTextureInfo(){return this.getRef("occlusionTexture")?this.getRef("occlusionTextureInfo"):null}setOcclusionTexture(_e){return this.setRef("occlusionTexture",_e,{channels:ot})}getRoughnessFactor(){return this.get("roughnessFactor")}setRoughnessFactor(_e){return this.set("roughnessFactor",_e)}getMetallicFactor(){return this.get("metallicFactor")}setMetallicFactor(_e){return this.set("metallicFactor",_e)}getMetallicRoughnessTexture(){return this.getRef("metallicRoughnessTexture")}getMetallicRoughnessTextureInfo(){return this.getRef("metallicRoughnessTexture")?this.getRef("metallicRoughnessTextureInfo"):null}setMetallicRoughnessTexture(_e){return this.setRef("metallicRoughnessTexture",_e,{channels:at|ut})}}ht.AlphaMode={OPAQUE:"OPAQUE",MASK:"MASK",BLEND:"BLEND"};class ft extends K{init(){this.propertyType=h.MESH}getDefaults(){return Object.assign(super.getDefaults(),{weights:[],primitives:[]})}addPrimitive(_e){return this.addRef("primitives",_e)}removePrimitive(_e){return this.removeRef("primitives",_e)}listPrimitives(){return this.listRefs("primitives")}getWeights(){return this.get("weights")}setWeights(_e){return this.set("weights",_e)}}class lt extends K{constructor(..._e){super(..._e),this.u=null,this.h=new Set}init(){this.propertyType=h.NODE}getDefaults(){return Object.assign(super.getDefaults(),{translation:[0,0,0],rotation:[0,0,0,1],scale:[1,1,1],weights:[],camera:null,mesh:null,skin:null,children:[]})}copy(_e,Dt=H){if(Dt===H)throw new Error("Node cannot be copied.");return super.copy(_e,Dt)}getTranslation(){return this.get("translation")}getRotation(){return this.get("rotation")}getScale(){return this.get("scale")}setTranslation(_e){return this.set("translation",_e)}setRotation(_e){return this.set("rotation",_e)}setScale(_e){return this.set("scale",_e)}getMatrix(){return L.compose(this.get("translation"),this.get("rotation"),this.get("scale"),[])}setMatrix(_e){const Dt=this.get("translation").slice(),Vt=this.get("rotation").slice(),Gt=this.get("scale").slice();return L.decompose(_e,Dt,Vt,Gt),this.set("translation",Dt).set("rotation",Vt).set("scale",Gt)}getWorldTranslation(){const _e=[0,0,0];return L.decompose(this.getWorldMatrix(),_e,[0,0,0,1],[1,1,1]),_e}getWorldRotation(){const _e=[0,0,0,1];return L.decompose(this.getWorldMatrix(),[0,0,0],_e,[1,1,1]),_e}getWorldScale(){const _e=[1,1,1];return L.decompose(this.getWorldMatrix(),[0,0,0],[0,0,0,1],_e),_e}getWorldMatrix(){const _e=[];for(let Gt=this;Gt!=null;Gt=Gt.u)_e.push(Gt);let Dt;const Vt=_e.pop().getMatrix();for(;Dt=_e.pop();)P(Vt,Vt,Dt.getMatrix());return Vt}addChild(_e){if(_e.u&&_e.u.removeChild(_e),_e.h.size)for(const Vt of _e.h)Vt.removeChild(_e);this.addRef("children",_e),_e.u=this;const Dt=this[$attributes].children;return Dt[Dt.length-1].addEventListener("dispose",()=>_e.u=null),this}removeChild(_e){return this.removeRef("children",_e)}listChildren(){return this.listRefs("children")}getParent(){return this.u?this.u:this.listParents().find(_e=>_e.propertyType===h.SCENE)||null}getParentNode(){return this.u}getMesh(){return this.getRef("mesh")}setMesh(_e){return this.setRef("mesh",_e)}getCamera(){return this.getRef("camera")}setCamera(_e){return this.setRef("camera",_e)}getSkin(){return this.getRef("skin")}setSkin(_e){return this.setRef("skin",_e)}getWeights(){return this.get("weights")}setWeights(_e){return this.set("weights",_e)}traverse(_e){_e(this);for(const Dt of this.listChildren())Dt.traverse(_e);return this}}class dt extends K{init(){this.propertyType=h.PRIMITIVE}getDefaults(){return Object.assign(super.getDefaults(),{mode:dt.Mode.TRIANGLES,material:null,indices:null,attributes:{},targets:[]})}getIndices(){return this.getRef("indices")}setIndices(_e){return this.setRef("indices",_e,{usage:l.ELEMENT_ARRAY_BUFFER})}getAttribute(_e){return this.getRefMap("attributes",_e)}setAttribute(_e,Dt){return this.setRefMap("attributes",_e,Dt,{usage:l.ARRAY_BUFFER})}listAttributes(){return this.listRefMapValues("attributes")}listSemantics(){return this.listRefMapKeys("attributes")}getMaterial(){return this.getRef("material")}setMaterial(_e){return this.setRef("material",_e)}getMode(){return this.get("mode")}setMode(_e){return this.set("mode",_e)}listTargets(){return this.listRefs("targets")}addTarget(_e){return this.addRef("targets",_e)}removeTarget(_e){return this.removeRef("targets",_e)}}dt.Mode={POINTS:0,LINES:1,LINE_LOOP:2,LINE_STRIP:3,TRIANGLES:4,TRIANGLE_STRIP:5,TRIANGLE_FAN:6};class gt extends Z$1{init(){this.propertyType=h.PRIMITIVE_TARGET}getDefaults(){return Object.assign(super.getDefaults(),{attributes:{}})}getAttribute(_e){return this.getRefMap("attributes",_e)}setAttribute(_e,Dt){return this.setRefMap("attributes",_e,Dt,{usage:l.ARRAY_BUFFER})}listAttributes(){return this.listRefMapValues("attributes")}listSemantics(){return this.listRefMapKeys("attributes")}}function pt(){return pt=Object.assign?Object.assign.bind():function(kt){for(var _e=1;_e<arguments.length;_e++){var Dt=arguments[_e];for(var Vt in Dt)Object.prototype.hasOwnProperty.call(Dt,Vt)&&(kt[Vt]=Dt[Vt])}return kt},pt.apply(this,arguments)}class mt extends K{init(){this.propertyType=h.SCENE}getDefaults(){return Object.assign(super.getDefaults(),{children:[]})}copy(_e,Dt=H){if(Dt===H)throw new Error("Scene cannot be copied.");return super.copy(_e,Dt)}addChild(_e){_e.u&&_e.u.removeChild(_e),this.addRef("children",_e),_e.h.add(this);const Dt=this[$attributes].children;return Dt[Dt.length-1].addEventListener("dispose",()=>_e.h.delete(this)),this}removeChild(_e){return this.removeRef("children",_e)}listChildren(){return this.listRefs("children")}traverse(_e){for(const Dt of this.listChildren())Dt.traverse(_e);return this}}class wt extends K{init(){this.propertyType=h.SKIN}getDefaults(){return Object.assign(super.getDefaults(),{skeleton:null,inverseBindMatrices:null,joints:[]})}getSkeleton(){return this.getRef("skeleton")}setSkeleton(_e){return this.setRef("skeleton",_e)}getInverseBindMatrices(){return this.getRef("inverseBindMatrices")}setInverseBindMatrices(_e){return this.setRef("inverseBindMatrices",_e,{usage:l.INVERSE_BIND_MATRICES})}addJoint(_e){return this.addRef("joints",_e)}removeJoint(_e){return this.removeRef("joints",_e)}listJoints(){return this.listRefs("joints")}}class yt extends K{init(){this.propertyType=h.TEXTURE}getDefaults(){return Object.assign(super.getDefaults(),{image:null,mimeType:"",uri:""})}getMimeType(){return this.get("mimeType")||I.extensionToMimeType(N.extension(this.get("uri")))}setMimeType(_e){return this.set("mimeType",_e)}getURI(){return this.get("uri")}setURI(_e){this.set("uri",_e);const Dt=I.extensionToMimeType(N.extension(_e));return Dt&&this.set("mimeType",Dt),this}getImage(){return this.get("image")}setImage(_e){return this.set("image",E.assertView(_e))}getSize(){const _e=this.get("image");return _e?I.getSize(_e,this.getMimeType()):null}}class vt extends K{init(){this.propertyType=h.ROOT}getDefaults(){return Object.assign(super.getDefaults(),{asset:{generator:`glTF-Transform ${u}`,version:"2.0"},defaultScene:null,accessors:[],animations:[],buffers:[],cameras:[],materials:[],meshes:[],nodes:[],scenes:[],skins:[],textures:[]})}constructor(_e){super(_e),this.l=new Set,_e.addEventListener("node:create",Dt=>{this.g(Dt.target)})}clone(){throw new Error("Root cannot be cloned.")}copy(_e,Dt=H){if(Dt===H)throw new Error("Root cannot be copied.");this.set("asset",pt({},_e.get("asset"))),this.setName(_e.getName()),this.setExtras(pt({},_e.getExtras())),this.setDefaultScene(_e.getDefaultScene()?Dt(_e.getDefaultScene()):null);for(const Vt of _e.listRefMapKeys("extensions")){const Gt=_e.getExtension(Vt);this.setExtension(Vt,Dt(Gt))}return this}g(_e){return _e instanceof mt?this.addRef("scenes",_e):_e instanceof lt?this.addRef("nodes",_e):_e instanceof st?this.addRef("cameras",_e):_e instanceof wt?this.addRef("skins",_e):_e instanceof ft?this.addRef("meshes",_e):_e instanceof ht?this.addRef("materials",_e):_e instanceof yt?this.addRef("textures",_e):_e instanceof X?this.addRef("animations",_e):_e instanceof Q?this.addRef("accessors",_e):_e instanceof rt&&this.addRef("buffers",_e),this}getAsset(){return this.get("asset")}listExtensionsUsed(){return Array.from(this.l)}listExtensionsRequired(){return this.listExtensionsUsed().filter(_e=>_e.isRequired())}p(_e){return this.l.add(_e),this}m(_e){return this.l.delete(_e),this}listScenes(){return this.listRefs("scenes")}setDefaultScene(_e){return this.setRef("defaultScene",_e)}getDefaultScene(){return this.getRef("defaultScene")}listNodes(){return this.listRefs("nodes")}listCameras(){return this.listRefs("cameras")}listSkins(){return this.listRefs("skins")}listMeshes(){return this.listRefs("meshes")}listMaterials(){return this.listRefs("materials")}listTextures(){return this.listRefs("textures")}listAnimations(){return this.listRefs("animations")}listAccessors(){return this.listRefs("accessors")}listBuffers(){return this.listRefs("buffers")}}class Tt{static fromGraph(_e){return Tt.v.get(_e)||null}constructor(){this.T=new Graph,this.S=new vt(this.T),this.M=B$1.DEFAULT_INSTANCE,Tt.v.set(this.T,this)}getRoot(){return this.S}getGraph(){return this.T}getLogger(){return this.M}setLogger(_e){return this.M=_e,this}clone(){return new Tt().setLogger(this.M).merge(this)}merge(_e){for(const zt of _e.getRoot().listExtensionsUsed()){const jt=this.createExtension(zt.constructor);zt.isRequired()&&jt.setRequired(!0)}const Dt=new Set,Vt=new Map;Dt.add(_e.S),Vt.set(_e.S,this.S);for(const zt of _e.T.listEdges())for(const jt of[zt.getParent(),zt.getChild()]){if(Dt.has(jt))continue;let Ht;Ht=jt.propertyType===h.TEXTURE_INFO?jt:new jt.constructor(this.T),Vt.set(jt,Ht),Dt.add(jt)}const Gt=zt=>{const jt=Vt.get(zt);if(!jt)throw new Error("Could resolve property.");return jt};for(const zt of Dt){const jt=Vt.get(zt);if(!jt)throw new Error("Could resolve property.");jt.propertyType!==h.TEXTURE_INFO&&jt.copy(zt,Gt)}return this}async transform(..._e){const Dt=_e.map(Vt=>Vt.name);for(const Vt of _e)await Vt(this,{stack:Dt});return this}createExtension(_e){const Dt=_e.EXTENSION_NAME;return this.getRoot().listExtensionsUsed().find(Vt=>Vt.extensionName===Dt)||new _e(this)}createScene(_e=""){return new mt(this.T,_e)}createNode(_e=""){return new lt(this.T,_e)}createCamera(_e=""){return new st(this.T,_e)}createSkin(_e=""){return new wt(this.T,_e)}createMesh(_e=""){return new ft(this.T,_e)}createPrimitive(){return new dt(this.T)}createPrimitiveTarget(_e=""){return new gt(this.T,_e)}createMaterial(_e=""){return new ht(this.T,_e)}createTexture(_e=""){return new yt(this.T,_e)}createAnimation(_e=""){return new X(this.T,_e)}createAnimationChannel(_e=""){return new tt(this.T,_e)}createAnimationSampler(_e=""){return new et(this.T,_e)}createAccessor(_e="",Dt=null){return Dt||(Dt=this.getRoot().listBuffers()[0]),new Q(this.T,_e).setBuffer(Dt)}createBuffer(_e=""){return new rt(this.T,_e)}}Tt.v=new WeakMap;class xt{constructor(_e){this.jsonDoc=void 0,this.buffers=[],this.bufferViews=[],this.bufferViewBuffers=[],this.accessors=[],this.textures=[],this.textureInfos=new Map,this.materials=[],this.meshes=[],this.cameras=[],this.nodes=[],this.skins=[],this.animations=[],this.scenes=[],this.jsonDoc=_e}setTextureInfo(_e,Dt){this.textureInfos.set(_e,Dt),Dt.texCoord!==void 0&&_e.setTexCoord(Dt.texCoord),Dt.extras!==void 0&&_e.setExtras(Dt.extras);const Vt=this.jsonDoc.json.textures[Dt.index];if(Vt.sampler===void 0)return;const Gt=this.jsonDoc.json.samplers[Vt.sampler];Gt.magFilter!==void 0&&_e.setMagFilter(Gt.magFilter),Gt.minFilter!==void 0&&_e.setMinFilter(Gt.minFilter),Gt.wrapS!==void 0&&_e.setWrapS(Gt.wrapS),Gt.wrapT!==void 0&&_e.setWrapT(Gt.wrapT)}}const At={logger:B$1.DEFAULT_INSTANCE,extensions:[],dependencies:{}};class Et{static read(_e,Dt=At){const Vt=pt({},At,Dt),{json:Gt}=_e,zt=new Tt().setLogger(Vt.logger);this.validate(_e,Vt);const jt=new xt(_e),Ht=Gt.asset,Wt=zt.getRoot().getAsset();Ht.copyright&&(Wt.copyright=Ht.copyright),Ht.extras&&(Wt.extras=Ht.extras),Gt.extras!==void 0&&zt.getRoot().setExtras(pt({},Gt.extras));const qt=Gt.extensionsUsed||[],Xt=Gt.extensionsRequired||[];for(const en of Vt.extensions)if(qt.includes(en.EXTENSION_NAME)){const tn=zt.createExtension(en).setRequired(Xt.includes(en.EXTENSION_NAME));for(const sn of tn.readDependencies)tn.install(sn,Vt.dependencies[sn])}const Kt=Gt.buffers||[];zt.getRoot().listExtensionsUsed().filter(en=>en.prereadTypes.includes(h.BUFFER)).forEach(en=>en.preread(jt,h.BUFFER)),jt.buffers=Kt.map(en=>{const tn=zt.createBuffer(en.name);return en.extras&&tn.setExtras(en.extras),en.uri&&en.uri.indexOf("__")!==0&&tn.setURI(en.uri),tn}),jt.bufferViewBuffers=(Gt.bufferViews||[]).map((en,tn)=>{if(!jt.bufferViews[tn]){const sn=_e.json.buffers[en.buffer];jt.bufferViews[tn]=E.toView(sn.uri?_e.resources[sn.uri]:_e.resources[c],en.byteOffset||0,en.byteLength)}return jt.buffers[en.buffer]});const Yt=Gt.accessors||[];jt.accessors=Yt.map(en=>{const tn=zt.createAccessor(en.name,jt.bufferViewBuffers[en.bufferView]).setType(en.type);return en.extras&&tn.setExtras(en.extras),en.normalized!==void 0&&tn.setNormalized(en.normalized),en.bufferView===void 0||tn.setArray(St(en,jt)),tn});const Zt=Gt.images||[],Jt=Gt.textures||[];zt.getRoot().listExtensionsUsed().filter(en=>en.prereadTypes.includes(h.TEXTURE)).forEach(en=>en.preread(jt,h.TEXTURE)),jt.textures=Zt.map(en=>{const tn=zt.createTexture(en.name);if(en.extras&&tn.setExtras(en.extras),en.bufferView!==void 0){const sn=Gt.bufferViews[en.bufferView],cn=_e.json.buffers[sn.buffer],un=sn.byteOffset||0,hn=(cn.uri?_e.resources[cn.uri]:_e.resources[c]).slice(un,un+sn.byteLength);tn.setImage(hn)}else en.uri!==void 0&&(tn.setImage(_e.resources[en.uri]),en.uri.indexOf("__")!==0&&tn.setURI(en.uri));if(en.mimeType!==void 0)tn.setMimeType(en.mimeType);else if(en.uri){const sn=N.extension(en.uri);tn.setMimeType(I.extensionToMimeType(sn))}return tn}),jt.materials=(Gt.materials||[]).map(en=>{const tn=zt.createMaterial(en.name);en.extras&&tn.setExtras(en.extras),en.alphaMode!==void 0&&tn.setAlphaMode(en.alphaMode),en.alphaCutoff!==void 0&&tn.setAlphaCutoff(en.alphaCutoff),en.doubleSided!==void 0&&tn.setDoubleSided(en.doubleSided);const sn=en.pbrMetallicRoughness||{};if(sn.baseColorFactor!==void 0&&tn.setBaseColorFactor(sn.baseColorFactor),en.emissiveFactor!==void 0&&tn.setEmissiveFactor(en.emissiveFactor),sn.metallicFactor!==void 0&&tn.setMetallicFactor(sn.metallicFactor),sn.roughnessFactor!==void 0&&tn.setRoughnessFactor(sn.roughnessFactor),sn.baseColorTexture!==void 0){const cn=sn.baseColorTexture;tn.setBaseColorTexture(jt.textures[Jt[cn.index].source]),jt.setTextureInfo(tn.getBaseColorTextureInfo(),cn)}if(en.emissiveTexture!==void 0){const cn=en.emissiveTexture;tn.setEmissiveTexture(jt.textures[Jt[cn.index].source]),jt.setTextureInfo(tn.getEmissiveTextureInfo(),cn)}if(en.normalTexture!==void 0){const cn=en.normalTexture;tn.setNormalTexture(jt.textures[Jt[cn.index].source]),jt.setTextureInfo(tn.getNormalTextureInfo(),cn),en.normalTexture.scale!==void 0&&tn.setNormalScale(en.normalTexture.scale)}if(en.occlusionTexture!==void 0){const cn=en.occlusionTexture;tn.setOcclusionTexture(jt.textures[Jt[cn.index].source]),jt.setTextureInfo(tn.getOcclusionTextureInfo(),cn),en.occlusionTexture.strength!==void 0&&tn.setOcclusionStrength(en.occlusionTexture.strength)}if(sn.metallicRoughnessTexture!==void 0){const cn=sn.metallicRoughnessTexture;tn.setMetallicRoughnessTexture(jt.textures[Jt[cn.index].source]),jt.setTextureInfo(tn.getMetallicRoughnessTextureInfo(),cn)}return tn});const nn=Gt.meshes||[];zt.getRoot().listExtensionsUsed().filter(en=>en.prereadTypes.includes(h.PRIMITIVE)).forEach(en=>en.preread(jt,h.PRIMITIVE)),jt.meshes=nn.map(en=>{const tn=zt.createMesh(en.name);return en.extras&&tn.setExtras(en.extras),en.weights!==void 0&&tn.setWeights(en.weights),(en.primitives||[]).forEach(sn=>{const cn=zt.createPrimitive();sn.extras&&cn.setExtras(sn.extras),sn.material!==void 0&&cn.setMaterial(jt.materials[sn.material]),sn.mode!==void 0&&cn.setMode(sn.mode);for(const[hn,dn]of Object.entries(sn.attributes||{}))cn.setAttribute(hn,jt.accessors[dn]);sn.indices!==void 0&&cn.setIndices(jt.accessors[sn.indices]);const un=en.extras&&en.extras.targetNames||[];(sn.targets||[]).forEach((hn,dn)=>{const pn=un[dn]||dn.toString(),fn=zt.createPrimitiveTarget(pn);for(const[mn,vn]of Object.entries(hn))fn.setAttribute(mn,jt.accessors[vn]);cn.addTarget(fn)}),tn.addPrimitive(cn)}),tn}),jt.cameras=(Gt.cameras||[]).map(en=>{const tn=zt.createCamera(en.name).setType(en.type);if(en.extras&&tn.setExtras(en.extras),en.type===st.Type.PERSPECTIVE){const sn=en.perspective;tn.setYFov(sn.yfov),tn.setZNear(sn.znear),sn.zfar!==void 0&&tn.setZFar(sn.zfar),sn.aspectRatio!==void 0&&tn.setAspectRatio(sn.aspectRatio)}else{const sn=en.orthographic;tn.setZNear(sn.znear).setZFar(sn.zfar).setXMag(sn.xmag).setYMag(sn.ymag)}return tn});const rn=Gt.nodes||[];zt.getRoot().listExtensionsUsed().filter(en=>en.prereadTypes.includes(h.NODE)).forEach(en=>en.preread(jt,h.NODE)),jt.nodes=rn.map(en=>{const tn=zt.createNode(en.name);if(en.extras&&tn.setExtras(en.extras),en.translation!==void 0&&tn.setTranslation(en.translation),en.rotation!==void 0&&tn.setRotation(en.rotation),en.scale!==void 0&&tn.setScale(en.scale),en.matrix!==void 0){const sn=[0,0,0],cn=[0,0,0,1],un=[1,1,1];L.decompose(en.matrix,sn,cn,un),tn.setTranslation(sn),tn.setRotation(cn),tn.setScale(un)}return en.weights!==void 0&&tn.setWeights(en.weights),tn}),jt.skins=(Gt.skins||[]).map(en=>{const tn=zt.createSkin(en.name);en.extras&&tn.setExtras(en.extras),en.inverseBindMatrices!==void 0&&tn.setInverseBindMatrices(jt.accessors[en.inverseBindMatrices]),en.skeleton!==void 0&&tn.setSkeleton(jt.nodes[en.skeleton]);for(const sn of en.joints)tn.addJoint(jt.nodes[sn]);return tn}),rn.map((en,tn)=>{const sn=jt.nodes[tn];(en.children||[]).forEach(cn=>sn.addChild(jt.nodes[cn])),en.mesh!==void 0&&sn.setMesh(jt.meshes[en.mesh]),en.camera!==void 0&&sn.setCamera(jt.cameras[en.camera]),en.skin!==void 0&&sn.setSkin(jt.skins[en.skin])}),jt.animations=(Gt.animations||[]).map(en=>{const tn=zt.createAnimation(en.name);en.extras&&tn.setExtras(en.extras);const sn=(en.samplers||[]).map(cn=>{const un=zt.createAnimationSampler().setInput(jt.accessors[cn.input]).setOutput(jt.accessors[cn.output]).setInterpolation(cn.interpolation||et.Interpolation.LINEAR);return cn.extras&&un.setExtras(cn.extras),tn.addSampler(un),un});return(en.channels||[]).forEach(cn=>{const un=zt.createAnimationChannel().setSampler(sn[cn.sampler]).setTargetPath(cn.target.path);cn.target.node!==void 0&&un.setTargetNode(jt.nodes[cn.target.node]),cn.extras&&un.setExtras(cn.extras),tn.addChannel(un)}),tn});const Qt=Gt.scenes||[];return zt.getRoot().listExtensionsUsed().filter(en=>en.prereadTypes.includes(h.SCENE)).forEach(en=>en.preread(jt,h.SCENE)),jt.scenes=Qt.map(en=>{const tn=zt.createScene(en.name);return en.extras&&tn.setExtras(en.extras),(en.nodes||[]).map(sn=>jt.nodes[sn]).forEach(sn=>tn.addChild(sn)),tn}),Gt.scene!==void 0&&zt.getRoot().setDefaultScene(jt.scenes[Gt.scene]),zt.getRoot().listExtensionsUsed().forEach(en=>en.read(jt)),Yt.forEach((en,tn)=>{const sn=jt.accessors[tn],cn=!!en.sparse,un=!en.bufferView&&!sn.getArray();(cn||un)&&sn.setSparse(!0).setArray(function(hn,dn){const pn=p[hn.componentType],fn=Q.getElementSize(hn.type);let mn;mn=hn.bufferView!==void 0?St(hn,dn):new pn(hn.count*fn);const vn=hn.sparse;if(!vn)return mn;const _n=vn.count,En=pt({},hn,vn.indices,{count:_n,type:"SCALAR"}),An=pt({},hn,vn.values,{count:_n}),Tn=St(En,dn),Cn=St(An,dn);for(let yn=0;yn<En.count;yn++)for(let Sn=0;Sn<fn;Sn++)mn[Tn[yn]*fn+Sn]=Cn[yn*fn+Sn];return mn}(en,jt))}),zt}static validate(_e,Dt){const Vt=_e.json;if(Vt.asset.version!=="2.0")throw new Error(`Unsupported glTF version, "${Vt.asset.version}".`);if(Vt.extensionsRequired){for(const Gt of Vt.extensionsRequired)if(!Dt.extensions.find(zt=>zt.EXTENSION_NAME===Gt))throw new Error(`Missing required extension, "${Gt}".`)}if(Vt.extensionsUsed)for(const Gt of Vt.extensionsUsed)Dt.extensions.find(zt=>zt.EXTENSION_NAME===Gt)||Dt.logger.warn(`Missing optional extension, "${Gt}".`)}}function St(kt,_e){const Dt=_e.bufferViews[kt.bufferView],Vt=_e.jsonDoc.json.bufferViews[kt.bufferView],Gt=p[kt.componentType],zt=Q.getElementSize(kt.type),jt=Gt.BYTES_PER_ELEMENT;if(Vt.byteStride!==void 0&&Vt.byteStride!==zt*jt)return function(Wt,qt){const Xt=qt.bufferViews[Wt.bufferView],Kt=qt.jsonDoc.json.bufferViews[Wt.bufferView],Yt=p[Wt.componentType],Zt=Q.getElementSize(Wt.type),Jt=Yt.BYTES_PER_ELEMENT,nn=Wt.byteOffset||0,rn=new Yt(Wt.count*Zt),Qt=new DataView(Xt.buffer,Xt.byteOffset,Xt.byteLength),en=Kt.byteStride;for(let tn=0;tn<Wt.count;tn++)for(let sn=0;sn<Zt;sn++){const cn=nn+tn*en+sn*Jt;let un;switch(Wt.componentType){case Q.ComponentType.FLOAT:un=Qt.getFloat32(cn,!0);break;case Q.ComponentType.UNSIGNED_INT:un=Qt.getUint32(cn,!0);break;case Q.ComponentType.UNSIGNED_SHORT:un=Qt.getUint16(cn,!0);break;case Q.ComponentType.UNSIGNED_BYTE:un=Qt.getUint8(cn);break;case Q.ComponentType.SHORT:un=Qt.getInt16(cn,!0);break;case Q.ComponentType.BYTE:un=Qt.getInt8(cn);break;default:throw new Error(`Unexpected componentType "${Wt.componentType}".`)}rn[tn*Zt+sn]=un}return rn}(kt,_e);const Ht=Dt.byteOffset+(kt.byteOffset||0);return new Gt(Dt.buffer.slice(Ht,Ht+kt.count*zt*jt))}var Mt;(function(kt){kt[kt.ARRAY_BUFFER=34962]="ARRAY_BUFFER",kt[kt.ELEMENT_ARRAY_BUFFER=34963]="ELEMENT_ARRAY_BUFFER"})(Mt||(Mt={}));class It{constructor(_e,Dt,Vt){this.C=void 0,this.jsonDoc=void 0,this.options=void 0,this.accessorIndexMap=new Map,this.animationIndexMap=new Map,this.bufferIndexMap=new Map,this.cameraIndexMap=new Map,this.skinIndexMap=new Map,this.materialIndexMap=new Map,this.meshIndexMap=new Map,this.nodeIndexMap=new Map,this.imageIndexMap=new Map,this.textureDefIndexMap=new Map,this.textureInfoDefMap=new Map,this.samplerDefIndexMap=new Map,this.sceneIndexMap=new Map,this.imageBufferViews=[],this.otherBufferViews=new Map,this.otherBufferViewsIndexMap=new Map,this.extensionData={},this.bufferURIGenerator=void 0,this.imageURIGenerator=void 0,this.logger=void 0,this.F=new Map,this.accessorUsageGroupedByParent=new Set(["ARRAY_BUFFER"]),this.accessorParents=new Map,this.C=_e,this.jsonDoc=Dt,this.options=Vt;const Gt=_e.getRoot(),zt=Gt.listBuffers().length,jt=Gt.listTextures().length;this.bufferURIGenerator=new Rt(zt>1,()=>Vt.basename||"buffer"),this.imageURIGenerator=new Rt(jt>1,Ht=>function(Wt,qt){const Xt=Wt.getGraph().listParentEdges(qt).find(Kt=>Kt.getParent()!==Wt.getRoot());return Xt?Xt.getName().replace(/texture$/i,""):""}(_e,Ht)||Vt.basename||"texture"),this.logger=_e.getLogger()}createTextureInfoDef(_e,Dt){const Vt={magFilter:Dt.getMagFilter()||void 0,minFilter:Dt.getMinFilter()||void 0,wrapS:Dt.getWrapS(),wrapT:Dt.getWrapT()},Gt=JSON.stringify(Vt);this.samplerDefIndexMap.has(Gt)||(this.samplerDefIndexMap.set(Gt,this.jsonDoc.json.samplers.length),this.jsonDoc.json.samplers.push(Vt));const zt={source:this.imageIndexMap.get(_e),sampler:this.samplerDefIndexMap.get(Gt)},jt=JSON.stringify(zt);this.textureDefIndexMap.has(jt)||(this.textureDefIndexMap.set(jt,this.jsonDoc.json.textures.length),this.jsonDoc.json.textures.push(zt));const Ht={index:this.textureDefIndexMap.get(jt)};return Dt.getTexCoord()!==0&&(Ht.texCoord=Dt.getTexCoord()),Object.keys(Dt.getExtras()).length>0&&(Ht.extras=Dt.getExtras()),this.textureInfoDefMap.set(Dt,Ht),Ht}createPropertyDef(_e){const Dt={};return _e.getName()&&(Dt.name=_e.getName()),Object.keys(_e.getExtras()).length>0&&(Dt.extras=_e.getExtras()),Dt}createAccessorDef(_e){const Dt=this.createPropertyDef(_e);return Dt.type=_e.getType(),Dt.componentType=_e.getComponentType(),Dt.count=_e.getCount(),this.C.getGraph().listParentEdges(_e).some(Vt=>Vt.getName()==="attributes"&&Vt.getAttributes().key==="POSITION"||Vt.getName()==="input")&&(Dt.max=_e.getMax([]).map(Math.fround),Dt.min=_e.getMin([]).map(Math.fround)),_e.getNormalized()&&(Dt.normalized=_e.getNormalized()),Dt}createImageData(_e,Dt,Vt){if(this.options.format===g.GLB)this.imageBufferViews.push(Dt),_e.bufferView=this.jsonDoc.json.bufferViews.length,this.jsonDoc.json.bufferViews.push({buffer:0,byteOffset:-1,byteLength:Dt.byteLength});else{const Gt=I.mimeTypeToExtension(Vt.getMimeType());_e.uri=this.imageURIGenerator.createURI(Vt,Gt),this.jsonDoc.resources[_e.uri]=Dt}}getAccessorUsage(_e){const Dt=this.F.get(_e);if(Dt)return Dt;if(_e.getSparse())return l.SPARSE;for(const Vt of this.C.getGraph().listParentEdges(_e)){const{usage:Gt}=Vt.getAttributes();if(Gt)return Gt;Vt.getParent().propertyType!==h.ROOT&&this.logger.warn(`Missing attribute ".usage" on edge, "${Vt.getName()}".`)}return l.OTHER}addAccessorToUsageGroup(_e,Dt){const Vt=this.F.get(_e);if(Vt&&Vt!==Dt)throw new Error(`Accessor with usage "${Vt}" cannot be reused as "${Dt}".`);return this.F.set(_e,Dt),this}listAccessorUsageGroups(){const _e={};for(const[Dt,Vt]of Array.from(this.F.entries()))_e[Vt]=_e[Vt]||[],_e[Vt].push(Dt);return _e}}It.BufferViewTarget=Mt,It.BufferViewUsage=l,It.USAGE_TO_TARGET={[l.ARRAY_BUFFER]:Mt.ARRAY_BUFFER,[l.ELEMENT_ARRAY_BUFFER]:Mt.ELEMENT_ARRAY_BUFFER};class Rt{constructor(_e,Dt){this.multiple=void 0,this.basename=void 0,this.counter={},this.multiple=_e,this.basename=Dt}createURI(_e,Dt){if(_e.getURI())return _e.getURI();if(this.multiple){const Vt=this.basename(_e);return this.counter[Vt]=this.counter[Vt]||1,`${Vt}_${this.counter[Vt]++}.${Dt}`}return`${this.basename(_e)}.${Dt}`}}const{BufferViewUsage:Nt}=It,{UNSIGNED_INT:Ot,UNSIGNED_SHORT:Ct,UNSIGNED_BYTE:Ft}=Q.ComponentType;class Ut{static write(_e,Dt){const Vt=_e.getRoot(),Gt={asset:pt({generator:`glTF-Transform ${u}`},Vt.getAsset()),extras:pt({},Vt.getExtras())},zt={json:Gt,resources:{}},jt=new It(_e,zt,Dt),Ht=Dt.logger||B$1.DEFAULT_INSTANCE,Wt=new Set(Dt.extensions.map(rn=>rn.EXTENSION_NAME)),qt=_e.getRoot().listExtensionsUsed().filter(rn=>Wt.has(rn.extensionName)),Xt=_e.getRoot().listExtensionsRequired().filter(rn=>Wt.has(rn.extensionName));qt.length<_e.getRoot().listExtensionsUsed().length&&Ht.warn("Some extensions were not registered for I/O, and will not be written.");for(const rn of qt)for(const Qt of rn.writeDependencies)rn.install(Qt,Dt.dependencies[Qt]);function Kt(rn,Qt,en,tn){const sn=[];let cn=0;for(const hn of rn){const dn=jt.createAccessorDef(hn);dn.bufferView=Gt.bufferViews.length;const pn=hn.getArray(),fn=E.pad(E.toView(pn));dn.byteOffset=cn,cn+=fn.byteLength,sn.push(fn),jt.accessorIndexMap.set(hn,Gt.accessors.length),Gt.accessors.push(dn)}const un={buffer:Qt,byteOffset:en,byteLength:E.concat(sn).byteLength};return tn&&(un.target=tn),Gt.bufferViews.push(un),{buffers:sn,byteLength:cn}}function Yt(rn,Qt,en){const tn=rn[0].getCount();let sn=0;for(const dn of rn){const pn=jt.createAccessorDef(dn);pn.bufferView=Gt.bufferViews.length,pn.byteOffset=sn;const fn=dn.getElementSize(),mn=dn.getComponentSize();sn+=E.padNumber(fn*mn),jt.accessorIndexMap.set(dn,Gt.accessors.length),Gt.accessors.push(pn)}const cn=tn*sn,un=new ArrayBuffer(cn),hn=new DataView(un);for(let dn=0;dn<tn;dn++){let pn=0;for(const fn of rn){const mn=fn.getElementSize(),vn=fn.getComponentSize(),_n=fn.getComponentType(),En=fn.getArray();for(let An=0;An<mn;An++){const Tn=dn*sn+pn+An*vn,Cn=En[dn*mn+An];switch(_n){case Q.ComponentType.FLOAT:hn.setFloat32(Tn,Cn,!0);break;case Q.ComponentType.BYTE:hn.setInt8(Tn,Cn);break;case Q.ComponentType.SHORT:hn.setInt16(Tn,Cn,!0);break;case Q.ComponentType.UNSIGNED_BYTE:hn.setUint8(Tn,Cn);break;case Q.ComponentType.UNSIGNED_SHORT:hn.setUint16(Tn,Cn,!0);break;case Q.ComponentType.UNSIGNED_INT:hn.setUint32(Tn,Cn,!0);break;default:throw new Error("Unexpected component type: "+_n)}}pn+=E.padNumber(mn*vn)}}return Gt.bufferViews.push({buffer:Qt,byteOffset:en,byteLength:cn,byteStride:sn,target:It.BufferViewTarget.ARRAY_BUFFER}),{byteLength:cn,buffers:[new Uint8Array(un)]}}function Zt(rn,Qt,en){const tn=[];let sn=0;const cn=new Map;let un=-1/0;for(const _n of rn){const En=jt.createAccessorDef(_n);Gt.accessors.push(En),jt.accessorIndexMap.set(_n,Gt.accessors.length-1);const An=[],Tn=[],Cn=[],yn=new Array(_n.getElementSize()).fill(0);for(let Rn=0,Dn=_n.getCount();Rn<Dn;Rn++)if(_n.getElement(Rn,Cn),!L.eq(Cn,yn,0)){un=Math.max(Rn,un),An.push(Rn);for(let kn=0;kn<Cn.length;kn++)Tn.push(Cn[kn])}const Sn=An.length,wn={accessorDef:En,count:Sn};if(cn.set(_n,wn),Sn===0)continue;if(Sn>_n.getCount()/3){const Rn=(100*An.length/_n.getCount()).toFixed(1);Ht.warn(`Sparse accessor with many non-zero elements (${Rn}%) may increase file size.`)}const xn=p[_n.getComponentType()];wn.indices=An,wn.values=new xn(Tn)}if(!Number.isFinite(un))return{buffers:tn,byteLength:sn};const hn=un<255?Uint8Array:un<65535?Uint16Array:Uint32Array,dn=un<255?Ft:un<65535?Ct:Ot,pn={buffer:Qt,byteOffset:en+sn,byteLength:0};for(const _n of rn){const En=cn.get(_n);if(En.count===0)continue;En.indicesByteOffset=pn.byteLength;const An=E.pad(E.toView(new hn(En.indices)));tn.push(An),sn+=An.byteLength,pn.byteLength+=An.byteLength}Gt.bufferViews.push(pn);const fn=Gt.bufferViews.length-1,mn={buffer:Qt,byteOffset:en+sn,byteLength:0};for(const _n of rn){const En=cn.get(_n);if(En.count===0)continue;En.valuesByteOffset=mn.byteLength;const An=E.pad(E.toView(En.values));tn.push(An),sn+=An.byteLength,mn.byteLength+=An.byteLength}Gt.bufferViews.push(mn);const vn=Gt.bufferViews.length-1;for(const _n of rn){const En=cn.get(_n);En.count!==0&&(En.accessorDef.sparse={count:En.count,indices:{bufferView:fn,byteOffset:En.indicesByteOffset,componentType:dn},values:{bufferView:vn,byteOffset:En.valuesByteOffset}})}return{buffers:tn,byteLength:sn}}const Jt=new Map;for(const rn of _e.getGraph().listEdges()){if(rn.getParent()===Vt)continue;const Qt=rn.getChild();if(Qt instanceof Q){const en=Jt.get(Qt)||[];en.push(rn),Jt.set(Qt,en)}}if(Gt.accessors=[],Gt.bufferViews=[],Gt.samplers=[],Gt.textures=[],Gt.images=Vt.listTextures().map((rn,Qt)=>{const en=jt.createPropertyDef(rn);rn.getMimeType()&&(en.mimeType=rn.getMimeType());const tn=rn.getImage();return tn&&jt.createImageData(en,tn,rn),jt.imageIndexMap.set(rn,Qt),en}),qt.filter(rn=>rn.prewriteTypes.includes(h.ACCESSOR)).forEach(rn=>rn.prewrite(jt,h.ACCESSOR)),Vt.listAccessors().forEach(rn=>{const Qt=jt.accessorUsageGroupedByParent,en=jt.accessorParents;if(jt.accessorIndexMap.has(rn))return;const tn=Jt.get(rn)||[],sn=jt.getAccessorUsage(rn);if(jt.addAccessorToUsageGroup(rn,sn),Qt.has(sn)){const cn=tn[0].getParent(),un=en.get(cn)||new Set;un.add(rn),en.set(cn,un)}}),qt.filter(rn=>rn.prewriteTypes.includes(h.BUFFER)).forEach(rn=>rn.prewrite(jt,h.BUFFER)),(Vt.listAccessors().length>0||Vt.listTextures().length>0||jt.otherBufferViews.size>0)&&Vt.listBuffers().length===0)throw new Error("Buffer required for Document resources, but none was found.");Gt.buffers=[],Vt.listBuffers().forEach((rn,Qt)=>{const en=jt.createPropertyDef(rn),tn=jt.accessorUsageGroupedByParent,sn=jt.accessorParents,cn=rn.listParents().filter(mn=>mn instanceof Q),un=new Set(cn),hn=[],dn=Gt.buffers.length;let pn=0;const fn=jt.listAccessorUsageGroups();for(const mn in fn)if(tn.has(mn))for(const vn of Array.from(sn.values())){const _n=Array.from(vn).filter(En=>un.has(En)).filter(En=>jt.getAccessorUsage(En)===mn);if(_n.length)if(mn!==Nt.ARRAY_BUFFER||Dt.vertexLayout===f.INTERLEAVED){const En=mn===Nt.ARRAY_BUFFER?Yt(_n,dn,pn):Kt(_n,dn,pn);pn+=En.byteLength,hn.push(...En.buffers)}else for(const En of _n){const An=Yt([En],dn,pn);pn+=An.byteLength,hn.push(...An.buffers)}}else{const vn=fn[mn].filter(An=>un.has(An));if(!vn.length)continue;const _n=mn===Nt.ELEMENT_ARRAY_BUFFER?It.BufferViewTarget.ELEMENT_ARRAY_BUFFER:void 0,En=mn===Nt.SPARSE?Zt(vn,dn,pn):Kt(vn,dn,pn,_n);pn+=En.byteLength,hn.push(...En.buffers)}if(jt.imageBufferViews.length&&Qt===0){for(let mn=0;mn<jt.imageBufferViews.length;mn++)if(Gt.bufferViews[Gt.images[mn].bufferView].byteOffset=pn,pn+=jt.imageBufferViews[mn].byteLength,hn.push(jt.imageBufferViews[mn]),pn%8){const vn=8-pn%8;pn+=vn,hn.push(new Uint8Array(vn))}}if(jt.otherBufferViews.has(rn))for(const mn of jt.otherBufferViews.get(rn))Gt.bufferViews.push({buffer:dn,byteOffset:pn,byteLength:mn.byteLength}),jt.otherBufferViewsIndexMap.set(mn,Gt.bufferViews.length-1),pn+=mn.byteLength,hn.push(mn);if(pn){let mn;Dt.format===g.GLB?mn=c:(mn=jt.bufferURIGenerator.createURI(rn,"bin"),en.uri=mn),en.byteLength=pn,zt.resources[mn]=E.concat(hn)}Gt.buffers.push(en),jt.bufferIndexMap.set(rn,Qt)}),Vt.listAccessors().find(rn=>!rn.getBuffer())&&Ht.warn("Skipped writing one or more Accessors: no Buffer assigned."),Gt.materials=Vt.listMaterials().map((rn,Qt)=>{const en=jt.createPropertyDef(rn);if(rn.getAlphaMode()!==ht.AlphaMode.OPAQUE&&(en.alphaMode=rn.getAlphaMode()),rn.getAlphaMode()===ht.AlphaMode.MASK&&(en.alphaCutoff=rn.getAlphaCutoff()),rn.getDoubleSided()&&(en.doubleSided=!0),en.pbrMetallicRoughness={},L.eq(rn.getBaseColorFactor(),[1,1,1,1])||(en.pbrMetallicRoughness.baseColorFactor=rn.getBaseColorFactor()),L.eq(rn.getEmissiveFactor(),[0,0,0])||(en.emissiveFactor=rn.getEmissiveFactor()),rn.getRoughnessFactor()!==1&&(en.pbrMetallicRoughness.roughnessFactor=rn.getRoughnessFactor()),rn.getMetallicFactor()!==1&&(en.pbrMetallicRoughness.metallicFactor=rn.getMetallicFactor()),rn.getBaseColorTexture()){const tn=rn.getBaseColorTexture(),sn=rn.getBaseColorTextureInfo();en.pbrMetallicRoughness.baseColorTexture=jt.createTextureInfoDef(tn,sn)}if(rn.getEmissiveTexture()){const tn=rn.getEmissiveTexture(),sn=rn.getEmissiveTextureInfo();en.emissiveTexture=jt.createTextureInfoDef(tn,sn)}if(rn.getNormalTexture()){const tn=rn.getNormalTexture(),sn=rn.getNormalTextureInfo(),cn=jt.createTextureInfoDef(tn,sn);rn.getNormalScale()!==1&&(cn.scale=rn.getNormalScale()),en.normalTexture=cn}if(rn.getOcclusionTexture()){const tn=rn.getOcclusionTexture(),sn=rn.getOcclusionTextureInfo(),cn=jt.createTextureInfoDef(tn,sn);rn.getOcclusionStrength()!==1&&(cn.strength=rn.getOcclusionStrength()),en.occlusionTexture=cn}if(rn.getMetallicRoughnessTexture()){const tn=rn.getMetallicRoughnessTexture(),sn=rn.getMetallicRoughnessTextureInfo();en.pbrMetallicRoughness.metallicRoughnessTexture=jt.createTextureInfoDef(tn,sn)}return jt.materialIndexMap.set(rn,Qt),en}),Gt.meshes=Vt.listMeshes().map((rn,Qt)=>{const en=jt.createPropertyDef(rn);let tn=null;return en.primitives=rn.listPrimitives().map(sn=>{const cn={attributes:{}};cn.mode=sn.getMode();const un=sn.getMaterial();un&&(cn.material=jt.materialIndexMap.get(un)),Object.keys(sn.getExtras()).length&&(cn.extras=sn.getExtras());const hn=sn.getIndices();hn&&(cn.indices=jt.accessorIndexMap.get(hn));for(const dn of sn.listSemantics())cn.attributes[dn]=jt.accessorIndexMap.get(sn.getAttribute(dn));for(const dn of sn.listTargets()){const pn={};for(const fn of dn.listSemantics())pn[fn]=jt.accessorIndexMap.get(dn.getAttribute(fn));cn.targets=cn.targets||[],cn.targets.push(pn)}return sn.listTargets().length&&!tn&&(tn=sn.listTargets().map(dn=>dn.getName())),cn}),rn.getWeights().length&&(en.weights=rn.getWeights()),tn&&(en.extras=en.extras||{},en.extras.targetNames=tn),jt.meshIndexMap.set(rn,Qt),en}),Gt.cameras=Vt.listCameras().map((rn,Qt)=>{const en=jt.createPropertyDef(rn);if(en.type=rn.getType(),en.type===st.Type.PERSPECTIVE){en.perspective={znear:rn.getZNear(),zfar:rn.getZFar(),yfov:rn.getYFov()};const tn=rn.getAspectRatio();tn!==null&&(en.perspective.aspectRatio=tn)}else en.orthographic={znear:rn.getZNear(),zfar:rn.getZFar(),xmag:rn.getXMag(),ymag:rn.getYMag()};return jt.cameraIndexMap.set(rn,Qt),en}),Gt.nodes=Vt.listNodes().map((rn,Qt)=>{const en=jt.createPropertyDef(rn);return L.eq(rn.getTranslation(),[0,0,0])||(en.translation=rn.getTranslation()),L.eq(rn.getRotation(),[0,0,0,1])||(en.rotation=rn.getRotation()),L.eq(rn.getScale(),[1,1,1])||(en.scale=rn.getScale()),rn.getWeights().length&&(en.weights=rn.getWeights()),jt.nodeIndexMap.set(rn,Qt),en}),Gt.skins=Vt.listSkins().map((rn,Qt)=>{const en=jt.createPropertyDef(rn),tn=rn.getInverseBindMatrices();tn&&(en.inverseBindMatrices=jt.accessorIndexMap.get(tn));const sn=rn.getSkeleton();return sn&&(en.skeleton=jt.nodeIndexMap.get(sn)),en.joints=rn.listJoints().map(cn=>jt.nodeIndexMap.get(cn)),jt.skinIndexMap.set(rn,Qt),en}),Vt.listNodes().forEach((rn,Qt)=>{const en=Gt.nodes[Qt],tn=rn.getMesh();tn&&(en.mesh=jt.meshIndexMap.get(tn));const sn=rn.getCamera();sn&&(en.camera=jt.cameraIndexMap.get(sn));const cn=rn.getSkin();cn&&(en.skin=jt.skinIndexMap.get(cn)),rn.listChildren().length>0&&(en.children=rn.listChildren().map(un=>jt.nodeIndexMap.get(un)))}),Gt.animations=Vt.listAnimations().map((rn,Qt)=>{const en=jt.createPropertyDef(rn),tn=new Map;return en.samplers=rn.listSamplers().map((sn,cn)=>{const un=jt.createPropertyDef(sn);return un.input=jt.accessorIndexMap.get(sn.getInput()),un.output=jt.accessorIndexMap.get(sn.getOutput()),un.interpolation=sn.getInterpolation(),tn.set(sn,cn),un}),en.channels=rn.listChannels().map(sn=>{const cn=jt.createPropertyDef(sn);return cn.sampler=tn.get(sn.getSampler()),cn.target={node:jt.nodeIndexMap.get(sn.getTargetNode()),path:sn.getTargetPath()},cn}),jt.animationIndexMap.set(rn,Qt),en}),Gt.scenes=Vt.listScenes().map((rn,Qt)=>{const en=jt.createPropertyDef(rn);return en.nodes=rn.listChildren().map(tn=>jt.nodeIndexMap.get(tn)),jt.sceneIndexMap.set(rn,Qt),en});const nn=Vt.getDefaultScene();return nn&&(Gt.scene=Vt.listScenes().indexOf(nn)),Gt.extensionsUsed=qt.map(rn=>rn.extensionName),Gt.extensionsRequired=Xt.map(rn=>rn.extensionName),qt.forEach(rn=>rn.write(jt)),function(rn){const Qt=[];for(const en in rn){const tn=rn[en];(Array.isArray(tn)&&tn.length===0||tn===null||tn===""||tn&&typeof tn=="object"&&Object.keys(tn).length===0)&&Qt.push(en)}for(const en of Qt)delete rn[en]}(Gt),zt}}var Bt;(function(kt){kt[kt.JSON=1313821514]="JSON",kt[kt.BIN=5130562]="BIN"})(Bt||(Bt={}));class Pt{constructor(){this.M=B$1.DEFAULT_INSTANCE,this.l=new Set,this.U={},this.P=f.INTERLEAVED,this.lastReadBytes=0,this.lastWriteBytes=0}setLogger(_e){return this.M=_e,this}registerExtensions(_e){for(const Dt of _e)this.l.add(Dt),Dt.register();return this}registerDependencies(_e){return Object.assign(this.U,_e),this}setVertexLayout(_e){return this.P=_e,this}async read(_e){return await this.readJSON(await this.readAsJSON(_e))}async readAsJSON(_e){const Dt=await this.readURI(_e,"view");this.lastReadBytes=Dt.byteLength;const Vt=Lt(Dt)?this.L(Dt):{json:JSON.parse(E.decodeText(Dt)),resources:{}};return await this.j(Vt,this.dirname(_e)),this.D(Vt),Vt}async readJSON(_e){return _e=this._(_e),this.D(_e),Et.read(_e,{extensions:Array.from(this.l),dependencies:this.U,logger:this.M})}async binaryToJSON(_e){const Dt=this.L(E.assertView(_e));this.D(Dt);const Vt=Dt.json;if(Vt.buffers&&Vt.buffers.some(Gt=>function(zt,jt){return jt.uri!==void 0&&!(jt.uri in zt.resources)}(Dt,Gt)))throw new Error("Cannot resolve external buffers with binaryToJSON().");if(Vt.images&&Vt.images.some(Gt=>function(zt,jt){return jt.uri!==void 0&&!(jt.uri in zt.resources)&&jt.bufferView===void 0}(Dt,Gt)))throw new Error("Cannot resolve external images with binaryToJSON().");return Dt}async readBinary(_e){return this.readJSON(await this.binaryToJSON(E.assertView(_e)))}async writeJSON(_e,Dt={}){if(Dt.format===g.GLB&&_e.getRoot().listBuffers().length>1)throw new Error("GLB must have 0–1 buffers.");return Ut.write(_e,{format:Dt.format||g.GLTF,basename:Dt.basename||"",logger:this.M,vertexLayout:this.P,dependencies:pt({},this.U),extensions:Array.from(this.l)})}async writeBinary(_e){const{json:Dt,resources:Vt}=await this.writeJSON(_e,{format:g.GLB}),Gt=new Uint32Array([1179937895,2,12]),zt=JSON.stringify(Dt),jt=E.pad(E.encodeText(zt),32),Ht=E.toView(new Uint32Array([jt.byteLength,1313821514])),Wt=E.concat([Ht,jt]);Gt[Gt.length-1]+=Wt.byteLength;const qt=Object.values(Vt)[0];if(!qt||!qt.byteLength)return E.concat([E.toView(Gt),Wt]);const Xt=E.pad(qt,0),Kt=E.toView(new Uint32Array([Xt.byteLength,5130562])),Yt=E.concat([Kt,Xt]);return Gt[Gt.length-1]+=Yt.byteLength,E.concat([E.toView(Gt),Wt,Yt])}async j(_e,Dt){var Vt=this;const Gt=[..._e.json.images||[],..._e.json.buffers||[]].map(async function(zt){const jt=zt.uri;if(!jt||jt.match(/data:/))return Promise.resolve();_e.resources[jt]=await Vt.readURI(Vt.resolve(Dt,jt),"view"),Vt.lastReadBytes+=_e.resources[jt].byteLength});await Promise.all(Gt)}D(_e){function Dt(Vt){if(Vt.uri){if(Vt.uri in _e.resources)E.assertView(_e.resources[Vt.uri]);else if(Vt.uri.match(/data:/)){const Gt=`__${V()}.${N.extension(Vt.uri)}`;_e.resources[Gt]=E.createBufferFromDataURI(Vt.uri),Vt.uri=Gt}}}(_e.json.images||[]).forEach(Vt=>{if(Vt.bufferView===void 0&&Vt.uri===void 0)throw new Error("Missing resource URI or buffer view.");Dt(Vt)}),(_e.json.buffers||[]).forEach(Dt)}_(_e){const{images:Dt,buffers:Vt}=_e.json;return _e={json:pt({},_e.json),resources:pt({},_e.resources)},Dt&&(_e.json.images=Dt.map(Gt=>pt({},Gt))),Vt&&(_e.json.buffers=Vt.map(Gt=>pt({},Gt))),_e}L(_e){if(!Lt(_e))throw new Error("Invalid glTF 2.0 binary.");const Dt=new Uint32Array(_e.buffer,_e.byteOffset+12,2);if(Dt[1]!==Bt.JSON)throw new Error("Missing required GLB JSON chunk.");const Vt=Dt[0],Gt=E.decodeText(E.toView(_e,20,Vt)),zt=JSON.parse(Gt),jt=20+Vt;if(_e.byteLength<=jt)return{json:zt,resources:{}};const Ht=new Uint32Array(_e.buffer,_e.byteOffset+jt,2);if(Ht[1]!==Bt.BIN)throw new Error("Expected GLB BIN in second chunk.");const Wt=E.toView(_e,jt+8,Ht[0]);return{json:zt,resources:{[c]:Wt}}}}function Lt(kt){if(kt.byteLength<3*Uint32Array.BYTES_PER_ELEMENT)return!1;const _e=new Uint32Array(kt.buffer,kt.byteOffset,3);return _e[0]===1179937895&&_e[1]===2}class _t extends Pt{constructor(_e=q$1.DEFAULT_INIT){super(),this.J=void 0,this.J=_e}async readURI(_e,Dt){const Vt=await fetch(_e,this.J);switch(Dt){case"view":return new Uint8Array(await Vt.arrayBuffer());case"text":return Vt.text()}}resolve(_e,Dt){return q$1.resolve(_e,Dt)}dirname(_e){return q$1.dirname(_e)}}function q(){return q=Object.assign?Object.assign.bind():function(kt){for(var _e=1;_e<arguments.length;_e++){var Dt=arguments[_e];for(var Vt in Dt)Object.prototype.hasOwnProperty.call(Dt,Vt)&&(kt[Vt]=Dt[Vt])}return kt},q.apply(this,arguments)}function B(kt,_e){return Object.defineProperty(_e,"name",{value:kt}),_e}function Z(kt,_e){if(kt==null&&_e==null)return!0;if(kt==null||_e==null||kt.length!==_e.length)return!1;for(let Dt=0;Dt<kt.length;Dt++)if(kt[Dt]!==_e[Dt])return!1;return!0}var ae=typeof Float32Array<"u"?Float32Array:Array;function ge(){var kt=new ae(3);return ae!=Float32Array&&(kt[0]=0,kt[1]=0,kt[2]=0),kt}function Ae(){var kt=new ae(4);return ae!=Float32Array&&(kt[0]=0,kt[1]=0,kt[2]=0,kt[3]=0),kt}Math.hypot||(Math.hypot=function(){for(var kt=0,_e=arguments.length;_e--;)kt+=arguments[_e]*arguments[_e];return Math.sqrt(kt)}),ge(),Ae();const Te="dedup",ye={propertyTypes:[h.ACCESSOR,h.MESH,h.TEXTURE,h.MATERIAL,h.SKIN]};function Ee(kt=ye){const _e=q({},ye,kt),Dt=new Set(_e.propertyTypes);for(const Vt of _e.propertyTypes)if(!ye.propertyTypes.includes(Vt))throw new Error(`${Te}: Unsupported deduplication on type "${Vt}".`);return B(Te,Vt=>{const Gt=Vt.getLogger();Dt.has(h.ACCESSOR)&&function(zt){const jt=zt.getLogger(),Ht=new Map,Wt=new Map,qt=new Map,Xt=new Map,Kt=zt.getRoot().listMeshes();Kt.forEach(rn=>{rn.listPrimitives().forEach(Qt=>{Qt.listAttributes().forEach(en=>Yt(en,Wt)),Yt(Qt.getIndices(),Ht)})});for(const rn of zt.getRoot().listAnimations())for(const Qt of rn.listSamplers())Yt(Qt.getInput(),qt),Yt(Qt.getOutput(),Xt);function Yt(rn,Qt){if(!rn)return;const en=[rn.getCount(),rn.getType(),rn.getComponentType(),rn.getNormalized(),rn.getSparse()].join(":");let tn=Qt.get(en);tn||Qt.set(en,tn=new Set),tn.add(rn)}function Zt(rn,Qt){for(let en=0;en<rn.length;en++){const tn=rn[en],sn=E.toView(tn.getArray());if(!Qt.has(tn))for(let cn=en+1;cn<rn.length;cn++){const un=rn[cn];Qt.has(un)||E.equals(sn,E.toView(un.getArray()))&&Qt.set(un,tn)}}}let Jt=0;const nn=new Map;for(const rn of[Wt,Ht,qt,Xt])for(const Qt of rn.values())Jt+=Qt.size,Zt(Array.from(Qt),nn);jt.debug(`${Te}: Merged ${nn.size} of ${Jt} accessors.`),Kt.forEach(rn=>{rn.listPrimitives().forEach(Qt=>{Qt.listAttributes().forEach(tn=>{nn.has(tn)&&Qt.swap(tn,nn.get(tn))});const en=Qt.getIndices();en&&nn.has(en)&&Qt.swap(en,nn.get(en))})});for(const rn of zt.getRoot().listAnimations())for(const Qt of rn.listSamplers()){const en=Qt.getInput(),tn=Qt.getOutput();en&&nn.has(en)&&Qt.swap(en,nn.get(en)),tn&&nn.has(tn)&&Qt.swap(tn,nn.get(tn))}Array.from(nn.keys()).forEach(rn=>rn.dispose())}(Vt),Dt.has(h.TEXTURE)&&function(zt){const jt=zt.getLogger(),Ht=zt.getRoot(),Wt=Ht.listTextures(),qt=new Map;for(let Xt=0;Xt<Wt.length;Xt++){const Kt=Wt[Xt],Yt=Kt.getImage();if(!qt.has(Kt))for(let Zt=Xt+1;Zt<Wt.length;Zt++){const Jt=Wt[Zt],nn=Jt.getImage();if(qt.has(Jt)||Kt.getMimeType()!==Jt.getMimeType())continue;const rn=Kt.getSize(),Qt=Jt.getSize();rn&&Qt&&rn[0]===Qt[0]&&rn[1]===Qt[1]&&Yt&&nn&&E.equals(Yt,nn)&&qt.set(Jt,Kt)}}jt.debug(`${Te}: Merged ${qt.size} of ${Ht.listTextures().length} textures.`),Array.from(qt.entries()).forEach(([Xt,Kt])=>{Xt.listParents().forEach(Yt=>{Yt instanceof vt||Yt.swap(Xt,Kt)}),Xt.dispose()})}(Vt),Dt.has(h.MATERIAL)&&function(zt){const jt=zt.getLogger(),Ht=zt.getRoot().listMaterials(),Wt=new Map,qt=new Set(["name"]),Xt=new Map;for(let Kt=0;Kt<Ht.length;Kt++){const Yt=Ht[Kt];if(!Wt.has(Yt)&&!Me(Yt,Xt))for(let Zt=Kt+1;Zt<Ht.length;Zt++){const Jt=Ht[Zt];Wt.has(Jt)||Me(Jt,Xt)||Yt.equals(Jt,qt)&&Wt.set(Jt,Yt)}}jt.debug(`${Te}: Merged ${Wt.size} of ${Ht.length} materials.`),Array.from(Wt.entries()).forEach(([Kt,Yt])=>{Kt.listParents().forEach(Zt=>{Zt instanceof vt||Zt.swap(Kt,Yt)}),Kt.dispose()})}(Vt),Dt.has(h.MESH)&&function(zt){const jt=zt.getLogger(),Ht=zt.getRoot(),Wt=new Map;Ht.listAccessors().forEach((Kt,Yt)=>Wt.set(Kt,Yt)),Ht.listMaterials().forEach((Kt,Yt)=>Wt.set(Kt,Yt));const qt=Ht.listMeshes().length,Xt=new Map;for(const Kt of Ht.listMeshes()){const Yt=[];for(const Jt of Kt.listPrimitives())Yt.push(Se(Jt,Wt));const Zt=Yt.join(";");if(Xt.has(Zt)){const Jt=Xt.get(Zt);Kt.listParents().forEach(nn=>{nn.propertyType!==h.ROOT&&nn.swap(Kt,Jt)}),Kt.dispose()}else Xt.set(Zt,Kt)}jt.debug(`${Te}: Merged ${qt-Xt.size} of ${qt} meshes.`)}(Vt),Dt.has(h.SKIN)&&function(zt){const jt=zt.getLogger(),Ht=zt.getRoot().listSkins(),Wt=new Map,qt=new Set(["name","joints"]);for(let Xt=0;Xt<Ht.length;Xt++){const Kt=Ht[Xt];if(!Wt.has(Kt))for(let Yt=Xt+1;Yt<Ht.length;Yt++){const Zt=Ht[Yt];Wt.has(Zt)||Kt.equals(Zt,qt)&&Z(Kt.listJoints(),Zt.listJoints())&&Wt.set(Zt,Kt)}}jt.debug(`${Te}: Merged ${Wt.size} of ${Ht.length} skins.`),Array.from(Wt.entries()).forEach(([Xt,Kt])=>{Xt.listParents().forEach(Yt=>{Yt instanceof vt||Yt.swap(Xt,Kt)}),Xt.dispose()})}(Vt),Gt.debug(`${Te}: Complete.`)})}function Se(kt,_e){const Dt=[];for(const Vt of kt.listSemantics()){const Gt=kt.getAttribute(Vt);Dt.push(Vt+":"+_e.get(Gt))}if(kt instanceof dt){const Vt=kt.getIndices();Vt&&Dt.push("indices:"+_e.get(Vt));const Gt=kt.getMaterial();Gt&&Dt.push("material:"+_e.get(Gt)),Dt.push("mode:"+kt.getMode());for(const zt of kt.listTargets())Dt.push("target:"+Se(zt,_e))}return Dt.join(",")}function Me(kt,_e){if(_e.has(kt))return _e.get(kt);const Dt=kt.getGraph(),Vt=new Set,Gt=Dt.listParentEdges(kt);for(;Gt.length>0;){const zt=Gt.pop();if(zt.getAttributes().modifyChild===!0)return _e.set(kt,!0),!0;const jt=zt.getChild();if(!Vt.has(jt))for(const Ht of Dt.listChildEdges(jt))Gt.push(Ht)}return _e.set(kt,!1),!1}function we(kt){const _e=kt.getGraph(),Dt=new Set,Vt=new Set;return function Gt(zt){const jt=new Set;for(const Ht of _e.listChildEdges(zt))Ht.getChild()instanceof yt&&jt.add(Ht.getName()+"Info");for(const Ht of _e.listChildEdges(zt)){const Wt=Ht.getChild();Dt.has(Wt)||(Dt.add(Wt),Wt instanceof it&&jt.has(Ht.getName())?Vt.add(Wt):Wt instanceof nt&&Gt(Wt))}}(kt),Array.from(Vt)}const be="prune",Ne={propertyTypes:[h.NODE,h.SKIN,h.MESH,h.CAMERA,h.PRIMITIVE,h.PRIMITIVE_TARGET,h.ANIMATION,h.MATERIAL,h.TEXTURE,h.ACCESSOR,h.BUFFER],keepLeaves:!1,keepAttributes:!0};function Re(kt=Ne){const _e=q({},Ne,kt),Dt=new Set(_e.propertyTypes);return B(be,Vt=>{const Gt=Vt.getLogger(),zt=Vt.getRoot(),jt=Vt.getGraph(),Ht={};if(Dt.has(h.MESH))for(const Yt of zt.listMeshes())Yt.listPrimitives().length>0||(Yt.dispose(),Kt(Yt));if(Dt.has(h.NODE)&&!_e.keepLeaves&&zt.listScenes().forEach(function Yt(Zt){if(Zt.listChildren().forEach(Yt),Zt instanceof mt)return;const Jt=jt.listParentEdges(Zt).some(nn=>{const rn=nn.getParent().propertyType;return rn!==h.ROOT&&rn!==h.SCENE&&rn!==h.NODE});jt.listChildren(Zt).length!==0||Jt||(Zt.dispose(),Kt(Zt))}),Dt.has(h.NODE)&&zt.listNodes().forEach(Wt),Dt.has(h.SKIN)&&zt.listSkins().forEach(Wt),Dt.has(h.MESH)&&zt.listMeshes().forEach(Wt),Dt.has(h.CAMERA)&&zt.listCameras().forEach(Wt),Dt.has(h.PRIMITIVE)&&qt(jt,h.PRIMITIVE),Dt.has(h.PRIMITIVE_TARGET)&&qt(jt,h.PRIMITIVE_TARGET),!_e.keepAttributes&&Dt.has(h.ACCESSOR)){const Yt=new Map;for(const Zt of zt.listMeshes())for(const Jt of Zt.listPrimitives()){const nn=Jt.getMaterial(),rn=Ce(Jt,Oe(Vt,nn));Xt(Jt,rn),Jt.listTargets().forEach(Qt=>Xt(Qt,rn)),nn&&(Yt.has(nn)?Yt.get(nn).add(Jt):Yt.set(nn,new Set([Jt])))}for(const[Zt,Jt]of Yt)$e(Zt,Array.from(Jt))}if(Dt.has(h.ANIMATION))for(const Yt of zt.listAnimations()){for(const Zt of Yt.listChannels())Zt.getTargetNode()||(Zt.dispose(),Kt(Zt));if(Yt.listChannels().length)Yt.listSamplers().forEach(Wt);else{const Zt=Yt.listSamplers();Wt(Yt),Zt.forEach(Wt)}}if(Dt.has(h.MATERIAL)&&zt.listMaterials().forEach(Wt),Dt.has(h.TEXTURE)&&zt.listTextures().forEach(Wt),Dt.has(h.ACCESSOR)&&zt.listAccessors().forEach(Wt),Dt.has(h.BUFFER)&&zt.listBuffers().forEach(Wt),Object.keys(Ht).length){const Yt=Object.keys(Ht).map(Zt=>`${Zt} (${Ht[Zt]})`).join(", ");Gt.info(`${be}: Removed types... ${Yt}`)}else Gt.info(`${be}: No unused properties found.`);function Wt(Yt){Yt.listParents().filter(Zt=>!(Zt instanceof vt||Zt instanceof tt)).length||(Yt.dispose(),Kt(Yt))}function qt(Yt,Zt){Yt.listEdges().map(Jt=>Jt.getParent()).filter(Jt=>Jt.propertyType===Zt).forEach(Wt)}function Xt(Yt,Zt){for(const Jt of Zt)Yt.setAttribute(Jt,null)}function Kt(Yt){Ht[Yt.propertyType]=Ht[Yt.propertyType]||0,Ht[Yt.propertyType]++}Gt.debug(`${be}: Complete.`)})}function Ce(kt,_e){const Dt=[];for(const Vt of kt.listSemantics())Vt!=="TANGENT"||_e.has(Vt)?(Vt.startsWith("TEXCOORD_")&&!_e.has(Vt)||Vt.startsWith("COLOR_")&&Vt!=="COLOR_0")&&Dt.push(Vt):Dt.push(Vt);return Dt}function Oe(kt,_e,Dt=new Set){if(!_e)return Dt;const Vt=kt.getGraph().listChildEdges(_e),Gt=new Set;for(const zt of Vt)zt.getChild()instanceof yt&&Gt.add(zt.getName());for(const zt of Vt){const jt=zt.getName(),Ht=zt.getChild();Ht instanceof it&&Gt.has(jt.replace(/Info$/,""))&&Dt.add(`TEXCOORD_${Ht.getTexCoord()}`),Ht instanceof yt&&jt.match(/normalTexture/i)&&Dt.add("TANGENT"),Ht instanceof nt&&Oe(kt,Ht,Dt)}return Dt}function $e(kt,_e){const Dt=we(kt),Vt=new Set(Dt.map(Wt=>Wt.getTexCoord())),Gt=Array.from(Vt).sort(),zt=new Map(Gt.map((Wt,qt)=>[Wt,qt])),jt=new Map(Gt.map((Wt,qt)=>[`TEXCOORD_${Wt}`,`TEXCOORD_${qt}`]));for(const Wt of Dt){const qt=Wt.getTexCoord();Wt.setTexCoord(zt.get(qt))}for(const Wt of _e){const qt=Wt.listSemantics().filter(Xt=>Xt.startsWith("TEXCOORD_")).sort();Ht(Wt,qt),Wt.listTargets().forEach(Xt=>Ht(Xt,qt))}function Ht(Wt,qt){for(const Xt of qt){const Kt=Wt.getAttribute(Xt);if(!Kt)continue;const Yt=jt.get(Xt);Yt!==Xt&&(Wt.setAttribute(Yt,Kt),Wt.setAttribute(Xt,null))}}}tt.TargetPath;var Vn;function Xn(kt,_e,Dt){for(let Vt=0,Gt=Dt.length;Vt<Gt;Vt++)Dt[Vt]=kt[_e*Gt+Vt];return Dt}function Kn(kt,_e,Dt){for(let Vt=0,Gt=Dt.length;Vt<Gt;Vt++)kt[_e*Gt+Vt]=Dt[Vt]}function Jn(kt,_e,Dt=0){if(kt.length!==_e.length)return!1;for(let Vt=0;Vt<kt.length;Vt++)if(Math.abs(kt[Vt]-_e[Vt])>Dt)return!1;return!0}function Zn(kt,_e,Dt){return kt*(1-Dt)+_e*Dt}function Qn(kt,_e,Dt,Vt){for(let Gt=0;Gt<_e.length;Gt++)kt[Gt]=Zn(_e[Gt],Dt[Gt],Vt);return kt}function Yn(kt,_e,Dt,Vt){let Gt,zt,jt,Ht,Wt,qt=_e[0],Xt=_e[1],Kt=_e[2],Yt=_e[3],Zt=Dt[0],Jt=Dt[1],nn=Dt[2],rn=Dt[3];return zt=qt*Zt+Xt*Jt+Kt*nn+Yt*rn,zt<0&&(zt=-zt,Zt=-Zt,Jt=-Jt,nn=-nn,rn=-rn),1-zt>1e-6?(Gt=Math.acos(zt),jt=Math.sin(Gt),Ht=Math.sin((1-Vt)*Gt)/jt,Wt=Math.sin(Vt*Gt)/jt):(Ht=1-Vt,Wt=Vt),kt[0]=Ht*qt+Wt*Zt,kt[1]=Ht*Xt+Wt*Jt,kt[2]=Ht*Kt+Wt*nn,kt[3]=Ht*Yt+Wt*rn,kt}function eo(kt,_e){const Dt=function(Vt,Gt){return Vt[0]*Gt[0]+Vt[1]*Gt[1]+Vt[2]*Gt[2]+Vt[3]*Gt[3]}(kt,_e);return Math.acos(2*Dt*Dt-1)}(function(kt){kt[kt.STEP=0]="STEP",kt[kt.LERP=1]="LERP",kt[kt.SLERP=2]="SLERP"})(Vn||(Vn={}));Promise.resolve();var yo;(function(kt){kt.LANCZOS3="lanczos3",kt.LANCZOS2="lanczos2"})(yo||(yo={}));yo.LANCZOS3;yo.LANCZOS3;async function getCurrentScene(kt){return kt.coreSceneStore.getState().sceneRef}function calculateSceneCenter(kt){const _e=new Box3().setFromObject(kt),Dt=new Vector3;return _e.getCenter(Dt),Dt.y=_e.min.y,Dt}function getItemsGroupFromScene(kt){return kt.getObjectByName("#ITEMS")}function filterOnlyItems(kt){return getItemsGroupFromScene(kt).children}async function getSceneAsUsdzUrl(kt){kt.coreSceneStore.setState({frameLoop:"never"}),await wait(1e3);try{const _e=new USDZExporter,Dt=await getCurrentScene(kt),Vt=calculateSceneCenter(Dt);Dt.position.sub(Vt);const Gt=Dt.rotation.clone(),zt=kt.coreSceneStore.getState().sceneSettings.arTransforms.rotation;Dt.rotation.set(MathUtils.degToRad(zt[0]),MathUtils.degToRad(zt[1]),MathUtils.degToRad(zt[2])),Dt.updateMatrixWorld();const jt=kt.coreSceneStore.getState().sceneSettings.usdzPrecision,Ht=kt.coreSceneStore.getState().sceneSettings.usdzMaxTextureSize,Wt=await _e.parseAsync(Dt,jt,Ht),qt=new Blob([Wt],{type:"model/vnd.usdz+zip"}),Xt=URL.createObjectURL(qt);return Dt.position.add(Vt),Dt.rotation.set(Gt.x,Gt.y,Gt.z),kt.coreSceneStore.setState({frameLoop:"always"}),Xt}catch(_e){return LOGGER.error("Error exporting USDZ: "+_e),kt.coreSceneStore.setState({frameLoop:"always"}),null}}async function getSceneAsGLBUrl(kt){kt.coreSceneStore.setState({frameLoop:"never"}),await wait(1e3);try{const _e=new _t,Dt=new GLTFExporter,Vt=await getCurrentScene(kt),Gt=filterOnlyItems(Vt),zt=calculateSceneCenter(Vt);for(const Yt of Gt)Yt.position.sub(zt);const jt={binary:!0,forceIndices:!0,trs:!1,onlyVisible:!0,embedImages:!0,maxTextureSize:1024},Ht=await Dt.parseAsync(Gt,jt),Wt=await _e.readBinary(new Uint8Array(Ht));for(const Yt of Gt)Yt.position.add(zt);const qt=await optimiseGlb(Wt),Xt=await _e.writeBinary(qt),Kt=await saveArrayBufferAsURL(Xt);return kt.coreSceneStore.setState({frameLoop:"always"}),Kt}catch(_e){return LOGGER.error({title:"Error exporting GLB: "+_e}),kt.coreSceneStore.setState({frameLoop:"always"}),null}}async function optimiseGlb(kt){const Dt=kt.getRoot().listNodes();for(const Vt of Dt){Vt.setExtras({});const Gt=Vt.getName();(Gt==="GRP_ProxyMesh"||Gt==="GRP_LoadingPlaceholder")&&Vt.dispose()}return await kt.transform(Ee(),Re()),LOGGER.info({title:"GLB as json"}),LOGGER.info({title:kt.getRoot().listTextures()}),kt}async function saveArrayBufferAsURL(kt){const _e=new Blob([kt],{type:"application/gltf-buffer"});return LOGGER.info({title:"Approx scene GLB size: "+_e.size/1e6}),URL.createObjectURL(_e)}const byteToHex=[];for(let kt=0;kt<256;++kt)byteToHex.push((kt+256).toString(16).slice(1));function unsafeStringify(kt,_e=0){return(byteToHex[kt[_e+0]]+byteToHex[kt[_e+1]]+byteToHex[kt[_e+2]]+byteToHex[kt[_e+3]]+"-"+byteToHex[kt[_e+4]]+byteToHex[kt[_e+5]]+"-"+byteToHex[kt[_e+6]]+byteToHex[kt[_e+7]]+"-"+byteToHex[kt[_e+8]]+byteToHex[kt[_e+9]]+"-"+byteToHex[kt[_e+10]]+byteToHex[kt[_e+11]]+byteToHex[kt[_e+12]]+byteToHex[kt[_e+13]]+byteToHex[kt[_e+14]]+byteToHex[kt[_e+15]]).toLowerCase()}let getRandomValues;const rnds8=new Uint8Array(16);function rng(){if(!getRandomValues){if(typeof crypto>"u"||!crypto.getRandomValues)throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");getRandomValues=crypto.getRandomValues.bind(crypto)}return getRandomValues(rnds8)}const randomUUID=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),native={randomUUID};function v4(kt,_e,Dt){if(native.randomUUID&&!_e&&!kt)return native.randomUUID();kt=kt||{};const Vt=kt.random??kt.rng?.()??rng();if(Vt.length<16)throw new Error("Random bytes length must be >= 16");if(Vt[6]=Vt[6]&15|64,Vt[8]=Vt[8]&63|128,_e){if(Dt=Dt||0,Dt<0||Dt+16>_e.length)throw new RangeError(`UUID byte range ${Dt}:${Dt+15} is out of buffer bounds`);for(let Gt=0;Gt<16;++Gt)_e[Dt+Gt]=Vt[Gt];return _e}return unsafeStringify(Vt)}class Plug{constructor(_e,Dt,Vt=null){this.stores=Dt.stores,this._attachedPlug=null,this._name=_e.name,this._acceptedPlugTypes=_e.acceptedPlugTypes,this._affectedNodes=_e.affectedNodes,this._unvisualizedCount=_e.unvisualizedCount,this._weight=_e.weight,this._connectsToPlugTypes=_e.connectsToPlugTypes,this._dependencySku=_e.dependencySku,this._isDependencySkuInteractive=_e.isDependencySkuInteractive,this._autoSpawnDependencyIfMissing=_e.autoSpawnDependencyIfMissing,this._node=Dt,Vt?(this._comboPlugConnector=Vt.comboPlugConnector,this._guid=Vt.guid,this._isOpen=Vt.isOpen,this._type=Vt.type,this._isReceiverPlug=Vt.isReceiverPlug,this._attachedPlugGUID=Vt.attachedPlugGUID):(this._comboPlugConnector=!1,this._guid=v4(),this._isOpen=!0,this._type=_e.type,this._isReceiverPlug=!1,this._attachedPlugGUID=null)}export(){return this.isOpen?null:{guid:this._guid,type:this._type,isOpen:this._isOpen,comboPlugConnector:this._comboPlugConnector,attachedPlugGUID:this._attachedPlugGUID,isReceiverPlug:this._isReceiverPlug}}get node(){return this._node}set comboPlugConnector(_e){this._comboPlugConnector=_e}get comboPlugConnector(){return this._comboPlugConnector}get attachedPlug(){return this._attachedPlug}set attachedPlug(_e){this._attachedPlug=_e}get attachedNode(){return this._attachedPlug?this._attachedPlug.node:null}get attachedPlugGUID(){return this._attachedPlugGUID}set type(_e){this._type=_e}get type(){return this._type}get weight(){return this._weight}get unvisualizedCount(){return this.__unvisualizedCount}get affectedNodes(){return this._affectedNodes}get guid(){return this._guid}get isReceiverPlug(){return this._isReceiverPlug}get name(){return this._name}get acceptedPlugTypes(){return this._acceptedPlugTypes}set acceptedPlugTypes(_e){this._acceptedPlugTypes=_e}get connectsToPlugTypes(){return this._connectsToPlugTypes}set connectsToPlugTypes(_e){this._connectsToPlugTypes=_e}get isOpen(){return this._isOpen}get isOccupied(){return!this.isOpen}get dependencySku(){return this._dependencySku}get isDependencySkuInteractive(){return this._isDependencySkuInteractive}attachPlug(_e,Dt=!1){this._attachedPlug=_e,this._attachedPlugGUID=_e.guid,this._isOpen=!1,this._isReceiverPlug=Dt;const Vt=this,Gt=this._node;if(Gt.isConnectedToRoot&&Dt){const zt=Gt.whichPlugAreWeAttachedUsing();switch(_e.type){case"weighted_hider":zt.weight<Vt.weight&&(Gt.showNodes(zt.affectedNodes)||this.stores.coreSceneStore.getState().CORE_API.coreWCRef.addEventListener(Gt.guid+":modelLoaded",function(){Gt.showNodes(zt.affectedNodes)},{once:!0}));break}}if(Dt&&_e.type!==""&&_e.type==Vt._type)switch(_e.type){default:case"weighted_hider":Vt._weight>_e.weight?_e.node.hideNodes(_e.affectedNodes)||this.stores.coreSceneStore.getState().CORE_API.coreWCRef.addEventListener(_e.node.guid+":modelLoaded",function(){_e.node.hideNodes(_e.affectedNodes)},{once:!0}):Vt._weight<_e.weight&&(Gt.hideNodes(Vt._affectedNodes)||this.stores.coreSceneStore.getState().CORE_API.coreWCRef.addEventListener(Gt.guid+":modelLoaded",function(){Gt.hideNodes(Vt._affectedNodes)},{once:!0}));break}Dt&&(Gt.isEndNode=!1)}async openPlug(){if(this._comboPlugConnector&&(this._comboPlugConnector=!1),this._node.isConnectedToRoot){const _e=this._node.whichPlugAreWeAttachedUsing();if(_e&&this._guid!==_e.guid)switch(this.type){case"weighted_hider":_e.type==="weighted_hider"&&_e.weight<this.weight&&this._node.hideNodes(_e.affectedNodes);break}}if(this._isReceiverPlug&&this._attachedPlug.type!==""&&this._attachedPlug.type==this._type)switch(this._attachedPlug.type){default:case"weighted_hider":this._weight>this._attachedPlug.weight?this._attachedPlug.node.showNodes(this._attachedPlug.affectedNodes):this._weight<this._attachedPlug.weight&&this._node.showNodes(this._affectedNodes);break}if(this._attachedPlug=null,this._attachedPlugGUID=null,this._isOpen=!0,this._isReceiverPlug&&(this._isReceiverPlug=!1,this._node.checkIfEndNode()),!!this._dependencySku&&!(this._autoSpawnDependencyIfMissing==!1||this._isDependencySkuInteractive||this.stores.coreSceneStore.getState().configurationLoaded===!1))try{const _e=await this.stores.ghostStore.getState().actions.spawnGhostsForSkuID(this._dependencySku,!0);if(!_e)return;const Dt=_e.connectablePlugs;let Vt=!1;const Gt=this._isDependencySkuInteractive?this.isDependencySkuInteractive===1:!1;for(const zt of Dt){if(zt.receiverPlug.guid!==this._guid)continue;Vt=!0;const jt=await this.stores.itemStore.getState().actions.addItemBySkuID(this._dependencySku,Dt.indexOf(zt),!0,Gt);jt!==null&&this._node.addMyDependenciesGUID(jt)}Vt||await this.stores.ghostStore.getState().actions.clearAllGhosts()}catch{LOGGER.info({title:"The Plug has been removed!"})}}canAttachToPlug(_e){for(let Dt=0;Dt<this._connectsToPlugTypes.length;Dt++)if(_e._acceptedPlugTypes.includes(this._connectsToPlugTypes[Dt]))return!0;return!1}}let Node$1=class{#t="default";#i=!1;#n=!1;#s=!0;#r={};#c=!1;#o=[];constructor(_e,Dt,Vt=null,Gt,zt){this.stores=_e;let jt=_e.productDataStore.getState().productData;this._plugs=[],this._skuID=Dt,this._ref=null,this._dragging=!1,this._modelFunctions=null,this._transform=null,this.#t="default",this._overrideVariant=null,this._followsParent=jt[Dt].followsParent,this._categoryID=jt[Dt].categoryID,this._replace=jt[Dt].replace,this._swappable=jt[Dt].swappable,this._price=this.#l(),this._compareAtPrice=this.#a(),this.#i=jt[Dt]?.ignoreInCart,Vt?(this._guid=Vt.guid,this._isEndNode=Vt.isEndNode,this._overrideVariant=Vt.overrideVariant,this.generatePlugsWithData(Dt,Vt.plugs)):(this._guid=v4(),this._isEndNode=!0,this.generatePlugsForNode(Dt)),Gt&&Object.keys(Gt).map(Ht=>{if(jt[Dt].looks&&jt[Dt].looks.includes(Ht)){this.#t=Ht;return}})}get isRoot(){return this._skuID.toLowerCase()==="root"}updateGeometryVariant(_e,Dt){const Gt=this.stores.productDataStore.getState().categoryData.geometryVariants;let zt=null;if(Gt.map(Xt=>{Xt.id==_e&&(zt=Xt)}),!zt)return;const jt=zt.productsInCategory,Wt=zt.variants[Dt].productsToSwitch,qt=this.stores.itemStore.getState().itemsSpawned;jt.map(Xt=>{Xt.products.map(Kt=>{this.skuID===Kt&&Xt.products.map(Yt=>{Wt.map(Zt=>{if(Zt==Yt){const Jt=this.stores.productDataStore.getState().actions.getProductDataById(Zt);this.skuID=Jt.skuID;const nn=qt[this.guid];nn&&nn.itemData&&Object.keys(Jt).map(rn=>{nn.itemData[rn]=Jt[rn]}),this.hideNodes(Jt.geometriesToHide),this.showNodes(Jt.geometriesToShow),this.updatePricing(),this.resetInStock(),this.stores.inventoryStore.getState().actions.refreshInventory(qt)}})})})})}resetInStock(){this.#r={},this.#c=!0}setInStockForRef(_e){if(!this.ref)return!1;let Dt=this.ref.getObjectByName("GRP_RenderGeometry");return Dt?(Dt.inStock=_e,!0):!1}set inStock({variantName:_e,newValue:Dt}){if(this.#r[_e]&&this.#r[_e]==Dt||(this.#r[_e]=Dt,_e!==this.currentVariant&&this.#c===!1))return;const Vt=()=>{this.setInStockForRef(Dt)};Vt()||this.stores.coreSceneStore.getState().CORE_API.coreWCRef.addEventListener(this.guid+":modelLoaded",Vt,{once:!0})}get myDependenciesGUID(){return this.#o}set myDependenciesGUID(_e){this.#o=_e}get dragging(){return this._dragging}set dragging(_e){this._dragging=_e}addMyDependenciesGUID(_e){this.#o.push(_e)}get isDependent(){return this.#n}set isDependent(_e){this.#n=_e}get isInteractive(){return this.#s}set isInteractive(_e){this.#s=_e}update(_e){this._skuID=_e;const Dt=this.stores.productDataStore.getState().productData,Vt=Dt[_e]?.plugs;if(this.ignoreInCart=Dt[_e].ignoreInCart,!!Vt)for(let Gt=0;Gt<this._plugs.length;Gt++)for(let zt=0;zt<Vt.length;zt++)this._plugs[Gt].name==Vt[zt].name&&(this._plugs[Gt].acceptedPlugTypes=Vt[zt].acceptedPlugTypes,this._plugs[Gt].connectsToPlugTypes=Vt[zt].connectsToPlugTypes)}export(){let _e={};for(let Dt=0;Dt<this._plugs.length;Dt++){let Vt=this._plugs[Dt].export();Vt&&(_e[this._plugs[Dt].name]=Vt)}return{skuID:this._skuID,guid:this._guid,isEndNode:this._isEndNode,plugs:_e,overrideVariant:this._overrideVariant}}get node(){return this}get swappable(){return this._swappable}get replace(){return this._replace}get ignoreInCart(){return this.#i}set ignoreInCart(_e){this.#i=_e}get isTypeCombo(){const _e=this.whichPlugAreWeAttachedUsing();return _e.type=="comboPlug"&&_e.connectsToPlugTypes.length>0}get canRotate(){let _e=!0;if(this.isTypeCombo)return!1;if(!this._isEndNode){const Vt=this.whichNodesAreAttachedToUs();if(Vt.length>0){let Gt=!0;if(Vt.map(zt=>{zt.followsParent===!1&&(Gt=!1)}),!Gt)return!1}}let Dt=!1;for(let Vt=0;Vt<this.plugs.length;Vt++)if(!this.plugs[Vt].isOpen&&this.plugs[Vt].attachedPlug.isReceiverPlug){const Gt=this.plugs[Vt].attachedPlug.acceptedPlugTypes;for(let zt=0;zt<this.plugs.length;zt++)if(Vt!=zt)for(let jt=0;jt<this.plugs[zt].connectsToPlugTypes.length;jt++)Gt.includes(this.plugs[zt].connectsToPlugTypes[jt])&&(Dt=!0)}if(_e=Dt,_e){const Vt=this.stores.attachmentStore.getState().attachmentSystem.currentStructure;_e=Vt&&Vt.hasValidAlternateRotation(this.guid)}return _e}hideNodes(_e){if(!this.ref)return!1;const Dt=this.ref.getObjectByName("GRP_RenderGeometry"),Vt=this.ref.getObjectByName("GRP_ProxyMesh");return _e.map(Gt=>{if(Dt){const zt=Dt.getObjectByName(Gt);zt&&(zt.visible=!1)}if(Vt){const zt=Vt.getObjectByName(Gt);zt&&(zt.visible=!1)}}),!0}showNodes(_e){if(!this.ref)return!1;const Dt=this.ref.getObjectByName("GRP_RenderGeometry"),Vt=this.ref.getObjectByName("GRP_ProxyMesh");return _e.map(Gt=>{if(Dt){const zt=Dt.getObjectByName(Gt);zt&&(zt.visible=!0)}if(Vt){const zt=Vt.getObjectByName(Gt);zt&&(zt.visible=!0)}}),!0}canConnectToPlugType(_e){let Dt=!1;return this._plugs.map(Vt=>{Vt.connectsToPlugTypes.map(Gt=>{Gt==_e&&(Dt=!0)})}),Dt}isConnectedToSkuID(_e){let Dt=!1;return this._plugs.map(Vt=>{if(Vt.isOpen||Dt===!0)return;let Gt=Vt.attachedPlug;!Gt&&Vt.attachedPlugGUID&&(Gt=this.stores.attachmentStore.getState().attachmentSystem.currentStructure.getPlugByGUID(Vt.attachedPlugGUID)),Gt.node.skuID==_e&&(Dt=!0)}),Dt}get isConnectedToRoot(){return this.isConnectedToSkuID("Root")}swapRoot(){if(!this.canSwapRoot)return;const Dt=this.stores.attachmentStore.getState().attachmentSystem.currentStructure,Vt=this.whichNodesAreAttachedToUs();let Gt=null;Vt.map(qt=>{qt.followsParent===!1&&(Gt=qt)});const zt=Gt.detachNodeFromReceiver();let jt=null;this._plugs.map(qt=>{qt.isOpen||qt.attachedPlug.node.skuID=="Root"&&(jt=qt.attachedPlug)});const Ht=this.detachNodeFromReceiver();let Wt=null;return Gt.plugs.map(qt=>{qt.connectsToPlugTypes.includes("root")&&(Wt=qt)}),Dt.connectPlugs({incomingPlug:Wt,receiverPlug:jt}),{neighborDetachedPlugs:zt,rootDetachedPlugs:Ht,neighborNode:Gt}}get canSwapRoot(){if(this.stores.coreSceneStore.getState().sceneSettings.swappableRoot===!1)return!1;let _e=!1;if(this.isConnectedToRoot&&!this._isEndNode){const Vt=this.whichNodesAreAttachedToUs();let Gt=0,zt=null;Vt.map(jt=>{jt.followsParent===!1&&(Gt++,zt=jt)}),Gt==1?zt.canConnectToPlugType("root")&&(_e=!0):Gt>0&&(_e=!1)}return _e}get canRemove(){let _e=!0;return this._isEndNode||(this.whichNodesAreAttachedToUs().map(Vt=>{Vt.followsParent===!1&&(_e=!1)}),_e||(_e=this.canSwapRoot)),_e}getComboPlugNodesAttachedToUs(){let _e=[];return this.whichNodesAreAttachedToUs().forEach(Vt=>{Vt.isTypeCombo&&_e.push(Vt);const Gt=Vt.getComboPlugNodesAttachedToUs();Gt.length>0&&(_e=_e.concat(Gt))}),_e}getAllBranchedNodesAttachedToUs(){let _e=[];const Dt=this.whichNodesAreAttachedToUs();for(let Vt=0;Vt<Dt.length;Vt++){_e.push(Dt[Vt]);const Gt=Dt[Vt].getAllBranchedNodesAttachedToUs();Gt.length>0&&(_e=_e.concat(Gt))}return _e}getNonInteractiveBranchedNodesIncludingSelf(){const _e=[],Dt=(Vt,Gt=!1)=>{const zt=Vt.isInteractive;if(!Gt&&zt)return;zt||_e.push(Vt),Vt.whichNodesAreAttachedToUs().forEach(Ht=>{Dt(Ht,!1)})};return Dt(this,!0),_e}get canDrag(){let _e=!0;if(this.isTypeCombo)return!1;for(let Vt=0;Vt<this._plugs.length;Vt++)if(this._plugs[Vt].isOpen==!1&&this._plugs[Vt].attachedPlug.type=="comboPlug")return!1;const Dt=this.getComboPlugNodesAttachedToUs();if(Dt.length>0){const Vt=this.getAllBranchedNodesAttachedToUs();let Gt=!0;if(Dt.map(zt=>{const jt=zt.whichNodesIsThisComboPlugAttachedTo();let Ht=!0;if(jt.map(Wt=>{let qt=!1;if(Vt.map(Xt=>{Wt.guid===Xt.guid&&(qt=!0)}),qt==!1){Ht=!1;return}}),Ht==!1){Gt=!1;return}}),Gt==!1)return!1}return this._isEndNode||(this.whichNodesAreAttachedToUs().map(Gt=>{Gt.followsParent===!1&&(_e=!1)}),_e||(_e=this.canSwapRoot)),_e}get followsParent(){return this._followsParent}set followsParent(_e){this._followsParent=_e}resetFollowsParent(){const _e=this.stores.productDataStore.getState().productData;this._followsParent=_e[this.skuID].followsParent}get currentVariant(){return this.#t==="default"?this.stores.productDataStore.getState().actions.getProductDataById(this._skuID).lookDetails.default.id:this.#t}get price(){return this._price}set price(_e){this._price=_e}get compareAtPrice(){return this._compareAtPrice}set compareAtPrice(_e){this._compareAtPrice=_e}updateCompareAtPricing(){this._compareAtPrice=this.#a()}updatePricing(){this._price=this.#l()}#a(){let Dt=this.stores.productDataStore.getState().actions.getProductDataById(this._skuID).lookDetails[this.#t]?.compareAtPrice;return Dt||(Dt=0),Dt}#l(){let Dt=this.stores.productDataStore.getState().actions.getProductDataById(this._skuID).lookDetails[this.#t]?.price;return Dt||(Dt=0),Dt}set currentVariant(_e){this.#t=_e,this._price=this.#l(),this._compareAtPrice=this.#a()}get overrideVariant(){return this._overrideVariant}set overrideVariant(_e){this._overrideVariant=_e,this.#t=this._overrideVariant,this._price=this.#l(),this._compareAtPrice=this.#a()}get guid(){return this._guid}get skuID(){return this._skuID}set skuID(_e){this._skuID=_e}get plugs(){return this._plugs}get ref(){return this._ref}set ref(_e){this._ref=_e}get modelFunctions(){return this._modelFunctions}set modelFunctions(_e){this._modelFunctions=_e}checkGeometryVariant(){let _e=new CustomEvent(this._guid+":modelLoaded",{bubbles:!0,cancelable:!1,composed:!0});const Dt=this.stores.attachmentStore.getState().attachmentSystem;Dt.globalGeometryVariants&&Object.keys(Dt.globalGeometryVariants).map(Vt=>{this.updateGeometryVariant(Vt,Dt.globalGeometryVariants[Vt])}),_e.data={},this.stores.coreSceneStore.getState().CORE_API.coreWCRef?this.stores.coreSceneStore.getState().CORE_API.coreWCRef.dispatchEvent(_e):LOGGER.warn({title:"core web component not found!"})}get isEndNode(){return this._isEndNode}set isEndNode(_e){this._isEndNode=_e}get categoryID(){return this._categoryID}get transform(){return this._transform}set transform(_e){this._transform=_e}setModelVisibility(_e){_e?this._ref?.scale.set(1,1,1):this._ref.scale.set(0,0,0)}checkIfEndNode(){let _e=!0;for(let Dt=0;Dt<this._plugs.length;Dt++)this._plugs[Dt].isReceiverPlug&&(_e=!1);this.isEndNode=_e}whichNodesAreAttachedToUs(){const _e=[];for(let Dt=0;Dt<this._plugs.length;Dt++)this._plugs[Dt].isReceiverPlug&&_e.push(this._plugs[Dt].attachedPlug.node);return _e}whichPlugsAreAttachedToUs(){const _e=[];for(let Dt=0;Dt<this._plugs.length;Dt++)this._plugs[Dt].isReceiverPlug&&_e.push({receiverPlug:this._plugs[Dt],incomingPlug:this._plugs[Dt].attachedPlug});return _e}whichNodeAreWeAttachedTo(){let _e=null;for(const Dt of this._plugs)Dt?.attachedPlug?.isReceiverPlug&&(_e=Dt.attachedPlug.node);return _e}whichNodesIsThisComboPlugAttachedTo(){if(!this.isTypeCombo)return[];let _e=[];for(const Dt of this._plugs)Dt?.attachedPlug?.isReceiverPlug&&_e.push(Dt.attachedPlug.node);return _e}isReplaceableWithSkuIdOld(_e){const Vt=this.stores.productDataStore.getState().productData[_e]?.plugs;let Gt=0;if(!Vt)return!1;for(let zt=0;zt<this._plugs.length;zt++)for(let jt=0;jt<Vt.length;jt++)this._plugs[zt].name==Vt[jt].name&&Gt++;return Gt==this._plugs.length}isReplaceableWithSkuId(_e){const Vt=this.stores.productDataStore.getState().productData[_e]?.plugs;if(!Vt)return LOGGER.warn({title:`The new sku ${_e} is invalid for this experience to replace this node: `,details:this}),!1;let Gt=!1,zt=!0;const jt=this.whichPlugAreWeAttachedTo();for(const Wt of Vt)if(Gt=hasCommonElement(jt.acceptedPlugTypes,Wt.connectsToPlugTypes),Gt===!0)break;const Ht=this.whichPlugsAreAttachedToUs();for(const Wt of Ht)for(const qt of Vt)if(zt=hasCommonElement(qt.acceptedPlugTypes,Wt.connectsToPlugTypes),zt===!1)break;return Gt&&zt}getAllSkusThatCanReplaceMe(){let _e=[];const Dt=this.stores.productDataStore.getState().productData;return Object.keys(Dt).map(Vt=>{Vt!=this.skuID&&this.isReplaceableWithSkuId(Vt)&&_e.push(Vt)}),_e}whichPlugAreWeAttachedUsing(){for(let _e=0;_e<this._plugs.length;_e++){const Dt=this._plugs[_e];let Vt=Dt.attachedPlug;if(!Vt&&Dt.attachedPlugGUID&&(Vt=this.stores.attachmentStore.getState().attachmentSystem.currentStructure.getPlugByGUID(Dt.attachedPlugGUID)),!Dt.isOpen&&Vt.isReceiverPlug)return Dt}}whichPlugAreWeAttachedTo(){for(let _e=0;_e<this._plugs.length;_e++)if(!this._plugs[_e].isOpen&&this._plugs[_e].attachedPlug.isReceiverPlug)return this._plugs[_e].attachedPlug}getPlugWhichCanConnectToType(_e){for(const Dt of this._plugs)if(Dt.connectsToPlugTypes.includes(_e))return Dt;return null}getOpenPlugsWeCanAttachFrom(){let _e=[];if(this.whichNodeAreWeAttachedTo())return _e;for(let Dt=0;Dt<this._plugs.length;Dt++)this.plugs[Dt].isOpen&&this.plugs[Dt].connectsToPlugTypes.length>0&&_e.push(this._plugs[Dt]);return _e}getOpenPlugsFromNode(){let _e=[];for(let Dt=0;Dt<this._plugs.length;Dt++)this._plugs[Dt].isOpen&&this._plugs[Dt].acceptedPlugTypes.length>0&&_e.push(this._plugs[Dt]);return _e}generatePlugsForNode(_e){this._plugs=[];let Dt=this.stores.productDataStore.getState().productData[_e]?.plugs;if(Dt)for(let Vt=0;Vt<Dt.length;Vt++)if(Dt[Vt].type==="unvisualizedPlug"){const Gt=Dt[Vt]?.unvisualizedCount>=0?Dt[Vt].unvisualizedCount:1e3;for(let zt=0;zt<Gt;zt++){const jt=new Plug({...Dt[Vt],name:`${Dt[Vt].name}_${zt}`},this);this._plugs.push(jt)}}else{const Gt=new Plug(Dt[Vt],this);this._plugs.push(Gt)}}generatePlugsWithData(_e,Dt){const Vt=this.stores.productDataStore.getState().productData[_e]?.plugs;Vt&&Vt.forEach(Gt=>{if(Gt.type==="unvisualizedPlug"){const zt=Gt.unvisualizedCount&&Gt.unvisualizedCount>=0?Gt.unvisualizedCount:1e3;for(let jt=0;jt<zt;jt++){const Ht=new Plug({...Gt,name:`${Gt.name}_${jt}`},this,Dt[`${Gt.name}_${jt}`]);this._plugs.push(Ht)}}else{const zt=new Plug(Gt,this,Dt[Gt.name]);this._plugs.push(zt)}})}detachNodeFromReceiver(){for(let _e=0;_e<this.plugs.length;_e++)if(!this.plugs[_e].isOpen&&this.plugs[_e].attachedPlug.isReceiverPlug){const Dt={incomingPlug:this.plugs[_e],receiverPlug:this.plugs[_e].attachedPlug};return this.plugs[_e].attachedPlug.openPlug(),this.plugs[_e].openPlug(),Dt}}detachNodeCompletely(){for(let _e=0;_e<this._plugs.length;_e++)this._plugs[_e].isOpen||(this._plugs[_e].attachedPlug.openPlug(),this._plugs[_e].openPlug())}getPlugByName(_e){for(let Dt=0;Dt<this._plugs.length;Dt++)if(this._plugs[Dt].name==_e)return this._plugs[Dt];return null}getPlugByGUID(_e){for(let Dt=0;Dt<this._plugs.length;Dt++)if(this._plugs[Dt].guid==_e)return this._plugs[Dt];return null}async removeNode(){const _e=[];for(const Dt of this._plugs)if(!Dt.isOpen){if(Dt.type==="comboPlug"&&Dt.connectsToPlugTypes.length>0){Dt.attachedPlug.openPlug();continue}Dt.attachedPlug.isReceiverPlug?Dt.attachedPlug.openPlug():_e.push(Dt.attachedPlug.node.guid)}if(_e.length>0)for(const Dt of _e)this.stores.itemStore.getState().actions.addToRemoveItems(Dt);this.modelFunctions=null,this.ref=null}};const EPIGRAPH_CONFIGURATOR_CATEGORY="Epigraph - Configurator",CONFIGURATOR_LOADING={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorLoading",label:"",interaction:{nonInteraction:!0}},CONFIGURATOR_READY={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorReady",label:"",interaction:{nonInteraction:!0}},CONFIGURATOR_FAILED={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorFailed",label:"",interaction:{nonInteraction:!0}},CONFIGURATOR_REVIEW_CART_SHOWN={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorReviewCartShown",label:"",interaction:{nonInteraction:!1}},CONFIGURATOR_REVIEW_CART_HIDE={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorReviewCartHide",label:"",interaction:{nonInteraction:!1}},CONFIGURATOR_CHECKOUT={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorCheckout",label:"",interaction:{nonInteraction:!1}},CONFIGURATOR_CHECKOUT_ITEM={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorCheckoutItemDetails",label:"",interaction:{nonInteraction:!1}},CONFIGURATOR_GLOBAL_GEOMETRY_VARIANT_SWITCHED={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorGlobalGeometryVariantSwitched",label:"",interaction:{nonInteraction:!1}},CONFIGURATOR_GLOBAL_VARIANT_SWITCHED={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorGlobalVariantSwitched",label:"",interaction:{nonInteraction:!1}},CONFIGURATOR_LOCAL_VARIANT_SWITCHED={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorLocalVariantSwitched",label:"",interaction:{nonInteraction:!1}},CONFIGURATOR_LOAD_FROM_PRECONFIG={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorLoadFromPreConfiguration",label:"",interaction:{nonInteraction:!0}},CONFIGURATOR_PRECONFIGURATION_ITEM_ADDED={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"preconfigurationItemAdded",label:"",interaction:{nonInteraction:!0}},CONFIGURATOR_SCENE_RESTARTED={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorSceneRestarted",label:"",interaction:{nonInteraction:!1}},CONFIGURATOR_AR_REQUESTED={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorArRequested",label:"",interaction:{nonInteraction:!1}},CONFIGURATOR_ITEM_REMOVED={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorItemRemoved",label:"",interaction:{nonInteraction:!1}},CONFIGURATOR_ITEM_ADDED={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorItemAdded",label:"",interaction:{nonInteraction:!1}},CONFIGURATOR_INSTRUCTIONS_BTN_CLICKED={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorInstructionsBtnClicked",label:"",interaction:{nonInteraction:!1}},CONFIGURATOR_INSTRUCTIONS_COMPLETION_RATE={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorInstructionsStageCompletionRate",label:"",interaction:{nonInteraction:!1}},CONFIGURATOR_INSTRUCTIONS_SHOWN={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorInstructionsShow",label:"",interaction:{nonInteraction:!1}},CONFIGURATOR_DIMENSION_SHOWN={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorDimensionsBtnShow",label:"",interaction:{nonInteraction:!1}},CONFIGURATOR_DIMENSION_HIDE={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorDimensionsBtnHide",label:"",interaction:{nonInteraction:!1}},CONFIGURATOR_HOTSPOT_ENTER={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorHotspotEnter",label:"",interaction:{nonInteraction:!1}},CONFIGURATOR_HOTSPOT_EXIT={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorHotspotExit",label:"",interaction:{nonInteraction:!1}},CONFIGURATOR_SCENE_SHARED={type:"event",category:EPIGRAPH_CONFIGURATOR_CATEGORY,action:"configuratorSceneShared",label:"",interaction:{nonInteraction:!1}};/* @license
|
|
4637
4637
|
* Copyright 2019 Google LLC. All Rights Reserved.
|
|
4638
4638
|
* Licensed under the Apache License, Version 2.0 (the 'License');
|
|
4639
4639
|
* you may not use this file except in compliance with the License.
|
|
@@ -4646,7 +4646,7 @@ ${zt.join(`
|
|
|
4646
4646
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4647
4647
|
* See the License for the specific language governing permissions and
|
|
4648
4648
|
* limitations under the License.
|
|
4649
|
-
*/const HAS_WEBXR_DEVICE_API=navigator.xr!=null&&self.XRSession!=null&&navigator.xr.isSessionSupported!=null;HAS_WEBXR_DEVICE_API&&self.XRSession.prototype.requestHitTestSource!=null;(()=>{const kt=navigator.userAgent||navigator.vendor||self.opera;let _e=!1;return(/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(kt)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(kt.substr(0,4)))&&(_e=!0),_e})();const IS_IOS=/iPad|iPhone|iPod/.test(navigator.userAgent)&&!self.MSStream||navigator.platform==="MacIntel"&&navigator.maxTouchPoints>1,IS_WKWEBVIEW=!!(window.webkit&&window.webkit.messageHandlers);(()=>{if(IS_IOS){if(IS_WKWEBVIEW)return!!/CriOS\/|EdgiOS\/|FxiOS\/|GSA\/|DuckDuckGo\//.test(navigator.userAgent);{const kt=document.createElement("a");return!!(kt.relList&&kt.relList.supports&&kt.relList.supports("ar"))}}else return!1})();class ConfiguratorCoreAPI{static forwardVector3=new Vector3(0,0,1);#t=!1;#i;#n;#s;#r;#c;#o;#a;#l;#v;#e;#g;#h=!0;#u;#f=!0;#d="";#p="";#m=null;epigraphAnalytics=null;EVENTS={UI:{PreloadScreen_Show:"preload:show",PreloadScreen_Hide:"preload:hide",ContextMenu_InfoBtnClicked:"infoButtonClicked_ContextMenu",ContextMenu_Show:"contextMenu:show",ContextMenu_Hide:"contextMenu:hide",UtilityMenu_Show:"utilityMenu:show",UtilityMenu_Hide:"utilityMenu:hide",ShareButton_Show:"shareButton:show",ShareButton_Hide:"shareButton:hide",ViewInYourSpaceButton_Show:"viewInYourSpace:show",ViewInYourSpaceButton_Hide:"viewInYourSpace:hide",ResetButton_Show:"resetBtn:show",ResetButton_Hide:"resetBtn:hide",DimensionsButton_Show:"dimensionsBtn:show",DimensionsButton_Hide:"dimensionsBtn:hide",Instructions_Show:"instructions:show",ReviewCart_Shown:"review-cart-shown",ReviewCart_Hidden:"review-cart-hidden"},SCENE:{Item_Added:"item:added",Item_Removed:"item:removed",Items_Updated:"items:updated",FittingSkuIds_Updated:"fittingSkuIds:updated",CartItems_Updated:"cartItems:updated",Hotspot_Enter:"hotspot:enter",Hotspot_Exit:"hotspot:exit",SavedConfiguration_Loaded:"loaded-saved-configuration",MaterialOverrides_Exists:"materialOverrideExists",Cart_Checkout:"cart:checkout",Cart_OutOfStock:"cart:outOfStock",Cart_StatusUpdated:"cart:statusUpdated",ReplaceableCategory_Updated:"replaceableCategory:updated",GlobalVariant_Updated:"globalVariant:updated",CategoryData_Updated:"categoryData:updated",GlobalGeometryVariant_Updated:"globalGeometryVariant:updated",Ghost_Loaded:"ghost:loaded",Model_Loaded:"model:loaded",Model_Removed:"model:removed",Scene_Cleared:"scene:cleared",Inventory_Updated:"inventory:updated",DraggingOnDrop_CollisionDetected:"draggingOnDrop:collisionDetected",ItemRemoveModalTriggered:"itemRemoveModal:triggered",ActionButton_Clicked:"actionButton:clicked",CartMessage_Update:"cartMessage:updated"},CONFIGURATION:{OnClickItem:"onClickItem",CameraDetails_Update:"cameraDetails:Update"}};constructor(_e,Dt,Vt=null){if(Dt.identifier!=="wc-epigraph-configurator-core")return LOGGER.error({title:"Invalid identifier on the 'wc-epigraph-configurator-core'. Unable to initialize the ConfiguratorCoreAPI class."}),null;this.stores=_e,Object.freeze(this.CORE_EVENTS),this.#r=Dt,this.#o=performance.now(),this.#s=Vt,this.#r.addEventListener(this.EVENTS.SCENE.CartItems_Updated,()=>{this.#u=void 0,this.#h=!0,this.#f=!0}),this.setupAnalyticsEventListeners(),this.#t=!0}set shadowRootRef(_e){this.#i=_e}get shadowRootRef(){return this.#i}set configuratorWCRef(_e){this.#c=_e}get configuratorWCRef(){return this.#c}set clientAccessKey(_e){this.#v=_e}get lastSharedConfigurationID(){return this.#u}set lastSharedConfigurationID(_e){this.#u=_e}set projectId(_e){this.#e=_e}get projectId(){return this.#e}set experienceId(_e){this.#g=_e}get experienceId(){return this.#g}get coreWCRef(){return this.#r}getResolvedAssetUrl(_e){return resolveAssetUrl(_e)}initializeAnalytics(_e,Dt=!1){const Vt=this.coreWCRef.consentPlugin??null,Gt=this.coreWCRef.consentIdentifier??null;if(this.epigraphAnalytics=new S$3(Vt,Gt),_e.gaMeasurementId!=="")try{this.epigraphAnalytics.addEventPlugin(new I$2(_e.gaMeasurementId,!1))}catch(zt){LOGGER.info({title:"Error initializing GA4 Analytics",details:zt})}_e.epgExperienceID!==void 0&&this.epigraphAnalytics.addEventPlugin(new A$1(_e.epgExperienceID,crypto.randomUUID(),"",!1,Dt))}get isReady(){return this.#t}get preloadProgress(){return this.#n}get categoryData(){return this.stores.productDataStore.getState().categoryData}get productData(){return this.stores.productDataStore.getState().productData}get lookData(){return this.stores.productDataStore.getState().lookData}get hotspotsData(){return this.stores.productDataStore.getState().hotspotsData}get sceneSettings(){return this.stores.coreSceneStore.getState().sceneSettings}get assetsData(){return this.stores.productDataStore.getState().assetsData}get isMobile(){return this.stores.coreSceneStore.getState().isMobile}get isScreenPortrait(){return this.stores.uiSceneStore.getState().isScreenPortrait}getDeviceState(){return this.stores.coreSceneStore.getState().actions.getDeviceState()}get hasSceneChanged(){return this.#h}set hasSceneChanged(_e){this.#h=_e}enableCart(){this.stores.coreSceneStore.getState().actions.enableCart()}disableCart(){this.stores.coreSceneStore.getState().actions.disableCart()}fireEvent(_e,Dt){let Vt=new CustomEvent(_e,{bubbles:!0,cancelable:!1,composed:!0});Vt.data=Dt,this.coreWCRef?this.coreWCRef.dispatchEvent(Vt):LOGGER.warn({title:"core web component not found!"})}setupAnalyticsEventListeners(){this.coreWCRef.addEventListener("coreApi:ready",_e=>{let Dt=Object.assign({},CONFIGURATOR_READY);const Vt=((performance.now()-this.#o)/1e3).toFixed(2);this.#a=Vt,Dt.event_label=`${this.#e}`,Dt.parameters={project_id:`${this.#e}`,load_time:Vt},this.sendAnalyticsEvent(Dt)}),this.coreWCRef.addEventListener("coreApi:failed",_e=>{let Dt=Object.assign({},CONFIGURATOR_FAILED);Dt.parameters={project_id:`${this.#e}`},Dt.event_label=`${this.#e}`,this.sendAnalyticsEvent(Dt)}),this.coreWCRef.addEventListener(this.EVENTS.SCENE.Item_Added,_e=>{LOGGER.info({title:"Add Item",details:_e});const Dt=_e.data.itemData.guid,zt=this.stores.attachmentStore.getState().attachmentSystem.currentStructure.getNodeByGUID(Dt)?.currentVariant,Ht={item_added:`${`${_e.data.itemData.skuID}(${zt})`}`,project_id:`${this.#e}`},Wt=this.stores.coreSceneStore.getState().preconfigurationLoaded==!1&&this.stores.coreSceneStore.getState().sceneHasDefaultConfigurationID==!1,qt=this.stores.coreSceneStore.getState().configurationLoaded==!1&&this.stores.coreSceneStore.getState().preconfigurationLoaded==!0&&this.stores.coreSceneStore.getState().configurationLoadedOnRestart==!0;if(Wt||qt){let Xt=Object.assign({},CONFIGURATOR_PRECONFIGURATION_ITEM_ADDED);Xt.parameters=Ht,this.sendAnalyticsEvent(Xt)}else{let Xt=Object.assign({},CONFIGURATOR_ITEM_ADDED);Xt.parameters=Ht,this.sendAnalyticsEvent(Xt)}}),this.coreWCRef.addEventListener(this.EVENTS.SCENE.Item_Removed,_e=>{if(LOGGER.info({title:"Remove Item"}),_e.data.itemData==null)return;const Dt=_e.data.itemData.skuID;let Vt=Object.assign({},CONFIGURATOR_ITEM_REMOVED);Vt.parameters={item_removed:`${Dt}`,project_id:`${this.#e}`},this.sendAnalyticsEvent(Vt)}),this.coreWCRef.addEventListener(this.EVENTS.SCENE.Hotspot_Enter,_e=>{let Dt=Object.assign({},CONFIGURATOR_HOTSPOT_ENTER);const Vt=_e.data.hotspot?.hotspotData?.title;Dt.parameters={hotspot_entered:`${this.sceneSettings.analyticsEventPrefix}${Vt||_e.data.hotspotAbsID}`,project_id:`${this.#e}`},this.sendAnalyticsEvent(Dt)}),this.coreWCRef.addEventListener(this.EVENTS.SCENE.Hotspot_Exit,_e=>{let Dt=Object.assign({},CONFIGURATOR_HOTSPOT_EXIT);const Vt=_e.data.hotspot?.hotspotData?.title;Dt.parameters={hotspot_exited:`${this.sceneSettings.analyticsEventPrefix}${Vt||_e.data.hotspotAbsID}`,project_id:`${this.#e}`,c_hotspot_time_spent:`${_e.data.hotspotTimeSpent}`},this.sendAnalyticsEvent(Dt)}),this.coreWCRef.addEventListener(this.EVENTS.SCENE.Cart_Checkout,_e=>{let Dt=0,Vt=0,Gt=0;_e.data.cartItems.forEach((jt,Ht)=>{Vt++,Gt+=jt.count,Dt+=jt.price;let Wt=Object.assign({},CONFIGURATOR_CHECKOUT_ITEM);Wt.parameters={client_product_id:jt.clientProductId,count_added_to_cart:jt.count,variant:`${jt.currentVariant}`,total_value:jt.price,epigraph_sku:`${jt.skuID}`,project_id:`${this.#e}`},this.sendAnalyticsEvent(Wt)});let zt=Object.assign({},CONFIGURATOR_CHECKOUT);zt.parameters={cart_total:Dt,unique_items_count:Vt,total_items:Gt,project_id:`${this.#e}`},this.sendAnalyticsEvent(zt)})}getPreconfigurationModuleData(){return this.stores.productDataStore.getState().categoryData.preconfiguration}setEmptySceneText(_e){const Dt=this.stores.coreSceneStore.getState().sceneSettings;Dt.emptySceneText=_e,this.stores.coreSceneStore.setState({sceneSettings:{...Dt}})}getSpawningRequirementForSkuID(_e){return this.stores.attachmentStore.getState().attachmentSystem.currentStructure.getSpawningRequirementForSkuID(_e)}getAllSkusThatCanReplaceGuid(_e){if(!this.stores.itemStore.getState().itemsSpawned[_e])return LOGGER.warn({title:"Item with guid: "+_e+" doesn't exist"}),[];const zt=this.stores.attachmentStore.getState().attachmentSystem.currentStructure.getNodeByGUID(_e);return zt?zt.getAllSkusThatCanReplaceMe():(LOGGER.warn({title:"Node with guid: "+_e+" doesn't exist"}),[])}getCartItems(){return this.stores.attachmentStore.getState().attachmentSystem.getCartItems()}async getCartItemsAsync(){return await this.stores.attachmentStore.getState().attachmentSystem.getCartItemsAsync()}checkout(_e=!1){const Dt=this.stores.attachmentStore.getState().attachmentSystem;this.#m=this.getSceneStructure();let Vt=Dt.getCartItems();return Vt=this.stores.dynamicHookStore.getState().hookOnCheckout(Vt,this),Vt==null?null:(LOGGER.warn({title:"CONFIGURATOR CHECKED OUT: "}),LOGGER.table(Vt),_e===!0||Vt.cartItems.find(Gt=>Gt.countUnavailable>0)===void 0?(this.fireEvent(this.EVENTS.SCENE.Cart_Checkout,Vt),this.alert({alertMsg:"Items from your configuration have been added to your cart.",alertTime:6e3,alertType:"success",alertLabel:"Success",alertId:"itemAdded"})):this.fireEvent(this.EVENTS.SCENE.Cart_OutOfStock,Vt),Vt)}async checkoutAsync(_e=!1){const Dt=this.stores.attachmentStore.getState().attachmentSystem;this.#m=this.getSceneStructure();let Vt=await Dt.getCartItemsAsync();return Vt=await this.stores.dynamicHookStore.getState().hookOnCheckout(Vt,this),Vt==null?null:(LOGGER.warn({title:"CONFIGURATOR CHECKED OUT: "}),LOGGER.table(Vt),_e===!0||Vt.cartItems.find(Gt=>Gt.countUnavailable>0)===void 0?(this.fireEvent(this.EVENTS.SCENE.Cart_Checkout,Vt),this.alert({alertMsg:"Items from your configuration have been added to your cart.",alertTime:6e3,alertType:"success",alertLabel:"Success",alertId:"itemAdded"})):this.fireEvent(this.EVENTS.SCENE.Cart_OutOfStock,Vt),Vt)}async reloadCheckedoutScene(){if(!this.#m){LOGGER.info({title:"No data found since last checkout"});return}await this.loadSceneFromConfiguration(this.#m)}getCurrentItemsInReplaceableCategory(){return this.stores.attachmentStore.getState().attachmentSystem.currentStructure.getCurrentItemsInReplaceableCategory()}async getSceneAsGlbUrl(){return this.#f===!1?this.#d:(URL.revokeObjectURL(this.#d),this.#d=void 0,this.#d=await getSceneAsGLBUrl(this.stores),this.#f=!1,this.#d)}async getSceneAsUsdzUrl(){return this.#f===!1?this.#p:(URL.revokeObjectURL(this.#p),this.#p=void 0,this.#p=await getSceneAsUsdzUrl(this.stores),this.#f=!1,this.#p)}async generateShareableLink(_e=!1){if(!this.#h&&this.#u)LOGGER.info({title:"Reusing the cached configuration ID that was last saved..."});else{LOGGER.info({title:"Generating a new configuration ID..."});let zt=this.stores.attachmentStore.getState().actions.export(),jt=await this.stores.nexusApiInstance.postExperienceSaveAndShare(this.experienceId,zt);this.#u=jt.payload.save_id}const Dt=window.location.href;let Vt=new URL(Dt);_e===!0&&Vt.searchParams.set("launchInAR",!0),Vt.searchParams.set("projectId",this.projectId),Vt.searchParams.set("epgsharedconfigid",this.#u),this.#h=!1;let Gt=Object.assign({},CONFIGURATOR_SCENE_SHARED);return Gt.parameters={shared_url:`${Vt}`,project_id:`${this.#e}`},this.sendAnalyticsEvent(Gt),Vt.href}closeContextMenu(){this.stores.itemStore.getState().selectedItemData&&this.stores.itemStore.getState().actions.deselectItem()}updatePreloadProgress(_e){const Dt=this.#n;this.#n=_e;const Vt=new CustomEvent("preload:update",{detail:{progress:this.#n}});window.dispatchEvent(Vt),typeof this.#s=="function"&&this.#s(Dt,_e)}alert({alertMsg:_e,alertTime:Dt,alertType:Vt,alertLabel:Gt,persistant:zt=!1,alertId:jt}){this.stores.coreSceneStore.getState().actions.sendAlert({alertMsg:_e,alertTime:Dt,alertType:Vt,alertLabel:Gt,persistant:zt,alertId:jt})}removePersistantAlert(){this.stores.coreSceneStore.setState({persistantAlertData:null})}clickHotspot(_e){let Dt=this.coreWCRef.shadowRootRef.getElementById(_e);Dt&&Dt.click()}exitHotspot(){this.stores.hotspotStore.getState().actions.exitHotspot(!1)}isSystemBusy(){return this.stores.itemStore.getState().isBusy()}async spawnGhostsForSkuID(_e,Dt=!1,Vt){return this.isSystemBusy()?null:await this.stores.ghostStore.getState().actions.spawnGhostsForSkuID(_e,Dt,Vt)}removeAllGhosts(){if(this.stores.itemStore.getState().isBusy())return null;this.stores.ghostStore.getState().actions.clearAllGhosts()}printSceneHierarchy(_e=!1){const Dt=this.stores.coreSceneStore.getState().sceneRef;(function Vt(Gt){const zt=`${Gt.name} < ${Gt.type} >`;_e===!0?console.groupCollapsed(zt):console.group(zt),Gt.children.forEach(Vt),console.groupEnd()})(Dt)}getSceneItems(){const _e=this.stores.itemStore.getState().itemsSpawned;if(typeof _e!="object"){LOGGER.error({title:"There was an error while fetching the scene item count."});return}return _e}getSceneItemCount(){let _e;const Dt=this.stores.itemStore.getState().itemsSpawned;return typeof Dt!="object"&&LOGGER.error({title:"There was an error while fetching the scene item count."}),_e=Object.keys(Dt).length,_e}async spawnItemBySkuID(_e,Dt=!1){if(this.isSystemBusy())return null;const Vt=this.getActiveGhostData();return Vt&&Vt.skuID!==_e?null:(Dt===!0&&!Vt&&await this.spawnGhostsForSkuID(_e,!1,1),await this.stores.itemStore.getState().actions.addItemBySkuID(_e,0))}async spawnItemBySkuIDAndGhostIndex(_e,Dt=0){if(this.stores.itemStore.getState().isBusy())return null;let Vt=null;const Gt=this.getActiveGhostData();return Dt>=0&&Gt.count>Dt&&Gt.skuID==_e&&(Vt=await this.stores.itemStore.getState().actions.addItemBySkuID(_e,Dt)),Vt}async replaceItemBySkuId(_e,Dt){return await this.stores.itemStore.getState().actions.replaceGuidItemBySkuId(_e,Dt)}async replaceItemsBySkuId(_e,Dt){if(!Array.isArray(_e))throw new Error("guids parameter must be an array");try{for(const Vt of _e)await this.replaceItemBySkuId(Vt,Dt);return!0}catch(Vt){throw new Error(`Failed to replace items by SKU ID: ${Vt.message}`)}}async replaceAllItemsBySkuId(_e,Dt){const Vt=[],Gt=this.stores.itemStore.getState().itemsSpawned;Object.keys(Gt).map(zt=>{Gt[zt].itemData.skuID==_e&&Vt.push(zt)});try{for(const zt of Vt)await this.replaceItemBySkuId(zt,Dt);return!0}catch(zt){throw new Error(`Failed to replace items by SKU ID: ${zt.message}`)}}async removeItemByGUID(_e,Dt=!1){if(this.stores.itemStore.getState().isBusy())return null;const Gt=this.stores.attachmentStore.getState().attachmentSystem.currentStructure.getNodeByGUID(_e);return Dt===!1&&Gt.canSwapRoot===!0&&Gt.swapRoot(),await this.stores.itemStore.getState().actions.removeItemByGUID(_e)}triggerItemRemoveModal(_e){const Dt=this.getGuidItemAttachedDependencies(_e);Dt&&this.fireEvent(this.EVENTS.SCENE.ItemRemoveModalTriggered,Dt)}async updateFittingSkuIds(){await this.stores.attachmentStore.getState().actions.updateFittingSkuIds()}rotateItemByGUID(_e){this.stores.attachmentStore.getState().attachmentSystem.currentStructure.rotateNode(_e)}rotateSelectedItem(){const _e=this.stores.itemStore.getState().selectedItemData;if(!_e){LOGGER.info({title:"No current item selected to rotate"});return}const Dt=_e.itemData.guid;return this.stores.attachmentStore.getState().attachmentSystem.currentStructure.rotateNode(Dt),_e}removeLastItemBySkuId(_e){const Dt=this.stores.itemStore.getState().itemsSpawned,Vt=Object.keys(Dt);for(let Gt=Vt.length-1;Gt>=0;Gt--){const zt=Vt[Gt];if(Dt[zt].itemData.skuID===_e){this.doesGuidItemHaveAnAttachedDependency(zt)?(this.selectItemWithGUID(zt),this.triggerItemRemoveModal(zt)):this.removeItemByGUID(zt);break}}}async removeSelectedItem(){const _e=this.stores.itemStore.getState().selectedItemData;if(!_e){LOGGER.info({title:"No current item selected to delete"});return}const Dt=_e.itemData.guid;return this.stores.itemStore.getState().actions.deselectItem(),await this.removeItemByGUID(Dt),LOGGER.info({title:`Removed Item: ${Dt}`}),_e}refocus(){this.stores.coreSceneStore.getState().actions.triggerAutoFocus()}getActiveGhostData(){return this.stores.ghostStore.getState().ghostData}focusOnGhosts(){if(this.stores.ghostStore.getState().ghostParentRef===null){LOGGER.warn({title:"Ghost Parent Reference not found"});return}this.stores.ghostStore.getState().ghostParentRef.children.length<=0?this.stores.coreSceneStore.getState().actions.triggerAutoFocus():this.stores.coreSceneStore.getState().actions.triggerAutoFocus(this.stores.ghostStore.getState().ghostParentRef)}exitSelectedItem(){this.stores.itemStore.getState().actions.deselectItem()}getSelectedItemData(){return this.stores.itemStore.getState().selectedItemData}canSelectedItemRotate(){const _e=this.stores.attachmentStore.getState().attachmentSystem.currentStructure;let Dt=this.getSelectedItemData();return Dt?_e.getNodeByGUID(Dt.itemData.guid).canRotate:!1}canSelectedItemBeRemoved(){const _e=this.stores.attachmentStore.getState().attachmentSystem.currentStructure,Dt=this.getSelectedItemData();return Dt?_e.getNodeByGUID(Dt.itemData.guid).canRemove:!1}canSelectedItemDrag(){const _e=this.stores.attachmentStore.getState().attachmentSystem.currentStructure,Dt=this.getSelectedItemData();return Dt?_e.getNodeByGUID(Dt.itemData.guid).canDrag:!1}doesGuidItemHaveAnAttachedDependency(_e){let Dt=!0;const Gt=this.stores.attachmentStore.getState().attachmentSystem.currentStructure.getNodeByGUID(_e),zt=Gt.isEndNode;return Dt=!zt,zt||Gt.canSwapRoot&&Gt.whichNodesAreAttachedToUs().length==1&&(Dt=!1),Dt}getGuidItemAttachedDependencies(_e){const Dt=this.stores.attachmentStore.getState().attachmentSystem,Vt=this.stores.itemStore.getState().itemsSpawned,Gt=Dt.currentStructure.getNodeByGUID(_e);if(!Gt)return;let zt={[Gt.guid]:{...Vt[Gt.guid]}};return Gt.getAllBranchedNodesAttachedToUs().forEach(Ht=>{zt[Ht.guid]=Vt[Ht.guid]}),zt}doesSelectedItemHasAttachedDependency(){const _e=this.getSelectedItemData();return _e?this.doesGuidItemHaveAnAttachedDependency(_e.itemData.guid):!1}isSelectedItemAnEndNode(){const _e=this.stores.attachmentStore.getState().attachmentSystem.currentStructure,Dt=this.getSelectedItemData();return Dt?_e.getNodeByGUID(Dt.itemData.guid).isEndNode:!1}getCurrentSceneEnvMap(){return this.stores.lightStore.getState().envMapUrl}async switchGlobalGeometryVariant(_e,Dt){if(!_e){LOGGER.WARN({title:"Geometry Category: '"+_e+"' not valid!"});return}this.stores.itemStore.getState().selectedItemData&&this.stores.itemStore.getState().actions.deselectItem(),await this.stores.attachmentStore.getState().attachmentSystem.switchGlobalGeometryVariant(_e,Dt),await wait(1);let Vt=Object.assign({},CONFIGURATOR_GLOBAL_GEOMETRY_VARIANT_SWITCHED);Vt.parameters={variant:`${Dt}`,project_id:`${this.#e}`},this.sendAnalyticsEvent(Vt);const zt=this.stores.productDataStore.getState().categoryData.geometryVariants;let jt=null;if(zt.map(Wt=>{Wt.id==_e&&(jt=Wt)}),!jt)return;const Ht=jt.variants[Dt];this.alert({alertMsg:jt.label.charAt(0).toUpperCase()+jt.label.slice(1)+" was successfully switched to "+Ht.label.charAt(0).toUpperCase()+Ht.label.slice(1)+".",alertTime:3e3,alertType:"success",alertLabel:`${jt.label} Changed`,alertId:"geometryVariantChanged"})}async switchGlobalVariant(_e,Dt=""){if(!_e){LOGGER.WARN({title:"Look Category: '"+_e+"' not valid!"});return}this.stores.itemStore.getState().selectedItemData&&this.stores.itemStore.getState().actions.deselectItem(),LOGGER.info({title:`Changing Global Variant: Category: ${_e} Id: ${Dt}`}),await this.stores.attachmentStore.getState().attachmentSystem.switchGlobalVariant(_e,Dt),await wait(1);let Vt=Object.assign({},CONFIGURATOR_GLOBAL_VARIANT_SWITCHED);Vt.parameters={variant:`${Dt}`,project_id:`${this.#e}`},this.sendAnalyticsEvent(Vt)}async overrideSelectedItemMaterial(_e=""){return this.stores.itemStore.getState().selectedItemData?(await this.stores.itemStore.getState().actions.switchToVariant(this.stores.itemStore.getState().selectedItemData.itemData,_e,!0),!0):!1}async overrideItemMaterialByGuid(_e,Dt){const Vt=this.stores.itemStore.getState().itemsSpawned[_e];if(!Vt)return LOGGER.warn({title:"Item with guid: "+_e+" doesn't exist"}),!1;await this.stores.itemStore.getState().actions.switchToVariant(Vt.itemData,Dt,!0);let Gt=Object.assign({},CONFIGURATOR_LOCAL_VARIANT_SWITCHED);return Gt.parameters={variant:`${Dt}`,project_id:`${this.#e}`},this.sendAnalyticsEvent(Gt),!0}getSelectedItemColors(){let _e=[];if(this.getSelectedItemData()==null)return _e;let Vt=this.getSelectedItemData().itemData.looks;if(Vt){let Gt=this.stores.productDataStore.getState().lookData;Vt.map(zt=>{Gt.hasOwnProperty(zt)&&_e.push(Gt[zt])})}return _e}getCanvasSize(){return this.stores.coreSceneStore.getState().canvasSize}async removeAllVariantOverrides(){return this.stores.itemStore.getState().selectedItemData&&this.stores.itemStore.getState().actions.deselectItem(),await this.stores.attachmentStore.getState().attachmentSystem.removeAllVariantOverrides()}switchCursor(_e){this.stores.coreSceneStore&&this.stores.coreSceneStore.getState().actions.switchCursor(_e)}getSceneStructure(){return this.stores.attachmentStore.getState().actions.export()}getSceneStructureRaw(){return this.stores.attachmentStore.getState().attachmentSystem.currentStructure}getAllConnectionsInScene(){const _e=this.getSceneStructureRaw(),Dt=new Map;for(const Vt of _e.nodes)for(const Gt of Vt.plugs){if(!Gt.attachedPlugGUID)continue;const zt=[Gt.guid,Gt.attachedPlugGUID].sort().join();Dt.has(zt)||Dt.set(zt,{from:Gt,to:Gt.attachedPlug})}return Dt}async loadSceneFromConfiguration(_e){await this.stores.attachmentStore.getState().actions.loadStructure(_e)}async loadSceneFromConfigurationID(_e,Dt=!0){const Vt=await this.stores.attachmentStore.getState().actions.loadSavedStructureFromConfigID(_e);if(!Vt)return null;Dt===!0&&this.stores.attachmentStore.setState({defaultConfig:Vt});let Gt=Object.assign({},CONFIGURATOR_LOAD_FROM_PRECONFIG);Gt.label=`Preconfig ID: ${_e}`,await this.loadSceneFromConfiguration(Vt)}viewInYourSpace(){LOGGER.info({title:"View in your space called from the Core API"});let _e=Object.assign({},CONFIGURATOR_AR_REQUESTED);_e.label="AR Requested",_e.parameters={project_id:`${this.#e}`},this.sendAnalyticsEvent(_e),this.#r.epigraphViewInYourSpaceRef.onViewInYourSpaceButtonClicked()}async shareScene(){const _e=await this.generateShareableLink();let Dt=Object.assign({},CONFIGURATOR_SCENE_SHARED);return Dt.parameters={shared_url:`${_e}`,project_id:`${this.#e}`},this.sendAnalyticsEvent(Dt),_e}async clearScene(){return await this.stores.attachmentStore.getState().attachmentSystem.clear()}async restartScene(){LOGGER.info({title:"Restarting Scene."}),await this.stores.attachmentStore.getState().attachmentSystem.restart();let _e=Object.assign({},CONFIGURATOR_SCENE_RESTARTED);_e.label="Scene Restarted",_e.parameters={project_id:`${this.#e}`},this.sendAnalyticsEvent(_e)}areDimensionsVisible(){return this.stores.coreSceneStore.getState().showDimensions}getCurrentDimensions(){return this.stores.coreSceneStore.getState().boundData}getActiveHotspot(){return this.stores.hotspotStore.getState().activeHotspotData}reviewCartShown(){let _e=Object.assign({},CONFIGURATOR_REVIEW_CART_SHOWN);_e.label="Review Cart shown",_e.parameters={project_id:`${this.#e}`},this.fireEvent(this.EVENTS.UI.ReviewCart_Shown,_e),this.sendAnalyticsEvent(_e)}isGeometryVisibleForGUID(_e,Dt){const Vt={success:!1,result:!1},zt=this.stores.attachmentStore.getState().attachmentSystem.currentStructure.getNodeByGUID(Dt);return zt.ref&&zt.ref.traverse(jt=>{jt.name===_e&&(console.log(jt),Vt.success=!0,Vt.result=jt.visible)}),Vt}reviewCartHidden(){let _e=Object.assign({},CONFIGURATOR_REVIEW_CART_HIDE);_e.label="Review Cart hidden",_e.parameters={project_id:`${this.#e}`},this.fireEvent(this.EVENTS.UI.ReviewCart_Hidden,_e),this.sendAnalyticsEvent(_e)}sendShowInstructionsBtnAnalyticsEvent(){let _e=Object.assign({},CONFIGURATOR_INSTRUCTIONS_BTN_CLICKED);_e.parameters={project_id:`${this.#e}`},this.sendAnalyticsEvent(_e)}sendInstructionsAnalyticsCompletionRate(_e){let Dt=Date.now()-this.#l,Vt=Math.round(Dt/1e3);this.#l=Date.now();let Gt=Object.assign({},CONFIGURATOR_INSTRUCTIONS_COMPLETION_RATE);Gt.parameters={completion_rate:_e,time_spent:Vt,project_id:`${this.#e}`},this.sendAnalyticsEvent(Gt)}showInstructions(){this.fireEvent(this.EVENTS.UI.Instructions_Show),this.#l=Date.now();let _e=Object.assign({},CONFIGURATOR_INSTRUCTIONS_SHOWN);_e.label="Instructions shown",_e.parameters={project_id:`${this.#e}`},this.sendAnalyticsEvent(_e)}showDimensions(){this.stores.coreSceneStore.setState({showDimensions:!0});let _e=Object.assign({},CONFIGURATOR_DIMENSION_SHOWN);_e.label="Dimensions shown",_e.parameters={project_id:`${this.#e}`},this.sendAnalyticsEvent(_e)}hideDimensions(){this.stores.coreSceneStore.setState({showDimensions:!1});let _e=Object.assign({},CONFIGURATOR_DIMENSION_HIDE);_e.label="Dimensions hidden",_e.parameters={project_id:`${this.#e}`},this.sendAnalyticsEvent(_e)}areHotspotsVisible(){return this.stores.hotspotStore.getState().hotspotsVisibility}areHotspotsTemporarilyVisible(){return this.stores.hotspotStore.getState().hotspotsTempVisibility}showAllHotspots(_e=!1){this.stores.hotspotStore.getState().actions.switchHotspotsVisibility(!0,_e)}hideAllHotspots(_e=!1){this.stores.hotspotStore.getState().actions.switchHotspotsVisibility(!1,_e)}getFittingSkuIds(){return this.stores.attachmentStore.getState().attachmentSystem.getFittingSKUIDs()}selectItemWithGUID(_e){const Dt=this.stores.itemStore.getState().itemsSpawned,Vt=this.stores.attachmentStore.getState().attachmentSystem.currentStructure.getNodeByGUID(_e);this.stores.itemStore.getState().actions.setSelectedItemData({...Dt[_e],overrideVariant:Vt.overrideVariant,currentVariant:Vt.currentVariant,offsetX:0,offsetY:0})}async getCurrentCameraDetails(){return new Promise((_e,Dt)=>{this.coreWCRef.addEventListener(this.EVENTS.CONFIGURATION.CameraDetails_Update,Vt=>{_e(Vt.data)},{once:!0}),this.stores.cameraStore.getState().actions.triggerFetchingCamera()})}moveCamera(_e,Dt,Vt=!0){this.stores.hotspotStore.setState({isAnyHotspotActive:!0}),_e&&this.stores.cameraStore.setState({viewPointPosition:ArrToVec3(_e)}),Dt&&this.stores.cameraStore.setState({focusPointPosition:ArrToVec3(Dt)}),this.stores.cameraStore.setState({resetToLastPosition:Vt})}setEnvLightMap(_e){this.stores.lightStore.setState({envMapUrl:_e})}updateInventoryForAllProducts(_e){return this.stores.inventoryStore.getState().actions.updateInventoryForAllProducts(_e),this.getInventoryInfo()}getInventoryInfo(){return JSON.parse(JSON.stringify(this.stores.inventoryStore.getState().inventoryData))}updateCompareAtPricingForAllProducts(_e){this.stores.productDataStore.getState().actions.updateCompareAtPricingForAllProducts(_e);const Vt=this.stores.attachmentStore.getState().attachmentSystem.getCartItems();return Vt&&this.fireEvent(this.EVENTS.SCENE.CartItems_Updated,Vt),this.getCurrentCompareAtPricingInfo()}updatePricingForAllProducts(_e){this.stores.productDataStore.getState().actions.updatePricingForAllProducts(_e);const Vt=this.stores.attachmentStore.getState().attachmentSystem.getCartItems();return Vt&&this.fireEvent(this.EVENTS.SCENE.CartItems_Updated,Vt),this.getCurrentPricingInfo()}async updateCompareAtPricingForAllProductsAsync(_e){this.stores.productDataStore.getState().actions.updateCompareAtPricingForAllProducts(_e);const Vt=await this.stores.attachmentStore.getState().attachmentSystem.getCartItemsAsync();return Vt&&this.fireEvent(this.EVENTS.SCENE.CartItems_Updated,Vt),this.getCurrentCompareAtPricingInfo()}async updatePricingForAllProductsAsync(_e){this.stores.productDataStore.getState().actions.updatePricingForAllProducts(_e);const Vt=await this.stores.attachmentStore.getState().attachmentSystem.getCartItemsAsync();return Vt&&this.fireEvent(this.EVENTS.SCENE.CartItems_Updated,Vt),this.getCurrentPricingInfo()}updatePricingForProduct(_e,Dt,Vt){this.stores.productDataStore.getState().actions.updatePricingForProduct(_e,Dt,Vt);const zt=this.stores.attachmentStore.getState().attachmentSystem.getCartItems();return zt&&this.fireEvent(this.EVENTS.SCENE.CartItems_Updated,zt),this.getCurrentPricingInfo()}updateCompareAtPricingForProduct(_e,Dt,Vt){this.stores.productDataStore.getState().actions.updateCompareAtPricingForProduct(_e,Dt,Vt);const zt=this.stores.attachmentStore.getState().attachmentSystem.getCartItems();return zt&&this.fireEvent(this.EVENTS.SCENE.CartItems_Updated,zt),this.getCurrentCompareAtPricingInfo()}async updatePricingForProductAsync(_e,Dt,Vt){this.stores.productDataStore.getState().actions.updatePricingForProduct(_e,Dt,Vt);const zt=await this.stores.attachmentStore.getState().attachmentSystem.getCartItemsAsync();return zt&&this.fireEvent(this.EVENTS.SCENE.CartItems_Updated,zt),this.getCurrentPricingInfo()}async updateCompareAtPricingForProductAsync(_e,Dt,Vt){this.stores.productDataStore.getState().actions.updateCompareAtPricingForProduct(_e,Dt,Vt);const zt=await this.stores.attachmentStore.getState().attachmentSystem.getCartItemsAsync();return zt&&this.fireEvent(this.EVENTS.SCENE.CartItems_Updated,zt),this.getCurrentCompareAtPricingInfo()}getCurrentPricingInfo(){return this.stores.productDataStore.getState().actions.getCurrentPricingInfo()}getCurrentCompareAtPricingInfo(){return this.stores.productDataStore.getState().actions.getCurrentCompareAtPricingInfo()}async itemDragStart(_e){if(this.stores.itemStore.getState().isBusy())return null;this.stores.coreSceneStore.setState({hoveredGhostIndex:-1}),await this.removeAllGhosts(),this.stores.coreSceneStore.setState({itemDraggedSkuID:_e}),await this.spawnGhostsForSkuID(_e,!1)}async itemDragEnd(){if(this.stores.itemStore.getState().isBusy())return null;const _e=this.stores.coreSceneStore.getState().hoveredGhostIndex;_e!==-1?await this.stores.itemStore.getState().actions.addItemBySkuID(this.stores.coreSceneStore.getState().itemDraggedSkuID,_e):await this.removeAllGhosts(),this.stores.coreSceneStore.setState({itemDraggedSkuID:null,hoveredGhostIndex:-1})}async forceSpawnItem(_e,Dt){const Vt=this.stores.productDataStore.getState().productData,Gt=this.stores.attachmentStore.getState().attachmentSystem;if(!Gt)return;const zt=Gt.currentStructure;if(!zt)return;let jt=zt.getNodeByGUID(Dt);jt?(jt._skuID=_e,jt.generatePlugsForNode(_e)):(jt=new Node$1(this.stores,_e,{guid:Dt,isEndNode:!0,overrideVariant:null,plugs:Vt[_e].plugs}),zt.addNode(jt),zt.connectPlugs({incomingPlug:new Plug({name:"tempPlug",acceptedPlugTypes:[],connectsToPlugTypes:[]},jt),receiverPlug:zt.rootNode.plugs[0]}));const Ht=await this.stores.itemStore.getState().actions.addItemWithTransform({position:new Vector3(0,0,0),rotation:new Quaternion().identity()},_e,Dt);return await wait(1),Ht}async getScreenshotForCurrentCamera(_e){return await this.stores.coreSceneStore.getState().actions.requestNewScreenshot(null,_e)}async getScreenshotForCamera(_e,Dt){return await this.stores.coreSceneStore.getState().actions.requestNewScreenshot(_e,Dt)}async getAllPredefinedScreenshots(_e){const Dt=this.stores.coreSceneStore.getState().sceneSettings.screenshotCameras,Vt=[];for(const Gt of Dt){const zt=await this.stores.coreSceneStore.getState().actions.requestNewScreenshot(Gt,_e);Vt.push(zt)}return Vt}setCameraFocusPointPosition(_e){this.stores.cameraStore.setState({focusPointPosition:_e})}triggerFetchingCamera(){this.stores.cameraStore.getState().actions.triggerFetchingCamera()}async completeItemDrop(){await this.stores.coreSceneStore.getState().actions.completeDropItem()}revertItemDrop(){this.stores.coreSceneStore.getState().actions.revertDropItem()}getCameraFocusPointPosition(){return this.stores.cameraStore.getState().focusPointPosition}sendAnalyticsPageViewedEvent(){}sendAnalyticsEvent(_e){if(this.epigraphAnalytics!==null)try{this.epigraphAnalytics.sendEvent(_e)}catch{LOGGER.info()}}isIosDevice(){return IS_IOS}actionButtonClicked(_e){this.fireEvent(this.EVENTS.SCENE.ActionButton_Clicked,{data:_e.actionButton.data,skuID:_e.skuID,count:_e.count,price:_e.price,compareAtPrice:_e.compareAtPrice,countAvailable:_e.countAvailable,countUnavailable:_e.countUnavailable,currentVariant:_e.currentVariant})}setCartMessage(_e){this.fireEvent(this.EVENTS.SCENE.CartMessage_Update,{cartMessage:_e})}convertQuaternionToEuler(_e){return new Euler(0,0,0,"XYZ").setFromQuaternion(_e)}convertDegreeToRadians(_e){return MathUtils.degToRad(_e)}convertRadiansToDegree(_e){return MathUtils.radToDeg(_e)}createVector3(_e,Dt,Vt){return new Vector3(_e,Dt,Vt)}isFacingInDirection(_e,Dt){return ConfiguratorCoreAPI.forwardVector3.set(0,0,1),Dt.normalize(),ConfiguratorCoreAPI.forwardVector3.applyQuaternion(_e),ConfiguratorCoreAPI.forwardVector3.dot(Dt)>=0}}const EpigraphConfiguratorCore=reactExports.forwardRef(({customVersionId:kt,experienceId:_e,stores:Dt,viewInYourSpaceRef:Vt,configuratorWcRef:Gt,initialConfigId:zt,clientAccessKey:jt,consentPlugin:Ht,consentIdentifier:Wt,gaMeasurementId:qt,builderMode:Xt,id:Kt,disableCart:Yt,apiMode:Zt},Jt)=>{const[nn,rn]=reactExports.useState(null);reactExports.useEffect(()=>{Jt.current&&(Jt.current.identifier="wc-epigraph-configurator-core",Jt.current.epigraphViewInYourSpaceRef=void 0,Jt.current.initialConfigId="",Jt.current.clientAccessKey="",Jt.current.consentPlugin="",Jt.current.consentIdentifier="",Jt.current.gaMeasurementId="",Jt.current.configuratorWcRef=void 0,Jt.current.builderMode=!1,Jt.current.projectId="",Jt.current.api=null,Jt.current.api=new ConfiguratorCoreAPI(Dt,Jt.current),Dt.coreSceneStore.setState({CORE_API:Jt.current.api}),en(Jt.current))},[Jt]),reactExports.useEffect(()=>{Jt.current&&Vt&&(Vt.current&&(Jt.current.epigraphViewInYourSpaceRef=Vt.current),LOGGER.info({title:"ViewInYourSpace is now accessible from the core: "}))},[Jt,Vt]);const Qt=reactExports.useCallback(tn=>{Gt&&(tn.configuratorWCRef=Gt,tn.shadowRootRef=tn.configuratorWCRef.shadowRoot,tn.api.shadowRootRef=tn.shadowRootRef,tn.api.configuratorWCRef=tn.configuratorWCRef),kt&&(tn.customVersionId=kt),zt&&(tn.initialConfigId=zt),jt&&(tn.clientAccessKey=jt),Ht&&(tn.consentPlugin=Ht),Wt&&(tn.consentIdentifier=Wt),qt&&(tn.gaMeasurementId=qt),Xt&&(tn.builderMode=!0),LOGGER.group("Collected Web Component Attributes"),LOGGER.table({initialConfigId:tn.initialConfigId,clientAccessKey:tn.clientAccessKey,consentPlugin:tn.consentPlugin,consentIdentifier:tn.consentIdentifier,builderMode:tn.builderMode}),LOGGER.groupEnd()},[Xt,zt,qt,jt,Gt]),en=reactExports.useCallback(async tn=>{if(tn.coreReady===!0)return;Qt(tn);let sn=kt;!sn&&IS_DEV_ENV&&(sn="latest");let cn={};if(Zt==="input.json"?cn={payload:{project_id:"local-project",experience_id:"",configurator_data:await __vitePreload(()=>import("./input-afb87ea8.js"),[]),session_details:{environment:"development"}},report:"Local Input Json",success:!0}:jt?cn=await Dt.nexusApiInstance.getConfiguratorByClientAccessKey(jt,sn):cn=await Dt.nexusApiInstance.getConfiguratorByExperienceId(_e,sn),tn.validationPassed=cn.success,tn.validationPassed==!1){LOGGER.error({title:"Request from an invalidated source: "+window.location.href}),Dt.coreSceneStore.getState().CORE_API.fireEvent("coreApi:failed");return}Dt.nexusApiResponseEnvironment=cn.payload.session_details.environment,tn.projectId=cn.payload.project_id,tn.experienceId=cn.payload.experience_id,Dt.experienceId=cn.payload.experience_id,tn.api.projectId=tn.projectId,tn.api.experienceId=tn.experienceId;const un=cn.payload.configurator_data,hn={gaMeasurementId:tn.gaMeasurementId??void 0,epgExperienceID:tn.experienceId??void 0};Dt.coreSceneStore.getState().CORE_API.initializeAnalytics(hn,IS_DEV_ENV);let dn=Object.assign({},CONFIGURATOR_LOADING);dn.parameters={project_id:`${tn.projectId}`},Dt.coreSceneStore.getState().CORE_API.sendAnalyticsEvent(dn),LOGGER.info({title:"VALIDATION SUCCESSFUL!"}),tn.coreReady=!0;let pn=new URL(window.location).searchParams;pn.has("epgsharedconfigid")&&(tn.initialConfigId=pn.get("epgsharedconfigid")),rn({projectId:tn.projectId,parsedData:un,customVersionId:tn.customVersionId,clientAccessKey:tn.clientAccessKey,consentPlugin:tn.consentPlugin,consentIdentifier:tn.consentIdentifier,initialConfigId:tn.initialConfigId,builderMode:tn.builderMode})},[]);return reactExports.useEffect(()=>()=>{Dt.coreSceneStore.getState().CORE_API&&Dt.coreSceneStore.getState().CORE_API.fireEvent("coreApi:shutDown")},[]),jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:jsxRuntimeExports.jsx("div",{id:Kt,ref:Jt,children:nn&&jsxRuntimeExports.jsx(App$1,{parsedData:nn.parsedData,stores:Dt,clientAccessKey:nn.clientAccessKey,consentPlugin:nn.consentPlugin,consentIdentifier:nn.consentIdentifier,initialConfigId:nn.initialConfigId,builderMode:nn.builderMode,disableCart:Yt!==void 0?Yt:!1})})})}),ViewInYourSpace=React.forwardRef((kt,_e)=>{const[Dt,Vt]=reactExports.useState(!1),[Gt,zt]=reactExports.useState(!1),jt=reactExports.useRef(null),Ht=reactExports.useRef(null),Wt=reactExports.useRef(null),qt=reactExports.useRef(null),Xt=reactExports.useRef(null),Kt=reactExports.useRef(null),Yt=reactExports.useRef(null),Zt=reactExports.useRef(null),Jt=reactExports.useRef(null),nn=reactExports.useRef(null),rn=kt.stores.uiSceneStore(qn=>qn.dialogPopupOpen),Qt=reactExports.useMemo(()=>`*Technical requirements: iOS Version ${_e?.current?.coreApi?.sceneSettings?.technicalRequirements?.minIosVersion??"11"} and later or Android 8 and later.`,[kt]),en=reactExports.useMemo(()=>`*Technical requirements: iOS Version ${_e?.current?.coreApi?.sceneSettings?.technicalRequirements?.minIosVersion??"11"} and later or Android 8 and later.`,[kt]),tn=()=>{kt["asset-src"]&&(_e.current.assetSrc=kt["asset-src"])};reactExports.useEffect(()=>{!_e.current||!jt.current||!Ht.current||!Wt.current||!qt.current||!Xt.current||!Kt.current||!Yt.current||!Zt.current||!Jt.current||!nn.current||(tn(),_e.current.getQRForURL=async(qn,tr)=>await Pn(qn,tr),_e.current.onViewInYourSpaceButtonClicked=async qn=>await yn(),_e.current.assetSrc="",_e.current.iosAssetSrc="",_e.current.arLink="",_e.current.coreApi=void 0,_e.current.arInProgress=!1,_e.current._modelViewerScriptSource="https://cdn.jsdelivr.net/npm/@google/model-viewer@2.x.x/dist/model-viewer.min.js",_e.current._modelViewer=null,_e.current._qrModalContainer=null,fn(),dn(),un(),_e.current._modelViewer.addEventListener("error",qn=>{Cn(qn)}),_e.current._viewInYourSpaceButton.addEventListener("click",qn=>{yn()}),_e.current.canLaunchAR=sn)},[_e,jt,Ht,Wt,qt,Xt,Kt,Yt,Zt,Jt,nn]);const sn=reactExports.useCallback(()=>_e.current._modelViewer.canActivateAR,[]);reactExports.useEffect(()=>{_e.current&&(kt["asset-src"]&&(_e.current.assetSrc=kt["asset-src"]),kt["core-api"]&&(_e.current.coreApi=kt["core-api"]),cn())},[_e,kt]);const cn=()=>{_e.current._modelViewer.setAttribute("src",_e.current.assetSrc),_e.current._modelViewer.setAttribute("ios-src",_e.current.iosAssetSrc),_e.current._modelViewer.style.display="none"},un=()=>{window.customElements.get("model-viewer")===void 0&&hn(),En(),cn(),_e.current._modelViewer.addEventListener("ar-status",qn=>{qn.detail.status==="session-started"?(_e.current._modelViewer.style.display="block",_e.current.arInProgress=!0):(qn.detail.status==="not-presenting"||qn.detail.status==="failed")&&(_e.current._modelViewer.style.display="none",_e.current.arInProgress=!1)})},hn=()=>{_e.current._modelViewerScriptElem=document.createElement("script"),_e.current._modelViewerScriptElem.setAttribute("type","module"),_e.current._modelViewerScriptElem.setAttribute("src",_e.current._modelViewerScriptSource),_e.current._modelViewerScriptElem.setAttribute("id","modelViewerScript"),document.head.appendChild(_e.current._modelViewerScriptElem)},dn=()=>{_e.current._qrModalContainer=qt.current,_e.current._qrCodeImage=Xt.current,_e.current._arLink=Kt.current,_e.current._qrLoader=Yt.current,_e.current.doneViewInYourSpaceBtn=Zt.current,_e.current.doneViewInYourSpaceBtn.addEventListener("click",()=>{pn(),Tn()})},pn=async()=>{if(_e.current._qrCodeImage!==null)for(;_e.current._qrCodeImage.firstChild;)_e.current._qrCodeImage.removeChild(_e.current._qrCodeImage.firstChild)},fn=()=>{_e.current.arDrawer=jt.current,_e.current._launchARButton=Ht.current,_e.current._modelDownloadLoader=Wt.current,_e.current._launchARButton.addEventListener("click",()=>{_e.current.arInProgress!==!0&&Rn()})},mn=()=>{_e.current._modelDownloadLoader.classList.remove("loader-hide")},vn=()=>{_e.current._modelDownloadLoader.classList.add("loader-hide")},_n=()=>{zt(!0),xn(),_e.current.arDrawer.show()},En=()=>{_e.current._modelViewer=Jt.current,_e.current._viewInYourSpaceButton=nn.current},An=()=>{Vt(!0),_e.current._qrModalContainer.show()},Tn=()=>{Vt(!1),_e.current._qrModalContainer.hide()},Cn=qn=>{console.error(`[VIEW-IN-YOUR-SPACE ERROR]: Asset load Errors!!
|
|
4649
|
+
*/const HAS_WEBXR_DEVICE_API=navigator.xr!=null&&self.XRSession!=null&&navigator.xr.isSessionSupported!=null;HAS_WEBXR_DEVICE_API&&self.XRSession.prototype.requestHitTestSource!=null;(()=>{const kt=navigator.userAgent||navigator.vendor||self.opera;let _e=!1;return(/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(kt)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(kt.substr(0,4)))&&(_e=!0),_e})();const IS_IOS=/iPad|iPhone|iPod/.test(navigator.userAgent)&&!self.MSStream||navigator.platform==="MacIntel"&&navigator.maxTouchPoints>1,IS_WKWEBVIEW=!!(window.webkit&&window.webkit.messageHandlers);(()=>{if(IS_IOS){if(IS_WKWEBVIEW)return!!/CriOS\/|EdgiOS\/|FxiOS\/|GSA\/|DuckDuckGo\//.test(navigator.userAgent);{const kt=document.createElement("a");return!!(kt.relList&&kt.relList.supports&&kt.relList.supports("ar"))}}else return!1})();class ConfiguratorCoreAPI{static forwardVector3=new Vector3(0,0,1);#t=!1;#i;#n;#s;#r;#c;#o;#a;#l;#v;#e;#g;#h=!0;#u;#f=!0;#d="";#p="";#m=null;epigraphAnalytics=null;EVENTS={UI:{PreloadScreen_Show:"preload:show",PreloadScreen_Hide:"preload:hide",ContextMenu_InfoBtnClicked:"infoButtonClicked_ContextMenu",ContextMenu_Show:"contextMenu:show",ContextMenu_Hide:"contextMenu:hide",UtilityMenu_Show:"utilityMenu:show",UtilityMenu_Hide:"utilityMenu:hide",ShareButton_Show:"shareButton:show",ShareButton_Hide:"shareButton:hide",ViewInYourSpaceButton_Show:"viewInYourSpace:show",ViewInYourSpaceButton_Hide:"viewInYourSpace:hide",ResetButton_Show:"resetBtn:show",ResetButton_Hide:"resetBtn:hide",DimensionsButton_Show:"dimensionsBtn:show",DimensionsButton_Hide:"dimensionsBtn:hide",Instructions_Show:"instructions:show",ReviewCart_Shown:"review-cart-shown",ReviewCart_Hidden:"review-cart-hidden"},SCENE:{Item_Added:"item:added",Item_Removed:"item:removed",Items_Updated:"items:updated",FittingSkuIds_Updated:"fittingSkuIds:updated",CartItems_Updated:"cartItems:updated",Hotspot_Enter:"hotspot:enter",Hotspot_Exit:"hotspot:exit",SavedConfiguration_Loaded:"loaded-saved-configuration",MaterialOverrides_Exists:"materialOverrideExists",Cart_Checkout:"cart:checkout",Cart_OutOfStock:"cart:outOfStock",Cart_StatusUpdated:"cart:statusUpdated",ReplaceableCategory_Updated:"replaceableCategory:updated",GlobalVariant_Updated:"globalVariant:updated",CategoryData_Updated:"categoryData:updated",GlobalGeometryVariant_Updated:"globalGeometryVariant:updated",Ghost_Loaded:"ghost:loaded",Model_Loaded:"model:loaded",Model_Removed:"model:removed",Scene_Cleared:"scene:cleared",Inventory_Updated:"inventory:updated",DraggingOnDrop_CollisionDetected:"draggingOnDrop:collisionDetected",ItemRemoveModalTriggered:"itemRemoveModal:triggered",ActionButton_Clicked:"actionButton:clicked",CartMessage_Update:"cartMessage:updated"},CONFIGURATION:{OnClickItem:"onClickItem",CameraDetails_Update:"cameraDetails:Update"}};constructor(_e,Dt,Vt=null){if(Dt.identifier!=="wc-epigraph-configurator-core")return LOGGER.error({title:"Invalid identifier on the 'wc-epigraph-configurator-core'. Unable to initialize the ConfiguratorCoreAPI class."}),null;this.stores=_e,Object.freeze(this.CORE_EVENTS),this.#r=Dt,this.#o=performance.now(),this.#s=Vt,this.#r.addEventListener(this.EVENTS.SCENE.CartItems_Updated,()=>{this.#u=void 0,this.#h=!0,this.#f=!0}),this.setupAnalyticsEventListeners(),this.#t=!0}set shadowRootRef(_e){this.#i=_e}get shadowRootRef(){return this.#i}set configuratorWCRef(_e){this.#c=_e}get configuratorWCRef(){return this.#c}set clientAccessKey(_e){this.#v=_e}get lastSharedConfigurationID(){return this.#u}set lastSharedConfigurationID(_e){this.#u=_e}set projectId(_e){this.#e=_e}get projectId(){return this.#e}set experienceId(_e){this.#g=_e}get experienceId(){return this.#g}get coreWCRef(){return this.#r}getResolvedAssetUrl(_e){return resolveAssetUrl(_e)}initializeAnalytics(_e,Dt=!1){const Vt=this.coreWCRef.consentPlugin??null,Gt=this.coreWCRef.consentIdentifier??null;if(this.epigraphAnalytics=new X$2(Vt,Gt),_e.gaMeasurementId!=="")try{this.epigraphAnalytics.addEventPlugin(new I$2(_e.gaMeasurementId,!1))}catch(zt){LOGGER.info({title:"Error initializing GA4 Analytics",details:zt})}_e.epgExperienceID!==void 0&&this.epigraphAnalytics.addEventPlugin(new C$2(_e.epgExperienceID,crypto.randomUUID(),"",!1,Dt))}get isReady(){return this.#t}get preloadProgress(){return this.#n}get categoryData(){return this.stores.productDataStore.getState().categoryData}get productData(){return this.stores.productDataStore.getState().productData}get lookData(){return this.stores.productDataStore.getState().lookData}get hotspotsData(){return this.stores.productDataStore.getState().hotspotsData}get sceneSettings(){return this.stores.coreSceneStore.getState().sceneSettings}get assetsData(){return this.stores.productDataStore.getState().assetsData}get isMobile(){return this.stores.coreSceneStore.getState().isMobile}get isScreenPortrait(){return this.stores.uiSceneStore.getState().isScreenPortrait}getDeviceState(){return this.stores.coreSceneStore.getState().actions.getDeviceState()}get hasSceneChanged(){return this.#h}set hasSceneChanged(_e){this.#h=_e}enableCart(){this.stores.coreSceneStore.getState().actions.enableCart()}disableCart(){this.stores.coreSceneStore.getState().actions.disableCart()}fireEvent(_e,Dt){let Vt=new CustomEvent(_e,{bubbles:!0,cancelable:!1,composed:!0});Vt.data=Dt,this.coreWCRef?this.coreWCRef.dispatchEvent(Vt):LOGGER.warn({title:"core web component not found!"})}setupAnalyticsEventListeners(){this.coreWCRef.addEventListener("coreApi:ready",_e=>{let Dt=Object.assign({},CONFIGURATOR_READY);const Vt=((performance.now()-this.#o)/1e3).toFixed(2);this.#a=Vt,Dt.event_label=`${this.#e}`,Dt.parameters={project_id:`${this.#e}`,load_time:Vt},this.sendAnalyticsEvent(Dt)}),this.coreWCRef.addEventListener("coreApi:failed",_e=>{let Dt=Object.assign({},CONFIGURATOR_FAILED);Dt.parameters={project_id:`${this.#e}`},Dt.event_label=`${this.#e}`,this.sendAnalyticsEvent(Dt)}),this.coreWCRef.addEventListener(this.EVENTS.SCENE.Item_Added,_e=>{LOGGER.info({title:"Add Item",details:_e});const Dt=_e.data.itemData.guid,zt=this.stores.attachmentStore.getState().attachmentSystem.currentStructure.getNodeByGUID(Dt)?.currentVariant,Ht={item_added:`${`${_e.data.itemData.skuID}(${zt})`}`,project_id:`${this.#e}`},Wt=this.stores.coreSceneStore.getState().preconfigurationLoaded==!1&&this.stores.coreSceneStore.getState().sceneHasDefaultConfigurationID==!1,qt=this.stores.coreSceneStore.getState().configurationLoaded==!1&&this.stores.coreSceneStore.getState().preconfigurationLoaded==!0&&this.stores.coreSceneStore.getState().configurationLoadedOnRestart==!0;if(Wt||qt){let Xt=Object.assign({},CONFIGURATOR_PRECONFIGURATION_ITEM_ADDED);Xt.parameters=Ht,this.sendAnalyticsEvent(Xt)}else{let Xt=Object.assign({},CONFIGURATOR_ITEM_ADDED);Xt.parameters=Ht,this.sendAnalyticsEvent(Xt)}}),this.coreWCRef.addEventListener(this.EVENTS.SCENE.Item_Removed,_e=>{if(LOGGER.info({title:"Remove Item"}),_e.data.itemData==null)return;const Dt=_e.data.itemData.skuID;let Vt=Object.assign({},CONFIGURATOR_ITEM_REMOVED);Vt.parameters={item_removed:`${Dt}`,project_id:`${this.#e}`},this.sendAnalyticsEvent(Vt)}),this.coreWCRef.addEventListener(this.EVENTS.SCENE.Hotspot_Enter,_e=>{let Dt=Object.assign({},CONFIGURATOR_HOTSPOT_ENTER);const Vt=_e.data.hotspot?.hotspotData?.title;Dt.parameters={hotspot_entered:`${this.sceneSettings.analyticsEventPrefix}${Vt||_e.data.hotspotAbsID}`,project_id:`${this.#e}`},this.sendAnalyticsEvent(Dt)}),this.coreWCRef.addEventListener(this.EVENTS.SCENE.Hotspot_Exit,_e=>{let Dt=Object.assign({},CONFIGURATOR_HOTSPOT_EXIT);const Vt=_e.data.hotspot?.hotspotData?.title;Dt.parameters={hotspot_exited:`${this.sceneSettings.analyticsEventPrefix}${Vt||_e.data.hotspotAbsID}`,project_id:`${this.#e}`,c_hotspot_time_spent:`${_e.data.hotspotTimeSpent}`},this.sendAnalyticsEvent(Dt)}),this.coreWCRef.addEventListener(this.EVENTS.SCENE.Cart_Checkout,_e=>{let Dt=0,Vt=0,Gt=0;_e.data.cartItems.forEach((jt,Ht)=>{Vt++,Gt+=jt.count,Dt+=jt.price;let Wt=Object.assign({},CONFIGURATOR_CHECKOUT_ITEM);Wt.parameters={client_product_id:jt.clientProductId,count_added_to_cart:jt.count,variant:`${jt.currentVariant}`,total_value:jt.price,epigraph_sku:`${jt.skuID}`,project_id:`${this.#e}`},this.sendAnalyticsEvent(Wt)});let zt=Object.assign({},CONFIGURATOR_CHECKOUT);zt.parameters={cart_total:Dt,unique_items_count:Vt,total_items:Gt,project_id:`${this.#e}`},this.sendAnalyticsEvent(zt)})}getPreconfigurationModuleData(){return this.stores.productDataStore.getState().categoryData.preconfiguration}setEmptySceneText(_e){const Dt=this.stores.coreSceneStore.getState().sceneSettings;Dt.emptySceneText=_e,this.stores.coreSceneStore.setState({sceneSettings:{...Dt}})}getSpawningRequirementForSkuID(_e){return this.stores.attachmentStore.getState().attachmentSystem.currentStructure.getSpawningRequirementForSkuID(_e)}getAllSkusThatCanReplaceGuid(_e){if(!this.stores.itemStore.getState().itemsSpawned[_e])return LOGGER.warn({title:"Item with guid: "+_e+" doesn't exist"}),[];const zt=this.stores.attachmentStore.getState().attachmentSystem.currentStructure.getNodeByGUID(_e);return zt?zt.getAllSkusThatCanReplaceMe():(LOGGER.warn({title:"Node with guid: "+_e+" doesn't exist"}),[])}getCartItems(){return this.stores.attachmentStore.getState().attachmentSystem.getCartItems()}async getCartItemsAsync(){return await this.stores.attachmentStore.getState().attachmentSystem.getCartItemsAsync()}checkout(_e=!1){const Dt=this.stores.attachmentStore.getState().attachmentSystem;this.#m=this.getSceneStructure();let Vt=Dt.getCartItems();return Vt=this.stores.dynamicHookStore.getState().hookOnCheckout(Vt,this),Vt==null?null:(LOGGER.warn({title:"CONFIGURATOR CHECKED OUT: "}),LOGGER.table(Vt),_e===!0||Vt.cartItems.find(Gt=>Gt.countUnavailable>0)===void 0?(this.fireEvent(this.EVENTS.SCENE.Cart_Checkout,Vt),this.alert({alertMsg:"Items from your configuration have been added to your cart.",alertTime:6e3,alertType:"success",alertLabel:"Success",alertId:"itemAdded"})):this.fireEvent(this.EVENTS.SCENE.Cart_OutOfStock,Vt),Vt)}async checkoutAsync(_e=!1){const Dt=this.stores.attachmentStore.getState().attachmentSystem;this.#m=this.getSceneStructure();let Vt=await Dt.getCartItemsAsync();return Vt=await this.stores.dynamicHookStore.getState().hookOnCheckout(Vt,this),Vt==null?null:(LOGGER.warn({title:"CONFIGURATOR CHECKED OUT: "}),LOGGER.table(Vt),_e===!0||Vt.cartItems.find(Gt=>Gt.countUnavailable>0)===void 0?(this.fireEvent(this.EVENTS.SCENE.Cart_Checkout,Vt),this.alert({alertMsg:"Items from your configuration have been added to your cart.",alertTime:6e3,alertType:"success",alertLabel:"Success",alertId:"itemAdded"})):this.fireEvent(this.EVENTS.SCENE.Cart_OutOfStock,Vt),Vt)}async reloadCheckedoutScene(){if(!this.#m){LOGGER.info({title:"No data found since last checkout"});return}await this.loadSceneFromConfiguration(this.#m)}getCurrentItemsInReplaceableCategory(){return this.stores.attachmentStore.getState().attachmentSystem.currentStructure.getCurrentItemsInReplaceableCategory()}async getSceneAsGlbUrl(){return this.#f===!1?this.#d:(URL.revokeObjectURL(this.#d),this.#d=void 0,this.#d=await getSceneAsGLBUrl(this.stores),this.#f=!1,this.#d)}async getSceneAsUsdzUrl(){return this.#f===!1?this.#p:(URL.revokeObjectURL(this.#p),this.#p=void 0,this.#p=await getSceneAsUsdzUrl(this.stores),this.#f=!1,this.#p)}async generateShareableLink(_e=!1){if(!this.#h&&this.#u)LOGGER.info({title:"Reusing the cached configuration ID that was last saved..."});else{LOGGER.info({title:"Generating a new configuration ID..."});let zt=this.stores.attachmentStore.getState().actions.export(),jt=await this.stores.nexusApiInstance.postExperienceSaveAndShare(this.experienceId,zt);this.#u=jt.payload.save_id}const Dt=window.location.href;let Vt=new URL(Dt);_e===!0&&Vt.searchParams.set("launchInAR",!0),Vt.searchParams.set("projectId",this.projectId),Vt.searchParams.set("epgsharedconfigid",this.#u),this.#h=!1;let Gt=Object.assign({},CONFIGURATOR_SCENE_SHARED);return Gt.parameters={shared_url:`${Vt}`,project_id:`${this.#e}`},this.sendAnalyticsEvent(Gt),Vt.href}closeContextMenu(){this.stores.itemStore.getState().selectedItemData&&this.stores.itemStore.getState().actions.deselectItem()}updatePreloadProgress(_e){const Dt=this.#n;this.#n=_e;const Vt=new CustomEvent("preload:update",{detail:{progress:this.#n}});window.dispatchEvent(Vt),typeof this.#s=="function"&&this.#s(Dt,_e)}alert({alertMsg:_e,alertTime:Dt,alertType:Vt,alertLabel:Gt,persistant:zt=!1,alertId:jt}){this.stores.coreSceneStore.getState().actions.sendAlert({alertMsg:_e,alertTime:Dt,alertType:Vt,alertLabel:Gt,persistant:zt,alertId:jt})}removePersistantAlert(){this.stores.coreSceneStore.setState({persistantAlertData:null})}clickHotspot(_e){let Dt=this.coreWCRef.shadowRootRef.getElementById(_e);Dt&&Dt.click()}exitHotspot(){this.stores.hotspotStore.getState().actions.exitHotspot(!1)}isSystemBusy(){return this.stores.itemStore.getState().isBusy()}async spawnGhostsForSkuID(_e,Dt=!1,Vt){return this.isSystemBusy()?null:await this.stores.ghostStore.getState().actions.spawnGhostsForSkuID(_e,Dt,Vt)}removeAllGhosts(){if(this.stores.itemStore.getState().isBusy())return null;this.stores.ghostStore.getState().actions.clearAllGhosts()}printSceneHierarchy(_e=!1){const Dt=this.stores.coreSceneStore.getState().sceneRef;(function Vt(Gt){const zt=`${Gt.name} < ${Gt.type} >`;_e===!0?console.groupCollapsed(zt):console.group(zt),Gt.children.forEach(Vt),console.groupEnd()})(Dt)}getSceneItems(){const _e=this.stores.itemStore.getState().itemsSpawned;if(typeof _e!="object"){LOGGER.error({title:"There was an error while fetching the scene item count."});return}return _e}getSceneItemCount(){let _e;const Dt=this.stores.itemStore.getState().itemsSpawned;return typeof Dt!="object"&&LOGGER.error({title:"There was an error while fetching the scene item count."}),_e=Object.keys(Dt).length,_e}async spawnItemBySkuID(_e,Dt=!1){if(this.isSystemBusy())return null;const Vt=this.getActiveGhostData();return Vt&&Vt.skuID!==_e?null:(Dt===!0&&!Vt&&await this.spawnGhostsForSkuID(_e,!1,1),await this.stores.itemStore.getState().actions.addItemBySkuID(_e,0))}async spawnItemBySkuIDAndGhostIndex(_e,Dt=0){if(this.stores.itemStore.getState().isBusy())return null;let Vt=null;const Gt=this.getActiveGhostData();return Dt>=0&&Gt.count>Dt&&Gt.skuID==_e&&(Vt=await this.stores.itemStore.getState().actions.addItemBySkuID(_e,Dt)),Vt}async replaceItemBySkuId(_e,Dt){return await this.stores.itemStore.getState().actions.replaceGuidItemBySkuId(_e,Dt)}async replaceItemsBySkuId(_e,Dt){if(!Array.isArray(_e))throw new Error("guids parameter must be an array");try{for(const Vt of _e)await this.replaceItemBySkuId(Vt,Dt);return!0}catch(Vt){throw new Error(`Failed to replace items by SKU ID: ${Vt.message}`)}}async replaceAllItemsBySkuId(_e,Dt){const Vt=[],Gt=this.stores.itemStore.getState().itemsSpawned;Object.keys(Gt).map(zt=>{Gt[zt].itemData.skuID==_e&&Vt.push(zt)});try{for(const zt of Vt)await this.replaceItemBySkuId(zt,Dt);return!0}catch(zt){throw new Error(`Failed to replace items by SKU ID: ${zt.message}`)}}async removeItemByGUID(_e,Dt=!1){if(this.stores.itemStore.getState().isBusy())return null;const Gt=this.stores.attachmentStore.getState().attachmentSystem.currentStructure.getNodeByGUID(_e);return Dt===!1&&Gt.canSwapRoot===!0&&Gt.swapRoot(),await this.stores.itemStore.getState().actions.removeItemByGUID(_e)}triggerItemRemoveModal(_e){const Dt=this.getGuidItemAttachedDependencies(_e);Dt&&this.fireEvent(this.EVENTS.SCENE.ItemRemoveModalTriggered,Dt)}async updateFittingSkuIds(){await this.stores.attachmentStore.getState().actions.updateFittingSkuIds()}rotateItemByGUID(_e){this.stores.attachmentStore.getState().attachmentSystem.currentStructure.rotateNode(_e)}rotateSelectedItem(){const _e=this.stores.itemStore.getState().selectedItemData;if(!_e){LOGGER.info({title:"No current item selected to rotate"});return}const Dt=_e.itemData.guid;return this.stores.attachmentStore.getState().attachmentSystem.currentStructure.rotateNode(Dt),_e}removeLastItemBySkuId(_e){const Dt=this.stores.itemStore.getState().itemsSpawned,Vt=Object.keys(Dt);for(let Gt=Vt.length-1;Gt>=0;Gt--){const zt=Vt[Gt];if(Dt[zt].itemData.skuID===_e){this.doesGuidItemHaveAnAttachedDependency(zt)?(this.selectItemWithGUID(zt),this.triggerItemRemoveModal(zt)):this.removeItemByGUID(zt);break}}}async removeSelectedItem(){const _e=this.stores.itemStore.getState().selectedItemData;if(!_e){LOGGER.info({title:"No current item selected to delete"});return}const Dt=_e.itemData.guid;return this.stores.itemStore.getState().actions.deselectItem(),await this.removeItemByGUID(Dt),LOGGER.info({title:`Removed Item: ${Dt}`}),_e}refocus(){this.stores.coreSceneStore.getState().actions.triggerAutoFocus()}getActiveGhostData(){return this.stores.ghostStore.getState().ghostData}focusOnGhosts(){if(this.stores.ghostStore.getState().ghostParentRef===null){LOGGER.warn({title:"Ghost Parent Reference not found"});return}this.stores.ghostStore.getState().ghostParentRef.children.length<=0?this.stores.coreSceneStore.getState().actions.triggerAutoFocus():this.stores.coreSceneStore.getState().actions.triggerAutoFocus(this.stores.ghostStore.getState().ghostParentRef)}exitSelectedItem(){this.stores.itemStore.getState().actions.deselectItem()}getSelectedItemData(){return this.stores.itemStore.getState().selectedItemData}canSelectedItemRotate(){const _e=this.stores.attachmentStore.getState().attachmentSystem.currentStructure,Dt=this.getSelectedItemData();return Dt?_e.getNodeByGUID(Dt.itemData.guid).canRotate:!1}canSelectedItemBeRemoved(){const _e=this.stores.attachmentStore.getState().attachmentSystem.currentStructure,Dt=this.getSelectedItemData();return Dt?_e.getNodeByGUID(Dt.itemData.guid).canRemove:!1}canSelectedItemDrag(){const _e=this.stores.attachmentStore.getState().attachmentSystem.currentStructure,Dt=this.getSelectedItemData();return Dt?_e.getNodeByGUID(Dt.itemData.guid).canDrag:!1}doesGuidItemHaveAnAttachedDependency(_e){let Dt=!0;const Gt=this.stores.attachmentStore.getState().attachmentSystem.currentStructure.getNodeByGUID(_e),zt=Gt.isEndNode;return Dt=!zt,zt||Gt.canSwapRoot&&Gt.whichNodesAreAttachedToUs().length==1&&(Dt=!1),Dt}getGuidItemAttachedDependencies(_e){const Dt=this.stores.attachmentStore.getState().attachmentSystem,Vt=this.stores.itemStore.getState().itemsSpawned,Gt=Dt.currentStructure.getNodeByGUID(_e);if(!Gt)return;let zt={[Gt.guid]:{...Vt[Gt.guid]}};return Gt.getAllBranchedNodesAttachedToUs().forEach(Ht=>{zt[Ht.guid]=Vt[Ht.guid]}),zt}doesSelectedItemHasAttachedDependency(){const _e=this.getSelectedItemData();return _e?this.doesGuidItemHaveAnAttachedDependency(_e.itemData.guid):!1}isSelectedItemAnEndNode(){const _e=this.stores.attachmentStore.getState().attachmentSystem.currentStructure,Dt=this.getSelectedItemData();return Dt?_e.getNodeByGUID(Dt.itemData.guid).isEndNode:!1}getCurrentSceneEnvMap(){return this.stores.lightStore.getState().envMapUrl}async switchGlobalGeometryVariant(_e,Dt){if(!_e){LOGGER.WARN({title:"Geometry Category: '"+_e+"' not valid!"});return}this.stores.itemStore.getState().selectedItemData&&this.stores.itemStore.getState().actions.deselectItem(),await this.stores.attachmentStore.getState().attachmentSystem.switchGlobalGeometryVariant(_e,Dt),await wait(1);let Vt=Object.assign({},CONFIGURATOR_GLOBAL_GEOMETRY_VARIANT_SWITCHED);Vt.parameters={variant:`${Dt}`,project_id:`${this.#e}`},this.sendAnalyticsEvent(Vt);const zt=this.stores.productDataStore.getState().categoryData.geometryVariants;let jt=null;if(zt.map(Wt=>{Wt.id==_e&&(jt=Wt)}),!jt)return;const Ht=jt.variants[Dt];this.alert({alertMsg:jt.label.charAt(0).toUpperCase()+jt.label.slice(1)+" was successfully switched to "+Ht.label.charAt(0).toUpperCase()+Ht.label.slice(1)+".",alertTime:3e3,alertType:"success",alertLabel:`${jt.label} Changed`,alertId:"geometryVariantChanged"})}async switchGlobalVariant(_e,Dt=""){if(!_e){LOGGER.WARN({title:"Look Category: '"+_e+"' not valid!"});return}this.stores.itemStore.getState().selectedItemData&&this.stores.itemStore.getState().actions.deselectItem(),LOGGER.info({title:`Changing Global Variant: Category: ${_e} Id: ${Dt}`}),await this.stores.attachmentStore.getState().attachmentSystem.switchGlobalVariant(_e,Dt),await wait(1);let Vt=Object.assign({},CONFIGURATOR_GLOBAL_VARIANT_SWITCHED);Vt.parameters={variant:`${Dt}`,project_id:`${this.#e}`},this.sendAnalyticsEvent(Vt)}async overrideSelectedItemMaterial(_e=""){return this.stores.itemStore.getState().selectedItemData?(await this.stores.itemStore.getState().actions.switchToVariant(this.stores.itemStore.getState().selectedItemData.itemData,_e,!0),!0):!1}async overrideItemMaterialByGuid(_e,Dt){const Vt=this.stores.itemStore.getState().itemsSpawned[_e];if(!Vt)return LOGGER.warn({title:"Item with guid: "+_e+" doesn't exist"}),!1;await this.stores.itemStore.getState().actions.switchToVariant(Vt.itemData,Dt,!0);let Gt=Object.assign({},CONFIGURATOR_LOCAL_VARIANT_SWITCHED);return Gt.parameters={variant:`${Dt}`,project_id:`${this.#e}`},this.sendAnalyticsEvent(Gt),!0}getSelectedItemColors(){let _e=[];if(this.getSelectedItemData()==null)return _e;let Vt=this.getSelectedItemData().itemData.looks;if(Vt){let Gt=this.stores.productDataStore.getState().lookData;Vt.map(zt=>{Gt.hasOwnProperty(zt)&&_e.push(Gt[zt])})}return _e}getCanvasSize(){return this.stores.coreSceneStore.getState().canvasSize}async removeAllVariantOverrides(){return this.stores.itemStore.getState().selectedItemData&&this.stores.itemStore.getState().actions.deselectItem(),await this.stores.attachmentStore.getState().attachmentSystem.removeAllVariantOverrides()}switchCursor(_e){this.stores.coreSceneStore&&this.stores.coreSceneStore.getState().actions.switchCursor(_e)}getSceneStructure(){return this.stores.attachmentStore.getState().actions.export()}getSceneStructureRaw(){return this.stores.attachmentStore.getState().attachmentSystem.currentStructure}getAllConnectionsInScene(){const _e=this.getSceneStructureRaw(),Dt=new Map;for(const Vt of _e.nodes)for(const Gt of Vt.plugs){if(!Gt.attachedPlugGUID)continue;const zt=[Gt.guid,Gt.attachedPlugGUID].sort().join();Dt.has(zt)||Dt.set(zt,{from:Gt,to:Gt.attachedPlug})}return Dt}async loadSceneFromConfiguration(_e){await this.stores.attachmentStore.getState().actions.loadStructure(_e)}async loadSceneFromConfigurationID(_e,Dt=!0){const Vt=await this.stores.attachmentStore.getState().actions.loadSavedStructureFromConfigID(_e);if(!Vt)return null;Dt===!0&&this.stores.attachmentStore.setState({defaultConfig:Vt});let Gt=Object.assign({},CONFIGURATOR_LOAD_FROM_PRECONFIG);Gt.label=`Preconfig ID: ${_e}`,await this.loadSceneFromConfiguration(Vt)}viewInYourSpace(){LOGGER.info({title:"View in your space called from the Core API"});let _e=Object.assign({},CONFIGURATOR_AR_REQUESTED);_e.label="AR Requested",_e.parameters={project_id:`${this.#e}`},this.sendAnalyticsEvent(_e),this.#r.epigraphViewInYourSpaceRef.onViewInYourSpaceButtonClicked()}async shareScene(){const _e=await this.generateShareableLink();let Dt=Object.assign({},CONFIGURATOR_SCENE_SHARED);return Dt.parameters={shared_url:`${_e}`,project_id:`${this.#e}`},this.sendAnalyticsEvent(Dt),_e}async clearScene(){return await this.stores.attachmentStore.getState().attachmentSystem.clear()}async restartScene(){LOGGER.info({title:"Restarting Scene."}),await this.stores.attachmentStore.getState().attachmentSystem.restart();let _e=Object.assign({},CONFIGURATOR_SCENE_RESTARTED);_e.label="Scene Restarted",_e.parameters={project_id:`${this.#e}`},this.sendAnalyticsEvent(_e)}areDimensionsVisible(){return this.stores.coreSceneStore.getState().showDimensions}getCurrentDimensions(){return this.stores.coreSceneStore.getState().boundData}getActiveHotspot(){return this.stores.hotspotStore.getState().activeHotspotData}reviewCartShown(){let _e=Object.assign({},CONFIGURATOR_REVIEW_CART_SHOWN);_e.label="Review Cart shown",_e.parameters={project_id:`${this.#e}`},this.fireEvent(this.EVENTS.UI.ReviewCart_Shown,_e),this.sendAnalyticsEvent(_e)}isGeometryVisibleForGUID(_e,Dt){const Vt={success:!1,result:!1},zt=this.stores.attachmentStore.getState().attachmentSystem.currentStructure.getNodeByGUID(Dt);return zt.ref&&zt.ref.traverse(jt=>{jt.name===_e&&(console.log(jt),Vt.success=!0,Vt.result=jt.visible)}),Vt}reviewCartHidden(){let _e=Object.assign({},CONFIGURATOR_REVIEW_CART_HIDE);_e.label="Review Cart hidden",_e.parameters={project_id:`${this.#e}`},this.fireEvent(this.EVENTS.UI.ReviewCart_Hidden,_e),this.sendAnalyticsEvent(_e)}sendShowInstructionsBtnAnalyticsEvent(){let _e=Object.assign({},CONFIGURATOR_INSTRUCTIONS_BTN_CLICKED);_e.parameters={project_id:`${this.#e}`},this.sendAnalyticsEvent(_e)}sendInstructionsAnalyticsCompletionRate(_e){let Dt=Date.now()-this.#l,Vt=Math.round(Dt/1e3);this.#l=Date.now();let Gt=Object.assign({},CONFIGURATOR_INSTRUCTIONS_COMPLETION_RATE);Gt.parameters={completion_rate:_e,time_spent:Vt,project_id:`${this.#e}`},this.sendAnalyticsEvent(Gt)}showInstructions(){this.fireEvent(this.EVENTS.UI.Instructions_Show),this.#l=Date.now();let _e=Object.assign({},CONFIGURATOR_INSTRUCTIONS_SHOWN);_e.label="Instructions shown",_e.parameters={project_id:`${this.#e}`},this.sendAnalyticsEvent(_e)}showDimensions(){this.stores.coreSceneStore.setState({showDimensions:!0});let _e=Object.assign({},CONFIGURATOR_DIMENSION_SHOWN);_e.label="Dimensions shown",_e.parameters={project_id:`${this.#e}`},this.sendAnalyticsEvent(_e)}hideDimensions(){this.stores.coreSceneStore.setState({showDimensions:!1});let _e=Object.assign({},CONFIGURATOR_DIMENSION_HIDE);_e.label="Dimensions hidden",_e.parameters={project_id:`${this.#e}`},this.sendAnalyticsEvent(_e)}areHotspotsVisible(){return this.stores.hotspotStore.getState().hotspotsVisibility}areHotspotsTemporarilyVisible(){return this.stores.hotspotStore.getState().hotspotsTempVisibility}showAllHotspots(_e=!1){this.stores.hotspotStore.getState().actions.switchHotspotsVisibility(!0,_e)}hideAllHotspots(_e=!1){this.stores.hotspotStore.getState().actions.switchHotspotsVisibility(!1,_e)}getFittingSkuIds(){return this.stores.attachmentStore.getState().attachmentSystem.getFittingSKUIDs()}selectItemWithGUID(_e){const Dt=this.stores.itemStore.getState().itemsSpawned,Vt=this.stores.attachmentStore.getState().attachmentSystem.currentStructure.getNodeByGUID(_e);this.stores.itemStore.getState().actions.setSelectedItemData({...Dt[_e],overrideVariant:Vt.overrideVariant,currentVariant:Vt.currentVariant,offsetX:0,offsetY:0})}async getCurrentCameraDetails(){return new Promise((_e,Dt)=>{this.coreWCRef.addEventListener(this.EVENTS.CONFIGURATION.CameraDetails_Update,Vt=>{_e(Vt.data)},{once:!0}),this.stores.cameraStore.getState().actions.triggerFetchingCamera()})}moveCamera(_e,Dt,Vt=!0){this.stores.hotspotStore.setState({isAnyHotspotActive:!0}),_e&&this.stores.cameraStore.setState({viewPointPosition:ArrToVec3(_e)}),Dt&&this.stores.cameraStore.setState({focusPointPosition:ArrToVec3(Dt)}),this.stores.cameraStore.setState({resetToLastPosition:Vt})}setEnvLightMap(_e){this.stores.lightStore.setState({envMapUrl:_e})}updateInventoryForAllProducts(_e){return this.stores.inventoryStore.getState().actions.updateInventoryForAllProducts(_e),this.getInventoryInfo()}getInventoryInfo(){return JSON.parse(JSON.stringify(this.stores.inventoryStore.getState().inventoryData))}updateCompareAtPricingForAllProducts(_e){this.stores.productDataStore.getState().actions.updateCompareAtPricingForAllProducts(_e);const Vt=this.stores.attachmentStore.getState().attachmentSystem.getCartItems();return Vt&&this.fireEvent(this.EVENTS.SCENE.CartItems_Updated,Vt),this.getCurrentCompareAtPricingInfo()}updatePricingForAllProducts(_e){this.stores.productDataStore.getState().actions.updatePricingForAllProducts(_e);const Vt=this.stores.attachmentStore.getState().attachmentSystem.getCartItems();return Vt&&this.fireEvent(this.EVENTS.SCENE.CartItems_Updated,Vt),this.getCurrentPricingInfo()}async updateCompareAtPricingForAllProductsAsync(_e){this.stores.productDataStore.getState().actions.updateCompareAtPricingForAllProducts(_e);const Vt=await this.stores.attachmentStore.getState().attachmentSystem.getCartItemsAsync();return Vt&&this.fireEvent(this.EVENTS.SCENE.CartItems_Updated,Vt),this.getCurrentCompareAtPricingInfo()}async updatePricingForAllProductsAsync(_e){this.stores.productDataStore.getState().actions.updatePricingForAllProducts(_e);const Vt=await this.stores.attachmentStore.getState().attachmentSystem.getCartItemsAsync();return Vt&&this.fireEvent(this.EVENTS.SCENE.CartItems_Updated,Vt),this.getCurrentPricingInfo()}updatePricingForProduct(_e,Dt,Vt){this.stores.productDataStore.getState().actions.updatePricingForProduct(_e,Dt,Vt);const zt=this.stores.attachmentStore.getState().attachmentSystem.getCartItems();return zt&&this.fireEvent(this.EVENTS.SCENE.CartItems_Updated,zt),this.getCurrentPricingInfo()}updateCompareAtPricingForProduct(_e,Dt,Vt){this.stores.productDataStore.getState().actions.updateCompareAtPricingForProduct(_e,Dt,Vt);const zt=this.stores.attachmentStore.getState().attachmentSystem.getCartItems();return zt&&this.fireEvent(this.EVENTS.SCENE.CartItems_Updated,zt),this.getCurrentCompareAtPricingInfo()}async updatePricingForProductAsync(_e,Dt,Vt){this.stores.productDataStore.getState().actions.updatePricingForProduct(_e,Dt,Vt);const zt=await this.stores.attachmentStore.getState().attachmentSystem.getCartItemsAsync();return zt&&this.fireEvent(this.EVENTS.SCENE.CartItems_Updated,zt),this.getCurrentPricingInfo()}async updateCompareAtPricingForProductAsync(_e,Dt,Vt){this.stores.productDataStore.getState().actions.updateCompareAtPricingForProduct(_e,Dt,Vt);const zt=await this.stores.attachmentStore.getState().attachmentSystem.getCartItemsAsync();return zt&&this.fireEvent(this.EVENTS.SCENE.CartItems_Updated,zt),this.getCurrentCompareAtPricingInfo()}getCurrentPricingInfo(){return this.stores.productDataStore.getState().actions.getCurrentPricingInfo()}getCurrentCompareAtPricingInfo(){return this.stores.productDataStore.getState().actions.getCurrentCompareAtPricingInfo()}async itemDragStart(_e){if(this.stores.itemStore.getState().isBusy())return null;this.stores.coreSceneStore.setState({hoveredGhostIndex:-1}),await this.removeAllGhosts(),this.stores.coreSceneStore.setState({itemDraggedSkuID:_e}),await this.spawnGhostsForSkuID(_e,!1)}async itemDragEnd(){if(this.stores.itemStore.getState().isBusy())return null;const _e=this.stores.coreSceneStore.getState().hoveredGhostIndex;_e!==-1?await this.stores.itemStore.getState().actions.addItemBySkuID(this.stores.coreSceneStore.getState().itemDraggedSkuID,_e):await this.removeAllGhosts(),this.stores.coreSceneStore.setState({itemDraggedSkuID:null,hoveredGhostIndex:-1})}async forceSpawnItem(_e,Dt){const Vt=this.stores.productDataStore.getState().productData,Gt=this.stores.attachmentStore.getState().attachmentSystem;if(!Gt)return;const zt=Gt.currentStructure;if(!zt)return;let jt=zt.getNodeByGUID(Dt);jt?(jt._skuID=_e,jt.generatePlugsForNode(_e)):(jt=new Node$1(this.stores,_e,{guid:Dt,isEndNode:!0,overrideVariant:null,plugs:Vt[_e].plugs}),zt.addNode(jt),zt.connectPlugs({incomingPlug:new Plug({name:"tempPlug",acceptedPlugTypes:[],connectsToPlugTypes:[]},jt),receiverPlug:zt.rootNode.plugs[0]}));const Ht=await this.stores.itemStore.getState().actions.addItemWithTransform({position:new Vector3(0,0,0),rotation:new Quaternion().identity()},_e,Dt);return await wait(1),Ht}async getScreenshotForCurrentCamera(_e){return await this.stores.coreSceneStore.getState().actions.requestNewScreenshot(null,_e)}async getScreenshotForCamera(_e,Dt){return await this.stores.coreSceneStore.getState().actions.requestNewScreenshot(_e,Dt)}async getAllPredefinedScreenshots(_e){const Dt=this.stores.coreSceneStore.getState().sceneSettings.screenshotCameras,Vt=[];for(const Gt of Dt){const zt=await this.stores.coreSceneStore.getState().actions.requestNewScreenshot(Gt,_e);Vt.push(zt)}return Vt}setCameraFocusPointPosition(_e){this.stores.cameraStore.setState({focusPointPosition:_e})}triggerFetchingCamera(){this.stores.cameraStore.getState().actions.triggerFetchingCamera()}async completeItemDrop(){await this.stores.coreSceneStore.getState().actions.completeDropItem()}revertItemDrop(){this.stores.coreSceneStore.getState().actions.revertDropItem()}getCameraFocusPointPosition(){return this.stores.cameraStore.getState().focusPointPosition}sendAnalyticsPageViewedEvent(){}sendAnalyticsEvent(_e){if(this.epigraphAnalytics!==null)try{this.epigraphAnalytics.sendEvent(_e)}catch{LOGGER.info()}}isIosDevice(){return IS_IOS}actionButtonClicked(_e){this.fireEvent(this.EVENTS.SCENE.ActionButton_Clicked,{data:_e.actionButton.data,skuID:_e.skuID,count:_e.count,price:_e.price,compareAtPrice:_e.compareAtPrice,countAvailable:_e.countAvailable,countUnavailable:_e.countUnavailable,currentVariant:_e.currentVariant})}setCartMessage(_e){this.fireEvent(this.EVENTS.SCENE.CartMessage_Update,{cartMessage:_e})}convertQuaternionToEuler(_e){return new Euler(0,0,0,"XYZ").setFromQuaternion(_e)}convertDegreeToRadians(_e){return MathUtils.degToRad(_e)}convertRadiansToDegree(_e){return MathUtils.radToDeg(_e)}createVector3(_e,Dt,Vt){return new Vector3(_e,Dt,Vt)}isFacingInDirection(_e,Dt){return ConfiguratorCoreAPI.forwardVector3.set(0,0,1),Dt.normalize(),ConfiguratorCoreAPI.forwardVector3.applyQuaternion(_e),ConfiguratorCoreAPI.forwardVector3.dot(Dt)>=0}}const EpigraphConfiguratorCore=reactExports.forwardRef(({customVersionId:kt,experienceId:_e,stores:Dt,viewInYourSpaceRef:Vt,configuratorWcRef:Gt,initialConfigId:zt,clientAccessKey:jt,consentPlugin:Ht,consentIdentifier:Wt,gaMeasurementId:qt,builderMode:Xt,id:Kt,disableCart:Yt,apiMode:Zt},Jt)=>{const[nn,rn]=reactExports.useState(null);reactExports.useEffect(()=>{Jt.current&&(Jt.current.identifier="wc-epigraph-configurator-core",Jt.current.epigraphViewInYourSpaceRef=void 0,Jt.current.initialConfigId="",Jt.current.clientAccessKey="",Jt.current.consentPlugin="",Jt.current.consentIdentifier="",Jt.current.gaMeasurementId="",Jt.current.configuratorWcRef=void 0,Jt.current.builderMode=!1,Jt.current.projectId="",Jt.current.api=null,Jt.current.api=new ConfiguratorCoreAPI(Dt,Jt.current),Dt.coreSceneStore.setState({CORE_API:Jt.current.api}),en(Jt.current))},[Jt]),reactExports.useEffect(()=>{Jt.current&&Vt&&(Vt.current&&(Jt.current.epigraphViewInYourSpaceRef=Vt.current),LOGGER.info({title:"ViewInYourSpace is now accessible from the core: "}))},[Jt,Vt]);const Qt=reactExports.useCallback(tn=>{Gt&&(tn.configuratorWCRef=Gt,tn.shadowRootRef=tn.configuratorWCRef.shadowRoot,tn.api.shadowRootRef=tn.shadowRootRef,tn.api.configuratorWCRef=tn.configuratorWCRef),kt&&(tn.customVersionId=kt),zt&&(tn.initialConfigId=zt),jt&&(tn.clientAccessKey=jt),Ht&&(tn.consentPlugin=Ht),Wt&&(tn.consentIdentifier=Wt),qt&&(tn.gaMeasurementId=qt),Xt&&(tn.builderMode=!0),LOGGER.group("Collected Web Component Attributes"),LOGGER.table({initialConfigId:tn.initialConfigId,clientAccessKey:tn.clientAccessKey,consentPlugin:tn.consentPlugin,consentIdentifier:tn.consentIdentifier,builderMode:tn.builderMode}),LOGGER.groupEnd()},[Xt,zt,qt,jt,Gt]),en=reactExports.useCallback(async tn=>{if(tn.coreReady===!0)return;Qt(tn);let sn=kt;!sn&&IS_DEV_ENV&&(sn="latest");let cn={};if(Zt==="input.json"?cn={payload:{project_id:"local-project",experience_id:"",configurator_data:await __vitePreload(()=>import("./input-afb87ea8.js"),[]),session_details:{environment:"development"}},report:"Local Input Json",success:!0}:jt?cn=await Dt.nexusApiInstance.getConfiguratorByClientAccessKey(jt,sn):cn=await Dt.nexusApiInstance.getConfiguratorByExperienceId(_e,sn),tn.validationPassed=cn.success,tn.validationPassed==!1){LOGGER.error({title:"Request from an invalidated source: "+window.location.href}),Dt.coreSceneStore.getState().CORE_API.fireEvent("coreApi:failed");return}Dt.nexusApiResponseEnvironment=cn.payload.session_details.environment,tn.projectId=cn.payload.project_id,tn.experienceId=cn.payload.experience_id,Dt.experienceId=cn.payload.experience_id,tn.api.projectId=tn.projectId,tn.api.experienceId=tn.experienceId;const un=cn.payload.configurator_data,hn={gaMeasurementId:tn.gaMeasurementId??void 0,epgExperienceID:tn.experienceId??void 0};Dt.coreSceneStore.getState().CORE_API.initializeAnalytics(hn,IS_DEV_ENV);let dn=Object.assign({},CONFIGURATOR_LOADING);dn.parameters={project_id:`${tn.projectId}`},Dt.coreSceneStore.getState().CORE_API.sendAnalyticsEvent(dn),LOGGER.info({title:"VALIDATION SUCCESSFUL!"}),tn.coreReady=!0;let pn=new URL(window.location).searchParams;pn.has("epgsharedconfigid")&&(tn.initialConfigId=pn.get("epgsharedconfigid")),rn({projectId:tn.projectId,parsedData:un,customVersionId:tn.customVersionId,clientAccessKey:tn.clientAccessKey,consentPlugin:tn.consentPlugin,consentIdentifier:tn.consentIdentifier,initialConfigId:tn.initialConfigId,builderMode:tn.builderMode})},[]);return reactExports.useEffect(()=>()=>{Dt.coreSceneStore.getState().CORE_API&&Dt.coreSceneStore.getState().CORE_API.fireEvent("coreApi:shutDown")},[]),jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:jsxRuntimeExports.jsx("div",{id:Kt,ref:Jt,children:nn&&jsxRuntimeExports.jsx(App$1,{parsedData:nn.parsedData,stores:Dt,clientAccessKey:nn.clientAccessKey,consentPlugin:nn.consentPlugin,consentIdentifier:nn.consentIdentifier,initialConfigId:nn.initialConfigId,builderMode:nn.builderMode,disableCart:Yt!==void 0?Yt:!1})})})}),ViewInYourSpace=React.forwardRef((kt,_e)=>{const[Dt,Vt]=reactExports.useState(!1),[Gt,zt]=reactExports.useState(!1),jt=reactExports.useRef(null),Ht=reactExports.useRef(null),Wt=reactExports.useRef(null),qt=reactExports.useRef(null),Xt=reactExports.useRef(null),Kt=reactExports.useRef(null),Yt=reactExports.useRef(null),Zt=reactExports.useRef(null),Jt=reactExports.useRef(null),nn=reactExports.useRef(null),rn=kt.stores.uiSceneStore(qn=>qn.dialogPopupOpen),Qt=reactExports.useMemo(()=>`*Technical requirements: iOS Version ${_e?.current?.coreApi?.sceneSettings?.technicalRequirements?.minIosVersion??"11"} and later or Android 8 and later.`,[kt]),en=reactExports.useMemo(()=>`*Technical requirements: iOS Version ${_e?.current?.coreApi?.sceneSettings?.technicalRequirements?.minIosVersion??"11"} and later or Android 8 and later.`,[kt]),tn=()=>{kt["asset-src"]&&(_e.current.assetSrc=kt["asset-src"])};reactExports.useEffect(()=>{!_e.current||!jt.current||!Ht.current||!Wt.current||!qt.current||!Xt.current||!Kt.current||!Yt.current||!Zt.current||!Jt.current||!nn.current||(tn(),_e.current.getQRForURL=async(qn,tr)=>await Pn(qn,tr),_e.current.onViewInYourSpaceButtonClicked=async qn=>await yn(),_e.current.assetSrc="",_e.current.iosAssetSrc="",_e.current.arLink="",_e.current.coreApi=void 0,_e.current.arInProgress=!1,_e.current._modelViewerScriptSource="https://cdn.jsdelivr.net/npm/@google/model-viewer@2.x.x/dist/model-viewer.min.js",_e.current._modelViewer=null,_e.current._qrModalContainer=null,fn(),dn(),un(),_e.current._modelViewer.addEventListener("error",qn=>{Cn(qn)}),_e.current._viewInYourSpaceButton.addEventListener("click",qn=>{yn()}),_e.current.canLaunchAR=sn)},[_e,jt,Ht,Wt,qt,Xt,Kt,Yt,Zt,Jt,nn]);const sn=reactExports.useCallback(()=>_e.current._modelViewer.canActivateAR,[]);reactExports.useEffect(()=>{_e.current&&(kt["asset-src"]&&(_e.current.assetSrc=kt["asset-src"]),kt["core-api"]&&(_e.current.coreApi=kt["core-api"]),cn())},[_e,kt]);const cn=()=>{_e.current._modelViewer.setAttribute("src",_e.current.assetSrc),_e.current._modelViewer.setAttribute("ios-src",_e.current.iosAssetSrc),_e.current._modelViewer.style.display="none"},un=()=>{window.customElements.get("model-viewer")===void 0&&hn(),En(),cn(),_e.current._modelViewer.addEventListener("ar-status",qn=>{qn.detail.status==="session-started"?(_e.current._modelViewer.style.display="block",_e.current.arInProgress=!0):(qn.detail.status==="not-presenting"||qn.detail.status==="failed")&&(_e.current._modelViewer.style.display="none",_e.current.arInProgress=!1)})},hn=()=>{_e.current._modelViewerScriptElem=document.createElement("script"),_e.current._modelViewerScriptElem.setAttribute("type","module"),_e.current._modelViewerScriptElem.setAttribute("src",_e.current._modelViewerScriptSource),_e.current._modelViewerScriptElem.setAttribute("id","modelViewerScript"),document.head.appendChild(_e.current._modelViewerScriptElem)},dn=()=>{_e.current._qrModalContainer=qt.current,_e.current._qrCodeImage=Xt.current,_e.current._arLink=Kt.current,_e.current._qrLoader=Yt.current,_e.current.doneViewInYourSpaceBtn=Zt.current,_e.current.doneViewInYourSpaceBtn.addEventListener("click",()=>{pn(),Tn()})},pn=async()=>{if(_e.current._qrCodeImage!==null)for(;_e.current._qrCodeImage.firstChild;)_e.current._qrCodeImage.removeChild(_e.current._qrCodeImage.firstChild)},fn=()=>{_e.current.arDrawer=jt.current,_e.current._launchARButton=Ht.current,_e.current._modelDownloadLoader=Wt.current,_e.current._launchARButton.addEventListener("click",()=>{_e.current.arInProgress!==!0&&Rn()})},mn=()=>{_e.current._modelDownloadLoader.classList.remove("loader-hide")},vn=()=>{_e.current._modelDownloadLoader.classList.add("loader-hide")},_n=()=>{zt(!0),xn(),_e.current.arDrawer.show()},En=()=>{_e.current._modelViewer=Jt.current,_e.current._viewInYourSpaceButton=nn.current},An=()=>{Vt(!0),_e.current._qrModalContainer.show()},Tn=()=>{Vt(!1),_e.current._qrModalContainer.hide()},Cn=qn=>{console.error(`[VIEW-IN-YOUR-SPACE ERROR]: Asset load Errors!!
|
|
4650
4650
|
Make sure that the URL provided for the asset to be loaded is correct.`),console.error("==============================================================="),console.error(qn),console.error("===============================================================")},yn=qn=>{_e.current.canLaunchAR()===!0?Sn():Fn()},Sn=async qn=>{if(_n(),await wait(1e3),_e.current.coreApi.isIosDevice()){_e.current.iosAssetSrc=await _e.current.coreApi.getSceneAsUsdzUrl(kt.stores);const tr=`${GENERIC_PROJECT_ASSET_DATA_ROOT_URL}/3d-assets/proxy/null-product-proxy.glb`;_e.current.assetSrc=tr}else _e.current.assetSrc=await _e.current.coreApi.getSceneAsGlbUrl(kt.stores);cn(),wn()},wn=()=>{_e.current._launchARButton.disabled=!1,vn()},xn=()=>{_e.current._launchARButton.disabled=!0,mn()},Rn=()=>{_e.current._modelViewer.activateAR()},Dn=()=>{_e.current._qrLoader.classList.remove("loader-hide")},kn=()=>{_e.current._qrLoader.classList.add("loader-hide")},Fn=async()=>{_e.current._qrCodeImage.classList.add("img-hide"),_e.current._qrCodeImage.setAttribute("src",""),Dn(),An(),await Bn(_e.current._qrCodeImage),_e.current._qrCodeImage.classList.remove("img-hide"),kn()},Pn=async(qn,tr)=>{QrCreator$1.render({text:qn,radius:.25,ecLevel:"H",fill:"#000000",background:null,size:200},tr),await wait(250)},Bn=async qn=>{_e.current.arLink=await _e.current.coreApi.generateShareableLink(!0),await _e.current.getQRForURL(_e.current.arLink,qn)};return jsxRuntimeExports.jsxs("div",{...kt,ref:_e,children:[jsxRuntimeExports.jsxs("button",{tabIndex:rn?-1:0,id:"viewInYourSpaceButton",ref:nn,className:"viewInYourSpaceButton",children:[jsxRuntimeExports.jsx("img",{alt:"Close",src:"https://storage.googleapis.com/gsc-epigraph-design/product-assets/Icon/AR.svg",onError:qn=>{qn.target.src="https://placehold.co/150"}}),"VIEW IN YOUR SPACE"]}),jsxRuntimeExports.jsx("model-viewer",{ref:Jt,ar:!0,"ar-modes":"webxr scene-viewer quick-look","ar-scale":"fixed","ar-placement":kt.arplacement,src:"",alt:"Epigraph View In Your Space","camera-controls":!0,style:{visibility:"hidden"}}),jsxRuntimeExports.jsx(FullScreenModal,{stores:kt.stores,open:Gt,id:"arDrawer",ref:jt,children:jsxRuntimeExports.jsxs("div",{className:"launch-ar-content-container",children:[jsxRuntimeExports.jsx("div",{className:"launch-ar-modal-title",children:"View In Your Space®"}),jsxRuntimeExports.jsxs("div",{className:"launch-ar-bottom-content-container",children:[jsxRuntimeExports.jsx("div",{className:"launch-ar-modal-instruction",children:"Click the “Launch AR” button below to begin viewing this product in your space."}),jsxRuntimeExports.jsxs("div",{className:"launch-ar-button-container",children:[jsxRuntimeExports.jsx("img",{id:"modelDownloadLoader",ref:Wt,alt:"Loading...",draggable:"false",className:"spinner-loader",src:PUBLIC_DESIGN_ASSETS_ENDPOINT+"/Animation/Loading.svg",onError:qn=>{qn.target.src="https://placehold.co/150"}}),jsxRuntimeExports.jsx("button",{tabIndex:Gt?0:-1,className:"launch-ar-button",id:"launchARButton",ref:Ht,children:"Launch AR"})]}),jsxRuntimeExports.jsx("div",{className:"launch-ar-modal-requirement",children:en})]}),jsxRuntimeExports.jsxs("div",{id:"arSessionError",className:"launch-ar-modal-error launch-ar-modal-error-hide",children:[" ","Uh Oh! Looks like there was a problem while loading the AR session."," "]})]})}),jsxRuntimeExports.jsx(FullScreenModal,{stores:kt.stores,open:Dt,id:"qrModalContainer",ref:qt,onExit:pn,children:jsxRuntimeExports.jsxs("div",{className:"qr-content-container",children:[jsxRuntimeExports.jsxs("div",{className:"QR-Parent",children:[jsxRuntimeExports.jsx("div",{id:"qrCodeImage",ref:Xt,className:"qr-code-image"}),jsxRuntimeExports.jsx("img",{id:"qrLoader",ref:Yt,alt:"Loading...",draggable:"false",className:"spinner-loader",src:PUBLIC_DESIGN_ASSETS_ENDPOINT+"/Animation/Loading.svg",onError:qn=>{qn.target.src="https://placehold.co/150"}}),jsxRuntimeExports.jsx("div",{id:"arLink",ref:Kt})]}),jsxRuntimeExports.jsxs("div",{className:"QR-Content-Parent",children:[jsxRuntimeExports.jsx("div",{className:"qr-ar-modal-title",children:"Scan QR code"}),jsxRuntimeExports.jsxs("div",{className:"qr-ar-bottom-content-container",children:[jsxRuntimeExports.jsx("div",{className:"qr-ar-modal-instruction",children:"Using your mobile device camera, scan the QR code and follow the on-screen directions to view this item in your space."}),jsxRuntimeExports.jsx("div",{className:"launch-ar-button-container",children:jsxRuntimeExports.jsx("div",{role:"button","aria-label":"Done Button","aria-hidden":!Dt,tabIndex:Dt?0:-1,className:"launch-ar-button",id:"doneViewInYourSpaceBtn",ref:Zt,children:"Done"})}),jsxRuntimeExports.jsx("div",{className:"qr-ar-modal-requirement",children:Qt})]})]}),jsxRuntimeExports.jsxs("div",{id:"arSessionError",className:"launch-ar-modal-error launch-ar-modal-error-hide",children:[" ","Uh Oh! Looks like there was a problem while loading the AR session."," "]})]})})]})}),UI_LOCAL_STYLES=[{id:"variables",contents:StyleVariables},{id:"styles",contents:GenericStyles$1},{id:"accordion",contents:AccordionStyles},{id:"productFeaturesUI",contents:FeaturesUiStyles},{id:"sideMenuContent",contents:SideMenuContentStyles},{id:"build",contents:BuildStyles},{id:"mobile",contents:MobileStyles$1},{id:"bottomDrawer",contents:BottomDrawerStyles},{id:"fullScreenModal",contents:FullScreenModalStyles},{id:"viewInYourSpace",contents:ViewInYourSpaceStyles},{id:"instructionsModal",contents:InstructionsModalStyles}];function App({stores:kt,customVersionId:_e,experienceId:Dt,disableUI:Vt,disableCart:Gt,configuratorWcRef:zt,gaMeasurementId:jt}){const Ht=kt.itemStore(cn=>cn.itemsSpawned),Wt=reactExports.useRef(null),qt=reactExports.useRef(null),Xt=reactExports.useRef(null),Kt=kt.coreSceneStore(cn=>cn.coreReady),Yt=kt.uiSceneStore(cn=>cn.CORE_API),Zt=kt.uiSceneStore(cn=>cn.cssLoaded),Jt=kt.coreSceneStore(cn=>cn.sceneSettings?.arPlacement),nn=kt.uiSceneStore(cn=>cn.setCSSLoaded),rn=reactExports.useRef(null);addCoreEventListener(kt,"coreApi:ready",cn=>{const un=cn.categoryData.geometryVariants;Object.keys(kt.colorStore.getState().allActiveGeometryVariants).length==0&&un.map(dn=>kt.colorStore.getState().allActiveGeometryVariants[dn.id]=Object.keys(dn.variants)[0]);const hn=cn.categoryData.color;if(Object.keys(kt.colorStore.getState().allActiveVariants).length==0&&hn.map(dn=>kt.colorStore.getState().allActiveVariants[dn.id]=dn.looks[0]),cn.configuration&&cn.configuration.globalVariants){const dn=cn.configuration.globalVariants;Object.keys(dn).map(pn=>{kt.colorStore.getState().allActiveVariants[pn]=dn[pn]}),kt.colorStore.setState({allActiveVariants:{...kt.colorStore.getState().allActiveVariants}})}Xt.current.coreApi=Wt.current.api,kt.coreSceneStore.setState({coreReady:!0})}),addCoreEventListener(kt,"coreApi:failed",cn=>{zt.showHiccupScreen(`AUTHENTICATION FAILED FOR: ${window.location.href}`),kt.coreSceneStore.setState({coreReady:!1})}),reactExports.useEffect(()=>{Qt(Ht)},[Ht]),addCoreEventListener(kt,"globalGeometryVariant:updated",cn=>{kt.colorStore.setState({allActiveGeometryVariants:{...cn}});const un=kt.itemStore.getState().itemsSpawned;Qt(un)}),addCoreEventListener(kt,"globalVariant:updated",cn=>{kt.colorStore.setState({allActiveVariants:{...cn}})}),addCoreEventListener(kt,"cartMessage:updated",cn=>{kt.uiSceneStore.setState({cartMessage:cn.cartMessage})});const Qt=cn=>{let un=[],hn=[];const dn=kt.colorStore.getState().allActiveGeometryVariants;Object.keys(cn).map(pn=>{let fn=cn[pn];fn.hotspotsData&&fn.hotspotsData.map(mn=>{if(mn.geometryVariantID){let vn=!1;if(Object.keys(dn).map(_n=>{mn.geometryVariantID==dn[_n]&&(vn=!0)}),vn===!1)return}mn.categoryID!==""&&hn.includes(mn.categoryID)||(hn.push(mn.categoryID),un=[...un,{itemData:{...cn[pn].itemData},hotspotData:{...mn}}])})}),kt.uiSceneStore.setState({tabSpawnCount:un})};addCoreEventListener(kt,"cart:statusUpdated",cn=>{cn.disableCart!==void 0&&kt.uiSceneStore.setState({disableCart:cn.disableCart})}),addCoreEventListener(kt,"viewInYourSpace:hide",cn=>{kt.uiSceneStore.setState({viewInYourSpaceMenuBtnVisible:!1})}),addCoreEventListener(kt,"viewInYourSpace:show",cn=>{kt.uiSceneStore.setState({viewInYourSpaceMenuBtnVisible:!0})});const en=reactExports.useCallback(cn=>{let un=[];const hn=kt.productDataStore.getState().productData;cn.cartItems.forEach(dn=>{let pn={...dn},fn=hn[dn.skuID];pn.title=fn.lookDetails[dn.currentVariant].title,pn.subheading=fn.subheading,pn.subtitle=fn.lookDetails[dn.currentVariant].subtitle,pn.actionButton=fn.lookDetails[dn.currentVariant].actionButton,pn.thumbnails=fn.lookDetails[dn.currentVariant].thumbnails,un.push(pn)}),kt.cartStore.setState({cart:[...un]}),kt.cartStore.getState().actions.setCartTotalPrice(cn.details.total,cn.details.compareAtTotal)},[]),tn=reactExports.useCallback(async cn=>{if(!Yt)return;kt.uiSceneStore.setState({inventoryData:{...cn}});const un=await Yt.getCartItemsAsync();en(un)},[Yt]),sn=()=>(addCoreEventListener(kt,Yt.EVENTS.UI.PreloadScreen_Hide,()=>{zt.api.ui.hidePreloadScreen()}),addCoreEventListener(kt,Yt.EVENTS.UI.PreloadScreen_Show,()=>{zt.api.ui.showPreloadScreen()}),addCoreEventListener(kt,Yt.EVENTS.SCENE.CartItems_Updated,en),addCoreEventListener(kt,Yt.EVENTS.SCENE.Inventory_Updated,tn),jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{}));return reactExports.useEffect(()=>{const{current:cn}=Wt;cn&&(kt.uiSceneStore.setState({coreWCRef:cn}),zt.api.core=cn.api,zt.api.core.clientAccessKey=zt.clientAccessKey,zt.api.core.consentPlugin=zt.consentPlugin,zt.api.core.consentIdentifier=zt.consentIdentifier,kt.uiSceneStore.setState({CORE_API:cn.api}))},[Wt]),reactExports.useEffect(()=>{async function cn(){if(Zt===!1||Kt!==!0)return;const un=await Yt.getCartItemsAsync();en(un),zt.api.ui.hidePreloadScreen()}cn()},[Zt,Kt]),reactExports.useEffect(()=>{const{current:cn}=rn;if(!cn)return;let un=window.getComputedStyle(cn);kt.coreSceneStore.setState({dragImgElRef:cn});const hn=En=>{En.preventDefault();const An=kt.coreSceneStore.getState().mouseDownImgSrc;if(An){const Tn=kt.coreSceneStore.getState().pointerDownPos,Cn=kt.coreSceneStore.getState().moveThreshold,yn=kt.coreSceneStore.getState().mouseDragging,Sn=kt.coreSceneStore.getState().mouseDownSkuID;if(Math.abs(En.clientX-Tn)<=Cn)return;const xn={x:En.offsetX,y:En.offsetY},Rn=cn;Rn.src=An,Rn.style.opacity=.75,Rn.style.left=`calc(${xn.x}px - ${un.width})`,Rn.style.top=`calc(${xn.y}px - ${un.height})`,yn||(kt.coreSceneStore.setState({mouseDragging:!0}),kt.uiSceneStore.getState().CORE_API.itemDragStart(Sn))}},dn=()=>{if(kt.coreSceneStore.getState().mouseDownImgSrc){const An=kt.coreSceneStore.getState().mouseDragging,Tn=cn;Tn.style.opacity=0,An&&kt.uiSceneStore.getState().CORE_API.itemDragEnd(),kt.coreSceneStore.setState({mouseDownImgSrc:null,mouseDragging:!1})}},pn=En=>{const An=kt.coreSceneStore.getState().mouseDownImgSrc;if(An){const Tn=kt.coreSceneStore.getState().pointerDownPos,Cn=kt.coreSceneStore.getState().moveThreshold,yn=kt.coreSceneStore.getState().mouseDragging,Sn=kt.coreSceneStore.getState().mouseDownSkuID;if(En.preventDefault(),Math.abs(En.touches[0].clientX-kt.wcRef.offsetLeft-Tn)<=Cn)return;const xn={x:En.touches[0].clientX-kt.wcRef.offsetLeft,y:En.touches[0].clientY},Rn=cn.parentElement.getBoundingClientRect().top,Dn=cn;if(Dn.src=An,Dn.style.opacity=.75,Dn.style.left=`calc(${xn.x}px - ${un.width})`,Dn.style.top=`calc(${xn.y}px - ${Rn}px - ${un.height})`,!yn){kt.coreSceneStore.setState({mouseDragging:!0});const kn=qt.current.getElementsByClassName("mobileGrid");for(let Fn=0;Fn<kn.length;Fn++)kn[Fn].style="overflow-x:hidden !important";kt.uiSceneStore.getState().CORE_API.itemDragStart(Sn)}}},fn=()=>{if(kt.coreSceneStore.getState().mouseDownImgSrc){const An=kt.coreSceneStore.getState().mouseDragging,Tn=cn;if(Tn.style.left="0px",Tn.style.top="0px",Tn.style.opacity=0,An){kt.uiSceneStore.getState().CORE_API.itemDragEnd();const Cn=qt.current.getElementsByClassName("mobileGrid");for(let yn=0;yn<Cn.length;yn++)Cn[yn].style="overflow-x:auto !important"}kt.coreSceneStore.setState({mouseDownImgSrc:null,mouseDragging:!1})}},mn=window.matchMedia("(orientation: portrait)");function vn(En){kt.uiSceneStore.setState({isScreenPortrait:En.matches})}vn(mn);const _n=kt.wcRef;return _n.addEventListener("mousemove",hn),window.addEventListener("mouseup",dn),_n.addEventListener("touchmove",pn,{passive:!1}),window.addEventListener("touchend",fn),mn.addEventListener("change",vn),()=>{const En=kt.wcRef;En&&(En.removeEventListener("mousemove",hn),En.removeEventListener("touchmove",pn)),window.removeEventListener("mouseup",dn),window.removeEventListener("touchend",fn),mn.removeEventListener("change",vn)}},[rn,qt,Yt]),jsxRuntimeExports.jsxs("div",{className:"configuratorParentDiv",style:{background:kt.cameraStore.getState().cameraSettings.clearColour},ref:qt,children:[Kt&&jsxRuntimeExports.jsx(sn,{}),jsxRuntimeExports.jsx(StyleManager,{stores:kt,containerId:"uiStylesContainer",localStyles:UI_LOCAL_STYLES,dynamicStylesId:"uiStyles",setCSSLoaded:nn}),jsxRuntimeExports.jsx("img",{id:"dragImgElRef",ref:rn,alt:"A placeholder holder element used for drag and drop functionality.",style:{backgroundImage:"url(https://placehold.co/150)"},onError:cn=>{cn.target.src="https://placehold.co/150"}}),jsxRuntimeExports.jsx(EpigraphConfiguratorCore,{stores:kt,ref:Wt,id:"epigraphConfiguratorCore",customVersionId:_e,experienceId:Dt,viewInYourSpaceRef:Xt,gaMeasurementId:jt,...Gt&&{disableCart:""},configuratorWcRef:zt,initialConfigId:zt.initialConfigId,clientAccessKey:zt.clientAccessKey,consentPlugin:zt.consentPlugin,consentIdentifier:zt.consentIdentifier,apiMode:zt.apiMode}),jsxRuntimeExports.jsx(ViewInYourSpace,{stores:kt,ref:Xt,id:"viewInYourSpace",arplacement:Jt}),Kt&&Zt&&jsxRuntimeExports.jsx("div",{className:"uiContainer",children:jsxRuntimeExports.jsx(OverlayUIManager$1,{stores:kt,configuratorWcRef:zt,coreRef:Wt,viewInYourSpaceRef:Xt,disableUI:Vt})})]})}const PRELOAD_MUTED_CSS=document.createElement("template");PRELOAD_MUTED_CSS.innerHTML=`
|
|
4651
4651
|
<style>
|
|
4652
4652
|
.preload-main-container{
|
|
@@ -4793,4 +4793,4 @@ ${zt.join(`
|
|
|
4793
4793
|
There was a problem while trying to initialise the configurator.
|
|
4794
4794
|
</div>
|
|
4795
4795
|
</div>
|
|
4796
|
-
`;const createCoreSceneStore=kt=>{const _e=coreStoreCreator();return _e.setState({stores:kt}),_e},coreStoreCreator=()=>create((kt,_e)=>({stores:null,shadowRefreshKey:0,CORE_API:null,coreReady:void 0,frameloop:"always",hoveredGhostIndex:-1,itemDraggedSkuID:null,screenshotRenderer:new WebGLRenderer({antiAlias:!0,preserveDrawingBuffer:!0}),screenshotCamera:new PerspectiveCamera(75,1.33,.1,1e3),builderMode:!1,dragging:!1,bbox:null,draggingItemGUID:null,sceneRef:null,cssLoaded:!1,sceneHasDefaultConfigurationID:!1,configurationLoaded:!0,preconfigurationLoaded:!1,configurationLoadedOnRestart:!0,cursorParentRef:null,glContext:null,canvasTooltipText:"",canvasSize:{width:600,height:600},boundData:{center:new Vector3(0,0,0),size:new Vector3(0,0,0)},showDimensions:!1,autoFocusTrigger:0,cameraActive:!1,autoFocusRef:null,alertData:{},persistantAlertData:null,alertQueue:[],currentAlertData:null,alertSettings:null,draggingOnDropCollisionData:null,multipleTouchDetected:!1,isMobile:!1,isTouchDevice:!1,isTablet:!1,isDesktop:!0,isLandscape:!1,sceneSettings:{usdzMaxTextureSize:1024,usdzPrecision:7,swappableRoot:!0,ghostColorOnHoverWithDraggableUi:{r:153,g:252,b:0,a:1},preserveDrawingBuffer:!1,showSaveBtn:!0,showShareBtn:!0,showResetBtn:!0,showDimensionBtn:!0,showViewInYourSpaceBtn:!0,showDependencyOnHover:!1,showContextMenu:!0,showHotspotsBtn:!0,showInstructionsBtn:!1,showInstructionsOnStartup:!1,sceneScaleUnit:"ft",arPlacement:"floor",arTransforms:{position:[0,0,0],rotation:[0,0,0],scale:[1,1,1]},currency:"$",disableDragDrop:!1,ignoreSpawningCollision:!1,disableCollider:!1,disableContextMenu:!1,ghostColor:{r:10,g:10,b:10,a:.2},technicalRequirements:{minIosVersion:"11"},ghostScale:[1,1,1],ghostAsWireframe:!1,draggableUI:!1,addFromInfoModal:!1,clickToAddUi:!0,accordionInBuildUi:!1,outOfStock_EmissiveColor:{r:250,g:50,b:0},outOfStock_EmissiveIntensity:.002,defaultConfigurationID:null,emptySceneText:null,emptySceneTextFontSize:"2rem",addToCartCTAText:"Add To Cart",ignoreCollisionPostDragging:!1,comboPlugDistanceThreshold:.05,disableCart:!1,dimensionColor:{r:0,g:0,b:0},disableLocalColorOverride:!1,analyticsEventPrefix:"",outlineSettings:{multisampling:10,visibleEdgeColor:new Color$1("#0f0").convertSRGBToLinear(),hiddenEdgeColor:new Color$1("#0f0").convertSRGBToLinear(),blur:3,width:1e3,edgeStrength:1e3,blendFunction:BlendFunction.ALPHA,pulseSpeed:0,xRay:!0},textSettings:{arButtonLabel:"AR",arHoverLabel:"View In Your Space",restartButtonLabel:"Restart",restartHoverLabel:"Restart",saveButtonLabel:"Save",saveHoverLabel:"Save",shareButtonLabel:"Share",shareHoverLabel:"Share",sizeButtonLabel:"Size",sizeHoverLabel:"Size",hotspotsButtonLabel:"Hotspots",hotspotsHoverLabel:"Hotspots",instructionsButtonLabel:"Instructions",instructionsHoverLabel:"Instructions",cartQuantityText:"Qty",reviewButtonText:"Review",cartHeadingText:"Review Products",buildTabHeadingText:"Build",colorTabHeadingText:"Color",featuresTabHeadingText:"Features",featuresTabEmptyText:"*Please add an item to the scene to see the features",tooltipEmptySceneText:"",tooltipInstructionText:"-Drag to rotate the camera-"},variantsTabOrder:{color:{enabled:!0,priority:1},geometryVariants:{enabled:!0,priority:2}},boundingBoxLeeway:.9,contactShadowVisibility:!0,measurementPrecision:2,disableAlerts:!1,focusCameraOnGhosts:!0,alertLevel:2999,alertControl:{default:!0,itemAdded:!0,geometryVariantChanged:!0,overridesRemoved:!0,materialVariantChanged:!0,itemRemoved:!0,itemRepositioned:!0,configurationSaved:!0,linkCopied:!0,outOfStock:!0,unvisualizedItemSpawn:!0},screenshotCameras:[{position:new Vector3(-2.5,.6,-5),rotation:new Vector3(-3.1097068566150314,-.6437852162982552,-3.122449778846033)},{position:new Vector3(3,1,-5),rotation:new Vector3(-.5,1,.5)}],instructionsSettings_desktop:[{header:"Add to Scene",description:"Click to add individual modules to the scene.",lottieURL:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Non-Furniture/Non-furniture_Step_1A_Drag_Drop/Non-furniture_Step_1A.json"},{header:"Rearrange Modules",description:"Drag & drop individual modules in the scene to rearrange.",lottieURL:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Non-Furniture/Non-furniture_Step_2/Non-furniture_Step_2.json"},{header:"Remove Modules",description:"Click to select and remove individual modules from the scene.",lottieURL:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Non-Furniture/Non-furniture_Step_3/Non-furniture_Step_3.json"}],instructionsSettings_mobile:[{header:"Add to Scene",description:"Click to add individual modules to the scene.",lottieURL:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Non-Furniture/Non-furniture_Step_1A_Drag_Drop_Mobile/Mobile_Non-furniture_Step_1A.json"},{header:"Rearrange Modules",description:"Drag & drop individual modules in the scene to rearrange.",lottieURL:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Non-Furniture/Non-furniture_Step_2/Non-furniture_Step_2.json"},{header:"Remove Modules",description:"Tap to select and remove individual modules from the scene.",lottieURL:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Non-Furniture/Non-furniture_Step_3/Non-furniture_Step_3.json"}],defaultInstructionsSettings:{step1_drag:{mobile:{header:"Add to Scene",description:"Drag & drop individual modules to add to the scene.",lottieURL:{furniture:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Furniture/Furniture_Step_1A_Drag_Drop_Mobile/Mobile_Furniture_Step_1A.json",nonFurniture:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Non-Furniture/Non-furniture_Step_1A_Drag_Drop_Mobile/Mobile_Non-furniture_Step_1A.json"}},desktop:{header:"Add to Scene",description:"Drag & drop individual modules to add to the scene.",lottieURL:{furniture:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Furniture/Furniture_Step_1A_Drag_Drop/Furniture_Step_1A.json",nonFurniture:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Non-Furniture/Non-furniture_Step_1A_Drag_Drop/Non-furniture_Step_1A.json"}}},step1_add:{mobile:{header:"Add to Scene",description:"Click to add individual modules to the scene.",lottieURL:{furniture:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Furniture/Furniture_Step_1B_Click_Add_Mobile/Mobile_Furniture_Step_1B.json",nonFurniture:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Non-Furniture/Non-furniture_Step_1B_Click_Add_Mobile/Mobile_Non-furniture_Step_1B.json"}},desktop:{header:"Add to Scene",description:"Click to add individual modules to the scene.",lottieURL:{furniture:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Furniture/Furniture_Step_1B_Click_Add/Furniture_Step_1B.json",nonFurniture:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Non-Furniture/Non-furniture_Step_1B_Click_Add/Non-furniture_Step_1B.json"}}},step2:{mobile:{header:"Rearrange Modules",description:"Drag & drop individual modules in the scene to rearrange.",lottieURL:{furniture:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Furniture/Furniture_Step_2/Furniture_Step_2.json",nonFurniture:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Non-Furniture/Non-furniture_Step_2/Non-furniture_Step_2.json"}},desktop:{header:"Rearrange Modules",description:"Drag & drop individual modules in the scene to rearrange.",lottieURL:{furniture:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Furniture/Furniture_Step_2/Furniture_Step_2.json",nonFurniture:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Non-Furniture/Non-furniture_Step_2/Non-furniture_Step_2.json"}}},step3:{mobile:{header:"Remove Modules",description:"Tap to select and remove individual modules from the scene.",lottieURL:{furniture:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Furniture/Furniture_Step_3/Furniture_Step_3.json",nonFurniture:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Non-Furniture/Non-furniture_Step_3/Non-furniture_Step_3.json"}},desktop:{header:"Remove Modules",description:"Click to select and remove individual modules from the scene.",lottieURL:{furniture:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Furniture/Furniture_Step_3/Furniture_Step_3.json",nonFurniture:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Non-Furniture/Non-furniture_Step_3/Non-furniture_Step_3.json"}}}}},setCSSLoaded:Dt=>{kt({cssLoaded:Dt})},actions:{refreshShadows:()=>{const{shadowRefreshKey:Dt}=_e();kt({shadowRefreshKey:Dt+1})},popFromAlertQueue:()=>{const{alertQueue:Dt}=_e();return Dt.shift(),kt({alertQueue:Dt}),Dt},addToAlertQueue:Dt=>{const{alertQueue:Vt,currentAlertData:Gt}=_e();return Vt.length>0&&Vt[Vt.length-1].alertId&&Dt.alertId===Vt[Vt.length-1].alertId||Vt.length==0&&Gt&&Gt.alertId&&Gt.alertId==Dt.alertId||(Vt.push(Dt),kt({alertQueue:Vt})),Vt},getDeviceState:()=>{const{isDesktop:Dt,isMobile:Vt,isTablet:Gt,isTouchDevice:zt,isLandscape:jt}=_e();return{isDesktop:Dt,isMobile:Vt,isTablet:Gt,isTouchDevice:zt,isLandscape:jt}},enableCart:()=>{const{sceneSettings:Dt,CORE_API:Vt,stores:Gt}=_e();Dt.disableCart=!1,Gt.inventoryStore.getState().actions.refreshInventory(Gt.itemStore.getState().itemsSpawned),Vt.fireEvent(Vt.EVENTS.SCENE.Cart_StatusUpdated,{disableCart:!1})},disableCart:()=>{const{sceneSettings:Dt,CORE_API:Vt,stores:Gt}=_e();Dt.disableCart=!0,Gt.inventoryStore.getState().actions.refreshInventory(Gt.itemStore.getState().itemsSpawned),Vt.fireEvent(Vt.EVENTS.SCENE.Cart_StatusUpdated,{disableCart:!0})},getSceneSettings:()=>{const{sceneSettings:Dt}=_e();return Dt},sendAlert:Dt=>{kt({alertData:{...Dt}})},switchCursor(Dt){const{cursorParentRef:Vt}=_e();if(!Vt)return;let Gt="";switch(Dt){default:case CURSORS.GRAB:Gt="grabCursor";break;case CURSORS.GRABBING:Gt="grabbingCursor";break;case CURSORS.BLOCKED:Gt="blockedCursor";break;case CURSORS.POINTER:Gt="pointerCursor";break;case CURSORS.MOVE:Gt="moveCursor";break}for(let zt=0;zt<Vt.classList.length;zt++)Vt.classList[zt].includes("Cursor")&&Vt.classList.remove(Vt.classList[zt]);Vt.classList.add(Gt)},setAlertSettings:Dt=>{kt({alertSettings:Dt})},async completeDropItem(){const{draggingOnDropCollisionData:Dt,CORE_API:Vt,stores:Gt}=_e(),zt=Gt.attachmentStore.getState().attachmentSystem,{node:jt,attachedChildrenGuids:Ht,collidingStatus:Wt,intersectingGhostObject:qt,initPosition:Xt,initRotation:Kt,detachedPlugs:Yt,attachedNodesToCurrentNode:Zt}=Dt;Vt.alert({alertMsg:"Item(s) have been removed",alertTime:7e3,alertType:"info",alertLabel:"Item(s) Removed",alertId:"itemRemoved"});for(const[Qt,en]of Ht.entries())Wt[Qt]===!0&&await Gt.itemStore.getState().actions.removeItemByGUID(en);const Jt=qt.userData;let nn=jt.getPlugByName(Jt.incomingPlugName),rn=zt.currentStructure.getPlugByGUID(Jt.receiverPlugGUID);jt.ref.position.set(qt.position.x,qt.position.y,qt.position.z),jt.ref.setRotationFromEuler(qt.rotation),jt.transform={position:qt.position,rotation:qt.quaternion},zt.currentStructure.connectPlugs({incomingPlug:nn,receiverPlug:rn}),Gt.ghostStore.getState().actions.clearAllGhosts(),Gt.itemStore.getState().actions.deselectItem(),Zt.map(Qt=>{jt.ref.parent.attach(Qt.ref),Qt.transform={position:Qt.ref.position,rotation:Qt.ref.quaternion},jt.dragging=!1,Qt.dragging=!1}),await Gt.attachmentStore.getState().actions.updateFittingSkuIds()},async revertDropItem(){const{draggingOnDropCollisionData:Dt,stores:Vt}=_e(),Gt=Vt.attachmentStore.getState().attachmentSystem,{node:zt,attachedChildrenGuids:jt,collidingStatus:Ht,intersectingGhostObject:Wt,initPosition:qt,initRotation:Xt,detachedPlugs:Kt,attachedNodesToCurrentNode:Yt}=Dt;CORE_API.alert({alertMsg:"Position of item"+zt.skuID+"is being moved to it's original position",alertTime:4e3,alertType:"info",alertLabel:"Repositioning",alertId:"itemRepositioned"});const Zt=Kt.neighbourDetachedPlugs;Zt&&(Kt.neighbourNode.detachNodeFromReceiver(),Gt.currentStructure.connectPlugs({incomingPlug:Zt.incomingPlug,receiverPlug:Zt.receiverPlug}));let Jt=Kt.rootDetachedPlugs.incomingPlug,nn=Kt.rootDetachedPlugs.receiverPlug;zt.ref.position.set(qt.x,qt.y,qt.z),zt.ref.setRotationFromEuler(Xt);let rn=new Quaternion().identity();zt.ref.getWorldQuaternion(rn),zt.transform={position:qt,rotation:rn},Gt.currentStructure.connectPlugs({incomingPlug:Jt,receiverPlug:nn}),Vt.ghostStore.getState().actions.clearAllGhosts(),Vt.itemStore.getState().actions.deselectItem(),Yt.map(Qt=>{zt.ref.parent.attach(Qt.ref),Qt.transform={position:Qt.ref.position,rotation:Qt.ref.quaternion},zt.dragging=!1,Qt.dragging=!1}),await Vt.attachmentStore.getState().actions.updateFittingSkuIds()},setCoreSettings:Dt=>{const{sceneSettings:Vt,isMobile:Gt,isTouchDevice:zt,isLandscape:jt,actions:Ht}=_e(),Wt=Gt===!0?"mobile":"desktop",qt=["showSave","showShare","showReset","showDimension","showHotspots","showInstructionsBtn","showViewInYourSpace","showContextMenu","showInstructionsOnStartup","draggableUI","clickToAddUi","textSettings","alertControl","variantsTabOrder","emptySceneTextFontSize","instructionsSettings"];for(const Xt of qt)if(Xt==="draggableUI"||Xt==="clickToAddUi"||Xt==="emptySceneTextFontSize"||Xt==="showInstructionsOnStartup"||Xt==="showInstructionsBtn"||Xt==="instructionsSettings"){const Yt=`${Xt}_${jt===!1&&zt===!0?"mobile":"desktop"}`;Dt[Yt]!==void 0?Vt[Xt]=Dt[Yt]:Vt[Yt]!==void 0&&(Vt[Xt]=Vt[Yt])}else if(Xt==="textSettings"||Xt==="variantsTabOrder"||Xt==="alertControl"||Xt==="outlineSettings"){if(Dt.hasOwnProperty(Xt)){let Kt=Vt[Xt];Object.keys(Kt).map(Yt=>{let Zt=Dt[Xt];Zt.hasOwnProperty(Yt)?(Yt==="visibleEdgeColor"||Yt==="hiddenEdgeColor")&&(Zt[Yt]=new Color$1(Zt[Yt]).convertSRGBToLinear()):Zt[Yt]=Kt[Yt]})}}else{const Kt=`${Xt}_${Wt}`;if(Dt[Kt]!==void 0){let Yt=`${Xt}Btn`;Xt=="showContextMenu"&&(Yt=`${Xt}`),Vt[Yt]=Dt[Kt]}}Dt.disableCart===!0&&Ht.disableCart(),Object.keys(Dt).map(Xt=>Vt[Xt]=Dt[Xt]),Vt.emptySceneText===null&&(Vt.emptySceneTextFontSize=Gt?"1.2rem":"1.5rem",Vt.draggableUI===!0?Vt.emptySceneText="Drag an item here to get started":Vt.emptySceneText="Select an item to get started"),kt({sceneSettings:{...Vt,ghostThreeColor:{r:Vt.ghostColor.r/255,g:Vt.ghostColor.g/255,b:Vt.ghostColor.b/255,a:Vt.ghostColor.a/255},draggableUiGhostThreeColorOnHover:{r:Vt.ghostColorOnHoverWithDraggableUi.r/255,g:Vt.ghostColorOnHoverWithDraggableUi.g/255,b:Vt.ghostColorOnHoverWithDraggableUi.b/255,a:Vt.ghostColorOnHoverWithDraggableUi.a/255}}})},triggerAutoFocus:(Dt=null)=>kt(Vt=>({autoFocusRef:Dt,autoFocusTrigger:Vt.autoFocusTrigger+1})),requestNewScreenshot:async(Dt,Vt)=>{const{CORE_API:Gt}=_e();return new Promise(async(zt,jt)=>{LOGGER.info({title:"Taking a screenshot"});const{screenshotRenderer:Ht,sceneRef:Wt,screenshotCamera:qt,canvasSize:Xt}=_e(),Kt=await Gt.getCurrentCameraDetails();if(Ht.setClearColor(16777215),qt.copy(Kt),Dt!==null&&(qt.position.copy(Dt.position),qt.rotation.copy(new Euler(Dt.rotation.x,Dt.rotation.y,Dt.rotation.z))),Vt==null?Ht.setSize(Xt.width,Xt.height):Ht.setSize(Vt.width,Vt.height),Ht.render(Wt.parent,qt),Ht.preserveDrawingBuffer===!1)LOGGER.warn({title:"Preserve Drawing Buffer must be enabled to take a screenshot. Please make sure to enable this within the project input data coreSettings"}),jt({success:!1,imageData:null});else{LOGGER.info({title:"Downloading the screenshot"});const Yt=Ht.domElement.toDataURL("image/png").replace("image/png","image/octet-stream");zt({success:!0,imageData:Yt})}})}}})),createProductDataStore=kt=>{const _e=productDataStoreCreator();return _e.setState({stores:kt}),_e},productDataStoreCreator=()=>create((kt,_e)=>({stores:null,productData:{},categoryData:{},lookData:{},hotspotsData:{},endpoints:{},assetsData:void 0,actions:{getCurrentCompareAtPricingInfo:()=>{const{productData:Dt}=_e();let Vt={};return Object.keys(Dt).map(Gt=>{if(Gt.toLowerCase()==="root")return;let zt=Dt[Gt].lookDetails,jt={};Object.keys(zt).map(Ht=>{Ht!="default"&&(jt[Ht]=zt[Ht].compareAtPrice)}),Vt[Gt]=jt}),Vt},getCurrentPricingInfo:()=>{const{productData:Dt}=_e();let Vt={};return Object.keys(Dt).map(Gt=>{if(Gt.toLowerCase()==="root")return;let zt=Dt[Gt].lookDetails,jt={};Object.keys(zt).map(Ht=>{Ht!="default"&&(jt[Ht]=zt[Ht].price)}),Vt[Gt]=jt}),Vt},updateCompareAtPricingForAllProducts:Dt=>{const{actions:Vt}=_e();Object.keys(Dt).map(Gt=>{let zt=Dt[Gt];Object.keys(zt).map(jt=>{Vt.updateCompareAtPricingForProduct(Gt,jt,zt[jt])})})},updatePricingForAllProducts:Dt=>{const{actions:Vt}=_e();Object.keys(Dt).map(Gt=>{let zt=Dt[Gt];Object.keys(zt).map(jt=>{Vt.updatePricingForProduct(Gt,jt,zt[jt])})})},updateCompareAtPricingForProduct:(Dt,Vt,Gt)=>{const{productData:zt,stores:jt}=_e();let Ht=zt[Dt];if(!Ht||!Ht.lookDetails)return;let Wt=Ht.lookDetails[Vt];if(!Wt)return;Wt.compareAtPrice=Gt,jt.attachmentStore.getState().attachmentSystem.currentStructure.getNodesBySKUID(Dt).map(Kt=>Kt.updateCompareAtPricing())},updatePricingForProduct:(Dt,Vt,Gt)=>{const{productData:zt,stores:jt}=_e();let Ht=zt[Dt];if(!Ht||!Ht.lookDetails)return;let Wt=Ht.lookDetails[Vt];if(!Wt)return;Wt.price=Gt,jt.attachmentStore.getState().attachmentSystem.currentStructure.getNodesBySKUID(Dt).map(Kt=>Kt.updatePricing())},setProductData:Dt=>{const{stores:Vt}=_e();let Gt={};Dt&&Object.keys(Dt).map(zt=>{const jt=Dt[zt];if(jt.skuID=zt,jt.skuID.toLowerCase()==="root"){jt.lookDetails={default:{title:"",description:"",productPageUrl:"",thumbnails:{high:"",low:""},price:0}},jt.defaultVariant="default";return}if(jt?.lookDetails){const Ht=jt.lookDetails;let Wt=Object.keys(jt.lookDetails);if(Wt.includes("default")){const Xt=Wt.indexOf("default");Wt.splice(Xt,1)}jt.looks=Wt,Object.keys(jt.lookDetails).map(Xt=>{let Kt=jt.lookDetails[Xt];Kt.inventory===void 0&&(Kt.inventory=DEFAULT_INVENTORY),Kt.price===void 0&&(Kt.price=DEFAULT_PRODUCT_PRICE),Kt.compareAtPrice===void 0&&(Kt.compareAtPrice=DEFAULT_PRODUCT_COMPARE_AT_PRICE),Gt[zt]={...Gt[zt],[Xt]:{inventory:DEFAULT_INVENTORY,inScene:[]}}});let qt=jt?.defaultVariant;qt||(LOGGER.warn({title:`No defaultVariant set for ${jt.skuID}. Attempting to auto resolve but the colour variants behaviour might be unexpected!`}),qt=Object.keys(jt.lookDetails).sort()[0],LOGGER.warn({title:"Auto resolved default look ID: "+qt})),Wt.includes(qt)?(jt.lookDetails.default=Ht[qt],jt.lookDetails.default.id=qt):(LOGGER.error({title:`Default look [ ${qt} ] doesn't exist for: ${zt}. Please make sure to select a default variant in Input Data for this project`}),jt.lookDetails.default=null)}}),LOGGER.info({title:"PRODUCT DATA: ",details:Dt}),Vt.inventoryStore.setState({inventoryData:Gt}),kt({productData:Dt})},setCategoryData:Dt=>{const{productData:Vt}=_e();Dt.geometryVariants!==void 0&&Dt.geometryVariants.map(Gt=>{Gt.defaultVariant===void 0&&Object.keys(Gt.variants).length>0&&(Gt.defaultVariant=Object.keys(Gt.variants)[0])}),Dt.color!==void 0&&Dt.color.map(Gt=>{(Gt.defaultLook===void 0&&Gt.looks.length>0||!Gt.looks.includes(Gt.defaultLook))&&(Gt.defaultLook=Gt.looks[0])}),kt({categoryData:Dt}),Dt.build!==void 0&&Dt.build.map(Gt=>{Gt.skus.map(zt=>{Vt[zt].categoryID=Gt.categoryID,Vt[zt].categoryLabel=Gt.label,Vt[zt].swappable=Gt.swappable?Gt.swappable:!1,Vt[zt].replace=Gt.replace})})},getProductDataById:Dt=>{const{productData:Vt}=_e();let Gt=null;return Vt[Dt]&&(Gt=Vt[Dt]),Gt},setLookData:Dt=>kt({lookData:Dt}),setHotspotsData:Dt=>{const{categoryData:Vt,productData:Gt}=_e();Vt.geometryVariants&&Object.keys(Dt).map(zt=>{Dt[zt].map(jt=>{jt.geometryVariantID&&Vt.geometryVariants.map(Ht=>{Object.keys(Ht.variants).map(Wt=>{jt.geometryVariantID==Wt&&Ht.productsInCategory.map(qt=>{let Xt=null;qt.products.map(Kt=>{Dt.hasOwnProperty(Kt)&&(Xt=Dt[Kt])}),qt.products.map(Kt=>{Dt.hasOwnProperty(Kt)||(Dt[Kt]=Xt)})})})})})}),kt({hotspotsData:Dt})},setAssetsData:Dt=>kt({assetsData:Dt})}})),createItemStore=kt=>{const _e=itemStoreCreator();return _e.setState({stores:kt}),_e},itemStoreCreator=()=>create((kt,_e)=>({stores:null,variantChangeAlert:!1,focusedGUID:null,removeItems:[],removeItemTrigger:!1,itemsSpawned:{},itemsCount:0,modelLoadedAlert:0,lastDeletedItemData:null,lastDeletedItemsData:[],hoveredItemRef:{},collidersRef:[],fittingSkuIds:[],filteredCollidersRef:[],selectedItemData:null,defaultSceneItemCount:0,busySpawningItem:!1,busyReplacingItem:!1,busySpawningDependency:!1,busyDraggingItem:!1,busyRemovingItem:!1,isBusy:()=>{const{busySpawningItem:Dt,busyReplacingItem:Vt,busySpawningDependency:Gt,busyDraggingItem:zt,busyRemovingItem:jt}=_e();return Dt||Vt||Gt||zt||jt},actions:{triggerModelLoaded:()=>{kt(Dt=>({modelLoadedAlert:Dt.modelLoadedAlert+1}))},triggerRemoveItem:()=>{kt(Dt=>({removeItemTrigger:!Dt.removeItemTrigger}))},addToRemoveItems:Dt=>{const{removeItems:Vt}=_e();Vt.push(Dt)},switchToVariant:async(Dt,Vt,Gt=!1)=>{const{variantChangeAlert:zt,stores:jt}=_e(),Ht=jt.productDataStore.getState().categoryData;let qt=jt.attachmentStore.getState().attachmentSystem.currentStructure.getNodeByGUID(Dt.guid);const Xt=jt.assetStore.getState().assets.items,Kt=qt.ref.getObjectByName("GRP_RenderGeometry");Xt[Dt.skuID].data||Ht.geometryVariants&&Ht.geometryVariants.map(Yt=>{Yt.productsInCategory.map(Zt=>{let Jt=!1;Zt.products.map(nn=>{nn==Dt.skuID&&(Jt=!0)}),Jt&&Zt.products.map(nn=>{const rn=jt.assetStore.getState().assets.items[nn].data;rn&&(jt.assetStore.getState().assets.items[Dt.skuID].data=rn)})})}),qt.modelFunctions&&(await qt.modelFunctions.selectVariant(Kt,Vt),Gt?(qt.overrideVariant=Vt,jt.coreSceneStore.getState().CORE_API.fireEvent(jt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.MaterialOverrides_Exists,!0)):qt.currentVariant=Vt,kt({variantChangeAlert:!zt}))},clearAllItems:()=>{kt({itemsSpawned:{},itemsCount:0,lastDeletedItemsData:[],hoveredItemRef:[],collidersRef:[],filteredCollidersRef:[],selectedItemData:null})},setItemsSpawned:Dt=>{kt({itemsSpawned:Dt,itemsCount:Object.keys(Dt).length})},setHoveredItemRef:Dt=>kt({hoveredItemRef:Dt}),setCollidersRef:Dt=>{const{stores:Vt}=_e();kt({collidersRef:Dt});let Gt=[];for(let zt=0;zt<Dt.length;zt++)Dt[zt].current&&Gt.push(Dt[zt]);Vt.itemStore.setState({filteredCollidersRef:[...Gt]})},setSelectedItemData:Dt=>{const{selectedItemData:Vt,hoveredItemRef:Gt,actions:zt,stores:jt}=_e();Vt&&(delete Gt[Vt.itemData.guid],zt.setHoveredItemRef({...Gt})),kt({selectedItemData:{...Dt}}),jt.hotspotStore.getState().actions.switchHotspotsVisibility(!1,!0),jt.cameraStore.getState().actions.canCameraRotate(!1)},deselectItem:()=>{const{selectedItemData:Dt,stores:Vt}=_e();Dt&&Vt.coreSceneStore.getState().CORE_API.fireEvent(Vt.coreSceneStore.getState().CORE_API.EVENTS.UI.ContextMenu_Hide,Dt),kt(()=>({selectedItemData:null})),Vt.hotspotStore.getState().actions.switchHotspotsVisibility(!0,!0),Vt.cameraStore.getState().actions.canCameraRotate(!0),Vt.itemStore.getState().actions.setHoveredItemRef({})},removeItemByGUID:async Dt=>{const{itemsSpawned:Vt,actions:Gt,stores:zt}=_e();if(Vt.hasOwnProperty(Dt))return kt({busyRemovingItem:!0}),new Promise(async(jt,Ht)=>{const Wt=qt=>{Dt===qt.data.itemData.guid&&(kt({busyRemovingItem:!1}),jt(Dt))};zt.coreSceneStore.getState().CORE_API.coreWCRef.addEventListener(zt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Item_Removed,Wt,{once:!0}),Gt.addToRemoveItems(Dt),Gt.triggerRemoveItem()})},addItemBySkuID:async(Dt,Vt=0,Gt=!1,zt)=>{kt({busySpawningItem:!0});const{actions:jt,itemsSpawned:Ht,stores:Wt}=_e(),qt=Wt.productDataStore.getState().productData,Xt=Wt.productDataStore.getState().hotspotsData,Kt=Wt.attachmentStore.getState().attachmentSystem;let Yt=!0;const Zt=await new Promise(async(Jt,nn)=>{if(LOGGER.info({title:`Spawning item: ${Dt}`}),jt.deselectItem(),!qt[Dt]){LOGGER.warn({title:`Product not found: ${Dt}`}),Wt.coreSceneStore.getState().CORE_API.alert({alertMsg:Dt+": product not found!",alertTime:5e3,alertType:"warn",alertLabel:"Not Found"}),Yt=!1,nn(Dt+": product not found!");return}const rn=[...Wt.ghostStore.getState().ghostsTransform],Qt={...Wt.ghostStore.getState().ghostData};if(rn.length<=0){Wt.coreSceneStore.getState().CORE_API.alert({alertMsg:"Unable to add item to configuration",alertTime:6e3,alertType:"warn",alertLabel:"Action Unavailable"}),Yt=!1,nn("No available connections for this product to attach to");return}const en=tn=>{Dt===tn.data&&Jt(Qt.newNodes[Vt].guid)};if(Wt.coreSceneStore.getState().CORE_API.coreWCRef.addEventListener(Wt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Model_Loaded,en,{once:!0}),Qt.addItemOrSwap[Vt]=="replace")await replaceItem(kt,Wt,Ht,Qt.skuID,rn[Vt],Qt.newNodes[Vt]);else{Wt.ghostStore.getState().actions.clearAllGhosts();const tn=Qt.newNodes[Vt];tn.isDependent=Gt;let sn=!0;if(qt[Qt.skuID].hasOwnProperty("disableInteraction")){const dn=qt[Qt.skuID].disableInteraction;(dn==!0||dn==!1)&&(sn=!dn)}zt!=null&&(sn=zt),tn.isInteractive=sn;const{position:cn,rotation:un}=rn[Vt];tn.transform={position:cn,rotation:un},Kt.currentStructure.addNode(tn),Qt.connectablePlugs[Vt].receiverPlug.type=="unvisualizedPlug"&&Wt.coreSceneStore.getState().CORE_API.alert({alertMsg:"This product is not shown in your 3D configuration but can be found in your shopping list.",alertTime:3e3,alertType:"warn",alertLabel:"Internal Storage",persistant:!1,alertId:"unvisualizedItemSpawn"}),Qt.comboPlugs[Vt].length>0&&Qt.connectablePlugs[Vt].incomingPlug.type=="comboPlug"&&Qt.comboPlugs[Vt].map(dn=>{Kt.currentStructure.connectPlugs(dn)}),Qt.connectablePlugs[Vt].incomingPlug.comboPlugConnector=!0,Kt.currentStructure.connectPlugs(Qt.connectablePlugs[Vt]);const hn=await Wt.assetStore.getState().actions.loadProxyAsset(Qt.skuID,!0);LOGGER.info({title:"GHOST NEW NODE: ",details:tn}),Ht[tn.guid]={itemData:{proxyScene:hn.proxy.data.scene,guid:Qt.newNodes[Vt].guid,...qt[Qt.skuID],position:cn,rotation:un,hasItemLoaded:!1,isDependent:Gt,isInteractive:sn},hotspotsData:Xt[Qt.skuID],hotspotSpawned:!1},await wait(1),jt.setItemsSpawned({...Ht})}}).catch(Jt=>{LOGGER.error({title:Jt}),Yt=!1});if(Yt===!1)return kt({busySpawningItem:!1}),Zt;if(Wt.coreSceneStore.getState().preconfigurationLoaded&&Wt.coreSceneStore.getState().configurationLoaded){const Jt=await Kt.getCartItemsAsync();Jt&&Wt.coreSceneStore.getState().CORE_API.fireEvent(Wt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.CartItems_Updated,Jt)}if(await jt.resolvePlugDependencyOnGUID(Zt),kt({busySpawningItem:!1}),!Gt){const Jt=Kt.currentStructure,nn=Jt.getNodeByGUID(Zt);Wt.dynamicHookStore.getState().hookOnSceneItemAdded(nn,Jt.nodes,Wt.coreSceneStore.getState().CORE_API),await Wt.attachmentStore.getState().actions.updateFittingSkuIds()}return Zt},async addItemWithTransform(Dt,Vt,Gt,zt=!0){const{actions:jt,itemsSpawned:Ht,defaultSceneItemCount:Wt,stores:qt}=_e(),Xt=qt.productDataStore.getState().productData,Kt=qt.productDataStore.getState().hotspotsData;return await new Promise(async(Zt,Jt)=>{if(jt.deselectItem(),!Xt[Vt]){qt.coreSceneStore.getState().CORE_API.alert({alertMsg:Vt+": product not found!",alertTime:5e3,alertType:"warn",alertLabel:"Not Found"}),Jt(Vt+": product not found!");return}const{position:nn,rotation:rn}=Dt;Ht[Gt]!=null&&(qt.hotspotStore.getState().actions.removeHotspotForItem({...Ht[Gt]}),delete Ht[Gt]);const Qt=tn=>{Vt.toLowerCase()==tn.data.toLowerCase()&&Zt(Gt)};qt.coreSceneStore.getState().CORE_API.coreWCRef.addEventListener(qt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Model_Loaded,Qt,{once:!0});const en=await qt.assetStore.getState().actions.loadProxyAsset(Vt,!0);if(en==null){Jt(Vt+": Asset not found!");return}await wait(1),Vt.toLowerCase()==="root"&&kt({defaultSceneItemCount:Wt+1}),Ht[Gt]={itemData:{proxyScene:en.proxy.data.scene,guid:Gt,...Xt[Vt],position:nn,rotation:rn,hasItemLoaded:!1,isInteractive:zt},hotspotsData:Kt[Vt],hotspotSpawned:!1},kt({itemsSpawned:{...Ht}})}).catch(Zt=>{LOGGER.info({title:Zt})})},async resolvePlugDependencyOnGUID(Dt){const{actions:Vt,itemsSpawned:Gt,defaultSceneItemCount:zt,stores:jt}=_e(),Ht=jt.productDataStore.getState().productData,Wt=jt.attachmentStore.getState().attachmentSystem,qt=Gt[Dt].itemData.skuID,Xt=Ht[qt]?.plugs;if(!Xt)return;let Kt=!1;for(const Yt of Xt)Yt?.dependencySku&&(Kt=!0);Kt&&(kt({busySpawningDependency:!0}),await new Promise(async(Yt,Zt)=>{const Jt=[];for(const nn of Xt){const rn=nn?.dependencySku;if(!rn)continue;const Qt=async()=>{LOGGER.info({title:`Found a dependency: ${rn} on the plug: ${nn.name}`});let en=!0;Ht[rn]&&Ht[rn].hasOwnProperty("ignoreSpawningCollisionAsDependency")&&(en=Ht[rn].ignoreSpawningCollisionAsDependency),nn.hasOwnProperty("ignoreSpawningCollision")&&(en=nn.ignoreSpawningCollision);let tn=jt.coreSceneStore.getState().sceneSettings.ignoreSpawningCollision;Ht[rn].hasOwnProperty("ignoreSpawningCollision")&&(tn=Ht[rn].ignoreSpawningCollision),Ht[rn].ignoreSpawningCollision=en,jt.ghostStore.setState({ghostVisibility:!1});const sn=await jt.ghostStore.getState().actions.spawnGhostsForSkuID(rn,en);if(Ht[rn].ignoreSpawningCollision=tn,!sn)return;const cn=Wt.currentStructure.getNodeByGUID(Dt),un=cn.getPlugByName(nn.name)?.guid,hn=nn?.isDependencySkuInteractive?nn.isDependencySkuInteractive===1:!1,dn=sn.connectablePlugs;let pn=-1;for(const mn of dn)mn.receiverPlug.guid===un&&(pn=dn.indexOf(mn));if(pn==-1){jt.ghostStore.getState().actions.clearAllGhosts();return}const fn=await Vt.addItemBySkuID(rn,pn,!0,hn);qt.toLowerCase()==="root"&&Ht[rn].ignoreInCart&&kt({defaultSceneItemCount:zt+1}),fn!==null&&cn.addMyDependenciesGUID(fn)};Jt.push(await Qt())}await Promise.all(Jt),Yt(!0)}),kt({busySpawningDependency:!1}))},async replaceGuidItemBySkuId(Dt,Vt){const{itemsSpawned:Gt,stores:zt}=_e();if(Gt[Dt]==null)return!1;const jt=zt.attachmentStore.getState().attachmentSystem.currentStructure,Ht=jt.getNodeByGUID(Dt);if(!Ht||!Ht.isReplaceableWithSkuId(Vt))return!1;LOGGER.info({title:"Replacing Item"});const qt=zt.productDataStore.getState().productData,Xt=zt.productDataStore.getState().hotspotsData;kt({busyReplacingItem:!0}),await new Promise(async(Kt,Yt)=>{const Zt=async()=>{LOGGER.info({title:"Removed old item with guid: "+Dt});const Jt=async Qt=>{Vt===Qt.data&&(jt.recalculateStructureFromNode(Ht.whichNodeAreWeAttachedTo()),await zt.attachmentStore.getState().actions.toggleStructureUpdated(),kt({busyReplacingItem:!1}),Kt(Ht.guid))};zt.coreSceneStore.getState().CORE_API.coreWCRef.addEventListener(zt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Model_Loaded,Jt,{once:!0});const nn=await zt.assetStore.getState().actions.loadProxyAsset(Vt,!0),rn={receiverPlug:Ht.whichPlugAreWeAttachedTo(),incomingPlug:Ht.whichPlugAreWeAttachedUsing()};jt.findItemTransform(rn),Gt[Dt]={itemData:{proxyScene:nn.proxy.data.scene,guid:Dt,...qt[Vt],position:Ht.transform.position,rotation:Ht.transform.rotation,hasItemLoaded:!1},hotspotsData:Xt[Vt],hotspotSpawned:!1},LOGGER.warn({title:"SWITCHING VARIANT: ",details:Ht.currentVariant}),zt.itemStore.setState({itemsSpawned:{...Gt}})};zt.hotspotStore.getState().actions.removeHotspotForItem({...Gt[Dt]}),delete Gt[Dt],Ht.update(Vt),zt.coreSceneStore.getState().CORE_API.coreWCRef.addEventListener(zt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Model_Removed,Zt,{once:!0})})}}}));async function replaceItem(kt,_e,Dt,Vt,Gt,zt){LOGGER.info({title:"Replacing Item"});const{position:jt,rotation:Ht}=Gt,Wt=_e.productDataStore.getState().productData,qt=_e.productDataStore.getState().hotspotsData,Xt=_e.attachmentStore.getState().attachmentSystem.currentStructure;return kt({busyReplacingItem:!0}),new Promise(async(Kt,Yt)=>{const Zt=async()=>{const Jt=await _e.assetStore.getState().actions.loadProxyAsset(Vt,!0),nn=async rn=>{Vt===rn.data&&(Xt.recalculateStructureFromNode(zt),await _e.attachmentStore.getState().actions.toggleStructureUpdated(),_e.ghostStore.getState().actions.clearAllGhosts(),kt({busyReplacingItem:!1}),Kt(zt.guid))};_e.coreSceneStore.getState().CORE_API.coreWCRef.addEventListener(_e.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Model_Loaded,nn,{once:!0}),Dt[zt.guid]={itemData:{proxyScene:Jt.proxy.data.scene,guid:zt.guid,...Wt[Vt],position:jt,rotation:Ht,hasItemLoaded:!1},hotspotsData:qt[Vt],hotspotSpawned:!1},LOGGER.warn({title:"SWITCHING VARIANT: ",details:zt.currentVariant}),zt.currentVariant=zt.currentVariant,zt.transform=Gt,_e.itemStore.setState({itemsSpawned:{...Dt}})};_e.hotspotStore.getState().actions.removeHotspotForItem({...Dt[zt.guid]}),delete Dt[zt.guid],zt.update(Vt),_e.coreSceneStore.getState().CORE_API.coreWCRef.addEventListener(_e.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Model_Removed,Zt,{once:!0})})}const createInventoryStore=kt=>{const _e=inventoryStoreCreator();return _e.setState({stores:kt}),_e},inventoryStoreCreator=()=>create((kt,_e)=>({stores:null,inventoryData:{},actions:{updateInventoryForAllProducts:Dt=>{const{actions:Vt,stores:Gt}=_e();Object.keys(Dt).map(zt=>{let jt=Dt[zt];Object.keys(jt).map(Ht=>{Vt.updateInventoryForProduct(zt,Ht,jt[Ht].inventory)})}),Vt.refreshInventory(Gt.itemStore.getState().itemsSpawned)},updateInventoryForProduct:(Dt,Vt,Gt)=>{const{inventoryData:zt}=_e();let jt=zt[Dt],Ht=jt[Vt];!jt||!Ht||(Ht.inventory=Gt)},_clearInScene:()=>{const{inventoryData:Dt}=_e();Object.keys(Dt).map(Vt=>{const Gt=Dt[Vt];Object.keys(Gt).map(zt=>{Gt[zt].inScene=[]})})},refreshInventory:Dt=>{if(!Dt)return;LOGGER.info({title:"Refreshing Inventory"});const{actions:Vt,inventoryData:Gt,stores:zt}=_e();Vt._clearInScene();const jt=zt.attachmentStore.getState().attachmentSystem;if(jt===null)return;const Ht=jt.currentStructure;if(Ht===null)return;Object.keys(Dt).map(Kt=>{const Yt=Ht.getNodeByGUID(Kt);if(!Yt)return;const Zt=Yt.overrideVariant?Yt.overrideVariant:Yt.currentVariant;if(!Zt)return;const Jt=Gt[Yt.skuID];if(!Jt||!Jt[Zt].inScene)return;Jt[Zt].inScene.push(Kt),zt.coreSceneStore.getState().sceneSettings.disableCart===!0?Yt.inStock={variantName:Zt,newValue:!0}:Jt[Zt].inScene.length>Jt[Zt].inventory?Yt.inStock={variantName:Zt,newValue:!1}:Yt.inStock={variantName:Zt,newValue:!0}});let Wt=!1;Object.keys(Gt).map(Kt=>{const Yt=Gt[Kt];Object.keys(Yt).map(Zt=>{Yt[Zt].countAvailable=Yt[Zt].inventory-Yt[Zt].inScene.length,Yt[Zt].countAvailable<0?(Yt[Zt].countUnavailable=Yt[Zt].countAvailable*-1,Yt[Zt].countAvailable=0,Wt=!0):Yt[Zt].countUnavailable=0})});const qt={alertMsg:"Some item(s) in configuration are out of stock",alertTime:7e3,alertType:"warn",alertLabel:"Stock Alert",persistant:!0,alertId:"outOfStock"},Xt=compareObjects(zt.coreSceneStore.getState().persistantAlertData,qt);Wt===!1&&Xt===!0&&zt.coreSceneStore.getState().CORE_API.removePersistantAlert(),zt.coreSceneStore.getState().CORE_API.fireEvent(zt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Inventory_Updated,Gt)}}})),createAssetStore=kt=>{const _e=assetStoreCreator();return _e.setState({stores:kt}),_e},assetStoreCreator=()=>create((kt,_e)=>({stores:null,assets:{items:{}},gltfLoader:null,dracoLoader:null,actions:{init(){const Dt=new DRACOLoader;Dt.setDecoderPath(`${ASSETS_SOURCE_ROOT}/external-libs/draco/`),Dt.setDecoderConfig({type:"js"});const Vt=new GLTFLoader;Vt.register(Gt=>new GLTFMaterialsVariantsExtension(Gt)),Vt.setDRACOLoader(Dt),kt({dracoLoader:Dt,gltfLoader:Vt})},async loadProxyAsset(Dt){const{assets:Vt,gltfLoader:Gt,stores:zt}=_e(),jt="proxy",Ht=Vt.items[Dt]=Vt.items[Dt]||{isLoaded:!1,errorLoading:!1,proxy:{isLoaded:!1,errorLoading:!1}},Wt=Ht.proxy;if(Wt.isLoaded)return Ht;if(Wt.errorLoading)throw new Error(`${jt} loading failed for: ${Dt}`);const qt=zt.productDataStore.getState().productData[Dt];if(!qt)throw new Error(`Data doesn't exist for ${Dt}`);const Xt=zt.coreSceneStore.getState().CORE_API.getResolvedAssetUrl(qt.colliderProxyGLTF);if(!Xt)return null;try{const Kt=await Gt.loadAsync(Xt,Yt=>{Wt.progress=Yt.loaded/Yt.total*100});return Wt.data=Kt,Wt.isLoaded=!0,Ht}catch(Kt){throw Wt.isLoaded=!1,Wt.errorLoading=!0,Wt.error=Kt,LOGGER.info({title:Xt}),new Error(`Couldn't load ${Dt}`)}},isProxyLoaded(Dt){const Vt=_e().assets.items[Dt];return Vt?Vt.proxy.isLoaded:!1}}}));class Structure{#t=!1;constructor(_e,Dt=null,Vt,Gt){if(this.stores=_e,this._nodes=[],this._rootNode=null,LOGGER.info({title:"preloadNodes",details:Dt}),this.setupHookOnSceneItemsUpdated(),Dt){LOGGER.info({title:"PRELOAD Length-----------------:"+Dt.length});for(let zt=0;zt<Dt.length;zt++){LOGGER.info({title:"FOUND PRELOAD-----------------"});const jt=Dt[zt].skuID;if(jt.toLowerCase()=="root"){const Wt=this.stores.itemStore.getState().itemsSpawned;Object.keys(Wt).length>0&&(Dt[zt].guid=Object.keys(Wt)[0])}let Ht=new Node$1(_e,jt,Dt[zt],Vt,Gt);jt.toLowerCase()=="root"&&(this._rootNode=Ht),this._nodes.push(Ht)}}else{const zt=new Node$1(_e,"Root",null,Vt,Gt);this._rootNode=zt,this._nodes.push(zt),this.stores.itemStore.getState().actions.addItemWithTransform({position:new Vector3(0,0,0),rotation:new Quaternion().identity()},"Root",this._rootNode.guid,!1)}this._boundingBoxLeeway=this.stores.coreSceneStore.getState().sceneSettings.boundingBoxLeeway}async setupHookOnSceneItemsUpdated(){const _e=this.stores.coreSceneStore.getState().CORE_API;this.stores.coreSceneStore.getState().CORE_API.coreWCRef.addEventListener(_e.EVENTS.SCENE.FittingSkuIds_Updated,()=>{this.stores.dynamicHookStore.getState().hookOnSceneItemsUpdated(this._nodes,_e)})}get nodes(){return this._nodes}get rootNode(){return this._rootNode}updatePricing(){for(let _e=0;_e<this._nodes.length;_e++)this._nodes[_e].updatePricing()}getCurrentItemsInReplaceableCategory(){let _e={};for(const Dt of this._nodes)Dt.replace&&(_e[Dt.categoryID]=Dt.skuID);return _e}recalculateStructureFromNode(_e){for(let Dt=0;Dt<_e.plugs.length;Dt++)if(!_e.plugs[Dt].isOpen&&_e.plugs[Dt].isReceiverPlug){const Vt=_e.plugs[Dt].attachedPlug.node,Gt={receiverPlug:_e.plugs[Dt],incomingPlug:_e.plugs[Dt].attachedPlug};if(Gt){const zt=this.findItemTransform(Gt);zt&&(Vt.ref.position.set(zt.position.x,zt.position.y,zt.position.z),zt.rotation.isQuaternion===!0?Vt.ref.setRotationFromQuaternion(zt.rotation):zt.rotation.isEuler===!0&&Vt.ref.setRotationFromEuler(zt.rotation),Vt.transform={position:zt.position,rotation:zt.rotation})}this.recalculateStructureFromNode(Vt)}}rotateNode(_e){const Dt=this.getNodeByGUID(_e);let Vt=null,Gt=null;for(let Ht=0;Ht<Dt.plugs.length;Ht++)if(!Gt&&!Dt.plugs[Ht].isOpen&&Dt.plugs[Ht].attachedPlug.isReceiverPlug){const Wt=Dt.plugs[Ht].attachedPlug.acceptedPlugTypes;Gt=Dt.plugs[Ht].attachedPlug;let qt=[];for(let Xt=Ht+1;Xt<Dt.plugs.length;Xt++)qt.push(Dt.plugs[Xt]);for(let Xt=0;Xt<Ht;Xt++)qt.push(Dt.plugs[Xt]);for(let Xt=0;Xt<qt.length;Xt++)for(let Kt=0;Kt<qt[Xt].connectsToPlugTypes.length;Kt++)Wt.includes(qt[Xt].connectsToPlugTypes[Kt])&&(Vt=qt[Xt])}if(!Vt)return;Dt.detachNodeFromReceiver();const{position:zt,rotation:jt}=this.findItemTransform({receiverPlug:Gt,incomingPlug:Vt});Dt.ref.position.set(zt.x,zt.y,zt.z),jt.isQuaternion===!0?Dt.ref.setRotationFromQuaternion(jt):jt.isEuler===!0&&Dt.ref.setRotationFromEuler(jt),Dt.transform={position:Dt.ref.position,rotation:jt},this.connectPlugs({receiverPlug:Gt,incomingPlug:Vt}),this.recalculateStructureFromNode(Dt)}async load(_e){this.resolvePlugConnections(_e),await this.respawnItems()}materialOverrideExists(){let _e=!1;return this.nodes.map(Dt=>{if(Dt.overrideVariant)return _e=!0,!0}),_e}async findGhostTransformForReplacement(_e,Dt){let Vt=[],Gt=[],zt=[];for(const Ht of Dt){if(Ht.skuID==_e)continue;const Wt=this.stores.attachmentStore.getState().attachmentSystem,qt=Ht.whichPlugAreWeAttachedTo(),Xt=Ht.whichPlugAreWeAttachedUsing(),Yt=new Node$1(this.stores,_e,null,Wt.globalVariants,Wt.globalGeometryVariants).getPlugByName(Xt.name);if(!Yt)continue;const Zt={incomingPlug:Yt,receiverPlug:qt},{position:Jt,rotation:nn}=this.findItemTransform(Zt);Jt&&nn&&(Gt.push({position:Jt,rotation:nn,incomingPlugName:Zt.incomingPlug.name,receiverPlugName:Zt.receiverPlug.name,incomingPlugGUID:Zt.incomingPlug.guid,receiverPlugGUID:Zt.receiverPlug.guid}),zt.push(Zt),Vt.push(Ht))}let jt={transforms:Gt,connectablePlugs:zt,newNodes:Vt};return jt=await this.stores.dynamicHookStore.getState().hookOnNewItemGhostsCollectedForReplacement(jt,this.stores.coreSceneStore.getState().CORE_API),jt}async findGhostTransforms(_e,Dt){const Vt=this.getOpenPlugs(),Gt=this.stores.coreSceneStore.getState().sceneSettings.comboPlugDistanceThreshold;if(Vt.length<=0)return{transforms:[]};const zt=this.stores.attachmentStore.getState().attachmentSystem,jt=this.stores.productDataStore.getState().productData,Ht=new Node$1(this.stores,_e,null,zt.globalVariants,zt.globalGeometryVariants),Wt=this.getConnectablePlugs(Ht,Vt);let qt=[];if(Wt.length<=0)return{transforms:[]};let Xt=[],Kt=[];const Yt=this.stores.assetStore.getState().assets.items[_e].proxy.data.scene;if(!Yt)return!1;let Zt=Yt.clone();for(let rn=0;rn<Wt.length;rn++){let Qt=Dt,{incomingPlug:en,receiverPlug:tn}=Wt[rn],sn=this.findItemTransform(Wt[rn]);if(!sn)continue;let{position:cn,rotation:un}=sn;if(!cn||!un)continue;Zt.position.set(cn.x,cn.y,cn.z),un.isQuaternion===!0?Zt.setRotationFromQuaternion(un):un.isEuler===!0&&Zt.setRotationFromEuler(un);let hn=[],dn=[];if(en.type=="comboPlug"){if(en.connectsToPlugTypes.length<=0)continue;const vn=en.connectsToPlugTypes[0];let _n=!1;if(Kt.map(Cn=>{_n===!0||Cn.length<=0||Cn.map(yn=>{_n===!0||yn.incomingPlug.guid!==en.guid||yn.incomingPlug.connectsToPlugTypes.includes(vn)&&(_n=!0)})}),_n===!0)continue;const An=en.node.plugs;let Tn=!0;if(An.map(Cn=>{if(Cn.type!=="comboPlug"||Cn.guid===en.guid||!Cn.connectsToPlugTypes.includes(vn))return;let yn=!1;if(Vt.map(Sn=>{if(tn.guid===Sn.guid||!Sn.acceptedPlugTypes.includes(vn)||!Sn.node.ref)return;let wn=new Vector3(0,0,0);const xn=Sn.node.ref.getObjectByName(""+Sn.name);if(!xn)return;xn.getWorldPosition(wn);let Rn=new Vector3(0,0,0);const Dn=Zt.getObjectByName(""+Cn.name);if(!Dn)return;Dn.getWorldPosition(Rn);const kn=wn.distanceTo(Rn);Math.abs(kn)<Gt&&(hn.push(tn.node.guid),hn.push(Sn.node.guid),dn.push({receiverPlug:Sn,incomingPlug:Cn}),yn=!0)}),yn==!1){Tn=!1;return}}),!Tn)continue}let pn=Qt;Array.isArray(Qt)===!0&&(pn=!1),hn.length>0&&(pn=!1,Array.isArray(Qt)===!0?hn.map(vn=>{Qt.push(vn)}):Qt=hn),jt[_e].hasOwnProperty("ignoreSpawningCollision")&&(pn=jt[_e].ignoreSpawningCollision),Wt[rn].receiverPlug.type=="unvisualizedPlug"&&(pn=!0),(pn?!1:this.isColliding(Ht.skuID,sn,Wt[rn].receiverPlug,Qt))||(Xt.push({position:cn,rotation:un,incomingPlugName:Wt[rn].incomingPlug.name,receiverPlugName:Wt[rn].receiverPlug.name,incomingPlugGUID:Wt[rn].incomingPlug.guid,receiverPlugGUID:Wt[rn].receiverPlug.guid}),qt.push(Wt[rn]),Kt.push(dn))}let Jt=[];for(let rn=0;rn<Xt.length;rn++)Jt.push(Ht);dispose3(Zt);let nn={transforms:Xt,newNodes:Jt,connectablePlugs:qt,comboPlugs:Kt};return nn=await this.stores.dynamicHookStore.getState().hookOnNewItemGhostsCollected(nn,this.stores.coreSceneStore.getState().CORE_API),nn}resolvePlugConnections(_e){for(let Dt=0;Dt<_e.length;Dt++)Object.keys(_e[Dt].plugs).map(Vt=>{let Gt=_e[Dt].plugs[Vt].guid,zt=this.getPlugInNodesByGUID(Gt);if(!zt||zt.attachedPlug)return;let jt=_e[Dt].plugs[Vt].attachedPlugGUID,Ht=this.getPlugInNodesByGUID(jt);Ht&&(Ht.attachedPlug||(zt.attachPlug(Ht,_e[Dt].plugs[Vt].isReceiverPlug),Ht.attachPlug(zt,!_e[Dt].plugs[Vt].isReceiverPlug)))});LOGGER.info({title:"RESOLVED PLUG CONNECTION: ",details:this})}async respawnItems(){let _e=[this.rootNode];for(let zt=0;zt<_e.length;zt++){let Ht=_e[zt].whichPlugsAreAttachedToUs();for(let Wt=0;Wt<Ht.length;Wt++){if(Ht[Wt].incomingPlug.type=="comboPlug"&&Ht[Wt].incomingPlug.connectsToPlugTypes.length>0&&!Ht[Wt].incomingPlug.comboPlugConnector)continue;let qt=this.findItemTransformForPreload(Ht[Wt],Ht[Wt].receiverPlug.node.transform);if(qt){const Xt=Ht[Wt].receiverPlug,Kt=Ht[Wt].incomingPlug.node,Yt=Xt.dependencySku===Kt.skuID;let Zt=!0;Yt&&(Zt=Xt.isDependencySkuInteractive===1,Kt.isDependent=!0,Kt.isInteractive=Zt,Xt.node.addMyDependenciesGUID(Kt.guid)),await this.stores.itemStore.getState().actions.addItemWithTransform(qt,Kt.skuID,Kt.guid,Zt)}else LOGGER.warn({title:"Problem finding plug transform! "+Ht[Wt].name});Ht[Wt].incomingPlug.node.transform=qt,_e.push(Ht[Wt].incomingPlug.node)}}const Dt=await this.stores.coreSceneStore.getState().CORE_API.getCartItemsAsync();this.stores.coreSceneStore.getState().CORE_API.fireEvent(this.stores.coreSceneStore.getState().CORE_API.EVENTS.SCENE.SavedConfiguration_Loaded,{...Dt}),this.stores.coreSceneStore.getState().actions.triggerAutoFocus(),this.stores.hotspotStore.getState().actions.checkHotspotHealth();const Vt=this.stores.coreSceneStore.getState().preconfigurationLoaded==!1&&this.stores.coreSceneStore.getState().sceneHasDefaultConfigurationID==!1,Gt=this.stores.coreSceneStore.getState().configurationLoaded==!1&&this.stores.coreSceneStore.getState().preconfigurationLoaded==!0&&this.stores.coreSceneStore.getState().configurationLoadedOnRestart==!0;if(Vt||Gt){let zt=Object.assign({},CONFIGURATOR_LOAD_FROM_PRECONFIG);zt.parameters={project_id:`${this.stores.coreSceneStore.getState().CORE_API.projectId}`,...Dt},this.stores.coreSceneStore.getState().CORE_API.sendAnalyticsEvent(zt)}}getPlugInNodesByGUID(_e){for(let Dt=0;Dt<this._nodes.length;Dt++){let Vt=this._nodes[Dt].getPlugByGUID(_e);if(Vt)return Vt}return null}export(){let _e=[];for(let Dt=0;Dt<this._nodes.length;Dt++){let Vt=this._nodes[Dt].export();Vt&&_e.push(Vt)}return _e}async clear(){return new Promise(async(_e,Dt)=>{!this._rootNode&&this._rootNode.isEndNode&&_e(!0);let Vt=null;const Gt=this._rootNode.whichNodesAreAttachedToUs();Gt.length>0&&(Vt=Gt[0]),this.#t=!0,this.stores.coreSceneStore.getState().CORE_API.coreWCRef.addEventListener(this.stores.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Scene_Cleared,zt=>_e(zt.data),{once:!0}),Vt?this.stores.coreSceneStore.getState().CORE_API.removeItemByGUID(Vt.guid,!0):(await wait(500),_e(!0))})}getNodeByGUID(_e){for(let Dt=0;Dt<this._nodes.length;Dt++)if(this._nodes[Dt].guid==_e)return this._nodes[Dt];return null}getPlugByGUID(_e){for(const Dt of this._nodes){const Vt=Dt.getPlugByGUID(_e);if(Vt)return Vt}return null}findItemTransformForPreload(_e,Dt){let{receiverPlug:Vt,incomingPlug:Gt}=_e,zt=Vt,jt=Gt;if(zt.node.skuID=="Root")return this.findItemTransformRoot(_e);let Ht=null,Wt=null,qt=new Object3D,Xt=this.stores.assetStore.getState().assets.items[zt.node.skuID].proxy.data.scene.clone();qt.add(Xt);let{position:Kt,rotation:Yt}=Dt;if(Xt.position.set(Kt.x,Kt.y,Kt.z),Yt.isQuaternion===!0?Xt.setRotationFromQuaternion(Yt):Yt.isEuler===!0&&Xt.setRotationFromEuler(Yt),Wt=Xt,!Wt||(Ht=Wt.getObjectByName(zt.name),!Ht))return;let Zt=new Vector3(0,0,0);Ht.getWorldPosition(Zt);let Jt=new Quaternion().identity();Ht.getWorldQuaternion(Jt);let nn=new Object3D;Ht.add(nn);let rn=this.stores.assetStore.getState().assets.items[jt.node.skuID].proxy.data.scene.clone();rn.position.set(Zt.x,Zt.y,Zt.z),rn.applyQuaternion(Jt);let Qt=new Vector3;Qt.copy(Xt.up).applyQuaternion(Wt.quaternion);let en=new Vector3;en.copy(rn.up).applyQuaternion(Jt),en.negate();let tn=new Quaternion().setFromUnitVectors(Qt,en);Qt.round(),en.round();let sn=Qt.dot(en);sn!==1&&sn!==-1&&rn.applyQuaternion(tn);let cn=rn.getObjectByName(jt.name),un=new Quaternion().identity();cn.getWorldQuaternion(un);let hn=new Vector3(0,1,0);hn.applyQuaternion(un);let dn=new Vector3(0,1,0);dn.applyQuaternion(Jt),dn.negate();let pn=new Quaternion().setFromUnitVectors(hn,dn);if(hn.round(),dn.round(),hn.dot(dn)!==-1)rn.applyQuaternion(pn);else{let An=new Vector3(0,1,0),Tn=dn.dot(An);if(Tn!==1&&Tn!==-1)rn.rotateOnAxis(An,Math.PI);else{let Cn=new Vector3(0,0,1),yn=dn.dot(Cn);if(yn!==1&&yn!==-1)rn.rotateOnAxis(Cn,Math.PI);else{let Sn=new Vector3(1,0,0),wn=dn.dot(Sn);wn!==1&&wn!==-1&&rn.rotateOnAxis(Sn,Math.PI)}}}let mn=rn.getObjectByName(jt.name),vn=new Vector3(mn.position.x,mn.position.y,mn.position.z);rn.translateX(-vn.x),rn.translateY(-vn.y),rn.translateZ(-vn.z);let _n=new Vector3(0,0,0);rn.getWorldPosition(_n);let En=new Quaternion().identity();return rn.getWorldQuaternion(En),rn=null,{position:_n,rotation:En}}findItemTransformRoot(_e){let{receiverPlug:Dt,incomingPlug:Vt}=_e,Gt=Vt;const zt=new Object3D;let jt=zt,Ht=new Vector3(0,0,0);jt.getWorldPosition(Ht);let Wt=new Quaternion().identity(),qt=new Object3D;qt.position.set(0,0,0),zt.add(qt);let Xt=this.stores.assetStore.getState().assets.items[Gt.node.skuID].proxy.data.scene.clone();qt.attach(Xt),Xt.translateX(Ht.x),Xt.translateY(Ht.y),Xt.translateZ(Ht.z);let Kt=Xt.getObjectByName(Gt.name),Yt=new Quaternion().identity();Kt&&Kt.getWorldQuaternion(Yt);const Zt=new Vector3(0,1,0);Zt.applyQuaternion(Yt);const Jt=new Vector3(0,1,0);Jt.applyQuaternion(Wt);const nn=Jt.angleTo(Zt),rn=new Vector3(0,0,0);rn.crossVectors(Jt,Zt),rn.round(),rn.length()!==0&&Xt.rotateOnAxis(rn,nn);let Qt=new Matrix4().extractRotation(Xt.matrixWorld),en=new Vector3(0,0,0);Kt&&en.set(Kt.position.x,Kt.position.y,Kt.position.z),en.applyMatrix4(Qt),Xt.translateX(-en.x),Xt.translateY(-en.y),Xt.translateZ(-en.z);let tn=new Vector3(0,0,0);Xt.getWorldPosition(tn);let sn=new Quaternion().identity();return Xt.getWorldQuaternion(sn),qt.remove(Xt),qt=null,Xt=null,{position:tn,rotation:sn}}findItemTransform(_e){let{receiverPlug:Dt,incomingPlug:Vt}=_e,Gt=Dt,zt=Vt;if(Gt.node.isRoot)return this.findItemTransformRoot(_e);const jt=Gt.node.transform;if(!jt)return;const Ht=this.stores.assetStore.getState().assets.items[Gt.node.skuID].proxy.data.scene.clone(),Wt=new Object3D;Wt.position.set(jt.position.x,jt.position.y,jt.position.z),jt.rotation.isQuaternion===!0?Wt.setRotationFromQuaternion(jt.rotation):jt.rotation.isEuler===!0&&Wt.setRotationFromEuler(jt.rotation),Wt.add(Ht);let qt=Wt.getObjectByName(""+Gt.name);if(!qt){LOGGER.error({title:"Plug: "+Gt.name+" doesn't exist in "+Gt.node.skuID});return}let Xt=new Vector3(0,1,0);qt.getWorldPosition(Xt);let Kt=new Quaternion().identity();qt.getWorldQuaternion(Kt);let Yt=this.stores.assetStore.getState().assets.items[zt.node.skuID].proxy.data.scene.clone();Yt.position.set(Xt.x,Xt.y,Xt.z),Yt.applyQuaternion(Kt);let Zt=new Vector3;Zt.copy(Ht.up).applyQuaternion(Wt.quaternion);let Jt=new Vector3;Jt.copy(Yt.up).applyQuaternion(Kt),Jt.negate();let nn=new Quaternion().setFromUnitVectors(Zt,Jt);Zt.round(),Jt.round();let rn=Zt.dot(Jt);rn!==1&&rn!==-1&&Yt.applyQuaternion(nn);let Qt=Yt.getObjectByName(zt.name);if(!Qt){LOGGER.error({title:"Plug: "+zt.name+" doesn't exist in "+zt.node.skuID});return}let en=new Quaternion().identity();Qt.getWorldQuaternion(en);let tn=new Vector3(0,1,0);tn.applyQuaternion(en);let sn=new Vector3(0,1,0);sn.applyQuaternion(Kt),sn.negate();let cn=new Quaternion().setFromUnitVectors(tn,sn);if(tn.round(),sn.round(),tn.dot(sn)!==-1)Yt.applyQuaternion(cn);else{let mn=new Vector3(0,1,0),vn=sn.dot(mn);if(vn!==1&&vn!==-1)Yt.rotateOnAxis(mn,Math.PI);else{let _n=new Vector3(0,0,1),En=sn.dot(_n);if(En!==1&&En!==-1)Yt.rotateOnAxis(_n,Math.PI);else{let An=new Vector3(1,0,0),Tn=sn.dot(An);Tn!==1&&Tn!==-1&&Yt.rotateOnAxis(An,Math.PI)}}}let hn=Yt.getObjectByName(zt.name),dn=new Vector3(hn.position.x,hn.position.y,hn.position.z);Yt.translateX(-dn.x),Yt.translateY(-dn.y),Yt.translateZ(-dn.z);let pn=new Vector3(0,0,0);Yt.getWorldPosition(pn);let fn=new Quaternion().identity();return Yt.getWorldQuaternion(fn),Wt.remove(Ht),Yt=null,{position:pn,rotation:fn}}getSpawningRequirementForSkuID(_e){let Dt=[];const Vt=this.stores.productDataStore.getState().productData,Gt=Vt[_e];if(!Gt)return Dt;const zt=[];return Gt.plugs.map(jt=>{jt.connectsToPlugTypes.map(Ht=>{zt.push(Ht)})}),Object.keys(Vt).map(jt=>{for(let Ht=0;Ht<Vt[jt].plugs.length;Ht++){const Wt=Vt[jt].plugs[Ht].acceptedPlugTypes;for(let qt=0;qt<Wt.length;qt++)zt.map(Xt=>{Xt==Wt[qt]&&!Dt.includes(jt)&&Dt.push(jt)})}}),Dt}getConnectablePlugs(_e,Dt){let Vt=[],Gt=_e.getOpenPlugsWeCanAttachFrom();for(let zt=0;zt<Gt.length;zt++)for(let jt=0;jt<Dt.length;jt++){let Ht=!1;for(let qt=0;qt<Vt.length;qt++)if(Vt[qt].receiverPlug.guid==Dt[jt].guid&&Vt[qt].incomingPlug.type!="comboPlug"){Ht=!0;break}if(Ht)continue;Gt[zt].canAttachToPlug(Dt[jt])&&Vt.push({incomingPlug:Gt[zt],receiverPlug:Dt[jt]})}return Vt}getOpenPlugs(){let _e=[];return this._nodes.map(Dt=>{if(Dt.dragging===!0)return;let Vt=Dt.getOpenPlugsFromNode();_e=_e.concat(Vt)}),_e}checkCollisionForGUID(_e,Dt=[]){if(this.stores.coreSceneStore.getState().sceneSettings.disableCollider)return!1;const Vt=this.stores.itemStore.getState().itemsSpawned,Gt=this.stores.productDataStore.getState().productData;if(!Vt[_e])return!1;const jt=this.getNodeByGUID(_e);if(!jt||!jt.ref||Gt[jt.skuID].disableCollider)return!1;let Ht=new Vector3;jt.ref.getWorldPosition(Ht);let Wt=new Quaternion;jt.ref.getWorldQuaternion(Wt);const qt={position:Ht,rotation:Wt},Xt=jt.whichPlugAreWeAttachedTo();return Xt==null?!1:this.isColliding(jt.skuID,qt,Xt,Dt)}isColliding(_e,{position:Dt,rotation:Vt},Gt,zt=[]){const jt=this.stores.assetStore.getState().assets.items[_e].proxy.data.scene,Ht=this.stores.productDataStore.getState().productData;if(!jt)return!1;let Wt=jt.clone();Wt.position.set(Dt.x,Dt.y,Dt.z),Vt.isQuaternion===!0?Wt.setRotationFromQuaternion(Vt):Vt.isEuler===!0&&Wt.setRotationFromEuler(Vt);let qt=new Box3().setFromObject(Wt),Xt=new Vector3;qt.getCenter(Xt);let Kt=new Object3D;Kt.position.set(Xt.x,Xt.y,Xt.z),Kt.attach(Wt),Kt.scale.set(this._boundingBoxLeeway,this._boundingBoxLeeway,this._boundingBoxLeeway),qt=new Box3().setFromObject(Kt);const Yt=[];if(this._nodes.forEach(Jt=>{if(Gt.node.guid==Jt.guid||Array.isArray(zt)===!0&&zt.includes(Jt.guid)||!Jt.ref||(Ht[Jt.skuID].hasOwnProperty("disableCollider")?Ht[Jt.skuID].disableCollider:this.stores.coreSceneStore.getState().sceneSettings.disableCollider))return;const nn=Jt.ref.getObjectByName("GRP_ProxyMesh");nn&&Yt.push(nn)}),Yt.length<=0)return!1;let Zt=!1;return Yt.forEach(Jt=>{if(Zt)return;let nn=new Box3().setFromObject(Jt);if(qt.intersectsBox(nn)){Zt=!0;return}}),Kt.clear(),Wt=null,Kt=null,qt=null,Zt}boxOverlapPercent(_e,Dt){if(_e.containsBox(Dt)||Dt.containsBox(_e))return 100;if(!(_e.min.x<Dt.max.x||Dt.min.x<_e.max.x))return 0;let Vt=new Vector3(0,0,0);_e.getSize(Vt),Vt.x*Vt.y*Vt.z;let Gt=new Vector3(0,0,0);Dt.getSize(Gt),Gt.x*Gt.y*Gt.z}checkInsideOutCollision(_e,Dt,Vt){let Gt=Dt.position.clone(),zt=new Float32Array(Vt.attributes.position.array),jt=zt.length/3;for(let Ht=0;Ht<jt;Ht++){let Wt=new Vector3(zt[Ht*3],zt[Ht*3+1],zt[Ht*3+2]),qt=Wt.add(Dt.position);qt=Wt.applyQuaternion(Dt.quaternion);let Xt=qt.sub(Dt.position);const Yt=new Raycaster(Gt,Xt.clone().normalize()).intersectObjects(_e),Zt=Yt.length>0,Jt=Yt[0].distance<Xt.length();if(Zt&&Jt)return!0}return!1}addNode(_e){this._nodes.push(_e)}getFirstNodeByCategoryID(_e){for(let Dt=0;Dt<this._nodes.length;Dt++)if(this._nodes[Dt]._categoryID==_e)return this._nodes[Dt];return null}getNodesBySKUID(_e){let Dt=[];for(let Vt=0;Vt<this._nodes.length;Vt++)this._nodes[Vt].skuID==_e&&Dt.push(this._nodes[Vt]);return Dt}getNodesByCategoryID(_e){let Dt=[];for(let Vt=0;Vt<this._nodes.length;Vt++)this._nodes[Vt]._categoryID==_e&&Dt.push(this._nodes[Vt]);return Dt}async connectPlugs({incomingPlug:_e,receiverPlug:Dt}){_e.attachPlug(Dt,!1),Dt.attachPlug(_e,!0),await this.stores.attachmentStore.getState().actions.toggleStructureUpdated()}removeNodeByGUID(_e){for(let Dt=0;Dt<this._nodes.length;Dt++)if(this._nodes[Dt].guid==_e){this._nodes[Dt].removeNode(),this._nodes.splice(Dt,1);break}this._nodes.length==1&&this.#t&&this.stores.coreSceneStore.getState().CORE_API.fireEvent(this.stores.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Scene_Cleared,!0),this.stores.attachmentStore.getState().actions.updateFittingSkuIds(),this.stores.attachmentStore.getState().actions.toggleStructureUpdated()}async removeNodeFromStructure(_e){for(let Dt=0;Dt<this._nodes.length;Dt++)if(this._nodes[Dt].guid==_e.guid){this._nodes.splice(Dt,1);break}await this.stores.attachmentStore.getState().actions.toggleStructureUpdated()}}class AttachmentSystem{constructor(_e){this._globalVariants={},this._globalGeometryVariants={},this.stores=_e,this.stores.productDataStore.getState().categoryData.geometryVariants.map(Dt=>{this._globalGeometryVariants[Dt.id]=Dt.defaultVariant}),this.stores.productDataStore.getState().categoryData.color.map(Dt=>{this._globalVariants[Dt.id]=Dt.defaultLook}),this._currentStructure=new Structure(this.stores,null,this._globalVariants,this._globalGeometryVariants);for(const[Dt,Vt]of Object.entries(this._globalVariants))this.switchGlobalVariant(Dt,Vt);for(const[Dt,Vt]of Object.entries(this._globalGeometryVariants))this.switchGlobalGeometryVariant(Dt,Vt)}get globalGeometryVariants(){return this._globalGeometryVariants}get globalVariants(){return this._globalVariants}get currentStructure(){return this._currentStructure}getClientProductId(_e,Dt){let Vt;return Vt=this.stores.productDataStore.getState()?.productData[_e]?.lookDetails[Dt],Vt?.clientProductId?Vt?.clientProductId:""}getCartItems(){let _e=[];const Dt=this.stores.inventoryStore.getState().inventoryData;let Vt=!1;this.currentStructure.nodes.map(Ht=>{if(Ht.skuID=="Root"||Ht.ignoreInCart===!0)return;let Wt=!1;if(_e.map(Kt=>{const Yt=Dt[Kt.skuID];if(Kt.skuID==Ht.skuID&&Kt.currentVariant==Ht.currentVariant){Kt.count++,Kt.countAvailable=Yt[Ht.currentVariant].countAvailable,Kt.countUnavailable=Yt[Ht.currentVariant].countUnavailable,Kt.price=Ht.price*Kt.count,Kt.compareAtPrice=Ht.compareAtPrice*Kt.count,Wt=!0;return}}),Wt===!0)return;let qt={};qt.skuID=Ht.skuID,qt.currentVariant=Ht.currentVariant,qt.clientProductId=this.getClientProductId(qt.skuID,qt.currentVariant),qt.count=1;const Xt=Dt[qt.skuID];qt.price=Ht.price,qt.compareAtPrice=Ht.compareAtPrice*qt.count,Ht.compareAtPrice>0&&(Vt=!0),qt.countAvailable=Xt[Ht.currentVariant].countAvailable,qt.countUnavailable=Xt[Ht.currentVariant].countUnavailable,_e.push(qt)});let Gt=0,zt=0;for(const Ht of _e)Gt=Gt+Ht.price,Vt&&(zt=zt+(Ht.compareAtPrice==0?Ht.price:Ht.compareAtPrice));return{cartItems:_e,details:{total:Gt.toFixed(2),compareAtTotal:zt}}}async getCartItemsAsync(){let _e=[];const Dt=this.stores.inventoryStore.getState().inventoryData;let Vt=!1;this.currentStructure.nodes.map(Ht=>{if(Ht.skuID=="Root"||Ht.ignoreInCart===!0)return;let Wt=!1;if(_e.map(Kt=>{const Yt=Dt[Kt.skuID];if(Kt.skuID==Ht.skuID&&Kt.currentVariant==Ht.currentVariant){Kt.count++,Kt.countAvailable=Yt[Ht.currentVariant].countAvailable,Kt.countUnavailable=Yt[Ht.currentVariant].countUnavailable,Kt.price=Ht.price*Kt.count,Kt.compareAtPrice=Ht.compareAtPrice*Kt.count,Wt=!0;return}}),Wt===!0)return;let qt={};qt.skuID=Ht.skuID,qt.currentVariant=Ht.currentVariant,qt.clientProductId=this.getClientProductId(qt.skuID,qt.currentVariant),qt.count=1;const Xt=Dt[qt.skuID];qt.price=Ht.price,qt.compareAtPrice=Ht.compareAtPrice*qt.count,qt.compareAtPrice>0&&(Vt=!0),qt.countAvailable=Xt[Ht.currentVariant].countAvailable,qt.countUnavailable=Xt[Ht.currentVariant].countUnavailable,_e.push(qt)}),_e=await this.stores.dynamicHookStore.getState().hookOnCartItemsCollected(_e,this.stores.coreSceneStore.getState().CORE_API);let Gt=0,zt=0;for(const Ht of _e)Gt=Gt+Ht.price,Vt&&(zt=zt+(Ht.compareAtPrice==0?Ht.price:Ht.compareAtPrice));return{cartItems:_e,details:{total:Gt.toFixed(2),compareAtTotal:zt.toFixed(2)}}}async getFittingSKUIDs(){if(!this.currentStructure)return[];const{productData:_e}=this.stores.productDataStore.getState(),{sceneSettings:Dt}=this.stores.coreSceneStore.getState(),{draggableUI:Vt,ignoreSpawningCollision:Gt}=Dt;if(!this.currentStructure)return[];const{openPlugTypes:zt,closedPlugTypes:jt,existingSkuids:Ht}=this.analyzeCurrentStructure();if(zt.size===0&&jt.size===0)return[];const Wt=this.findFittingSkuids(_e,zt,jt,Ht,Vt);return this.filterNonBlockedSkuids(Wt,_e,Gt)}analyzeCurrentStructure(){const _e=this.currentStructure.nodes,Dt=new Set,Vt=new Set,Gt=new Set;for(const zt of _e){Gt.add(zt.skuID);for(const jt of zt.plugs)jt.isOpen?jt.acceptedPlugTypes.forEach(Ht=>Dt.add(Ht)):jt.attachedPlug.node.replace&&jt.acceptedPlugTypes.forEach(Ht=>Vt.add(Ht))}return{openPlugTypes:Dt,closedPlugTypes:Vt,existingSkuids:Gt}}findFittingSkuids(_e,Dt,Vt,Gt,zt){const jt=new Set;for(const[Ht,Wt]of Object.entries(_e))if(Wt.plugs)for(const qt of Wt.plugs){for(const Xt of qt.connectsToPlugTypes)if((this.isClosedPlugFitting(Ht,Wt,Xt,Vt,Gt,zt)||this.isOpenPlugFitting(Wt,Xt,Dt))&&jt.add(Ht),jt.has(Ht))break;if(jt.has(Ht))break}return jt}isClosedPlugFitting(_e,Dt,Vt,Gt,zt,jt){if(!Gt.has(Vt)||!jt&&zt.has(_e))return!1;const Ht=this.currentStructure.getNodesByCategoryID(Dt.categoryID);for(const Wt of Ht)if(Wt.skuID!==_e&&this.isNodeCompatible(Wt,Dt))return!0;return!1}isNodeCompatible(_e,Dt){let Vt=!1;for(const Gt of _e.plugs)if(!Gt.isOpen&&Gt.isReceiverPlug&&(Vt=!0,this.isPlugCompatible(Gt,Dt.plugs)))return!0;return!Vt}isPlugCompatible(_e,Dt){return Dt.some(Vt=>Vt.name===_e.name&&_e.attachedPlug.connectsToPlugTypes.some(Gt=>Vt.acceptedPlugTypes.includes(Gt)))}isOpenPlugFitting(_e,Dt,Vt){if(!Vt.has(Dt))return!1;const Gt=this.currentStructure.getFirstNodeByCategoryID(_e.categoryID);return!Gt||!Gt.replace}async filterNonBlockedSkuids(_e,Dt,Vt){const Gt=[];for(const zt of _e)if(Dt[zt].replace)Gt.push(zt);else{const jt=await this.currentStructure.findGhostTransforms(zt,Vt);jt&&jt.transforms.length>0&&Gt.push(zt)}return Gt}async removeAllVariantOverrides(){let _e=this._currentStructure.nodes,Dt=this.stores.productDataStore.getState().productData,Vt=this.stores.itemStore.getState().itemsSpawned;return await _e.map(async Gt=>{if(!Gt.overrideVariant||(Gt.overrideVariant=null,!Dt[Gt.skuID].looks))return;let zt=null;Object.keys(this._globalVariants).map(jt=>{Dt[Gt.skuID].looks.includes(this._globalVariants[jt])&&zt==null&&(zt=this._globalVariants[jt])}),zt&&await this.stores.itemStore.getState().actions.switchToVariant(Vt[Gt.guid].itemData,zt)}),this.stores.coreSceneStore.getState().CORE_API.alert({alertMsg:"Changes to individual items in the scene have been cleared",alertTime:6e3,alertType:"info",alertLabel:"Overrides Removed",alertId:"overridesRemoved"}),this.stores.coreSceneStore.getState().CORE_API.fireEvent(this.stores.coreSceneStore.getState().CORE_API.EVENTS.SCENE.MaterialOverrides_Exists,!1),!0}async switchGlobalGeometryVariant(_e,Dt){const Gt=this.stores.productDataStore.getState().categoryData.geometryVariants;let zt=null;if(Gt.map(Yt=>{Yt.id==_e&&(zt=Yt)}),!zt)return;const jt=zt.productsInCategory,Wt=zt.variants[Dt].productsToSwitch,qt=this.stores.itemStore.getState().itemsSpawned;let Xt=this.stores.productDataStore.getState().categoryData;Wt.map(Yt=>{jt.map(Zt=>{let Jt=!1;Zt.products.map(nn=>{Yt==nn&&(Jt=!0)}),Jt&&Xt.build.map(nn=>{Zt.products.map(rn=>{nn.skus.map((Qt,en)=>{nn.skus[en]==rn&&(nn.skus[en]=Yt)})})})})}),this._currentStructure.nodes.map(Yt=>{jt.map(Zt=>{Zt.products.map(Jt=>{Yt.skuID==Jt&&Yt.ref!==null&&Zt.products.map(nn=>{Wt.map(rn=>{if(rn==nn){const Qt=this.stores.productDataStore.getState().actions.getProductDataById(rn);let en=Qt.geometriesToHide;Yt.plugs.map(sn=>{!sn.isOpen&&sn.attachedPlug&&sn.type=="weighted_hider"&&sn.attachedPlug.weight>sn.weight&&(en=en.concat(sn.affectedNodes))}),Yt.showNodes(Qt.geometriesToShow),Yt.hideNodes(en),Yt.skuID=rn;const tn=qt[Yt.guid];if(tn&&tn.itemData){Object.keys(Qt).map(cn=>{tn.itemData[cn]=Qt[cn]});const sn=this.stores.assetStore.getState().assets.items[rn];sn&&sn.proxy.isLoaded&&(tn.itemData.proxyScene=sn.proxy.data.scene)}Yt.resetInStock(),Yt.updatePricing()}})})})})}),this.stores.itemStore.setState({itemsSpawned:{...this.stores.itemStore.getState().itemsSpawned}}),this._globalGeometryVariants[_e]=Dt,this.stores.hotspotStore.getState().actions.checkHotspotHealth(),this.stores.inventoryStore.getState().actions.refreshInventory(qt),this.stores.coreSceneStore.getState().actions.triggerAutoFocus(),this.stores.productDataStore.setState({categoryData:Xt}),this.stores.coreSceneStore.getState().CORE_API.fireEvent(this.stores.coreSceneStore.getState().CORE_API.EVENTS.SCENE.CategoryData_Updated,Xt),this.stores.coreSceneStore.getState().CORE_API.fireEvent(this.stores.coreSceneStore.getState().CORE_API.EVENTS.SCENE.GlobalGeometryVariant_Updated,this._globalGeometryVariants);const Kt=await this.getCartItemsAsync();Kt&&this.stores.coreSceneStore.getState().CORE_API.fireEvent(this.stores.coreSceneStore.getState().CORE_API.EVENTS.SCENE.CartItems_Updated,Kt)}async switchGlobalVariant(_e,Dt){this._globalVariants[_e]=Dt;const Vt=this.stores.itemStore.getState().actions;let Gt=this.stores.itemStore.getState().itemsSpawned;for(let Wt=0;Wt<Object.keys(Gt).length;Wt++){let qt=Gt[Object.keys(Gt)[Wt]];if(qt.itemData.looks&&qt.itemData.looks.includes(Dt)){let Xt=this._currentStructure.getNodeByGUID(qt.itemData.guid);Xt&&!Xt.overrideVariant&&await Vt.switchToVariant(qt.itemData,Dt)}}const zt=this.stores.productDataStore.getState().lookData;this.stores.lightStore.getState().actions.processLookEnvMapOverride(Dt);const jt=_e;Object.keys(Gt).length>0&&this.stores.coreSceneStore.getState().CORE_API.alert({alertMsg:jt.charAt(0).toUpperCase()+jt.slice(1)+" was successfully switched to "+zt[Dt].label+".",alertTime:3e3,alertType:"success",alertLabel:`${jt} Changed`,alertId:"materialVariantChanged"}),this.stores.coreSceneStore.getState().CORE_API.fireEvent(this.stores.coreSceneStore.getState().CORE_API.EVENTS.SCENE.GlobalVariant_Updated,this._globalVariants),this.stores.itemStore.setState({variantChangeAlert:!this.stores.itemStore.getState().variantChangeAlert});const Ht=await this.getCartItemsAsync();Ht&&this.stores.coreSceneStore.getState().CORE_API.fireEvent(this.stores.coreSceneStore.getState().CORE_API.EVENTS.SCENE.CartItems_Updated,Ht)}async#t(_e){if(!_e)return;LOGGER.info({title:"Structure to load",details:_e}),delete this._currentStructure,this._globalVariants={..._e.globalVariants},this._globalGeometryVariants=_e.globalGeometryVariants?{..._e.globalGeometryVariants}:{};const Dt=[..._e.structure];this._currentStructure=new Structure(this.stores,Dt,this._globalVariants,this._globalGeometryVariants);for(const[Vt,Gt]of Object.entries(this._globalVariants))this.switchGlobalVariant(Vt,Gt);for(const[Vt,Gt]of Object.entries(this._globalGeometryVariants))this.switchGlobalGeometryVariant(Vt,Gt);LOGGER.info({title:"Structure Loading..."}),await this._currentStructure.load(Dt),LOGGER.info({title:"Structure Loaded."})}async loadStructure(_e){if(!_e)return;this.stores.coreSceneStore.getState().CORE_API.fireEvent(this.stores.coreSceneStore.getState().CORE_API.EVENTS.UI.PreloadScreen_Show),this.stores.coreSceneStore.setState({configurationLoaded:!1}),await wait(500),await this._currentStructure.clear(),await this.#t(_e),this.stores.coreSceneStore.getState().preconfigurationLoaded?this.stores.coreSceneStore.getState().CORE_API.fireEvent(this.stores.coreSceneStore.getState().CORE_API.EVENTS.UI.PreloadScreen_Hide):this.stores.coreSceneStore.setState({preconfigurationLoaded:!0}),this.stores.coreSceneStore.getState().configurationLoadedOnRestart||this.stores.coreSceneStore.setState({configurationLoadedOnRestart:!0}),this.stores.coreSceneStore.setState({configurationLoaded:!0}),await this.stores.attachmentStore.getState().actions.toggleStructureUpdated();const Dt=this.stores.itemStore.getState().itemsSpawned;this.stores.coreSceneStore.getState().CORE_API.fireEvent(this.stores.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Items_Updated,{itemsSpawned:Dt}),this.stores.inventoryStore.getState().actions.refreshInventory(Dt),await this.stores.attachmentStore.getState().actions.updateFittingSkuIds()}export(){return{experienceId:this.stores.coreSceneStore.getState().CORE_API.experienceId,structure:this._currentStructure.export(),globalVariants:this._globalVariants,globalGeometryVariants:this._globalGeometryVariants}}async clear(){this.stores.coreSceneStore.getState().CORE_API.fireEvent(this.stores.coreSceneStore.getState().CORE_API.EVENTS.UI.PreloadScreen_Show),await this._currentStructure.clear(),this.stores.coreSceneStore.getState().CORE_API.fireEvent(this.stores.coreSceneStore.getState().CORE_API.EVENTS.UI.PreloadScreen_Hide)}async restart(){LOGGER.warn({title:"Restarting the Scene!!"}),this.stores.itemStore.getState().selectedItemData&&this.stores.itemStore.getState().actions.deselectItem();const _e=this.stores.attachmentStore.getState().defaultConfig;this.stores.coreSceneStore.setState({configurationLoaded:!1,configurationLoadedOnRestart:!1}),this.stores.coreSceneStore.getState().CORE_API.fireEvent(this.stores.coreSceneStore.getState().CORE_API.EVENTS.UI.PreloadScreen_Show),await wait(500),await this._currentStructure.clear(),await this.#t(_e),await this.stores.attachmentStore.getState().actions.toggleStructureUpdated(),this.stores.coreSceneStore.setState({configurationLoaded:!0,configurationLoadedOnRestart:!0}),this.stores.coreSceneStore.getState().CORE_API.fireEvent(this.stores.coreSceneStore.getState().CORE_API.EVENTS.UI.PreloadScreen_Hide);const Dt=this.stores.itemStore.getState().itemsSpawned;this.stores.coreSceneStore.getState().CORE_API.fireEvent(this.stores.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Items_Updated,{itemsSpawned:Dt}),this.stores.inventoryStore.getState().actions.refreshInventory(Dt),await this.stores.attachmentStore.getState().actions.updateFittingSkuIds()}}const createAttachmentStore=kt=>{const _e=attachmentStoreCreator();return _e.setState({stores:kt}),_e},attachmentStoreCreator=()=>create((kt,_e)=>({stores:null,attachmentSystem:null,defaultConfig:null,structureUpdated:!1,colliderMeshRef:null,placeholderRef:null,draggingItem:null,snappingThreshold:.5,actions:{initializeAttachmentSystem:async Dt=>{const{actions:Vt,defaultConfig:Gt}=_e();LOGGER.info({title:"Initializing Attachment System!"});const zt=await new AttachmentSystem(Dt);kt({attachmentSystem:zt}),await Vt.updateFittingSkuIds(),await Vt.toggleStructureUpdated()},loadSavedStructureFromConfigID:async Dt=>{const{stores:Vt}=_e();LOGGER.info({title:"Fetching Structure Using ConfigID!"});let Gt="";Dt.length==20&&(Gt=FETCH_CONFIG_ENDPOINT_FB+Dt);let zt=null;return Gt!=""?zt=await getJSONFromEndpoint(Gt):zt=await Vt.nexusApiInstance.getExperienceSaveAndShare(Vt.experienceId,Dt),zt.success===!1?null:Dt.length==20?zt.data:zt.payload.save_data},loadDefaultStructure:async()=>{const{actions:Dt,defaultConfig:Vt}=_e();LOGGER.info({title:"Loading Default Structure!"}),await Dt.loadStructure(Vt)},updateFittingSkuIds:async()=>{const{stores:Dt,attachmentSystem:Vt}=_e();if(!Dt.coreSceneStore.getState().preconfigurationLoaded||!Dt.coreSceneStore.getState().configurationLoaded)return;const Gt=await Vt.getFittingSKUIDs();Gt&&(Dt.itemStore.setState({fittingSkuIds:[...Gt]}),Dt.coreSceneStore.getState().CORE_API.fireEvent(Dt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.FittingSkuIds_Updated,{skuids:Gt}))},toggleStructureUpdated:async()=>{const{attachmentSystem:Dt,stores:Vt}=_e();if(kt(zt=>({structureUpdated:!zt.structureUpdated})),!Vt.coreSceneStore.getState().preconfigurationLoaded||!Vt.coreSceneStore.getState().configurationLoaded)return;Vt.coreSceneStore.getState().CORE_API.fireEvent(Vt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.ReplaceableCategory_Updated,Dt.currentStructure.getCurrentItemsInReplaceableCategory());const Gt=await Dt.getCartItemsAsync();Gt&&Vt.coreSceneStore.getState().CORE_API.fireEvent(Vt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.CartItems_Updated,Gt)},loadStructure:async Dt=>{const{attachmentSystem:Vt,stores:Gt}=_e();LOGGER.info({title:"Loading Structure!"}),Vt&&Gt.coreSceneStore.getState().configurationLoaded!==!1&&await Vt.loadStructure(Dt)},export:()=>{const{attachmentSystem:Dt}=_e();if(Dt)return Dt.export()}}})),createInfoStore=kt=>{const _e=infoStoreCreator();return _e.setState({stores:kt}),_e},infoStoreCreator=()=>create((kt,_e)=>({stores:null,infoObject:{},populateInfoObject:Dt=>{kt(Vt=>({infoObject:Dt}))},infoModalOpen:!1,updateInfoModalOpen:Dt=>{kt(Vt=>({infoModalOpen:Dt}))}})),createUIHotspotStore=kt=>{const _e=uiHotspotStoreCreator();return _e.setState({stores:kt}),_e},uiHotspotStoreCreator=()=>create((kt,_e)=>({stores:null,activeHotspotData:null,activeFeatureID:"",actions:{enterHotspotInFeaturesTab(Vt){const{stores:Gt}=_e();Gt.uiSceneStore.getState().sideMenuState!==2&&Gt.uiSceneStore.setState({sideMenuState:2}),kt({activeFeatureID:Vt})},exitHotspot(){kt({activeFeatureID:null})}}})),createColorStore=kt=>{const _e=colorStoreCreator();return _e.setState({stores:kt}),_e},colorStoreCreator=()=>create((kt,_e)=>({stores:null,allActiveVariants:{},allActiveGeometryVariants:{}})),arrayWithoutElementAtIndex=function(kt,_e){return kt.filter(function(Dt,Vt){return _e!==Vt})},updateQuantityAtIndex=function(kt,_e,Dt){let Vt=kt.slice();return Vt[_e].quantity=Dt,Vt},createCartStore=kt=>{const _e=cartStoreCreator();return _e.setState({stores:kt}),_e},cartStoreCreator=()=>create((kt,_e)=>({stores:null,cart:[],cartTotalPrice:0,cartTotalCompareAtPrice:0,deleteCartItem:Dt=>{kt(Vt=>({cart:arrayWithoutElementAtIndex(Vt.cart,Dt)}))},addToCart:Dt=>{kt(Vt=>({cart:[...Vt.cart,Dt]}))},updateQuantity:(Dt,Vt)=>{kt(Gt=>({cart:updateQuantityAtIndex(Gt.cart,Dt,Vt)}))},previewCartModalOpen:!1,togglePreviewCartModal:()=>{const{previewCartModalOpen:Dt,stores:Vt}=_e();Dt===!0?(Vt.uiSceneStore.getState().CORE_API.reviewCartHidden(),kt({previewCartModalOpen:!1,previewCartMinimized:!1})):(Vt.uiSceneStore.getState().CORE_API.reviewCartShown(),kt({previewCartModalOpen:!0}))},previewCartMinimized:!1,togglePreviewCartMinimized:()=>{const{previewCartMinimized:Dt,stores:Vt}=_e(),Gt=!Dt;kt({previewCartMinimized:Gt}),Vt&&Vt.uiSceneStore&&Vt.uiSceneStore.getState().setSideMenuOpen(!Gt)},actions:{setCartTotalPrice:(Dt,Vt)=>{kt(()=>({cartTotalPrice:Dt,cartTotalCompareAtPrice:Vt}))}}})),createLightStore=kt=>{const _e=lightStoreCreator();return _e.setState({stores:kt}),_e},lightStoreCreator=()=>create((kt,_e)=>({stores:null,defaultEnvMapUrl:"<@generic-project@>/env-map/neutral.hdr",envMapUrl:"",actions:{setEnvLightMap:Dt=>{kt(Vt=>({envMapUrl:Dt}))},processLookEnvMapOverride:Dt=>{const{envMapUrl:Vt,defaultEnvMapUrl:Gt,actions:zt,stores:jt}=_e(),Ht=jt.productDataStore.getState().lookData[Dt],Wt=Ht?.envMapOverride;if(!Ht||!Wt){zt.setEnvLightMap(Gt);return}if(Wt===Vt){LOGGER.info({title:`New Env Map Url is the same as the current ${Wt}`});return}zt.setEnvLightMap(Wt)}}})),createHotspotStore=kt=>{const _e=hotspotStoreCreator();return _e.setState({stores:kt}),_e},hotspotStoreCreator=()=>create((kt,_e)=>({stores:null,activeHotspotData:null,lastActiveHotspotData:null,isAnyHotspotActive:!1,hotspotsVisibility:!1,hotspotsTempVisibility:!0,hotspotsHealthCheck:!0,hotspotsSpawned:{},visitedHotspotsID:[],hotspotSpawnedForCategoryIDs:[],actions:{clearAllHotspots:()=>kt({isAnyHotspotActive:!1,activeHotspotData:null,lastActiveHotspotData:null,hotspotsSpawned:{}}),removeHotspotForItem(Dt){const{hotspotsSpawned:Vt}=_e();Object.keys(Vt).map(Gt=>{Vt[Gt].itemData.guid==Dt.itemData.guid&&delete Vt[Gt]}),kt({hotspotsSpawned:{...Vt}})},checkHotspotHealth(){const{hotspotsHealthCheck:Dt}=_e();kt({hotspotsHealthCheck:!Dt})},toggleHotspotVisibility(){const{hotspotsVisibility:Dt}=_e();kt({hotspotsVisibility:!Dt})},switchHotspotsVisibility(Dt,Vt=!1){kt(Vt===!0?{hotspotsTempVisibility:Dt}:{hotspotsVisibility:Dt})},clickHotspot(Dt,Vt,Gt,zt=!1){const{activeHotspotData:jt,stores:Ht}=_e();kt({lastActiveHotspotData:jt}),hotspotEnter(Ht,Dt,Vt,Gt);let qt=Ht.itemStore.getState().itemsSpawned[Gt].itemData.skuID;zt===!1&&(Ht.coreSceneStore.getState().CORE_API.fireEvent(Ht.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Hotspot_Enter,{hotspotAbsID:generateHotspotAbsoluteID(qt,Dt),hotspot:jt}),Ht.coreSceneStore.getState().CORE_API.fireEvent(Ht.coreSceneStore.getState().CORE_API.EVENTS.UI.UtilityMenu_Hide))},exitHotspot(Dt=!1){const{activeHotspotData:Vt,isAnyHotspotActive:Gt,stores:zt}=_e();if(Gt&&kt({isAnyHotspotActive:!1}),!!Vt&&(kt({lastActiveHotspotData:Vt}),hotspotExit(zt),Dt===!1)){const jt=Math.round((performance.now()-_e().lastActiveHotspotData.hotspotEnterTime)/1e3);zt.coreSceneStore.getState().CORE_API.fireEvent(zt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Hotspot_Exit,{hotspot:_e().lastActiveHotspotData,hotspotTimeSpent:jt}),zt.coreSceneStore.getState().CORE_API.fireEvent(zt.coreSceneStore.getState().CORE_API.EVENTS.UI.UtilityMenu_Show)}}}}));function hotspotExit(kt){kt.hotspotStore.setState({activeHotspotData:null}),kt.coreSceneStore.getState().actions.triggerAutoFocus()}function hotspotEnter(kt,_e,Dt,Vt){let Gt=kt.hotspotStore.getState();const jt=kt.itemStore.getState().itemsSpawned;let Ht=Gt.visitedHotspotsID;const Wt=jt[Vt].hotspotsData.filter(un=>un.hotspotID==_e);if(!Wt||Wt.length<=0)return;const qt=Wt[0],Xt=jt[Vt].itemData.skuID+"_"+_e;let Yt=kt.attachmentStore.getState().attachmentSystem.currentStructure.getNodeByGUID(Vt),Zt=new Vector3(0,0,0);Yt&&Yt.ref&&Yt.ref.getWorldPosition(Zt);let Jt=new Quaternion().identity();Yt&&Yt.ref&&Yt.ref.getWorldQuaternion(Jt);let nn=qt.focusPointTransform,rn=ArrToVec3(nn);rn.applyQuaternion(Jt);let Qt=qt.viewPointTransform,en=ArrToVec3(Qt);en.applyQuaternion(Jt);let tn=addVector(Vec3ToArr(rn),Vec3ToArr(Zt)),sn=addVector(Vec3ToArr(en),Vec3ToArr(Zt));kt.cameraStore.setState({focusPointPosition:tn,viewPointPosition:sn}),kt.hotspotStore.setState({activeHotspotData:{hotspotData:{guid:Dt,...qt},itemData:{...jt[Vt],guid:Vt},domID:"rd_"+Xt,hotspotEnterTime:performance.now()},isAnyHotspotActive:!0}),Ht.includes(Xt)||(Ht.push(Xt),kt.hotspotStore.setState({visitedIDs:{...Ht}}))}var replacingNodes=null,swappableNodes=[];const createGhostStore=kt=>{const _e=ghostStoreCreator();return _e.setState({stores:kt}),_e},ghostStoreCreator=()=>create((kt,_e)=>({stores:null,ghostData:null,ghostsTransform:[],ghostVisibility:!0,ghostParentRef:null,ghostMaterial:null,actions:{spawnGhostsForSkuID:async(Dt,Vt=!1,Gt)=>{const{ghostData:zt,ghostsTransform:jt,stores:Ht}=_e();if(zt!==null||jt.length>0){LOGGER.info({title:"ghosts are already spawned for: "+zt.skuID});return}return await new Promise(async(qt,Xt)=>{let Kt={};const Yt=()=>{qt(Kt)};Ht.coreSceneStore.getState().CORE_API.coreWCRef.addEventListener(Ht.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Ghost_Loaded,Yt,{once:!0});const Zt=Ht.productDataStore.getState().productData,Jt=Ht.attachmentStore.getState().attachmentSystem.currentStructure;replacingNodes=Jt.getNodesByCategoryID(Zt[Dt].categoryID);const nn=Ht.coreSceneStore.getState().sceneSettings.draggableUI,rn=await Jt.findGhostTransforms(Dt,Vt),Qt=nn?rn&&rn.transforms&&rn.transforms.length===0:!0;if(Zt[Dt].replace&&replacingNodes.length>0&&Qt)if(nn){const{newNodes:tn,transforms:sn,connectablePlugs:cn}=await Jt.findGhostTransformForReplacement(Dt,replacingNodes);if(sn==null||cn==null||sn.length<=0){LOGGER.error({title:"Couldn't Find Ghost transforms and connectablePlugs for "+Dt});return}let un=[];for(const hn of tn)hn.setModelVisibility(!1),un.push("replace");Kt.transforms=sn,Kt.newNodes=tn,Kt.connectablePlugs=cn,Kt.addItemOrSwap=un}else{const{newNodes:tn,transforms:sn,connectablePlugs:cn}=await Jt.findGhostTransformForReplacement(Dt,replacingNodes);if(sn==null&&cn==null){LOGGER.error({title:"Couldn't Find Ghost transforms and connectablePlugs for "+Dt});return}let un=[];for(const hn of tn)hn.setModelVisibility(!1),un.push("replace");Kt.transforms=sn,Kt.newNodes=tn,Kt.connectablePlugs=cn,Kt.addItemOrSwap=un}else{const{transforms:tn,newNodes:sn,connectablePlugs:cn,comboPlugs:un}=rn;let hn=tn,dn=cn,pn=sn,fn=[];for(let mn=0;mn<tn.length;mn++)fn.push("add");if(Zt[Dt].swappable&&!Ht.coreSceneStore.getState().dragging){swappableNodes=Jt.getNodesByCategoryID(Zt[Dt].categoryID);const mn=await Jt.findGhostTransformForReplacement(Dt,swappableNodes);if(mn.transforms)for(let vn=0;vn<mn.transforms.length;vn++)hn.push(mn.transforms[vn]),dn.push(mn.connectablePlugs[vn]),pn.push(mn.newNodes[vn]),fn.push("replace"),mn.newNodes[vn].setModelVisibility(!1)}Kt.transforms=hn,Kt.newNodes=pn,Kt.connectablePlugs=dn,Kt.comboPlugs=un,Kt.addItemOrSwap=fn}if(Kt.transforms.length<=0){Xt();return}const en=await Ht.assetStore.getState().actions.loadProxyAsset(Dt,!0);kt({ghostsTransform:Kt.transforms,ghostData:{proxyScene:en.proxy.data.scene,skuID:Dt,newNodes:Kt.newNodes,addItemOrSwap:Kt.addItemOrSwap,connectablePlugs:Kt.connectablePlugs,comboPlugs:Kt.comboPlugs,count:Gt||Kt.transforms.length}})})},clearAllGhosts:()=>{const{ghostsTransform:Dt}=_e();if(replacingNodes)for(const Vt of replacingNodes)Vt.setModelVisibility(!0);if(swappableNodes)for(let Vt=0;Vt<swappableNodes.length;Vt++)swappableNodes[Vt].setModelVisibility(!0);Dt.length<=0||kt({ghostVisibility:!0,ghostData:null,ghostsTransform:[]})}}})),createCameraStore=kt=>{const _e=cameraStoreCreator();return _e.setState({stores:kt}),_e},cameraStoreCreator=()=>create((kt,_e)=>({stores:null,focusPointPosition:new Vector3(0,0,0),sendCameraDetailsTrigger:!1,viewPointPosition:new Vector3(0,0,0),boundsMargin:0,savedState:!1,resetToLastPosition:!0,cameraControlsRef:null,userDragging:!1,disableAutoRotate:!1,cameraSettings:{truckSpeed:1,fov:35,dollySpeed:1,initialViewPointPosition:new Vector3(20,15,50),canZoom:!1,canPan:!1,minZoom:1,maxZoom:3,canAutoRotate:!1,autoRotateSpeed:.5,minPolarAngle:0,maxPolarAngle:180,clearColour:"white",zoomingMultiplier:0},actions:{canCameraRotate:Dt=>{const{cameraControlsRef:Vt}=_e();Vt&&(Dt===!0?(Vt.mouseButtons.left=CAMERA_ACTION.ROTATE,Vt.touches.one=CAMERA_ACTION.TOUCH_ROTATE):(Vt.mouseButtons.left=CAMERA_ACTION.NONE,Vt.touches.one=CAMERA_ACTION.NONE))},triggerFetchingCamera:()=>{kt(Dt=>({sendCameraDetailsTrigger:!Dt.sendCameraDetailsTrigger}))},setCameraSettings:Dt=>{const{cameraSettings:Vt,stores:Gt}=_e();Gt.coreSceneStore.getState().isMobile===!0&&Dt.zoomingMultiplier_mobile!==void 0?Dt.zoomingMultiplier=Dt.zoomingMultiplier_mobile:Dt.zoomingMultiplier_desktop!==void 0&&(Dt.zoomingMultiplier=Dt.zoomingMultiplier_desktop),Object.keys(Dt).map(jt=>Vt[jt]=Dt[jt]),kt({cameraSettings:{...Vt},viewPointPosition:ArrToVec3(Vt.initialViewPointPosition)})}}})),createUISceneStore=kt=>{const _e=uiSceneStoreCreator();return _e.setState({stores:kt}),_e},uiSceneStoreCreator=()=>create((kt,_e)=>({stores:null,CORE_API:null,sideMenuState:0,sideMenuOpen:!0,setSideMenuOpen:Dt=>kt({sideMenuOpen:Dt}),cssLoaded:!1,isScreenPortrait:!0,materialOverrideExists:!1,tabSpawnCount:[],coreWCRef:null,removeModalOpen:!1,outOfStockModalOpen:!1,disableCart:!1,inventoryData:{},cartMessage:"",loadConfigId:"",dialogPopupOpen:!1,viewInYourSpaceMenuBtnVisible:!1,loadConfigModalOpen:!1,setLoadConfigModalOpen:Dt=>kt({loadConfigModalOpen:Dt}),setOutOfStockModalOpen:Dt=>kt({outOfStockModalOpen:Dt}),setRemoveModalOpen:Dt=>kt({removeModalOpen:Dt}),moveModalOpen:!1,setMoveModalOpen:Dt=>kt({moveModalOpen:Dt}),setCSSLoaded:Dt=>{kt({cssLoaded:Dt})},setSideMenuState:Dt=>{kt(()=>({sideMenuState:Dt}));const{CORE_API:Vt}=_e();Dt!==2?Vt.exitHotspot():Vt.showAllHotspots()}})),createDynamicHookStore=kt=>{const _e=dynamicHookStoreCreator();return _e.setState({stores:kt}),_e},dynamicHookStoreCreator=()=>create((kt,_e)=>({hookOnCartItemsCollected:async(Dt,Vt)=>(LOGGER.info({title:"No hook provided: hookOnCartItemsCollected"}),Promise.resolve(Dt)),hookOnSceneItemsUpdated:async(Dt,Vt)=>(LOGGER.info({title:"No hook provided: hookOnSceneItemsUpdated"}),Promise.resolve()),hookOnNewItemGhostsCollected:async(Dt,Vt)=>(LOGGER.info({title:"No hook provided: hookOnNewItemGhostsCollected"}),Promise.resolve(Dt)),hookOnNewItemGhostsCollectedForReplacement:async(Dt,Vt)=>(LOGGER.info({title:"No hook provided: hookOnNewItemGhostsCollected"}),Promise.resolve(Dt)),hookOnSceneItemAdded:async(Dt,Vt,Gt)=>(LOGGER.info({title:"No hook provided: hookOnSceneItemAdded"}),Promise.resolve()),hookOnCheckout:async(Dt,Vt)=>(LOGGER.info({title:"No hook provided: hookOnSceneItemAdded"}),Promise.resolve(Dt))}));class STORES{experienceId="";uuid=null;wcRef=null;nexusApiResponseEnvironment="production";nexusApiInstance=null;productDataStore=null;coreSceneStore=null;inventoryStore=null;itemStore=null;assetStore=null;attachmentStore=null;lightStore=null;hotspotStore=null;ghostStore=null;cameraStore=null;infoStore=null;uiHotspotStore=null;colorStore=null;cartStore=null;uiSceneStore=null;constructor(_e){this.wcRef=_e,this.uuid=v4(),this.dynamicHookStore=createDynamicHookStore(this),this.productDataStore=createProductDataStore(this),this.coreSceneStore=createCoreSceneStore(this),this.inventoryStore=createInventoryStore(this),this.itemStore=createItemStore(this),this.assetStore=createAssetStore(this),this.attachmentStore=createAttachmentStore(this),this.lightStore=createLightStore(this),this.hotspotStore=createHotspotStore(this),this.ghostStore=createGhostStore(this),this.cameraStore=createCameraStore(this),this.infoStore=createInfoStore(this),this.uiHotspotStore=createUIHotspotStore(this),this.colorStore=createColorStore(this),this.cartStore=createCartStore(this),this.uiSceneStore=createUISceneStore(this)}setupNexusApiInstance(_e){let Dt=p$5.PRODUCTION;_e=="local"?Dt=p$5.LOCAL:_e==="staging"&&(Dt=p$5.STAGING);const Vt=window.location.href,Gt=window.epigraph?window.epigraph.epigraphSessionId:"no-session-id",zt="2.2.6",jt=g$4.generateXPath(this.wcRef);this.nexusApiInstance=new P$2(Dt,Vt,Gt,zt,jt)}}class EpigraphConfigurator extends h$5{#t=void 0;#i=null;#n=null;clientAccessKey=null;validationPassed=!1;projectID="";configID="default";customVersionId="";experienceId="";apiMode="production";gaMeasurementId="";#s=getUrlParameterByName("launchInAR")==="true";#r=!1;api={core:null,ui:null};stores=null;constructor(){let _e=s$2.PRODUCTION;super("2.2.6",_e),this.stores=new STORES(this),this.api.ui=this,this.shadowRoot||this.attachShadow({mode:"open"}),this.hasAttribute("launch-in-ar")&&(this.#s=!0),this.#c(),this.#o()}#c(){this.preloadDiv=document.createElement("div"),this.preloadDiv.id="preloadMainContainer",this.preloadDiv.classList.add("preload-main-container"),this.preloadDiv.classList.add("showPreload"),this.preloadDiv.appendChild(PRELOAD_MUTED_CSS.content.cloneNode(!0)),this.preloadDiv.appendChild(PRELOAD_HTML_TEMPLATE.content.cloneNode(!0)),this.shadowRoot.appendChild(this.preloadDiv);const _e=this.shadowRoot;this.#n=Dt=>{if(Dt.code=="Enter"){let Vt=_e.activeElement;Vt&&Vt.click()}},this.shadowRoot.addEventListener("keyup",this.#n)}#o(){this.hiccupUi=document.createElement("div"),this.hiccupUi.id="hiccupMainContainer",this.hiccupUi.classList.add("hiccup-ui-main-container"),this.hiccupUi.appendChild(HICCUP_MUTED_CSS.content.cloneNode(!0)),this.hiccupUi.appendChild(HICCUP_HTML_TEMPLATE.content.cloneNode(!0)),this.shadowRoot.appendChild(this.hiccupUi)}get configuratorWcId(){return this.#t}get launchInAr(){return this.#s}#a(){if(this.hasAttribute("id")?this.#t=this.getAttribute("id"):(this.setAttribute("id","epigraphConfiguratorWc"),this.#t=this.getAttribute("id")),this.hasAttribute("custom-version-id")&&(this.customVersionId=this.getAttribute("custom-version-id")),this.hasAttribute("experience-id")&&(this.experienceId=this.getAttribute("experience-id")),this.hasAttribute("api-mode")){const _e=this.getAttribute("api-mode");["local","staging","production"].includes(_e)&&(this.apiMode=_e)}this.stores.setupNexusApiInstance(this.apiMode),(this.hasAttribute("ga-measurement-id")||this.hasAttribute("ga-code"))&&(this.gaMeasurementId=this.getAttribute("ga-measurement-id")??this.getAttribute("ga-code")),this.clientAccessKey=this.getAttribute("client-access-key"),this.initialConfigId=this.getAttribute("initial-config-id"),this.consentPlugin=this.getAttribute("consent-plugin"),this.consentIdentifier=this.getAttribute("consent-identifier"),this.initialConfigId||(this.initialConfigId="default")}async connectedCallback(){if(this.#r===!0){console.warn("Tried to remount configurator. Blocking the process.");return}this.#a(),this.style.maxWidth="1440px",this.style.maxHeight="800px",this.style.overflow="hidden",this.style.width="100%",this.style.height="100%",this.style.position="relative",this.style.visibility="visible",this.style.display="flex";const _e=document.createElement("div");_e.id="configuratorContainer",_e.style.width="100%",_e.style.height="100%",_e.style.userSelect="none",_e.style.overflow="hidden",this.shadowRoot.appendChild(_e),this.#i=createRoot(_e),this.#i.render(jsxRuntimeExports.jsx(App,{stores:this.stores,customVersionId:this.customVersionId,experienceId:this.experienceId,disableUI:this.hasAttribute("disable-ui"),disableCart:this.hasAttribute("disable-cart"),configuratorWcRef:this,gaMeasurementId:this.gaMeasurementId},"Configurator-App")),this.#r=!0}disconnectedCallback(){for(this.#i&&(this.#i.unmount(),this.#i=null),this.#n&&(this.shadowRoot.removeEventListener("keyup",this.#n),this.#n=null),this.#t=void 0,this.clientAccessKey=null,this.validationPassed=!1,this.projectID="",this.configID="default",this.customVersionId="",this.gaMeasurementId="",this.#s=!1,this.#r=!1,this.api={core:null,ui:null},this.preloadDiv&&(this.preloadDiv.remove(),this.preloadDiv=null),this.hiccupUi&&(this.hiccupUi.remove(),this.hiccupUi=null);this.shadowRoot.firstChild;)this.shadowRoot.removeChild(this.shadowRoot.firstChild)}showPreloadScreen(){this.preloadDiv&&(this.preloadDiv.classList.remove("no-pointer-events"),this.preloadDiv.classList.add("showPreload"))}async hidePreloadScreen(){this.preloadDiv&&(this.preloadDiv.classList.remove("showPreload"),await wait(1e3),this.preloadDiv.classList.add("no-pointer-events"))}showHiccupScreen(){this.hiccupUi&&(this.hiccupUi.classList.remove("no-pointer-events"),this.hiccupUi.classList.add("show-hiccup"))}async hideHiccupScreen(){this.hiccupUi&&(this.hiccupUi.classList.remove("show-hiccup"),await wait(1e3),this.hiccupUi.classList.add("no-pointer-events"))}}window.customElements.define("epigraph-configurator",EpigraphConfigurator);
|
|
4796
|
+
`;const createCoreSceneStore=kt=>{const _e=coreStoreCreator();return _e.setState({stores:kt}),_e},coreStoreCreator=()=>create((kt,_e)=>({stores:null,shadowRefreshKey:0,CORE_API:null,coreReady:void 0,frameloop:"always",hoveredGhostIndex:-1,itemDraggedSkuID:null,screenshotRenderer:new WebGLRenderer({antiAlias:!0,preserveDrawingBuffer:!0}),screenshotCamera:new PerspectiveCamera(75,1.33,.1,1e3),builderMode:!1,dragging:!1,bbox:null,draggingItemGUID:null,sceneRef:null,cssLoaded:!1,sceneHasDefaultConfigurationID:!1,configurationLoaded:!0,preconfigurationLoaded:!1,configurationLoadedOnRestart:!0,cursorParentRef:null,glContext:null,canvasTooltipText:"",canvasSize:{width:600,height:600},boundData:{center:new Vector3(0,0,0),size:new Vector3(0,0,0)},showDimensions:!1,autoFocusTrigger:0,cameraActive:!1,autoFocusRef:null,alertData:{},persistantAlertData:null,alertQueue:[],currentAlertData:null,alertSettings:null,draggingOnDropCollisionData:null,multipleTouchDetected:!1,isMobile:!1,isTouchDevice:!1,isTablet:!1,isDesktop:!0,isLandscape:!1,sceneSettings:{usdzMaxTextureSize:1024,usdzPrecision:7,swappableRoot:!0,ghostColorOnHoverWithDraggableUi:{r:153,g:252,b:0,a:1},preserveDrawingBuffer:!1,showSaveBtn:!0,showShareBtn:!0,showResetBtn:!0,showDimensionBtn:!0,showViewInYourSpaceBtn:!0,showDependencyOnHover:!1,showContextMenu:!0,showHotspotsBtn:!0,showInstructionsBtn:!1,showInstructionsOnStartup:!1,sceneScaleUnit:"ft",arPlacement:"floor",arTransforms:{position:[0,0,0],rotation:[0,0,0],scale:[1,1,1]},currency:"$",disableDragDrop:!1,ignoreSpawningCollision:!1,disableCollider:!1,disableContextMenu:!1,ghostColor:{r:10,g:10,b:10,a:.2},technicalRequirements:{minIosVersion:"11"},ghostScale:[1,1,1],ghostAsWireframe:!1,draggableUI:!1,addFromInfoModal:!1,clickToAddUi:!0,accordionInBuildUi:!1,outOfStock_EmissiveColor:{r:250,g:50,b:0},outOfStock_EmissiveIntensity:.002,defaultConfigurationID:null,emptySceneText:null,emptySceneTextFontSize:"2rem",addToCartCTAText:"Add To Cart",ignoreCollisionPostDragging:!1,comboPlugDistanceThreshold:.05,disableCart:!1,dimensionColor:{r:0,g:0,b:0},disableLocalColorOverride:!1,analyticsEventPrefix:"",outlineSettings:{multisampling:10,visibleEdgeColor:new Color$1("#0f0").convertSRGBToLinear(),hiddenEdgeColor:new Color$1("#0f0").convertSRGBToLinear(),blur:3,width:1e3,edgeStrength:1e3,blendFunction:BlendFunction.ALPHA,pulseSpeed:0,xRay:!0},textSettings:{arButtonLabel:"AR",arHoverLabel:"View In Your Space",restartButtonLabel:"Restart",restartHoverLabel:"Restart",saveButtonLabel:"Save",saveHoverLabel:"Save",shareButtonLabel:"Share",shareHoverLabel:"Share",sizeButtonLabel:"Size",sizeHoverLabel:"Size",hotspotsButtonLabel:"Hotspots",hotspotsHoverLabel:"Hotspots",instructionsButtonLabel:"Instructions",instructionsHoverLabel:"Instructions",cartQuantityText:"Qty",reviewButtonText:"Review",cartHeadingText:"Review Products",buildTabHeadingText:"Build",colorTabHeadingText:"Color",featuresTabHeadingText:"Features",featuresTabEmptyText:"*Please add an item to the scene to see the features",tooltipEmptySceneText:"",tooltipInstructionText:"-Drag to rotate the camera-"},variantsTabOrder:{color:{enabled:!0,priority:1},geometryVariants:{enabled:!0,priority:2}},boundingBoxLeeway:.9,contactShadowVisibility:!0,measurementPrecision:2,disableAlerts:!1,focusCameraOnGhosts:!0,alertLevel:2999,alertControl:{default:!0,itemAdded:!0,geometryVariantChanged:!0,overridesRemoved:!0,materialVariantChanged:!0,itemRemoved:!0,itemRepositioned:!0,configurationSaved:!0,linkCopied:!0,outOfStock:!0,unvisualizedItemSpawn:!0},screenshotCameras:[{position:new Vector3(-2.5,.6,-5),rotation:new Vector3(-3.1097068566150314,-.6437852162982552,-3.122449778846033)},{position:new Vector3(3,1,-5),rotation:new Vector3(-.5,1,.5)}],instructionsSettings_desktop:[{header:"Add to Scene",description:"Click to add individual modules to the scene.",lottieURL:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Non-Furniture/Non-furniture_Step_1A_Drag_Drop/Non-furniture_Step_1A.json"},{header:"Rearrange Modules",description:"Drag & drop individual modules in the scene to rearrange.",lottieURL:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Non-Furniture/Non-furniture_Step_2/Non-furniture_Step_2.json"},{header:"Remove Modules",description:"Click to select and remove individual modules from the scene.",lottieURL:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Non-Furniture/Non-furniture_Step_3/Non-furniture_Step_3.json"}],instructionsSettings_mobile:[{header:"Add to Scene",description:"Click to add individual modules to the scene.",lottieURL:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Non-Furniture/Non-furniture_Step_1A_Drag_Drop_Mobile/Mobile_Non-furniture_Step_1A.json"},{header:"Rearrange Modules",description:"Drag & drop individual modules in the scene to rearrange.",lottieURL:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Non-Furniture/Non-furniture_Step_2/Non-furniture_Step_2.json"},{header:"Remove Modules",description:"Tap to select and remove individual modules from the scene.",lottieURL:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Non-Furniture/Non-furniture_Step_3/Non-furniture_Step_3.json"}],defaultInstructionsSettings:{step1_drag:{mobile:{header:"Add to Scene",description:"Drag & drop individual modules to add to the scene.",lottieURL:{furniture:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Furniture/Furniture_Step_1A_Drag_Drop_Mobile/Mobile_Furniture_Step_1A.json",nonFurniture:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Non-Furniture/Non-furniture_Step_1A_Drag_Drop_Mobile/Mobile_Non-furniture_Step_1A.json"}},desktop:{header:"Add to Scene",description:"Drag & drop individual modules to add to the scene.",lottieURL:{furniture:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Furniture/Furniture_Step_1A_Drag_Drop/Furniture_Step_1A.json",nonFurniture:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Non-Furniture/Non-furniture_Step_1A_Drag_Drop/Non-furniture_Step_1A.json"}}},step1_add:{mobile:{header:"Add to Scene",description:"Click to add individual modules to the scene.",lottieURL:{furniture:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Furniture/Furniture_Step_1B_Click_Add_Mobile/Mobile_Furniture_Step_1B.json",nonFurniture:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Non-Furniture/Non-furniture_Step_1B_Click_Add_Mobile/Mobile_Non-furniture_Step_1B.json"}},desktop:{header:"Add to Scene",description:"Click to add individual modules to the scene.",lottieURL:{furniture:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Furniture/Furniture_Step_1B_Click_Add/Furniture_Step_1B.json",nonFurniture:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Non-Furniture/Non-furniture_Step_1B_Click_Add/Non-furniture_Step_1B.json"}}},step2:{mobile:{header:"Rearrange Modules",description:"Drag & drop individual modules in the scene to rearrange.",lottieURL:{furniture:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Furniture/Furniture_Step_2/Furniture_Step_2.json",nonFurniture:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Non-Furniture/Non-furniture_Step_2/Non-furniture_Step_2.json"}},desktop:{header:"Rearrange Modules",description:"Drag & drop individual modules in the scene to rearrange.",lottieURL:{furniture:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Furniture/Furniture_Step_2/Furniture_Step_2.json",nonFurniture:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Non-Furniture/Non-furniture_Step_2/Non-furniture_Step_2.json"}}},step3:{mobile:{header:"Remove Modules",description:"Tap to select and remove individual modules from the scene.",lottieURL:{furniture:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Furniture/Furniture_Step_3/Furniture_Step_3.json",nonFurniture:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Non-Furniture/Non-furniture_Step_3/Non-furniture_Step_3.json"}},desktop:{header:"Remove Modules",description:"Click to select and remove individual modules from the scene.",lottieURL:{furniture:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Furniture/Furniture_Step_3/Furniture_Step_3.json",nonFurniture:"<@all-projects@>/common-assets/instructions-assets/lottie-animations/Non-Furniture/Non-furniture_Step_3/Non-furniture_Step_3.json"}}}}},setCSSLoaded:Dt=>{kt({cssLoaded:Dt})},actions:{refreshShadows:()=>{const{shadowRefreshKey:Dt}=_e();kt({shadowRefreshKey:Dt+1})},popFromAlertQueue:()=>{const{alertQueue:Dt}=_e();return Dt.shift(),kt({alertQueue:Dt}),Dt},addToAlertQueue:Dt=>{const{alertQueue:Vt,currentAlertData:Gt}=_e();return Vt.length>0&&Vt[Vt.length-1].alertId&&Dt.alertId===Vt[Vt.length-1].alertId||Vt.length==0&&Gt&&Gt.alertId&&Gt.alertId==Dt.alertId||(Vt.push(Dt),kt({alertQueue:Vt})),Vt},getDeviceState:()=>{const{isDesktop:Dt,isMobile:Vt,isTablet:Gt,isTouchDevice:zt,isLandscape:jt}=_e();return{isDesktop:Dt,isMobile:Vt,isTablet:Gt,isTouchDevice:zt,isLandscape:jt}},enableCart:()=>{const{sceneSettings:Dt,CORE_API:Vt,stores:Gt}=_e();Dt.disableCart=!1,Gt.inventoryStore.getState().actions.refreshInventory(Gt.itemStore.getState().itemsSpawned),Vt.fireEvent(Vt.EVENTS.SCENE.Cart_StatusUpdated,{disableCart:!1})},disableCart:()=>{const{sceneSettings:Dt,CORE_API:Vt,stores:Gt}=_e();Dt.disableCart=!0,Gt.inventoryStore.getState().actions.refreshInventory(Gt.itemStore.getState().itemsSpawned),Vt.fireEvent(Vt.EVENTS.SCENE.Cart_StatusUpdated,{disableCart:!0})},getSceneSettings:()=>{const{sceneSettings:Dt}=_e();return Dt},sendAlert:Dt=>{kt({alertData:{...Dt}})},switchCursor(Dt){const{cursorParentRef:Vt}=_e();if(!Vt)return;let Gt="";switch(Dt){default:case CURSORS.GRAB:Gt="grabCursor";break;case CURSORS.GRABBING:Gt="grabbingCursor";break;case CURSORS.BLOCKED:Gt="blockedCursor";break;case CURSORS.POINTER:Gt="pointerCursor";break;case CURSORS.MOVE:Gt="moveCursor";break}for(let zt=0;zt<Vt.classList.length;zt++)Vt.classList[zt].includes("Cursor")&&Vt.classList.remove(Vt.classList[zt]);Vt.classList.add(Gt)},setAlertSettings:Dt=>{kt({alertSettings:Dt})},async completeDropItem(){const{draggingOnDropCollisionData:Dt,CORE_API:Vt,stores:Gt}=_e(),zt=Gt.attachmentStore.getState().attachmentSystem,{node:jt,attachedChildrenGuids:Ht,collidingStatus:Wt,intersectingGhostObject:qt,initPosition:Xt,initRotation:Kt,detachedPlugs:Yt,attachedNodesToCurrentNode:Zt}=Dt;Vt.alert({alertMsg:"Item(s) have been removed",alertTime:7e3,alertType:"info",alertLabel:"Item(s) Removed",alertId:"itemRemoved"});for(const[Qt,en]of Ht.entries())Wt[Qt]===!0&&await Gt.itemStore.getState().actions.removeItemByGUID(en);const Jt=qt.userData;let nn=jt.getPlugByName(Jt.incomingPlugName),rn=zt.currentStructure.getPlugByGUID(Jt.receiverPlugGUID);jt.ref.position.set(qt.position.x,qt.position.y,qt.position.z),jt.ref.setRotationFromEuler(qt.rotation),jt.transform={position:qt.position,rotation:qt.quaternion},zt.currentStructure.connectPlugs({incomingPlug:nn,receiverPlug:rn}),Gt.ghostStore.getState().actions.clearAllGhosts(),Gt.itemStore.getState().actions.deselectItem(),Zt.map(Qt=>{jt.ref.parent.attach(Qt.ref),Qt.transform={position:Qt.ref.position,rotation:Qt.ref.quaternion},jt.dragging=!1,Qt.dragging=!1}),await Gt.attachmentStore.getState().actions.updateFittingSkuIds()},async revertDropItem(){const{draggingOnDropCollisionData:Dt,stores:Vt}=_e(),Gt=Vt.attachmentStore.getState().attachmentSystem,{node:zt,attachedChildrenGuids:jt,collidingStatus:Ht,intersectingGhostObject:Wt,initPosition:qt,initRotation:Xt,detachedPlugs:Kt,attachedNodesToCurrentNode:Yt}=Dt;CORE_API.alert({alertMsg:"Position of item"+zt.skuID+"is being moved to it's original position",alertTime:4e3,alertType:"info",alertLabel:"Repositioning",alertId:"itemRepositioned"});const Zt=Kt.neighbourDetachedPlugs;Zt&&(Kt.neighbourNode.detachNodeFromReceiver(),Gt.currentStructure.connectPlugs({incomingPlug:Zt.incomingPlug,receiverPlug:Zt.receiverPlug}));let Jt=Kt.rootDetachedPlugs.incomingPlug,nn=Kt.rootDetachedPlugs.receiverPlug;zt.ref.position.set(qt.x,qt.y,qt.z),zt.ref.setRotationFromEuler(Xt);let rn=new Quaternion().identity();zt.ref.getWorldQuaternion(rn),zt.transform={position:qt,rotation:rn},Gt.currentStructure.connectPlugs({incomingPlug:Jt,receiverPlug:nn}),Vt.ghostStore.getState().actions.clearAllGhosts(),Vt.itemStore.getState().actions.deselectItem(),Yt.map(Qt=>{zt.ref.parent.attach(Qt.ref),Qt.transform={position:Qt.ref.position,rotation:Qt.ref.quaternion},zt.dragging=!1,Qt.dragging=!1}),await Vt.attachmentStore.getState().actions.updateFittingSkuIds()},setCoreSettings:Dt=>{const{sceneSettings:Vt,isMobile:Gt,isTouchDevice:zt,isLandscape:jt,actions:Ht}=_e(),Wt=Gt===!0?"mobile":"desktop",qt=["showSave","showShare","showReset","showDimension","showHotspots","showInstructionsBtn","showViewInYourSpace","showContextMenu","showInstructionsOnStartup","draggableUI","clickToAddUi","textSettings","alertControl","variantsTabOrder","emptySceneTextFontSize","instructionsSettings"];for(const Xt of qt)if(Xt==="draggableUI"||Xt==="clickToAddUi"||Xt==="emptySceneTextFontSize"||Xt==="showInstructionsOnStartup"||Xt==="showInstructionsBtn"||Xt==="instructionsSettings"){const Yt=`${Xt}_${jt===!1&&zt===!0?"mobile":"desktop"}`;Dt[Yt]!==void 0?Vt[Xt]=Dt[Yt]:Vt[Yt]!==void 0&&(Vt[Xt]=Vt[Yt])}else if(Xt==="textSettings"||Xt==="variantsTabOrder"||Xt==="alertControl"||Xt==="outlineSettings"){if(Dt.hasOwnProperty(Xt)){let Kt=Vt[Xt];Object.keys(Kt).map(Yt=>{let Zt=Dt[Xt];Zt.hasOwnProperty(Yt)?(Yt==="visibleEdgeColor"||Yt==="hiddenEdgeColor")&&(Zt[Yt]=new Color$1(Zt[Yt]).convertSRGBToLinear()):Zt[Yt]=Kt[Yt]})}}else{const Kt=`${Xt}_${Wt}`;if(Dt[Kt]!==void 0){let Yt=`${Xt}Btn`;Xt=="showContextMenu"&&(Yt=`${Xt}`),Vt[Yt]=Dt[Kt]}}Dt.disableCart===!0&&Ht.disableCart(),Object.keys(Dt).map(Xt=>Vt[Xt]=Dt[Xt]),Vt.emptySceneText===null&&(Vt.emptySceneTextFontSize=Gt?"1.2rem":"1.5rem",Vt.draggableUI===!0?Vt.emptySceneText="Drag an item here to get started":Vt.emptySceneText="Select an item to get started"),kt({sceneSettings:{...Vt,ghostThreeColor:{r:Vt.ghostColor.r/255,g:Vt.ghostColor.g/255,b:Vt.ghostColor.b/255,a:Vt.ghostColor.a/255},draggableUiGhostThreeColorOnHover:{r:Vt.ghostColorOnHoverWithDraggableUi.r/255,g:Vt.ghostColorOnHoverWithDraggableUi.g/255,b:Vt.ghostColorOnHoverWithDraggableUi.b/255,a:Vt.ghostColorOnHoverWithDraggableUi.a/255}}})},triggerAutoFocus:(Dt=null)=>kt(Vt=>({autoFocusRef:Dt,autoFocusTrigger:Vt.autoFocusTrigger+1})),requestNewScreenshot:async(Dt,Vt)=>{const{CORE_API:Gt}=_e();return new Promise(async(zt,jt)=>{LOGGER.info({title:"Taking a screenshot"});const{screenshotRenderer:Ht,sceneRef:Wt,screenshotCamera:qt,canvasSize:Xt}=_e(),Kt=await Gt.getCurrentCameraDetails();if(Ht.setClearColor(16777215),qt.copy(Kt),Dt!==null&&(qt.position.copy(Dt.position),qt.rotation.copy(new Euler(Dt.rotation.x,Dt.rotation.y,Dt.rotation.z))),Vt==null?Ht.setSize(Xt.width,Xt.height):Ht.setSize(Vt.width,Vt.height),Ht.render(Wt.parent,qt),Ht.preserveDrawingBuffer===!1)LOGGER.warn({title:"Preserve Drawing Buffer must be enabled to take a screenshot. Please make sure to enable this within the project input data coreSettings"}),jt({success:!1,imageData:null});else{LOGGER.info({title:"Downloading the screenshot"});const Yt=Ht.domElement.toDataURL("image/png").replace("image/png","image/octet-stream");zt({success:!0,imageData:Yt})}})}}})),createProductDataStore=kt=>{const _e=productDataStoreCreator();return _e.setState({stores:kt}),_e},productDataStoreCreator=()=>create((kt,_e)=>({stores:null,productData:{},categoryData:{},lookData:{},hotspotsData:{},endpoints:{},assetsData:void 0,actions:{getCurrentCompareAtPricingInfo:()=>{const{productData:Dt}=_e();let Vt={};return Object.keys(Dt).map(Gt=>{if(Gt.toLowerCase()==="root")return;let zt=Dt[Gt].lookDetails,jt={};Object.keys(zt).map(Ht=>{Ht!="default"&&(jt[Ht]=zt[Ht].compareAtPrice)}),Vt[Gt]=jt}),Vt},getCurrentPricingInfo:()=>{const{productData:Dt}=_e();let Vt={};return Object.keys(Dt).map(Gt=>{if(Gt.toLowerCase()==="root")return;let zt=Dt[Gt].lookDetails,jt={};Object.keys(zt).map(Ht=>{Ht!="default"&&(jt[Ht]=zt[Ht].price)}),Vt[Gt]=jt}),Vt},updateCompareAtPricingForAllProducts:Dt=>{const{actions:Vt}=_e();Object.keys(Dt).map(Gt=>{let zt=Dt[Gt];Object.keys(zt).map(jt=>{Vt.updateCompareAtPricingForProduct(Gt,jt,zt[jt])})})},updatePricingForAllProducts:Dt=>{const{actions:Vt}=_e();Object.keys(Dt).map(Gt=>{let zt=Dt[Gt];Object.keys(zt).map(jt=>{Vt.updatePricingForProduct(Gt,jt,zt[jt])})})},updateCompareAtPricingForProduct:(Dt,Vt,Gt)=>{const{productData:zt,stores:jt}=_e();let Ht=zt[Dt];if(!Ht||!Ht.lookDetails)return;let Wt=Ht.lookDetails[Vt];if(!Wt)return;Wt.compareAtPrice=Gt,jt.attachmentStore.getState().attachmentSystem.currentStructure.getNodesBySKUID(Dt).map(Kt=>Kt.updateCompareAtPricing())},updatePricingForProduct:(Dt,Vt,Gt)=>{const{productData:zt,stores:jt}=_e();let Ht=zt[Dt];if(!Ht||!Ht.lookDetails)return;let Wt=Ht.lookDetails[Vt];if(!Wt)return;Wt.price=Gt,jt.attachmentStore.getState().attachmentSystem.currentStructure.getNodesBySKUID(Dt).map(Kt=>Kt.updatePricing())},setProductData:Dt=>{const{stores:Vt}=_e();let Gt={};Dt&&Object.keys(Dt).map(zt=>{const jt=Dt[zt];if(jt.skuID=zt,jt.skuID.toLowerCase()==="root"){jt.lookDetails={default:{title:"",description:"",productPageUrl:"",thumbnails:{high:"",low:""},price:0}},jt.defaultVariant="default";return}if(jt?.lookDetails){const Ht=jt.lookDetails;let Wt=Object.keys(jt.lookDetails);if(Wt.includes("default")){const Xt=Wt.indexOf("default");Wt.splice(Xt,1)}jt.looks=Wt,Object.keys(jt.lookDetails).map(Xt=>{let Kt=jt.lookDetails[Xt];Kt.inventory===void 0&&(Kt.inventory=DEFAULT_INVENTORY),Kt.price===void 0&&(Kt.price=DEFAULT_PRODUCT_PRICE),Kt.compareAtPrice===void 0&&(Kt.compareAtPrice=DEFAULT_PRODUCT_COMPARE_AT_PRICE),Gt[zt]={...Gt[zt],[Xt]:{inventory:DEFAULT_INVENTORY,inScene:[]}}});let qt=jt?.defaultVariant;qt||(LOGGER.warn({title:`No defaultVariant set for ${jt.skuID}. Attempting to auto resolve but the colour variants behaviour might be unexpected!`}),qt=Object.keys(jt.lookDetails).sort()[0],LOGGER.warn({title:"Auto resolved default look ID: "+qt})),Wt.includes(qt)?(jt.lookDetails.default=Ht[qt],jt.lookDetails.default.id=qt):(LOGGER.error({title:`Default look [ ${qt} ] doesn't exist for: ${zt}. Please make sure to select a default variant in Input Data for this project`}),jt.lookDetails.default=null)}}),LOGGER.info({title:"PRODUCT DATA: ",details:Dt}),Vt.inventoryStore.setState({inventoryData:Gt}),kt({productData:Dt})},setCategoryData:Dt=>{const{productData:Vt}=_e();Dt.geometryVariants!==void 0&&Dt.geometryVariants.map(Gt=>{Gt.defaultVariant===void 0&&Object.keys(Gt.variants).length>0&&(Gt.defaultVariant=Object.keys(Gt.variants)[0])}),Dt.color!==void 0&&Dt.color.map(Gt=>{(Gt.defaultLook===void 0&&Gt.looks.length>0||!Gt.looks.includes(Gt.defaultLook))&&(Gt.defaultLook=Gt.looks[0])}),kt({categoryData:Dt}),Dt.build!==void 0&&Dt.build.map(Gt=>{Gt.skus.map(zt=>{Vt[zt].categoryID=Gt.categoryID,Vt[zt].categoryLabel=Gt.label,Vt[zt].swappable=Gt.swappable?Gt.swappable:!1,Vt[zt].replace=Gt.replace})})},getProductDataById:Dt=>{const{productData:Vt}=_e();let Gt=null;return Vt[Dt]&&(Gt=Vt[Dt]),Gt},setLookData:Dt=>kt({lookData:Dt}),setHotspotsData:Dt=>{const{categoryData:Vt,productData:Gt}=_e();Vt.geometryVariants&&Object.keys(Dt).map(zt=>{Dt[zt].map(jt=>{jt.geometryVariantID&&Vt.geometryVariants.map(Ht=>{Object.keys(Ht.variants).map(Wt=>{jt.geometryVariantID==Wt&&Ht.productsInCategory.map(qt=>{let Xt=null;qt.products.map(Kt=>{Dt.hasOwnProperty(Kt)&&(Xt=Dt[Kt])}),qt.products.map(Kt=>{Dt.hasOwnProperty(Kt)||(Dt[Kt]=Xt)})})})})})}),kt({hotspotsData:Dt})},setAssetsData:Dt=>kt({assetsData:Dt})}})),createItemStore=kt=>{const _e=itemStoreCreator();return _e.setState({stores:kt}),_e},itemStoreCreator=()=>create((kt,_e)=>({stores:null,variantChangeAlert:!1,focusedGUID:null,removeItems:[],removeItemTrigger:!1,itemsSpawned:{},itemsCount:0,modelLoadedAlert:0,lastDeletedItemData:null,lastDeletedItemsData:[],hoveredItemRef:{},collidersRef:[],fittingSkuIds:[],filteredCollidersRef:[],selectedItemData:null,defaultSceneItemCount:0,busySpawningItem:!1,busyReplacingItem:!1,busySpawningDependency:!1,busyDraggingItem:!1,busyRemovingItem:!1,isBusy:()=>{const{busySpawningItem:Dt,busyReplacingItem:Vt,busySpawningDependency:Gt,busyDraggingItem:zt,busyRemovingItem:jt}=_e();return Dt||Vt||Gt||zt||jt},actions:{triggerModelLoaded:()=>{kt(Dt=>({modelLoadedAlert:Dt.modelLoadedAlert+1}))},triggerRemoveItem:()=>{kt(Dt=>({removeItemTrigger:!Dt.removeItemTrigger}))},addToRemoveItems:Dt=>{const{removeItems:Vt}=_e();Vt.push(Dt)},switchToVariant:async(Dt,Vt,Gt=!1)=>{const{variantChangeAlert:zt,stores:jt}=_e(),Ht=jt.productDataStore.getState().categoryData;let qt=jt.attachmentStore.getState().attachmentSystem.currentStructure.getNodeByGUID(Dt.guid);const Xt=jt.assetStore.getState().assets.items,Kt=qt.ref.getObjectByName("GRP_RenderGeometry");Xt[Dt.skuID].data||Ht.geometryVariants&&Ht.geometryVariants.map(Yt=>{Yt.productsInCategory.map(Zt=>{let Jt=!1;Zt.products.map(nn=>{nn==Dt.skuID&&(Jt=!0)}),Jt&&Zt.products.map(nn=>{const rn=jt.assetStore.getState().assets.items[nn].data;rn&&(jt.assetStore.getState().assets.items[Dt.skuID].data=rn)})})}),qt.modelFunctions&&(await qt.modelFunctions.selectVariant(Kt,Vt),Gt?(qt.overrideVariant=Vt,jt.coreSceneStore.getState().CORE_API.fireEvent(jt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.MaterialOverrides_Exists,!0)):qt.currentVariant=Vt,kt({variantChangeAlert:!zt}))},clearAllItems:()=>{kt({itemsSpawned:{},itemsCount:0,lastDeletedItemsData:[],hoveredItemRef:[],collidersRef:[],filteredCollidersRef:[],selectedItemData:null})},setItemsSpawned:Dt=>{kt({itemsSpawned:Dt,itemsCount:Object.keys(Dt).length})},setHoveredItemRef:Dt=>kt({hoveredItemRef:Dt}),setCollidersRef:Dt=>{const{stores:Vt}=_e();kt({collidersRef:Dt});let Gt=[];for(let zt=0;zt<Dt.length;zt++)Dt[zt].current&&Gt.push(Dt[zt]);Vt.itemStore.setState({filteredCollidersRef:[...Gt]})},setSelectedItemData:Dt=>{const{selectedItemData:Vt,hoveredItemRef:Gt,actions:zt,stores:jt}=_e();Vt&&(delete Gt[Vt.itemData.guid],zt.setHoveredItemRef({...Gt})),kt({selectedItemData:{...Dt}}),jt.hotspotStore.getState().actions.switchHotspotsVisibility(!1,!0),jt.cameraStore.getState().actions.canCameraRotate(!1)},deselectItem:()=>{const{selectedItemData:Dt,stores:Vt}=_e();Dt&&Vt.coreSceneStore.getState().CORE_API.fireEvent(Vt.coreSceneStore.getState().CORE_API.EVENTS.UI.ContextMenu_Hide,Dt),kt(()=>({selectedItemData:null})),Vt.hotspotStore.getState().actions.switchHotspotsVisibility(!0,!0),Vt.cameraStore.getState().actions.canCameraRotate(!0),Vt.itemStore.getState().actions.setHoveredItemRef({})},removeItemByGUID:async Dt=>{const{itemsSpawned:Vt,actions:Gt,stores:zt}=_e();if(Vt.hasOwnProperty(Dt))return kt({busyRemovingItem:!0}),new Promise(async(jt,Ht)=>{const Wt=qt=>{Dt===qt.data.itemData.guid&&(kt({busyRemovingItem:!1}),jt(Dt))};zt.coreSceneStore.getState().CORE_API.coreWCRef.addEventListener(zt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Item_Removed,Wt,{once:!0}),Gt.addToRemoveItems(Dt),Gt.triggerRemoveItem()})},addItemBySkuID:async(Dt,Vt=0,Gt=!1,zt)=>{kt({busySpawningItem:!0});const{actions:jt,itemsSpawned:Ht,stores:Wt}=_e(),qt=Wt.productDataStore.getState().productData,Xt=Wt.productDataStore.getState().hotspotsData,Kt=Wt.attachmentStore.getState().attachmentSystem;let Yt=!0;const Zt=await new Promise(async(Jt,nn)=>{if(LOGGER.info({title:`Spawning item: ${Dt}`}),jt.deselectItem(),!qt[Dt]){LOGGER.warn({title:`Product not found: ${Dt}`}),Wt.coreSceneStore.getState().CORE_API.alert({alertMsg:Dt+": product not found!",alertTime:5e3,alertType:"warn",alertLabel:"Not Found"}),Yt=!1,nn(Dt+": product not found!");return}const rn=[...Wt.ghostStore.getState().ghostsTransform],Qt={...Wt.ghostStore.getState().ghostData};if(rn.length<=0){Wt.coreSceneStore.getState().CORE_API.alert({alertMsg:"Unable to add item to configuration",alertTime:6e3,alertType:"warn",alertLabel:"Action Unavailable"}),Yt=!1,nn("No available connections for this product to attach to");return}const en=tn=>{Dt===tn.data&&Jt(Qt.newNodes[Vt].guid)};if(Wt.coreSceneStore.getState().CORE_API.coreWCRef.addEventListener(Wt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Model_Loaded,en,{once:!0}),Qt.addItemOrSwap[Vt]=="replace")await replaceItem(kt,Wt,Ht,Qt.skuID,rn[Vt],Qt.newNodes[Vt]);else{Wt.ghostStore.getState().actions.clearAllGhosts();const tn=Qt.newNodes[Vt];tn.isDependent=Gt;let sn=!0;if(qt[Qt.skuID].hasOwnProperty("disableInteraction")){const dn=qt[Qt.skuID].disableInteraction;(dn==!0||dn==!1)&&(sn=!dn)}zt!=null&&(sn=zt),tn.isInteractive=sn;const{position:cn,rotation:un}=rn[Vt];tn.transform={position:cn,rotation:un},Kt.currentStructure.addNode(tn),Qt.connectablePlugs[Vt].receiverPlug.type=="unvisualizedPlug"&&Wt.coreSceneStore.getState().CORE_API.alert({alertMsg:"This product is not shown in your 3D configuration but can be found in your shopping list.",alertTime:3e3,alertType:"warn",alertLabel:"Internal Storage",persistant:!1,alertId:"unvisualizedItemSpawn"}),Qt.comboPlugs[Vt].length>0&&Qt.connectablePlugs[Vt].incomingPlug.type=="comboPlug"&&Qt.comboPlugs[Vt].map(dn=>{Kt.currentStructure.connectPlugs(dn)}),Qt.connectablePlugs[Vt].incomingPlug.comboPlugConnector=!0,Kt.currentStructure.connectPlugs(Qt.connectablePlugs[Vt]);const hn=await Wt.assetStore.getState().actions.loadProxyAsset(Qt.skuID,!0);LOGGER.info({title:"GHOST NEW NODE: ",details:tn}),Ht[tn.guid]={itemData:{proxyScene:hn.proxy.data.scene,guid:Qt.newNodes[Vt].guid,...qt[Qt.skuID],position:cn,rotation:un,hasItemLoaded:!1,isDependent:Gt,isInteractive:sn},hotspotsData:Xt[Qt.skuID],hotspotSpawned:!1},await wait(1),jt.setItemsSpawned({...Ht})}}).catch(Jt=>{LOGGER.error({title:Jt}),Yt=!1});if(Yt===!1)return kt({busySpawningItem:!1}),Zt;if(Wt.coreSceneStore.getState().preconfigurationLoaded&&Wt.coreSceneStore.getState().configurationLoaded){const Jt=await Kt.getCartItemsAsync();Jt&&Wt.coreSceneStore.getState().CORE_API.fireEvent(Wt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.CartItems_Updated,Jt)}if(await jt.resolvePlugDependencyOnGUID(Zt),kt({busySpawningItem:!1}),!Gt){const Jt=Kt.currentStructure,nn=Jt.getNodeByGUID(Zt);await Wt.dynamicHookStore.getState().hookOnSceneItemAdded(nn,Jt.nodes,Wt.coreSceneStore.getState().CORE_API),await Wt.attachmentStore.getState().actions.updateFittingSkuIds()}return Zt},async addItemWithTransform(Dt,Vt,Gt,zt=!0){const{actions:jt,itemsSpawned:Ht,defaultSceneItemCount:Wt,stores:qt}=_e(),Xt=qt.productDataStore.getState().productData,Kt=qt.productDataStore.getState().hotspotsData;return await new Promise(async(Zt,Jt)=>{if(jt.deselectItem(),!Xt[Vt]){qt.coreSceneStore.getState().CORE_API.alert({alertMsg:Vt+": product not found!",alertTime:5e3,alertType:"warn",alertLabel:"Not Found"}),Jt(Vt+": product not found!");return}const{position:nn,rotation:rn}=Dt;Ht[Gt]!=null&&(qt.hotspotStore.getState().actions.removeHotspotForItem({...Ht[Gt]}),delete Ht[Gt]);const Qt=tn=>{Vt.toLowerCase()==tn.data.toLowerCase()&&Zt(Gt)};qt.coreSceneStore.getState().CORE_API.coreWCRef.addEventListener(qt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Model_Loaded,Qt,{once:!0});const en=await qt.assetStore.getState().actions.loadProxyAsset(Vt,!0);if(en==null){Jt(Vt+": Asset not found!");return}await wait(1),Vt.toLowerCase()==="root"&&kt({defaultSceneItemCount:Wt+1}),Ht[Gt]={itemData:{proxyScene:en.proxy.data.scene,guid:Gt,...Xt[Vt],position:nn,rotation:rn,hasItemLoaded:!1,isInteractive:zt},hotspotsData:Kt[Vt],hotspotSpawned:!1},kt({itemsSpawned:{...Ht}})}).catch(Zt=>{LOGGER.info({title:Zt})})},async resolvePlugDependencyOnGUID(Dt){const{actions:Vt,itemsSpawned:Gt,defaultSceneItemCount:zt,stores:jt}=_e(),Ht=jt.productDataStore.getState().productData,Wt=jt.attachmentStore.getState().attachmentSystem,qt=Gt[Dt].itemData.skuID,Xt=Ht[qt]?.plugs;if(!Xt)return;let Kt=!1;for(const Yt of Xt)Yt?.dependencySku&&(Kt=!0);Kt&&(kt({busySpawningDependency:!0}),await new Promise(async(Yt,Zt)=>{const Jt=[];for(const nn of Xt){const rn=nn?.dependencySku;if(!rn)continue;const Qt=async()=>{LOGGER.info({title:`Found a dependency: ${rn} on the plug: ${nn.name}`});let en=!0;Ht[rn]&&Ht[rn].hasOwnProperty("ignoreSpawningCollisionAsDependency")&&(en=Ht[rn].ignoreSpawningCollisionAsDependency),nn.hasOwnProperty("ignoreSpawningCollision")&&(en=nn.ignoreSpawningCollision);let tn=jt.coreSceneStore.getState().sceneSettings.ignoreSpawningCollision;Ht[rn].hasOwnProperty("ignoreSpawningCollision")&&(tn=Ht[rn].ignoreSpawningCollision),Ht[rn].ignoreSpawningCollision=en,jt.ghostStore.setState({ghostVisibility:!1});const sn=await jt.ghostStore.getState().actions.spawnGhostsForSkuID(rn,en);if(Ht[rn].ignoreSpawningCollision=tn,!sn)return;const cn=Wt.currentStructure.getNodeByGUID(Dt),un=cn.getPlugByName(nn.name)?.guid,hn=nn?.isDependencySkuInteractive?nn.isDependencySkuInteractive===1:!1,dn=sn.connectablePlugs;let pn=-1;for(const mn of dn)mn.receiverPlug.guid===un&&(pn=dn.indexOf(mn));if(pn==-1){jt.ghostStore.getState().actions.clearAllGhosts();return}const fn=await Vt.addItemBySkuID(rn,pn,!0,hn);qt.toLowerCase()==="root"&&Ht[rn].ignoreInCart&&kt({defaultSceneItemCount:zt+1}),fn!==null&&cn.addMyDependenciesGUID(fn)};Jt.push(await Qt())}await Promise.all(Jt),Yt(!0)}),kt({busySpawningDependency:!1}))},async replaceGuidItemBySkuId(Dt,Vt){const{itemsSpawned:Gt,stores:zt}=_e();if(Gt[Dt]==null)return!1;const jt=zt.attachmentStore.getState().attachmentSystem.currentStructure,Ht=jt.getNodeByGUID(Dt);if(!Ht||!Ht.isReplaceableWithSkuId(Vt))return!1;LOGGER.info({title:"Replacing Item"});const qt=zt.productDataStore.getState().productData,Xt=zt.productDataStore.getState().hotspotsData;kt({busyReplacingItem:!0}),await new Promise(async(Kt,Yt)=>{const Zt=async()=>{LOGGER.info({title:"Removed old item with guid: "+Dt});const Jt=async en=>{Vt===en.data&&(jt.recalculateStructureFromNode(Ht.whichNodeAreWeAttachedTo()),await zt.attachmentStore.getState().actions.toggleStructureUpdated(),kt({busyReplacingItem:!1}),Kt(Ht.guid))};zt.coreSceneStore.getState().CORE_API.coreWCRef.addEventListener(zt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Model_Loaded,Jt,{once:!0});const nn=await zt.assetStore.getState().actions.loadProxyAsset(Vt,!0),rn={receiverPlug:Ht.whichPlugAreWeAttachedTo(),incomingPlug:Ht.whichPlugAreWeAttachedUsing()};jt.findItemTransform(rn);let Qt=!0;if(qt[Vt]&&Object.prototype.hasOwnProperty.call(qt[Vt],"disableInteraction")){const en=qt[Vt].disableInteraction;(en===!0||en===!1)&&(Qt=!en)}Ht.isInteractive=Qt,Gt[Dt]={itemData:{proxyScene:nn.proxy.data.scene,guid:Dt,...qt[Vt],position:Ht.transform.position,rotation:Ht.transform.rotation,hasItemLoaded:!1,isInteractive:Qt},hotspotsData:Xt[Vt],hotspotSpawned:!1},LOGGER.warn({title:"SWITCHING VARIANT: ",details:Ht.currentVariant}),zt.itemStore.setState({itemsSpawned:{...Gt}})};zt.hotspotStore.getState().actions.removeHotspotForItem({...Gt[Dt]}),delete Gt[Dt],Ht.update(Vt),zt.coreSceneStore.getState().CORE_API.coreWCRef.addEventListener(zt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Model_Removed,Zt,{once:!0})})}}}));async function replaceItem(kt,_e,Dt,Vt,Gt,zt){LOGGER.info({title:"Replacing Item"});const{position:jt,rotation:Ht}=Gt,Wt=_e.productDataStore.getState().productData,qt=_e.productDataStore.getState().hotspotsData,Xt=_e.attachmentStore.getState().attachmentSystem.currentStructure;return kt({busyReplacingItem:!0}),new Promise(async(Kt,Yt)=>{const Zt=async()=>{const Jt=await _e.assetStore.getState().actions.loadProxyAsset(Vt,!0),nn=async Qt=>{Vt===Qt.data&&(Xt.recalculateStructureFromNode(zt),await _e.attachmentStore.getState().actions.toggleStructureUpdated(),_e.ghostStore.getState().actions.clearAllGhosts(),kt({busyReplacingItem:!1}),Kt(zt.guid))};_e.coreSceneStore.getState().CORE_API.coreWCRef.addEventListener(_e.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Model_Loaded,nn,{once:!0});let rn=!0;if(Wt[Vt]&&Object.prototype.hasOwnProperty.call(Wt[Vt],"disableInteraction")){const Qt=Wt[Vt].disableInteraction;(Qt===!0||Qt===!1)&&(rn=!Qt)}zt.isInteractive=rn,Dt[zt.guid]={itemData:{proxyScene:Jt.proxy.data.scene,guid:zt.guid,...Wt[Vt],position:jt,rotation:Ht,hasItemLoaded:!1,isInteractive:rn},hotspotsData:qt[Vt],hotspotSpawned:!1},LOGGER.warn({title:"SWITCHING VARIANT: ",details:zt.currentVariant}),zt.currentVariant=zt.currentVariant,zt.transform=Gt,_e.itemStore.setState({itemsSpawned:{...Dt}})};_e.hotspotStore.getState().actions.removeHotspotForItem({...Dt[zt.guid]}),delete Dt[zt.guid],zt.update(Vt),_e.coreSceneStore.getState().CORE_API.coreWCRef.addEventListener(_e.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Model_Removed,Zt,{once:!0})})}const createInventoryStore=kt=>{const _e=inventoryStoreCreator();return _e.setState({stores:kt}),_e},inventoryStoreCreator=()=>create((kt,_e)=>({stores:null,inventoryData:{},actions:{updateInventoryForAllProducts:Dt=>{const{actions:Vt,stores:Gt}=_e();Object.keys(Dt).map(zt=>{let jt=Dt[zt];Object.keys(jt).map(Ht=>{Vt.updateInventoryForProduct(zt,Ht,jt[Ht].inventory)})}),Vt.refreshInventory(Gt.itemStore.getState().itemsSpawned)},updateInventoryForProduct:(Dt,Vt,Gt)=>{const{inventoryData:zt}=_e();let jt=zt[Dt],Ht=jt[Vt];!jt||!Ht||(Ht.inventory=Gt)},_clearInScene:()=>{const{inventoryData:Dt}=_e();Object.keys(Dt).map(Vt=>{const Gt=Dt[Vt];Object.keys(Gt).map(zt=>{Gt[zt].inScene=[]})})},refreshInventory:Dt=>{if(!Dt)return;LOGGER.info({title:"Refreshing Inventory"});const{actions:Vt,inventoryData:Gt,stores:zt}=_e();Vt._clearInScene();const jt=zt.attachmentStore.getState().attachmentSystem;if(jt===null)return;const Ht=jt.currentStructure;if(Ht===null)return;Object.keys(Dt).map(Kt=>{const Yt=Ht.getNodeByGUID(Kt);if(!Yt)return;const Zt=Yt.overrideVariant?Yt.overrideVariant:Yt.currentVariant;if(!Zt)return;const Jt=Gt[Yt.skuID];if(!Jt||!Jt[Zt]?.inScene)return;Jt[Zt].inScene.push(Kt),zt.coreSceneStore.getState().sceneSettings.disableCart===!0?Yt.inStock={variantName:Zt,newValue:!0}:Jt[Zt].inScene.length>Jt[Zt].inventory?Yt.inStock={variantName:Zt,newValue:!1}:Yt.inStock={variantName:Zt,newValue:!0}});let Wt=!1;Object.keys(Gt).map(Kt=>{const Yt=Gt[Kt];Object.keys(Yt).map(Zt=>{Yt[Zt].countAvailable=Yt[Zt].inventory-Yt[Zt].inScene.length,Yt[Zt].countAvailable<0?(Yt[Zt].countUnavailable=Yt[Zt].countAvailable*-1,Yt[Zt].countAvailable=0,Wt=!0):Yt[Zt].countUnavailable=0})});const qt={alertMsg:"Some item(s) in configuration are out of stock",alertTime:7e3,alertType:"warn",alertLabel:"Stock Alert",persistant:!0,alertId:"outOfStock"},Xt=compareObjects(zt.coreSceneStore.getState().persistantAlertData,qt);Wt===!1&&Xt===!0&&zt.coreSceneStore.getState().CORE_API.removePersistantAlert(),zt.coreSceneStore.getState().CORE_API.fireEvent(zt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Inventory_Updated,Gt)}}})),createAssetStore=kt=>{const _e=assetStoreCreator();return _e.setState({stores:kt}),_e},assetStoreCreator=()=>create((kt,_e)=>({stores:null,assets:{items:{}},gltfLoader:null,dracoLoader:null,actions:{init(){const Dt=new DRACOLoader;Dt.setDecoderPath(`${ASSETS_SOURCE_ROOT}/external-libs/draco/`),Dt.setDecoderConfig({type:"js"});const Vt=new GLTFLoader;Vt.register(Gt=>new GLTFMaterialsVariantsExtension(Gt)),Vt.setDRACOLoader(Dt),kt({dracoLoader:Dt,gltfLoader:Vt})},async loadProxyAsset(Dt){const{assets:Vt,gltfLoader:Gt,stores:zt}=_e(),jt="proxy",Ht=Vt.items[Dt]=Vt.items[Dt]||{isLoaded:!1,errorLoading:!1,proxy:{isLoaded:!1,errorLoading:!1}},Wt=Ht.proxy;if(Wt.isLoaded)return Ht;if(Wt.errorLoading)throw new Error(`${jt} loading failed for: ${Dt}`);const qt=zt.productDataStore.getState().productData[Dt];if(!qt)throw new Error(`Data doesn't exist for ${Dt}`);const Xt=zt.coreSceneStore.getState().CORE_API.getResolvedAssetUrl(qt.colliderProxyGLTF);if(!Xt)return null;try{const Kt=await Gt.loadAsync(Xt,Yt=>{Wt.progress=Yt.loaded/Yt.total*100});return Wt.data=Kt,Wt.isLoaded=!0,Ht}catch(Kt){throw Wt.isLoaded=!1,Wt.errorLoading=!0,Wt.error=Kt,LOGGER.info({title:Xt}),new Error(`Couldn't load ${Dt}`)}},isProxyLoaded(Dt){const Vt=_e().assets.items[Dt];return Vt?Vt.proxy.isLoaded:!1}}}));class Structure{#t=!1;constructor(_e,Dt=null,Vt,Gt){if(this.stores=_e,this._nodes=[],this._rootNode=null,LOGGER.info({title:"preloadNodes",details:Dt}),this.setupHookOnSceneItemsUpdated(),Dt){LOGGER.info({title:"PRELOAD Length-----------------:"+Dt.length});for(let zt=0;zt<Dt.length;zt++){LOGGER.info({title:"FOUND PRELOAD-----------------"});const jt=Dt[zt].skuID;if(jt.toLowerCase()=="root"){const Wt=this.stores.itemStore.getState().itemsSpawned;Object.keys(Wt).length>0&&(Dt[zt].guid=Object.keys(Wt)[0])}let Ht=new Node$1(_e,jt,Dt[zt],Vt,Gt);jt.toLowerCase()=="root"&&(this._rootNode=Ht),this._nodes.push(Ht)}}else{const zt=new Node$1(_e,"Root",null,Vt,Gt);this._rootNode=zt,this._nodes.push(zt),this.stores.itemStore.getState().actions.addItemWithTransform({position:new Vector3(0,0,0),rotation:new Quaternion().identity()},"Root",this._rootNode.guid,!1)}this._boundingBoxLeeway=this.stores.coreSceneStore.getState().sceneSettings.boundingBoxLeeway}async setupHookOnSceneItemsUpdated(){const _e=this.stores.coreSceneStore.getState().CORE_API;this.stores.coreSceneStore.getState().CORE_API.coreWCRef.addEventListener(_e.EVENTS.SCENE.FittingSkuIds_Updated,()=>{this.stores.dynamicHookStore.getState().hookOnSceneItemsUpdated(this._nodes,_e)})}get nodes(){return this._nodes}get rootNode(){return this._rootNode}updatePricing(){for(let _e=0;_e<this._nodes.length;_e++)this._nodes[_e].updatePricing()}getCurrentItemsInReplaceableCategory(){let _e={};for(const Dt of this._nodes)Dt.replace&&(_e[Dt.categoryID]=Dt.skuID);return _e}recalculateStructureFromNode(_e){for(let Dt=0;Dt<_e.plugs.length;Dt++)if(!_e.plugs[Dt].isOpen&&_e.plugs[Dt].isReceiverPlug){const Vt=_e.plugs[Dt].attachedPlug.node,Gt={receiverPlug:_e.plugs[Dt],incomingPlug:_e.plugs[Dt].attachedPlug};if(Gt){const zt=this.findItemTransform(Gt);zt&&(Vt.ref.position.set(zt.position.x,zt.position.y,zt.position.z),zt.rotation.isQuaternion===!0?Vt.ref.setRotationFromQuaternion(zt.rotation):zt.rotation.isEuler===!0&&Vt.ref.setRotationFromEuler(zt.rotation),Vt.transform={position:zt.position,rotation:zt.rotation})}this.recalculateStructureFromNode(Vt)}}rotateNode(_e){const Dt=this.getNodeByGUID(_e);let Vt=null,Gt=null,zt=[];for(let Zt=0;Zt<Dt.plugs.length;Zt++)if(!Vt&&!Dt.plugs[Zt].isOpen&&Dt.plugs[Zt].attachedPlug.isReceiverPlug){Dt.plugs[Zt].attachedPlug.acceptedPlugTypes,Vt=Dt.plugs[Zt].attachedPlug,Gt=Dt.plugs[Zt];for(let Jt=Zt+1;Jt<Dt.plugs.length;Jt++)zt.push(Dt.plugs[Jt]);for(let Jt=0;Jt<Zt;Jt++)zt.push(Dt.plugs[Jt]);break}const jt=[];if(Vt){const Zt=Vt.acceptedPlugTypes;for(let Jt=0;Jt<zt.length;Jt++)for(let nn=0;nn<zt[Jt].connectsToPlugTypes.length;nn++)if(Zt.includes(zt[Jt].connectsToPlugTypes[nn])){jt.push(zt[Jt]);break}}if(jt.length===0)return;const Ht=this.findItemTransform({receiverPlug:Vt,incomingPlug:Gt});if(!Ht)return;Dt.detachNodeFromReceiver();const qt=this.stores.coreSceneStore.getState().sceneSettings.disableCollider,Xt=[Dt.guid,...Dt.getAllBranchedNodesAttachedToUs().map(Zt=>Zt.guid)];for(let Zt=0;Zt<jt.length;Zt++){const Jt=jt[Zt],nn=this.findItemTransform({receiverPlug:Vt,incomingPlug:Jt});if(!nn||!nn.position||!nn.rotation)continue;if(!(!qt&&this.isColliding(Dt.skuID,nn,Vt,Xt))){const{position:Qt,rotation:en}=nn;Dt.ref.position.set(Qt.x,Qt.y,Qt.z),en.isQuaternion===!0?Dt.ref.setRotationFromQuaternion(en):en.isEuler===!0&&Dt.ref.setRotationFromEuler(en),Dt.transform={position:Dt.ref.position,rotation:en},this.connectPlugs({receiverPlug:Vt,incomingPlug:Jt}),this.recalculateStructureFromNode(Dt);return}}const{position:Kt,rotation:Yt}=Ht;Dt.ref.position.set(Kt.x,Kt.y,Kt.z),Yt.isQuaternion===!0?Dt.ref.setRotationFromQuaternion(Yt):Yt.isEuler===!0&&Dt.ref.setRotationFromEuler(Yt),Dt.transform={position:Dt.ref.position,rotation:Yt},this.connectPlugs({receiverPlug:Vt,incomingPlug:Gt}),this.recalculateStructureFromNode(Dt)}hasValidAlternateRotation(_e){const Dt=this.getNodeByGUID(_e);let Vt=null,Gt=[];for(let Xt=0;Xt<Dt.plugs.length;Xt++)if(!Vt&&!Dt.plugs[Xt].isOpen&&Dt.plugs[Xt].attachedPlug.isReceiverPlug){Vt=Dt.plugs[Xt].attachedPlug,Dt.plugs[Xt];for(let Kt=Xt+1;Kt<Dt.plugs.length;Kt++)Gt.push(Dt.plugs[Kt]);for(let Kt=0;Kt<Xt;Kt++)Gt.push(Dt.plugs[Kt]);break}const zt=[];if(Vt){const Xt=Vt.acceptedPlugTypes;for(let Kt=0;Kt<Gt.length;Kt++)for(let Yt=0;Yt<Gt[Kt].connectsToPlugTypes.length;Yt++)if(Xt.includes(Gt[Kt].connectsToPlugTypes[Yt])){zt.push(Gt[Kt]);break}}if(zt.length<=1)return!1;const Ht=this.stores.coreSceneStore.getState().sceneSettings.disableCollider,Wt=[Dt.guid,...Dt.getAllBranchedNodesAttachedToUs().map(Xt=>Xt.guid)];let qt=0;for(let Xt=0;Xt<zt.length;Xt++){const Kt=zt[Xt],Yt=this.findItemTransform({receiverPlug:Vt,incomingPlug:Kt});if(!Yt||!Yt.position||!Yt.rotation)continue;if(!(!Ht&&this.isColliding(Dt.skuID,Yt,Vt,Wt))&&(qt++,qt>=2))return!0}return!1}async load(_e){this.resolvePlugConnections(_e),await this.respawnItems()}materialOverrideExists(){let _e=!1;return this.nodes.map(Dt=>{if(Dt.overrideVariant)return _e=!0,!0}),_e}async findGhostTransformForReplacement(_e,Dt){let Vt=[],Gt=[],zt=[];for(const Ht of Dt){if(Ht.skuID==_e)continue;const Wt=this.stores.attachmentStore.getState().attachmentSystem,qt=Ht.whichPlugAreWeAttachedTo(),Xt=Ht.whichPlugAreWeAttachedUsing(),Yt=new Node$1(this.stores,_e,null,Wt.globalVariants,Wt.globalGeometryVariants).getPlugByName(Xt.name);if(!Yt)continue;const Zt={incomingPlug:Yt,receiverPlug:qt},{position:Jt,rotation:nn}=this.findItemTransform(Zt);Jt&&nn&&(Gt.push({position:Jt,rotation:nn,incomingPlugName:Zt.incomingPlug.name,receiverPlugName:Zt.receiverPlug.name,incomingPlugGUID:Zt.incomingPlug.guid,receiverPlugGUID:Zt.receiverPlug.guid}),zt.push(Zt),Vt.push(Ht))}let jt={transforms:Gt,connectablePlugs:zt,newNodes:Vt,skuIdToReplaceWith:_e};return jt=await this.stores.dynamicHookStore.getState().hookOnNewItemGhostsCollectedForReplacement(jt,this.stores.coreSceneStore.getState().CORE_API),jt}async findGhostTransforms(_e,Dt){const Vt=this.getOpenPlugs(),Gt=this.stores.coreSceneStore.getState().sceneSettings.comboPlugDistanceThreshold;if(Vt.length<=0)return{transforms:[]};const zt=this.stores.attachmentStore.getState().attachmentSystem,jt=this.stores.productDataStore.getState().productData,Ht=new Node$1(this.stores,_e,null,zt.globalVariants,zt.globalGeometryVariants),Wt=this.getConnectablePlugs(Ht,Vt);let qt=[];if(Wt.length<=0)return{transforms:[]};let Xt=[],Kt=[];const Yt=this.stores.assetStore.getState().assets.items[_e].proxy.data.scene;if(!Yt)return!1;let Zt=Yt.clone();for(let rn=0;rn<Wt.length;rn++){let Qt=Dt,{incomingPlug:en,receiverPlug:tn}=Wt[rn],sn=this.findItemTransform(Wt[rn]);if(!sn)continue;let{position:cn,rotation:un}=sn;if(!cn||!un)continue;Zt.position.set(cn.x,cn.y,cn.z),un.isQuaternion===!0?Zt.setRotationFromQuaternion(un):un.isEuler===!0&&Zt.setRotationFromEuler(un);let hn=[],dn=[];if(en.type=="comboPlug"){if(en.connectsToPlugTypes.length<=0)continue;const vn=en.connectsToPlugTypes[0];let _n=!1;if(Kt.map(Cn=>{_n===!0||Cn.length<=0||Cn.map(yn=>{_n===!0||yn.incomingPlug.guid!==en.guid||yn.incomingPlug.connectsToPlugTypes.includes(vn)&&(_n=!0)})}),_n===!0)continue;const An=en.node.plugs;let Tn=!0;if(An.map(Cn=>{if(Cn.type!=="comboPlug"||Cn.guid===en.guid||!Cn.connectsToPlugTypes.includes(vn))return;let yn=!1;if(Vt.map(Sn=>{if(tn.guid===Sn.guid||!Sn.acceptedPlugTypes.includes(vn)||!Sn.node.ref)return;let wn=new Vector3(0,0,0);const xn=Sn.node.ref.getObjectByName(""+Sn.name);if(!xn)return;xn.getWorldPosition(wn);let Rn=new Vector3(0,0,0);const Dn=Zt.getObjectByName(""+Cn.name);if(!Dn)return;Dn.getWorldPosition(Rn);const kn=wn.distanceTo(Rn);Math.abs(kn)<Gt&&(hn.push(tn.node.guid),hn.push(Sn.node.guid),dn.push({receiverPlug:Sn,incomingPlug:Cn}),yn=!0)}),yn==!1){Tn=!1;return}}),!Tn)continue}let pn=Qt;Array.isArray(Qt)===!0&&(pn=!1),hn.length>0&&(pn=!1,Array.isArray(Qt)===!0?hn.map(vn=>{Qt.push(vn)}):Qt=hn),jt[_e].hasOwnProperty("ignoreSpawningCollision")&&(pn=jt[_e].ignoreSpawningCollision),Wt[rn].receiverPlug.type=="unvisualizedPlug"&&(pn=!0),(pn?!1:this.isColliding(Ht.skuID,sn,Wt[rn].receiverPlug,Qt))||(Xt.push({position:cn,rotation:un,incomingPlugName:Wt[rn].incomingPlug.name,receiverPlugName:Wt[rn].receiverPlug.name,incomingPlugGUID:Wt[rn].incomingPlug.guid,receiverPlugGUID:Wt[rn].receiverPlug.guid}),qt.push(Wt[rn]),Kt.push(dn))}let Jt=[];for(let rn=0;rn<Xt.length;rn++)Jt.push(Ht);dispose3(Zt);let nn={transforms:Xt,newNodes:Jt,connectablePlugs:qt,comboPlugs:Kt};return nn=await this.stores.dynamicHookStore.getState().hookOnNewItemGhostsCollected(nn,this.stores.coreSceneStore.getState().CORE_API),nn}resolvePlugConnections(_e){for(let Dt=0;Dt<_e.length;Dt++)Object.keys(_e[Dt].plugs).map(Vt=>{let Gt=_e[Dt].plugs[Vt].guid,zt=this.getPlugInNodesByGUID(Gt);if(!zt||zt.attachedPlug)return;let jt=_e[Dt].plugs[Vt].attachedPlugGUID,Ht=this.getPlugInNodesByGUID(jt);Ht&&(Ht.attachedPlug||(zt.attachPlug(Ht,_e[Dt].plugs[Vt].isReceiverPlug),Ht.attachPlug(zt,!_e[Dt].plugs[Vt].isReceiverPlug)))});LOGGER.info({title:"RESOLVED PLUG CONNECTION: ",details:this})}async respawnItems(){let _e=[this.rootNode];for(let zt=0;zt<_e.length;zt++){let Ht=_e[zt].whichPlugsAreAttachedToUs();for(let Wt=0;Wt<Ht.length;Wt++){if(Ht[Wt].incomingPlug.type=="comboPlug"&&Ht[Wt].incomingPlug.connectsToPlugTypes.length>0&&!Ht[Wt].incomingPlug.comboPlugConnector)continue;let qt=this.findItemTransformForPreload(Ht[Wt],Ht[Wt].receiverPlug.node.transform);if(qt){const Xt=Ht[Wt].receiverPlug,Kt=Ht[Wt].incomingPlug.node,Yt=Xt.dependencySku===Kt.skuID;let Zt=!0;Yt&&(Zt=Xt.isDependencySkuInteractive===1,Kt.isDependent=!0,Kt.isInteractive=Zt,Xt.node.addMyDependenciesGUID(Kt.guid)),await this.stores.itemStore.getState().actions.addItemWithTransform(qt,Kt.skuID,Kt.guid,Zt)}else LOGGER.warn({title:"Problem finding plug transform! "+Ht[Wt].name});Ht[Wt].incomingPlug.node.transform=qt,_e.push(Ht[Wt].incomingPlug.node)}}const Dt=await this.stores.coreSceneStore.getState().CORE_API.getCartItemsAsync();this.stores.coreSceneStore.getState().CORE_API.fireEvent(this.stores.coreSceneStore.getState().CORE_API.EVENTS.SCENE.SavedConfiguration_Loaded,{...Dt}),this.stores.coreSceneStore.getState().actions.triggerAutoFocus(),this.stores.hotspotStore.getState().actions.checkHotspotHealth();const Vt=this.stores.coreSceneStore.getState().preconfigurationLoaded==!1&&this.stores.coreSceneStore.getState().sceneHasDefaultConfigurationID==!1,Gt=this.stores.coreSceneStore.getState().configurationLoaded==!1&&this.stores.coreSceneStore.getState().preconfigurationLoaded==!0&&this.stores.coreSceneStore.getState().configurationLoadedOnRestart==!0;if(Vt||Gt){let zt=Object.assign({},CONFIGURATOR_LOAD_FROM_PRECONFIG);zt.parameters={project_id:`${this.stores.coreSceneStore.getState().CORE_API.projectId}`,...Dt},this.stores.coreSceneStore.getState().CORE_API.sendAnalyticsEvent(zt)}}getPlugInNodesByGUID(_e){for(let Dt=0;Dt<this._nodes.length;Dt++){let Vt=this._nodes[Dt].getPlugByGUID(_e);if(Vt)return Vt}return null}export(){let _e=[];for(let Dt=0;Dt<this._nodes.length;Dt++){let Vt=this._nodes[Dt].export();Vt&&_e.push(Vt)}return _e}async clear(){return new Promise(async(_e,Dt)=>{!this._rootNode&&this._rootNode.isEndNode&&_e(!0);let Vt=null;const Gt=this._rootNode.whichNodesAreAttachedToUs();Gt.length>0&&(Vt=Gt[0]),this.#t=!0,this.stores.coreSceneStore.getState().CORE_API.coreWCRef.addEventListener(this.stores.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Scene_Cleared,zt=>_e(zt.data),{once:!0}),Vt?this.stores.coreSceneStore.getState().CORE_API.removeItemByGUID(Vt.guid,!0):(await wait(500),_e(!0))})}getNodeByGUID(_e){for(let Dt=0;Dt<this._nodes.length;Dt++)if(this._nodes[Dt].guid==_e)return this._nodes[Dt];return null}getPlugByGUID(_e){for(const Dt of this._nodes){const Vt=Dt.getPlugByGUID(_e);if(Vt)return Vt}return null}findItemTransformForPreload(_e,Dt){let{receiverPlug:Vt,incomingPlug:Gt}=_e,zt=Vt,jt=Gt;if(zt.node.skuID=="Root")return this.findItemTransformRoot(_e);let Ht=null,Wt=null,qt=new Object3D,Xt=this.stores.assetStore.getState().assets.items[zt.node.skuID].proxy.data.scene.clone();qt.add(Xt);let{position:Kt,rotation:Yt}=Dt;if(Xt.position.set(Kt.x,Kt.y,Kt.z),Yt.isQuaternion===!0?Xt.setRotationFromQuaternion(Yt):Yt.isEuler===!0&&Xt.setRotationFromEuler(Yt),Wt=Xt,!Wt||(Ht=Wt.getObjectByName(zt.name),!Ht))return;let Zt=new Vector3(0,0,0);Ht.getWorldPosition(Zt);let Jt=new Quaternion().identity();Ht.getWorldQuaternion(Jt);let nn=new Object3D;Ht.add(nn);let rn=this.stores.assetStore.getState().assets.items[jt.node.skuID].proxy.data.scene.clone();rn.position.set(Zt.x,Zt.y,Zt.z),rn.applyQuaternion(Jt);let Qt=new Vector3;Qt.copy(Xt.up).applyQuaternion(Wt.quaternion);let en=new Vector3;en.copy(rn.up).applyQuaternion(Jt),en.negate();let tn=new Quaternion().setFromUnitVectors(Qt,en);Qt.round(),en.round();let sn=Qt.dot(en);sn!==1&&sn!==-1&&rn.applyQuaternion(tn);let cn=rn.getObjectByName(jt.name),un=new Quaternion().identity();cn.getWorldQuaternion(un);let hn=new Vector3(0,1,0);hn.applyQuaternion(un);let dn=new Vector3(0,1,0);dn.applyQuaternion(Jt),dn.negate();let pn=new Quaternion().setFromUnitVectors(hn,dn);if(hn.round(),dn.round(),hn.dot(dn)!==-1)rn.applyQuaternion(pn);else{let An=new Vector3(0,1,0),Tn=dn.dot(An);if(Tn!==1&&Tn!==-1)rn.rotateOnAxis(An,Math.PI);else{let Cn=new Vector3(0,0,1),yn=dn.dot(Cn);if(yn!==1&&yn!==-1)rn.rotateOnAxis(Cn,Math.PI);else{let Sn=new Vector3(1,0,0),wn=dn.dot(Sn);wn!==1&&wn!==-1&&rn.rotateOnAxis(Sn,Math.PI)}}}let mn=rn.getObjectByName(jt.name),vn=new Vector3(mn.position.x,mn.position.y,mn.position.z);rn.translateX(-vn.x),rn.translateY(-vn.y),rn.translateZ(-vn.z);let _n=new Vector3(0,0,0);rn.getWorldPosition(_n);let En=new Quaternion().identity();return rn.getWorldQuaternion(En),rn=null,{position:_n,rotation:En}}findItemTransformRoot(_e){let{receiverPlug:Dt,incomingPlug:Vt}=_e,Gt=Vt;const zt=new Object3D;let jt=zt,Ht=new Vector3(0,0,0);jt.getWorldPosition(Ht);let Wt=new Quaternion().identity(),qt=new Object3D;qt.position.set(0,0,0),zt.add(qt);let Xt=this.stores.assetStore.getState().assets.items[Gt.node.skuID].proxy.data.scene.clone();qt.attach(Xt),Xt.translateX(Ht.x),Xt.translateY(Ht.y),Xt.translateZ(Ht.z);let Kt=Xt.getObjectByName(Gt.name),Yt=new Quaternion().identity();Kt&&Kt.getWorldQuaternion(Yt);const Zt=new Vector3(0,1,0);Zt.applyQuaternion(Yt);const Jt=new Vector3(0,1,0);Jt.applyQuaternion(Wt);const nn=Jt.angleTo(Zt),rn=new Vector3(0,0,0);rn.crossVectors(Jt,Zt),rn.round(),rn.length()!==0&&Xt.rotateOnAxis(rn,nn);let Qt=new Matrix4().extractRotation(Xt.matrixWorld),en=new Vector3(0,0,0);Kt&&en.set(Kt.position.x,Kt.position.y,Kt.position.z),en.applyMatrix4(Qt),Xt.translateX(-en.x),Xt.translateY(-en.y),Xt.translateZ(-en.z);let tn=new Vector3(0,0,0);Xt.getWorldPosition(tn);let sn=new Quaternion().identity();return Xt.getWorldQuaternion(sn),qt.remove(Xt),qt=null,Xt=null,{position:tn,rotation:sn}}findItemTransform(_e){let{receiverPlug:Dt,incomingPlug:Vt}=_e,Gt=Dt,zt=Vt;if(Gt.node.isRoot)return this.findItemTransformRoot(_e);const jt=Gt.node.transform;if(!jt)return;const Ht=this.stores.assetStore.getState().assets.items[Gt.node.skuID].proxy.data.scene.clone(),Wt=new Object3D;Wt.position.set(jt.position.x,jt.position.y,jt.position.z),jt.rotation.isQuaternion===!0?Wt.setRotationFromQuaternion(jt.rotation):jt.rotation.isEuler===!0&&Wt.setRotationFromEuler(jt.rotation),Wt.add(Ht);let qt=Wt.getObjectByName(""+Gt.name);if(!qt){LOGGER.error({title:"Plug: "+Gt.name+" doesn't exist in "+Gt.node.skuID});return}let Xt=new Vector3(0,1,0);qt.getWorldPosition(Xt);let Kt=new Quaternion().identity();qt.getWorldQuaternion(Kt);let Yt=this.stores.assetStore.getState().assets.items[zt.node.skuID].proxy.data.scene.clone();Yt.position.set(Xt.x,Xt.y,Xt.z),Yt.applyQuaternion(Kt);let Zt=new Vector3;Zt.copy(Ht.up).applyQuaternion(Wt.quaternion);let Jt=new Vector3;Jt.copy(Yt.up).applyQuaternion(Kt),Jt.negate();let nn=new Quaternion().setFromUnitVectors(Zt,Jt);Zt.round(),Jt.round();let rn=Zt.dot(Jt);rn!==1&&rn!==-1&&Yt.applyQuaternion(nn);let Qt=Yt.getObjectByName(zt.name);if(!Qt){LOGGER.error({title:"Plug: "+zt.name+" doesn't exist in "+zt.node.skuID});return}let en=new Quaternion().identity();Qt.getWorldQuaternion(en);let tn=new Vector3(0,1,0);tn.applyQuaternion(en);let sn=new Vector3(0,1,0);sn.applyQuaternion(Kt),sn.negate();let cn=new Quaternion().setFromUnitVectors(tn,sn);if(tn.round(),sn.round(),tn.dot(sn)!==-1)Yt.applyQuaternion(cn);else{let mn=new Vector3(0,1,0),vn=sn.dot(mn);if(vn!==1&&vn!==-1)Yt.rotateOnAxis(mn,Math.PI);else{let _n=new Vector3(0,0,1),En=sn.dot(_n);if(En!==1&&En!==-1)Yt.rotateOnAxis(_n,Math.PI);else{let An=new Vector3(1,0,0),Tn=sn.dot(An);Tn!==1&&Tn!==-1&&Yt.rotateOnAxis(An,Math.PI)}}}let hn=Yt.getObjectByName(zt.name),dn=new Vector3(hn.position.x,hn.position.y,hn.position.z);Yt.translateX(-dn.x),Yt.translateY(-dn.y),Yt.translateZ(-dn.z);let pn=new Vector3(0,0,0);Yt.getWorldPosition(pn);let fn=new Quaternion().identity();return Yt.getWorldQuaternion(fn),Wt.remove(Ht),Yt=null,{position:pn,rotation:fn}}getSpawningRequirementForSkuID(_e){let Dt=[];const Vt=this.stores.productDataStore.getState().productData,Gt=Vt[_e];if(!Gt)return Dt;const zt=[];return Gt.plugs.map(jt=>{jt.connectsToPlugTypes.map(Ht=>{zt.push(Ht)})}),Object.keys(Vt).map(jt=>{for(let Ht=0;Ht<Vt[jt].plugs.length;Ht++){const Wt=Vt[jt].plugs[Ht].acceptedPlugTypes;for(let qt=0;qt<Wt.length;qt++)zt.map(Xt=>{Xt==Wt[qt]&&!Dt.includes(jt)&&Dt.push(jt)})}}),Dt}getConnectablePlugs(_e,Dt){let Vt=[],Gt=_e.getOpenPlugsWeCanAttachFrom();for(let zt=0;zt<Gt.length;zt++)for(let jt=0;jt<Dt.length;jt++){let Ht=!1;for(let qt=0;qt<Vt.length;qt++)if(Vt[qt].receiverPlug.guid==Dt[jt].guid&&Vt[qt].incomingPlug.type!="comboPlug"){Ht=!0;break}if(Ht)continue;Gt[zt].canAttachToPlug(Dt[jt])&&Vt.push({incomingPlug:Gt[zt],receiverPlug:Dt[jt]})}return Vt}getOpenPlugs(){let _e=[];return this._nodes.map(Dt=>{if(Dt.dragging===!0)return;let Vt=Dt.getOpenPlugsFromNode();_e=_e.concat(Vt)}),_e}checkCollisionForGUID(_e,Dt=[]){if(this.stores.coreSceneStore.getState().sceneSettings.disableCollider)return!1;const Vt=this.stores.itemStore.getState().itemsSpawned,Gt=this.stores.productDataStore.getState().productData;if(!Vt[_e])return!1;const jt=this.getNodeByGUID(_e);if(!jt||!jt.ref||Gt[jt.skuID].disableCollider)return!1;let Ht=new Vector3;jt.ref.getWorldPosition(Ht);let Wt=new Quaternion;jt.ref.getWorldQuaternion(Wt);const qt={position:Ht,rotation:Wt},Xt=jt.whichPlugAreWeAttachedTo();return Xt==null?!1:this.isColliding(jt.skuID,qt,Xt,Dt)}isColliding(_e,{position:Dt,rotation:Vt},Gt,zt=[]){const jt=this.stores.assetStore.getState().assets.items[_e].proxy.data.scene,Ht=this.stores.productDataStore.getState().productData;if(!jt)return!1;let Wt=jt.clone();Wt.position.set(Dt.x,Dt.y,Dt.z),Vt.isQuaternion===!0?Wt.setRotationFromQuaternion(Vt):Vt.isEuler===!0&&Wt.setRotationFromEuler(Vt);let qt=new Box3().setFromObject(Wt),Xt=new Vector3;qt.getCenter(Xt);let Kt=new Object3D;Kt.position.set(Xt.x,Xt.y,Xt.z),Kt.attach(Wt),Kt.scale.set(this._boundingBoxLeeway,this._boundingBoxLeeway,this._boundingBoxLeeway),qt=new Box3().setFromObject(Kt);const Yt=[];if(this._nodes.forEach(Jt=>{if(Gt.node.guid==Jt.guid||Array.isArray(zt)===!0&&zt.includes(Jt.guid)||!Jt.ref||(Ht[Jt.skuID].hasOwnProperty("disableCollider")?Ht[Jt.skuID].disableCollider:this.stores.coreSceneStore.getState().sceneSettings.disableCollider))return;const nn=Jt.ref.getObjectByName("GRP_ProxyMesh");nn&&Yt.push(nn)}),Yt.length<=0)return!1;let Zt=!1;return Yt.forEach(Jt=>{if(Zt)return;let nn=new Box3().setFromObject(Jt);if(qt.intersectsBox(nn)){Zt=!0;return}}),Kt.clear(),Wt=null,Kt=null,qt=null,Zt}boxOverlapPercent(_e,Dt){if(_e.containsBox(Dt)||Dt.containsBox(_e))return 100;if(!(_e.min.x<Dt.max.x||Dt.min.x<_e.max.x))return 0;let Vt=new Vector3(0,0,0);_e.getSize(Vt),Vt.x*Vt.y*Vt.z;let Gt=new Vector3(0,0,0);Dt.getSize(Gt),Gt.x*Gt.y*Gt.z}checkInsideOutCollision(_e,Dt,Vt){let Gt=Dt.position.clone(),zt=new Float32Array(Vt.attributes.position.array),jt=zt.length/3;for(let Ht=0;Ht<jt;Ht++){let Wt=new Vector3(zt[Ht*3],zt[Ht*3+1],zt[Ht*3+2]),qt=Wt.add(Dt.position);qt=Wt.applyQuaternion(Dt.quaternion);let Xt=qt.sub(Dt.position);const Yt=new Raycaster(Gt,Xt.clone().normalize()).intersectObjects(_e),Zt=Yt.length>0,Jt=Yt[0].distance<Xt.length();if(Zt&&Jt)return!0}return!1}addNode(_e){this._nodes.push(_e)}getFirstNodeByCategoryID(_e){for(let Dt=0;Dt<this._nodes.length;Dt++)if(this._nodes[Dt]._categoryID==_e)return this._nodes[Dt];return null}getNodesBySKUID(_e){let Dt=[];for(let Vt=0;Vt<this._nodes.length;Vt++)this._nodes[Vt].skuID==_e&&Dt.push(this._nodes[Vt]);return Dt}getNodesByCategoryID(_e){let Dt=[];for(let Vt=0;Vt<this._nodes.length;Vt++)this._nodes[Vt]._categoryID==_e&&Dt.push(this._nodes[Vt]);return Dt}async connectPlugs({incomingPlug:_e,receiverPlug:Dt}){_e.attachPlug(Dt,!1),Dt.attachPlug(_e,!0),await this.stores.attachmentStore.getState().actions.toggleStructureUpdated()}removeNodeByGUID(_e){for(let Dt=0;Dt<this._nodes.length;Dt++)if(this._nodes[Dt].guid==_e){this._nodes[Dt].removeNode(),this._nodes.splice(Dt,1);break}this._nodes.length==1&&this.#t&&this.stores.coreSceneStore.getState().CORE_API.fireEvent(this.stores.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Scene_Cleared,!0),this.stores.attachmentStore.getState().actions.updateFittingSkuIds(),this.stores.attachmentStore.getState().actions.toggleStructureUpdated()}async removeNodeFromStructure(_e){for(let Dt=0;Dt<this._nodes.length;Dt++)if(this._nodes[Dt].guid==_e.guid){this._nodes.splice(Dt,1);break}await this.stores.attachmentStore.getState().actions.toggleStructureUpdated()}}class AttachmentSystem{constructor(_e){this._globalVariants={},this._globalGeometryVariants={},this.stores=_e,this.stores.productDataStore.getState().categoryData.geometryVariants.map(Dt=>{this._globalGeometryVariants[Dt.id]=Dt.defaultVariant}),this.stores.productDataStore.getState().categoryData.color.map(Dt=>{this._globalVariants[Dt.id]=Dt.defaultLook}),this._currentStructure=new Structure(this.stores,null,this._globalVariants,this._globalGeometryVariants);for(const[Dt,Vt]of Object.entries(this._globalVariants))this.switchGlobalVariant(Dt,Vt);for(const[Dt,Vt]of Object.entries(this._globalGeometryVariants))this.switchGlobalGeometryVariant(Dt,Vt)}get globalGeometryVariants(){return this._globalGeometryVariants}get globalVariants(){return this._globalVariants}get currentStructure(){return this._currentStructure}getClientProductId(_e,Dt){let Vt;return Vt=this.stores.productDataStore.getState()?.productData[_e]?.lookDetails[Dt],Vt?.clientProductId?Vt?.clientProductId:""}getCartItems(){let _e=[];const Dt=this.stores.inventoryStore.getState().inventoryData;let Vt=!1;this.currentStructure.nodes.map(Ht=>{if(Ht.skuID=="Root"||Ht.ignoreInCart===!0)return;let Wt=!1;if(_e.map(Kt=>{const Yt=Dt[Kt.skuID];if(Kt.skuID==Ht.skuID&&Kt.currentVariant==Ht.currentVariant){Kt.count++,Kt.countAvailable=Yt[Ht.currentVariant].countAvailable,Kt.countUnavailable=Yt[Ht.currentVariant].countUnavailable,Kt.price=Ht.price*Kt.count,Kt.compareAtPrice=Ht.compareAtPrice*Kt.count,Wt=!0;return}}),Wt===!0)return;let qt={};qt.skuID=Ht.skuID,qt.currentVariant=Ht.currentVariant,qt.clientProductId=this.getClientProductId(qt.skuID,qt.currentVariant),qt.count=1;const Xt=Dt[qt.skuID];qt.price=Ht.price,qt.compareAtPrice=Ht.compareAtPrice*qt.count,Ht.compareAtPrice>0&&(Vt=!0),qt.countAvailable=Xt[Ht.currentVariant].countAvailable,qt.countUnavailable=Xt[Ht.currentVariant].countUnavailable,_e.push(qt)});let Gt=0,zt=0;for(const Ht of _e)Gt=Gt+Ht.price,Vt&&(zt=zt+(Ht.compareAtPrice==0?Ht.price:Ht.compareAtPrice));return{cartItems:_e,details:{total:Gt.toFixed(2),compareAtTotal:zt}}}async getCartItemsAsync(){let _e=[];const Dt=this.stores.inventoryStore.getState().inventoryData;let Vt=!1;this.currentStructure.nodes.map(Ht=>{if(Ht.skuID=="Root"||Ht.ignoreInCart===!0)return;let Wt=!1;if(_e.map(Kt=>{const Yt=Dt[Kt.skuID];if(Kt.skuID==Ht.skuID&&Kt.currentVariant==Ht.currentVariant){Kt.count++,Kt.countAvailable=Yt[Ht.currentVariant].countAvailable,Kt.countUnavailable=Yt[Ht.currentVariant].countUnavailable,Kt.price=Ht.price*Kt.count,Kt.compareAtPrice=Ht.compareAtPrice*Kt.count,Wt=!0;return}}),Wt===!0)return;let qt={};qt.skuID=Ht.skuID,qt.currentVariant=Ht.currentVariant,qt.clientProductId=this.getClientProductId(qt.skuID,qt.currentVariant),qt.count=1;const Xt=Dt[qt.skuID];qt.price=Ht.price,qt.compareAtPrice=Ht.compareAtPrice*qt.count,qt.compareAtPrice>0&&(Vt=!0),qt.countAvailable=Xt[Ht.currentVariant].countAvailable,qt.countUnavailable=Xt[Ht.currentVariant].countUnavailable,qt.guid=Ht.guid,_e.push(qt)}),_e=await this.stores.dynamicHookStore.getState().hookOnCartItemsCollected(_e,this.stores.coreSceneStore.getState().CORE_API);let Gt=0,zt=0;for(const Ht of _e)Gt=Gt+Ht.price,Vt&&(zt=zt+(Ht.compareAtPrice==0?Ht.price:Ht.compareAtPrice));return{cartItems:_e,details:{total:Gt.toFixed(2),compareAtTotal:zt.toFixed(2)}}}async getFittingSKUIDs(){if(!this.currentStructure)return[];const{productData:_e}=this.stores.productDataStore.getState(),{sceneSettings:Dt}=this.stores.coreSceneStore.getState(),{draggableUI:Vt,ignoreSpawningCollision:Gt}=Dt;if(!this.currentStructure)return[];const{openPlugTypes:zt,closedPlugTypes:jt,existingSkuids:Ht}=this.analyzeCurrentStructure();if(zt.size===0&&jt.size===0)return[];const Wt=this.findFittingSkuids(_e,zt,jt,Ht,Vt);return this.filterNonBlockedSkuids(Wt,_e,Gt)}analyzeCurrentStructure(){const _e=this.currentStructure.nodes,Dt=new Set,Vt=new Set,Gt=new Set;for(const zt of _e){Gt.add(zt.skuID);for(const jt of zt.plugs)jt.isOpen?jt.acceptedPlugTypes.forEach(Ht=>Dt.add(Ht)):jt.attachedPlug.node.replace&&jt.acceptedPlugTypes.forEach(Ht=>Vt.add(Ht))}return{openPlugTypes:Dt,closedPlugTypes:Vt,existingSkuids:Gt}}findFittingSkuids(_e,Dt,Vt,Gt,zt){const jt=new Set;for(const[Ht,Wt]of Object.entries(_e))if(Wt.plugs)for(const qt of Wt.plugs){for(const Xt of qt.connectsToPlugTypes)if((this.isClosedPlugFitting(Ht,Wt,Xt,Vt,Gt,zt)||this.isOpenPlugFitting(Wt,Xt,Dt))&&jt.add(Ht),jt.has(Ht))break;if(jt.has(Ht))break}return jt}isClosedPlugFitting(_e,Dt,Vt,Gt,zt,jt){if(!Gt.has(Vt)||!jt&&zt.has(_e))return!1;const Ht=this.currentStructure.getNodesByCategoryID(Dt.categoryID);for(const Wt of Ht)if(Wt.skuID!==_e&&this.isNodeCompatible(Wt,Dt))return!0;return!1}isNodeCompatible(_e,Dt){let Vt=!1;for(const Gt of _e.plugs)if(!Gt.isOpen&&Gt.isReceiverPlug&&(Vt=!0,this.isPlugCompatible(Gt,Dt.plugs)))return!0;return!Vt}isPlugCompatible(_e,Dt){return Dt.some(Vt=>Vt.name===_e.name&&_e.attachedPlug.connectsToPlugTypes.some(Gt=>Vt.acceptedPlugTypes.includes(Gt)))}isOpenPlugFitting(_e,Dt,Vt){if(!Vt.has(Dt))return!1;const Gt=this.currentStructure.getFirstNodeByCategoryID(_e.categoryID);return!Gt||!Gt.replace}async filterNonBlockedSkuids(_e,Dt,Vt){const Gt=[];for(const zt of _e)if(Dt[zt].replace)Gt.push(zt);else{const jt=await this.currentStructure.findGhostTransforms(zt,Vt);jt&&jt.transforms.length>0&&Gt.push(zt)}return Gt}async removeAllVariantOverrides(){let _e=this._currentStructure.nodes,Dt=this.stores.productDataStore.getState().productData,Vt=this.stores.itemStore.getState().itemsSpawned;return await _e.map(async Gt=>{if(!Gt.overrideVariant||(Gt.overrideVariant=null,!Dt[Gt.skuID].looks))return;let zt=null;Object.keys(this._globalVariants).map(jt=>{Dt[Gt.skuID].looks.includes(this._globalVariants[jt])&&zt==null&&(zt=this._globalVariants[jt])}),zt&&await this.stores.itemStore.getState().actions.switchToVariant(Vt[Gt.guid].itemData,zt)}),this.stores.coreSceneStore.getState().CORE_API.alert({alertMsg:"Changes to individual items in the scene have been cleared",alertTime:6e3,alertType:"info",alertLabel:"Overrides Removed",alertId:"overridesRemoved"}),this.stores.coreSceneStore.getState().CORE_API.fireEvent(this.stores.coreSceneStore.getState().CORE_API.EVENTS.SCENE.MaterialOverrides_Exists,!1),!0}async switchGlobalGeometryVariant(_e,Dt){const Gt=this.stores.productDataStore.getState().categoryData.geometryVariants;let zt=null;if(Gt.map(Yt=>{Yt.id==_e&&(zt=Yt)}),!zt)return;const jt=zt.productsInCategory,Wt=zt.variants[Dt].productsToSwitch,qt=this.stores.itemStore.getState().itemsSpawned;let Xt=this.stores.productDataStore.getState().categoryData;Wt.map(Yt=>{jt.map(Zt=>{let Jt=!1;Zt.products.map(nn=>{Yt==nn&&(Jt=!0)}),Jt&&Xt.build.map(nn=>{Zt.products.map(rn=>{nn.skus.map((Qt,en)=>{nn.skus[en]==rn&&(nn.skus[en]=Yt)})})})})}),this._currentStructure.nodes.map(Yt=>{jt.map(Zt=>{Zt.products.map(Jt=>{Yt.skuID==Jt&&Yt.ref!==null&&Zt.products.map(nn=>{Wt.map(rn=>{if(rn==nn){const Qt=this.stores.productDataStore.getState().actions.getProductDataById(rn);let en=Qt.geometriesToHide;Yt.plugs.map(sn=>{!sn.isOpen&&sn.attachedPlug&&sn.type=="weighted_hider"&&sn.attachedPlug.weight>sn.weight&&(en=en.concat(sn.affectedNodes))}),Yt.showNodes(Qt.geometriesToShow),Yt.hideNodes(en),Yt.skuID=rn;const tn=qt[Yt.guid];if(tn&&tn.itemData){Object.keys(Qt).map(cn=>{tn.itemData[cn]=Qt[cn]});const sn=this.stores.assetStore.getState().assets.items[rn];sn&&sn.proxy.isLoaded&&(tn.itemData.proxyScene=sn.proxy.data.scene)}Yt.resetInStock(),Yt.updatePricing()}})})})})}),this.stores.itemStore.setState({itemsSpawned:{...this.stores.itemStore.getState().itemsSpawned}}),this._globalGeometryVariants[_e]=Dt,this.stores.hotspotStore.getState().actions.checkHotspotHealth(),this.stores.inventoryStore.getState().actions.refreshInventory(qt),this.stores.coreSceneStore.getState().actions.triggerAutoFocus(),this.stores.productDataStore.setState({categoryData:Xt}),this.stores.coreSceneStore.getState().CORE_API.fireEvent(this.stores.coreSceneStore.getState().CORE_API.EVENTS.SCENE.CategoryData_Updated,Xt),this.stores.coreSceneStore.getState().CORE_API.fireEvent(this.stores.coreSceneStore.getState().CORE_API.EVENTS.SCENE.GlobalGeometryVariant_Updated,this._globalGeometryVariants);const Kt=await this.getCartItemsAsync();Kt&&this.stores.coreSceneStore.getState().CORE_API.fireEvent(this.stores.coreSceneStore.getState().CORE_API.EVENTS.SCENE.CartItems_Updated,Kt)}async switchGlobalVariant(_e,Dt){this._globalVariants[_e]=Dt;const Vt=this.stores.itemStore.getState().actions;let Gt=this.stores.itemStore.getState().itemsSpawned;for(let Wt=0;Wt<Object.keys(Gt).length;Wt++){let qt=Gt[Object.keys(Gt)[Wt]];if(qt.itemData.looks&&qt.itemData.looks.includes(Dt)){let Xt=this._currentStructure.getNodeByGUID(qt.itemData.guid);Xt&&!Xt.overrideVariant&&await Vt.switchToVariant(qt.itemData,Dt)}}const zt=this.stores.productDataStore.getState().lookData;this.stores.lightStore.getState().actions.processLookEnvMapOverride(Dt);const jt=_e;Object.keys(Gt).length>0&&this.stores.coreSceneStore.getState().CORE_API.alert({alertMsg:jt.charAt(0).toUpperCase()+jt.slice(1)+" was successfully switched to "+zt[Dt].label+".",alertTime:3e3,alertType:"success",alertLabel:`${jt} Changed`,alertId:"materialVariantChanged"}),this.stores.coreSceneStore.getState().CORE_API.fireEvent(this.stores.coreSceneStore.getState().CORE_API.EVENTS.SCENE.GlobalVariant_Updated,this._globalVariants),this.stores.itemStore.setState({variantChangeAlert:!this.stores.itemStore.getState().variantChangeAlert});const Ht=await this.getCartItemsAsync();Ht&&this.stores.coreSceneStore.getState().CORE_API.fireEvent(this.stores.coreSceneStore.getState().CORE_API.EVENTS.SCENE.CartItems_Updated,Ht)}async#t(_e){if(!_e)return;LOGGER.info({title:"Structure to load",details:_e}),delete this._currentStructure,this._globalVariants={..._e.globalVariants},this._globalGeometryVariants=_e.globalGeometryVariants?{..._e.globalGeometryVariants}:{};const Dt=[..._e.structure];this._currentStructure=new Structure(this.stores,Dt,this._globalVariants,this._globalGeometryVariants);for(const[Vt,Gt]of Object.entries(this._globalVariants))this.switchGlobalVariant(Vt,Gt);for(const[Vt,Gt]of Object.entries(this._globalGeometryVariants))this.switchGlobalGeometryVariant(Vt,Gt);LOGGER.info({title:"Structure Loading..."}),await this._currentStructure.load(Dt),LOGGER.info({title:"Structure Loaded."})}async loadStructure(_e){if(!_e)return;this.stores.coreSceneStore.getState().CORE_API.fireEvent(this.stores.coreSceneStore.getState().CORE_API.EVENTS.UI.PreloadScreen_Show),this.stores.coreSceneStore.setState({configurationLoaded:!1}),await wait(500),await this._currentStructure.clear(),await this.#t(_e),this.stores.coreSceneStore.getState().preconfigurationLoaded?this.stores.coreSceneStore.getState().CORE_API.fireEvent(this.stores.coreSceneStore.getState().CORE_API.EVENTS.UI.PreloadScreen_Hide):this.stores.coreSceneStore.setState({preconfigurationLoaded:!0}),this.stores.coreSceneStore.getState().configurationLoadedOnRestart||this.stores.coreSceneStore.setState({configurationLoadedOnRestart:!0}),this.stores.coreSceneStore.setState({configurationLoaded:!0}),await this.stores.attachmentStore.getState().actions.toggleStructureUpdated();const Dt=this.stores.itemStore.getState().itemsSpawned;this.stores.coreSceneStore.getState().CORE_API.fireEvent(this.stores.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Items_Updated,{itemsSpawned:Dt}),this.stores.inventoryStore.getState().actions.refreshInventory(Dt),await this.stores.attachmentStore.getState().actions.updateFittingSkuIds()}export(){return{experienceId:this.stores.coreSceneStore.getState().CORE_API.experienceId,structure:this._currentStructure.export(),globalVariants:this._globalVariants,globalGeometryVariants:this._globalGeometryVariants}}async clear(){this.stores.coreSceneStore.getState().CORE_API.fireEvent(this.stores.coreSceneStore.getState().CORE_API.EVENTS.UI.PreloadScreen_Show),await this._currentStructure.clear(),this.stores.coreSceneStore.getState().CORE_API.fireEvent(this.stores.coreSceneStore.getState().CORE_API.EVENTS.UI.PreloadScreen_Hide)}async restart(){LOGGER.warn({title:"Restarting the Scene!!"}),this.stores.itemStore.getState().selectedItemData&&this.stores.itemStore.getState().actions.deselectItem();const _e=this.stores.attachmentStore.getState().defaultConfig;this.stores.coreSceneStore.setState({configurationLoaded:!1,configurationLoadedOnRestart:!1}),this.stores.coreSceneStore.getState().CORE_API.fireEvent(this.stores.coreSceneStore.getState().CORE_API.EVENTS.UI.PreloadScreen_Show),await wait(500),await this._currentStructure.clear(),await this.#t(_e),await this.stores.attachmentStore.getState().actions.toggleStructureUpdated(),this.stores.coreSceneStore.setState({configurationLoaded:!0,configurationLoadedOnRestart:!0}),this.stores.coreSceneStore.getState().CORE_API.fireEvent(this.stores.coreSceneStore.getState().CORE_API.EVENTS.UI.PreloadScreen_Hide);const Dt=this.stores.itemStore.getState().itemsSpawned;this.stores.coreSceneStore.getState().CORE_API.fireEvent(this.stores.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Items_Updated,{itemsSpawned:Dt}),this.stores.inventoryStore.getState().actions.refreshInventory(Dt),await this.stores.attachmentStore.getState().actions.updateFittingSkuIds()}}const createAttachmentStore=kt=>{const _e=attachmentStoreCreator();return _e.setState({stores:kt}),_e},attachmentStoreCreator=()=>create((kt,_e)=>({stores:null,attachmentSystem:null,defaultConfig:null,structureUpdated:!1,colliderMeshRef:null,placeholderRef:null,draggingItem:null,snappingThreshold:.5,actions:{initializeAttachmentSystem:async Dt=>{const{actions:Vt,defaultConfig:Gt}=_e();LOGGER.info({title:"Initializing Attachment System!"});const zt=await new AttachmentSystem(Dt);kt({attachmentSystem:zt}),await Vt.updateFittingSkuIds(),await Vt.toggleStructureUpdated()},loadSavedStructureFromConfigID:async Dt=>{const{stores:Vt}=_e();LOGGER.info({title:"Fetching Structure Using ConfigID!"});let Gt="";Dt.length==20&&(Gt=FETCH_CONFIG_ENDPOINT_FB+Dt);let zt=null;return Gt!=""?zt=await getJSONFromEndpoint(Gt):zt=await Vt.nexusApiInstance.getExperienceSaveAndShare(Vt.experienceId,Dt),zt.success===!1?null:Dt.length==20?zt.data:zt.payload.save_data},loadDefaultStructure:async()=>{const{actions:Dt,defaultConfig:Vt}=_e();LOGGER.info({title:"Loading Default Structure!"}),await Dt.loadStructure(Vt)},updateFittingSkuIds:async()=>{const{stores:Dt,attachmentSystem:Vt}=_e();if(!Dt.coreSceneStore.getState().preconfigurationLoaded||!Dt.coreSceneStore.getState().configurationLoaded)return;const Gt=await Vt.getFittingSKUIDs();Gt&&(Dt.itemStore.setState({fittingSkuIds:[...Gt]}),Dt.coreSceneStore.getState().CORE_API.fireEvent(Dt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.FittingSkuIds_Updated,{skuids:Gt}))},toggleStructureUpdated:async()=>{const{attachmentSystem:Dt,stores:Vt}=_e();if(kt(zt=>({structureUpdated:!zt.structureUpdated})),!Vt.coreSceneStore.getState().preconfigurationLoaded||!Vt.coreSceneStore.getState().configurationLoaded)return;Vt.coreSceneStore.getState().CORE_API.fireEvent(Vt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.ReplaceableCategory_Updated,Dt.currentStructure.getCurrentItemsInReplaceableCategory());const Gt=await Dt.getCartItemsAsync();Gt&&Vt.coreSceneStore.getState().CORE_API.fireEvent(Vt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.CartItems_Updated,Gt)},loadStructure:async Dt=>{const{attachmentSystem:Vt,stores:Gt}=_e();LOGGER.info({title:"Loading Structure!"}),Vt&&Gt.coreSceneStore.getState().configurationLoaded!==!1&&await Vt.loadStructure(Dt)},export:()=>{const{attachmentSystem:Dt}=_e();if(Dt)return Dt.export()}}})),createInfoStore=kt=>{const _e=infoStoreCreator();return _e.setState({stores:kt}),_e},infoStoreCreator=()=>create((kt,_e)=>({stores:null,infoObject:{},populateInfoObject:Dt=>{kt(Vt=>({infoObject:Dt}))},infoModalOpen:!1,updateInfoModalOpen:Dt=>{kt(Vt=>({infoModalOpen:Dt}))}})),createUIHotspotStore=kt=>{const _e=uiHotspotStoreCreator();return _e.setState({stores:kt}),_e},uiHotspotStoreCreator=()=>create((kt,_e)=>({stores:null,activeHotspotData:null,activeFeatureID:"",actions:{enterHotspotInFeaturesTab(Vt){const{stores:Gt}=_e();Gt.uiSceneStore.getState().sideMenuState!==2&&Gt.uiSceneStore.setState({sideMenuState:2}),kt({activeFeatureID:Vt})},exitHotspot(){kt({activeFeatureID:null})}}})),createColorStore=kt=>{const _e=colorStoreCreator();return _e.setState({stores:kt}),_e},colorStoreCreator=()=>create((kt,_e)=>({stores:null,allActiveVariants:{},allActiveGeometryVariants:{}})),arrayWithoutElementAtIndex=function(kt,_e){return kt.filter(function(Dt,Vt){return _e!==Vt})},updateQuantityAtIndex=function(kt,_e,Dt){let Vt=kt.slice();return Vt[_e].quantity=Dt,Vt},createCartStore=kt=>{const _e=cartStoreCreator();return _e.setState({stores:kt}),_e},cartStoreCreator=()=>create((kt,_e)=>({stores:null,cart:[],cartTotalPrice:0,cartTotalCompareAtPrice:0,deleteCartItem:Dt=>{kt(Vt=>({cart:arrayWithoutElementAtIndex(Vt.cart,Dt)}))},addToCart:Dt=>{kt(Vt=>({cart:[...Vt.cart,Dt]}))},updateQuantity:(Dt,Vt)=>{kt(Gt=>({cart:updateQuantityAtIndex(Gt.cart,Dt,Vt)}))},previewCartModalOpen:!1,togglePreviewCartModal:()=>{const{previewCartModalOpen:Dt,stores:Vt}=_e();Dt===!0?(Vt.uiSceneStore.getState().CORE_API.reviewCartHidden(),kt({previewCartModalOpen:!1,previewCartMinimized:!1})):(Vt.uiSceneStore.getState().CORE_API.reviewCartShown(),kt({previewCartModalOpen:!0}))},previewCartMinimized:!1,togglePreviewCartMinimized:()=>{const{previewCartMinimized:Dt,stores:Vt}=_e(),Gt=!Dt;kt({previewCartMinimized:Gt}),Vt&&Vt.uiSceneStore&&Vt.uiSceneStore.getState().setSideMenuOpen(!Gt)},actions:{setCartTotalPrice:(Dt,Vt)=>{kt(()=>({cartTotalPrice:Dt,cartTotalCompareAtPrice:Vt}))}}})),createLightStore=kt=>{const _e=lightStoreCreator();return _e.setState({stores:kt}),_e},lightStoreCreator=()=>create((kt,_e)=>({stores:null,defaultEnvMapUrl:"<@generic-project@>/env-map/neutral.hdr",envMapUrl:"",actions:{setEnvLightMap:Dt=>{kt(Vt=>({envMapUrl:Dt}))},processLookEnvMapOverride:Dt=>{const{envMapUrl:Vt,defaultEnvMapUrl:Gt,actions:zt,stores:jt}=_e(),Ht=jt.productDataStore.getState().lookData[Dt],Wt=Ht?.envMapOverride;if(!Ht||!Wt){zt.setEnvLightMap(Gt);return}if(Wt===Vt){LOGGER.info({title:`New Env Map Url is the same as the current ${Wt}`});return}zt.setEnvLightMap(Wt)}}})),createHotspotStore=kt=>{const _e=hotspotStoreCreator();return _e.setState({stores:kt}),_e},hotspotStoreCreator=()=>create((kt,_e)=>({stores:null,activeHotspotData:null,lastActiveHotspotData:null,isAnyHotspotActive:!1,hotspotsVisibility:!1,hotspotsTempVisibility:!0,hotspotsHealthCheck:!0,hotspotsSpawned:{},visitedHotspotsID:[],hotspotSpawnedForCategoryIDs:[],actions:{clearAllHotspots:()=>kt({isAnyHotspotActive:!1,activeHotspotData:null,lastActiveHotspotData:null,hotspotsSpawned:{}}),removeHotspotForItem(Dt){const{hotspotsSpawned:Vt}=_e();Object.keys(Vt).map(Gt=>{Vt[Gt].itemData.guid==Dt.itemData.guid&&delete Vt[Gt]}),kt({hotspotsSpawned:{...Vt}})},checkHotspotHealth(){const{hotspotsHealthCheck:Dt}=_e();kt({hotspotsHealthCheck:!Dt})},toggleHotspotVisibility(){const{hotspotsVisibility:Dt}=_e();kt({hotspotsVisibility:!Dt})},switchHotspotsVisibility(Dt,Vt=!1){kt(Vt===!0?{hotspotsTempVisibility:Dt}:{hotspotsVisibility:Dt})},clickHotspot(Dt,Vt,Gt,zt=!1){const{activeHotspotData:jt,stores:Ht}=_e();kt({lastActiveHotspotData:jt}),hotspotEnter(Ht,Dt,Vt,Gt);let qt=Ht.itemStore.getState().itemsSpawned[Gt].itemData.skuID;zt===!1&&(Ht.coreSceneStore.getState().CORE_API.fireEvent(Ht.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Hotspot_Enter,{hotspotAbsID:generateHotspotAbsoluteID(qt,Dt),hotspot:jt}),Ht.coreSceneStore.getState().CORE_API.fireEvent(Ht.coreSceneStore.getState().CORE_API.EVENTS.UI.UtilityMenu_Hide))},exitHotspot(Dt=!1){const{activeHotspotData:Vt,isAnyHotspotActive:Gt,stores:zt}=_e();if(Gt&&kt({isAnyHotspotActive:!1}),!!Vt&&(kt({lastActiveHotspotData:Vt}),hotspotExit(zt),Dt===!1)){const jt=Math.round((performance.now()-_e().lastActiveHotspotData.hotspotEnterTime)/1e3);zt.coreSceneStore.getState().CORE_API.fireEvent(zt.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Hotspot_Exit,{hotspot:_e().lastActiveHotspotData,hotspotTimeSpent:jt}),zt.coreSceneStore.getState().CORE_API.fireEvent(zt.coreSceneStore.getState().CORE_API.EVENTS.UI.UtilityMenu_Show)}}}}));function hotspotExit(kt){kt.hotspotStore.setState({activeHotspotData:null}),kt.coreSceneStore.getState().actions.triggerAutoFocus()}function hotspotEnter(kt,_e,Dt,Vt){let Gt=kt.hotspotStore.getState();const jt=kt.itemStore.getState().itemsSpawned;let Ht=Gt.visitedHotspotsID;const Wt=jt[Vt].hotspotsData.filter(un=>un.hotspotID==_e);if(!Wt||Wt.length<=0)return;const qt=Wt[0],Xt=jt[Vt].itemData.skuID+"_"+_e;let Yt=kt.attachmentStore.getState().attachmentSystem.currentStructure.getNodeByGUID(Vt),Zt=new Vector3(0,0,0);Yt&&Yt.ref&&Yt.ref.getWorldPosition(Zt);let Jt=new Quaternion().identity();Yt&&Yt.ref&&Yt.ref.getWorldQuaternion(Jt);let nn=qt.focusPointTransform,rn=ArrToVec3(nn);rn.applyQuaternion(Jt);let Qt=qt.viewPointTransform,en=ArrToVec3(Qt);en.applyQuaternion(Jt);let tn=addVector(Vec3ToArr(rn),Vec3ToArr(Zt)),sn=addVector(Vec3ToArr(en),Vec3ToArr(Zt));kt.cameraStore.setState({focusPointPosition:tn,viewPointPosition:sn}),kt.hotspotStore.setState({activeHotspotData:{hotspotData:{guid:Dt,...qt},itemData:{...jt[Vt],guid:Vt},domID:"rd_"+Xt,hotspotEnterTime:performance.now()},isAnyHotspotActive:!0}),Ht.includes(Xt)||(Ht.push(Xt),kt.hotspotStore.setState({visitedIDs:{...Ht}}))}var replacingNodes=null,swappableNodes=[];const createGhostStore=kt=>{const _e=ghostStoreCreator();return _e.setState({stores:kt}),_e},ghostStoreCreator=()=>create((kt,_e)=>({stores:null,ghostData:null,ghostsTransform:[],ghostVisibility:!0,ghostParentRef:null,ghostMaterial:null,actions:{spawnGhostsForSkuID:async(Dt,Vt=!1,Gt)=>{const{ghostData:zt,ghostsTransform:jt,stores:Ht}=_e();if(zt!==null||jt.length>0){LOGGER.info({title:"ghosts are already spawned for: "+zt.skuID});return}return await new Promise(async(qt,Xt)=>{let Kt={};const Yt=()=>{qt(Kt)};Ht.coreSceneStore.getState().CORE_API.coreWCRef.addEventListener(Ht.coreSceneStore.getState().CORE_API.EVENTS.SCENE.Ghost_Loaded,Yt,{once:!0});const Zt=Ht.productDataStore.getState().productData,Jt=Ht.attachmentStore.getState().attachmentSystem.currentStructure;replacingNodes=Jt.getNodesByCategoryID(Zt[Dt].categoryID);const nn=Ht.coreSceneStore.getState().sceneSettings.draggableUI,rn=await Jt.findGhostTransforms(Dt,Vt),Qt=nn?rn&&rn.transforms&&rn.transforms.length===0:!0;if(Zt[Dt].replace&&replacingNodes.length>0&&Qt)if(nn){const{newNodes:tn,transforms:sn,connectablePlugs:cn}=await Jt.findGhostTransformForReplacement(Dt,replacingNodes);if(sn==null||cn==null||sn.length<=0){LOGGER.error({title:"Couldn't Find Ghost transforms and connectablePlugs for "+Dt});return}let un=[];for(const hn of tn)hn.setModelVisibility(!1),un.push("replace");Kt.transforms=sn,Kt.newNodes=tn,Kt.connectablePlugs=cn,Kt.addItemOrSwap=un}else{const{newNodes:tn,transforms:sn,connectablePlugs:cn}=await Jt.findGhostTransformForReplacement(Dt,replacingNodes);if(sn==null&&cn==null){LOGGER.error({title:"Couldn't Find Ghost transforms and connectablePlugs for "+Dt});return}let un=[];for(const hn of tn)hn.setModelVisibility(!1),un.push("replace");Kt.transforms=sn,Kt.newNodes=tn,Kt.connectablePlugs=cn,Kt.addItemOrSwap=un}else{const{transforms:tn,newNodes:sn,connectablePlugs:cn,comboPlugs:un}=rn;let hn=tn,dn=cn,pn=sn,fn=[];for(let mn=0;mn<tn.length;mn++)fn.push("add");if(Zt[Dt].swappable&&!Ht.coreSceneStore.getState().dragging){swappableNodes=Jt.getNodesByCategoryID(Zt[Dt].categoryID);const mn=await Jt.findGhostTransformForReplacement(Dt,swappableNodes);if(mn.transforms)for(let vn=0;vn<mn.transforms.length;vn++)hn.push(mn.transforms[vn]),dn.push(mn.connectablePlugs[vn]),pn.push(mn.newNodes[vn]),fn.push("replace"),mn.newNodes[vn].setModelVisibility(!1)}Kt.transforms=hn,Kt.newNodes=pn,Kt.connectablePlugs=dn,Kt.comboPlugs=un,Kt.addItemOrSwap=fn}if(Kt.transforms.length<=0){Xt();return}const en=await Ht.assetStore.getState().actions.loadProxyAsset(Dt,!0);kt({ghostsTransform:Kt.transforms,ghostData:{proxyScene:en.proxy.data.scene,skuID:Dt,newNodes:Kt.newNodes,addItemOrSwap:Kt.addItemOrSwap,connectablePlugs:Kt.connectablePlugs,comboPlugs:Kt.comboPlugs,count:Gt||Kt.transforms.length}})})},clearAllGhosts:()=>{const{ghostsTransform:Dt}=_e();if(replacingNodes)for(const Vt of replacingNodes)Vt.setModelVisibility(!0);if(swappableNodes)for(let Vt=0;Vt<swappableNodes.length;Vt++)swappableNodes[Vt].setModelVisibility(!0);Dt.length<=0||kt({ghostVisibility:!0,ghostData:null,ghostsTransform:[]})}}})),createCameraStore=kt=>{const _e=cameraStoreCreator();return _e.setState({stores:kt}),_e},cameraStoreCreator=()=>create((kt,_e)=>({stores:null,focusPointPosition:new Vector3(0,0,0),sendCameraDetailsTrigger:!1,viewPointPosition:new Vector3(0,0,0),boundsMargin:0,savedState:!1,resetToLastPosition:!0,cameraControlsRef:null,userDragging:!1,disableAutoRotate:!1,cameraSettings:{truckSpeed:1,fov:35,dollySpeed:1,initialViewPointPosition:new Vector3(20,15,50),canZoom:!1,canPan:!1,minZoom:1,maxZoom:3,canAutoRotate:!1,autoRotateSpeed:.5,minPolarAngle:0,maxPolarAngle:180,clearColour:"white",zoomingMultiplier:0},actions:{canCameraRotate:Dt=>{const{cameraControlsRef:Vt}=_e();Vt&&(Dt===!0?(Vt.mouseButtons.left=CAMERA_ACTION.ROTATE,Vt.touches.one=CAMERA_ACTION.TOUCH_ROTATE):(Vt.mouseButtons.left=CAMERA_ACTION.NONE,Vt.touches.one=CAMERA_ACTION.NONE))},triggerFetchingCamera:()=>{kt(Dt=>({sendCameraDetailsTrigger:!Dt.sendCameraDetailsTrigger}))},setCameraSettings:Dt=>{const{cameraSettings:Vt,stores:Gt}=_e();Gt.coreSceneStore.getState().isMobile===!0&&Dt.zoomingMultiplier_mobile!==void 0?Dt.zoomingMultiplier=Dt.zoomingMultiplier_mobile:Dt.zoomingMultiplier_desktop!==void 0&&(Dt.zoomingMultiplier=Dt.zoomingMultiplier_desktop),Object.keys(Dt).map(jt=>Vt[jt]=Dt[jt]),kt({cameraSettings:{...Vt},viewPointPosition:ArrToVec3(Vt.initialViewPointPosition)})}}})),createUISceneStore=kt=>{const _e=uiSceneStoreCreator();return _e.setState({stores:kt}),_e},uiSceneStoreCreator=()=>create((kt,_e)=>({stores:null,CORE_API:null,sideMenuState:0,sideMenuOpen:!0,setSideMenuOpen:Dt=>kt({sideMenuOpen:Dt}),cssLoaded:!1,isScreenPortrait:!0,materialOverrideExists:!1,tabSpawnCount:[],coreWCRef:null,removeModalOpen:!1,outOfStockModalOpen:!1,disableCart:!1,inventoryData:{},cartMessage:"",loadConfigId:"",dialogPopupOpen:!1,viewInYourSpaceMenuBtnVisible:!1,loadConfigModalOpen:!1,setLoadConfigModalOpen:Dt=>kt({loadConfigModalOpen:Dt}),setOutOfStockModalOpen:Dt=>kt({outOfStockModalOpen:Dt}),setRemoveModalOpen:Dt=>kt({removeModalOpen:Dt}),moveModalOpen:!1,setMoveModalOpen:Dt=>kt({moveModalOpen:Dt}),setCSSLoaded:Dt=>{kt({cssLoaded:Dt})},setSideMenuState:Dt=>{kt(()=>({sideMenuState:Dt}));const{CORE_API:Vt}=_e();Dt!==2?Vt.exitHotspot():Vt.showAllHotspots()}})),createDynamicHookStore=kt=>{const _e=dynamicHookStoreCreator();return _e.setState({stores:kt}),_e},dynamicHookStoreCreator=()=>create((kt,_e)=>({hookOnCartItemsCollected:async(Dt,Vt)=>(LOGGER.info({title:"No hook provided: hookOnCartItemsCollected"}),Promise.resolve(Dt)),hookOnSceneItemsUpdated:async(Dt,Vt)=>(LOGGER.info({title:"No hook provided: hookOnSceneItemsUpdated"}),Promise.resolve()),hookOnNewItemGhostsCollected:async(Dt,Vt)=>(LOGGER.info({title:"No hook provided: hookOnNewItemGhostsCollected"}),Promise.resolve(Dt)),hookOnNewItemGhostsCollectedForReplacement:async(Dt,Vt)=>(LOGGER.info({title:"No hook provided: hookOnNewItemGhostsCollected"}),Promise.resolve(Dt)),hookOnSceneItemAdded:async(Dt,Vt,Gt)=>(LOGGER.info({title:"No hook provided: hookOnSceneItemAdded"}),Promise.resolve()),hookOnCheckout:async(Dt,Vt)=>(LOGGER.info({title:"No hook provided: hookOnSceneItemAdded"}),Promise.resolve(Dt))}));class STORES{experienceId="";uuid=null;wcRef=null;nexusApiResponseEnvironment="production";nexusApiInstance=null;productDataStore=null;coreSceneStore=null;inventoryStore=null;itemStore=null;assetStore=null;attachmentStore=null;lightStore=null;hotspotStore=null;ghostStore=null;cameraStore=null;infoStore=null;uiHotspotStore=null;colorStore=null;cartStore=null;uiSceneStore=null;constructor(_e){this.wcRef=_e,this.uuid=v4(),this.dynamicHookStore=createDynamicHookStore(this),this.productDataStore=createProductDataStore(this),this.coreSceneStore=createCoreSceneStore(this),this.inventoryStore=createInventoryStore(this),this.itemStore=createItemStore(this),this.assetStore=createAssetStore(this),this.attachmentStore=createAttachmentStore(this),this.lightStore=createLightStore(this),this.hotspotStore=createHotspotStore(this),this.ghostStore=createGhostStore(this),this.cameraStore=createCameraStore(this),this.infoStore=createInfoStore(this),this.uiHotspotStore=createUIHotspotStore(this),this.colorStore=createColorStore(this),this.cartStore=createCartStore(this),this.uiSceneStore=createUISceneStore(this)}setupNexusApiInstance(_e){let Dt=p$5.PRODUCTION;_e=="local"?Dt=p$5.LOCAL:_e==="staging"&&(Dt=p$5.STAGING);const Vt=window.location.href,Gt=window.epigraph?window.epigraph.epigraphSessionId:"no-session-id",zt="2.3.1",jt=g$3.generateXPath(this.wcRef);this.nexusApiInstance=new P$2(Dt,Vt,Gt,zt,jt)}}class EpigraphConfigurator extends h$5{#t=void 0;#i=null;#n=null;clientAccessKey=null;validationPassed=!1;projectID="";configID="default";customVersionId="";experienceId="";apiMode="production";gaMeasurementId="";#s=getUrlParameterByName("launchInAR")==="true";#r=!1;api={core:null,ui:null};stores=null;constructor(){let _e=s$2.PRODUCTION;super("2.3.1",_e),this.stores=new STORES(this),this.api.ui=this,this.shadowRoot||this.attachShadow({mode:"open"}),this.hasAttribute("launch-in-ar")&&(this.#s=!0),this.#c(),this.#o()}#c(){this.preloadDiv=document.createElement("div"),this.preloadDiv.id="preloadMainContainer",this.preloadDiv.classList.add("preload-main-container"),this.preloadDiv.classList.add("showPreload"),this.preloadDiv.appendChild(PRELOAD_MUTED_CSS.content.cloneNode(!0)),this.preloadDiv.appendChild(PRELOAD_HTML_TEMPLATE.content.cloneNode(!0)),this.shadowRoot.appendChild(this.preloadDiv);const _e=this.shadowRoot;this.#n=Dt=>{if(Dt.code=="Enter"){let Vt=_e.activeElement;Vt&&Vt.click()}},this.shadowRoot.addEventListener("keyup",this.#n)}#o(){this.hiccupUi=document.createElement("div"),this.hiccupUi.id="hiccupMainContainer",this.hiccupUi.classList.add("hiccup-ui-main-container"),this.hiccupUi.appendChild(HICCUP_MUTED_CSS.content.cloneNode(!0)),this.hiccupUi.appendChild(HICCUP_HTML_TEMPLATE.content.cloneNode(!0)),this.shadowRoot.appendChild(this.hiccupUi)}get configuratorWcId(){return this.#t}get launchInAr(){return this.#s}#a(){if(this.hasAttribute("id")?this.#t=this.getAttribute("id"):(this.setAttribute("id","epigraphConfiguratorWc"),this.#t=this.getAttribute("id")),this.hasAttribute("custom-version-id")&&(this.customVersionId=this.getAttribute("custom-version-id")),this.hasAttribute("experience-id")&&(this.experienceId=this.getAttribute("experience-id")),this.hasAttribute("api-mode")){const _e=this.getAttribute("api-mode");["local","staging","production"].includes(_e)&&(this.apiMode=_e)}this.stores.setupNexusApiInstance(this.apiMode),(this.hasAttribute("ga-measurement-id")||this.hasAttribute("ga-code"))&&(this.gaMeasurementId=this.getAttribute("ga-measurement-id")??this.getAttribute("ga-code")),this.clientAccessKey=this.getAttribute("client-access-key"),this.initialConfigId=this.getAttribute("initial-config-id"),this.consentPlugin=this.getAttribute("consent-plugin"),this.consentIdentifier=this.getAttribute("consent-identifier"),this.initialConfigId||(this.initialConfigId="default")}async connectedCallback(){if(this.#r===!0){console.warn("Tried to remount configurator. Blocking the process.");return}this.#a(),this.style.maxWidth="1440px",this.style.maxHeight="800px",this.style.overflow="hidden",this.style.width="100%",this.style.height="100%",this.style.position="relative",this.style.visibility="visible",this.style.display="flex";const _e=document.createElement("div");_e.id="configuratorContainer",_e.style.width="100%",_e.style.height="100%",_e.style.userSelect="none",_e.style.overflow="hidden",this.shadowRoot.appendChild(_e),this.#i=createRoot(_e),this.#i.render(jsxRuntimeExports.jsx(App,{stores:this.stores,customVersionId:this.customVersionId,experienceId:this.experienceId,disableUI:this.hasAttribute("disable-ui"),disableCart:this.hasAttribute("disable-cart"),configuratorWcRef:this,gaMeasurementId:this.gaMeasurementId},"Configurator-App")),this.#r=!0}disconnectedCallback(){for(this.#i&&(this.#i.unmount(),this.#i=null),this.#n&&(this.shadowRoot.removeEventListener("keyup",this.#n),this.#n=null),this.#t=void 0,this.clientAccessKey=null,this.validationPassed=!1,this.projectID="",this.configID="default",this.customVersionId="",this.gaMeasurementId="",this.#s=!1,this.#r=!1,this.api={core:null,ui:null},this.preloadDiv&&(this.preloadDiv.remove(),this.preloadDiv=null),this.hiccupUi&&(this.hiccupUi.remove(),this.hiccupUi=null);this.shadowRoot.firstChild;)this.shadowRoot.removeChild(this.shadowRoot.firstChild)}showPreloadScreen(){this.preloadDiv&&(this.preloadDiv.classList.remove("no-pointer-events"),this.preloadDiv.classList.add("showPreload"))}async hidePreloadScreen(){this.preloadDiv&&(this.preloadDiv.classList.remove("showPreload"),await wait(1e3),this.preloadDiv.classList.add("no-pointer-events"))}showHiccupScreen(){this.hiccupUi&&(this.hiccupUi.classList.remove("no-pointer-events"),this.hiccupUi.classList.add("show-hiccup"))}async hideHiccupScreen(){this.hiccupUi&&(this.hiccupUi.classList.remove("show-hiccup"),await wait(1e3),this.hiccupUi.classList.add("no-pointer-events"))}}window.customElements.define("epigraph-configurator",EpigraphConfigurator);
|