@shijiu/jsview 2.2.373 → 2.3.0

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.
Files changed (33) hide show
  1. package/dom/bin/DroidNaskh-Regular.ttf +0 -0
  2. package/dom/bin/DroidSans.ttf +0 -0
  3. package/dom/bin/DroidSansFallback.ttf +0 -0
  4. package/dom/bin/NotoColorEmoji.ttf +0 -0
  5. package/dom/bin/jsview-dom-browser-engine-core.min.js +2 -0
  6. package/dom/bin/jsview-dom-browser-engine-modules.min.js +2 -0
  7. package/dom/bin/jsview-dom-browser-forge.1436.54c9.wasm +0 -0
  8. package/dom/bin/jsview-dom-browser-forge.min.js +1 -0
  9. package/dom/bin/jsview-dom-browser-forge.worker.min.js +1 -0
  10. package/dom/bin/jsview-dom-browser.min.js +1 -1
  11. package/dom/bin/jsview-dom-native.min.js +1 -1
  12. package/dom/bin/jsview-engine-js-browser.min.js +1 -22
  13. package/dom/bin/jsview-engine-js-native.min.js +1 -1
  14. package/dom/bin/jsview-forge-define.min.js +1 -1
  15. package/dom/index.mjs +8 -10
  16. package/dom/target_core_revision.mjs +3 -3
  17. package/loader/jsv-core-api/jsview-core-api-glue.js +74 -0
  18. package/loader/jsv-core-api/wasm/backgroundtask.js +66 -0
  19. package/loader/jsv-core-api/wasm/core-api.js +208 -0
  20. package/loader/jsv-core-api/wasm/wasm-extension.js +37 -0
  21. package/loader/jsview-config.js +4 -1
  22. package/loader/jsview-loader.js +67 -77
  23. package/loader/jsview-main.mjs +1 -1
  24. package/package.json +1 -1
  25. package/patches/node_modules/vite/dist/node/jsview-vite-extension.js +67 -6
  26. package/tools/https-server-config/cert.pem +61 -0
  27. package/tools/https-server-config/key.pem +27 -0
  28. package/tools/https-server-config/serve.config.json +16 -0
  29. package/tools/jsview-common.mjs +86 -3
  30. package/tools/jsview-post-build.mjs +153 -3
  31. package/tools/jsview-post-install.mjs +7 -4
  32. package/tools/jsview-retrieve-sourcemap.mjs +64 -49
  33. package/tools/jsview-run-tool.mjs +88 -10
Binary file
Binary file
Binary file
Binary file
@@ -0,0 +1,2 @@
1
+ /* eslint-disable */ class e{static SetOnEventListener(...t){return e.WasmBridge.SetOnEventListener(t)}static RunSyncTask(...t){return e.WasmBridge.RunSyncTask(t)}static RunLazyTaskList(...t){return e.WasmBridge.RunLazyTaskList(t)}static JsViewId=1;static WasmBridge}const t={print:(...e)=>{console.log(...e)},canvas:void 0,setStatus:e=>{},totalDependencies:0,monitorRunDependencies:e=>{}};let n=new class{constructor(){this.observer_map={},this._OnJsNotifyFunc=this.onJsNotify.bind(this),this._OnEmitEventFunc=this.onEmitEvent.bind(this),this.subscribe("watchdog",this._watchdog)}subscribe(e,t){this.observer_map.hasOwnProperty(e)||(this.observer_map[e]=[]),this.observer_map[e].push(t)}unsubscribe(e,t){if(this.observer_map.hasOwnProperty(e)){let n=this.observer_map[e];for(let e=0;e<n.length;e++)if(n[e]==t){n.splice(e,1);break}}}notify(e,t){this._OnJsNotifyFunc(e,t)}emitEvent(e,t){this._OnEmitEventFunc(e,t)}onEmitEvent(e,t){console.log("onEmitEvent() key: "+e+" message="+t),0!=this.observer_map.hasOwnProperty(e)?this._JsNotify(e,t):console.warn("Message from JsView.emitEvent key='"+e+"' is not subscribed.")}onJsNotify(e,t){0!=this.observer_map.hasOwnProperty(e)&&this._JsNotify(e,t)}_JsNotify(e,t){var n;let s=this.observer_map[e].length;for(let i=0;i<s;i++)n=this.observer_map[e][i](t);return n}_watchdog(){}};const s=2560;class i{constructor(){this.limitFps=0,this.fpsDisplay=!1,this.surfaceWidth=0,this.surfaceHeight=0}pack(){try{const e={};return e.limitFps=this.limitFps,e.fpsDisp=this.fpsDisplay,e.fpsConsole=!1,e.width=this.surfaceWidth,e.height=this.surfaceHeight,JSON.stringify(e)}catch(e){return console.error("Json error:",e),null}}}var o;function a(e,t,n,s,i,a,r,c){let l=e.getElementById("input-layer"),h=e.getElementById("ime_"+a);if(null!=r){let i=JSON.parse(r),c=i.inputType,p=i.text?decodeURIComponent(i.text):"",u=i.showImeIfNeeded?i.showImeIfNeeded:0,d=isNaN(i.selectionStart)?0:i.selectionStart,m=isNaN(i.selectionEnd)?0:i.selectionEnd,f=isNaN(i.scrollLeft)?0:i.scrollLeft,_=isNaN(i.scrollTop)?0:i.scrollTop,g=isNaN(i.fontSize)?20:i.fontSize,v=i.textAlign?i.textAlign:"left",y=i.coverColor?i.coverColor:"#FFFFFF",S=i.textColor?i.textColor:"#000000";u?(null==h&&(h=e.createElement("input"),h.id="ime_"+a,l.appendChild(h),h.style.position="absolute",h.style.backgroundColor=y,h.style.color=S,h.style.textAlign=v,h.style.fontSize=t.measurePosition(g)+"px",h.style.border="none",h.style.outline="none",h.jsvAttachInfo={keepAlive:!1},function(e,t,n,s){t.oninput=t=>{if(t.target.value.length>0&&t.target.selectionStart>0){const e=t.target.selectionStart-1,s=t.target.selectionStart;if(i=t.target.value.slice(e,s),!("0".charCodeAt()<=i.charCodeAt()&&i.charCodeAt()<="9".charCodeAt()||n!==o.NUMBER))return t.target.value=t.target.value.substr(0,e)+t.target.value.substr(s),void(t.target.selectionStart=e)}var i;const a=t.target.value,r=t.target.selectionStart,c=t.target.scrollLeft,l=t.target.scrollTop;s(e,a,r,r,c,l)}}(a,h,c,n),function(e,t,n,s){t.style.pointerEvents="auto",t.addEventListener("keydown",(e=>{38===(e=e||window.event).keyCode||40===e.keyCode?t.blur():27!==e.keyCode&&1e4!==e.keyCode||t.blur()})),t.addEventListener("selectionchange",(n=>{s(e,t.value,t.selectionStart,t.selectionEnd,t.scrollLeft,t.scrollTop)})),t.addEventListener("scroll",(n=>{s(e,t.value,t.selectionStart,t.selectionEnd,t.scrollLeft,t.scrollTop)}))}(a,h,h.jsvAttachInfo,n),function(e,t,n,s){t.onfocus=e=>{},t.onblur=n=>{s(e,!1,!1),setTimeout((()=>{t.remove()}),0)}}(a,h,h.jsvAttachInfo,s),s(a,!0,!1)),h.value=p,setTimeout((()=>{h.selectionStart=d,h.selectionEnd=m,h.scrollLeft=f+g/2,h.scrollTop=_}),0),h.focus()):null!=h&&(h.remove(),s(a,!1,!1))}if(null!=c){let e=JSON.parse(c);null!=h&&(h.style.left=t.measurePosition(e.x)+"px",h.style.top=t.measurePosition(e.y)+"px",h.style.width=t.measurePosition(e.width)+"px",h.style.height=t.measurePosition(e.height)+"px")}}!function(e){e[e.NONE=0]="NONE",e[e.TEXT=1]="TEXT",e[e.PASSWORD=2]="PASSWORD",e[e.TEXT_AREA=3]="TEXT_AREA",e[e.CONTENT_EDITABLE=4]="CONTENT_EDITABLE",e[e.SEARCH=5]="SEARCH",e[e.URL=6]="URL",e[e.EMAIL=7]="EMAIL",e[e.TELEPHONE=8]="TELEPHONE",e[e.NUMBER=9]="NUMBER"}(o||(o={}));class r{constructor(e,t){this._PointerDown=!1,this._EventFireFunc=t,this._VelocityTracker=new c,this._SetupEventListener(e)}_SetupEventListener(e){this._TouchPannel=window.originDocument.getElementById(e),this._TouchPannel.addEventListener("pointerdown",(e=>{this._PointerDown=!0;let t=this._MapXAndY(e.clientX,e.clientY);this._VelocityTracker.resetCheckPoints(),this._VelocityTracker.updateCheckPoint(t.mappedX,t.mappedY,0,0,e.timeStamp),this._EventFireFunc(0,t.mappedX,t.mappedY,0,0)})),this._TouchPannel.addEventListener("pointerup",(e=>{if(this._PointerDown){let t=this._MapXAndY(e.clientX,e.clientY);this._VelocityTracker.updateCheckPoint(t.mappedX,t.mappedY,0,0,e.timeStamp);let n=this._VelocityTracker.getVelocity(2e3);this._EventFireFunc(2,t.mappedX,t.mappedY,n.vX,n.vY),this._PointerDown=!1}})),this._TouchPannel.addEventListener("pointermove",(e=>{if(this._PointerDown){let t=this._MapXAndY(e.clientX,e.clientY);this._VelocityTracker.updateCheckPoint(t.mappedX,t.mappedY,0,0,e.timeStamp),this._EventFireFunc(1,t.mappedX,t.mappedY,0,0)}})),this._TouchPannel.addEventListener("pointerleave",(e=>{let t=this._MapXAndY(e.clientX,e.clientY);if(this._PointerDown){this._VelocityTracker.updateCheckPoint(t.mappedX,t.mappedY,0,0,e.timeStamp);let n=this._VelocityTracker.getVelocity(2e3);this._EventFireFunc(2,t.mappedX,t.mappedY,n.vX,n.vY),this._PointerDown=!1}}))}_MapXAndY(e,t){let n={mappedX:0,mappedY:0},i=this._TouchPannel.getBoundingClientRect(),o=i.width/s;return n.mappedX=Math.floor((e-i.x)/o),n.mappedY=Math.floor((t-i.y)/o),n}}class c{constructor(){this._CheckPointIndex=0,this._CheckPointers=new Array(5)}resetCheckPoints(){this._CheckPointers=new Array(5)}updateCheckPoint(e,t,n,s,i){let o={pointX:e,pointY:t,timeStamp:i};this._CheckPointers[this._CheckPointIndex]=o,this._CheckPointIndex=(this._CheckPointIndex+1)%5}getVelocity(e){let t={vX:0,vY:0},n=this._GetPointIndex(-1),s=this._CheckPointers[n];if(!s)return t;let i=s,o=0,a=this._CheckPointers[n].timeStamp;for(let e=2;e<6;e++){let t=this._CheckPointers[this._GetPointIndex(-e)];if(!t)break;if(!(a-t.timeStamp<100))break;s=t,o=t.timeStamp}return s.pointX!=i.pointX&&(t.vX=Math.floor((i.pointX-s.pointX)/(a-o)*1e3),t.vX>e&&(t.vX=e)),s.pointY!=i.pointY&&(t.vY=Math.floor((i.pointY-s.pointY)/(a-o)*1e3),t.vY>e&&(t.vY=e)),t}_GetPointIndex(e){return(this._CheckPointIndex+5+e)%5}}const l="forge-canvas";class h{constructor(e,t){this._TouchEventProxy=null,this._VirtualCanvasCreated=!1,this._CanvasElement=null,this._LinkedHandles=null,this._WasmCanvasApi=e,this._MessageDispatcher=null,this._DynamicConfigSet=new i,this._canvasToken=674500,this._jsviewId=t,this._OnImeSyncBackInfoWrap=this._OnImeSyncBackInfo.bind(this),this._OnImeSyncViewStatusWrap=this._OnImeSyncViewStatus.bind(this),this._OnImeSyncActionWrap=this._OnImeSyncAction.bind(this),this._CanvasElement=window.JsvCode?.Dom?.BrowserDocument?.getElementById(l)??document.getElementById(l);new ResizeObserver((e=>{for(let t of e){const{width:e,height:n}=t.contentRect;this._OnCanvasSizeChanged(e,n)}})).observe(this._CanvasElement),this._CanvasElement.width=s,this._OnCanvasSizeChanged(this._CanvasElement.clientWidth,this._CanvasElement.clientHeight)}linkToHandleType(e){this._LinkedHandles=e}startDraw(){this._WasmCanvasApi.CreateVirtualCanvas(this._canvasToken,this._jsviewId,this.triggerRenderEventReciever.bind(this),this.imeControlEvent.bind(this)),this._WasmCanvasApi.UpdateDynamicSet(this._canvasToken,this._DynamicConfigSet.pack()),this._VirtualCanvasCreated=!0}onForgeAppReady(){this._EnableTouchListener()}getCanvasToken(){return this._canvasToken}getForgeRT(){return this._WasmCanvasApi.GetForgeRTHandle(this._canvasToken)}enableFpsDisplay(e){this._DynamicConfigSet.fpsDisplay=e,this._WasmCanvasApi.UpdateDynamicSet(this._canvasToken,this._DynamicConfigSet.pack())}setMessageDispatcher(e){this._MessageDispatcher=e}triggerRenderEventReciever(){this._MessageDispatcher?.notify("JscRender","")}imeControlEvent(e,t,n){a(window.originDocument,this,this._OnImeSyncBackInfoWrap,this._OnImeSyncViewStatusWrap,this._OnImeSyncActionWrap,e,t,n)}measurePosition(e){return Math.round(e/this.getDesignedMapWidth()*this._CanvasElement.clientWidth)}getDesignedMapWidth(){return this._LinkedHandles?.renderBridge?.GetScreenInfo().designedWidth}_OnCanvasSizeChanged(e,t){let n=Math.floor(t/e*s);this._CanvasElement.height=n,this._DynamicConfigSet.surfaceWidth=this._CanvasElement.width,this._DynamicConfigSet.surfaceHeight=n,this._VirtualCanvasCreated&&this._WasmCanvasApi.UpdateDynamicSet(this._canvasToken,this._DynamicConfigSet.pack())}_OnImeSyncBackInfo(e,t,n,s,i,o){let a={type:"text",text:encodeURIComponent(t),selectStart:n,selectEnd:s,scrollLeft:i,scrollTop:o};this._MessageDispatcher?.notify("_JscIme_"+e,JSON.stringify(a))}_OnImeSyncViewStatus(e,t,n){let s={type:"vstatus",isVisible:t,softKeyShown:n};this._MessageDispatcher?.notify("_JscIme_"+e,JSON.stringify(s))}_OnImeSyncAction(e,t){let n={type:"action",action:t};this._MessageDispatcher?.notify("_JscIme_"+e,JSON.stringify(n))}_EnableTouchListener(){this._TouchEventProxy=new r(l,((e,t,n,s,i)=>{this._WasmCanvasApi.OnTouchEvent(this._canvasToken,e,t,n,s,i)}))}}let p=null;class u{constructor(){this.SubTypes=new Map}}class d{constructor(){this.Trackers=new Map}}let m=null;const f=window.AudioContext||window.webkitAudioContext;if(f){const e=new f;let t=0,n=0;class s{constructor(e,t,n){this._Context=e,this._BufferSource=t,this._Gain=n,this._BufferSource.connect(this._Gain),this._Gain.connect(this._Context.destination)}start(e,t,n){this._BufferSource.start(e,t,n)}setVolume(e){this._Gain.gain.setValueAtTime(e,this._Context.currentTime)}stop(e){this._BufferSource.stop(e)}}class i{constructor(){this._SoundBufferMap={},this._StreamMap={}}load(n,s,i,o){const a=new URL(n).href,r=t++;return this._requestBuffer(a,((t,n)=>{0===t?e.decodeAudioData(n,(e=>{this._SoundBufferMap[r]=e,o(r,0)})):o(-1,-1)})),r}unload(e){delete this._SoundBufferMap[e]}autoPause(){}autoResume(){}play(t,i,o,a,r,c){if(this._SoundBufferMap[t]){const o=n++,a=e.createBufferSource();a.buffer=this._SoundBufferMap[t],a.playbackRate.value=c,a.onended=e=>{this.stop(o)},r>0&&(a.loop=!0);const l=e.createGain();l.gain.setValueAtTime(i,e.currentTime);const h=new s(e,a,l);return this._StreamMap[o]=h,console.log("loop test",(r+1)*this._SoundBufferMap[t].duration),h.start(0,0,(r+1)*this._SoundBufferMap[t].duration),o}return-1}pause(e){}resume(e){}stop(e){this._StreamMap[e]&&(this._StreamMap[e].stop(),delete this._StreamMap[e])}release(){this._SoundBufferMap={},this._StreamMap={}}setVolume(e,t,n){this._StreamMap[e]&&this._StreamMap[e].setVolume(t)}setPriority(e,t){}setRate(e,t){}setLoop(e,t){}_requestBuffer(e,t){const n=new XMLHttpRequest;n.open("GET",e,!0),n.responseType="arraybuffer",n.onload=()=>{200===n.status?(console.log("http request succeed"),t(0,n.response)):(console.error(`download audio ${e} failed.`,n.status),t(-1,null))},n.send()}}m=i}else m=null;var _=m;e.JsViewId=1;const g=await async function(){window.global=window;const{default:n}=await import("./jsview-dom-browser-forge.min.js"),s=await n(t);s.jse$impl$WasmImpl.SetModule(s);const i=s.forge$dom$WasmPlatformDomBridge;return e.WasmBridge=i,s.WasmJscExports=s.forge$WasmJscExports,s}();let v=g.forge$WasmResProviderExports;v.initResInstance(1),g.WasmJscExports.InitJsc(1,window.JsvCoreApi.getJsContextId()),g.forge$front$ForgeCanvasApi.SetupGLContext("#forge-canvas");let y=null,S=new class{constructor(){this._Categories=new Map}listenerToAckEvent(e,t,n,s){let i=this._Categories.get(e);i||(i=new u,this._Categories.set(e,i));let o=i.SubTypes.get(t);o||(o=new d,i.SubTypes.set(t,o));let a=o.Trackers.get(n);a||(a=[],o.Trackers.set(n,a)),a.push(s),console.log(`listenerToAckEvent c:${e} t:${t} id:${n}`)}recycleAckListener(e){if(!e)return void console.error("Error: listener is null");let t=!1;for(const n of this._Categories.values())for(const s of n.SubTypes.values())for(const n of s.Trackers.values())for(let s=n.length-1;s>=0;s--)n[s]==e&&(t=!0,n.splice(s,1));t||console.error("Error: listener not found")}dispatcher(e,t,n,s){let i=this._Categories.get(e)?.SubTypes.get(t)?.Trackers.get(n);if(i)for(let e=0;e<i.length;e++)i[e](s)}};function w(e){!async function(e){await async function(){const e=[import("./DroidSansFallback.ttf").then((async e=>(await fetch(e.default)).arrayBuffer())),import("./NotoColorEmoji.ttf").then((async e=>(await fetch(e.default)).arrayBuffer())),import("./DroidNaskh-Regular.ttf").then((async e=>(await fetch(e.default)).arrayBuffer())),import("./DroidSans.ttf").then((async e=>(await fetch(e.default)).arrayBuffer()))];await Promise.all(e).then((e=>{const t=new Uint32Array(e.length),n=new Uint32Array(e.length);for(let s=0;s<e.length;++s){const i=e[s];if(i){const e=new Uint8Array(i),o=g.malloc(i.byteLength);g.HEAPU8.set(e,o),t[s]=o,n[s]=i.byteLength}}const s=g.malloc(4*t.length);g.HEAPU32.set(t,s>>2);const i=g.malloc(4*n.length);g.HEAPU32.set(n,i>>2),v.SetFonts(1,s,i,e.length)}))}(),window.JsvCoreApi.WasmExt.setLogSingleton(g.forge$Log,g.jse$Log),window.JsvCoreApi.WasmExt.setEventBridge(S),y=function(e,t){return p=new h(e,t),p}(g.forge$front$ForgeCanvasApi,1),window.JsvCoreApi.WasmExt.setForgeCanvasSingleton(y),y.startDraw();let t=y.getForgeRT();y.setMessageDispatcher(n);let s={frtNativeHandle:t,canvasNativeHandle:y.getCanvasToken()};y.linkToHandleType(s),e?.(s)}(e)}function E(){return n}g.forge$front$EventBridge.SetupEventBridge(1,S.dispatcher.bind(S)),window.JsvCode.BrowserPlatformDomBridge=e,window.JsvCode.MessageDispatcher=n,e.RegisterOriginDocument=function(e){console.log("RegisterOriginDocument in"),window.originDocument=e},window.SoundPool=_;export{E as getJMD,w as takeCanvas};
2
+
@@ -0,0 +1,2 @@
1
+ /* eslint-disable */ let e={sRenderBridge:null,sActivityManager:null,DesignMap:null};window.Forge=e;let t=function(e){},i=function(e){},n=function(e){},s=function(e){throw new Error(e)};class a{constructor(){this._EnqueueInfoList=[],this._EnqueueObjList=[],this._OnStartSyncCallback=[],this._AlterIdCandidateMap={}}RequestAlterId(e,t){this._AlterIdCandidateMap[e]=t}AddToQueue(e,t){this._EnqueueInfoList.push(t),this._EnqueueObjList.push(e)}HasUpdate(){return this._EnqueueInfoList.length>0}ReadSyncList(){if(this._OnStartSyncCallback.length>0){for(let e of this._OnStartSyncCallback)e();this._OnStartSyncCallback=[]}let e=this._EnqueueInfoList;return this.RenewSyncList(),e}AddStartSyncCallback(e){this._OnStartSyncCallback.push(e)}RenewSyncList(){if(this._EnqueueObjList)for(let e of this._EnqueueObjList)e.RenewSyncInfo(this,null);this._EnqueueInfoList=[],this._EnqueueObjList=[]}ProcAlterIds(e,t){for(let i=0;i<e.length;i++)if(this._AlterIdCandidateMap.hasOwnProperty(e[i])){let n=this._AlterIdCandidateMap[e[i]];n.OnAlterId(t[i]),n.RenewSyncInfo(this,null)}else console.error(`Error: ProcAlterIds not found proxyId=${e[i]}`);this._AlterIdCandidateMap={}}}class r{constructor(e,t=null,i=null){this._PrefSyncListRef=e,this.PrefSyncInfo=null,this._PrefTaskList=null,this._PrefEnqueued=!1,this._SuffSyncListRef=t,this.SuffSyncInfo=null,this._SuffTaskList=null,this._SuffEnqueued=!1,this.InitPackage(i),this.RenewSyncInfo(this._PrefSyncListRef,null),this.RenewSyncInfo(this._SuffSyncListRef,null)}AddStartSyncCallback(e){this._PrefSyncListRef.AddStartSyncCallback(e)}CallToNative(t,i,n=!1){let s={fn:t,a:i};return n?(this._SuffTaskList.push(s),this._SuffEnqueued||(this._SuffSyncListRef.AddToQueue(this,this.SuffSyncInfo),this._SuffEnqueued=!0)):(this._PrefTaskList.push(s),this._PrefEnqueued||(this._PrefSyncListRef.AddToQueue(this,this.PrefSyncInfo),this._PrefEnqueued=!0)),e.sRenderBridge.RequestSwap(),s}RequestAlterId(e,t=!1){t?this._SuffSyncListRef.RequestAlterId(e,this):this._PrefSyncListRef.RequestAlterId(e,this)}SuffCallToNative(e,t){return{fn:e,a:t}}AlterCallParams(e,t){e&&(e.a=t)}RenewSyncInfo(e,t){t||(t={}),this._PrefEnqueued=!1,this._SuffEnqueued=!1,e&&e==this._PrefSyncListRef&&(this._PrefTaskList=[],this.PrefSyncInfo={tl:this._PrefTaskList,...t}),e&&e==this._SuffSyncListRef&&(this._SuffTaskList=[],this.SuffSyncInfo={tl:this._SuffTaskList,...t})}InitPackage(e){}OnAlterId(e){}}let o=new a,l=new a;class h extends r{constructor(e){super(o,l,{id:e}),this._TextureRef=null,this._RenderTextureId=e}InitPackage(e){this._RenderTextureId=e.id}RenewSyncInfo(e,t){super.RenewSyncInfo(e,{tt:1,id:this._RenderTextureId})}NeedAlterId(e,t){this._TextureRef=e,super.RequestAlterId(this._RenderTextureId,t)}OnAlterId(e){this._RenderTextureId=e,this._TextureRef.TexId=e,this._TextureRef=null}}let c=new class extends r{constructor(){super(o,l)}RenewSyncInfo(e,t){super.RenewSyncInfo(e,{tt:0})}};let u=new class{constructor(){this._StoreArray=[1]}AddData(e){return this._StoreArray.push(e),this._StoreArray.length-1}TakeArray(){const e=this._StoreArray;return this._StoreArray=[1],e}PickArray(){return this._StoreArray}GetSize(){return this._StoreArray.length}ResetForNextSwap(){this._StoreArray=[1]}};let d=1;class _{constructor(e,t,i=!1){this._NativeSyncer=t,this.TexId=e,this._TextureReady=!1,this._TextureWidth=0,this._TextureHeight=0,this._InnerLoadCallback=null,this._CallbackMap={},this._DomDepends=i}GetTextureId(){return this.TexId}RequestSyncerAlterId(){this._NativeSyncer.NeedAlterId(this,this._DomDepends)}RegisterLoadImageCallback(e,t,i){if(null==t)return 0;if(this._TextureReady)return t({width:this._TextureWidth,height:this._TextureHeight},i),0;{this._RegisterInnerLoadCallback();const e=d++,n=this,s=(s,a,r)=>{t({width:s,height:a,extra:r?JSON.parse(r):null},i),delete n._CallbackMap[e]};this._CallbackMap[e]=s;const a=u.AddData(s);return this._NativeSyncer.CallToNative(1,[e,a],this._DomDepends),e}}UnregisterLoadImageCallback(e){e>0&&void 0!==this._CallbackMap[e]&&delete this._CallbackMap[e]}DispatchCommand(t,i){this._NativeSyncer.CallToNative(3,[t,i],this._DomDepends),e.sRenderBridge.RequestSwap()}_RegisterInnerLoadCallback(){if(null==this._InnerLoadCallback){const e=this;this._InnerLoadCallback=(t,i,n)=>{e._TextureReady=!0,e._TextureWidth=t,e._TextureHeight=i};const t=u.AddData(this._InnerLoadCallback);this._NativeSyncer.CallToNative(1,[d++,t],this._DomDepends)}}EnableBackgroundLoad(){this._TextureReady||(this._RegisterInnerLoadCallback(),this._NativeSyncer.CallToNative(4,null,this._DomDepends))}DisableBackgroundLoad(){this._NativeSyncer.CallToNative(5,null,this._DomDepends)}RequestToUnload(){this._NativeSyncer.CallToNative(6,null,this._DomDepends)}DisableAutoRecycle(){this._NativeSyncer.CallToNative(7,null,this._DomDepends)}}class S extends _{constructor(e,t,i=!1){super(e,t,i),this._GifTextureInfo=null}registerOnStart(e){this._EnableGifTextureInfo();let t=this._GifTextureInfo,i=++t.IdGen;if(t.StartMapCount++,t.StartMapCount>0&&0==t.GlobalStartCallbackId){t.GlobalStartCallbackId=i;const e=()=>{for(let e in t.OnStartMap)t.OnStartMap[e]?.()},n=u.AddData(e);this._NativeSyncer.CallToNative(10,[t.GlobalStartCallbackId,n],this._DomDepends)}return t.OnStartMap[i]=e,i}unregisterOnStart(e){if(!this._GifTextureInfo)return;let t=this._GifTextureInfo;t.OnStartMap.hasOwnProperty(e)&&t.StartMapCount--,0==t.StartMapCount&&0!=t.GlobalStartCallbackId&&(this._NativeSyncer.CallToNative(11,[t.GlobalStartCallbackId],this._DomDepends),t.GlobalStartCallbackId=0)}registerOnEnd(e){this._EnableGifTextureInfo();let t=this._GifTextureInfo,i=++t.IdGen;if(t.EndMapCount++,t.EndMapCount>0&&0==t.GlobalEndCallbackId){t.GlobalEndCallbackId=i;const e=()=>{for(let e in t.OnEndMap)t.OnEndMap[e]?.()},n=u.AddData(e);this._NativeSyncer.CallToNative(12,[t.GlobalEndCallbackId,n],this._DomDepends)}return t.OnEndMap[i]=e,i}unregisterOnEnd(e){if(!this._GifTextureInfo)return;let t=this._GifTextureInfo;t.OnEndMap.hasOwnProperty(e)&&t.EndMapCount--,0==t.EndMapCount&&0!=t.GlobalEndCallbackId&&(this._NativeSyncer.CallToNative(13,[t.GlobalEndCallbackId],this._DomDepends),t.GlobalEndCallbackId=0)}_EnableGifTextureInfo(){this._GifTextureInfo||(this._GifTextureInfo={IdGen:1,GlobalStartCallbackId:0,OnStartMap:{},StartMapCount:0,GlobalEndCallbackId:0,OnEndMap:{},EndMapCount:0})}}class p extends S{constructor(e,t){super(e,t,!0)}}let y=window.NativeGetIdGroupIntf();const v=10;class m{constructor(e){this._GroupType=e,this._TeamReadIndex=0,this._TeamFillIndex=0,this._Teams=new Array(v),this._ValidTeamsCount=0;for(let e=0;e<v;e++)this._Teams[e]={start:0,end:0,expired:!0}}genId(){this._Teams[this._TeamReadIndex].expired&&this._reserveNativeIds();let e=this._Teams[this._TeamReadIndex],t=e.start;return e.start++,e.start>e.end&&(e.expired=!0,this._TeamReadIndex=(this._TeamReadIndex+1)%v,this._ValidTeamsCount--),t}_reserveNativeIds(){let e=20*(v-this._ValidTeamsCount);if(e>0){let t=y.GetIdArray(this._GroupType,e);if(t){let e=JSON.parse(t);this._commitNativeIds(e[0],e[1])}}}_commitNativeIds(e,t){let i=t-e+1,n=Math.floor(i/20),s=e;for(let e=0;e<n;e++){let e=this._Teams[this._TeamFillIndex];e.start=s,e.end=s+20-1,e.expired=!1,this._TeamFillIndex=(this._TeamFillIndex+1)%v,s=e.end+1}this._ValidTeamsCount+=n,this._ValidTeamsCount>v&&console.error(`team over size to ${this._ValidTeamsCount}`)}}let C=new class{constructor(){this._ViewGroup=new m(0),this._TextureGroup=new m(1),this._AnimationGroup=new m(2),this._SensorGroup=new m(3)}genViewId(){return this._ViewGroup.genId()}genTextureId(){return this._TextureGroup.genId()}genAnimationId(){return this._AnimationGroup.genId()}genSensorId(){return this._SensorGroup.genId()}};var f,I,T;!function(e){e.RGBA_8888="RGBA_8888",e.RGBA_4444="RGBA_4444",e.RGBA_5551="RGBA_5551",e.RGB_565="RGB_565",e.RGB_ETC1="RGB_ETC1",e.RGBA_ETC1="RGBA_ETC1"}(f||(f={})),function(e){e.L=1,e.M=0,e.Q=3,e.H=2}(I||(I={})),function(e){e.AUTO=0,e.SYNC=1,e.ASYNC=2}(T||(T={}));class N{constructor(){this._NativeSyncer=c}GetId(){return 0}GetColorTexture(e){let t=C.genTextureId();this._NativeSyncer.CallToNative(1,[e,t]);let i=new _(t,new h(t));return i.RequestSyncerAlterId(),i}GetImage(e,t,i){return this.GetImage2(e,t,null,null,i)}GetImage2(e,t,i,s=f.RGBA_8888,a="",r=!1){if(!e||0==e.length)return n("GetImage2, url is not setted!"),null;let o=C.genTextureId(),l=0,c=0;i&&(l=i.width,c=i.height),s||(s=f.RGBA_8888),a||(a="");let u=null!=r&&r;this._NativeSyncer.CallToNative(2,[e,l,c,s,a,u,o]);let d=new _(o,new h(o));return d.RequestSyncerAlterId(),d}GetQRCodeTexture(e,t,i,n=T.AUTO,s=I.Q,a="#ffffff",r="#000000",o=-1){let l=C.genTextureId();return this._NativeSyncer.CallToNative(3,[e,t,i,s,a,r,o,n,l]),new _(l,new h(l))}GetDownloadTexture(e,t,i){if(!e)return n("GetDownloadTexture, url is null!"),null;let s=C.genTextureId();return this._NativeSyncer.CallToNative(4,[e,t,i,s]),new _(s,new h(s))}GetDomProxyTexture(e){let t=C.genTextureId();return this._NativeSyncer.CallToNative(5,[e,t],!0),new p(t,new h(t))}GetCanvasTexture(e,t){let i=C.genTextureId();return this._NativeSyncer.CallToNative(6,[e,t,i],!1),new _(i,new h(i))}GetPluginTexture(e,t){let i=C.genTextureId();return this._NativeSyncer.CallToNative(7,[e,t,i],!1),new _(i,new h(i))}GetCapturedTexture(){let e=C.genTextureId();return this._NativeSyncer.CallToNative(8,[e],!1),new _(e,new h(e))}}let g=new class{constructor(){this._count=1}get count(){return this._count}update(){this._count<Number.MAX_SAFE_INTEGER?++this._count:this._count=1}},A=new a,R=new a;let w=new class extends r{constructor(){super(A,R)}RenewSyncInfo(e){super.RenewSyncInfo(e,{tt:0})}};class E extends r{constructor(e){super(A,R,{id:e}),this._AnimId=e}InitPackage(e){this._AnimId=e.id}RenewSyncInfo(e){super.RenewSyncInfo(e,{tt:1,id:this._AnimId})}}let b=new a,D=new a;class x extends r{constructor(e){super(b,D,{id:e}),this._ViewId=e}InitPackage(e){this._ViewId=e.id}RenewSyncInfo(e){super.RenewSyncInfo(e,{tt:1,id:this._ViewId})}}let P=new class extends r{constructor(){super(b,D)}RenewSyncInfo(e){super.RenewSyncInfo(e,{tt:0})}},F=new a;class L extends r{constructor(e){super(null,F,{id:e}),this._SensorId=e}InitPackage(e){this._SensorId=e.id}RenewSyncInfo(e,t){super.RenewSyncInfo(e,{tt:1,id:this._SensorId})}}let k=new class extends r{constructor(){super(null,F)}RenewSyncInfo(e,t){super.RenewSyncInfo(e,{tt:0})}};var O=null,G=null;class V{constructor(){this._ScreenInfo={width:160,height:90,x:2/160,y:2/90,perspective:2/160,scaleRatio:1,designedWidth:1280},this.SwapCurrentTime=Date.now(),this.SwapCurrentCount=0,this._WillSwapCallbacks=new Map,this._DoWillSwapCallback=this._OnWillSwap.bind(this),this._NativeForgeRT={hdl:null},this._ApiLinkStatusReady=!0,this._SwapTimer=-1,this._OnRequesting=!1,this._OnRequestSeq=1,this._ApiLinkStatusReady=!1,this._InitNativeBridge(),this._EnableRequestSwap=!1,this._CommandParamsCache=[],this._NewSwapSeq=1,this._ForgeFrontRender.OnScreenHide&&window.JsView?.onVisibilityChange((e=>{'{"status":"hide"}'===e&&this._ForgeFrontRender.OnScreenHide()}))}_InitNativeBridge(){void 0!==global.NativeSendImpactSensorSyncData&&global.NativeSendImpactSensorSyncData.bind(this._NativeForgeRT),void 0!==global.NativeSetStepFpsSwitch&&(O=global.NativeSetStepFpsSwitch.bind(this._NativeForgeRT)),void 0!==global.NativeSetGlobalConfig&&(G=global.NativeSetGlobalConfig.bind(this._NativeForgeRT)),this._ForgeFrontRender=global.NativeGetRenderIntf(),this._ForgeFrontRender.RegisterSwapFunc((()=>{this.RequestSwap()})),this._DoRequestSwap=this._DoRequestSwap.bind(this),this._ForgeFrontRender.RegisterPreDomSyncFunc((()=>{this._ProcPreDomSync()})),this._ForgeFrontRender.RegisterOnScreenInfo(this._OnScreenInfoChange.bind(this))}SetStepFpsSwitch(e){this._ApiLinkStatusReady?O&&O(e):(console.warn("SetStepFpsSwitch(): API link status no ready!"),this._CommandParamsCache.push((()=>{this.SetStepFpsSwitch(e)})))}SetGlobalConfig(e){if(this._ApiLinkStatusReady){if(G){let t=JSON.stringify(e);console.log("SetGlobalConfig set with "+t),G(t),console.log("SetGlobalConfig set done")}}else console.warn("SetGlobalConfig(): API link status no ready!"),this._CommandParamsCache.push((()=>{this.SetGlobalConfig(e)}))}_PerformCachedCommand(){if(this._CommandParamsCache.length>0){for(let e=0;e<this._CommandParamsCache.length;e++)this._CommandParamsCache[e]();this._CommandParamsCache=[]}}RequestSwap(){this._OnRequesting?this._NewSwapSeq++:(this._OnRequesting=!0,this._NewSwapSeq++,this._OnRequestSeq++,this._PromiseRequestSwap(this._OnRequestSeq))}_PromiseRequestSwap(e){let t=this,i=this._NewSwapSeq;Promise.resolve().then((()=>{i==t._NewSwapSeq?t.InstantPerformSwap():e==this._OnRequestSeq&&t._PromiseRequestSwap(e)}))}NotifyNetTypeStatus(e,t){}EnableRequestSwap(e){this._EnableRequestSwap=e,this._ForgeFrontRender.EnableRequestSwap(e)}InstantPerformSwap(){this._OnRequesting&&(this._OnRequesting=!1,this._OnRequestSeq++,this._DoRequestSwap(!1))}_ProcSyncerList(e,t,i,n,s){let a=null,r=null,o=null,l=null,h=null;if(e.HasUpdate()&&(o=e.ReadSyncList()),t.HasUpdate()&&(r=t.ReadSyncList()),i.HasUpdate()&&(a=i.ReadSyncList()),n?.HasUpdate()&&(l=n.ReadSyncList()),null==a&&null==r&&null==o&&null==l||(h=this._ForgeFrontRender.SyncForgeJsCall(JSON.stringify({TexSync:o,AnimSync:r,ViewSync:a,SensorSync:l}),s)),h){let t;this._OnRequesting=!1,t=JSON.parse(h).TexSyncRet,t&&this._ProcTextureSyncRet(e,t)}}_ProcPreDomSync(){this._ProcSyncerList(o,A,b,null,u.PickArray())}_DoRequestSwap(e){if(!this._EnableRequestSwap)return void(this._OnRequesting=!1);g.update();let t=u.GetSize();if(this._ProcSyncerList(o,A,b,null,u.PickArray()),this._WillSwapCallbacks.size>0&&this._WillSwapCallbacks.forEach(this._DoWillSwapCallback),this._ProcSyncerList(l,R,D,F,u.PickArray()),t==u.GetSize())u.ResetForNextSwap();else{let e=u.GetSize();e>50&&console.warn("Warning: temp sync store kept with large size = "+e)}e=!!e,this._OnRequesting=!1,this.SwapCurrentTime=Date.now(),this.SwapCurrentCount++,this._ForgeFrontRender.DoRequestSwap(e)}GetScreenInfo(){return this._ScreenInfo}SetForgeRtHandler(e){this._NativeForgeRT.hdl=e,this._ApiLinkStatusReady=!0,this._ForgeFrontRender.SetForgeRtHandler(e),this._PerformCachedCommand()}InitScreenBuffer(e,t){isNaN(e)&&(e=1),isNaN(t)&&(t=1280);var i=t*e,n=i/16*9;this._ScreenInfo.width=Math.floor(i),this._ScreenInfo.height=Math.floor(n),this._ScreenInfo.x=2/this._ScreenInfo.width,this._ScreenInfo.y=2/this._ScreenInfo.height,this._ScreenInfo.perspective=this._ScreenInfo.x,this._ScreenInfo.scaleRatio=e,this._ScreenInfo.designedWidth=t}InitNativeScreenBuffer(){if(this._ApiLinkStatusReady){var e=JSON.stringify({displayScaleRatio:this._ScreenInfo.scaleRatio,designedMapWidth:this._ScreenInfo.designedWidth});this._ForgeFrontRender.InitScreenBuffer(e)}else console.info("InitNativeScreenBuffer(): API link status no ready!")}SyncBackStatus(e,t){this._ForgeFrontRender.SyncBackStatus(e,t)}TakeAndSyncBackStatus(){1==this._ForgeFrontRender.TakeAndSyncBackStatus()&&this.RequestSwap()}_OnScreenInfoChange(e,t,i,n,s){this._ScreenInfo.width=e,this._ScreenInfo.height=t,this._ScreenInfo.x=i,this._ScreenInfo.y=n,this._ScreenInfo.perspective=s}HasPendingRenderBreak(){return!!this._ApiLinkStatusReady&&this._ForgeFrontRender.HasPendingRenderBreak()}FinishRenderBreak(e){this._ApiLinkStatusReady?this._ForgeFrontRender.FinishRenderBreak(e):(console.warn("FinishRenderBreak(): API link status no ready, delay"),this._CommandParamsCache.push((()=>{this._ForgeFrontRender.FinishRenderBreak(e)})))}AddWillSwapListener(e,t){this._WillSwapCallbacks.set(e,t)}AddSwappedOnceObserver(e){this._ApiLinkStatusReady?this._ForgeFrontRender.AddSwappedOnceObserver(e):(console.warn("AddSwappedOnceObserver(): API link status no ready, delay"),this._CommandParamsCache.push((()=>{this._ForgeFrontRender.AddSwappedOnceObserver(e)})))}ActiveComponent(e){this._ApiLinkStatusReady?this._ForgeFrontRender.ActiveComponent(e):(console.warn("ActiveComponent(): API link status no ready, delay"),this._CommandParamsCache.push((()=>{this._ForgeFrontRender.ActiveComponent(e)})))}ShutdownComponents(e){this._ApiLinkStatusReady?this._ForgeFrontRender.ShutdownComponents(e):(console.warn("ShutdownComponents(): API link status no ready, delay"),this._CommandParamsCache.push((()=>{this._ForgeFrontRender.ShutdownComponents(e)})))}SetPlatformMsgDisp(e){this._PlatformMessageDispatch=e}GetPlatformMsgDisp(){return this._PlatformMessageDispatch}GetTextToolsApi(){return this._ForgeFrontRender.TextToolApi}_OnWillSwap(e){e()}_ProcTextureSyncRet(e,t){let i;i=t.idAlter,i&&e.ProcAlterIds(i.proxy,i.real)}}class M{constructor(){this._DisableKeyGuard=!1,this._LastEventTime=0,this._IsActivte=!1,this._BaseTime=0,this._BaseRemoteTime=0,this._SupportGetTimeFromApi=!1,this._IsSystemKeyDelaySuit=!1,this._ExpiredKeyCount=0,this._LastValidKeyTime=0,this._UseTimeFromApi=void 0!==window.jRuntimeBridge?.getSystemUptimeMillis,this._UseTimeFromApi&&(this._SupportGetTimeFromApi=!0,this._GetTimeFromApi())}SetTranslateDelay(e){M.sKeyTranslateDelay=e}CheckKey(e){if(!e.timeStamp||this._DisableKeyGuard)return!1;this._IsActivte=!0;const t=Date.now(),n=e.timeStamp;!this._SupportGetTimeFromApi&&n-this._LastEventTime>3e3&&(this._BaseTime=t,this._BaseRemoteTime=n,this._LastEventTime=n);let s=t-this._BaseTime;(s<0||s>5e3)&&(this._UseTimeFromApi?this._GetTimeFromApi():(this._BaseTime=t,this._BaseRemoteTime=n),s=0);return s+this._BaseRemoteTime-n>M.CONST_MAX_PASSING_GAP&&Math.abs(this._LastValidKeyTime-n)<M.CONST_MIN_VALID_KEY_GAP&&!e.repeat?(!this._IsSystemKeyDelaySuit&&this._SupportGetTimeFromApi&&(this._ExpiredKeyCount++,this._ExpiredKeyCount>50&&i("More than 50 keys are expired...")),!0):(this._IsSystemKeyDelaySuit||(this._IsSystemKeyDelaySuit=!0),this._LastValidKeyTime=n,!1)}toggleKeyGuard(){this._DisableKeyGuard=!this._DisableKeyGuard}IsActive(){return this._IsActivte}_GetTimeFromApi(){this._BaseTime=Date.now(),this._BaseRemoteTime=window.jRuntimeBridge.getSystemUptimeMillis()-M.sKeyTranslateDelay}}M.CONST_MAX_PASSING_GAP=20,M.CONST_MIN_VALID_KEY_GAP=180,M.sKeyTranslateDelay=5;let B,q=new M;class W{constructor(s,a,r){var o;if(this._MainActivity=null,this._DesignedMapWidth=1280,this._KeyLock=!1,this._CanvasHandler=0,o=4,console.log.bind(console),o>0&&console.error.bind(console),o>1&&(t=console.error.bind(console)),o>2&&(i=console.warn.bind(console)),o>3&&(n=console.log.bind(console)),o>4&&console.debug.bind(console),this._TextureManager=new N,this._RenderBridge=new V,e.sRenderBridge=this._RenderBridge,isNaN(r)&&(r=1280),this._DesignedMapWidth=r,this._KeyLock=!1,this._InitRenderer(s,a,r),this._EventHandlers={keyProc:null,keyUpProc:null,activityStateProc:null},this._RegisterKeyListener(this._EventHandlers),this._RegisterNativeActivityStateListener(this._EventHandlers),this._InstantSwapPromiseCallback=this._RenderBridge.InstantPerformSwap.bind(this._RenderBridge),null!=s){this._CanvasHandler=s.canvasNativeHandle;for(let e in this._EventHandlers)s[e]=this._EventHandlers[e]}e.sActivityManager=this,console.log("manager done")}GetTextureManager(){return this._TextureManager}DelayedActivateCanvas(e){if(0==this._CanvasHandler){this._CanvasHandler=e.canvasNativeHandle,this._EnableNativeBridge(e);for(let t in this._EventHandlers)e[t]=this._EventHandlers[t];this._RenderBridge.InitNativeScreenBuffer(),this._RenderBridge.RequestSwap()}else t("Error: already activated")}GetCanvasHandler(){return this._CanvasHandler}StartActivity(e){this._MainActivity=e}_InitRenderer(e,t,i){this._EnableNativeBridge(e),this._RenderBridge.InitScreenBuffer(t,i),this._RenderBridge.InitNativeScreenBuffer()}_EnableNativeBridge(e){null!=e&&(this._RenderBridge.SetForgeRtHandler(e.frtNativeHandle),e.renderBridge=this._RenderBridge,this._RenderBridge.EnableRequestSwap(!0))}_KeyProcDown(e){if(this._KeyLock)return!0;var t=!0;if(this._MainActivity){if(q.CheckKey(e))return console.log("keyEventGuard ignore keys"),!1;q.IsActive()&&this._RenderBridge.InstantPerformSwap(),t=!this._MainActivity.DispatchKeyDown(e),this._RenderBridge.TakeAndSyncBackStatus()}return t}_KeyProcUp(e){if(this._KeyLock)return!0;var t=!0;return this._MainActivity&&(t=!this._MainActivity.DispatchKeyUp(e),this._RenderBridge.TakeAndSyncBackStatus()),t}_RegisterKeyListener(e){e.keyProc=this._KeyProcDown.bind(this),e.keyUpProc=this._KeyProcUp.bind(this)}_RegisterNativeActivityStateListener(e){let t=this;var i=function(e){var i=e.State;switch(console.log("ActivityStateListenerChanged, state:"+i),i){case"onActivityResumed":t._RenderBridge.EnableRequestSwap(!0),t._RenderBridge.InstantPerformSwap();break;case"onActivityPaused":t._RenderBridge.EnableRequestSwap(!1)}}.bind(this);e.activityStateProc=i}}class K{constructor(){this._ActivityManager=null}Init(e){let t=1280,i=1;try{if(H){let e=H();"number"==typeof e.width&&(t=e.width),"number"==typeof e.displayScale&&(i=e.displayScale)}}catch(e){console.log("Note: DesignMap failed")}this._ActivityManager=new W(e,i,t),U?U(this._ActivityManager):console.error("FATAL: no found entry")}getActivityManager(){return this._ActivityManager}}let U=null,H=null;class J{constructor(e){this.PageName=e,this._FocusChild=null,this._LatestFocusChild=null,this.SubPages=[],this._ParentPage=null,this._KeyLock=!1}OnRenderFrame(){t("OnRenderFrame() MUST override")}OnKeyDown(e){return!1}OnKeyUp(e){return!1}DispatchKeyDown(e){if(this._KeyLock)return!0;let t=!1;return this._FocusChild&&(t=this._FocusChild.DispatchKeyDown(e)),t||(t=this.OnKeyDown(e)),t}OnCustomEvent(e){return!1}BubbleCustomEvent(e){this.OnCustomEvent(e)||this._ParentPage&&this._ParentPage.BubbleCustomEvent(e)}DispatchKeyUp(e){if(this._KeyLock)return!0;let t=!1;return this._FocusChild&&(t=this._FocusChild.DispatchKeyUp(e)),t||(t=this.OnKeyUp(e)),t}PrintLastFocusPage(){let e="------"+this.PageName+"\n",t=this._ParentPage;return t&&(e+=t.PrintLastFocusPage()),e}IsFocus(){return!this._ParentPage||this._ParentPage._FocusChild==this}_IsLeafInChain(){return this.IsFocus()&&!this._FocusChild}SetParent(e){null!=e?(this._ParentPage=e,e.SubPages.push(this)):s("ERROR: parent is null")}SetParentPage(e){this.SetParent(e)}OnRemoveFromTree(){if(this._ParentPage=null,this.SubPages&&this.SubPages.length>0){for(let e of this.SubPages)e.OnRemoveFromTree();this.SubPages=[]}}RemoveSubPage(e){e==this._FocusChild&&(this._FocusChild=null),e==this._LatestFocusChild&&(this._LatestFocusChild=null);for(let t=0;t<this.SubPages.length;t++)if(e==this.SubPages[t]){this.SubPages.splice(t,1);break}}ClearSubPages(){this.SubPages=[],this._FocusChild=null,this._LatestFocusChild=null}GetParentPage(){return this._ParentPage}Focus(e=!1){if(this.IsFocus()){if(!e)return void n("requestFocus(): Already focused name="+this.PageName);if(this._IsLeafInChain())return void n("requestFocus(): Already focused name="+this.PageName)}if(this._ParentPage){let t,i=[],n=this;for(;n._ParentPage&&!n.IsFocus();)i.push(n),n=n._ParentPage;t=e&&0==i.length?this._FocusChild:i[i.length-1]._ParentPage?._FocusChild;let a=[];for(;t;)a.push(t),t=t._FocusChild;for(let e=a.length-1;e>=0;e--)a[e]._BlurInternal();for(let e=i.length-1;e>=0;e--)i[e]._FocusInternal();if(e)this._LatestFocusChild=null;else{let e=i[0];for(;e._LatestFocusChild&&null==e._FocusChild;)e._LatestFocusChild._FocusInternal(),e=e._FocusChild,e||s("ERROR: focus chain is broken")}}}ReturnFocusToParent(){this._ParentPage&&(this.IsFocus()&&this._ParentPage.Focus(!0),this._ParentPage._FocusChild==this&&(this._ParentPage._FocusChild=null),this._ParentPage._LatestFocusChild==this&&(this._ParentPage._LatestFocusChild=null))}_FocusInternal(){this._ParentPage?(this._ParentPage._FocusChild=this,this._ParentPage._LatestFocusChild=this,this.OnFocus()):t("No dispatcher")}_BlurInternal(){this._ParentPage?this._ParentPage._FocusChild==this?(this._ParentPage._FocusChild=null,this.OnBlur()):i("Not focus yet, page name="+this.PageName):t("No dispacher")}GetFocusChild(){return this._FocusChild}OnFocus(){i("No overrided Page OnFocus event, page name="+this.PageName)}OnBlur(){i("No overrided Page OnBlur event, page name="+this.PageName)}KeyLock(){this._KeyLock=!0}UnKeyLock(){this._KeyLock=!1}}var j;!function(e){e.VIEW_COMMAND=0,e.TEXTURE_COMMAND=1,e.ANIM_COMMAND=2,e.SYNC_COMMAND=3,e.APIC_PLAY=0,e.APIC_STOP=1,e.GET_BOUNDING_RECT=0,e.FILTER_VIEW_WAVE=1,e.TRANSLATE_FRAME_ALT_SPEED=0,e.FREE_MOVE_RUN_CMDPACKS=1,e.EXE_DEFAULT=0,e.EXE_AFTER_RENDER=1}(j||(j={}));const z=(e,t)=>{let i=0,n=0,s=0;return isNaN(e)||(i|=1,n=e),isNaN(t)||(i|=2,s=t),{e:i,x:n,y:s}};var Y,X,Q;!function(e){e.ActEvent_ActFinish=1,e.ActEvent_Speed_X_Revert=2,e.ActEvent_Speed_Y_Revert=3,e.ActEvent_ActReject=4,e.ActEvent_ActDragStart=5,e.ActEvent_ActDragEnd=6,e.ActEvent_ActFlingStart=7,e.ActEvent_ActFlingProgress=8,e.ActEvent_ActFlingEnd=9,e.ActEvent_ActTouchDown=10,e.ActEvent_ActTouchRelease=11,e.ActEvent_ActFlingCancel=12,e.ActEvent_ActFlingDrop=13,e.ActEvent_MovementSync=14}(Y||(Y={})),function(e){e.GroupType_ActionAssoc=10,e.GroupType_Fling=11,e.GroupType_Invalid_Ext=65535}(X||(X={})),function(e){e.FLING_ON_PROGRESS_INTERVAL=200}(Q||(Q={}));const $=(e,t)=>{e.gtype=t.g,e.once=t.m?0:1;let i=t.s;i&&(e.name=i),e.brk=t.brk?1:0};const Z=51;function ee(e){return e?JSON.stringify(e.Package()):null}let te=new class{constructor(){this._NativeSyncer=w}CreateTranslate(e,t,i,n,s,a,r){s!=1/0&&null!=s||(console.warn("translate animation duration invalid="+s),s=0),this._NativeSyncer.CallToNative(1,[e,t,i,n,s,ee(a),r])}CreateRotate(e,t,i,n,s,a,r){s!=1/0&&null!=s||(console.warn("rotate animation duration invalid="+s),s=0),this._NativeSyncer.CallToNative(2,[e,t,i.x,i.y,i.z,n.x,n.y,n.z,s,ee(a),r])}CreateScale(e,t,i,n,s,a,r,o,l,h,c){l!=1/0&&null!=l||(console.warn("scale animation duration invalid="+l),l=0),this._NativeSyncer.CallToNative(3,[e,t,i,n,s,a,r,o,l,ee(h),c])}CreateTranslateFrame(e,t,i,n,s,a,r,o){this._NativeSyncer.CallToNative(5,[e,t,i,n,!!s,a,r,o])}CreateCssKeyframe(e,t,i,n,s,a){t!=1/0&&null!=t||(console.warn("css animation duration invalid="+t),t=0),this._NativeSyncer.CallToNative(6,[e,t,i,n,s,a])}CreateFreeMoveAnimation(e,t,i,n){this._NativeSyncer.CallToNative(7,[e,t?u.AddData(t):0,i,n?1:0])}CreateShaderAnimation(e,t,i){this._NativeSyncer.CallToNative(8,[e,t,i])}};class ie{constructor(){this.AnimNativeId=C.genAnimationId(),this._NativeSyncer=new E(this.AnimNativeId),this._ListenerObj=null,this._ListenerStatusCallback=null}SetAnimationListener(e){this._OnNewListener(e)}AddAnimationListener(e){this._ListenerObj&&e.AddInherit(this._ListenerObj),this._OnNewListener(e)}RemoveAnimationListener(){this._ListenerObj=null}Enable(e){this._NativeSyncer.CallToNative(2,[e])}EnableInfinite(){return this._NativeSyncer.CallToNative(3,null),this}SetRepeat(e){return this._NativeSyncer.CallToNative(5,[e]),this}EnableDelay(e){return this._NativeSyncer.CallToNative(4,[e]),this}SetStartPos(e){return e>=0&&e<=1?this._NativeSyncer.CallToNative(6,[e]):console.warn("Warning: SetStartPos() out of range"),this}_OnNewListener(e){let t=!0;if(this._ListenerObj&&(t=this._ListenerObj.ListenerEnabledFlags==e.ListenerEnabledFlags),this._ListenerObj=e,null!=this._ListenerObj&&(null==this._ListenerStatusCallback||!t)){let e=this;this._ListenerStatusCallback=t=>{e._ListenerObj?.InvokeFromNativeForge(t)};let t=u.AddData(this._ListenerStatusCallback);this._NativeSyncer.CallToNative(1,[t,this._ListenerObj.ListenerEnabledFlags])}}}var ne,se;!function(e){e.ReleaseAfterEndCallback=1,e.KeepTransform=2,e.AckFinalProgress=4,e.AckRepeat=8}(ne||(ne={})),function(e){e.AltSpeed=(e,t,i)=>{let n={S60:Math.floor(100*t/55)/100,T:i};e?.DispatchAnimCommand(j.TRANSLATE_FRAME_ALT_SPEED,JSON.stringify(n))},e.RunFreeMoveCmdPacks=(e,t)=>{e?.DispatchAnimCommand(j.FREE_MOVE_RUN_CMDPACKS,JSON.stringify(t))}}(se||(se={}));class ae{constructor(){this._MaskType="COMMON"}Type(){return this._MaskType}ToSyncJsonObj(e){return e||(e={}),e.typ=this._MaskType,e}}let re=new class{constructor(){this._InnerViews={},this._ViewToken=0}add(e){let t=e.view.ViewId;return this._InnerViews.hasOwnProperty(t)&&(this._InnerViews[t]=e),t}remove(e){this._InnerViews[e]&&delete this._InnerViews[e]}get(e){return this._InnerViews[e]}clear(){this._InnerViews={},this._ViewToken=0}};class oe{constructor(){this.SensorId=C.genViewId(),this._NativeSync=new L(this.SensorId),this.CreateSensor()}CreateSensor(){}CreateTypedSensor(e){k.CallToNative(1,[this.SensorId,e],!0)}Recycle(){this._NativeSync.CallToNative(1,null,!0)}}class le{constructor(e,t,i,n){this.Texture=e,this.MaskSetting=t,void 0===n&&(n=!0),this.HasAlpha=n}ToSyncJsonObj(e=void 0){return e||(e={}),e.texId=this.Texture?this.Texture.TexId:0,e.alpha=this.HasAlpha,this.MaskSetting?e.mask=this.MaskSetting.ToSyncJsonObj():e.mask=null,e}}var he;!function(e){var t,i,n;(t=e.ControlType||(e.ControlType={})).DoKeepInRender=1,t.RecycleKeptView=2,(i=e.SyncedType||(e.SyncedType={})).Synced=0,i.NotSynced=1,i.RequestKeepInRender=2,i.OnKeepingInRender=3,i.RecycleKeeping=4,(n=e.TextureCoordAnchor||(e.TextureCoordAnchor={})).LeftTop=1,n.CenterTop=2,n.RightTop=3,n.LeftMiddle=4,n.Center=5,n.RightMiddle=6,n.LeftBottom=7,n.CenterBottom=8,n.RightBottom=9}(he||(he={}));let ce=new class{constructor(){this._NativeSyncer=P}CreateNativeView(e,t,i){this._NativeSyncer.CallToNative(1,[e,t],i)}CreateJsRootView(e){this._NativeSyncer.CallToNative(2,[e])}CreateDomProxyView(e,t,i){this._NativeSyncer.CallToNative(3,[e,t,i?1:0],!0)}};class ue{constructor(e,t,i=!1){this.Visibility=void 0,this._NativeSyncer=new x(e),this.ViewId=e,this.TextureSetting=null,this._CallTextureSet=null,this._DomDepends=i,this._GetBCRCallback=null,this.CreateView(t)}CreateView(e=void 0){}ResetTexture(e=null){if(!this._CallTextureSet){this._CallTextureSet=this._NativeSyncer.CallToNative(1,null,this._DomDepends);let e=this;this._NativeSyncer.AddStartSyncCallback((()=>{this.TextureSetting?e._NativeSyncer.AlterCallParams(e._CallTextureSet,[e.TextureSetting.ToSyncJsonObj()]):e._NativeSyncer.AlterCallParams(e._CallTextureSet,[null]),e._CallTextureSet=null}))}this.TextureSetting=e}BindedPageBase(e){}SetVisibility(e){if("INHERIT"!==e&&void 0!==e||(e="VISIBLE"),this.Visibility!=e){this.Visibility=e;let t=0;switch(e){case"VISIBLE":t=1;break;case"GONE":t=2;break;case"HIDDEN":t=3;break;default:return void console.error("unknown visible type="+e)}this._NativeSyncer.CallToNative(2,[t],this._DomDepends)}}AddView(e,t){let i={x:0,y:0,width:0,height:0};t&&(i=this._FormatLayoutParams(t)),this._NativeSyncer.CallToNative(3,[e.ViewId,t?1:0,i.x,i.y,i.width,i.height],this._DomDepends)}ClearViews(){this._NativeSyncer.CallToNative(4,null,this._DomDepends)}ResetTextureCssTransform(e,t){e=e||"",t=t||"",this._NativeSyncer.CallToNative(5,[e,t],this._DomDepends)}SetTextureCoord(e,t,i,n,s=he.TextureCoordAnchor.Center){this._NativeSyncer.CallToNative(9,[e,t,i,n,s],this._DomDepends)}ResetLayoutParams(e){let t;null!=e?(t=this._FormatLayoutParams(e),this._NativeSyncer.CallToNative(6,[t.x,t.y,t.width,t.height],this._DomDepends)):s("ResetLayoutParams(): new params is null")}_FormatLayoutParams(e){return{x:isNaN(e.x)?0:e.x,y:isNaN(e.y)?0:e.y,width:isNaN(e.width)?0:e.width,height:isNaN(e.height)?0:e.height}}GetBoundingClientRect(){return new Promise(((e,t)=>{null!=this._GetBCRCallback&&(this._GetBCRCallback=null),this._GetBCRCallback=i=>{null!=this._GetBCRCallback&&(this._GetBCRCallback=null);const n=JSON.parse(i);0==n.status?e(n.data):t(n.error)};const i=u.AddData(this._GetBCRCallback);this._NativeSyncer.CallToNative(12,[i],this._DomDepends)}))}StartAnimation(e,t,i){let n=e?e.AnimNativeId:0;this._NativeSyncer.CallToNative(7,[n,isNaN(i)?0:i],this._DomDepends)}StopAnimation(){this._NativeSyncer.CallToNative(8,null,this._DomDepends)}DispatchAnimCommand(e,t){this._NativeSyncer.CallToNative(13,[e,t],this._DomDepends)}StartTextureAnimation(e){let t=e?e.AnimNativeId:0;this._NativeSyncer.CallToNative(10,[t],this._DomDepends)}StopTextureAnimation(){this._NativeSyncer.CallToNative(11,null,this._DomDepends)}DragEnables(e){this._NativeSyncer.CallToNative(14,[e],this._DomDepends)}SetTapListener(e=void 0){if(null!=e){const t=u.AddData(e);this._NativeSyncer.CallToNative(15,[t],this._DomDepends)}else this._NativeSyncer.CallToNative(15,[0],this._DomDepends)}EnableAutoSize(){this._NativeSyncer.CallToNative(16,[],this._DomDepends)}RegisterFlexAssigned(e=void 0){if(null!=e){const t=u.AddData(e);this._NativeSyncer.CallToNative(17,[t],this._DomDepends)}else this._NativeSyncer.CallToNative(17,[0],this._DomDepends)}EnableVisibleTestRect(){this._NativeSyncer.CallToNative(18,[],this._DomDepends)}Capture2Texture(e,t=void 0){if(!e)return void console.error("Error: Capture2Texture need target texture");let i=e.GetTextureId();if(!t)return void console.error("Error: Capture2Texture need callback");const n=u.AddData(t);this._NativeSyncer.CallToNative(19,[i,n],this._DomDepends)}}class de extends ue{constructor(e=null){!e||e instanceof le||s("ERROR:LayoutView need TextureSetting as parameter"),super(C.genViewId(),{DomDepends:!1}),this.Visibility="VISIBLE",e&&this.ResetTexture(e)}CreateView(e){ce.CreateNativeView(this.ViewId,0,e.DomDepends)}}function _e(e){let t=[];if(e instanceof Array)for(let i of e)i instanceof ue&&t.push(i.ViewId);return t}class Se extends oe{constructor(e,t,i,n){super(),this.InitSet(e,t,i,n)}CreateSensor(){this.CreateTypedSensor(3)}InitSet(e,t,i,n){let s=0;i&&(s=u.AddData((e=>{1==e?i.OnBeginContact?.():2==e&&i.OnEndContact?.()}))),this._NativeSync.CallToNative(20,[e.ViewId,t.ViewId,s,n?n.SensorId:0],!0)}}let pe={StartTrace:(e,t,i,n)=>new Se(e,t,i,n),Callback:class{constructor(e,t){this.OnBeginContact=e,this.OnEndContact=t}UpdateImpactCallback(e){this.OnBeginContact=e}UpdateLeaveCallback(e){this.OnEndContact=e}},AutoFroze:class extends oe{constructor(e,t){super(),this.InitSet(),this._UpdatePreImpactList(_e(e)),this._UpdateOnImpactList(_e(t)),this._FreshAutoRecycleRef()}CreateSensor(){this.CreateTypedSensor(2)}InitSet(){this._NativeSync.CallToNative(25,null,!0)}UpdatePreImpactList(e){this._UpdatePreImpactList(_e(e)),this._FreshAutoRecycleRef()}UpdateOnImpactList(e){this._UpdateOnImpactList(_e(e)),this._FreshAutoRecycleRef()}_UpdatePreImpactList(e){this._NativeSync.CallToNative(26,[...e],!0)}_UpdateOnImpactList(e){this._NativeSync.CallToNative(27,[...e],!0)}_FreshAutoRecycleRef(){this._NativeSync.CallToNative(28,null,!0)}}};var ye;!function(e){e[e.NONE=0]="NONE",e[e.TEXT=1]="TEXT",e[e.PASSWORD=2]="PASSWORD",e[e.TEXT_AREA=3]="TEXT_AREA",e[e.CONTENT_EDITABLE=4]="CONTENT_EDITABLE",e[e.SEARCH=5]="SEARCH",e[e.URL=6]="URL",e[e.EMAIL=7]="EMAIL",e[e.TELEPHONE=8]="TELEPHONE",e[e.NUMBER=9]="NUMBER"}(ye||(ye={}));var ve,me;!function(e){var t;(t=e.UniformType||(e.UniformType={}))[t.FLOAT=1]="FLOAT"}(ve||(ve={})),function(e){var t,i;(t=e.Type||(e.Type={}))[t.GRAY_DOWN=1]="GRAY_DOWN",t[t.WAVE=2]="WAVE",(i=e.Wave||(e.Wave={}))[i.CIRCLE_WAVE=1]="CIRCLE_WAVE",i[i.RECTANGLE_WAVE=2]="RECTANGLE_WAVE"}(me||(me={}));let Ce=0;class fe{constructor(){this.sourceList=[]}addSource(e,t,i,n,s){n=n??{type:me.Wave.CIRCLE_WAVE},s=s??{timeDecay:3,distanceDecay:10,speed:100,frequency:8,waveNum:2};const a=++Ce;let r=0,o=0,l=0;return n.type==me.Wave.RECTANGLE_WAVE&&(r=n.width,o=n.height,l=n.radius),this.sourceList.push(a,e,t,i,r,o,l,s.timeDecay,s.distanceDecay,s.speed,s.frequency,s.waveNum),a}getSourceList(){const e=this.sourceList;return this.sourceList=[],e}}class Ie extends ue{constructor(e,t){super(C.genViewId(),{DomElementId:e,UseMaskView:t},!0),this.Visibility="VISIBLE"}CreateView(e){ce.CreateDomProxyView(this.ViewId,e.DomElementId,e.UseMaskView)}RegisterOnProxyReady(e){e?.()}}function Te(e){return isNaN(e)?0:parseInt(e)}function Ne(e){return{fontFamily:e.fontFamily?e.fontFamily:be.sDefaultFont,fontSize:Te(e.fontSize),italic:"italic"===e.fontStyle,bold:"bold"===e.fontWeight,hasEmoji:1==e.JsvTextEmoji}}function ge(){return e.sRenderBridge.GetTextToolsApi()}function Ae(e,t){let i=Ne(t);return ge().GetTextWidth(e,JSON.stringify(i))}function Re(e,t){let i=Ne(t);const n=ge().GetOneLineTextDrawWidth(e,JSON.stringify(i)),s={totalWidth:n[0],sliceInfo:[]};for(let e=1;e<n.length;e+=3)s.sliceInfo.push({start:n[e],end:n[e+1],width:n[4]});return s}function we(e,t,i,n,s,a){let r;if(e>0)r=ge().GetCursorPosition(e,t,null,null,null,1);else{let o=Ne(n),l=function(e){let t=Te(e.height),i=Te(e.lineHeight),n="string"==typeof e.wordWrap?e.wordWrap:"none";return"nowrap"==e.whiteSpace&&(n="none"),{width:Te(e.width),height:t,textAlign:"string"==typeof e.textAlign?e.textAlign:"left",lineHeight:0==i?t:i,wordWrap:n,textOverflow:"string"==typeof e.textOverflow?e.textOverflow:"clip"}}(s);r=ge().GetCursorPosition(e,t,i,JSON.stringify(o),JSON.stringify(l),a?1:0)}return r}function Ee(e){ge().RemoveCursorTextCache(e)}var be;!function(e){e.sDefaultFont="黑体",e.sDefaultFontSize=30,e.sDefaultFontColor="#FFFFFF",e.sDefaultBackgroundColor="rgba(0, 0, 0, 0)",e.GetTextWidth=Ae,e.GetOneLineTextDrawWidth=Re,e.GetCursorPosition=we,e.RemoveCursorTextCache=Ee}(be||(be={}));let De=e;De.Run=function(e){return B=new K,B.Init(e),B},De.InitStarter=function(t,i){e.DesignMap=i,U=t,H=i},De.NewDomProxyView=function(e,t){return new Ie(e,t)},De.sFrameCount=g,De.NativeConstant=j,De.PageBase=J,De.ReactActivity=class extends J{constructor(e,t){super(e),this._TextureManager=t.GetTextureManager()}GetTextureManager(){return this._TextureManager}SetContentView(e,t){this._ContentView=e,this._ContentViewSize=t}},De.ViewTextureMask=class extends ae{constructor(e){super(),this._MaskType="TEXTURE",this.ImageTexture=e}ToSyncJsonObj(e){return e||(e={}),e.texId=this.ImageTexture.TexId,super.ToSyncJsonObj(e)}},De.ViewRoundCornerMask=class extends ae{constructor(e,t,i,n){super(),this._MaskType="CORNER",this._TopLeft=e,this._TopRight=isNaN(t)?e:t,this._BottomLeft=isNaN(i)?e:i,this._BottomRight=isNaN(n)?e:n}ToSyncJsonObj(e){return e||(e={}),e.tl=this._TopLeft,e.tr=this._TopRight,e.bl=this._BottomLeft,e.br=this._BottomRight,super.ToSyncJsonObj(e)}},De.sViewStore=re,De.ViewInfo=class{constructor(e,t){this.view=e,this.layout_params=t}},De.LayoutView=de,De.AutoStretchView=class extends de{constructor(e=null){super(e)}CreateView(e){ce.CreateNativeView(this.ViewId,12,e.DomDepends)}},De.EditControlView=class extends de{constructor(t=null){super(t),this._AppListeners=null,this._ImeSyncFunc=this._ImeEventListener.bind(this),this._MsgToken="_JscIme_"+this.ViewId,e.sRenderBridge.GetPlatformMsgDisp().subscribe(this._MsgToken,this._ImeSyncFunc)}CreateView(e){ce.CreateNativeView(this.ViewId,5,e.DomDepends)}releaseResource(){e.sRenderBridge.GetPlatformMsgDisp().unsubscribe(this._MsgToken,this._ImeSyncFunc)}setEditorStyle(e,t,i,n){this._NativeSyncer.CallToNative(5005,[e,t,i,n],this._DomDepends)}showIme(e,t,i,n,s){e!=ye.NONE?(void 0!==i&&null!=i||(i=t.length>0?t.length:0),i<0?i=0:i>t.length&&(i=t.length>0?t.length:0),this._NativeSyncer.CallToNative(5001,[e,encodeURIComponent(t),i,n,s],this._DomDepends)):console.log("showIme inputType error")}hideIme(){this._NativeSyncer.CallToNative(5002,null,this._DomDepends)}updateCursorOffset(e,t,i,n){this._NativeSyncer.CallToNative(5003,[e,t,i,n],this._DomDepends)}addImeEventListener(e){this._AppListeners=e}_OnStatusFromPlatform(e){this._NativeSyncer.CallToNative(5006,[e],this._DomDepends)}_ImeEventListener(e){if(e){var t=JSON.parse(e);if("text"==t.type){var i=t.text;let e=t.selectStart,n=t.scrollLeft,s=t.scrollTop;this._AppListeners?.OnTextChanged(decodeURIComponent(i),e,n,s)}else if("vstatus"==t.type){let e=t.isVisible?1:0;this._OnStatusFromPlatform(e),this._AppListeners?.OnStatusChanged(e)}else if("action"==t.type){var n=t.action;this._AppListeners?.OnEditAction(n)}}else console.log("EditControlView","_ImeEventListener input_data error")}},De.FilterView=class extends de{constructor(e=null,t){super(e),this._Type=t??me.Type.GRAY_DOWN,this._NativeSyncer.CallToNative(10002,[this._Type,[]],this._DomDepends)}CreateView(e){ce.CreateNativeView(this.ViewId,10,e.DomDepends)}FilterSwitch(e){this._NativeSyncer.CallToNative(10001,[e],this._DomDepends)}AddWaveSourceList(e){if(this._Type==me.Type.WAVE){const t={T:1,L:e.getSourceList()};this.DispatchCommand(j.FILTER_VIEW_WAVE,JSON.stringify(t))}else console.error("FilterView error: add wave source while filter view type is GRAY_DOWN.")}AddWaveSourceSingle(e,t,i,n={type:me.Wave.CIRCLE_WAVE},s={timeDecay:3,distanceDecay:10,speed:100,frequency:8,waveNum:2}){if(this._Type==me.Type.WAVE){const a=new fe,r=a.addSource(e,t,i,n,s);return this.AddWaveSourceList(a),r}return console.error("FilterView error: add wave source while filter view type is GRAY_DOWN."),-1}RemoveSource(e){if(this._Type==me.Type.WAVE){const t={T:2,L:e instanceof Array?e:[e]};this.DispatchCommand(j.FILTER_VIEW_WAVE,JSON.stringify(t))}else console.error("FilterView error: remove wave source while filter view type is GRAY_DOWN.")}DispatchCommand(e,t){t&&this._NativeSyncer.CallToNative(10003,[e,t],this._DomDepends)}},De.FragShaderView=class extends de{constructor(e=null){super(e)}CreateView(e){ce.CreateNativeView(this.ViewId,11,e.DomDepends)}SetShaderInfo(e,t,i,n){const s={shaderStr:e,uniformParams:t,textureParams:i};let a=0;null!=n&&(a=u.AddData(n)),this._NativeSyncer.CallToNative(7001,[JSON.stringify(s),a],this._DomDepends)}},De.NativeSharedView=class extends de{constructor(e){super(e),this._JsContextId=window.JsView?window.JsView.getJsContextId():0,this._TrackId=null,this.SetTrackId(this._JsContextId+"_"+this.ViewId)}CreateView(e){ce.CreateNativeView(this.ViewId,9,e.DomDepends)}GetTrackId(){return this._TrackId}SetTrackId(e){this._TrackId=e,this._NativeSyncer.CallToNative(10101,[this._TrackId],this._DomDepends)}SetOverSize(e){this._NativeSyncer.CallToNative(10102,[isNaN(e)?0:e],this._DomDepends)}},De.NinePatchView=class extends de{CreateView(e){ce.CreateNativeView(this.ViewId,4,e.DomDepends)}SetRepeat(e,t){this._NativeSyncer.CallToNative(4001,[e,t],this._DomDepends)}SetPadding(e,t){this._NativeSyncer.CallToNative(4002,[e,t],this._DomDepends)}SetImageDspSize(e,t){this._NativeSyncer.CallToNative(4003,[e,t],this._DomDepends)}SetDesignMapWidth(e){this._NativeSyncer.CallToNative(4004,[e],this._DomDepends)}EnableAlphaMix(e){this._NativeSyncer.CallToNative(4005,[e.TexId],this._DomDepends)}},De.PreloadView=class extends de{constructor(e=null){super(e)}CreateView(e){ce.CreateNativeView(this.ViewId,7,e.DomDepends)}},De.SprayView=class extends de{constructor(e=null){super(e),this.onStop=null}SetSprayInfo(e,t,i,n,s,a,r,o,l,h,c,u,d,_,S,p,y,v,m,C,f,I,T){this._NativeSyncer.CallToNative(6001,[e,t,i,n,s,a,r,o,l,h,c,u,d,_,!!S,!!p,!!y,v,m,C,f,I,T],this._DomDepends)}CreateView(e){ce.CreateNativeView(this.ViewId,6,e.DomDepends)}Start(){this._NativeSyncer.CallToNative(6002,[],this._DomDepends)}Stop(e=!1){this._NativeSyncer.CallToNative(6003,[e],this._DomDepends)}RegisterOnStop(e){this.onStop=e}_OnEvent(e){try{if("onStop"===JSON.parse(e).type)this.onStop?.()}catch(e){console.error("SprayView onEvent error",e)}}RegisterEventListener(){const e=u.AddData(this._OnEvent.bind(this));this._NativeSyncer.CallToNative(6004,[e])}},De.TextInputType=ye,De.FilterViewType=me,De.TextureSetting=le,De.ExternalTextureSetting=le,De.TextUtils=be,De.VisibleSensor=class extends oe{constructor(e,t=null){super(),this.InitSet(e,t)}CreateSensor(){this.CreateTypedSensor(1)}InitSet(e,t){let i=0;t&&(i=u.AddData(((e,i,n,s)=>{t(1==e,1==i,1==n,1==s)}))),this._NativeSync.CallToNative(11,[e.ViewId,i],!0)}ResetArea(e){"number"!=typeof e.horizon&&(console.log("horizon not set, default to 1.0"),e.horizon=1),"number"!=typeof e.vertical&&(console.log("vertical not set, default to 1.0"),e.vertical=1),this._NativeSync.CallToNative(12,[e.horizon,e.vertical],!0)}Enable(e){this._NativeSync.CallToNative(13,[!!e],!0)}ResetContainer(e){let t;t=e?e.ViewId:0,this._NativeSync.CallToNative(14,[t],!0)}},De.EnvBlockerSensor=class extends oe{constructor(e){super(),this.InitSet(e)}CreateSensor(){this.CreateTypedSensor(4)}InitSet(e){this._NativeSync.CallToNative(30,[e.ViewId],!0)}ResetTopGID(e){this._ResetSideGID(0,e)}ResetBottomGID(e){this._ResetSideGID(1,e)}ResetLeftGID(e){this._ResetSideGID(2,e)}ResetRightGID(e){this._ResetSideGID(3,e)}_ResetSideGID(e,t){this._NativeSync.CallToNative(31,[e,isNaN(t)?0:parseInt(t)],!0)}Enable(e){this._NativeSync.CallToNative(32,[e],!0)}},De.sImpactSensorManager=pe,De.TextureInstantLoad=T,De.QRCodeLevel=I,De.ColorSpace=f,De.TextureManager=N,De.FreeMoveExternType=X,De.AnimationListener=class{constructor(e,t,i){this.ListenerEnabledFlags=0,this.InvokeAnimationStart=e,this._OnAnimationStart=e,e&&(this.ListenerEnabledFlags|=1),this.InvokeAnimationEnd=t,this._OnAnimationEnd=t,t&&(this.ListenerEnabledFlags|=2),this.InvokeViewNoVisible=i,this._OnViewNoVisible=i,i&&(this.ListenerEnabledFlags|=4),this.InvokeAnimRepeat=null,this._OnAnimRepeat=null,this.InvokeAnimFinal=null,this._OnAnimFinal=null,this._AttachedGroup=null,this._InheritListener=[]}OnStart(e){return this.InvokeAnimationStart=this._OnAnimationStart=e,e?this.ListenerEnabledFlags|=1:this.ListenerEnabledFlags&=30,this}OnEnd(e){return this.InvokeAnimationEnd=this._OnAnimationEnd=e,e?this.ListenerEnabledFlags|=2:this.ListenerEnabledFlags&=29,this}OnRepeat(e){return this.InvokeAnimRepeat=this._OnAnimRepeat=e,e?this.ListenerEnabledFlags|=8:this.ListenerEnabledFlags&=23,this}OnFinalProgress(e){return this.InvokeAnimFinal=this._OnAnimFinal=e,e?this.ListenerEnabledFlags|=16:this.ListenerEnabledFlags&=15,this}AddInherit(e){if(e){if(0==this._InheritListener.length){var t=this;this.InvokeAnimationStart=function(){t._OnAnimationStart&&t._OnAnimationStart();for(var e=0;e<t._InheritListener.length;e++)t._InheritListener[e].InvokeAnimationStart?.()},this.InvokeAnimationEnd=function(e){t._OnAnimationEnd&&t._OnAnimationEnd(e);for(var i=0;i<t._InheritListener.length;i++)t._InheritListener[i].InvokeAnimationEnd?.(e)},this.InvokeViewNoVisible=function(){t._OnViewNoVisible&&t._OnViewNoVisible();for(var e=0;e<t._InheritListener.length;e++)t._InheritListener[e].InvokeViewNoVisible?.()},this.InvokeAnimFinal=function(e){t._OnAnimFinal&&t._OnAnimFinal(e);for(var i=0;i<t._InheritListener.length;i++)t._InheritListener[i].InvokeAnimFinal?.(e)},this.InvokeAnimRepeat=function(e){t._OnAnimRepeat&&t._OnAnimRepeat(e);for(var i=0;i<t._InheritListener.length;i++)t._InheritListener[i].InvokeAnimRepeat?.(e)},this.ListenerEnabledFlags=31}this._InheritListener.push(e)}}InvokeFromNativeForge(e){switch(e.type){case"end":this.InvokeAnimationEnd?.(1==e.normalEnd);break;case"novisible":this.InvokeViewNoVisible?.();break;case"final":this.InvokeAnimFinal?.(e.progress);break;case"repeat":this.InvokeAnimRepeat?.(e.timesCount)}}},De.AnimFireCommand=se,De.AnimationEnable=ne,De.TranslateAnimation=class extends ie{constructor(e,t,i,n,s,a){super(),te.CreateTranslate(e,t,i,n,s,a,this.AnimNativeId)}},De.RotateAnimation=class extends ie{constructor(e,t,i,n,s,a){super(),te.CreateRotate(e,t,i,n,s,a,this.AnimNativeId)}},De.ScaleAnimation=class extends ie{constructor(e,t,i,n,s,a,r,o,l=200,h=200){super(),te.CreateScale(e,t,i,n,s,a,l,h,r,o,this.AnimNativeId)}},De.TranslateFrameAnimation=class extends ie{constructor(e,t,i,n,s,a){super();let r=Math.floor(100*i/55)/100;te.CreateTranslateFrame(e,t,r,r,n,s,a,this.AnimNativeId)}},De.CssKeyframeAnimation=class extends ie{constructor(e,t,i,n,s){super(),te.CreateCssKeyframe(e,t,i,n,s,this.AnimNativeId)}},De.ShaderAnimation=class extends ie{constructor(e,t){super(),te.CreateShaderAnimation(e,t,this.AnimNativeId)}},De.FreeMoveAnimation=class extends ie{constructor(e,t,i){super(),this._EchoCallback=e,te.CreateFreeMoveAnimation(this.AnimNativeId,e,t,i)}},De.FreeMoveActEvtType=Y,De.FreeMoveCmdPackBuilder=class{static InitActCmdPack(e,t,i,n){return{t:1,cmds:n,tkn:isNaN(i)?0:i,spd:isNaN(e)?0:e,acc:isNaN(t)?0:t}}static InitStateCmdPack(e){return{t:2,cmd:e}}},De.FreeMoveConditionSet=class{static AppendSubCmd(e,t){const i="cmds";e.hasOwnProperty("cmdPacks")?console.error("Error: conflict with command pack list"):(e.hasOwnProperty(i)||(e[i]=[]),e[i]?.push(t))}static SetCmdList(e,t){t instanceof Array&&(e.hasOwnProperty("cmdPacks")?console.error("Error: conflict with command pack list"):e.cmds=t)}static SetCmdPackList(e,t){t instanceof Array&&(e.hasOwnProperty("cmds")?console.error("Error: conflict with sub-command list"):e.cmdPacks=t)}static InitCommonInfo(){return{g:0,m:!1,s:null,brk:!1}}static UpdateCommonInfo(e,t,i,n,s){e.g=t??0,e.m=i??!1,e.s=n??null,e.brk=s}static ReachPosition(e,t,i){let n=z(e,t),s={subt:1,react:1,e:n.e,xv:n.x,yv:n.y};return $(s,i),s}static AcrossPosition(e,t,i){let n=z(e,t),s={subt:1,react:2,e:n.e,xv:n.x,yv:n.y};return $(s,i),s}static BoxPosition(e,t,i,n,s){let a=0,r=0,o=0,l=0,h=0;isNaN(e)||(a=e,h|=1),isNaN(t)||(r=t,h|=2),isNaN(i)||(o=i,h|=4),isNaN(n)||(l=n,h|=8);let c={subt:1,react:7,de:h,lv:a,tv:r,rv:o,bv:l};return $(c,s),c}static StartMove(e,t){return this.OnMovement(t,1,1,e)}static OnMovement(e,t,i,n){let s={subt:1,react:9,xv:t,yv:i,e:n};return $(s,e),s}static OffsetPosition(e,t,i,n,s){let a=0,r=0,o=0,l=0,h=0;isNaN(e)||(a=e,h|=1),isNaN(t)||(r=t,h|=2),isNaN(i)||(o=i,h|=4),isNaN(n)||(l=n,h|=8);let c={subt:1,react:8,de:h,lv:a,tv:r,rv:o,bv:l};return $(c,s),c}static WallPosition(e,t,i,n){let s,a=z(t,i);switch(e){case"left":s=4;break;case"top":s=3;break;case"right":s=5;break;case"bottom":s=6;break;default:return console.error("WallPosition undefined direction",e),null}let r={subt:1,react:s,e:a.e,xv:a.x,yv:a.y};return $(r,n),r}static ReachSpeed(e,t,i){let n=z(e,t),s={subt:2,react:1,e:n.e,xv:n.x,yv:n.y};return $(s,i),s}static AcrossSpeed(e,t,i){let n=z(e,t),s={subt:2,react:2,e:n.e,xv:n.x,yv:n.y};return $(s,i),s}static TouchCount(e,t){let i={subt:5,react:2,tct:t};return $(i,e),i}static OnNexusEvent(e,t,i){let n={subt:3,nexus:e,etyp:t};return $(n,i),n}static OnDragStart(e,t){let i={subt:3,nexus:t,etyp:Y.ActEvent_ActDragStart};return $(i,e),i}static OnDragEnd(e,t){let i={subt:3,nexus:t,etyp:Y.ActEvent_ActDragEnd};return $(i,e),i}static OnTouchDown(e,t){let i={subt:3,nexus:t,etyp:Y.ActEvent_ActTouchDown};return $(i,e),i}static OnTouchRelease(e,t){let i={subt:3,nexus:t,etyp:Y.ActEvent_ActTouchRelease};return $(i,e),i}static OnFlingStart(e,t){let i={subt:3,nexus:t,etyp:Y.ActEvent_ActFlingStart};return $(i,e),i}static OnFlingProgress(e,t){let i={subt:3,nexus:t,etyp:Y.ActEvent_ActFlingProgress};return $(i,e),i}static OnFlingEnd(e,t){let i={subt:3,nexus:t,etyp:Y.ActEvent_ActFlingEnd};return $(i,e),i}static OnFlingCancel(e,t){let i={subt:3,nexus:t,etyp:Y.ActEvent_ActFlingCancel};return $(i,e),i}static OnFlingDrop(e,t){let i={subt:3,nexus:t,etyp:Y.ActEvent_ActFlingDrop};return $(i,e),i}static OnHitBlock(e,t){let i={subt:4,blkGid:e};return $(i,t),i}static OnNextTick(e,t){let i={subt:5,react:1,tgap:e};return t.m=!1,$(i,t),i}static MovementSyncNexus(e,t){let i={subt:3,nexus:t,etyp:Y.ActEvent_MovementSync};return $(i,e),i}},De.FreeMoveActionBuilder=class{static SetSpeed(e,t){let i=z(e,t);return{typ:2,set:{xv:i.x,yv:i.y,xye:i.e}}}static SetAccel(e,t){let i=z(e,t);return{typ:7,set:{xye:i.e,xv:i.x,yv:i.y}}}static AltSpeed(e,t,i){if(!i)return null;let n=z(e,t);return{typ:5,set:{xv:n.x,yv:n.y,xye:n.e,tim:Math.floor(i)}}}static StopMoving(){return{typ:3}}static StopMovingExact(){return{typ:9}}static BrakeToPos(e,t){let i=z(e,t);return{typ:4,set:{xv:Math.floor(i.x),yv:Math.floor(i.y),xye:i.e}}}static SetArrowSpeed(e,t,i,n){let s=z(e,t),a=z(i,n);return{typ:6,set:{xye:s.e,xv:Math.floor(s.x),yv:Math.floor(s.y),xye1:a.e,xv1:a.x,yv1:a.y}}}static TeleportTo(e,t,i){let n=z(e,t);return{typ:8,set:{xye:n.e,xv:Math.floor(n.x),yv:Math.floor(n.y),isAbs:!i}}}static AckMovementSync(e,t,i,n,s,a){return{typ:10,set:{hstart:e,hend:t,vstart:i,vend:n,xye:s,st:a}}}},De.FreeMoveStateBuilder=class{static FireEcho(e){return{typ:52,set:{tkn:e}}}static FireNexusEvent(e,t){return isNaN(t)||0==t?null:{typ:55,set:{etyp:isNaN(e)?0:e,nexus:t}}}static NewCondition(e){return{typ:Z,set:{sub:1,set:e}}}static DelActionAssocCondition(){return{typ:Z,set:{sub:5}}}static RemoveAllCondtions(){return{typ:Z,set:{sub:6}}}static RemoveByGroup(e){return{typ:Z,set:{sub:4,gt:e}}}static RemoveByName(e){return{typ:Z,set:{sub:7,sn:e}}}static ActiveCondition(e,t){return{typ:Z,set:{sub:2,gt:isNaN(e)||e<=0?X.GroupType_Invalid_Ext:e,sn:t}}}static DeactiveCondition(e,t){return{typ:Z,set:{sub:3,gt:isNaN(e)||e<=0?X.GroupType_Invalid_Ext:e,sn:t}}}static SetOffsetPos(e,t){let i=z(e,t);return{typ:53,set:{xv:Math.floor(i.x),yv:Math.floor(i.y),xye:i.e}}}static SetPos(e,t){let i=z(e,t);return{typ:54,set:{xv:Math.floor(i.x),yv:Math.floor(i.y),xye:i.e}}}static TouchLockSwitch(e,t,i=-1){return{typ:59,set:{il:e,dir:t,ut:i}}}static SetTouchAttractChild(e){return{typ:60,set:{cid:e?e.AnimNativeId:0}}}static SetHitWallOverflow(){return{typ:56}}static RevertWithHitBlock(){return{typ:57}}static StartMovementSync(e,t,i,n,s,a){return{typ:61,set:{hstart:t,hend:i,vstart:n,vend:s,xye:a,nexus:e}}}static StopMovementSync(){return{typ:62}}};
2
+
@@ -0,0 +1 @@
1
+ /* eslint-disable */ var e,r=(e=import.meta.url,async function(r={}){function t(){return F.buffer!=L.buffer&&z(),L}function n(){return F.buffer!=L.buffer&&z(),I}function a(){return F.buffer!=L.buffer&&z(),R}function o(){return F.buffer!=L.buffer&&z(),W}function i(){return F.buffer!=L.buffer&&z(),B}function s(){return F.buffer!=L.buffer&&z(),O}function l(){return F.buffer!=L.buffer&&z(),N}function u(){return F.buffer!=L.buffer&&z(),U}var c,d,f=r,m=new Promise(((e,r)=>{c=e,d=r})),h="object"==typeof window,p="undefined"!=typeof WorkerGlobalScope,v="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node&&"renderer"!=process.type,g=p&&self.name?.startsWith("em-pthread");if(v){const{createRequire:wi}=await import("module");let bi=import.meta.url;bi.startsWith("data:")&&(bi="/");var _=wi(bi),y=_("worker_threads");global.Worker=y.Worker,p=!y.isMainThread,g=p&&"em-pthread"==y.workerData}var w,b,E=Object.assign({},f),k="./this.program",C=(e,r)=>{throw r},x="";if(v){var S=_("fs"),T=_("path");import.meta.url.startsWith("data:")||(x=T.dirname(_("url").fileURLToPath(import.meta.url))+"/"),b=e=>(e=ce(e)?new URL(e):e,S.readFileSync(e)),w=async(e,r=!0)=>(e=ce(e)?new URL(e):e,S.readFileSync(e,r?void 0:"utf8")),!f.thisProgram&&process.argv.length>1&&(k=process.argv[1].replace(/\\/g,"/")),process.argv.slice(2),C=(e,r)=>{throw process.exitCode=e,r}}else(h||p)&&(p?x=self.location.href:"undefined"!=typeof document&&document.currentScript&&(x=document.currentScript.src),e&&(x=e),x=x.startsWith("blob:")?"":x.substr(0,x.replace(/[?#].*/,"").lastIndexOf("/")+1),v||(p&&(b=e=>{var r=new XMLHttpRequest;return r.open("GET",e,!1),r.responseType="arraybuffer",r.send(null),new Uint8Array(r.response)}),w=async e=>{if(ce(e))return new Promise(((r,t)=>{var n=new XMLHttpRequest;n.open("GET",e,!0),n.responseType="arraybuffer",n.onload=()=>{200==n.status||0==n.status&&n.response?r(n.response):t(n.status)},n.onerror=t,n.send(null)}));var r=await fetch(e,{credentials:"same-origin"});if(r.ok)return r.arrayBuffer();throw new Error(r.status+" : "+r.url)}));var $=console.log.bind(console),j=console.error.bind(console);v&&($=(...e)=>S.writeSync(1,e.join(" ")+"\n"),j=(...e)=>S.writeSync(2,e.join(" ")+"\n"));var A=f.print||$,P=f.printErr||j;Object.assign(f,E),E=null,f.arguments&&f.arguments,f.thisProgram&&(k=f.thisProgram);var F,M,D,L,I,R,W,B,O,N,U,H=f.wasmBinary,G=!1;function z(){var e=F.buffer;f.HEAP8=L=new Int8Array(e),f.HEAP16=R=new Int16Array(e),f.HEAPU8=I=new Uint8Array(e),f.HEAPU16=W=new Uint16Array(e),f.HEAP32=B=new Int32Array(e),f.HEAPU32=O=new Uint32Array(e),f.HEAPF32=N=new Float32Array(e),f.HEAPF64=U=new Float64Array(e)}if(g){var V;if(v){var q=y.parentPort;q.on("message",(e=>onmessage({data:e}))),Object.assign(globalThis,{self:global,postMessage:e=>q.postMessage(e)})}var X=!1;function Ei(...e){var r=e.join(" ");v?S.writeSync(2,r+"\n"):console.error(r)}function ki(...e){var r=e.join(" ");postMessage({cmd:"alert",text:r,threadId:zo()})}function Ci(e){try{var r=e.data,t=r.cmd;if("load"===t){let e=[];self.onmessage=r=>e.push(r),self.startWorker=r=>{postMessage({cmd:"loaded"});for(let r of e)Ci(r);self.onmessage=Ci};for(const e of r.handlers)f[e]&&!f[e].proxy||(f[e]=(...r)=>{postMessage({cmd:"callHandler",handler:e,args:r})},"print"==e&&(A=f[e]),"printErr"==e&&(P=f[e]));F=r.wasmMemory,z(),V(r.wasmModule)}else if("run"===t){Me(r.pthread_ptr),Yo(r.pthread_ptr,0,0,1,0,0),Pe.receiveObjectTransfer(r),Pe.threadInitTLS(),zt(r.pthread_ptr),X||(Xo(),X=!0);try{Ie(r.start_routine,r.arg)}catch(e){if("unwind"!=e)throw e}}else"setimmediate"===r.target||("checkMailbox"===t?X&&Vt():t&&(P(`worker: received unknown command ${t}`),P(r)))}catch(e){throw Qo(),e}}f.printErr||(P=Ei),self.alert=ki,self.onunhandledrejection=e=>{throw e.reason||e},self.onmessage=Ci}if(!g){if(f.wasmMemory)F=f.wasmMemory;else{var K=f.INITIAL_MEMORY||16777216;F=new WebAssembly.Memory({initial:K/65536,maximum:32768,shared:!0})}z()}var Y=[],Q=[],Z=[];function J(){if(g)return startWorker(f);f.noFSInit||lr.initialized||lr.init(),lr.ignorePermissions=!1,Fe(Q)}function ee(e){Y.unshift(e)}var re=0,te=null;function ne(e){re++,f.monitorRunDependencies?.(re)}function ae(e){if(re--,f.monitorRunDependencies?.(re),0==re&&te){var r=te;te=null,r()}}function oe(e){f.onAbort?.(e),P(e="Aborted("+e+")"),G=!0,e+=". Build with -sASSERTIONS for more info.";var r=new WebAssembly.RuntimeError(e);throw d(r),r}var ie,se,le,ue=e=>e.startsWith("data:application/octet-stream;base64,"),ce=e=>e.startsWith("file://");function de(){if(f.locateFile){var e="jsview-dom-browser-forge.1436.54c9.wasm";return ue(e)?e:(r=e,f.locateFile?f.locateFile(r,x):x+r)}var r;return new URL("jsview-dom-browser-forge.1436.54c9.wasm",import.meta.url).href}async function fe(e){if(!H)try{var r=await w(e);return new Uint8Array(r)}catch{}return function(e){if(e==ie&&H)return new Uint8Array(H);if(b)return b(e);throw"both async and sync fetching of the wasm failed"}(e)}async function me(e,r,t){if(!(e||"function"!=typeof WebAssembly.instantiateStreaming||ue(r)||ce(r)||v||"function"!=typeof fetch))try{var n=fetch(r,{credentials:"same-origin"});return await WebAssembly.instantiateStreaming(n,t)}catch(e){P(`wasm streaming compile failed: ${e}`),P("falling back to ArrayBuffer instantiation")}return async function(e,r){try{var t=await fe(e);return await WebAssembly.instantiate(t,r)}catch(e){P(`failed to asynchronously prepare wasm: ${e}`),oe(e)}}(r,t)}function he(){return{env:Bo={__assert_fail:Ue,__cxa_throw:Ge,__pthread_create_js:Ve,__syscall_fcntl64:cr,__syscall_fstat64:dr,__syscall_ioctl:fr,__syscall_lstat64:mr,__syscall_newfstatat:hr,__syscall_openat:pr,__syscall_stat64:vr,_abort_js:wr,_embind_register_bigint:br,_embind_register_bool:Ar,_embind_register_class:it,_embind_register_class_class_function:mt,_embind_register_emval:wt,_embind_register_float:kt,_embind_register_function:Ct,_embind_register_integer:St,_embind_register_memory_view:Tt,_embind_register_std_string:jt,_embind_register_std_wstring:Rt,_embind_register_void:Wt,_emscripten_fetch_free:Bt,_emscripten_fetch_get_response_headers:Ot,_emscripten_fetch_get_response_headers_length:Nt,_emscripten_init_main_thread_js:Ut,_emscripten_notify_mailbox_postmessage:qt,_emscripten_receive_on_main_thread_js:Kt,_emscripten_thread_cleanup:Yt,_emscripten_thread_mailbox_await:zt,_emscripten_thread_set_strongref:Qt,_emscripten_throw_longjmp:Zt,_emval_as:rn,_emval_call:nn,_emval_call_method:sn,_emval_decref:vt,_emval_get_global:un,_emval_get_method_caller:cn,_emval_get_property:dn,_emval_incref:fn,_emval_instanceof:mn,_emval_is_number:hn,_emval_is_string:pn,_emval_new_array:vn,_emval_new_cstring:gn,_emval_new_object:_n,_emval_run_destructors:yn,_emval_set_property:wn,_emval_take_value:bn,_emval_typeof:En,_mmap_js:kn,_munmap_js:Cn,_tzset_js:xn,clock_time_get:jn,emscripten_asm_const_int:Fn,emscripten_async_call:Wn,emscripten_check_blocking_allowed:On,emscripten_exit_with_live_runtime:Nn,emscripten_get_now:Sn,emscripten_log:qn,emscripten_resize_heap:Kn,emscripten_set_main_loop:Yn,emscripten_start_fetch:na,emscripten_webgl_create_context:ua,emscripten_webgl_make_context_current:ca,environ_get:ma,environ_sizes_get:ha,exit:Ae,fd_close:pa,fd_pread:ga,fd_read:_a,fd_seek:ya,fd_write:ba,glActiveTexture:xa,glAttachShader:Sa,glBindBuffer:Ta,glBindFramebuffer:$a,glBindRenderbuffer:ja,glBindTexture:Aa,glBlendFunc:Pa,glBufferData:Fa,glBufferSubData:Ma,glCheckFramebufferStatus:Da,glClear:La,glClearColor:Ia,glClearStencil:Ra,glColorMask:Wa,glCompileShader:Ba,glCompressedTexImage2D:Oa,glCreateProgram:Na,glCreateShader:Ua,glDeleteBuffers:Ha,glDeleteFramebuffers:Ga,glDeleteProgram:za,glDeleteRenderbuffers:Va,glDeleteShader:qa,glDeleteTextures:Xa,glDisable:Ka,glDrawArrays:Ya,glEnable:Qa,glEnableVertexAttribArray:Za,glFramebufferRenderbuffer:Ja,glFramebufferTexture2D:eo,glGenBuffers:ro,glGenFramebuffers:to,glGenRenderbuffers:no,glGenTextures:ao,glGetAttribLocation:oo,glGetIntegerv:io,glGetProgramiv:so,glGetShaderInfoLog:lo,glGetShaderiv:uo,glGetUniformLocation:fo,glLinkProgram:mo,glPixelStorei:ho,glRenderbufferStorage:po,glScissor:vo,glShaderSource:go,glStencilFunc:_o,glStencilMask:yo,glStencilOp:wo,glTexImage2D:ko,glTexParameteri:Co,glUniform1f:So,glUniform1fv:$o,glUniform1i:jo,glUniform2f:Ao,glUniform3f:Po,glUniform4f:Fo,glUniformMatrix4fv:Mo,glUseProgram:Do,glVertexAttribPointer:Lo,glViewport:Io,invoke_ii:ii,invoke_iii:si,invoke_iiii:li,invoke_iiiii:vi,invoke_iiiiii:fi,invoke_iiiiiii:hi,invoke_iiiiiiiiii:gi,invoke_v:_i,invoke_vi:ui,invoke_vii:di,invoke_viii:ci,invoke_viiii:mi,invoke_viiiii:pi,memory:F},wasi_snapshot_preview1:Bo}}var pe={1994844:()=>{throw new Error(oss.str())}};class ve{name="ExitStatus";constructor(e){this.message=`Program terminated with exit(${e})`,this.status=e}}var ge=e=>{e.terminate(),e.onmessage=e=>{}},_e=e=>{var r=Pe.pthreads[e];Pe.returnWorkerToPool(r)},ye=e=>{var r=Pe.getNewWorker();if(!r)return 6;Pe.runningWorkers.push(r),Pe.pthreads[e.pthread_ptr]=r,r.pthread_ptr=e.pthread_ptr;var t={cmd:"run",start_routine:e.startRoutine,arg:e.arg,pthread_ptr:e.pthread_ptr};return v&&r.unref(),r.postMessage(t,e.transferList),0},we=0,be=()=>Re||we>0,Ee=()=>oi(),ke=e=>ni(e),Ce=(e,r)=>r+2097152>>>0<4194305-!!e?(e>>>0)+4294967296*r:NaN,xe=(e,r,t,...n)=>{for(var a=n.length,o=Ee(),i=ai(8*a),s=i>>3,l=0;l<n.length;l++){var c=n[l];u()[s+l]=c}var d=Zo(e,r,a,i,t);return ke(o),d};function Se(e){if(g)return xe(0,0,1,e);D=e,be()||(Pe.terminateAllThreads(),f.onExit?.(e),G=!0),C(e,new ve(e))}var Te=e=>{if(e instanceof ve||"unwind"==e)return D;C(1,e)};function $e(e){if(g)return xe(1,0,0,e);Ae(e)}var je,Ae=(e,r)=>{if(D=e,g)throw $e(e),"unwind";Se(e)},Pe={unusedWorkers:[],runningWorkers:[],tlsInitFunctions:[],pthreads:{},init(){g||Pe.initMainThread()},initMainThread(){for(var e=8;e--;)Pe.allocateUnusedWorker();ee((()=>{ne(),Pe.loadWasmModuleToAllWorkers((()=>ae()))}))},terminateAllThreads:()=>{for(var e of Pe.runningWorkers)ge(e);for(var e of Pe.unusedWorkers)ge(e);Pe.unusedWorkers=[],Pe.runningWorkers=[],Pe.pthreads={}},returnWorkerToPool:e=>{var r=e.pthread_ptr;delete Pe.pthreads[r],Pe.unusedWorkers.push(e),Pe.runningWorkers.splice(Pe.runningWorkers.indexOf(e),1),e.pthread_ptr=0,Jo(r)},receiveObjectTransfer(e){},threadInitTLS(){Pe.tlsInitFunctions.forEach((e=>e()))},loadWasmModuleToWorker:e=>new Promise((r=>{e.onmessage=t=>{var n=t.data,a=n.cmd;if(n.targetThread&&n.targetThread!=zo()){var o=Pe.pthreads[n.targetThread];o?o.postMessage(n,n.transferList):P(`Internal error! Worker sent a message "${a}" to target pthread ${n.targetThread}, but that thread no longer exists!`)}else"checkMailbox"===a?Vt():"spawnThread"===a?ye(n):"cleanupThread"===a?_e(n.thread):"loaded"===a?(e.loaded=!0,v&&!e.pthread_ptr&&e.unref(),r(e)):"alert"===a?alert(`Thread ${n.threadId}: ${n.text}`):"setimmediate"===n.target?e.postMessage(n):"callHandler"===a?f[n.handler](...n.args):a&&P(`worker sent an unknown command ${a}`)},e.onerror=e=>{throw P(`worker sent an error! ${e.filename}:${e.lineno}: ${e.message}`),e},v&&(e.on("message",(r=>e.onmessage({data:r}))),e.on("error",(r=>e.onerror(r))));var t=[];for(var n of["onExit","onAbort","print","printErr"])f.propertyIsEnumerable(n)&&t.push(n);e.postMessage({cmd:"load",handlers:t,wasmMemory:F,wasmModule:M})})),loadWasmModuleToAllWorkers(e){if(g)return e();Promise.all(Pe.unusedWorkers.map(Pe.loadWasmModuleToWorker)).then(e)},allocateUnusedWorker(){var e;e=new Worker(new URL("jsview-dom-browser-forge.worker.min.js",import.meta.url),{type:"module",workerData:"em-pthread",name:"em-pthread"}),Pe.unusedWorkers.push(e)},getNewWorker:()=>(0==Pe.unusedWorkers.length&&(Pe.allocateUnusedWorker(),Pe.loadWasmModuleToWorker(Pe.unusedWorkers[0])),Pe.unusedWorkers.pop())},Fe=e=>{for(;e.length>0;)e.shift()(f)},Me=e=>{z();var r=s()[e+52>>2],t=s()[e+56>>2];ti(r,r-t),ke(r)},De=[],Le=e=>{var r=De[e];return r||(e>=De.length&&(De.length=e+1),De[e]=r=je.get(e)),r},Ie=(e,r)=>{we=0,Re=0,function(e){be()?D=e:ei(e)}(Le(e)(r))},Re=f.noExitRuntime||!0,We=e=>Pe.tlsInitFunctions.push(e),Be="undefined"!=typeof TextDecoder?new TextDecoder:void 0,Oe=(e,r=0,t=NaN)=>{for(var n=r+t,a=r;e[a]&&!(a>=n);)++a;if(a-r>16&&e.buffer&&Be)return Be.decode(e.buffer instanceof ArrayBuffer?e.subarray(r,a):e.slice(r,a));for(var o="";r<a;){var i=e[r++];if(128&i){var s=63&e[r++];if(192!=(224&i)){var l=63&e[r++];if((i=224==(240&i)?(15&i)<<12|s<<6|l:(7&i)<<18|s<<12|l<<6|63&e[r++])<65536)o+=String.fromCharCode(i);else{var u=i-65536;o+=String.fromCharCode(55296|u>>10,56320|1023&u)}}else o+=String.fromCharCode((31&i)<<6|s)}else o+=String.fromCharCode(i)}return o},Ne=(e,r)=>e?Oe(n(),e,r):"",Ue=(e,r,t,n)=>oe(`Assertion failed: ${Ne(e)}, at: `+[r?Ne(r):"unknown filename",t,n?Ne(n):"unknown function"]);class He{constructor(e){this.excPtr=e,this.ptr=e-24}set_type(e){s()[this.ptr+4>>2]=e}get_type(){return s()[this.ptr+4>>2]}set_destructor(e){s()[this.ptr+8>>2]=e}get_destructor(){return s()[this.ptr+8>>2]}set_caught(e){e=e?1:0,t()[this.ptr+12]=e}get_caught(){return 0!=t()[this.ptr+12]}set_rethrown(e){e=e?1:0,t()[this.ptr+13]=e}get_rethrown(){return 0!=t()[this.ptr+13]}init(e,r){this.set_adjusted_ptr(0),this.set_type(e),this.set_destructor(r)}set_adjusted_ptr(e){s()[this.ptr+16>>2]=e}get_adjusted_ptr(){return s()[this.ptr+16>>2]}}var Ge=(e,r,t)=>{throw new He(e).init(r,t),e};function ze(e,r,t,n){return g?xe(2,0,1,e,r,t,n):Ve(e,r,t,n)}var Ve=(e,r,t,n)=>{if("undefined"==typeof SharedArrayBuffer)return 6;var a=[];if(g&&0===a.length)return ze(e,r,t,n);var o={startRoutine:t,pthread_ptr:e,arg:n,transferList:a};return g?(o.cmd="spawnThread",postMessage(o,a),0):ye(o)},qe=()=>{var e=i()[+ur.varargs>>2];return ur.varargs+=4,e},Xe=qe,Ke={isAbs:e=>"/"===e.charAt(0),splitPath:e=>/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/.exec(e).slice(1),normalizeArray:(e,r)=>{for(var t=0,n=e.length-1;n>=0;n--){var a=e[n];"."===a?e.splice(n,1):".."===a?(e.splice(n,1),t++):t&&(e.splice(n,1),t--)}if(r)for(;t;t--)e.unshift("..");return e},normalize:e=>{var r=Ke.isAbs(e),t="/"===e.substr(-1);return(e=Ke.normalizeArray(e.split("/").filter((e=>!!e)),!r).join("/"))||r||(e="."),e&&t&&(e+="/"),(r?"/":"")+e},dirname:e=>{var r=Ke.splitPath(e),t=r[0],n=r[1];return t||n?(n&&(n=n.substr(0,n.length-1)),t+n):"."},basename:e=>{if("/"===e)return"/";var r=(e=(e=Ke.normalize(e)).replace(/\/$/,"")).lastIndexOf("/");return-1===r?e:e.substr(r+1)},join:(...e)=>Ke.normalize(e.join("/")),join2:(e,r)=>Ke.normalize(e+"/"+r)},Ye=e=>(Ye=(()=>{if("object"==typeof crypto&&"function"==typeof crypto.getRandomValues)return e=>(e.set(crypto.getRandomValues(new Uint8Array(e.byteLength))),e);if(v)try{var e=_("crypto");if(e.randomFillSync)return r=>e.randomFillSync(r);var r=e.randomBytes;return e=>(e.set(r(e.byteLength)),e)}catch(e){}oe("initRandomDevice")})())(e),Qe={resolve:(...e)=>{for(var r="",t=!1,n=e.length-1;n>=-1&&!t;n--){var a=n>=0?e[n]:lr.cwd();if("string"!=typeof a)throw new TypeError("Arguments to path.resolve must be strings");if(!a)return"";r=a+"/"+r,t=Ke.isAbs(a)}return(t?"/":"")+(r=Ke.normalizeArray(r.split("/").filter((e=>!!e)),!t).join("/"))||"."},relative:(e,r)=>{function t(e){for(var r=0;r<e.length&&""===e[r];r++);for(var t=e.length-1;t>=0&&""===e[t];t--);return r>t?[]:e.slice(r,t-r+1)}e=Qe.resolve(e).substr(1),r=Qe.resolve(r).substr(1);for(var n=t(e.split("/")),a=t(r.split("/")),o=Math.min(n.length,a.length),i=o,s=0;s<o;s++)if(n[s]!==a[s]){i=s;break}var l=[];for(s=i;s<n.length;s++)l.push("..");return(l=l.concat(a.slice(i))).join("/")}},Ze=[],Je=e=>{for(var r=0,t=0;t<e.length;++t){var n=e.charCodeAt(t);n<=127?r++:n<=2047?r+=2:n>=55296&&n<=57343?(r+=4,++t):r+=3}return r},er=(e,r,t,n)=>{if(!(n>0))return 0;for(var a=t,o=t+n-1,i=0;i<e.length;++i){var s=e.charCodeAt(i);if(s>=55296&&s<=57343&&(s=65536+((1023&s)<<10)|1023&e.charCodeAt(++i)),s<=127){if(t>=o)break;r[t++]=s}else if(s<=2047){if(t+1>=o)break;r[t++]=192|s>>6,r[t++]=128|63&s}else if(s<=65535){if(t+2>=o)break;r[t++]=224|s>>12,r[t++]=128|s>>6&63,r[t++]=128|63&s}else{if(t+3>=o)break;r[t++]=240|s>>18,r[t++]=128|s>>12&63,r[t++]=128|s>>6&63,r[t++]=128|63&s}}return r[t]=0,t-a};function rr(e,r,t){var n=t>0?t:Je(e)+1,a=new Array(n),o=er(e,a,0,a.length);return r&&(a.length=o),a}var tr={ttys:[],init(){},shutdown(){},register(e,r){tr.ttys[e]={input:[],output:[],ops:r},lr.registerDevice(e,tr.stream_ops)},stream_ops:{open(e){var r=tr.ttys[e.node.rdev];if(!r)throw new lr.ErrnoError(43);e.tty=r,e.seekable=!1},close(e){e.tty.ops.fsync(e.tty)},fsync(e){e.tty.ops.fsync(e.tty)},read(e,r,t,n,a){if(!e.tty||!e.tty.ops.get_char)throw new lr.ErrnoError(60);for(var o=0,i=0;i<n;i++){var s;try{s=e.tty.ops.get_char(e.tty)}catch(e){throw new lr.ErrnoError(29)}if(void 0===s&&0===o)throw new lr.ErrnoError(6);if(null==s)break;o++,r[t+i]=s}return o&&(e.node.atime=Date.now()),o},write(e,r,t,n,a){if(!e.tty||!e.tty.ops.put_char)throw new lr.ErrnoError(60);try{for(var o=0;o<n;o++)e.tty.ops.put_char(e.tty,r[t+o])}catch(e){throw new lr.ErrnoError(29)}return n&&(e.node.mtime=e.node.ctime=Date.now()),o}},default_tty_ops:{get_char:e=>(()=>{if(!Ze.length){var e=null;if(v){var r=Buffer.alloc(256),t=0,n=process.stdin.fd;try{t=S.readSync(n,r,0,256)}catch(e){if(!e.toString().includes("EOF"))throw e;t=0}t>0&&(e=r.slice(0,t).toString("utf-8"))}else"undefined"!=typeof window&&"function"==typeof window.prompt&&null!==(e=window.prompt("Input: "))&&(e+="\n");if(!e)return null;Ze=rr(e,!0)}return Ze.shift()})(),put_char(e,r){null===r||10===r?(A(Oe(e.output)),e.output=[]):0!=r&&e.output.push(r)},fsync(e){e.output&&e.output.length>0&&(A(Oe(e.output)),e.output=[])},ioctl_tcgets:e=>({c_iflag:25856,c_oflag:5,c_cflag:191,c_lflag:35387,c_cc:[3,28,127,21,4,0,1,0,17,19,26,0,18,15,23,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]}),ioctl_tcsets:(e,r,t)=>0,ioctl_tiocgwinsz:e=>[24,80]},default_tty1_ops:{put_char(e,r){null===r||10===r?(P(Oe(e.output)),e.output=[]):0!=r&&e.output.push(r)},fsync(e){e.output&&e.output.length>0&&(P(Oe(e.output)),e.output=[])}}},nr=(e,r)=>Math.ceil(e/r)*r,ar=e=>{e=nr(e,65536);var r=Ko(65536,e);return r&&((e,r)=>{n().fill(0,e,e+r)})(r,e),r},or={ops_table:null,mount:e=>or.createNode(null,"/",16895,0),createNode(e,r,t,n){if(lr.isBlkdev(t)||lr.isFIFO(t))throw new lr.ErrnoError(63);or.ops_table||={dir:{node:{getattr:or.node_ops.getattr,setattr:or.node_ops.setattr,lookup:or.node_ops.lookup,mknod:or.node_ops.mknod,rename:or.node_ops.rename,unlink:or.node_ops.unlink,rmdir:or.node_ops.rmdir,readdir:or.node_ops.readdir,symlink:or.node_ops.symlink},stream:{llseek:or.stream_ops.llseek}},file:{node:{getattr:or.node_ops.getattr,setattr:or.node_ops.setattr},stream:{llseek:or.stream_ops.llseek,read:or.stream_ops.read,write:or.stream_ops.write,allocate:or.stream_ops.allocate,mmap:or.stream_ops.mmap,msync:or.stream_ops.msync}},link:{node:{getattr:or.node_ops.getattr,setattr:or.node_ops.setattr,readlink:or.node_ops.readlink},stream:{}},chrdev:{node:{getattr:or.node_ops.getattr,setattr:or.node_ops.setattr},stream:lr.chrdev_stream_ops}};var a=lr.createNode(e,r,t,n);return lr.isDir(a.mode)?(a.node_ops=or.ops_table.dir.node,a.stream_ops=or.ops_table.dir.stream,a.contents={}):lr.isFile(a.mode)?(a.node_ops=or.ops_table.file.node,a.stream_ops=or.ops_table.file.stream,a.usedBytes=0,a.contents=null):lr.isLink(a.mode)?(a.node_ops=or.ops_table.link.node,a.stream_ops=or.ops_table.link.stream):lr.isChrdev(a.mode)&&(a.node_ops=or.ops_table.chrdev.node,a.stream_ops=or.ops_table.chrdev.stream),a.atime=a.mtime=a.ctime=Date.now(),e&&(e.contents[r]=a,e.atime=e.mtime=e.ctime=a.atime),a},getFileDataAsTypedArray:e=>e.contents?e.contents.subarray?e.contents.subarray(0,e.usedBytes):new Uint8Array(e.contents):new Uint8Array(0),expandFileStorage(e,r){var t=e.contents?e.contents.length:0;if(!(t>=r)){r=Math.max(r,t*(t<1048576?2:1.125)>>>0),0!=t&&(r=Math.max(r,256));var n=e.contents;e.contents=new Uint8Array(r),e.usedBytes>0&&e.contents.set(n.subarray(0,e.usedBytes),0)}},resizeFileStorage(e,r){if(e.usedBytes!=r)if(0==r)e.contents=null,e.usedBytes=0;else{var t=e.contents;e.contents=new Uint8Array(r),t&&e.contents.set(t.subarray(0,Math.min(r,e.usedBytes))),e.usedBytes=r}},node_ops:{getattr(e){var r={};return r.dev=lr.isChrdev(e.mode)?e.id:1,r.ino=e.id,r.mode=e.mode,r.nlink=1,r.uid=0,r.gid=0,r.rdev=e.rdev,lr.isDir(e.mode)?r.size=4096:lr.isFile(e.mode)?r.size=e.usedBytes:lr.isLink(e.mode)?r.size=e.link.length:r.size=0,r.atime=new Date(e.atime),r.mtime=new Date(e.mtime),r.ctime=new Date(e.ctime),r.blksize=4096,r.blocks=Math.ceil(r.size/r.blksize),r},setattr(e,r){for(const t of["mode","atime","mtime","ctime"])r[t]&&(e[t]=r[t]);void 0!==r.size&&or.resizeFileStorage(e,r.size)},lookup(e,r){throw or.doesNotExistError},mknod:(e,r,t,n)=>or.createNode(e,r,t,n),rename(e,r,t){var n;try{n=lr.lookupNode(r,t)}catch(e){}if(n){if(lr.isDir(e.mode))for(var a in n.contents)throw new lr.ErrnoError(55);lr.hashRemoveNode(n)}delete e.parent.contents[e.name],r.contents[t]=e,e.name=t,r.ctime=r.mtime=e.parent.ctime=e.parent.mtime=Date.now()},unlink(e,r){delete e.contents[r],e.ctime=e.mtime=Date.now()},rmdir(e,r){var t=lr.lookupNode(e,r);for(var n in t.contents)throw new lr.ErrnoError(55);delete e.contents[r],e.ctime=e.mtime=Date.now()},readdir:e=>[".","..",...Object.keys(e.contents)],symlink(e,r,t){var n=or.createNode(e,r,41471,0);return n.link=t,n},readlink(e){if(!lr.isLink(e.mode))throw new lr.ErrnoError(28);return e.link}},stream_ops:{read(e,r,t,n,a){var o=e.node.contents;if(a>=e.node.usedBytes)return 0;var i=Math.min(e.node.usedBytes-a,n);if(i>8&&o.subarray)r.set(o.subarray(a,a+i),t);else for(var s=0;s<i;s++)r[t+s]=o[a+s];return i},write(e,r,n,a,o,i){if(r.buffer===t().buffer&&(i=!1),!a)return 0;var s=e.node;if(s.mtime=s.ctime=Date.now(),r.subarray&&(!s.contents||s.contents.subarray)){if(i)return s.contents=r.subarray(n,n+a),s.usedBytes=a,a;if(0===s.usedBytes&&0===o)return s.contents=r.slice(n,n+a),s.usedBytes=a,a;if(o+a<=s.usedBytes)return s.contents.set(r.subarray(n,n+a),o),a}if(or.expandFileStorage(s,o+a),s.contents.subarray&&r.subarray)s.contents.set(r.subarray(n,n+a),o);else for(var l=0;l<a;l++)s.contents[o+l]=r[n+l];return s.usedBytes=Math.max(s.usedBytes,o+a),a},llseek(e,r,t){var n=r;if(1===t?n+=e.position:2===t&&lr.isFile(e.node.mode)&&(n+=e.node.usedBytes),n<0)throw new lr.ErrnoError(28);return n},allocate(e,r,t){or.expandFileStorage(e.node,r+t),e.node.usedBytes=Math.max(e.node.usedBytes,r+t)},mmap(e,r,n,a,o){if(!lr.isFile(e.node.mode))throw new lr.ErrnoError(43);var i,s,l=e.node.contents;if(2&o||!l||l.buffer!==t().buffer){if(s=!0,!(i=ar(r)))throw new lr.ErrnoError(48);l&&((n>0||n+r<l.length)&&(l=l.subarray?l.subarray(n,n+r):Array.prototype.slice.call(l,n,n+r)),t().set(l,i))}else s=!1,i=l.byteOffset;return{ptr:i,allocated:s}},msync:(e,r,t,n,a)=>(or.stream_ops.write(e,r,0,n,t,!1),0)}},ir=f.preloadPlugins||[],sr=(e,r)=>{var t=0;return e&&(t|=365),r&&(t|=146),t},lr={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:!1,ignorePermissions:!0,ErrnoError:class{name="ErrnoError";constructor(e){this.errno=e}},filesystems:null,syncFSRequests:0,readFiles:{},FSStream:class{shared={};get object(){return this.node}set object(e){this.node=e}get isRead(){return 1!=(2097155&this.flags)}get isWrite(){return!!(2097155&this.flags)}get isAppend(){return 1024&this.flags}get flags(){return this.shared.flags}set flags(e){this.shared.flags=e}get position(){return this.shared.position}set position(e){this.shared.position=e}},FSNode:class{node_ops={};stream_ops={};readMode=365;writeMode=146;mounted=null;constructor(e,r,t,n){e||(e=this),this.parent=e,this.mount=e.mount,this.id=lr.nextInode++,this.name=r,this.mode=t,this.rdev=n,this.atime=this.mtime=this.ctime=Date.now()}get read(){return(this.mode&this.readMode)===this.readMode}set read(e){e?this.mode|=this.readMode:this.mode&=~this.readMode}get write(){return(this.mode&this.writeMode)===this.writeMode}set write(e){e?this.mode|=this.writeMode:this.mode&=~this.writeMode}get isFolder(){return lr.isDir(this.mode)}get isDevice(){return lr.isChrdev(this.mode)}},lookupPath(e,r={}){if(!e)return{path:"",node:null};r.follow_mount??=!0,Ke.isAbs(e)||(e=lr.cwd()+"/"+e);e:for(var t=0;t<40;t++){for(var n=e.split("/").filter((e=>!!e&&"."!==e)),a=lr.root,o="/",i=0;i<n.length;i++){var s=i===n.length-1;if(s&&r.parent)break;if(".."!==n[i]){o=Ke.join2(o,n[i]);try{a=lr.lookupNode(a,n[i])}catch(e){if(44===e?.errno&&s&&r.noent_okay)return{path:o};throw e}if(!lr.isMountpoint(a)||s&&!r.follow_mount||(a=a.mounted.root),lr.isLink(a.mode)&&(!s||r.follow)){if(!a.node_ops.readlink)throw new lr.ErrnoError(52);var l=a.node_ops.readlink(a);Ke.isAbs(l)||(l=Ke.dirname(o)+"/"+l),e=l+"/"+n.slice(i+1).join("/");continue e}}else o=Ke.dirname(o),a=a.parent}return{path:o,node:a}}throw new lr.ErrnoError(32)},getPath(e){for(var r;;){if(lr.isRoot(e)){var t=e.mount.mountpoint;return r?"/"!==t[t.length-1]?`${t}/${r}`:t+r:t}r=r?`${e.name}/${r}`:e.name,e=e.parent}},hashName(e,r){for(var t=0,n=0;n<r.length;n++)t=(t<<5)-t+r.charCodeAt(n)|0;return(e+t>>>0)%lr.nameTable.length},hashAddNode(e){var r=lr.hashName(e.parent.id,e.name);e.name_next=lr.nameTable[r],lr.nameTable[r]=e},hashRemoveNode(e){var r=lr.hashName(e.parent.id,e.name);if(lr.nameTable[r]===e)lr.nameTable[r]=e.name_next;else for(var t=lr.nameTable[r];t;){if(t.name_next===e){t.name_next=e.name_next;break}t=t.name_next}},lookupNode(e,r){var t=lr.mayLookup(e);if(t)throw new lr.ErrnoError(t);for(var n=lr.hashName(e.id,r),a=lr.nameTable[n];a;a=a.name_next){var o=a.name;if(a.parent.id===e.id&&o===r)return a}return lr.lookup(e,r)},createNode(e,r,t,n){var a=new lr.FSNode(e,r,t,n);return lr.hashAddNode(a),a},destroyNode(e){lr.hashRemoveNode(e)},isRoot:e=>e===e.parent,isMountpoint:e=>!!e.mounted,isFile:e=>32768==(61440&e),isDir:e=>16384==(61440&e),isLink:e=>40960==(61440&e),isChrdev:e=>8192==(61440&e),isBlkdev:e=>24576==(61440&e),isFIFO:e=>4096==(61440&e),isSocket:e=>!(49152&~e),flagsToPermissionString(e){var r=["r","w","rw"][3&e];return 512&e&&(r+="w"),r},nodePermissions:(e,r)=>lr.ignorePermissions||(!r.includes("r")||292&e.mode)&&(!r.includes("w")||146&e.mode)&&(!r.includes("x")||73&e.mode)?0:2,mayLookup(e){if(!lr.isDir(e.mode))return 54;var r=lr.nodePermissions(e,"x");return r||(e.node_ops.lookup?0:2)},mayCreate(e,r){if(!lr.isDir(e.mode))return 54;try{return lr.lookupNode(e,r),20}catch(e){}return lr.nodePermissions(e,"wx")},mayDelete(e,r,t){var n;try{n=lr.lookupNode(e,r)}catch(e){return e.errno}var a=lr.nodePermissions(e,"wx");if(a)return a;if(t){if(!lr.isDir(n.mode))return 54;if(lr.isRoot(n)||lr.getPath(n)===lr.cwd())return 10}else if(lr.isDir(n.mode))return 31;return 0},mayOpen:(e,r)=>e?lr.isLink(e.mode)?32:lr.isDir(e.mode)&&("r"!==lr.flagsToPermissionString(r)||512&r)?31:lr.nodePermissions(e,lr.flagsToPermissionString(r)):44,MAX_OPEN_FDS:4096,nextfd(){for(var e=0;e<=lr.MAX_OPEN_FDS;e++)if(!lr.streams[e])return e;throw new lr.ErrnoError(33)},getStreamChecked(e){var r=lr.getStream(e);if(!r)throw new lr.ErrnoError(8);return r},getStream:e=>lr.streams[e],createStream:(e,r=-1)=>(e=Object.assign(new lr.FSStream,e),-1==r&&(r=lr.nextfd()),e.fd=r,lr.streams[r]=e,e),closeStream(e){lr.streams[e]=null},dupStream(e,r=-1){var t=lr.createStream(e,r);return t.stream_ops?.dup?.(t),t},chrdev_stream_ops:{open(e){var r=lr.getDevice(e.node.rdev);e.stream_ops=r.stream_ops,e.stream_ops.open?.(e)},llseek(){throw new lr.ErrnoError(70)}},major:e=>e>>8,minor:e=>255&e,makedev:(e,r)=>e<<8|r,registerDevice(e,r){lr.devices[e]={stream_ops:r}},getDevice:e=>lr.devices[e],getMounts(e){for(var r=[],t=[e];t.length;){var n=t.pop();r.push(n),t.push(...n.mounts)}return r},syncfs(e,r){"function"==typeof e&&(r=e,e=!1),lr.syncFSRequests++,lr.syncFSRequests>1&&P(`warning: ${lr.syncFSRequests} FS.syncfs operations in flight at once, probably just doing extra work`);var t=lr.getMounts(lr.root.mount),n=0;function a(e){return lr.syncFSRequests--,r(e)}function o(e){if(e)return o.errored?void 0:(o.errored=!0,a(e));++n>=t.length&&a(null)}t.forEach((r=>{if(!r.type.syncfs)return o(null);r.type.syncfs(r,e,o)}))},mount(e,r,t){var n,a="/"===t,o=!t;if(a&&lr.root)throw new lr.ErrnoError(10);if(!a&&!o){var i=lr.lookupPath(t,{follow_mount:!1});if(t=i.path,n=i.node,lr.isMountpoint(n))throw new lr.ErrnoError(10);if(!lr.isDir(n.mode))throw new lr.ErrnoError(54)}var s={type:e,opts:r,mountpoint:t,mounts:[]},l=e.mount(s);return l.mount=s,s.root=l,a?lr.root=l:n&&(n.mounted=s,n.mount&&n.mount.mounts.push(s)),l},unmount(e){var r=lr.lookupPath(e,{follow_mount:!1});if(!lr.isMountpoint(r.node))throw new lr.ErrnoError(28);var t=r.node,n=t.mounted,a=lr.getMounts(n);Object.keys(lr.nameTable).forEach((e=>{for(var r=lr.nameTable[e];r;){var t=r.name_next;a.includes(r.mount)&&lr.destroyNode(r),r=t}})),t.mounted=null;var o=t.mount.mounts.indexOf(n);t.mount.mounts.splice(o,1)},lookup:(e,r)=>e.node_ops.lookup(e,r),mknod(e,r,t){var n=lr.lookupPath(e,{parent:!0}).node,a=Ke.basename(e);if(!a||"."===a||".."===a)throw new lr.ErrnoError(28);var o=lr.mayCreate(n,a);if(o)throw new lr.ErrnoError(o);if(!n.node_ops.mknod)throw new lr.ErrnoError(63);return n.node_ops.mknod(n,a,r,t)},statfs(e){var r={bsize:4096,frsize:4096,blocks:1e6,bfree:5e5,bavail:5e5,files:lr.nextInode,ffree:lr.nextInode-1,fsid:42,flags:2,namelen:255},t=lr.lookupPath(e,{follow:!0}).node;return t?.node_ops.statfs&&Object.assign(r,t.node_ops.statfs(t.mount.opts.root)),r},create:(e,r=438)=>(r&=4095,r|=32768,lr.mknod(e,r,0)),mkdir:(e,r=511)=>(r&=1023,r|=16384,lr.mknod(e,r,0)),mkdirTree(e,r){for(var t=e.split("/"),n="",a=0;a<t.length;++a)if(t[a]){n+="/"+t[a];try{lr.mkdir(n,r)}catch(e){if(20!=e.errno)throw e}}},mkdev:(e,r,t)=>(void 0===t&&(t=r,r=438),r|=8192,lr.mknod(e,r,t)),symlink(e,r){if(!Qe.resolve(e))throw new lr.ErrnoError(44);var t=lr.lookupPath(r,{parent:!0}).node;if(!t)throw new lr.ErrnoError(44);var n=Ke.basename(r),a=lr.mayCreate(t,n);if(a)throw new lr.ErrnoError(a);if(!t.node_ops.symlink)throw new lr.ErrnoError(63);return t.node_ops.symlink(t,n,e)},rename(e,r){var t,n,a=Ke.dirname(e),o=Ke.dirname(r),i=Ke.basename(e),s=Ke.basename(r);if(t=lr.lookupPath(e,{parent:!0}).node,n=lr.lookupPath(r,{parent:!0}).node,!t||!n)throw new lr.ErrnoError(44);if(t.mount!==n.mount)throw new lr.ErrnoError(75);var l,u=lr.lookupNode(t,i),c=Qe.relative(e,o);if("."!==c.charAt(0))throw new lr.ErrnoError(28);if("."!==(c=Qe.relative(r,a)).charAt(0))throw new lr.ErrnoError(55);try{l=lr.lookupNode(n,s)}catch(e){}if(u!==l){var d=lr.isDir(u.mode),f=lr.mayDelete(t,i,d);if(f)throw new lr.ErrnoError(f);if(f=l?lr.mayDelete(n,s,d):lr.mayCreate(n,s))throw new lr.ErrnoError(f);if(!t.node_ops.rename)throw new lr.ErrnoError(63);if(lr.isMountpoint(u)||l&&lr.isMountpoint(l))throw new lr.ErrnoError(10);if(n!==t&&(f=lr.nodePermissions(t,"w")))throw new lr.ErrnoError(f);lr.hashRemoveNode(u);try{t.node_ops.rename(u,n,s),u.parent=n}catch(e){throw e}finally{lr.hashAddNode(u)}}},rmdir(e){var r=lr.lookupPath(e,{parent:!0}).node,t=Ke.basename(e),n=lr.lookupNode(r,t),a=lr.mayDelete(r,t,!0);if(a)throw new lr.ErrnoError(a);if(!r.node_ops.rmdir)throw new lr.ErrnoError(63);if(lr.isMountpoint(n))throw new lr.ErrnoError(10);r.node_ops.rmdir(r,t),lr.destroyNode(n)},readdir(e){var r=lr.lookupPath(e,{follow:!0}).node;if(!r.node_ops.readdir)throw new lr.ErrnoError(54);return r.node_ops.readdir(r)},unlink(e){var r=lr.lookupPath(e,{parent:!0}).node;if(!r)throw new lr.ErrnoError(44);var t=Ke.basename(e),n=lr.lookupNode(r,t),a=lr.mayDelete(r,t,!1);if(a)throw new lr.ErrnoError(a);if(!r.node_ops.unlink)throw new lr.ErrnoError(63);if(lr.isMountpoint(n))throw new lr.ErrnoError(10);r.node_ops.unlink(r,t),lr.destroyNode(n)},readlink(e){var r=lr.lookupPath(e).node;if(!r)throw new lr.ErrnoError(44);if(!r.node_ops.readlink)throw new lr.ErrnoError(28);return r.node_ops.readlink(r)},stat(e,r){var t=lr.lookupPath(e,{follow:!r}).node;if(!t)throw new lr.ErrnoError(44);if(!t.node_ops.getattr)throw new lr.ErrnoError(63);return t.node_ops.getattr(t)},lstat:e=>lr.stat(e,!0),chmod(e,r,t){var n;if(!(n="string"==typeof e?lr.lookupPath(e,{follow:!t}).node:e).node_ops.setattr)throw new lr.ErrnoError(63);n.node_ops.setattr(n,{mode:4095&r|-4096&n.mode,ctime:Date.now()})},lchmod(e,r){lr.chmod(e,r,!0)},fchmod(e,r){var t=lr.getStreamChecked(e);lr.chmod(t.node,r)},chown(e,r,t,n){var a;if(!(a="string"==typeof e?lr.lookupPath(e,{follow:!n}).node:e).node_ops.setattr)throw new lr.ErrnoError(63);a.node_ops.setattr(a,{timestamp:Date.now()})},lchown(e,r,t){lr.chown(e,r,t,!0)},fchown(e,r,t){var n=lr.getStreamChecked(e);lr.chown(n.node,r,t)},truncate(e,r){if(r<0)throw new lr.ErrnoError(28);var t;if(!(t="string"==typeof e?lr.lookupPath(e,{follow:!0}).node:e).node_ops.setattr)throw new lr.ErrnoError(63);if(lr.isDir(t.mode))throw new lr.ErrnoError(31);if(!lr.isFile(t.mode))throw new lr.ErrnoError(28);var n=lr.nodePermissions(t,"w");if(n)throw new lr.ErrnoError(n);t.node_ops.setattr(t,{size:r,timestamp:Date.now()})},ftruncate(e,r){var t=lr.getStreamChecked(e);if(!(2097155&t.flags))throw new lr.ErrnoError(28);lr.truncate(t.node,r)},utime(e,r,t){var n=lr.lookupPath(e,{follow:!0}).node;n.node_ops.setattr(n,{atime:r,mtime:t})},open(e,r,t=438){if(""===e)throw new lr.ErrnoError(44);var n;if(t=64&(r="string"==typeof r?(e=>{var r={r:0,"r+":2,w:577,"w+":578,a:1089,"a+":1090}[e];if(void 0===r)throw new Error(`Unknown file open mode: ${e}`);return r})(r):r)?4095&t|32768:0,"object"==typeof e)n=e;else{var a=lr.lookupPath(e,{follow:!(131072&r),noent_okay:!0});n=a.node,e=a.path}var o=!1;if(64&r)if(n){if(128&r)throw new lr.ErrnoError(20)}else n=lr.mknod(e,t,0),o=!0;if(!n)throw new lr.ErrnoError(44);if(lr.isChrdev(n.mode)&&(r&=-513),65536&r&&!lr.isDir(n.mode))throw new lr.ErrnoError(54);if(!o){var i=lr.mayOpen(n,r);if(i)throw new lr.ErrnoError(i)}512&r&&!o&&lr.truncate(n,0),r&=-131713;var s=lr.createStream({node:n,path:lr.getPath(n),flags:r,seekable:!0,position:0,stream_ops:n.stream_ops,ungotten:[],error:!1});return s.stream_ops.open&&s.stream_ops.open(s),!f.logReadFiles||1&r||e in lr.readFiles||(lr.readFiles[e]=1),s},close(e){if(lr.isClosed(e))throw new lr.ErrnoError(8);e.getdents&&(e.getdents=null);try{e.stream_ops.close&&e.stream_ops.close(e)}catch(e){throw e}finally{lr.closeStream(e.fd)}e.fd=null},isClosed:e=>null===e.fd,llseek(e,r,t){if(lr.isClosed(e))throw new lr.ErrnoError(8);if(!e.seekable||!e.stream_ops.llseek)throw new lr.ErrnoError(70);if(0!=t&&1!=t&&2!=t)throw new lr.ErrnoError(28);return e.position=e.stream_ops.llseek(e,r,t),e.ungotten=[],e.position},read(e,r,t,n,a){if(n<0||a<0)throw new lr.ErrnoError(28);if(lr.isClosed(e))throw new lr.ErrnoError(8);if(1==(2097155&e.flags))throw new lr.ErrnoError(8);if(lr.isDir(e.node.mode))throw new lr.ErrnoError(31);if(!e.stream_ops.read)throw new lr.ErrnoError(28);var o=void 0!==a;if(o){if(!e.seekable)throw new lr.ErrnoError(70)}else a=e.position;var i=e.stream_ops.read(e,r,t,n,a);return o||(e.position+=i),i},write(e,r,t,n,a,o){if(n<0||a<0)throw new lr.ErrnoError(28);if(lr.isClosed(e))throw new lr.ErrnoError(8);if(!(2097155&e.flags))throw new lr.ErrnoError(8);if(lr.isDir(e.node.mode))throw new lr.ErrnoError(31);if(!e.stream_ops.write)throw new lr.ErrnoError(28);e.seekable&&1024&e.flags&&lr.llseek(e,0,2);var i=void 0!==a;if(i){if(!e.seekable)throw new lr.ErrnoError(70)}else a=e.position;var s=e.stream_ops.write(e,r,t,n,a,o);return i||(e.position+=s),s},allocate(e,r,t){if(lr.isClosed(e))throw new lr.ErrnoError(8);if(r<0||t<=0)throw new lr.ErrnoError(28);if(!(2097155&e.flags))throw new lr.ErrnoError(8);if(!lr.isFile(e.node.mode)&&!lr.isDir(e.node.mode))throw new lr.ErrnoError(43);if(!e.stream_ops.allocate)throw new lr.ErrnoError(138);e.stream_ops.allocate(e,r,t)},mmap(e,r,t,n,a){if(2&n&&!(2&a)&&2!=(2097155&e.flags))throw new lr.ErrnoError(2);if(1==(2097155&e.flags))throw new lr.ErrnoError(2);if(!e.stream_ops.mmap)throw new lr.ErrnoError(43);if(!r)throw new lr.ErrnoError(28);return e.stream_ops.mmap(e,r,t,n,a)},msync:(e,r,t,n,a)=>e.stream_ops.msync?e.stream_ops.msync(e,r,t,n,a):0,ioctl(e,r,t){if(!e.stream_ops.ioctl)throw new lr.ErrnoError(59);return e.stream_ops.ioctl(e,r,t)},readFile(e,r={}){if(r.flags=r.flags||0,r.encoding=r.encoding||"binary","utf8"!==r.encoding&&"binary"!==r.encoding)throw new Error(`Invalid encoding type "${r.encoding}"`);var t,n=lr.open(e,r.flags),a=lr.stat(e).size,o=new Uint8Array(a);return lr.read(n,o,0,a,0),"utf8"===r.encoding?t=Oe(o):"binary"===r.encoding&&(t=o),lr.close(n),t},writeFile(e,r,t={}){t.flags=t.flags||577;var n=lr.open(e,t.flags,t.mode);if("string"==typeof r){var a=new Uint8Array(Je(r)+1),o=er(r,a,0,a.length);lr.write(n,a,0,o,void 0,t.canOwn)}else{if(!ArrayBuffer.isView(r))throw new Error("Unsupported data type");lr.write(n,r,0,r.byteLength,void 0,t.canOwn)}lr.close(n)},cwd:()=>lr.currentPath,chdir(e){var r=lr.lookupPath(e,{follow:!0});if(null===r.node)throw new lr.ErrnoError(44);if(!lr.isDir(r.node.mode))throw new lr.ErrnoError(54);var t=lr.nodePermissions(r.node,"x");if(t)throw new lr.ErrnoError(t);lr.currentPath=r.path},createDefaultDirectories(){lr.mkdir("/tmp"),lr.mkdir("/home"),lr.mkdir("/home/web_user")},createDefaultDevices(){lr.mkdir("/dev"),lr.registerDevice(lr.makedev(1,3),{read:()=>0,write:(e,r,t,n,a)=>n,llseek:()=>0}),lr.mkdev("/dev/null",lr.makedev(1,3)),tr.register(lr.makedev(5,0),tr.default_tty_ops),tr.register(lr.makedev(6,0),tr.default_tty1_ops),lr.mkdev("/dev/tty",lr.makedev(5,0)),lr.mkdev("/dev/tty1",lr.makedev(6,0));var e=new Uint8Array(1024),r=0,t=()=>(0===r&&(r=Ye(e).byteLength),e[--r]);lr.createDevice("/dev","random",t),lr.createDevice("/dev","urandom",t),lr.mkdir("/dev/shm"),lr.mkdir("/dev/shm/tmp")},createSpecialDirectories(){lr.mkdir("/proc");var e=lr.mkdir("/proc/self");lr.mkdir("/proc/self/fd"),lr.mount({mount(){var r=lr.createNode(e,"fd",16895,73);return r.stream_ops={llseek:or.stream_ops.llseek},r.node_ops={lookup(e,r){var t=+r,n=lr.getStreamChecked(t),a={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:()=>n.path},id:t+1};return a.parent=a,a},readdir:()=>Array.from(lr.streams.entries()).filter((([e,r])=>r)).map((([e,r])=>e.toString()))},r}},{},"/proc/self/fd")},createStandardStreams(e,r,t){e?lr.createDevice("/dev","stdin",e):lr.symlink("/dev/tty","/dev/stdin"),r?lr.createDevice("/dev","stdout",null,r):lr.symlink("/dev/tty","/dev/stdout"),t?lr.createDevice("/dev","stderr",null,t):lr.symlink("/dev/tty1","/dev/stderr"),lr.open("/dev/stdin",0),lr.open("/dev/stdout",1),lr.open("/dev/stderr",1)},staticInit(){lr.nameTable=new Array(4096),lr.mount(or,{},"/"),lr.createDefaultDirectories(),lr.createDefaultDevices(),lr.createSpecialDirectories(),lr.filesystems={MEMFS:or}},init(e,r,t){lr.initialized=!0,e??=f.stdin,r??=f.stdout,t??=f.stderr,lr.createStandardStreams(e,r,t)},quit(){lr.initialized=!1;for(var e=0;e<lr.streams.length;e++){var r=lr.streams[e];r&&lr.close(r)}},findObject(e,r){var t=lr.analyzePath(e,r);return t.exists?t.object:null},analyzePath(e,r){try{e=(n=lr.lookupPath(e,{follow:!r})).path}catch(e){}var t={isRoot:!1,exists:!1,error:0,name:null,path:null,object:null,parentExists:!1,parentPath:null,parentObject:null};try{var n=lr.lookupPath(e,{parent:!0});t.parentExists=!0,t.parentPath=n.path,t.parentObject=n.node,t.name=Ke.basename(e),n=lr.lookupPath(e,{follow:!r}),t.exists=!0,t.path=n.path,t.object=n.node,t.name=n.node.name,t.isRoot="/"===n.path}catch(e){t.error=e.errno}return t},createPath(e,r,t,n){e="string"==typeof e?e:lr.getPath(e);for(var a=r.split("/").reverse();a.length;){var o=a.pop();if(o){var i=Ke.join2(e,o);try{lr.mkdir(i)}catch(e){}e=i}}return i},createFile(e,r,t,n,a){var o=Ke.join2("string"==typeof e?e:lr.getPath(e),r),i=sr(n,a);return lr.create(o,i)},createDataFile(e,r,t,n,a,o){var i=r;e&&(e="string"==typeof e?e:lr.getPath(e),i=r?Ke.join2(e,r):e);var s=sr(n,a),l=lr.create(i,s);if(t){if("string"==typeof t){for(var u=new Array(t.length),c=0,d=t.length;c<d;++c)u[c]=t.charCodeAt(c);t=u}lr.chmod(l,146|s);var f=lr.open(l,577);lr.write(f,t,0,t.length,0,o),lr.close(f),lr.chmod(l,s)}},createDevice(e,r,t,n){var a=Ke.join2("string"==typeof e?e:lr.getPath(e),r),o=sr(!!t,!!n);lr.createDevice.major??=64;var i=lr.makedev(lr.createDevice.major++,0);return lr.registerDevice(i,{open(e){e.seekable=!1},close(e){n?.buffer?.length&&n(10)},read(e,r,n,a,o){for(var i=0,s=0;s<a;s++){var l;try{l=t()}catch(e){throw new lr.ErrnoError(29)}if(void 0===l&&0===i)throw new lr.ErrnoError(6);if(null==l)break;i++,r[n+s]=l}return i&&(e.node.atime=Date.now()),i},write(e,r,t,a,o){for(var i=0;i<a;i++)try{n(r[t+i])}catch(e){throw new lr.ErrnoError(29)}return a&&(e.node.mtime=e.node.ctime=Date.now()),i}}),lr.mkdev(a,o,i)},forceLoadFile(e){if(e.isDevice||e.isFolder||e.link||e.contents)return!0;if("undefined"!=typeof XMLHttpRequest)throw new Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.");try{e.contents=b(e.url),e.usedBytes=e.contents.length}catch(e){throw new lr.ErrnoError(29)}},createLazyFile(e,r,n,a,o){class i{lengthKnown=!1;chunks=[];get(e){if(!(e>this.length-1||e<0)){var r=e%this.chunkSize,t=e/this.chunkSize|0;return this.getter(t)[r]}}setDataGetter(e){this.getter=e}cacheLength(){var e=new XMLHttpRequest;if(e.open("HEAD",n,!1),e.send(null),!(e.status>=200&&e.status<300||304===e.status))throw new Error("Couldn't load "+n+". Status: "+e.status);var r,t=Number(e.getResponseHeader("Content-length")),a=(r=e.getResponseHeader("Accept-Ranges"))&&"bytes"===r,o=(r=e.getResponseHeader("Content-Encoding"))&&"gzip"===r,i=1048576;a||(i=t);var s=this;s.setDataGetter((e=>{var r=e*i,a=(e+1)*i-1;if(a=Math.min(a,t-1),void 0===s.chunks[e]&&(s.chunks[e]=((e,r)=>{if(e>r)throw new Error("invalid range ("+e+", "+r+") or no bytes requested!");if(r>t-1)throw new Error("only "+t+" bytes available! programmer error!");var a=new XMLHttpRequest;if(a.open("GET",n,!1),t!==i&&a.setRequestHeader("Range","bytes="+e+"-"+r),a.responseType="arraybuffer",a.overrideMimeType&&a.overrideMimeType("text/plain; charset=x-user-defined"),a.send(null),!(a.status>=200&&a.status<300||304===a.status))throw new Error("Couldn't load "+n+". Status: "+a.status);return void 0!==a.response?new Uint8Array(a.response||[]):rr(a.responseText||"",!0)})(r,a)),void 0===s.chunks[e])throw new Error("doXHR failed!");return s.chunks[e]})),!o&&t||(i=t=1,t=this.getter(0).length,i=t,A("LazyFiles on gzip forces download of the whole file when length is accessed")),this._length=t,this._chunkSize=i,this.lengthKnown=!0}get length(){return this.lengthKnown||this.cacheLength(),this._length}get chunkSize(){return this.lengthKnown||this.cacheLength(),this._chunkSize}}if("undefined"!=typeof XMLHttpRequest){if(!p)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var s={isDevice:!1,contents:new i}}else s={isDevice:!1,url:n};var l=lr.createFile(e,r,s,a,o);s.contents?l.contents=s.contents:s.url&&(l.contents=null,l.url=s.url),Object.defineProperties(l,{usedBytes:{get:function(){return this.contents.length}}});var u={};function c(e,r,t,n,a){var o=e.node.contents;if(a>=o.length)return 0;var i=Math.min(o.length-a,n);if(o.slice)for(var s=0;s<i;s++)r[t+s]=o[a+s];else for(s=0;s<i;s++)r[t+s]=o.get(a+s);return i}return Object.keys(l.stream_ops).forEach((e=>{var r=l.stream_ops[e];u[e]=(...e)=>(lr.forceLoadFile(l),r(...e))})),u.read=(e,r,t,n,a)=>(lr.forceLoadFile(l),c(e,r,t,n,a)),u.mmap=(e,r,n,a,o)=>{lr.forceLoadFile(l);var i=ar(r);if(!i)throw new lr.ErrnoError(48);return c(e,t(),i,r,n),{ptr:i,allocated:!0}},l.stream_ops=u,l}},ur={DEFAULT_POLLMASK:5,calculateAt(e,r,t){if(Ke.isAbs(r))return r;var n;if(n=-100===e?lr.cwd():ur.getStreamFromFD(e).path,0==r.length){if(!t)throw new lr.ErrnoError(44);return n}return n+"/"+r},doStat(e,r,t){var n=e(r);i()[t>>2]=n.dev,i()[t+4>>2]=n.mode,s()[t+8>>2]=n.nlink,i()[t+12>>2]=n.uid,i()[t+16>>2]=n.gid,i()[t+20>>2]=n.rdev,le=[n.size>>>0,(se=n.size,+Math.abs(se)>=1?se>0?+Math.floor(se/4294967296)>>>0:~~+Math.ceil((se-+(~~se>>>0))/4294967296)>>>0:0)],i()[t+24>>2]=le[0],i()[t+28>>2]=le[1],i()[t+32>>2]=4096,i()[t+36>>2]=n.blocks;var a=n.atime.getTime(),o=n.mtime.getTime(),l=n.ctime.getTime();return le=[Math.floor(a/1e3)>>>0,(se=Math.floor(a/1e3),+Math.abs(se)>=1?se>0?+Math.floor(se/4294967296)>>>0:~~+Math.ceil((se-+(~~se>>>0))/4294967296)>>>0:0)],i()[t+40>>2]=le[0],i()[t+44>>2]=le[1],s()[t+48>>2]=a%1e3*1e3*1e3,le=[Math.floor(o/1e3)>>>0,(se=Math.floor(o/1e3),+Math.abs(se)>=1?se>0?+Math.floor(se/4294967296)>>>0:~~+Math.ceil((se-+(~~se>>>0))/4294967296)>>>0:0)],i()[t+56>>2]=le[0],i()[t+60>>2]=le[1],s()[t+64>>2]=o%1e3*1e3*1e3,le=[Math.floor(l/1e3)>>>0,(se=Math.floor(l/1e3),+Math.abs(se)>=1?se>0?+Math.floor(se/4294967296)>>>0:~~+Math.ceil((se-+(~~se>>>0))/4294967296)>>>0:0)],i()[t+72>>2]=le[0],i()[t+76>>2]=le[1],s()[t+80>>2]=l%1e3*1e3*1e3,le=[n.ino>>>0,(se=n.ino,+Math.abs(se)>=1?se>0?+Math.floor(se/4294967296)>>>0:~~+Math.ceil((se-+(~~se>>>0))/4294967296)>>>0:0)],i()[t+88>>2]=le[0],i()[t+92>>2]=le[1],0},doMsync(e,r,t,a,o){if(!lr.isFile(r.node.mode))throw new lr.ErrnoError(43);if(2&a)return 0;var i=n().slice(e,e+t);lr.msync(r,i,o,t,a)},getStreamFromFD:e=>lr.getStreamChecked(e),varargs:void 0,getStr:e=>Ne(e)};function cr(e,r,t){if(g)return xe(3,0,1,e,r,t);ur.varargs=t;try{var n=ur.getStreamFromFD(e);switch(r){case 0:if((o=qe())<0)return-28;for(;lr.streams[o];)o++;return lr.dupStream(n,o).fd;case 1:case 2:case 13:case 14:return 0;case 3:return n.flags;case 4:var o=qe();return n.flags|=o,0;case 12:return o=Xe(),a()[o+0>>1]=2,0}return-28}catch(e){if(void 0===lr||"ErrnoError"!==e.name)throw e;return-e.errno}}function dr(e,r){if(g)return xe(4,0,1,e,r);try{var t=ur.getStreamFromFD(e);return ur.doStat(lr.stat,t.path,r)}catch(e){if(void 0===lr||"ErrnoError"!==e.name)throw e;return-e.errno}}function fr(e,r,n){if(g)return xe(5,0,1,e,r,n);ur.varargs=n;try{var o=ur.getStreamFromFD(e);switch(r){case 21509:case 21510:case 21511:case 21512:case 21524:case 21515:return o.tty?0:-59;case 21505:if(!o.tty)return-59;if(o.tty.ops.ioctl_tcgets){var s=o.tty.ops.ioctl_tcgets(o),l=Xe();i()[l>>2]=s.c_iflag||0,i()[l+4>>2]=s.c_oflag||0,i()[l+8>>2]=s.c_cflag||0,i()[l+12>>2]=s.c_lflag||0;for(var u=0;u<32;u++)t()[l+u+17]=s.c_cc[u]||0;return 0}return 0;case 21506:case 21507:case 21508:if(!o.tty)return-59;if(o.tty.ops.ioctl_tcsets){l=Xe();var c=i()[l>>2],d=i()[l+4>>2],f=i()[l+8>>2],m=i()[l+12>>2],h=[];for(u=0;u<32;u++)h.push(t()[l+u+17]);return o.tty.ops.ioctl_tcsets(o.tty,r,{c_iflag:c,c_oflag:d,c_cflag:f,c_lflag:m,c_cc:h})}return 0;case 21519:return o.tty?(l=Xe(),i()[l>>2]=0,0):-59;case 21520:return o.tty?-28:-59;case 21531:return l=Xe(),lr.ioctl(o,r,l);case 21523:if(!o.tty)return-59;if(o.tty.ops.ioctl_tiocgwinsz){var p=o.tty.ops.ioctl_tiocgwinsz(o.tty);l=Xe(),a()[l>>1]=p[0],a()[l+2>>1]=p[1]}return 0;default:return-28}}catch(e){if(void 0===lr||"ErrnoError"!==e.name)throw e;return-e.errno}}function mr(e,r){if(g)return xe(6,0,1,e,r);try{return e=ur.getStr(e),ur.doStat(lr.lstat,e,r)}catch(e){if(void 0===lr||"ErrnoError"!==e.name)throw e;return-e.errno}}function hr(e,r,t,n){if(g)return xe(7,0,1,e,r,t,n);try{r=ur.getStr(r);var a=256&n,o=4096&n;return n&=-6401,r=ur.calculateAt(e,r,o),ur.doStat(a?lr.lstat:lr.stat,r,t)}catch(e){if(void 0===lr||"ErrnoError"!==e.name)throw e;return-e.errno}}function pr(e,r,t,n){if(g)return xe(8,0,1,e,r,t,n);ur.varargs=n;try{r=ur.getStr(r),r=ur.calculateAt(e,r);var a=n?qe():0;return lr.open(r,t,a).fd}catch(e){if(void 0===lr||"ErrnoError"!==e.name)throw e;return-e.errno}}function vr(e,r){if(g)return xe(9,0,1,e,r);try{return e=ur.getStr(e),ur.doStat(lr.stat,e,r)}catch(e){if(void 0===lr||"ErrnoError"!==e.name)throw e;return-e.errno}}var gr,_r,yr,wr=()=>oe(""),br=(e,r,t,n,a)=>{},Er=e=>{for(var r="",t=e;n()[t];)r+=gr[n()[t++]];return r},kr={},Cr={},xr={},Sr=e=>{throw new _r(e)},Tr=e=>{throw new yr(e)},$r=(e,r,t)=>{function n(r){var n=t(r);n.length!==e.length&&Tr("Mismatched type converter count");for(var a=0;a<e.length;++a)jr(e[a],n[a])}e.forEach((e=>xr[e]=r));var a=new Array(r.length),o=[],i=0;r.forEach(((e,r)=>{Cr.hasOwnProperty(e)?a[r]=Cr[e]:(o.push(e),kr.hasOwnProperty(e)||(kr[e]=[]),kr[e].push((()=>{a[r]=Cr[e],++i===o.length&&n(a)})))})),0===o.length&&n(a)};function jr(e,r,t={}){return function(e,r,t={}){var n=r.name;if(e||Sr(`type "${n}" must have a positive integer typeid pointer`),Cr.hasOwnProperty(e)){if(t.ignoreDuplicateRegistrations)return;Sr(`Cannot register type '${n}' twice`)}if(Cr[e]=r,delete xr[e],kr.hasOwnProperty(e)){var a=kr[e];delete kr[e],a.forEach((e=>e()))}}(e,r,t)}var Ar=(e,r,t,a)=>{jr(e,{name:r=Er(r),fromWireType:function(e){return!!e},toWireType:function(e,r){return r?t:a},argPackAdvance:8,readValueFromPointer:function(e){return this.fromWireType(n()[e])},destructorFunction:null})},Pr=e=>{Sr(e.$$.ptrType.registeredClass.name+" instance already deleted")},Fr=!1,Mr=e=>{},Dr=e=>{e.count.value-=1,0===e.count.value&&(e=>{e.smartPtr?e.smartPtrType.rawDestructor(e.smartPtr):e.ptrType.registeredClass.rawDestructor(e.ptr)})(e)},Lr=(e,r,t)=>{if(r===t)return e;if(void 0===t.baseClass)return null;var n=Lr(e,r,t.baseClass);return null===n?null:t.downcast(n)},Ir={},Rr={},Wr=(e,r)=>(r=((e,r)=>{for(void 0===r&&Sr("ptr should not be undefined");e.baseClass;)r=e.upcast(r),e=e.baseClass;return r})(e,r),Rr[r]),Br=(e,r)=>(r.ptrType&&r.ptr||Tr("makeClassHandle requires ptr and ptrType"),!!r.smartPtrType!=!!r.smartPtr&&Tr("Both smartPtrType and smartPtr must be specified"),r.count={value:1},Nr(Object.create(e,{$$:{value:r,writable:!0}})));function Or(e){var r=this.getPointee(e);if(!r)return this.destructor(e),null;var t=Wr(this.registeredClass,r);if(void 0!==t){if(0===t.$$.count.value)return t.$$.ptr=r,t.$$.smartPtr=e,t.clone();var n=t.clone();return this.destructor(e),n}function a(){return this.isSmartPointer?Br(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:r,smartPtrType:this,smartPtr:e}):Br(this.registeredClass.instancePrototype,{ptrType:this,ptr:e})}var o,i=this.registeredClass.getActualType(r),s=Ir[i];if(!s)return a.call(this);o=this.isConst?s.constPointerType:s.pointerType;var l=Lr(r,this.registeredClass,o.registeredClass);return null===l?a.call(this):this.isSmartPointer?Br(o.registeredClass.instancePrototype,{ptrType:o,ptr:l,smartPtrType:this,smartPtr:e}):Br(o.registeredClass.instancePrototype,{ptrType:o,ptr:l})}var Nr=e=>"undefined"==typeof FinalizationRegistry?(Nr=e=>e,e):(Fr=new FinalizationRegistry((e=>{Dr(e.$$)})),Nr=e=>{var r=e.$$;if(r.smartPtr){var t={$$:r};Fr.register(e,t,e)}return e},Mr=e=>Fr.unregister(e),Nr(e)),Ur=[];function Hr(){}var Gr=(e,r)=>Object.defineProperty(r,"name",{value:e}),zr=(e,r,t)=>{if(void 0===e[r].overloadTable){var n=e[r];e[r]=function(...n){return e[r].overloadTable.hasOwnProperty(n.length)||Sr(`Function '${t}' called with an invalid number of arguments (${n.length}) - expects one of (${e[r].overloadTable})!`),e[r].overloadTable[n.length].apply(this,n)},e[r].overloadTable=[],e[r].overloadTable[n.argCount]=n}},Vr=(e,r,t)=>{f.hasOwnProperty(e)?((void 0===t||void 0!==f[e].overloadTable&&void 0!==f[e].overloadTable[t])&&Sr(`Cannot register public name '${e}' twice`),zr(f,e,e),f[e].overloadTable.hasOwnProperty(t)&&Sr(`Cannot register multiple overloads of a function with the same number of arguments (${t})!`),f[e].overloadTable[t]=r):(f[e]=r,f[e].argCount=t)};function qr(e,r,t,n,a,o,i,s){this.name=e,this.constructor=r,this.instancePrototype=t,this.rawDestructor=n,this.baseClass=a,this.getActualType=o,this.upcast=i,this.downcast=s,this.pureVirtualFunctions=[]}var Xr=(e,r,t)=>{for(;r!==t;)r.upcast||Sr(`Expected null or instance of ${t.name}, got an instance of ${r.name}`),e=r.upcast(e),r=r.baseClass;return e};function Kr(e,r){if(null===r)return this.isReference&&Sr(`null is not a valid ${this.name}`),0;r.$$||Sr(`Cannot pass "${bt(r)}" as a ${this.name}`),r.$$.ptr||Sr(`Cannot pass deleted object as a pointer of type ${this.name}`);var t=r.$$.ptrType.registeredClass;return Xr(r.$$.ptr,t,this.registeredClass)}function Yr(e,r){var t;if(null===r)return this.isReference&&Sr(`null is not a valid ${this.name}`),this.isSmartPointer?(t=this.rawConstructor(),null!==e&&e.push(this.rawDestructor,t),t):0;r&&r.$$||Sr(`Cannot pass "${bt(r)}" as a ${this.name}`),r.$$.ptr||Sr(`Cannot pass deleted object as a pointer of type ${this.name}`),!this.isConst&&r.$$.ptrType.isConst&&Sr(`Cannot convert argument of type ${r.$$.smartPtrType?r.$$.smartPtrType.name:r.$$.ptrType.name} to parameter type ${this.name}`);var n=r.$$.ptrType.registeredClass;if(t=Xr(r.$$.ptr,n,this.registeredClass),this.isSmartPointer)switch(void 0===r.$$.smartPtr&&Sr("Passing raw pointer to smart pointer is illegal"),this.sharingPolicy){case 0:r.$$.smartPtrType===this?t=r.$$.smartPtr:Sr(`Cannot convert argument of type ${r.$$.smartPtrType?r.$$.smartPtrType.name:r.$$.ptrType.name} to parameter type ${this.name}`);break;case 1:t=r.$$.smartPtr;break;case 2:if(r.$$.smartPtrType===this)t=r.$$.smartPtr;else{var a=r.clone();t=this.rawShare(t,_t.toHandle((()=>a.delete()))),null!==e&&e.push(this.rawDestructor,t)}break;default:Sr("Unsupporting sharing policy")}return t}function Qr(e,r){if(null===r)return this.isReference&&Sr(`null is not a valid ${this.name}`),0;r.$$||Sr(`Cannot pass "${bt(r)}" as a ${this.name}`),r.$$.ptr||Sr(`Cannot pass deleted object as a pointer of type ${this.name}`),r.$$.ptrType.isConst&&Sr(`Cannot convert argument of type ${r.$$.ptrType.name} to parameter type ${this.name}`);var t=r.$$.ptrType.registeredClass;return Xr(r.$$.ptr,t,this.registeredClass)}function Zr(e){return this.fromWireType(s()[e>>2])}function Jr(e,r,t,n,a,o,i,s,l,u,c){this.name=e,this.registeredClass=r,this.isReference=t,this.isConst=n,this.isSmartPointer=a,this.pointeeType=o,this.sharingPolicy=i,this.rawGetPointee=s,this.rawConstructor=l,this.rawShare=u,this.rawDestructor=c,a||void 0!==r.baseClass?this.toWireType=Yr:n?(this.toWireType=Kr,this.destructorFunction=null):(this.toWireType=Qr,this.destructorFunction=null)}var et,rt=(e,r,t)=>{f.hasOwnProperty(e)||Tr("Replacing nonexistent public symbol"),void 0!==f[e].overloadTable&&void 0!==t?f[e].overloadTable[t]=r:(f[e]=r,f[e].argCount=t)},tt=(e,r,t=[])=>e.includes("j")?((e,r,t)=>(e=e.replace(/p/g,"i"),(0,f["dynCall_"+e])(r,...t)))(e,r,t):Le(r)(...t),nt=(e,r)=>{var t,n,a=(e=Er(e)).includes("j")?(t=e,n=r,(...e)=>tt(t,n,e)):Le(r);return"function"!=typeof a&&Sr(`unknown function pointer with signature ${e}: ${r}`),a},at=e=>{var r=qo(e),t=Er(r);return Go(r),t},ot=(e,r)=>{var t=[],n={};throw r.forEach((function e(r){n[r]||Cr[r]||(xr[r]?xr[r].forEach(e):(t.push(r),n[r]=!0))})),new et(`${e}: `+t.map(at).join([", "]))},it=(e,r,t,n,a,o,i,s,l,u,c,d,f)=>{c=Er(c),o=nt(a,o),s&&=nt(i,s),u&&=nt(l,u),f=nt(d,f);var m=(e=>{var r=(e=e.replace(/[^a-zA-Z0-9_]/g,"$")).charCodeAt(0);return r>=48&&r<=57?`_${e}`:e})(c);Vr(m,(function(){ot(`Cannot construct ${c} due to unbound types`,[n])})),$r([e,r,t],n?[n]:[],(r=>{var t,a;r=r[0],a=n?(t=r.registeredClass).instancePrototype:Hr.prototype;var i=Gr(c,(function(...e){if(Object.getPrototypeOf(this)!==l)throw new _r("Use 'new' to construct "+c);if(void 0===d.constructor_body)throw new _r(c+" has no accessible constructor");var r=d.constructor_body[e.length];if(void 0===r)throw new _r(`Tried to invoke ctor of ${c} with invalid number of parameters (${e.length}) - expected (${Object.keys(d.constructor_body).toString()}) parameters instead!`);return r.apply(this,e)})),l=Object.create(a,{constructor:{value:i}});i.prototype=l;var d=new qr(c,i,l,f,t,o,s,u);d.baseClass&&(d.baseClass.__derivedClasses??=[],d.baseClass.__derivedClasses.push(d));var h=new Jr(c,d,!0,!1,!1),p=new Jr(c+"*",d,!1,!1,!1),v=new Jr(c+" const*",d,!1,!0,!1);return Ir[e]={pointerType:p,constPointerType:v},rt(m,i),[h,p,v]}))},st=e=>{for(;e.length;){var r=e.pop();e.pop()(r)}};function lt(e){for(var r=1;r<e.length;++r)if(null!==e[r]&&void 0===e[r].destructorFunction)return!0;return!1}function ut(e,r){if(!(e instanceof Function))throw new TypeError(`new_ called with constructor type ${typeof e} which is not a function`);var t=Gr(e.name||"unknownFunctionName",(function(){}));t.prototype=e.prototype;var n=new t,a=e.apply(n,r);return a instanceof Object?a:n}function ct(e,r,t,n,a,o){var i=r.length;i<2&&Sr("argTypes array size mismatch! Must at least get return value and 'this' types!");for(var s=null!==r[1]&&null!==t,l=lt(r),u="void"!==r[0].name,c=[e,Sr,n,a,st,r[0],r[1]],d=0;d<i-2;++d)c.push(r[d+2]);if(!l)for(d=s?1:2;d<r.length;++d)null!==r[d].destructorFunction&&c.push(r[d].destructorFunction);let[f,m]=function(e,r,t,n){var a=lt(e),o=e.length-2,i=[],s=["fn"];r&&s.push("thisWired");for(var l=0;l<o;++l)i.push(`arg${l}`),s.push(`arg${l}Wired`);i=i.join(","),s=s.join(",");var u=`return function (${i}) {\n`;a&&(u+="var destructors = [];\n");var c=a?"destructors":"null",d=["humanName","throwBindingError","invoker","fn","runDestructors","retType","classParam"];for(r&&(u+=`var thisWired = classParam['toWireType'](${c}, this);\n`),l=0;l<o;++l)u+=`var arg${l}Wired = argType${l}['toWireType'](${c}, arg${l});\n`,d.push(`argType${l}`);if(u+=(t||n?"var rv = ":"")+`invoker(${s});\n`,a)u+="runDestructors(destructors);\n";else for(l=r?1:2;l<e.length;++l){var f=1===l?"thisWired":"arg"+(l-2)+"Wired";null!==e[l].destructorFunction&&(u+=`${f}_dtor(${f});\n`,d.push(`${f}_dtor`))}return t&&(u+="var ret = retType['fromWireType'](rv);\nreturn ret;\n"),[d,u+="}\n"]}(r,s,u,o);f.push(m);var h=ut(Function,f)(...c);return Gr(e,h)}var dt=(e,r)=>{for(var t=[],n=0;n<e;n++)t.push(s()[r+4*n>>2]);return t},ft=e=>{const r=(e=e.trim()).indexOf("(");return-1!==r?e.substr(0,r):e},mt=(e,r,t,n,a,o,i,s,l)=>{var u=dt(t,n);r=Er(r),r=ft(r),o=nt(a,o),$r([],[e],(e=>{var n=`${(e=e[0]).name}.${r}`;function a(){ot(`Cannot call ${n} due to unbound types`,u)}r.startsWith("@@")&&(r=Symbol[r.substring(2)]);var l=e.registeredClass.constructor;return void 0===l[r]?(a.argCount=t-1,l[r]=a):(zr(l,r,n),l[r].overloadTable[t-1]=a),$r([],u,(a=>{var u=[a[0],null].concat(a.slice(1)),c=ct(n,u,null,o,i,s);if(void 0===l[r].overloadTable?(c.argCount=t-1,l[r]=c):l[r].overloadTable[t-1]=c,e.registeredClass.__derivedClasses)for(const t of e.registeredClass.__derivedClasses)t.constructor.hasOwnProperty(r)||(t.constructor[r]=c);return[]})),[]}))},ht=[],pt=[],vt=e=>{e>9&&0==--pt[e+1]&&(pt[e]=void 0,ht.push(e))},gt=()=>pt.length/2-5-ht.length,_t={toValue:e=>(e||Sr("Cannot use deleted val. handle = "+e),pt[e]),toHandle:e=>{switch(e){case void 0:return 2;case null:return 4;case!0:return 6;case!1:return 8;default:{const r=ht.pop()||pt.length;return pt[r]=e,pt[r+1]=1,r}}}},yt={name:"emscripten::val",fromWireType:e=>{var r=_t.toValue(e);return vt(e),r},toWireType:(e,r)=>_t.toHandle(r),argPackAdvance:8,readValueFromPointer:Zr,destructorFunction:null},wt=e=>jr(e,yt),bt=e=>{if(null===e)return"null";var r=typeof e;return"object"===r||"array"===r||"function"===r?e.toString():""+e},Et=(e,r)=>{switch(r){case 4:return function(e){return this.fromWireType(l()[e>>2])};case 8:return function(e){return this.fromWireType(u()[e>>3])};default:throw new TypeError(`invalid float width (${r}): ${e}`)}},kt=(e,r,t)=>{jr(e,{name:r=Er(r),fromWireType:e=>e,toWireType:(e,r)=>r,argPackAdvance:8,readValueFromPointer:Et(r,t),destructorFunction:null})},Ct=(e,r,t,n,a,o,i,s)=>{var l=dt(r,t);e=Er(e),e=ft(e),a=nt(n,a),Vr(e,(function(){ot(`Cannot call ${e} due to unbound types`,l)}),r-1),$r([],l,(t=>{var n=[t[0],null].concat(t.slice(1));return rt(e,ct(e,n,null,a,o,i),r-1),[]}))},xt=(e,r,l)=>{switch(r){case 1:return l?e=>t()[e]:e=>n()[e];case 2:return l?e=>a()[e>>1]:e=>o()[e>>1];case 4:return l?e=>i()[e>>2]:e=>s()[e>>2];default:throw new TypeError(`invalid integer width (${r}): ${e}`)}},St=(e,r,t,n,a)=>{r=Er(r);var o=e=>e;if(0===n){var i=32-8*t;o=e=>e<<i>>>i}var s=r.includes("unsigned");jr(e,{name:r,fromWireType:o,toWireType:s?function(e,r){return this.name,r>>>0}:function(e,r){return this.name,r},argPackAdvance:8,readValueFromPointer:xt(r,t,0!==n),destructorFunction:null})},Tt=(e,r,n)=>{var a=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][r];function o(e){var r=s()[e>>2],n=s()[e+4>>2];return new a(t().buffer,n,r)}jr(e,{name:n=Er(n),fromWireType:o,argPackAdvance:8,readValueFromPointer:o},{ignoreDuplicateRegistrations:!0})},$t=(e,r,t)=>er(e,n(),r,t),jt=(e,r)=>{jr(e,{name:r=Er(r),fromWireType(e){for(var r,t=s()[e>>2],a=e+4,o=a,i=0;i<=t;++i){var l=a+i;if(i==t||0==n()[l]){var u=Ne(o,l-o);void 0===r?r=u:(r+=String.fromCharCode(0),r+=u),o=l+1}}return Go(e),r},toWireType(e,r){var t;r instanceof ArrayBuffer&&(r=new Uint8Array(r));var a="string"==typeof r;a||r instanceof Uint8Array||r instanceof Uint8ClampedArray||r instanceof Int8Array||Sr("Cannot pass non-string to std::string"),t=a?Je(r):r.length;var o=Ho(4+t+1),i=o+4;if(s()[o>>2]=t,a)$t(r,i,t+1);else if(a)for(var l=0;l<t;++l){var u=r.charCodeAt(l);u>255&&(Go(i),Sr("String has UTF-16 code units that do not fit in 8 bits")),n()[i+l]=u}else for(l=0;l<t;++l)n()[i+l]=r[l];return null!==e&&e.push(Go,o),o},argPackAdvance:8,readValueFromPointer:Zr,destructorFunction(e){Go(e)}})},At="undefined"!=typeof TextDecoder?new TextDecoder("utf-16le"):void 0,Pt=(e,r)=>{for(var t=e,i=t>>1,s=i+r/2;!(i>=s)&&o()[i];)++i;if((t=i<<1)-e>32&&At)return At.decode(n().slice(e,t));for(var l="",u=0;!(u>=r/2);++u){var c=a()[e+2*u>>1];if(0==c)break;l+=String.fromCharCode(c)}return l},Ft=(e,r,t)=>{if(t??=2147483647,t<2)return 0;for(var n=r,o=(t-=2)<2*e.length?t/2:e.length,i=0;i<o;++i){var s=e.charCodeAt(i);a()[r>>1]=s,r+=2}return a()[r>>1]=0,r-n},Mt=e=>2*e.length,Dt=(e,r)=>{for(var t=0,n="";!(t>=r/4);){var a=i()[e+4*t>>2];if(0==a)break;if(++t,a>=65536){var o=a-65536;n+=String.fromCharCode(55296|o>>10,56320|1023&o)}else n+=String.fromCharCode(a)}return n},Lt=(e,r,t)=>{if(t??=2147483647,t<4)return 0;for(var n=r,a=n+t-4,o=0;o<e.length;++o){var s=e.charCodeAt(o);if(s>=55296&&s<=57343&&(s=65536+((1023&s)<<10)|1023&e.charCodeAt(++o)),i()[r>>2]=s,(r+=4)+4>a)break}return i()[r>>2]=0,r-n},It=e=>{for(var r=0,t=0;t<e.length;++t){var n=e.charCodeAt(t);n>=55296&&n<=57343&&++t,r+=4}return r},Rt=(e,r,t)=>{var n,a,i,l;t=Er(t),2===r?(n=Pt,a=Ft,l=Mt,i=e=>o()[e>>1]):4===r&&(n=Dt,a=Lt,l=It,i=e=>s()[e>>2]),jr(e,{name:t,fromWireType:e=>{for(var t,a=s()[e>>2],o=e+4,l=0;l<=a;++l){var u=e+4+l*r;if(l==a||0==i(u)){var c=n(o,u-o);void 0===t?t=c:(t+=String.fromCharCode(0),t+=c),o=u+r}}return Go(e),t},toWireType:(e,n)=>{"string"!=typeof n&&Sr(`Cannot pass non-string to C++ string type ${t}`);var o=l(n),i=Ho(4+o+r);return s()[i>>2]=o/r,a(n,i+4,o+r),null!==e&&e.push(Go,i),i},argPackAdvance:8,readValueFromPointer:Zr,destructorFunction(e){Go(e)}})},Wt=(e,r)=>{jr(e,{isVoid:!0,name:r=Er(r),argPackAdvance:0,fromWireType:()=>{},toWireType:(e,r)=>{}})};function Bt(e){if(Zn.xhrs.has(e)){var r=Zn.xhrs.get(e);Zn.xhrs.free(e),r.readyState>0&&r.readyState<4&&r.abort()}}function Ot(e,r,t){var n=Zn.xhrs.get(e).getAllResponseHeaders(),a=Je(n)+1;return $t(n,r,t),Math.min(a,t)}function Nt(e){return Je(Zn.xhrs.get(e).getAllResponseHeaders())+1}var Ut=e=>{Yo(e,!p,1,!h,65536,!1),Pe.threadInitTLS()},Ht=()=>{if(!be())try{g?ei(D):Ae(D)}catch(e){Te(e)}},Gt=e=>{if(!G)try{e(),Ht()}catch(e){Te(e)}},zt=e=>{if("function"==typeof Atomics.waitAsync){Atomics.waitAsync(i(),e>>2,e).value.then(Vt);var r=e+128;Atomics.store(i(),r>>2,1)}},Vt=()=>{var e=zo();e&&(zt(e),Gt(ri))},qt=(e,r)=>{if(e==r)setTimeout(Vt);else if(g)postMessage({targetThread:e,cmd:"checkMailbox"});else{var t=Pe.pthreads[e];if(!t)return;t.postMessage({cmd:"checkMailbox"})}},Xt=[],Kt=(e,r,t,n,a)=>{Xt.length=n;for(var o=a>>3,i=0;i<n;i++)Xt[i]=u()[o+i];var s=r?pe[r]:No[e];Pe.currentProxiedOperationCallerThread=t;var l=s(...Xt);return Pe.currentProxiedOperationCallerThread=0,l},Yt=e=>{g?postMessage({cmd:"cleanupThread",thread:e}):_e(e)},Qt=e=>{v&&Pe.pthreads[e].ref()},Zt=()=>{throw 1/0},Jt=(e,r)=>{var t=Cr[e];return void 0===t&&Sr(`${r} has unknown type ${at(e)}`),t},en=(e,r,t)=>{var n=[],a=e.toWireType(n,t);return n.length&&(s()[r>>2]=_t.toHandle(n)),a},rn=(e,r,t)=>(e=_t.toValue(e),r=Jt(r,"emval::as"),en(r,t,e)),tn=[],nn=(e,r,t,n)=>(e=tn[e])(null,r=_t.toValue(r),t,n),an={},on=e=>{var r=an[e];return void 0===r?Er(e):r},sn=(e,r,t,n,a)=>(e=tn[e])(r=_t.toValue(r),r[t=on(t)],n,a),ln=()=>"object"==typeof globalThis?globalThis:Function("return this")(),un=e=>0===e?_t.toHandle(ln()):(e=on(e),_t.toHandle(ln()[e])),cn=(e,r,t)=>{var n=((e,r)=>{for(var t=new Array(e),n=0;n<e;++n)t[n]=Jt(s()[r+4*n>>2],"parameter "+n);return t})(e,r),a=n.shift();e--;var o="return function (obj, func, destructorsRef, args) {\n",i=0,l=[];0===t&&l.push("obj");for(var u=["retType"],c=[a],d=0;d<e;++d)l.push("arg"+d),u.push("argType"+d),c.push(n[d]),o+=` var arg${d} = argType${d}.readValueFromPointer(args${i?"+"+i:""});\n`,i+=n[d].argPackAdvance;o+=` var rv = ${1===t?"new func":"func.call"}(${l.join(", ")});\n`,a.isVoid||(u.push("emval_returnValue"),c.push(en),o+=" return emval_returnValue(retType, destructorsRef, rv);\n"),o+="};\n",u.push(o);var f,m,h=ut(Function,u)(...c),p=`methodCaller<(${n.map((e=>e.name)).join(", ")}) => ${a.name}>`;return f=Gr(p,h),m=tn.length,tn.push(f),m},dn=(e,r)=>(e=_t.toValue(e),r=_t.toValue(r),_t.toHandle(e[r])),fn=e=>{e>9&&(pt[e+1]+=1)},mn=(e,r)=>(e=_t.toValue(e))instanceof(r=_t.toValue(r)),hn=e=>"number"==typeof(e=_t.toValue(e)),pn=e=>"string"==typeof(e=_t.toValue(e)),vn=()=>_t.toHandle([]),gn=e=>_t.toHandle(on(e)),_n=()=>_t.toHandle({}),yn=e=>{var r=_t.toValue(e);st(r),vt(e)},wn=(e,r,t)=>{e=_t.toValue(e),r=_t.toValue(r),t=_t.toValue(t),e[r]=t},bn=(e,r)=>{var t=(e=Jt(e,"_emval_take_value")).readValueFromPointer(r);return _t.toHandle(t)},En=e=>(e=_t.toValue(e),_t.toHandle(typeof e));function kn(e,r,t,n,a,o,l,u){if(g)return xe(10,0,1,e,r,t,n,a,o,l,u);var c=Ce(a,o);try{if(isNaN(c))return 61;var d=ur.getStreamFromFD(n),f=lr.mmap(d,e,c,r,t),m=f.ptr;return i()[l>>2]=f.allocated,s()[u>>2]=m,0}catch(e){if(void 0===lr||"ErrnoError"!==e.name)throw e;return-e.errno}}function Cn(e,r,t,n,a,o,i){if(g)return xe(11,0,1,e,r,t,n,a,o,i);var s=Ce(o,i);try{var l=ur.getStreamFromFD(a);2&t&&ur.doMsync(e,l,r,n,s)}catch(e){if(void 0===lr||"ErrnoError"!==e.name)throw e;return-e.errno}}var xn=(e,r,t,n)=>{var a=(new Date).getFullYear(),o=new Date(a,0,1),l=new Date(a,6,1),u=o.getTimezoneOffset(),c=l.getTimezoneOffset(),d=Math.max(u,c);s()[e>>2]=60*d,i()[r>>2]=Number(u!=c);var f=e=>{var r=e>=0?"-":"+",t=Math.abs(e);return`UTC${r}${String(Math.floor(t/60)).padStart(2,"0")}${String(t%60).padStart(2,"0")}`},m=f(u),h=f(c);c<u?($t(m,t,17),$t(h,n,17)):($t(m,n,17),$t(h,t,17))},Sn=()=>performance.timeOrigin+performance.now(),Tn=()=>Date.now(),$n=e=>e>=0&&e<=3;function jn(e,r,t,n){if(!$n(e))return 28;var a;a=0===e?Tn():Sn();var o=Math.round(1e3*a*1e3);return le=[o>>>0,(se=o,+Math.abs(se)>=1?se>0?+Math.floor(se/4294967296)>>>0:~~+Math.ceil((se-+(~~se>>>0))/4294967296)>>>0:0)],i()[n>>2]=le[0],i()[n+4>>2]=le[1],0}var An=[],Pn=(e,r,t)=>{var a=((e,r)=>{var t;for(An.length=0;t=n()[e++];){var a=105!=t;r+=(a&=112!=t)&&r%8?4:0,An.push(112==t?s()[r>>2]:105==t?i()[r>>2]:u()[r>>3]),r+=a?8:4}return An})(r,t);return pe[e](...a)},Fn=(e,r,t)=>Pn(e,r,t),Mn=()=>{we+=1},Dn=()=>{we-=1},Ln=(e,r)=>{if(Rn.timingMode=e,Rn.timingValue=r,!Rn.func)return 1;if(Rn.running||(Mn(),Rn.running=!0),0==e)Rn.scheduler=function(){var e=0|Math.max(0,Rn.tickStartTime+r-Sn());setTimeout(Rn.runner,e)},Rn.method="timeout";else if(1==e)Rn.scheduler=function(){Rn.requestAnimationFrame(Rn.runner)},Rn.method="rAF";else if(2==e){if(void 0===Rn.setImmediate)if("undefined"==typeof setImmediate){var t=[],n="setimmediate";addEventListener("message",(e=>{e.data!==n&&e.data.target!==n||(e.stopPropagation(),t.shift()())}),!0),Rn.setImmediate=e=>{t.push(e),p?(f.setImmediates??=[],f.setImmediates.push(e),postMessage({target:n})):postMessage(n,"*")}}else Rn.setImmediate=setImmediate;Rn.scheduler=function(){Rn.setImmediate(Rn.runner)},Rn.method="immediate"}return 0},In=(e,r,t,n,a)=>{Rn.func=e,Rn.arg=n;var o=Rn.currentlyRunningMainloop;function i(){return!(o<Rn.currentlyRunningMainloop&&(Dn(),Ht(),1))}if(Rn.running=!1,Rn.runner=function(){if(!G)if(Rn.queue.length>0){var r=Rn.queue.shift();if(r.func(r.arg),Rn.remainingBlockers){var t=Rn.remainingBlockers,n=t%1==0?t-1:Math.floor(t);r.counted?Rn.remainingBlockers=n:(n+=.5,Rn.remainingBlockers=(8*t+n)/9)}if(Rn.updateStatus(),!i())return;setTimeout(Rn.runner,0)}else i()&&(Rn.currentFrameNumber=Rn.currentFrameNumber+1|0,1==Rn.timingMode&&Rn.timingValue>1&&Rn.currentFrameNumber%Rn.timingValue!=0?Rn.scheduler():(0==Rn.timingMode&&(Rn.tickStartTime=Sn()),Rn.runIter(e),i()&&Rn.scheduler()))},a||(r&&r>0?Ln(0,1e3/r):Ln(1,1),Rn.scheduler()),t)throw"unwind"},Rn={running:!1,scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],preMainLoop:[],postMainLoop:[],pause(){Rn.scheduler=null,Rn.currentlyRunningMainloop++},resume(){Rn.currentlyRunningMainloop++;var e=Rn.timingMode,r=Rn.timingValue,t=Rn.func;Rn.func=null,In(t,0,!1,Rn.arg,!0),Ln(e,r),Rn.scheduler()},updateStatus(){if(f.setStatus){var e=f.statusMessage||"Please wait...",r=Rn.remainingBlockers??0,t=Rn.expectedBlockers??0;r?r<t?f.setStatus("{message} ({expected - remaining}/{expected})"):f.setStatus(e):f.setStatus("")}},init(){f.preMainLoop&&Rn.preMainLoop.push(f.preMainLoop),f.postMainLoop&&Rn.postMainLoop.push(f.postMainLoop)},runIter(e){if(!G){for(var r of Rn.preMainLoop)if(!1===r())return;for(var t of(Gt(e),Rn.postMainLoop))t()}},nextRAF:0,fakeRequestAnimationFrame(e){var r=Date.now();if(0===Rn.nextRAF)Rn.nextRAF=r+1e3/60;else for(;r+2>=Rn.nextRAF;)Rn.nextRAF+=1e3/60;var t=Math.max(Rn.nextRAF-r,0);setTimeout(e,t)},requestAnimationFrame(e){"function"!=typeof requestAnimationFrame?(0,Rn.fakeRequestAnimationFrame)(e):requestAnimationFrame(e)}},Wn=(e,r,t)=>{var n=()=>Le(e)(r);t>=0||v?((e,r)=>{Mn(),setTimeout((()=>{Dn(),Gt(e)}),r)})(n,t):(e=>{Mn(),Rn.requestAnimationFrame((()=>{Dn(),Gt(e)}))})(n)},Bn=e=>{Bn.shown||={},Bn.shown[e]||(Bn.shown[e]=1,v&&(e="warning: "+e),P(e))},On=()=>{},Nn=()=>{throw Mn(),"unwind"},Un=(e,r)=>(e>>>0)+4294967296*r,Hn=(e,r)=>{if(e<=0)return e;var t=r<=32?Math.abs(1<<r-1):Math.pow(2,r-1);return e>=t&&(r<=32||e>t)&&(e=-2*t+e),e},Gn=(e,r)=>e>=0?e:r<=32?2*Math.abs(1<<r-1)+e:Math.pow(2,r)+e,zn=e=>{for(var r=e;n()[r];)++r;return r-e},Vn=e=>{var r=(new Error).stack.toString(),t=r.lastIndexOf("_emscripten_log"),n=r.lastIndexOf("_emscripten_get_callstack"),a=r.indexOf("\n",Math.max(t,n))+1;r=r.slice(a),8&e&&"undefined"==typeof emscripten_source_map&&(Bn('Source map information is not available, emscripten_log with EM_LOG_C_STACK will be ignored. Build with "--pre-js $EMSCRIPTEN/src/emscripten-source-map.min.js" linker flag to add source map loading to code.'),e^=8,e|=16);var o=r.split("\n");r="";var i=new RegExp("\\s*(.*?)@(.*?):([0-9]+):([0-9]+)"),s=new RegExp("\\s*(.*?)@(.*):(.*)(:(.*))?"),l=new RegExp("\\s*at (.*?) \\((.*):(.*):(.*)\\)");for(var u in o){var c=o[u],d="",f="",m=0,h=0,p=l.exec(c);if(p&&5==p.length)d=p[1],f=p[2],m=p[3],h=p[4];else{if(!((p=i.exec(c)||s.exec(c))&&p.length>=4)){r+=c+"\n";continue}d=p[1],f=p[2],m=p[3],h=0|p[4]}var v=!1;if(8&e){var g=emscripten_source_map.originalPositionFor({line:m,column:h});v=g?.source,v&&(64&e&&(g.source=g.source.substring(g.source.replace(/\\/g,"/").lastIndexOf("/")+1)),r+=` at ${d} (${g.source}:${g.line}:${g.column})\n`)}(16&e||!v)&&(64&e&&(f=f.substring(f.replace(/\\/g,"/").lastIndexOf("/")+1)),r+=(v?` = ${d}`:` at ${d}`)+` (${f}:${m}:${h})\n`)}return r=r.replace(/\s+$/,"")},qn=(e,r,a)=>{var o=((e,r)=>{var a=e,o=r;function s(e){var r;return o=function(e,r){return"double"!==r&&"i64"!==r||7&e&&(e+=4),e}(o,e),"double"===e?(r=u()[o>>3],o+=8):"i64"==e?(r=[i()[o>>2],i()[o+4>>2]],o+=8):(e="i32",r=i()[o>>2],o+=4),r}for(var l,c,d,f,m=[];;){var h=a;if(0===(l=t()[a]))break;if(c=t()[a+1],37==l){var p=!1,v=!1,g=!1,_=!1,y=!1;e:for(;;){switch(c){case 43:p=!0;break;case 45:v=!0;break;case 35:g=!0;break;case 48:if(_)break e;_=!0;break;case 32:y=!0;break;default:break e}a++,c=t()[a+1]}var w=0;if(42==c)w=s("i32"),a++,c=t()[a+1];else for(;c>=48&&c<=57;)w=10*w+(c-48),a++,c=t()[a+1];var b,E=!1,k=-1;if(46==c){if(k=0,E=!0,a++,42==(c=t()[a+1]))k=s("i32"),a++;else for(;;){var C=t()[a+1];if(C<48||C>57)break;k=10*k+(C-48),a++}c=t()[a+1]}switch(k<0&&(k=6,E=!1),String.fromCharCode(c)){case"h":104==t()[a+2]?(a++,b=1):b=2;break;case"l":108==t()[a+2]?(a++,b=8):b=4;break;case"L":case"q":case"j":b=8;break;case"z":case"t":case"I":b=4;break;default:b=null}switch(b&&a++,c=t()[a+1],String.fromCharCode(c)){case"d":case"i":case"u":case"o":case"x":case"X":case"p":var x=100==c||105==c;if(d=s("i"+8*(b=b||4)),8==b&&(d=117==c?(d[0]>>>0)+4294967296*(d[1]>>>0):Un(d[0],d[1])),b<=4){var S=Math.pow(256,b)-1;d=(x?Hn:Gn)(d&S,8*b)}var T=Math.abs(d),$="";if(100==c||105==c)P=Hn(d,8*b).toString(10);else if(117==c)P=Gn(d,8*b).toString(10),d=Math.abs(d);else if(111==c)P=(g?"0":"")+T.toString(8);else if(120==c||88==c){if($=g&&0!=d?"0x":"",d<0){d=-d,P=(T-1).toString(16);for(var j=[],A=0;A<P.length;A++)j.push((15-parseInt(P[A],16)).toString(16));for(P=j.join("");P.length<2*b;)P="f"+P}else P=T.toString(16);88==c&&($=$.toUpperCase(),P=P.toUpperCase())}else 112==c&&(0===T?P="(nil)":($="0x",P=T.toString(16)));if(E)for(;P.length<k;)P="0"+P;for(d>=0&&(p?$="+"+$:y&&($=" "+$)),"-"==P.charAt(0)&&($="-"+$,P=P.substr(1));$.length+P.length<w;)v?P+=" ":_?P="0"+P:$=" "+$;(P=$+P).split("").forEach((e=>m.push(e.charCodeAt(0))));break;case"f":case"F":case"e":case"E":case"g":case"G":var P;if(d=s("double"),isNaN(d))P="nan",_=!1;else if(isFinite(d)){var F=!1,M=Math.min(k,20);if(103==c||71==c){F=!0,k=k||1;var D=parseInt(d.toExponential(M).split("e")[1],10);k>D&&D>=-4?(c=(103==c?"f":"F").charCodeAt(0),k-=D+1):(c=(103==c?"e":"E").charCodeAt(0),k--),M=Math.min(k,20)}101==c||69==c?(P=d.toExponential(M),/[eE][-+]\d$/.test(P)&&(P=P.slice(0,-1)+"0"+P.slice(-1))):102!=c&&70!=c||(P=d.toFixed(M),0===d&&((f=d)<0||0===f&&1/f==-1/0)&&(P="-"+P));var L=P.split("e");if(F&&!g)for(;L[0].length>1&&L[0].includes(".")&&("0"==L[0].slice(-1)||"."==L[0].slice(-1));)L[0]=L[0].slice(0,-1);else for(g&&-1==P.indexOf(".")&&(L[0]+=".");k>M++;)L[0]+="0";P=L[0]+(L.length>1?"e"+L[1]:""),69==c&&(P=P.toUpperCase()),d>=0&&(p?P="+"+P:y&&(P=" "+P))}else P=(d<0?"-":"")+"inf",_=!1;for(;P.length<w;)v?P+=" ":P=!_||"-"!=P[0]&&"+"!=P[0]?(_?"0":" ")+P:P[0]+"0"+P.slice(1);c<97&&(P=P.toUpperCase()),P.split("").forEach((e=>m.push(e.charCodeAt(0))));break;case"s":var I=s("i8*"),R=I?zn(I):6;if(E&&(R=Math.min(R,k)),!v)for(;R<w--;)m.push(32);if(I)for(A=0;A<R;A++)m.push(n()[I++]);else m=m.concat(rr("(null)".substr(0,R),!0));if(v)for(;R<w--;)m.push(32);break;case"c":for(v&&m.push(s("i8"));--w>0;)m.push(32);v||m.push(s("i8"));break;case"n":var W=s("i32*");i()[W>>2]=m.length;break;case"%":m.push(l);break;default:for(A=h;A<a+2;A++)m.push(t()[A])}a+=2}else m.push(l),a+=1}return m})(r,a);((e,r)=>{24&e&&(r=r.replace(/\s+$/,""),r+=(r.length>0?"\n":"")+Vn(e)),1&e?4&e?console.error(r):2&e?console.warn(r):512&e?console.info(r):256&e?console.debug(r):console.log(r):6&e?P(r):A(r)})(e,Oe(o))},Xn=e=>{var r=(e-F.buffer.byteLength+65535)/65536|0;try{return F.grow(r),z(),1}catch(e){}},Kn=e=>{var r=n().length;if((e>>>=0)<=r)return!1;var t=2147483648;if(e>t)return!1;for(var a=1;a<=4;a*=2){var o=r*(1+.2/a);o=Math.min(o,e+100663296);var i=Math.min(t,nr(Math.max(e,o),65536));if(Xn(i))return!0}return!1},Yn=(e,r,t)=>{var n=Le(e);In(n,r,t)};class Qn{allocated=[void 0];freelist=[];get(e){return this.allocated[e]}has(e){return void 0!==this.allocated[e]}allocate(e){var r=this.freelist.pop()||this.allocated.length;return this.allocated[r]=e,r}free(e){this.allocated[e]=void 0,this.freelist.push(e)}}var Zn={openDatabase(e,r,t,n){try{var a=indexedDB.open(e,r)}catch(e){return n(e)}a.onupgradeneeded=e=>{var r=e.target.result;r.objectStoreNames.contains("FILES")&&r.deleteObjectStore("FILES"),r.createObjectStore("FILES")},a.onsuccess=e=>t(e.target.result),a.onerror=n},init(){Zn.xhrs=new Qn,g||(ne(),Zn.openDatabase("emscripten_filesystem",1,(e=>{Zn.dbInstance=e,ae()}),(()=>{Zn.dbInstance=!1,ae()})))}};function Jn(e,r,t,o,i){var l=s()[e+8>>2];if(l){var u=Ne(l),c=e+108,d=Ne(c+0);d||="GET";var f=s()[c+56>>2],m=s()[c+68>>2],h=s()[c+72>>2],p=s()[c+76>>2],v=s()[c+80>>2],g=s()[c+84>>2],_=s()[c+88>>2],y=s()[c+52>>2],w=!!(1&y),b=!!(2&y),E=!!(64&y),k=m?Ne(m):void 0,C=h?Ne(h):void 0,x=new XMLHttpRequest;if(x.withCredentials=!!n()[c+60],x.open(d,u,!E,k,C),E||(x.timeout=f),x.url_=u,x.responseType="arraybuffer",v){var S=Ne(v);x.overrideMimeType(S)}if(p)for(;;){var T=s()[p>>2];if(!T)break;var $=s()[p+4>>2];if(!$)break;p+=8;var j=Ne(T),A=Ne($);x.setRequestHeader(j,A)}var P=Zn.xhrs.allocate(x);s()[e>>2]=P;var F=g&&_?n().slice(g,g+_):null;x.onload=n=>{Zn.xhrs.has(P)&&(M(),x.status>=200&&x.status<300?r?.(e,x,n):t?.(e,x,n))},x.onerror=r=>{Zn.xhrs.has(P)&&(M(),t?.(e,x,r))},x.ontimeout=r=>{Zn.xhrs.has(P)&&t?.(e,x,r)},x.onprogress=r=>{if(Zn.xhrs.has(P)){var t=w&&b&&x.response?x.response.byteLength:0,i=0;t>0&&w&&b&&(i=Ho(t),n().set(new Uint8Array(x.response),i)),s()[e+12>>2]=i,ra(e+16,t),ra(e+24,r.loaded-t),ra(e+32,r.total),a()[e+40>>1]=x.readyState,x.readyState>=3&&0===x.status&&r.loaded>0&&(x.status=200),a()[e+42>>1]=x.status,x.statusText&&$t(x.statusText,e+44,64),o?.(e,x,r),i&&Go(i)}},x.onreadystatechange=r=>{Zn.xhrs.has(P)?(a()[e+40>>1]=x.readyState,x.readyState>=2&&(a()[e+42>>1]=x.status),i?.(e,x,r)):Dn()};try{x.send(F)}catch(r){t?.(e,x,r)}}else t(e,0,"no url specified!");function M(){var r=0,t=0;x.response&&w&&0===s()[e+12>>2]&&(t=x.response.byteLength),t>0&&(r=Ho(t),n().set(new Uint8Array(x.response),r)),s()[e+12>>2]=r,ra(e+16,t),ra(e+24,0);var o=x.response?x.response.byteLength:0;o&&ra(e+32,o),a()[e+40>>1]=x.readyState,a()[e+42>>1]=x.status,x.statusText&&$t(x.statusText,e+44,64)}}var ea,ra=(e,r)=>{s()[e>>2]=r;var t=s()[e>>2];s()[e+4>>2]=(r-t)/4294967296};function ta(e,r,t,n,o){if(e){var i=r+108,l=s()[i+64>>2];l||=s()[r+8>>2];var u=Ne(l);try{var c=e.transaction(["FILES"],"readwrite").objectStore("FILES").put(t,u);c.onsuccess=e=>{a()[r+40>>1]=4,a()[r+42>>1]=200,$t("OK",r+44,64),n(r,0,u)},c.onerror=e=>{a()[r+40>>1]=4,a()[r+42>>1]=413,$t("Payload Too Large",r+44,64),o(r,0,e)}}catch(e){o(r,0,e)}}else o(r,0,"IndexedDB not available!")}function na(e,r,t,o,i){Mn();var l=e+108,u=s()[l+36>>2],c=s()[l+40>>2],d=s()[l+44>>2],f=s()[l+48>>2],m=s()[l+52>>2],h=!!(64&m);function p(e){h?e():Gt(e)}var v=(e,t,n)=>{Dn(),p((()=>{u?Le(u)(e):r?.(e)}))},g=(e,r,t)=>{p((()=>{d?Le(d)(e):o?.(e)}))},_=(e,r,n)=>{Dn(),p((()=>{c?Le(c)(e):t?.(e)}))},y=(e,r,t)=>{p((()=>{f?Le(f)(e):i?.(e)}))},w=(e,t,n)=>{ta(Zn.dbInstance,e,t.response,((e,t,n)=>{Dn(),p((()=>{u?Le(u)(e):r?.(e)}))}),((e,t,n)=>{Dn(),p((()=>{u?Le(u)(e):r?.(e)}))}))},b=Ne(l+0),E=!!(16&m),k=!!(4&m),C=!!(32&m);if("EM_IDB_STORE"===b){var x=s()[l+84>>2],S=s()[l+88>>2];ta(Zn.dbInstance,e,n().slice(x,x+S),v,_)}else if("EM_IDB_DELETE"===b)!function(e,r,t,n){if(e){var o=r+108,i=s()[o+64>>2];i||=s()[r+8>>2];var l=Ne(i);try{var u=e.transaction(["FILES"],"readwrite").objectStore("FILES").delete(l);u.onsuccess=e=>{var n=e.target.result;s()[r+12>>2]=0,ra(r+16,0),ra(r+24,0),ra(r+32,0),a()[r+40>>1]=4,a()[r+42>>1]=200,$t("OK",r+44,64),t(r,0,n)},u.onerror=e=>{a()[r+40>>1]=4,a()[r+42>>1]=404,$t("Not Found",r+44,64),n(r,0,e)}}catch(e){n(r,0,e)}}else n(r,0,"IndexedDB not available!")}(Zn.dbInstance,e,v,_);else if(E){if(C)return 0;Jn(e,k?w:v,_,g,y)}else!function(e,r,t,o){if(e){var i=r+108,l=s()[i+64>>2];l||=s()[r+8>>2];var u=Ne(l);try{var c=e.transaction(["FILES"],"readonly").objectStore("FILES").get(u);c.onsuccess=e=>{if(e.target.result){var i=e.target.result,l=i.byteLength||i.length,u=Ho(l);n().set(new Uint8Array(i),u),s()[r+12>>2]=u,ra(r+16,l),ra(r+24,0),ra(r+32,l),a()[r+40>>1]=4,a()[r+42>>1]=200,$t("OK",r+44,64),t(r,0,i)}else a()[r+40>>1]=4,a()[r+42>>1]=404,$t("Not Found",r+44,64),o(r,0,"no data")},c.onerror=e=>{a()[r+40>>1]=4,a()[r+42>>1]=404,$t("Not Found",r+44,64),o(r,0,e)}}catch(e){o(r,0,e)}}else o(r,0,"IndexedDB not available!")}(Zn.dbInstance,e,v,C?_:k?(e,r,t)=>{Jn(e,w,_,g,y)}:(e,r,t)=>{Jn(e,v,_,g,y)});return e}var aa={counter:1,buffers:[],programs:[],framebuffers:[],renderbuffers:[],textures:[],shaders:[],vaos:[],contexts:{},offscreenCanvases:{},queries:[],stringCache:{},unpackAlignment:4,unpackRowLength:0,recordError:e=>{aa.lastError||(aa.lastError=e)},getNewId:e=>{for(var r=aa.counter++,t=e.length;t<r;t++)e[t]=null;return r},genObject:(e,r,t,n)=>{for(var a=0;a<e;a++){var o=ea[t](),s=o&&aa.getNewId(n);o?(o.name=s,n[s]=o):aa.recordError(1282),i()[r+4*a>>2]=s}},getSource:(e,r,t,n)=>{for(var a="",o=0;o<r;++o){var i=n?s()[n+4*o>>2]:void 0;a+=Ne(s()[t+4*o>>2],i)}return a},createContext:(e,r)=>{if(!e.getContextSafariWebGL2Fixed){function n(r,t){var n=e.getContextSafariWebGL2Fixed(r,t);return"webgl"==r==n instanceof WebGLRenderingContext?n:null}e.getContextSafariWebGL2Fixed=e.getContext,e.getContext=n}var t=e.getContext("webgl",r);return t?aa.registerContext(t,r):0},registerContext:(e,r)=>{var t=Ho(8);s()[t+4>>2]=zo();var n={handle:t,attributes:r,version:r.majorVersion,GLctx:e};return e.canvas&&(e.canvas.GLctxObject=n),aa.contexts[t]=n,(void 0===r.enableExtensionsByDefault||r.enableExtensionsByDefault)&&aa.initExtensions(n),t},makeContextCurrent:e=>(aa.currentContext=aa.contexts[e],f.ctx=ea=aa.currentContext?.GLctx,!(e&&!ea)),getContext:e=>aa.contexts[e],deleteContext:e=>{aa.currentContext===aa.contexts[e]&&(aa.currentContext=null),"object"==typeof oa&&oa.removeAllHandlersOnTarget(aa.contexts[e].GLctx.canvas),aa.contexts[e]&&aa.contexts[e].GLctx.canvas&&(aa.contexts[e].GLctx.canvas.GLctxObject=void 0),Go(aa.contexts[e].handle),aa.contexts[e]=null},initExtensions:e=>{if(e||=aa.currentContext,!e.initExtensionsDone){e.initExtensionsDone=!0;var r,t=e.GLctx;(r=t).multiDrawWebgl=r.getExtension("WEBGL_multi_draw"),(e=>{e.extPolygonOffsetClamp=e.getExtension("EXT_polygon_offset_clamp")})(t),(e=>{e.extClipControl=e.getExtension("EXT_clip_control")})(t),(e=>{e.webglPolygonMode=e.getExtension("WEBGL_polygon_mode")})(t),(e=>{var r=e.getExtension("ANGLE_instanced_arrays");r&&(e.vertexAttribDivisor=(e,t)=>r.vertexAttribDivisorANGLE(e,t),e.drawArraysInstanced=(e,t,n,a)=>r.drawArraysInstancedANGLE(e,t,n,a),e.drawElementsInstanced=(e,t,n,a,o)=>r.drawElementsInstancedANGLE(e,t,n,a,o))})(t),(e=>{var r=e.getExtension("OES_vertex_array_object");r&&(e.createVertexArray=()=>r.createVertexArrayOES(),e.deleteVertexArray=e=>r.deleteVertexArrayOES(e),e.bindVertexArray=e=>r.bindVertexArrayOES(e),e.isVertexArray=e=>r.isVertexArrayOES(e))})(t),(e=>{var r=e.getExtension("WEBGL_draw_buffers");r&&(e.drawBuffers=(e,t)=>r.drawBuffersWEBGL(e,t))})(t),t.disjointTimerQueryExt=t.getExtension("EXT_disjoint_timer_query"),(e=>{var r=["ANGLE_instanced_arrays","EXT_blend_minmax","EXT_disjoint_timer_query","EXT_frag_depth","EXT_shader_texture_lod","EXT_sRGB","OES_element_index_uint","OES_fbo_render_mipmap","OES_standard_derivatives","OES_texture_float","OES_texture_half_float","OES_texture_half_float_linear","OES_vertex_array_object","WEBGL_color_buffer_float","WEBGL_depth_texture","WEBGL_draw_buffers","EXT_clip_control","EXT_color_buffer_half_float","EXT_depth_clamp","EXT_float_blend","EXT_polygon_offset_clamp","EXT_texture_compression_bptc","EXT_texture_compression_rgtc","EXT_texture_filter_anisotropic","KHR_parallel_shader_compile","OES_texture_float_linear","WEBGL_blend_func_extended","WEBGL_compressed_texture_astc","WEBGL_compressed_texture_etc","WEBGL_compressed_texture_etc1","WEBGL_compressed_texture_s3tc","WEBGL_compressed_texture_s3tc_srgb","WEBGL_debug_renderer_info","WEBGL_debug_shaders","WEBGL_lose_context","WEBGL_multi_draw","WEBGL_polygon_mode"];return(e.getSupportedExtensions()||[]).filter((e=>r.includes(e)))})(t).forEach((e=>{e.includes("lose_context")||e.includes("debug")||t.getExtension(e)}))}}},oa={memcpy(e,r,n){t().set(t().subarray(r,r+n),e)},removeAllEventListeners(){for(;oa.eventHandlers.length;)oa._removeHandler(oa.eventHandlers.length-1);oa.deferredCalls=[]},inEventHandler:0,deferredCalls:[],deferCall(e,r,t){function n(e,r){if(e.length!=r.length)return!1;for(var t in e)if(e[t]!=r[t])return!1;return!0}for(var a of oa.deferredCalls)if(a.targetFunction==e&&n(a.argsList,t))return;oa.deferredCalls.push({targetFunction:e,precedence:r,argsList:t}),oa.deferredCalls.sort(((e,r)=>e.precedence<r.precedence))},removeDeferredCalls(e){oa.deferredCalls=oa.deferredCalls.filter((r=>r.targetFunction!=e))},canPerformEventHandlerRequests:()=>navigator.userActivation?navigator.userActivation.isActive:oa.inEventHandler&&oa.currentEventHandler.allowsDeferredCalls,runDeferredCalls(){if(oa.canPerformEventHandlerRequests()){var e=oa.deferredCalls;for(var r of(oa.deferredCalls=[],e))r.targetFunction(...r.argsList)}},eventHandlers:[],removeAllHandlersOnTarget:(e,r)=>{for(var t=0;t<oa.eventHandlers.length;++t)oa.eventHandlers[t].target!=e||r&&r!=oa.eventHandlers[t].eventTypeString||oa._removeHandler(t--)},_removeHandler(e){var r=oa.eventHandlers[e];r.target.removeEventListener(r.eventTypeString,r.eventListenerFunc,r.useCapture),oa.eventHandlers.splice(e,1)},registerOrRemoveHandler(e){if(!e.target)return-4;if(e.callbackfunc)e.eventListenerFunc=function(r){++oa.inEventHandler,oa.currentEventHandler=e,oa.runDeferredCalls(),e.handlerFunc(r),oa.runDeferredCalls(),--oa.inEventHandler},e.target.addEventListener(e.eventTypeString,e.eventListenerFunc,e.useCapture),oa.eventHandlers.push(e);else for(var r=0;r<oa.eventHandlers.length;++r)oa.eventHandlers[r].target==e.target&&oa.eventHandlers[r].eventTypeString==e.eventTypeString&&oa._removeHandler(r--);return 0},getTargetThreadForEventCallback(e){switch(e){case 1:return 0;case 2:return Pe.currentProxiedOperationCallerThread;default:return e}},getNodeNameForTarget:e=>e?e==window?"#window":e==screen?"#screen":e?.nodeName||"":"",fullscreenEnabled:()=>document.fullscreenEnabled||document.webkitFullscreenEnabled},ia=["default","low-power","high-performance"],sa=[0,"undefined"!=typeof document?document:0,"undefined"!=typeof window?window:0],la=e=>{var r;return e=(r=e)>2?Ne(r):r,sa[e]||("undefined"!=typeof document?document.querySelector(e):null)},ua=(e,r)=>{var n=r>>2,a=i()[n+2],o={alpha:!!t()[r+0],depth:!!t()[r+1],stencil:!!t()[r+2],antialias:!!t()[r+3],premultipliedAlpha:!!t()[r+4],preserveDrawingBuffer:!!t()[r+5],powerPreference:ia[a],failIfMajorPerformanceCaveat:!!t()[r+12],majorVersion:i()[n+4],minorVersion:i()[n+5],enableExtensionsByDefault:t()[r+24],explicitSwapControl:t()[r+25],proxyContextToMainThread:i()[n+7],renderViaOffscreenBackBuffer:t()[r+32]},s=la(e);return s?o.explicitSwapControl?0:aa.createContext(s,o):0},ca=e=>aa.makeContextCurrent(e)?0:-5,da={},fa=()=>{if(!fa.strings){var e={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:("object"==typeof navigator&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",_:k||"./this.program"};for(var r in da)void 0===da[r]?delete e[r]:e[r]=da[r];var t=[];for(var r in e)t.push(`${r}=${e[r]}`);fa.strings=t}return fa.strings},ma=function(e,r){if(g)return xe(12,0,1,e,r);var n=0;return fa().forEach(((a,o)=>{var i=r+n;s()[e+4*o>>2]=i,((e,r)=>{for(var n=0;n<e.length;++n)t()[r++]=e.charCodeAt(n);t()[r]=0})(a,i),n+=a.length+1})),0},ha=function(e,r){if(g)return xe(13,0,1,e,r);var t=fa();s()[e>>2]=t.length;var n=0;return t.forEach((e=>n+=e.length+1)),s()[r>>2]=n,0};function pa(e){if(g)return xe(14,0,1,e);try{var r=ur.getStreamFromFD(e);return lr.close(r),0}catch(e){if(void 0===lr||"ErrnoError"!==e.name)throw e;return e.errno}}var va=(e,r,n,a)=>{for(var o=0,i=0;i<n;i++){var l=s()[r>>2],u=s()[r+4>>2];r+=8;var c=lr.read(e,t(),l,u,a);if(c<0)return-1;if(o+=c,c<u)break;void 0!==a&&(a+=c)}return o};function ga(e,r,t,n,a,o){if(g)return xe(15,0,1,e,r,t,n,a,o);var i=Ce(n,a);try{if(isNaN(i))return 61;var l=ur.getStreamFromFD(e),u=va(l,r,t,i);return s()[o>>2]=u,0}catch(e){if(void 0===lr||"ErrnoError"!==e.name)throw e;return e.errno}}function _a(e,r,t,n){if(g)return xe(16,0,1,e,r,t,n);try{var a=ur.getStreamFromFD(e),o=va(a,r,t);return s()[n>>2]=o,0}catch(e){if(void 0===lr||"ErrnoError"!==e.name)throw e;return e.errno}}function ya(e,r,t,n,a){if(g)return xe(17,0,1,e,r,t,n,a);var o=Ce(r,t);try{if(isNaN(o))return 61;var s=ur.getStreamFromFD(e);return lr.llseek(s,o,n),le=[s.position>>>0,(se=s.position,+Math.abs(se)>=1?se>0?+Math.floor(se/4294967296)>>>0:~~+Math.ceil((se-+(~~se>>>0))/4294967296)>>>0:0)],i()[a>>2]=le[0],i()[a+4>>2]=le[1],s.getdents&&0===o&&0===n&&(s.getdents=null),0}catch(e){if(void 0===lr||"ErrnoError"!==e.name)throw e;return e.errno}}var wa=(e,r,n,a)=>{for(var o=0,i=0;i<n;i++){var l=s()[r>>2],u=s()[r+4>>2];r+=8;var c=lr.write(e,t(),l,u,a);if(c<0)return-1;if(o+=c,c<u)break;void 0!==a&&(a+=c)}return o};function ba(e,r,t,n){if(g)return xe(18,0,1,e,r,t,n);try{var a=ur.getStreamFromFD(e),o=wa(a,r,t);return s()[n>>2]=o,0}catch(e){if(void 0===lr||"ErrnoError"!==e.name)throw e;return e.errno}}var Ea,ka,Ca,xa=e=>ea.activeTexture(e),Sa=(e,r)=>{ea.attachShader(aa.programs[e],aa.shaders[r])},Ta=(e,r)=>{ea.bindBuffer(e,aa.buffers[r])},$a=(e,r)=>{ea.bindFramebuffer(e,aa.framebuffers[r])},ja=(e,r)=>{ea.bindRenderbuffer(e,aa.renderbuffers[r])},Aa=(e,r)=>{ea.bindTexture(e,aa.textures[r])},Pa=(e,r)=>ea.blendFunc(e,r),Fa=(e,r,t,a)=>{ea.bufferData(e,t?n().subarray(t,t+r):r,a)},Ma=(e,r,t,a)=>{ea.bufferSubData(e,r,n().subarray(a,a+t))},Da=e=>ea.checkFramebufferStatus(e),La=e=>ea.clear(e),Ia=(e,r,t,n)=>ea.clearColor(e,r,t,n),Ra=e=>ea.clearStencil(e),Wa=(e,r,t,n)=>{ea.colorMask(!!e,!!r,!!t,!!n)},Ba=e=>{ea.compileShader(aa.shaders[e])},Oa=(e,r,t,a,o,i,s,l)=>{ea.compressedTexImage2D(e,r,t,a,o,i,n().subarray(l,l+s))},Na=()=>{var e=aa.getNewId(aa.programs),r=ea.createProgram();return r.name=e,r.maxUniformLength=r.maxAttributeLength=r.maxUniformBlockNameLength=0,r.uniformIdCounter=1,aa.programs[e]=r,e},Ua=e=>{var r=aa.getNewId(aa.shaders);return aa.shaders[r]=ea.createShader(e),r},Ha=(e,r)=>{for(var t=0;t<e;t++){var n=i()[r+4*t>>2],a=aa.buffers[n];a&&(ea.deleteBuffer(a),a.name=0,aa.buffers[n]=null)}},Ga=(e,r)=>{for(var t=0;t<e;++t){var n=i()[r+4*t>>2],a=aa.framebuffers[n];a&&(ea.deleteFramebuffer(a),a.name=0,aa.framebuffers[n]=null)}},za=e=>{if(e){var r=aa.programs[e];r?(ea.deleteProgram(r),r.name=0,aa.programs[e]=null):aa.recordError(1281)}},Va=(e,r)=>{for(var t=0;t<e;t++){var n=i()[r+4*t>>2],a=aa.renderbuffers[n];a&&(ea.deleteRenderbuffer(a),a.name=0,aa.renderbuffers[n]=null)}},qa=e=>{if(e){var r=aa.shaders[e];r?(ea.deleteShader(r),aa.shaders[e]=null):aa.recordError(1281)}},Xa=(e,r)=>{for(var t=0;t<e;t++){var n=i()[r+4*t>>2],a=aa.textures[n];a&&(ea.deleteTexture(a),a.name=0,aa.textures[n]=null)}},Ka=e=>ea.disable(e),Ya=(e,r,t)=>{ea.drawArrays(e,r,t)},Qa=e=>ea.enable(e),Za=e=>{ea.enableVertexAttribArray(e)},Ja=(e,r,t,n)=>{ea.framebufferRenderbuffer(e,r,t,aa.renderbuffers[n])},eo=(e,r,t,n,a)=>{ea.framebufferTexture2D(e,r,t,aa.textures[n],a)},ro=(e,r)=>{aa.genObject(e,r,"createBuffer",aa.buffers)},to=(e,r)=>{aa.genObject(e,r,"createFramebuffer",aa.framebuffers)},no=(e,r)=>{aa.genObject(e,r,"createRenderbuffer",aa.renderbuffers)},ao=(e,r)=>{aa.genObject(e,r,"createTexture",aa.textures)},oo=(e,r)=>ea.getAttribLocation(aa.programs[e],Ne(r)),io=(e,r)=>((e,r,n)=>{if(r){var a=void 0;switch(e){case 36346:a=1;break;case 36344:return void(0!=n&&1!=n&&aa.recordError(1280));case 36345:a=0;break;case 34466:var o=ea.getParameter(34467);a=o?o.length:0}if(void 0===a){var s=ea.getParameter(e);switch(typeof s){case"number":a=s;break;case"boolean":a=s?1:0;break;case"string":return void aa.recordError(1280);case"object":if(null===s)switch(e){case 34964:case 35725:case 34965:case 36006:case 36007:case 32873:case 34229:case 34068:a=0;break;default:return void aa.recordError(1280)}else{if(s instanceof Float32Array||s instanceof Uint32Array||s instanceof Int32Array||s instanceof Array){for(var u=0;u<s.length;++u)switch(n){case 0:i()[r+4*u>>2]=s[u];break;case 2:l()[r+4*u>>2]=s[u];break;case 4:t()[r+u]=s[u]?1:0}return}try{a=0|s.name}catch(r){return aa.recordError(1280),void P(`GL_INVALID_ENUM in glGet${n}v: Unknown object returned from WebGL getParameter(${e})! (error: ${r})`)}}break;default:return aa.recordError(1280),void P(`GL_INVALID_ENUM in glGet${n}v: Native code calling glGet${n}v(${e}) and it returns ${s} of type ${typeof s}!`)}}switch(n){case 1:ra(r,a);break;case 0:i()[r>>2]=a;break;case 2:l()[r>>2]=a;break;case 4:t()[r]=a?1:0}}else aa.recordError(1281)})(e,r,0),so=(e,r,t)=>{if(t)if(e>=aa.counter)aa.recordError(1281);else if(e=aa.programs[e],35716==r){var n=ea.getProgramInfoLog(e);null===n&&(n="(unknown error)"),i()[t>>2]=n.length+1}else if(35719==r){if(!e.maxUniformLength)for(var a=ea.getProgramParameter(e,35718),o=0;o<a;++o)e.maxUniformLength=Math.max(e.maxUniformLength,ea.getActiveUniform(e,o).name.length+1);i()[t>>2]=e.maxUniformLength}else if(35722==r){if(!e.maxAttributeLength){var s=ea.getProgramParameter(e,35721);for(o=0;o<s;++o)e.maxAttributeLength=Math.max(e.maxAttributeLength,ea.getActiveAttrib(e,o).name.length+1)}i()[t>>2]=e.maxAttributeLength}else if(35381==r){if(!e.maxUniformBlockNameLength){var l=ea.getProgramParameter(e,35382);for(o=0;o<l;++o)e.maxUniformBlockNameLength=Math.max(e.maxUniformBlockNameLength,ea.getActiveUniformBlockName(e,o).length+1)}i()[t>>2]=e.maxUniformBlockNameLength}else i()[t>>2]=ea.getProgramParameter(e,r);else aa.recordError(1281)},lo=(e,r,t,n)=>{var a=ea.getShaderInfoLog(aa.shaders[e]);null===a&&(a="(unknown error)");var o=r>0&&n?$t(a,n,r):0;t&&(i()[t>>2]=o)},uo=(e,r,t)=>{if(t)if(35716==r){var n=ea.getShaderInfoLog(aa.shaders[e]);null===n&&(n="(unknown error)");var a=n?n.length+1:0;i()[t>>2]=a}else if(35720==r){var o=ea.getShaderSource(aa.shaders[e]),s=o?o.length+1:0;i()[t>>2]=s}else i()[t>>2]=ea.getShaderParameter(aa.shaders[e],r);else aa.recordError(1281)},co=e=>"]"==e.slice(-1)&&e.lastIndexOf("["),fo=(e,r)=>{if(r=Ne(r),e=aa.programs[e]){(e=>{var r,t,n=e.uniformLocsById,a=e.uniformSizeAndIdsByName;if(!n){e.uniformLocsById=n={},e.uniformArrayNamesById={};var o=ea.getProgramParameter(e,35718);for(r=0;r<o;++r){var i=ea.getActiveUniform(e,r),s=i.name,l=i.size,u=co(s),c=u>0?s.slice(0,u):s,d=e.uniformIdCounter;for(e.uniformIdCounter+=l,a[c]=[l,d],t=0;t<l;++t)n[d]=t,e.uniformArrayNamesById[d++]=c}}})(e);var t=e.uniformLocsById,n=0,a=r,o=co(r);o>0&&(s=r.slice(o+1),n=parseInt(s)>>>0,a=r.slice(0,o));var i=e.uniformSizeAndIdsByName[a];if(i&&n<i[0]&&(t[n+=i[1]]=t[n]||ea.getUniformLocation(e,r)))return n}else aa.recordError(1281);var s;return-1},mo=e=>{e=aa.programs[e],ea.linkProgram(e),e.uniformLocsById=0,e.uniformSizeAndIdsByName={}},ho=(e,r)=>{3317==e?aa.unpackAlignment=r:3314==e&&(aa.unpackRowLength=r),ea.pixelStorei(e,r)},po=(e,r,t,n)=>ea.renderbufferStorage(e,r,t,n),vo=(e,r,t,n)=>ea.scissor(e,r,t,n),go=(e,r,t,n)=>{var a=aa.getSource(e,r,t,n);ea.shaderSource(aa.shaders[e],a)},_o=(e,r,t)=>ea.stencilFunc(e,r,t),yo=e=>ea.stencilMask(e),wo=(e,r,t)=>ea.stencilOp(e,r,t),bo=(e,r)=>e>>>31-Math.clz32(r.BYTES_PER_ELEMENT),Eo=(e,r,t,a,u,c)=>{var d=(e=>1==(e-=5120)?n():4==e?i():6==e?l():5==e||28922==e?s():o())(e),f=(e=>({5:3,6:4,8:2,29502:3,29504:4}[e-6402]||1))(r)*d.BYTES_PER_ELEMENT,m=((e,r,t)=>{var n,a,o=(aa.unpackRowLength||e)*t;return r*(n=o,a=aa.unpackAlignment,n+a-1&-a)})(t,a,f);return d.subarray(bo(u,d),bo(u+m,d))},ko=(e,r,t,n,a,o,i,s,l)=>{var u=l?Eo(s,i,n,a,l):null;ea.texImage2D(e,r,t,n,a,o,i,s,u)},Co=(e,r,t)=>ea.texParameteri(e,r,t),xo=e=>{var r=ea.currentProgram;if(r){var t=r.uniformLocsById[e];return"number"==typeof t&&(r.uniformLocsById[e]=t=ea.getUniformLocation(r,r.uniformArrayNamesById[e]+(t>0?`[${t}]`:""))),t}aa.recordError(1282)},So=(e,r)=>{ea.uniform1f(xo(e),r)},To=[],$o=(e,r,t)=>{if(r<=288)for(var n=To[r],a=0;a<r;++a)n[a]=l()[t+4*a>>2];else n=l().subarray(t>>2,t+4*r>>2);ea.uniform1fv(xo(e),n)},jo=(e,r)=>{ea.uniform1i(xo(e),r)},Ao=(e,r,t)=>{ea.uniform2f(xo(e),r,t)},Po=(e,r,t,n)=>{ea.uniform3f(xo(e),r,t,n)},Fo=(e,r,t,n,a)=>{ea.uniform4f(xo(e),r,t,n,a)},Mo=(e,r,t,n)=>{if(r<=18){var a=To[16*r],o=l();n>>=2,r*=16;for(var i=0;i<r;i+=16){var s=n+i;a[i]=o[s],a[i+1]=o[s+1],a[i+2]=o[s+2],a[i+3]=o[s+3],a[i+4]=o[s+4],a[i+5]=o[s+5],a[i+6]=o[s+6],a[i+7]=o[s+7],a[i+8]=o[s+8],a[i+9]=o[s+9],a[i+10]=o[s+10],a[i+11]=o[s+11],a[i+12]=o[s+12],a[i+13]=o[s+13],a[i+14]=o[s+14],a[i+15]=o[s+15]}}else a=l().subarray(n>>2,n+64*r>>2);ea.uniformMatrix4fv(xo(e),!!t,a)},Do=e=>{e=aa.programs[e],ea.useProgram(e),ea.currentProgram=e},Lo=(e,r,t,n,a,o)=>{ea.vertexAttribPointer(e,r,t,!!n,a,o)},Io=(e,r,t,n)=>ea.viewport(e,r,t,n);Pe.init(),lr.createPreloadedFile=(e,r,t,n,a,o,i,s,l,u)=>{var c=r?Qe.resolve(Ke.join2(e,r)):e;function d(t){function d(t){u?.(),s||((e,r,t,n,a,o)=>{lr.createDataFile(e,r,t,n,a,o)})(e,r,t,n,a,l),o?.(),ae()}((e,r,t,n)=>{"undefined"!=typeof Browser&&Browser.init();var a=!1;return ir.forEach((o=>{a||o.canHandle(r)&&(o.handle(e,r,t,n),a=!0)})),a})(t,c,d,(()=>{i?.(),ae()}))||d(t)}ne(),"string"==typeof t?(async e=>{var r=await w(e);return new Uint8Array(r)})(t).then(d,i):d(t)},lr.staticInit(),or.doesNotExistError=new lr.ErrnoError(44),or.doesNotExistError.stack="<generic error, no stack>",(()=>{for(var e=new Array(256),r=0;r<256;++r)e[r]=String.fromCharCode(r);gr=e})(),_r=f.BindingError=class extends Error{constructor(e){super(e),this.name="BindingError"}},yr=f.InternalError=class extends Error{constructor(e){super(e),this.name="InternalError"}},Object.assign(Hr.prototype,{isAliasOf(e){if(!(this instanceof Hr))return!1;if(!(e instanceof Hr))return!1;var r=this.$$.ptrType.registeredClass,t=this.$$.ptr;e.$$=e.$$;for(var n=e.$$.ptrType.registeredClass,a=e.$$.ptr;r.baseClass;)t=r.upcast(t),r=r.baseClass;for(;n.baseClass;)a=n.upcast(a),n=n.baseClass;return r===n&&t===a},clone(){if(this.$$.ptr||Pr(this),this.$$.preservePointerOnDelete)return this.$$.count.value+=1,this;var e,r=Nr(Object.create(Object.getPrototypeOf(this),{$$:{value:(e=this.$$,{count:e.count,deleteScheduled:e.deleteScheduled,preservePointerOnDelete:e.preservePointerOnDelete,ptr:e.ptr,ptrType:e.ptrType,smartPtr:e.smartPtr,smartPtrType:e.smartPtrType})}}));return r.$$.count.value+=1,r.$$.deleteScheduled=!1,r},delete(){this.$$.ptr||Pr(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&Sr("Object already scheduled for deletion"),Mr(this),Dr(this.$$),this.$$.preservePointerOnDelete||(this.$$.smartPtr=void 0,this.$$.ptr=void 0)},isDeleted(){return!this.$$.ptr},deleteLater(){return this.$$.ptr||Pr(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&Sr("Object already scheduled for deletion"),Ur.push(this),Ur.length,this.$$.deleteScheduled=!0,this}}),Object.assign(Jr.prototype,{getPointee(e){return this.rawGetPointee&&(e=this.rawGetPointee(e)),e},destructor(e){this.rawDestructor?.(e)},argPackAdvance:8,readValueFromPointer:Zr,fromWireType:Or}),et=f.UnboundTypeError=(Ea=Error,(Ca=Gr(ka="UnboundTypeError",(function(e){this.name=ka,this.message=e;var r=new Error(e).stack;void 0!==r&&(this.stack=this.toString()+"\n"+r.replace(/^Error(:[^\n]*)?\n/,""))}))).prototype=Object.create(Ea.prototype),Ca.prototype.constructor=Ca,Ca.prototype.toString=function(){return void 0===this.message?this.name:`${this.name}: ${this.message}`},Ca),pt.push(0,1,void 0,1,null,1,!0,1,!1,1),f.count_emval_handles=gt,f.requestAnimationFrame=Rn.requestAnimationFrame,f.pauseMainLoop=Rn.pause,f.resumeMainLoop=Rn.resume,Rn.init(),Zn.init();for(var Ro=new Float32Array(288),Wo=0;Wo<=288;++Wo)To[Wo]=Ro.subarray(0,Wo);var Bo,Oo,No=[Se,$e,ze,cr,dr,fr,mr,hr,pr,vr,kn,Cn,ma,ha,pa,ga,_a,ya,ba];!async function(){function e(e,r){var t;return Oo=e.exports,We(Oo._emscripten_tls_init),je=Oo.__indirect_function_table,t=Oo.__wasm_call_ctors,Q.unshift(t),M=r,ae(),Oo}ne();var r=he();if(f.instantiateWasm)try{return f.instantiateWasm(r,e)}catch(e){P(`Module.instantiateWasm callback failed with error: ${e}`),d(e)}if(g)return new Promise((r=>{V=t=>{e(new WebAssembly.Instance(t,he()),t),r()}}));ie??=de();try{var t=await me(H,ie,r);return function(r){e(r.instance,r.module)}(t),t}catch(e){return void d(e)}}();var Uo,Ho=e=>(Ho=Oo.malloc)(e),Go=e=>(Go=Oo.free)(e),zo=()=>(zo=Oo.pthread_self)(),Vo=(e,r)=>(Vo=Oo.setThrew)(e,r),qo=e=>(qo=Oo.__getTypeName)(e),Xo=()=>(Xo=Oo._embind_initialize_bindings)(),Ko=(e,r)=>(Ko=Oo.emscripten_builtin_memalign)(e,r),Yo=(e,r,t,n,a,o)=>(Yo=Oo._emscripten_thread_init)(e,r,t,n,a,o),Qo=()=>(Qo=Oo._emscripten_thread_crashed)(),Zo=(e,r,t,n,a)=>(Zo=Oo._emscripten_run_on_main_thread_js)(e,r,t,n,a),Jo=e=>(Jo=Oo._emscripten_thread_free_data)(e),ei=e=>(ei=Oo._emscripten_thread_exit)(e),ri=()=>(ri=Oo._emscripten_check_mailbox)(),ti=(e,r)=>(ti=Oo.emscripten_stack_set_limits)(e,r),ni=e=>(ni=Oo._emscripten_stack_restore)(e),ai=e=>(ai=Oo._emscripten_stack_alloc)(e),oi=()=>(oi=Oo.emscripten_stack_get_current)();function ii(e,r){var t=Ee();try{return Le(e)(r)}catch(e){if(ke(t),e!==e+0)throw e;Vo(1,0)}}function si(e,r,t){var n=Ee();try{return Le(e)(r,t)}catch(e){if(ke(n),e!==e+0)throw e;Vo(1,0)}}function li(e,r,t,n){var a=Ee();try{return Le(e)(r,t,n)}catch(e){if(ke(a),e!==e+0)throw e;Vo(1,0)}}function ui(e,r){var t=Ee();try{Le(e)(r)}catch(e){if(ke(t),e!==e+0)throw e;Vo(1,0)}}function ci(e,r,t,n){var a=Ee();try{Le(e)(r,t,n)}catch(e){if(ke(a),e!==e+0)throw e;Vo(1,0)}}function di(e,r,t){var n=Ee();try{Le(e)(r,t)}catch(e){if(ke(n),e!==e+0)throw e;Vo(1,0)}}function fi(e,r,t,n,a,o){var i=Ee();try{return Le(e)(r,t,n,a,o)}catch(e){if(ke(i),e!==e+0)throw e;Vo(1,0)}}function mi(e,r,t,n,a){var o=Ee();try{Le(e)(r,t,n,a)}catch(e){if(ke(o),e!==e+0)throw e;Vo(1,0)}}function hi(e,r,t,n,a,o,i){var s=Ee();try{return Le(e)(r,t,n,a,o,i)}catch(e){if(ke(s),e!==e+0)throw e;Vo(1,0)}}function pi(e,r,t,n,a,o){var i=Ee();try{Le(e)(r,t,n,a,o)}catch(e){if(ke(i),e!==e+0)throw e;Vo(1,0)}}function vi(e,r,t,n,a){var o=Ee();try{return Le(e)(r,t,n,a)}catch(e){if(ke(o),e!==e+0)throw e;Vo(1,0)}}function gi(e,r,t,n,a,o,i,s,l,u){var c=Ee();try{return Le(e)(r,t,n,a,o,i,s,l,u)}catch(e){if(ke(c),e!==e+0)throw e;Vo(1,0)}}function _i(e){var r=Ee();try{Le(e)()}catch(e){if(ke(r),e!==e+0)throw e;Vo(1,0)}}function yi(){if(!(re>0)){if(g)return c(f),void J();!function(){if(f.preRun)for("function"==typeof f.preRun&&(f.preRun=[f.preRun]);f.preRun.length;)ee(f.preRun.shift());Fe(Y)}(),re>0||(f.setStatus?(f.setStatus("Running..."),setTimeout((()=>{setTimeout((()=>f.setStatus("")),1),e()}),1)):e())}function e(){Uo||(Uo=!0,f.calledRun=!0,G||(J(),c(f),f.onRuntimeInitialized?.(),function(){if(!g){if(f.postRun)for("function"==typeof f.postRun&&(f.postRun=[f.postRun]);f.postRun.length;)e=f.postRun.shift(),Z.unshift(e);var e;Fe(Z)}}()))}}if(f.dynCall_iiiji=(e,r,t,n,a,o)=>(f.dynCall_iiiji=Oo.dynCall_iiiji)(e,r,t,n,a,o),f.dynCall_ji=(e,r)=>(f.dynCall_ji=Oo.dynCall_ji)(e,r),f.dynCall_iiji=(e,r,t,n,a)=>(f.dynCall_iiji=Oo.dynCall_iiji)(e,r,t,n,a),f.dynCall_iijjiii=(e,r,t,n,a,o,i,s,l)=>(f.dynCall_iijjiii=Oo.dynCall_iijjiii)(e,r,t,n,a,o,i,s,l),f.dynCall_iij=(e,r,t,n)=>(f.dynCall_iij=Oo.dynCall_iij)(e,r,t,n),f.dynCall_vijjjii=(e,r,t,n,a,o,i,s,l,u)=>(f.dynCall_vijjjii=Oo.dynCall_vijjjii)(e,r,t,n,a,o,i,s,l,u),f.dynCall_viji=(e,r,t,n,a)=>(f.dynCall_viji=Oo.dynCall_viji)(e,r,t,n,a),f.dynCall_vijiii=(e,r,t,n,a,o,i)=>(f.dynCall_vijiii=Oo.dynCall_vijiii)(e,r,t,n,a,o,i),f.dynCall_viiiiij=(e,r,t,n,a,o,i,s)=>(f.dynCall_viiiiij=Oo.dynCall_viiiiij)(e,r,t,n,a,o,i,s),f.dynCall_jiiiijiiiii=(e,r,t,n,a,o,i,s,l,u,c,d)=>(f.dynCall_jiiiijiiiii=Oo.dynCall_jiiiijiiiii)(e,r,t,n,a,o,i,s,l,u,c,d),f.dynCall_viiij=(e,r,t,n,a,o)=>(f.dynCall_viiij=Oo.dynCall_viiij)(e,r,t,n,a,o),f.dynCall_jii=(e,r,t)=>(f.dynCall_jii=Oo.dynCall_jii)(e,r,t),f.dynCall_vij=(e,r,t,n)=>(f.dynCall_vij=Oo.dynCall_vij)(e,r,t,n),f.dynCall_jiiiiii=(e,r,t,n,a,o,i)=>(f.dynCall_jiiiiii=Oo.dynCall_jiiiiii)(e,r,t,n,a,o,i),f.dynCall_jiiiiji=(e,r,t,n,a,o,i,s)=>(f.dynCall_jiiiiji=Oo.dynCall_jiiiiji)(e,r,t,n,a,o,i,s),f.dynCall_iijj=(e,r,t,n,a,o)=>(f.dynCall_iijj=Oo.dynCall_iijj)(e,r,t,n,a,o),f.dynCall_viiiiiij=(e,r,t,n,a,o,i,s,l)=>(f.dynCall_viiiiiij=Oo.dynCall_viiiiiij)(e,r,t,n,a,o,i,s,l),f.dynCall_iiij=(e,r,t,n,a)=>(f.dynCall_iiij=Oo.dynCall_iiij)(e,r,t,n,a),f.dynCall_vjji=(e,r,t,n,a,o)=>(f.dynCall_vjji=Oo.dynCall_vjji)(e,r,t,n,a,o),f.dynCall_jiji=(e,r,t,n,a)=>(f.dynCall_jiji=Oo.dynCall_jiji)(e,r,t,n,a),f.dynCall_viijii=(e,r,t,n,a,o,i)=>(f.dynCall_viijii=Oo.dynCall_viijii)(e,r,t,n,a,o,i),f.dynCall_iiiiij=(e,r,t,n,a,o,i)=>(f.dynCall_iiiiij=Oo.dynCall_iiiiij)(e,r,t,n,a,o,i),f.dynCall_iiiiijj=(e,r,t,n,a,o,i,s,l)=>(f.dynCall_iiiiijj=Oo.dynCall_iiiiijj)(e,r,t,n,a,o,i,s,l),f.dynCall_iiiiiijj=(e,r,t,n,a,o,i,s,l,u)=>(f.dynCall_iiiiiijj=Oo.dynCall_iiiiiijj)(e,r,t,n,a,o,i,s,l,u),te=function e(){Uo||yi(),Uo||(te=e)},f.preInit)for("function"==typeof f.preInit&&(f.preInit=[f.preInit]);f.preInit.length>0;)f.preInit.pop()();return yi(),m}),t=globalThis.self?.name?.startsWith("em-pthread");"string"==typeof globalThis.process?.versions?.node&&(t="em-pthread"===(await import("worker_threads")).workerData),t&&r();export{r as default};