var ModuleFactory=(()=>{var e=globalThis.document?.currentScript?.src;return async function(r={}){var t,n,a,o,i,s,u,l,c,d,f,m,p,g,v,h,b,y,w,x,_,E,S,k,C,B,T,L,I,O,P,j,A,F,D,M,V,z,R,U,G,N,W,J,X,$,H,q,Y,Q,K,Z,ee,er,et,en=!!globalThis.window,ea=!!globalThis.WorkerGlobalScope,eo=globalThis.process?.versions?.node&&globalThis.process?.type!="renderer",ei="./this.program",es=(e,r)=>{throw r};"u">typeof __filename?e=__filename:ea&&(e=self.location.href);var eu="";if(eo){var el=require("fs");eu=__dirname+"/",n=e=>(e=em(e)?new URL(e):e,el.readFileSync(e)),t=async(e,r=!0)=>(e=em(e)?new URL(e):e,el.readFileSync(e,r?void 0:"utf8")),process.argv.length>1&&(ei=process.argv[1].replace(/\\/g,"/")),process.argv.slice(2),es=(e,r)=>{throw process.exitCode=e,r}}else if(en||ea){try{eu=new URL(".",e).href}catch{}ea&&(n=e=>{var r=new XMLHttpRequest;return r.open("GET",e,!1),r.responseType="arraybuffer",r.send(null),new Uint8Array(r.response)}),t=async e=>{if(em(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 Error(r.status+" : "+r.url)}}var ec=console.log.bind(console),ed=console.error.bind(console),ef=!1,em=e=>e.startsWith("file://"),ep=!1;function eg(){var e=ee.buffer;u=new Int8Array(e),c=new Int16Array(e),r.HEAPU8=l=new Uint8Array(e),d=new Uint16Array(e),f=new Int32Array(e),r.HEAPU32=m=new Uint32Array(e),r.HEAPF32=p=new Float32Array(e),r.HEAPF64=g=new Float64Array(e)}function ev(e){r.onAbort?.(e),ed(e="Aborted("+e+")"),ef=!0,e+=". Build with -sASSERTIONS for more info.";var t=new WebAssembly.RuntimeError(e);throw s?.(t),t}async function eh(e){if(!a)try{var r=await t(e);return new Uint8Array(r)}catch{}if(e==v&&a)return new Uint8Array(a);if(n)return n(e);throw"both async and sync fetching of the wasm failed"}async function eb(e,r){try{var t=await eh(e);return await WebAssembly.instantiate(t,r)}catch(e){ed(`failed to asynchronously prepare wasm: ${e}`),ev(e)}}async function ey(e,r,t){if(!e&&!em(r)&&!eo)try{var n=fetch(r,{credentials:"same-origin"});return await WebAssembly.instantiateStreaming(n,t)}catch(e){ed(`wasm streaming compile failed: ${e}`),ed("falling back to ArrayBuffer instantiation")}return eb(r,t)}async function ew(){function e(e,t){var n;return w=r._free=(n=et=e.exports).kd,x=r._malloc=n.ld,_=n.md,r._addBoundTextureAsImageToStream=n.nd,r._attachImageListener=n.od,r._attachImageVectorListener=n.pd,r._registerModelResourcesGraphService=n.qd,r._bindTextureToStream=n.rd,r._addBoundTextureToStream=n.sd,r._addDoubleToInputStream=n.td,r._addFloatToInputStream=n.ud,r._addBoolToInputStream=n.vd,r._addIntToInputStream=n.wd,r._addUintToInputStream=n.xd,r._addStringToInputStream=n.yd,r._addRawDataSpanToInputStream=n.zd,r._allocateBoolVector=n.Ad,r._allocateFloatVector=n.Bd,r._allocateDoubleVector=n.Cd,r._allocateIntVector=n.Dd,r._allocateUintVector=n.Ed,r._allocateStringVector=n.Fd,r._addBoolVectorEntry=n.Gd,r._addFloatVectorEntry=n.Hd,r._addDoubleVectorEntry=n.Id,r._addIntVectorEntry=n.Jd,r._addUintVectorEntry=n.Kd,r._addStringVectorEntry=n.Ld,r._addBoolVectorToInputStream=n.Md,r._addFloatVectorToInputStream=n.Nd,r._addDoubleVectorToInputStream=n.Od,r._addIntVectorToInputStream=n.Pd,r._addUintVectorToInputStream=n.Qd,r._addStringVectorToInputStream=n.Rd,r._addFlatHashMapToInputStream=n.Sd,r._addProtoToInputStream=n.Td,r._addEmptyPacketToInputStream=n.Ud,r._addBoolToInputSidePacket=n.Vd,r._addDoubleToInputSidePacket=n.Wd,r._addFloatToInputSidePacket=n.Xd,r._addIntToInputSidePacket=n.Yd,r._addUintToInputSidePacket=n.Zd,r._addStringToInputSidePacket=n._d,r._addRawDataSpanToInputSidePacket=n.$d,r._addProtoToInputSidePacket=n.ae,r._addBoolVectorToInputSidePacket=n.be,r._addDoubleVectorToInputSidePacket=n.ce,r._addFloatVectorToInputSidePacket=n.de,r._addIntVectorToInputSidePacket=n.ee,r._addUintVectorToInputSidePacket=n.fe,r._addStringVectorToInputSidePacket=n.ge,r._attachBoolListener=n.he,r._attachBoolVectorListener=n.ie,r._attachDoubleListener=n.je,r._attachDoubleVectorListener=n.ke,r._attachFloatListener=n.le,r._attachFloatVectorListener=n.me,r._attachIntListener=n.ne,r._attachIntVectorListener=n.oe,r._attachUintListener=n.pe,r._attachUintVectorListener=n.qe,r._attachStringListener=n.re,r._attachStringVectorListener=n.se,r._attachProtoListener=n.te,r._attachProtoVectorListener=n.ue,r._getGraphConfig=n.ve,E=n.we,S=n.xe,k=n.ye,C=n.ze,B=n.Ae,T=n.Be,L=n.Ce,I=n.De,O=n.Ee,P=n.Fe,j=n.Ge,A=n.He,F=n.Ie,D=n.Je,M=n.Ke,V=n.Le,z=n.Me,R=n.Ne,U=n.Oe,G=n.Pe,N=n.Qe,W=n.Re,J=n.Se,X=n.Te,$=n.Ue,r._clearSubgraphs=n.Ve,r._pushBinarySubgraph=n.We,r._pushTextSubgraph=n.Xe,r._changeBinaryGraph=n.Ye,r._changeTextGraph=n.Ze,r._processGl=n._e,r._process=n.$e,r._bindTextureToCanvas=n.af,r._requestShaderRefreshOnGraphChange=n.bf,r._waitUntilIdle=n.cf,r._closeGraph=n.df,r._setAutoRenderToScreen=n.ef,H=n.ff,q=n.gf,Y=n.hf,Q=n.jf,K=n.kf,Z=n.lf,n.dynCall_ji,n.dynCall_jii,n.dynCall_iiiijij,n.dynCall_viiji,n.dynCall_viji,n.dynCall_iiiji,n.dynCall_jjj,n.dynCall_iiiijj,n.dynCall_viijj,n.dynCall_viiijjj,n.dynCall_vij,n.dynCall_viijii,n.dynCall_viiiji,n.dynCall_vijjj,n.dynCall_vj,n.dynCall_viij,n.dynCall_jiji,n.dynCall_iiiiij,n.dynCall_iiiiijj,n.dynCall_iiiiiijj,ee=n.hd,er=n.jd,eg(),et}var t,n={a:to};return r.instantiateWasm?new Promise((t,a)=>{r.instantiateWasm(n,(r,n)=>{t(e(r,n))})}):(v??=(t="vision_wasm_nosimd_internal.wasm",r.locateFile?r.locateFile(t,eu):eu+t),e((await ey(a,v,n)).instance))}var ex=e=>{if(e instanceof e_||"unwind"==e)return o;es(1,e)};class e_{name="ExitStatus";constructor(e){this.message=`Program terminated with exit(${e})`,this.status=e}}var eE=e=>{o=e,eF||(r.onExit?.(e),ef=!0),es(e,new e_(e))},eS=(e,r)=>{o=e,eE(e)},ek=e=>{if(!ef)try{if(e(),!eF)try{eS(o)}catch(e){ex(e)}}catch(e){ex(e)}};function eC(){return document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement||document.webkitCurrentFullScreenElement||document.msFullscreenElement}var eB=(e,r)=>setTimeout(()=>{ek(e)},r),eT=[],eL={useWebGL:!1,isFullscreen:!1,pointerLock:!1,moduleContextCreatedCallbacks:[],workers:[],preloadedImages:{},preloadedAudios:{},getCanvas:()=>r.canvas,init(){if(!eL.initted){eL.initted=!0;var e={};e.canHandle=function(e){return!r.noImageDecoding&&/\.(jpg|jpeg|png|bmp|webp)$/i.test(e)},e.handle=async function(e,r){var t=new Blob([e],{type:eL.getMimetype(r)});t.size!==e.length&&(t=new Blob([new Uint8Array(e).buffer],{type:eL.getMimetype(r)}));var n=URL.createObjectURL(t);return new Promise((t,a)=>{var o=new Image;o.onload=()=>{var a=document.createElement("canvas");a.width=o.width,a.height=o.height,a.getContext("2d").drawImage(o,0,0),eL.preloadedImages[r]=a,URL.revokeObjectURL(n),t(e)},o.onerror=e=>{ed(`Image ${n} could not be decoded`),a()},o.src=n})},eT.push(e);var t={};t.canHandle=function(e){return!r.noAudioDecoding&&e.slice(-4)in{".ogg":1,".wav":1,".mp3":1}},t.handle=async function(e,r){return new Promise((t,n)=>{var a=!1;function o(n){a||(a=!0,eL.preloadedAudios[r]=n,t(e))}var i=new Blob([e],{type:eL.getMimetype(r)}),s=URL.createObjectURL(i),u=new Audio;u.addEventListener("canplaythrough",()=>o(u),!1),u.onerror=function(t){a||(ed(`warning: browser could not fully decode audio ${r}, trying slower base64 approach`),u.src="data:audio/x-"+r.slice(-3)+";base64,"+function(e){for(var r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",t="",n=0,a=0,o=0;o=6;){var i=n>>a-6&63;a-=6,t+=r[i]}return 2==a?(t+=r[(3&n)<<4],t+="=="):4==a&&(t+=r[(15&n)<<2],t+="="),t}(e),o(u))},u.src=s,eB(()=>{o(u)},1e4)})},eT.push(t);var n=eL.getCanvas();n&&(document.addEventListener("pointerlockchange",function(){var e=eL.getCanvas();eL.pointerLock=document.pointerLockElement===e},!1),r.elementPointerLock&&n.addEventListener("click",e=>{!eL.pointerLock&&eL.getCanvas().requestPointerLock&&(eL.getCanvas().requestPointerLock(),e.preventDefault())},!1))}},createContext(e,t,n,a){if(t&&r.ctx&&e==eL.getCanvas())return r.ctx;if(t){var o,i,s={antialias:!1,alpha:!1,majorVersion:"u">typeof WebGL2RenderingContext?2:1};if(a)for(var u in a)s[u]=a[u];void 0!==rW&&(i=rW.createContext(e,s))&&(o=rW.getContext(i).GLctx)}else o=e.getContext("2d");return o?(n&&(r.ctx=o,t&&rW.makeContextCurrent(i),eL.useWebGL=t,eL.moduleContextCreatedCallbacks.forEach(e=>e()),eL.init()),o):null},fullscreenHandlersInstalled:!1,lockPointer:void 0,resizeCanvas:void 0,requestFullscreen(e,t){eL.lockPointer=e,eL.resizeCanvas=t,void 0===eL.lockPointer&&(eL.lockPointer=!0),void 0===eL.resizeCanvas&&(eL.resizeCanvas=!1);var n=eL.getCanvas();function a(){eL.isFullscreen=!1;var e=n.parentNode;eC()===e?(n.exitFullscreen=eL.exitFullscreen,eL.lockPointer&&n.requestPointerLock(),eL.isFullscreen=!0,eL.resizeCanvas?eL.setFullscreenCanvasSize():eL.updateCanvasDimensions(n)):(e.parentNode.insertBefore(n,e),e.parentNode.removeChild(e),eL.resizeCanvas?eL.setWindowedCanvasSize():eL.updateCanvasDimensions(n)),r.onFullScreen?.(eL.isFullscreen),r.onFullscreen?.(eL.isFullscreen)}eL.fullscreenHandlersInstalled||(eL.fullscreenHandlersInstalled=!0,document.addEventListener("fullscreenchange",a,!1),document.addEventListener("mozfullscreenchange",a,!1),document.addEventListener("webkitfullscreenchange",a,!1),document.addEventListener("MSFullscreenChange",a,!1));var o=document.createElement("div");n.parentNode.insertBefore(o,n),o.appendChild(n),o.requestFullscreen=o.requestFullscreen||o.mozRequestFullScreen||o.msRequestFullscreen||(o.webkitRequestFullscreen?()=>o.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT):null)||(o.webkitRequestFullScreen?()=>o.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT):null),o.requestFullscreen()},exitFullscreen:()=>!!eL.isFullscreen&&((document.exitFullscreen||document.cancelFullScreen||document.mozCancelFullScreen||document.msExitFullscreen||document.webkitCancelFullScreen||(()=>{})).apply(document,[]),!0),safeSetTimeout:(e,r)=>eB(e,r),getMimetype:e=>({jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"})[e.slice(e.lastIndexOf(".")+1)],getUserMedia(e){window.getUserMedia||=navigator.getUserMedia||navigator.mozGetUserMedia,window.getUserMedia(e)},getMovementX:e=>e.movementX||e.mozMovementX||e.webkitMovementX||0,getMovementY:e=>e.movementY||e.mozMovementY||e.webkitMovementY||0,getMouseWheelDelta(e){var r=0;switch(e.type){case"DOMMouseScroll":r=e.detail/3;break;case"mousewheel":r=e.wheelDelta/120;break;case"wheel":switch(r=e.deltaY,e.deltaMode){case 0:r/=100;break;case 1:r/=3;break;case 2:r*=80;break;default:ev("unrecognized mouse wheel delta mode: "+e.deltaMode)}break;default:ev("unrecognized mouse wheel event: "+e.type)}return r},mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseCoords(e,r){var t=eL.getCanvas(),n=t.getBoundingClientRect(),a=void 0!==window.scrollX?window.scrollX:window.pageXOffset,o=void 0!==window.scrollY?window.scrollY:window.pageYOffset,i=e-(a+n.left),s=r-(o+n.top);return{x:i*=t.width/n.width,y:s*=t.height/n.height}},setMouseCoords(e,r){let{x:t,y:n}=eL.calculateMouseCoords(e,r);eL.mouseMovementX=t-eL.mouseX,eL.mouseMovementY=n-eL.mouseY,eL.mouseX=t,eL.mouseY=n},calculateMouseEvent(e){if(eL.pointerLock)"mousemove"!=e.type&&"mozMovementX"in e?eL.mouseMovementX=eL.mouseMovementY=0:(eL.mouseMovementX=eL.getMovementX(e),eL.mouseMovementY=eL.getMovementY(e)),eL.mouseX+=eL.mouseMovementX,eL.mouseY+=eL.mouseMovementY;else{if("touchstart"===e.type||"touchend"===e.type||"touchmove"===e.type){var r=e.touch;if(void 0===r)return;var t=eL.calculateMouseCoords(r.pageX,r.pageY);if("touchstart"===e.type)eL.lastTouches[r.identifier]=t,eL.touches[r.identifier]=t;else if("touchend"===e.type||"touchmove"===e.type){var n=eL.touches[r.identifier];n||=t,eL.lastTouches[r.identifier]=n,eL.touches[r.identifier]=t}return}eL.setMouseCoords(e.pageX,e.pageY)}},resizeListeners:[],updateResizeListeners(){var e=eL.getCanvas();eL.resizeListeners.forEach(r=>r(e.width,e.height))},setCanvasSize(e,r,t){var n=eL.getCanvas();eL.updateCanvasDimensions(n,e,r),t||eL.updateResizeListeners()},windowedWidth:0,windowedHeight:0,setFullscreenCanvasSize(){if("u">typeof SDL){var e=m[SDL.screen>>2];e|=8388608,f[SDL.screen>>2]=e}eL.updateCanvasDimensions(eL.getCanvas()),eL.updateResizeListeners()},setWindowedCanvasSize(){if("u">typeof SDL){var e=m[SDL.screen>>2];e&=-8388609,f[SDL.screen>>2]=e}eL.updateCanvasDimensions(eL.getCanvas()),eL.updateResizeListeners()},updateCanvasDimensions(e,t,n){t&&n?(e.widthNative=t,e.heightNative=n):(t=e.widthNative,n=e.heightNative);var a=t,o=n;if(r.forcedAspectRatio>0&&(a/otypeof screen){var i=Math.min(screen.width/a,screen.height/o);a=Math.round(a*i),o=Math.round(o*i)}eL.resizeCanvas?(e.width!=a&&(e.width=a),e.height!=o&&(e.height=o),void 0!==e.style&&(e.style.removeProperty("width"),e.style.removeProperty("height"))):(e.width!=t&&(e.width=t),e.height!=n&&(e.height=n),void 0!==e.style&&(a!=t||o!=n?(e.style.setProperty("width",a+"px","important"),e.style.setProperty("height",o+"px","important")):(e.style.removeProperty("width"),e.style.removeProperty("height"))))}},eI=e=>{for(;e.length>0;)e.shift()(r)},eO=[],eP=e=>eO.push(e),ej=[],eA=e=>ej.push(e),eF=!0,eD=()=>Z();class eM{constructor(e){this.excPtr=e,this.ptr=e-24}set_type(e){m[this.ptr+4>>2]=e}get_type(){return m[this.ptr+4>>2]}set_destructor(e){m[this.ptr+8>>2]=e}get_destructor(){return m[this.ptr+8>>2]}set_caught(e){e=+!!e,u[this.ptr+12]=e}get_caught(){return 0!=u[this.ptr+12]}set_rethrown(e){e=+!!e,u[this.ptr+13]=e}get_rethrown(){return 0!=u[this.ptr+13]}init(e,r){this.set_adjusted_ptr(0),this.set_type(e),this.set_destructor(r)}set_adjusted_ptr(e){m[this.ptr+16>>2]=e}get_adjusted_ptr(){return m[this.ptr+16>>2]}}var eV=0,ez=0,eR={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=eR.isAbs(e),t="/"===e.slice(-1);return(e=eR.normalizeArray(e.split("/").filter(e=>!!e),!r).join("/"))||r||(e="."),e&&t&&(e+="/"),(r?"/":"")+e},dirname:e=>{var r=eR.splitPath(e),t=r[0],n=r[1];return t||n?(n&&(n=n.slice(0,-1)),t+n):"."},basename:e=>e&&e.match(/([^\/]+|\/)\/*$/)[1],join:(...e)=>eR.normalize(e.join("/")),join2:(e,r)=>eR.normalize(e+"/"+r)},eU=e=>{(eU=(()=>{if(eo){var e=require("crypto");return r=>e.randomFillSync(r)}return e=>crypto.getRandomValues(e)})())(e)},eG={resolve:(...e)=>{for(var r="",t=!1,n=e.length-1;n>=-1&&!t;n--){var a=n>=0?e[n]:e7.cwd();if("string"!=typeof a)throw TypeError("Arguments to path.resolve must be strings");if(!a)return"";r=a+"/"+r,t=eR.isAbs(a)}return r=eR.normalizeArray(r.split("/").filter(e=>!!e),!t).join("/"),(t?"/":"")+r||"."},relative:(e,r)=>{function t(e){for(var r=0;r=0&&""===e[t];t--);return r>t?[]:e.slice(r,t-r+1)}e=eG.resolve(e).slice(1),r=eG.resolve(r).slice(1);for(var n=t(e.split("/")),a=t(r.split("/")),o=Math.min(n.length,a.length),i=o,s=0;s{var a=r+t;if(n)return a;for(;e[r]&&!(r>=a);)++r;return r},eJ=(e,r=0,t,n)=>{var a=eW(e,r,t,n);return eN.decode(e.buffer?e.subarray(r,a):new Uint8Array(e.slice(r,a)))},eX=[],e$=e=>{for(var r=0,t=0;t=55296&&n<=57343?(r+=4,++t):r+=3}return r},eH=(e,r,t,n)=>{if(!(n>0))return 0;for(var a=t,o=t+n-1,i=0;i=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,i++}}return r[t]=0,t-a},eq=(e,r,t)=>{var n=Array(t>0?t:e$(e)+1),a=eH(e,n,0,n.length);return r&&(n.length=a),n},eY={ttys:[],init(){},shutdown(){},register(e,r){eY.ttys[e]={input:[],output:[],ops:r},e7.registerDevice(e,eY.stream_ops)},stream_ops:{open(e){var r=eY.ttys[e.node.rdev];if(!r)throw new e7.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 e7.ErrnoError(60);for(var o,i=0,s=0;s(()=>{if(!eX.length){var e=null;if(eo){var r=Buffer.alloc(256),t=0,n=process.stdin.fd;try{t=el.readSync(n,r,0,256)}catch(e){if(e.toString().includes("EOF"))t=0;else throw e}t>0&&(e=r.slice(0,t).toString("utf-8"))}else globalThis.window?.prompt&&null!==(e=window.prompt("Input: "))&&(e+="\n");if(!e)return null;eX=eq(e,!0)}return eX.shift()})(),put_char(e,r){null===r||10===r?(ec(eJ(e.output)),e.output=[]):0!=r&&e.output.push(r)},fsync(e){e.output?.length>0&&(ec(eJ(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?(ed(eJ(e.output)),e.output=[]):0!=r&&e.output.push(r)},fsync(e){e.output?.length>0&&(ed(eJ(e.output)),e.output=[])}}},eQ=(e,r)=>Math.ceil(e/r)*r,eK=e=>{let r;e=eQ(e,65536);var t=H(65536,e);return t&&(r=e,l.fill(0,t,t+r)),t},eZ={ops_table:null,mount:e=>eZ.createNode(null,"/",16895,0),createNode(e,r,t,n){if(e7.isBlkdev(t)||e7.isFIFO(t))throw new e7.ErrnoError(63);eZ.ops_table||={dir:{node:{getattr:eZ.node_ops.getattr,setattr:eZ.node_ops.setattr,lookup:eZ.node_ops.lookup,mknod:eZ.node_ops.mknod,rename:eZ.node_ops.rename,unlink:eZ.node_ops.unlink,rmdir:eZ.node_ops.rmdir,readdir:eZ.node_ops.readdir,symlink:eZ.node_ops.symlink},stream:{llseek:eZ.stream_ops.llseek}},file:{node:{getattr:eZ.node_ops.getattr,setattr:eZ.node_ops.setattr},stream:{llseek:eZ.stream_ops.llseek,read:eZ.stream_ops.read,write:eZ.stream_ops.write,mmap:eZ.stream_ops.mmap,msync:eZ.stream_ops.msync}},link:{node:{getattr:eZ.node_ops.getattr,setattr:eZ.node_ops.setattr,readlink:eZ.node_ops.readlink},stream:{}},chrdev:{node:{getattr:eZ.node_ops.getattr,setattr:eZ.node_ops.setattr},stream:e7.chrdev_stream_ops}};var a=e7.createNode(e,r,t,n);return e7.isDir(a.mode)?(a.node_ops=eZ.ops_table.dir.node,a.stream_ops=eZ.ops_table.dir.stream,a.contents={}):e7.isFile(a.mode)?(a.node_ops=eZ.ops_table.file.node,a.stream_ops=eZ.ops_table.file.stream,a.usedBytes=0,a.contents=null):e7.isLink(a.mode)?(a.node_ops=eZ.ops_table.link.node,a.stream_ops=eZ.ops_table.link.stream):e7.isChrdev(a.mode)&&(a.node_ops=eZ.ops_table.chrdev.node,a.stream_ops=eZ.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=e7.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,e7.isDir(e.mode)?r.size=4096:e7.isFile(e.mode)?r.size=e.usedBytes:e7.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(let t of["mode","atime","mtime","ctime"])null!=r[t]&&(e[t]=r[t]);void 0!==r.size&&eZ.resizeFileStorage(e,r.size)},lookup(e,r){throw eZ.doesNotExistError||(eZ.doesNotExistError=new e7.ErrnoError(44),eZ.doesNotExistError.stack=""),eZ.doesNotExistError},mknod:(e,r,t,n)=>eZ.createNode(e,r,t,n),rename(e,r,t){var n;try{n=e7.lookupNode(r,t)}catch(e){}if(n){if(e7.isDir(e.mode))for(var a in n.contents)throw new e7.ErrnoError(55);e7.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=e7.lookupNode(e,r);for(var n in t.contents)throw new e7.ErrnoError(55);delete e.contents[r],e.ctime=e.mtime=Date.now()},readdir:e=>[".","..",...Object.keys(e.contents)],symlink(e,r,t){var n=eZ.createNode(e,r,41471,0);return n.link=t,n},readlink(e){if(!e7.isLink(e.mode))throw new e7.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;s0||t+r(eZ.stream_ops.write(e,r,0,n,t,!1),0)}},e0=(e,r)=>{var t=0;return e&&(t|=365),r&&(t|=146),t},e2=async e=>new Uint8Array(await t(e)),e1=(...e)=>e7.createDataFile(...e),e4=0,e3=null,e8=e=>{if(e4--,r.monitorRunDependencies?.(e4),0==e4&&e3){var t=e3;e3=null,t()}},e6=e=>{e4++,r.monitorRunDependencies?.(e4)},e5=async(e,r)=>{for(var t of(void 0!==eL&&eL.init(),eT))if(t.canHandle(r))return t.handle(e,r);return e},e9=async(e,r,t,n,a,o,i,s)=>{var u=r?eG.resolve(eR.join2(e,r)):e,l=`cp ${u}`;e6(l);try{var c=t;"string"==typeof t&&(c=await e2(t)),c=await e5(c,u),s?.(),o||e1(e,r,c,n,a,i)}finally{e8(l)}},e7={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:!1,ignorePermissions:!0,filesystems:null,syncFSRequests:0,readFiles:{},ErrnoError:class{name="ErrnoError";constructor(e){this.errno=e}},FSStream:class{shared={};get object(){return this.node}set object(e){this.node=e}get isRead(){return(2097155&this.flags)!=1}get isWrite(){return(2097155&this.flags)!=0}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=e7.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 e7.isDir(this.mode)}get isDevice(){return e7.isChrdev(this.mode)}},lookupPath(e,r={}){if(!e)throw new e7.ErrnoError(44);r.follow_mount??=!0,eR.isAbs(e)||(e=e7.cwd()+"/"+e);e:for(var t=0;t<40;t++){for(var n=e.split("/").filter(e=>!!e),a=e7.root,o="/",i=0;i>>0)%e7.nameTable.length},hashAddNode(e){var r=e7.hashName(e.parent.id,e.name);e.name_next=e7.nameTable[r],e7.nameTable[r]=e},hashRemoveNode(e){var r=e7.hashName(e.parent.id,e.name);if(e7.nameTable[r]===e)e7.nameTable[r]=e.name_next;else for(var t=e7.nameTable[r];t;){if(t.name_next===e){t.name_next=e.name_next;break}t=t.name_next}},lookupNode(e,r){var t=e7.mayLookup(e);if(t)throw new e7.ErrnoError(t);for(var n=e7.hashName(e.id,r),a=e7.nameTable[n];a;a=a.name_next){var o=a.name;if(a.parent.id===e.id&&o===r)return a}return e7.lookup(e,r)},createNode(e,r,t,n){var a=new e7.FSNode(e,r,t,n);return e7.hashAddNode(a),a},destroyNode(e){e7.hashRemoveNode(e)},isRoot:e=>e===e.parent,isMountpoint:e=>!!e.mounted,isFile:e=>(61440&e)==32768,isDir:e=>(61440&e)==16384,isLink:e=>(61440&e)==40960,isChrdev:e=>(61440&e)==8192,isBlkdev:e=>(61440&e)==24576,isFIFO:e=>(61440&e)==4096,isSocket:e=>(49152&e)==49152,flagsToPermissionString(e){var r=["r","w","rw"][3&e];return 512&e&&(r+="w"),r},nodePermissions:(e,r)=>e7.ignorePermissions?0:r.includes("r")&&!(292&e.mode)||r.includes("w")&&!(146&e.mode)||r.includes("x")&&!(73&e.mode)?2:0,mayLookup(e){if(!e7.isDir(e.mode))return 54;var r=e7.nodePermissions(e,"x");return r||2*!e.node_ops.lookup},mayCreate(e,r){if(!e7.isDir(e.mode))return 54;try{return e7.lookupNode(e,r),20}catch(e){}return e7.nodePermissions(e,"wx")},mayDelete(e,r,t){try{n=e7.lookupNode(e,r)}catch(e){return e.errno}var n,a=e7.nodePermissions(e,"wx");if(a)return a;if(t){if(!e7.isDir(n.mode))return 54;if(e7.isRoot(n)||e7.getPath(n)===e7.cwd())return 10}else if(e7.isDir(n.mode))return 31;return 0},mayOpen:(e,r)=>e?e7.isLink(e.mode)?32:e7.isDir(e.mode)&&("r"!==e7.flagsToPermissionString(r)||576&r)?31:e7.nodePermissions(e,e7.flagsToPermissionString(r)):44,checkOpExists(e,r){if(!e)throw new e7.ErrnoError(r);return e},MAX_OPEN_FDS:4096,nextfd(){for(var e=0;e<=e7.MAX_OPEN_FDS;e++)if(!e7.streams[e])return e;throw new e7.ErrnoError(33)},getStreamChecked(e){var r=e7.getStream(e);if(!r)throw new e7.ErrnoError(8);return r},getStream:e=>e7.streams[e],createStream:(e,r=-1)=>(e=Object.assign(new e7.FSStream,e),-1==r&&(r=e7.nextfd()),e.fd=r,e7.streams[r]=e,e),closeStream(e){e7.streams[e]=null},dupStream(e,r=-1){var t=e7.createStream(e,r);return t.stream_ops?.dup?.(t),t},doSetAttr(e,r,t){var n=e?.stream_ops.setattr,a=n?e:r;n??=r.node_ops.setattr,e7.checkOpExists(n,63),n(a,t)},chrdev_stream_ops:{open(e){var r=e7.getDevice(e.node.rdev);e.stream_ops=r.stream_ops,e.stream_ops.open?.(e)},llseek(){throw new e7.ErrnoError(70)}},major:e=>e>>8,minor:e=>255&e,makedev:(e,r)=>e<<8|r,registerDevice(e,r){e7.devices[e]={stream_ops:r}},getDevice:e=>e7.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),e7.syncFSRequests++,e7.syncFSRequests>1&&ed(`warning: ${e7.syncFSRequests} FS.syncfs operations in flight at once, probably just doing extra work`);var t=e7.getMounts(e7.root.mount),n=0;function a(e){return e7.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&&e7.root)throw new e7.ErrnoError(10);if(!a&&!o){var i=e7.lookupPath(t,{follow_mount:!1});if(t=i.path,n=i.node,e7.isMountpoint(n))throw new e7.ErrnoError(10);if(!e7.isDir(n.mode))throw new e7.ErrnoError(54)}var s={type:e,opts:r,mountpoint:t,mounts:[]},u=e.mount(s);return u.mount=s,s.root=u,a?e7.root=u:n&&(n.mounted=s,n.mount&&n.mount.mounts.push(s)),u},unmount(e){var r=e7.lookupPath(e,{follow_mount:!1});if(!e7.isMountpoint(r.node))throw new e7.ErrnoError(28);var t=r.node,n=t.mounted,a=e7.getMounts(n);Object.keys(e7.nameTable).forEach(e=>{for(var r=e7.nameTable[e];r;){var t=r.name_next;a.includes(r.mount)&&e7.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=e7.lookupPath(e,{parent:!0}).node,a=eR.basename(e);if(!a)throw new e7.ErrnoError(28);if("."===a||".."===a)throw new e7.ErrnoError(20);var o=e7.mayCreate(n,a);if(o)throw new e7.ErrnoError(o);if(!n.node_ops.mknod)throw new e7.ErrnoError(63);return n.node_ops.mknod(n,a,r,t)},statfs:e=>e7.statfsNode(e7.lookupPath(e,{follow:!0}).node),statfsStream:e=>e7.statfsNode(e.node),statfsNode(e){var r={bsize:4096,frsize:4096,blocks:1e6,bfree:5e5,bavail:5e5,files:e7.nextInode,ffree:e7.nextInode-1,fsid:42,flags:2,namelen:255};return e.node_ops.statfs&&Object.assign(r,e.node_ops.statfs(e.mount.opts.root)),r},create:(e,r=438)=>(r&=4095,r|=32768,e7.mknod(e,r,0)),mkdir:(e,r=511)=>(r&=1023,r|=16384,e7.mknod(e,r,0)),mkdirTree(e,r){var t=e.split("/"),n="";for(var a of t)if(a){(n||eR.isAbs(e))&&(n+="/"),n+=a;try{e7.mkdir(n,r)}catch(e){if(20!=e.errno)throw e}}},mkdev:(e,r,t)=>(void 0===t&&(t=r,r=438),r|=8192,e7.mknod(e,r,t)),symlink(e,r){if(!eG.resolve(e))throw new e7.ErrnoError(44);var t=e7.lookupPath(r,{parent:!0}).node;if(!t)throw new e7.ErrnoError(44);var n=eR.basename(r),a=e7.mayCreate(t,n);if(a)throw new e7.ErrnoError(a);if(!t.node_ops.symlink)throw new e7.ErrnoError(63);return t.node_ops.symlink(t,n,e)},rename(e,r){var t,n,a,o=eR.dirname(e),i=eR.dirname(r),s=eR.basename(e),u=eR.basename(r);if(t=e7.lookupPath(e,{parent:!0}).node,n=e7.lookupPath(r,{parent:!0}).node,!t||!n)throw new e7.ErrnoError(44);if(t.mount!==n.mount)throw new e7.ErrnoError(75);var l=e7.lookupNode(t,s),c=eG.relative(e,i);if("."!==c.charAt(0))throw new e7.ErrnoError(28);if("."!==(c=eG.relative(r,o)).charAt(0))throw new e7.ErrnoError(55);try{a=e7.lookupNode(n,u)}catch(e){}if(l!==a){var d=e7.isDir(l.mode),f=e7.mayDelete(t,s,d);if(f||(f=a?e7.mayDelete(n,u,d):e7.mayCreate(n,u)))throw new e7.ErrnoError(f);if(!t.node_ops.rename)throw new e7.ErrnoError(63);if(e7.isMountpoint(l)||a&&e7.isMountpoint(a))throw new e7.ErrnoError(10);if(n!==t&&(f=e7.nodePermissions(t,"w")))throw new e7.ErrnoError(f);e7.hashRemoveNode(l);try{t.node_ops.rename(l,n,u),l.parent=n}catch(e){throw e}finally{e7.hashAddNode(l)}}},rmdir(e){var r=e7.lookupPath(e,{parent:!0}).node,t=eR.basename(e),n=e7.lookupNode(r,t),a=e7.mayDelete(r,t,!0);if(a)throw new e7.ErrnoError(a);if(!r.node_ops.rmdir)throw new e7.ErrnoError(63);if(e7.isMountpoint(n))throw new e7.ErrnoError(10);r.node_ops.rmdir(r,t),e7.destroyNode(n)},readdir(e){var r=e7.lookupPath(e,{follow:!0}).node;return e7.checkOpExists(r.node_ops.readdir,54)(r)},unlink(e){var r=e7.lookupPath(e,{parent:!0}).node;if(!r)throw new e7.ErrnoError(44);var t=eR.basename(e),n=e7.lookupNode(r,t),a=e7.mayDelete(r,t,!1);if(a)throw new e7.ErrnoError(a);if(!r.node_ops.unlink)throw new e7.ErrnoError(63);if(e7.isMountpoint(n))throw new e7.ErrnoError(10);r.node_ops.unlink(r,t),e7.destroyNode(n)},readlink(e){var r=e7.lookupPath(e).node;if(!r)throw new e7.ErrnoError(44);if(!r.node_ops.readlink)throw new e7.ErrnoError(28);return r.node_ops.readlink(r)},stat(e,r){var t=e7.lookupPath(e,{follow:!r}).node;return e7.checkOpExists(t.node_ops.getattr,63)(t)},fstat(e){var r=e7.getStreamChecked(e),t=r.node,n=r.stream_ops.getattr,a=n?r:t;return n??=t.node_ops.getattr,e7.checkOpExists(n,63),n(a)},lstat:e=>e7.stat(e,!0),doChmod(e,r,t,n){e7.doSetAttr(e,r,{mode:4095&t|-4096&r.mode,ctime:Date.now(),dontFollow:n})},chmod(e,r,t){var n;n="string"==typeof e?e7.lookupPath(e,{follow:!t}).node:e,e7.doChmod(null,n,r,t)},lchmod(e,r){e7.chmod(e,r,!0)},fchmod(e,r){var t=e7.getStreamChecked(e);e7.doChmod(t,t.node,r,!1)},doChown(e,r,t){e7.doSetAttr(e,r,{timestamp:Date.now(),dontFollow:t})},chown(e,r,t,n){var a;a="string"==typeof e?e7.lookupPath(e,{follow:!n}).node:e,e7.doChown(null,a,n)},lchown(e,r,t){e7.chown(e,r,t,!0)},fchown(e,r,t){var n=e7.getStreamChecked(e);e7.doChown(n,n.node,!1)},doTruncate(e,r,t){if(e7.isDir(r.mode))throw new e7.ErrnoError(31);if(!e7.isFile(r.mode))throw new e7.ErrnoError(28);var n=e7.nodePermissions(r,"w");if(n)throw new e7.ErrnoError(n);e7.doSetAttr(e,r,{size:t,timestamp:Date.now()})},truncate(e,r){if(r<0)throw new e7.ErrnoError(28);if("string"==typeof e){var t;t=e7.lookupPath(e,{follow:!0}).node}else t=e;e7.doTruncate(null,t,r)},ftruncate(e,r){var t=e7.getStreamChecked(e);if(r<0||(2097155&t.flags)==0)throw new e7.ErrnoError(28);e7.doTruncate(t,t.node,r)},utime(e,r,t){var n=e7.lookupPath(e,{follow:!0}).node;e7.checkOpExists(n.node_ops.setattr,63)(n,{atime:r,mtime:t})},open(e,t,n=438){if(""===e)throw new e7.ErrnoError(44);if(n=64&(t="string"==typeof t?(e=>{var r={r:0,"r+":2,w:577,"w+":578,a:1089,"a+":1090}[e];if(void 0===r)throw Error(`Unknown file open mode: ${e}`);return r})(t):t)?4095&n|32768:0,"object"==typeof e)a=e;else{var a,o=e.endsWith("/"),i=e7.lookupPath(e,{follow:!(131072&t),noent_okay:!0});a=i.node,e=i.path}var s=!1;if(64&t)if(a){if(128&t)throw new e7.ErrnoError(20)}else if(o)throw new e7.ErrnoError(31);else a=e7.mknod(e,511|n,0),s=!0;if(!a)throw new e7.ErrnoError(44);if(e7.isChrdev(a.mode)&&(t&=-513),65536&t&&!e7.isDir(a.mode))throw new e7.ErrnoError(54);if(!s){var u=e7.mayOpen(a,t);if(u)throw new e7.ErrnoError(u)}512&t&&!s&&e7.truncate(a,0),t&=-131713;var l=e7.createStream({node:a,path:e7.getPath(a),flags:t,seekable:!0,position:0,stream_ops:a.stream_ops,ungotten:[],error:!1});return l.stream_ops.open&&l.stream_ops.open(l),s&&e7.chmod(a,511&n),!r.logReadFiles||1&t||e in e7.readFiles||(e7.readFiles[e]=1),l},close(e){if(e7.isClosed(e))throw new e7.ErrnoError(8);e.getdents&&(e.getdents=null);try{e.stream_ops.close&&e.stream_ops.close(e)}catch(e){throw e}finally{e7.closeStream(e.fd)}e.fd=null},isClosed:e=>null===e.fd,llseek(e,r,t){if(e7.isClosed(e))throw new e7.ErrnoError(8);if(!e.seekable||!e.stream_ops.llseek)throw new e7.ErrnoError(70);if(0!=t&&1!=t&&2!=t)throw new e7.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 e7.ErrnoError(28);if(e7.isClosed(e)||(2097155&e.flags)==1)throw new e7.ErrnoError(8);if(e7.isDir(e.node.mode))throw new e7.ErrnoError(31);if(!e.stream_ops.read)throw new e7.ErrnoError(28);var o=void 0!==a;if(o){if(!e.seekable)throw new e7.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 e7.ErrnoError(28);if(e7.isClosed(e)||(2097155&e.flags)==0)throw new e7.ErrnoError(8);if(e7.isDir(e.node.mode))throw new e7.ErrnoError(31);if(!e.stream_ops.write)throw new e7.ErrnoError(28);e.seekable&&1024&e.flags&&e7.llseek(e,0,2);var i=void 0!==a;if(i){if(!e.seekable)throw new e7.ErrnoError(70)}else a=e.position;var s=e.stream_ops.write(e,r,t,n,a,o);return i||(e.position+=s),s},mmap(e,r,t,n,a){if((2&n)!=0&&(2&a)==0&&(2097155&e.flags)!=2||(2097155&e.flags)==1)throw new e7.ErrnoError(2);if(!e.stream_ops.mmap)throw new e7.ErrnoError(43);if(!r)throw new e7.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 e7.ErrnoError(59);return e.stream_ops.ioctl(e,r,t)},readFile(e,r={}){r.flags=r.flags||0,r.encoding=r.encoding||"binary","utf8"!==r.encoding&&"binary"!==r.encoding&&ev(`Invalid encoding type "${r.encoding}"`);var t=e7.open(e,r.flags),n=e7.stat(e).size,a=new Uint8Array(n);return e7.read(t,a,0,n,0),"utf8"===r.encoding&&(a=eJ(a)),e7.close(t),a},writeFile(e,r,t={}){t.flags=t.flags||577;var n=e7.open(e,t.flags,t.mode);"string"==typeof r&&(r=new Uint8Array(eq(r,!0))),ArrayBuffer.isView(r)?e7.write(n,r,0,r.byteLength,void 0,t.canOwn):ev("Unsupported data type"),e7.close(n)},cwd:()=>e7.currentPath,chdir(e){var r=e7.lookupPath(e,{follow:!0});if(null===r.node)throw new e7.ErrnoError(44);if(!e7.isDir(r.node.mode))throw new e7.ErrnoError(54);var t=e7.nodePermissions(r.node,"x");if(t)throw new e7.ErrnoError(t);e7.currentPath=r.path},createDefaultDirectories(){e7.mkdir("/tmp"),e7.mkdir("/home"),e7.mkdir("/home/web_user")},createDefaultDevices(){e7.mkdir("/dev"),e7.registerDevice(e7.makedev(1,3),{read:()=>0,write:(e,r,t,n,a)=>n,llseek:()=>0}),e7.mkdev("/dev/null",e7.makedev(1,3)),eY.register(e7.makedev(5,0),eY.default_tty_ops),eY.register(e7.makedev(6,0),eY.default_tty1_ops),e7.mkdev("/dev/tty",e7.makedev(5,0)),e7.mkdev("/dev/tty1",e7.makedev(6,0));var e=new Uint8Array(1024),r=0,t=()=>(0===r&&(eU(e),r=e.byteLength),e[--r]);e7.createDevice("/dev","random",t),e7.createDevice("/dev","urandom",t),e7.mkdir("/dev/shm"),e7.mkdir("/dev/shm/tmp")},createSpecialDirectories(){e7.mkdir("/proc");var e=e7.mkdir("/proc/self");e7.mkdir("/proc/self/fd"),e7.mount({mount(){var r=e7.createNode(e,"fd",16895,73);return r.stream_ops={llseek:eZ.stream_ops.llseek},r.node_ops={lookup(e,r){var t=+r,n=e7.getStreamChecked(t),a={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:()=>n.path},id:t+1};return a.parent=a,a},readdir:()=>Array.from(e7.streams.entries()).filter(([e,r])=>r).map(([e,r])=>e.toString())},r}},{},"/proc/self/fd")},createStandardStreams(e,r,t){e?e7.createDevice("/dev","stdin",e):e7.symlink("/dev/tty","/dev/stdin"),r?e7.createDevice("/dev","stdout",null,r):e7.symlink("/dev/tty","/dev/stdout"),t?e7.createDevice("/dev","stderr",null,t):e7.symlink("/dev/tty1","/dev/stderr"),e7.open("/dev/stdin",0),e7.open("/dev/stdout",1),e7.open("/dev/stderr",1)},staticInit(){e7.nameTable=Array(4096),e7.mount(eZ,{},"/"),e7.createDefaultDirectories(),e7.createDefaultDevices(),e7.createSpecialDirectories(),e7.filesystems={MEMFS:eZ}},init(e,t,n){e7.initialized=!0,e??=r.stdin,t??=r.stdout,n??=r.stderr,e7.createStandardStreams(e,t,n)},quit(){for(var e of(e7.initialized=!1,e7.streams))e&&e7.close(e)},findObject(e,r){var t=e7.analyzePath(e,r);return t.exists?t.object:null},analyzePath(e,r){try{var t=e7.lookupPath(e,{follow:!r});e=t.path}catch(e){}var n={isRoot:!1,exists:!1,error:0,name:null,path:null,object:null,parentExists:!1,parentPath:null,parentObject:null};try{var t=e7.lookupPath(e,{parent:!0});n.parentExists=!0,n.parentPath=t.path,n.parentObject=t.node,n.name=eR.basename(e),t=e7.lookupPath(e,{follow:!r}),n.exists=!0,n.path=t.path,n.object=t.node,n.name=t.node.name,n.isRoot="/"===t.path}catch(e){n.error=e.errno}return n},createPath(e,r,t,n){e="string"==typeof e?e:e7.getPath(e);for(var a=r.split("/").reverse();a.length;){var o=a.pop();if(o){var i=eR.join2(e,o);try{e7.mkdir(i)}catch(e){if(20!=e.errno)throw e}e=i}}return i},createFile(e,r,t,n,a){var o=eR.join2("string"==typeof e?e:e7.getPath(e),r),i=e0(n,a);return e7.create(o,i)},createDataFile(e,r,t,n,a,o){var i=r;e&&(e="string"==typeof e?e:e7.getPath(e),i=r?eR.join2(e,r):e);var s=e0(n,a),u=e7.create(i,s);if(t){if("string"==typeof t){for(var l=Array(t.length),c=0,d=t.length;cthis.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,r=new XMLHttpRequest;r.open("HEAD",t,!1),r.send(null),r.status>=200&&r.status<300||304===r.status||ev("Couldn't load "+t+". Status: "+r.status);var n=Number(r.getResponseHeader("Content-length")),a=(e=r.getResponseHeader("Accept-Ranges"))&&"bytes"===e,o=(e=r.getResponseHeader("Content-Encoding"))&&"gzip"===e,i=1048576;a||(i=n);var s=this;s.setDataGetter(e=>{var r,a,o=e*i,u=(e+1)*i-1;return u=Math.min(u,n-1),void 0===s.chunks[e]&&(s.chunks[e]=(o>(r=u)&&ev("invalid range ("+o+", "+r+") or no bytes requested!"),r>n-1&&ev("only "+n+" bytes available! programmer error!"),((a=new XMLHttpRequest).open("GET",t,!1),n!==i&&a.setRequestHeader("Range","bytes="+o+"-"+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||ev("Couldn't load "+t+". Status: "+a.status),void 0!==a.response)?new Uint8Array(a.response||[]):eq(a.responseText||"",!0))),void 0===s.chunks[e]&&ev("doXHR failed!"),s.chunks[e]}),(o||!n)&&(i=n=1,i=n=this.getter(0).length,ec("LazyFiles on gzip forces download of the whole file when length is accessed")),this._length=n,this._chunkSize=i,this.lengthKnown=!0}get length(){return this.lengthKnown||this.cacheLength(),this._length}get chunkSize(){return this.lengthKnown||this.cacheLength(),this._chunkSize}}}}else var o={isDevice:!1,url:t};var i=e7.createFile(e,r,o,n,a);o.contents?i.contents=o.contents:o.url&&(i.contents=null,i.url=o.url),Object.defineProperties(i,{usedBytes:{get:function(){return this.contents.length}}});var s={};function l(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{var r=i.stream_ops[e];s[e]=(...e)=>(e7.forceLoadFile(i),r(...e))}),s.read=(e,r,t,n,a)=>(e7.forceLoadFile(i),l(e,r,t,n,a)),s.mmap=(e,r,t,n,a)=>{e7.forceLoadFile(i);var o=eK(r);if(!o)throw new e7.ErrnoError(48);return l(e,u,o,r,t),{ptr:o,allocated:!0}},i.stream_ops=s,i}},re=(e,r,t)=>{if(!e)return"";var n=eW(l,e,r,t);return eN.decode(l.subarray(e,n))},rr={DEFAULT_POLLMASK:5,calculateAt(e,r,t){if(eR.isAbs(r))return r;if(-100===e)n=e7.cwd();else{var n;n=rr.getStreamFromFD(e).path}if(0==r.length){if(!t)throw new e7.ErrnoError(44);return n}return n+"/"+r},writeStat(e,r){m[e>>2]=r.dev,m[e+4>>2]=r.mode,m[e+8>>2]=r.nlink,m[e+12>>2]=r.uid,m[e+16>>2]=r.gid,m[e+20>>2]=r.rdev,b=[r.size>>>0,+Math.abs(h=r.size)>=1?h>0?Math.floor(h/0x100000000)>>>0:~~Math.ceil((h-(~~h>>>0))/0x100000000)>>>0:0],f[e+24>>2]=b[0],f[e+28>>2]=b[1],f[e+32>>2]=4096,f[e+36>>2]=r.blocks;var t=r.atime.getTime(),n=r.mtime.getTime(),a=r.ctime.getTime();return b=[Math.floor(t/1e3)>>>0,+Math.abs(h=Math.floor(t/1e3))>=1?h>0?Math.floor(h/0x100000000)>>>0:~~Math.ceil((h-(~~h>>>0))/0x100000000)>>>0:0],f[e+40>>2]=b[0],f[e+44>>2]=b[1],m[e+48>>2]=t%1e3*1e6,b=[Math.floor(n/1e3)>>>0,+Math.abs(h=Math.floor(n/1e3))>=1?h>0?Math.floor(h/0x100000000)>>>0:~~Math.ceil((h-(~~h>>>0))/0x100000000)>>>0:0],f[e+56>>2]=b[0],f[e+60>>2]=b[1],m[e+64>>2]=n%1e3*1e6,b=[Math.floor(a/1e3)>>>0,+Math.abs(h=Math.floor(a/1e3))>=1?h>0?Math.floor(h/0x100000000)>>>0:~~Math.ceil((h-(~~h>>>0))/0x100000000)>>>0:0],f[e+72>>2]=b[0],f[e+76>>2]=b[1],m[e+80>>2]=a%1e3*1e6,b=[r.ino>>>0,+Math.abs(h=r.ino)>=1?h>0?Math.floor(h/0x100000000)>>>0:~~Math.ceil((h-(~~h>>>0))/0x100000000)>>>0:0],f[e+88>>2]=b[0],f[e+92>>2]=b[1],0},writeStatFs(e,r){m[e+4>>2]=r.bsize,m[e+60>>2]=r.bsize,b=[r.blocks>>>0,+Math.abs(h=r.blocks)>=1?h>0?Math.floor(h/0x100000000)>>>0:~~Math.ceil((h-(~~h>>>0))/0x100000000)>>>0:0],f[e+8>>2]=b[0],f[e+12>>2]=b[1],b=[r.bfree>>>0,+Math.abs(h=r.bfree)>=1?h>0?Math.floor(h/0x100000000)>>>0:~~Math.ceil((h-(~~h>>>0))/0x100000000)>>>0:0],f[e+16>>2]=b[0],f[e+20>>2]=b[1],b=[r.bavail>>>0,+Math.abs(h=r.bavail)>=1?h>0?Math.floor(h/0x100000000)>>>0:~~Math.ceil((h-(~~h>>>0))/0x100000000)>>>0:0],f[e+24>>2]=b[0],f[e+28>>2]=b[1],b=[r.files>>>0,+Math.abs(h=r.files)>=1?h>0?Math.floor(h/0x100000000)>>>0:~~Math.ceil((h-(~~h>>>0))/0x100000000)>>>0:0],f[e+32>>2]=b[0],f[e+36>>2]=b[1],b=[r.ffree>>>0,+Math.abs(h=r.ffree)>=1?h>0?Math.floor(h/0x100000000)>>>0:~~Math.ceil((h-(~~h>>>0))/0x100000000)>>>0:0],f[e+40>>2]=b[0],f[e+44>>2]=b[1],m[e+48>>2]=r.fsid,m[e+64>>2]=r.flags,m[e+56>>2]=r.namelen},doMsync(e,r,t,n,a){if(!e7.isFile(r.node.mode))throw new e7.ErrnoError(43);if(2&n)return 0;var o=l.slice(e,e+t);e7.msync(r,o,a,t,n)},getStreamFromFD:e=>e7.getStreamChecked(e),varargs:void 0,getStr:e=>re(e)},rt=()=>{var e=f[rr.varargs>>2];return rr.varargs+=4,e},rn=(e,r)=>r+2097152>>>0<4194305-!!e?(e>>>0)+0x100000000*r:NaN,ra=e=>{for(var r="";;){var t=l[e++];if(!t)return r;r+=String.fromCharCode(t)}},ro={},ri={},rs={},ru=class extends Error{constructor(e){super(e),this.name="BindingError"}},rl=e=>{throw new ru(e)};function rc(e,r,t={}){return function(e,r,t={}){var n=r.name;if(e||rl(`type "${n}" must have a positive integer typeid pointer`),ri.hasOwnProperty(e))if(t.ignoreDuplicateRegistrations)return;else rl(`Cannot register type '${n}' twice`);if(ri[e]=r,delete rs[e],ro.hasOwnProperty(e)){var a=ro[e];delete ro[e],a.forEach(e=>e())}}(e,r,t)}var rd=[],rf=[0,1,,1,null,1,!0,1,!1,1],rm=e=>{e>9&&0==--rf[e+1]&&(rf[e]=void 0,rd.push(e))},rp=e=>(e||rl(`Cannot use deleted val. handle = ${e}`),rf[e]),rg=e=>{switch(e){case void 0:return 2;case null:return 4;case!0:return 6;case!1:return 8;default:{let r=rd.pop()||rf.length;return rf[r]=e,rf[r+1]=1,r}}};function rv(e){return this.fromWireType(m[e>>2])}var rh={name:"emscripten::val",fromWireType:e=>{var r=rp(e);return rm(e),r},toWireType:(e,r)=>rg(r),readValueFromPointer:rv,destructorFunction:null},rb=(e,r,t)=>eH(e,l,r,t),ry=new TextDecoder("utf-16le"),rw=(e,r,t)=>{var n=e>>1,a=eW(d,n,r/2,t);return ry.decode(d.subarray(n,a))},rx=(e,r,t)=>{if((t??=0x7fffffff)<2)return 0;for(var n=r,a=(t-=2)<2*e.length?t/2:e.length,o=0;o>1]=i,r+=2}return c[r>>1]=0,r-n},r_=e=>2*e.length,rE=(e,r,t)=>{for(var n="",a=e>>2,o=0;!(o>=r/4);o++){var i=m[a+o];if(!i&&!t)break;n+=String.fromCodePoint(i)}return n},rS=(e,r,t)=>{if((t??=0x7fffffff)<4)return 0;for(var n=r,a=n+t-4,o=0;o65535&&o++,f[r>>2]=i,(r+=4)+4>a)break}return f[r>>2]=0,r-n},rk=e=>{for(var r=0,t=0;t65535&&t++,r+=4;return r},rC=[],rB=(e,r)=>{var t,n,a=ri[e];return void 0===a&&rl(`${r} has unknown type ${(n=ra(t=E(e)),w(t),n)}`),a},rT={},rL=e=>{var r=rT[e];return void 0===r?ra(e):r},rI=[0,31,60,91,121,152,182,213,244,274,305,335],rO=[0,31,59,90,120,151,181,212,243,273,304,334],rP=e=>{let r;return((r=e.getFullYear())%4==0&&(r%100!=0||r%400==0)?rI:rO)[e.getMonth()]+e.getDate()-1},rj=()=>performance.now(),rA=[],rF=(e,r,t)=>{var n=((e,r)=>{for(rA.length=0;t=l[e++];){var t,n=105!=t;n&=112!=t,r+=n&&r%8?4:0,rA.push(112==t?m[r>>2]:105==t?f[r>>2]:g[r>>3]),r+=n?8:4}return rA})(r,t);return ta[e](...n)},rD={},rM=e=>{var r=e$(e)+1,t=x(r);return t&&rb(e,t,r),t},rV=e=>{var r;return(r=/\bwasm-function\[\d+\]:(0x[0-9a-f]+)/.exec(e))?+r[1]:(r=/:(\d+):\d+(?:\)|$)/.exec(e))?0x80000000|r[1]:0},rz=e=>{for(var r of e){var t=rV(r);t&&(rD[t]=r)}},rR=()=>Error().stack.toString(),rU=e=>{var r,t,n=rD[e];if(!n)return 0;if(t=/^\s+at .*\.wasm\.(.*) \(.*\)$/.exec(n))r=t[1];else if(t=/^\s+at (.*) \(.*\)$/.exec(n))r=t[1];else{if(!(t=/^(.+?)@/.exec(n)))return 0;r=t[1]}return w(rU.ret??0),rU.ret=rM(r),rU.ret},rG=e=>{var r=ee.buffer.byteLength;try{return ee.grow((e-r+65535)/65536|0),eg(),1}catch(e){}},rN=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_color_buffer_float","EXT_conservative_depth","EXT_disjoint_timer_query_webgl2","EXT_texture_norm16","NV_shader_noperspective_interpolation","WEBGL_clip_cull_distance","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))},rW={counter:1,buffers:[],mappedBuffers:{},programs:[],framebuffers:[],renderbuffers:[],textures:[],shaders:[],vaos:[],contexts:[],offscreenCanvases:{},queries:[],samplers:[],transformFeedbacks:[],syncs:[],byteSizeByTypeRoot:5120,byteSizeByType:[1,1,2,2,4,4,4,2,3,4,8],stringCache:{},stringiCache:{},unpackAlignment:4,unpackRowLength:0,recordError:e=>{rW.lastError||(rW.lastError=e)},getNewId:e=>{for(var r=rW.counter++,t=e.length;t{for(var a=0;a>2]=i}},MAX_TEMP_BUFFER_SIZE:2097152,numTempVertexBuffersPerSize:64,log2ceilLookup:e=>32-Math.clz32(0===e?0:e-1),generateTempBuffers:(e,r)=>{var t=rW.log2ceilLookup(rW.MAX_TEMP_BUFFER_SIZE);r.tempVertexBufferCounters1=[],r.tempVertexBufferCounters2=[],r.tempVertexBufferCounters1.length=r.tempVertexBufferCounters2.length=t+1,r.tempVertexBuffers1=[],r.tempVertexBuffers2=[],r.tempVertexBuffers1.length=r.tempVertexBuffers2.length=t+1,r.tempIndexBuffers=[],r.tempIndexBuffers.length=t+1;for(var n=0;n<=t;++n){r.tempIndexBuffers[n]=null,r.tempVertexBufferCounters1[n]=r.tempVertexBufferCounters2[n]=0;var a=rW.numTempVertexBuffersPerSize;r.tempVertexBuffers1[n]=[],r.tempVertexBuffers2[n]=[];var o=r.tempVertexBuffers1[n],i=r.tempVertexBuffers2[n];o.length=i.length=a;for(var s=0;s>1,l=new Uint16Array(u),n=0,c=0;(l[n++]=c,!(n>=u))&&(l[n++]=c+1,!(n>=u)&&(l[n++]=c+2,!(n>=u))&&(l[n++]=c,!(n>=u))&&(l[n++]=c+2,!(n>=u))&&(l[n++]=c+3,!(n>=u)));){;c+=4}r.GLctx.bufferData(34963,l,35044),r.GLctx.bindBuffer(34963,null)}},getTempVertexBuffer:e=>{var r=rW.log2ceilLookup(e),t=rW.currentContext.tempVertexBuffers1[r],n=rW.currentContext.tempVertexBufferCounters1[r];rW.currentContext.tempVertexBufferCounters1[r]=rW.currentContext.tempVertexBufferCounters1[r]+1&rW.numTempVertexBuffersPerSize-1;var a=t[n];if(a)return a;var o=y.getParameter(34964);return t[n]=y.createBuffer(),y.bindBuffer(34962,t[n]),y.bufferData(34962,1<{var r=rW.log2ceilLookup(e),t=rW.currentContext.tempIndexBuffers[r];if(t)return t;var n=y.getParameter(34965);return rW.currentContext.tempIndexBuffers[r]=y.createBuffer(),y.bindBuffer(34963,rW.currentContext.tempIndexBuffers[r]),y.bufferData(34963,1<{if(rW.currentContext){var e=rW.currentContext.tempVertexBuffers1;rW.currentContext.tempVertexBuffers1=rW.currentContext.tempVertexBuffers2,rW.currentContext.tempVertexBuffers2=e,e=rW.currentContext.tempVertexBufferCounters1,rW.currentContext.tempVertexBufferCounters1=rW.currentContext.tempVertexBufferCounters2,rW.currentContext.tempVertexBufferCounters2=e;for(var r=rW.log2ceilLookup(rW.MAX_TEMP_BUFFER_SIZE),t=0;t<=r;++t)rW.currentContext.tempVertexBufferCounters1[t]=0}},getSource:(e,r,t,n)=>{for(var a="",o=0;o>2]:void 0;a+=re(m[t+4*o>>2],i)}return a},calcBufLength:(e,r,t,n)=>t>0?n*t:e*rW.byteSizeByType[r-rW.byteSizeByTypeRoot]*n,usedTempBuffers:[],preDrawHandleClientVertexAttribBindings:e=>{rW.resetBufferBinding=!1;for(var r=0;r{rW.resetBufferBinding&&y.bindBuffer(34962,rW.buffers[y.currentArrayBufferBinding])},createContext:(e,r)=>{e.getContextSafariWebGL2Fixed||(e.getContextSafariWebGL2Fixed=e.getContext,e.getContext=function(r,t){var n=e.getContextSafariWebGL2Fixed(r,t);return"webgl"==r==n instanceof WebGLRenderingContext?n:null});var t=r.majorVersion>1?e.getContext("webgl2",r):e.getContext("webgl",r);return t?rW.registerContext(t,r):0},registerContext:(e,r)=>{var t=rW.getNewId(rW.contexts),n={handle:t,attributes:r,version:r.majorVersion,GLctx:e};e.canvas&&(e.canvas.GLctxObject=n),rW.contexts[t]=n,(void 0===r.enableExtensionsByDefault||r.enableExtensionsByDefault)&&rW.initExtensions(n),n.maxVertexAttribs=n.GLctx.getParameter(34921),n.clientBuffers=[];for(var a=0;a(rW.currentContext=rW.contexts[e],r.ctx=y=rW.currentContext?.GLctx,!(e&&!y)),getContext:e=>rW.contexts[e],deleteContext:e=>{rW.currentContext===rW.contexts[e]&&(rW.currentContext=null),"object"==typeof JSEvents&&JSEvents.removeAllHandlersOnTarget(rW.contexts[e].GLctx.canvas),rW.contexts[e]?.GLctx.canvas&&(rW.contexts[e].GLctx.canvas.GLctxObject=void 0),rW.contexts[e]=null},initExtensions:e=>{if(!(e||=rW.currentContext).initExtensionsDone){e.initExtensionsDone=!0;var r=e.GLctx;r.multiDrawWebgl=r.getExtension("WEBGL_multi_draw"),r.extPolygonOffsetClamp=r.getExtension("EXT_polygon_offset_clamp"),r.extClipControl=r.getExtension("EXT_clip_control"),r.webglPolygonMode=r.getExtension("WEBGL_polygon_mode"),(e=>{var r=e.getExtension("ANGLE_instanced_arrays");if(r)return 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)})(r),(e=>{var r=e.getExtension("OES_vertex_array_object");if(r)return e.createVertexArray=()=>r.createVertexArrayOES(),e.deleteVertexArray=e=>r.deleteVertexArrayOES(e),e.bindVertexArray=e=>r.bindVertexArrayOES(e),e.isVertexArray=e=>r.isVertexArrayOES(e)})(r),(e=>{var r=e.getExtension("WEBGL_draw_buffers");if(r)return e.drawBuffers=(e,t)=>r.drawBuffersWEBGL(e,t)})(r),r.dibvbi=r.getExtension("WEBGL_draw_instanced_base_vertex_base_instance"),r.mdibvbi=r.getExtension("WEBGL_multi_draw_instanced_base_vertex_base_instance"),e.version>=2&&(r.disjointTimerQueryExt=r.getExtension("EXT_disjoint_timer_query_webgl2")),(e.version<2||!r.disjointTimerQueryExt)&&(r.disjointTimerQueryExt=r.getExtension("EXT_disjoint_timer_query")),rN(r).forEach(e=>{e.includes("lose_context")||e.includes("debug")||r.getExtension(e)})}}},rJ=["default","low-power","high-performance"],rX=[0,"u">typeof document?document:0,"u">typeof window?window:0],r$=e=>{if("number"==typeof e&&(e=re(e)),!e||"#canvas"===e)return void 0!==rW&&rW.offscreenCanvases.canvas?rW.offscreenCanvases.canvas:r.canvas;if(void 0!==rW&&rW.offscreenCanvases[e])return rW.offscreenCanvases[e];var t=e;return t&&("number"==typeof t&&(t=rX[t]||re(t)),"#window"!==t)?"#document"===t?document:"#screen"===t?screen:"#canvas"===t?r.canvas:"string"==typeof t?"u">typeof document?document.getElementById(t):null:t:window},rH=e=>{var r=e$(e)+1,t=K(r);return rb(e,t,r),t},rq=(e,r)=>{m[e>>2]=r;var t=m[e>>2];m[e+4>>2]=(r-t)/0x100000000},rY=e=>m[e>>2]+0x100000000*f[e+4>>2],rQ=[],rK={Internals:{jsObjects:[],jsObjectInsert:(e,r)=>{e>>>=0,rK.Internals.jsObjects[e]=r},bufferOnUnmaps:[],futures:[],futureInsert:(e,r)=>{}},getJsObject:e=>{if(e)return e>>>=0,rK.Internals.jsObjects[e]},importJsAdapter:(e,r=0)=>{var t=U(r);return rK.Internals.jsObjects[t]=e,t},importJsBindGroup:(e,r=0)=>{var t=S(r);return rK.Internals.jsObjects[t]=e,t},importJsBindGroupLayout:(e,r=0)=>{var t=k(r);return rK.Internals.jsObjects[t]=e,t},importJsBuffer:(e,r=0)=>{"pending"==e.mapState&&ev(void 0);var t="mapped"==e.mapState?3:1,n=G(r,t);return rK.Internals.jsObjectInsert(n,e),"mapped"==e.mapState&&(rK.Internals.bufferOnUnmaps[n]=[]),n},importJsCommandBuffer:(e,r=0)=>{var t=C(r);return rK.Internals.jsObjects[t]=e,t},importJsCommandEncoder:(e,r=0)=>{var t=B(r);return rK.Internals.jsObjects[t]=e,t},importJsComputePassEncoder:(e,r=0)=>{var t=T(r);return rK.Internals.jsObjects[t]=e,t},importJsComputePipeline:(e,r=0)=>{var t=L(r);return rK.Internals.jsObjects[t]=e,t},importJsDevice:(e,r=0)=>{var t=W(r),n=N(r,t);return rK.Internals.jsObjectInsert(t,e.queue),rK.Internals.jsObjectInsert(n,e),n},importJsExternalTexture:(e,r=0)=>{var t=I(r);return rK.Internals.jsObjects[t]=e,t},importJsPipelineLayout:(e,r=0)=>{var t=O(r);return rK.Internals.jsObjects[t]=e,t},importJsQuerySet:(e,r=0)=>{var t=P(r);return rK.Internals.jsObjects[t]=e,t},importJsQueue:(e,r=0)=>{var t=W(r);return rK.Internals.jsObjects[t]=e,t},importJsRenderBundle:(e,r=0)=>{var t=j(r);return rK.Internals.jsObjects[t]=e,t},importJsRenderBundleEncoder:(e,r=0)=>{var t=A(r);return rK.Internals.jsObjects[t]=e,t},importJsRenderPassEncoder:(e,r=0)=>{var t=F(r);return rK.Internals.jsObjects[t]=e,t},importJsRenderPipeline:(e,r=0)=>{var t=D(r);return rK.Internals.jsObjects[t]=e,t},importJsSampler:(e,r=0)=>{var t=M(r);return rK.Internals.jsObjects[t]=e,t},importJsShaderModule:(e,r=0)=>{var t=J(r);return rK.Internals.jsObjects[t]=e,t},importJsSurface:(e,r=0)=>{var t=V(r);return rK.Internals.jsObjects[t]=e,t},importJsTexture:(e,r=0)=>{var t=z(r);return rK.Internals.jsObjects[t]=e,t},importJsTextureView:(e,r=0)=>{var t=R(r);return rK.Internals.jsObjects[t]=e,t},errorCallback:(e,r,t,n)=>{var a,o=eD(),i=rH(t);((a=rQ[e])||(rQ[e]=a=er.get(e)),a)(r,i,n),Q(o)},iterateExtensions:(e,r)=>{for(var t=m[e>>2];t;t=m[t>>2])r[f[t+4>>2]](t)},setStringView:(e,r,t)=>{m[e>>2]=r,m[e+4>>2]=t},makeStringFromStringView:e=>re(m[e>>2],m[e+4>>2]),makeStringFromOptionalStringView:e=>{var r=m[e>>2],t=m[e+4>>2];return r?re(r,t):0===t?"":void 0},makeColor:e=>({r:g[e>>3],g:g[e+8>>3],b:g[e+16>>3],a:g[e+24>>3]}),makeExtent3D:e=>({width:m[e>>2],height:m[e+4>>2],depthOrArrayLayers:m[e+8>>2]}),makeOrigin3D:e=>({x:m[e>>2],y:m[e+4>>2],z:m[e+8>>2]}),makeTexelCopyTextureInfo:e=>({texture:rK.getJsObject(m[e>>2]),mipLevel:m[e+4>>2],origin:rK.makeOrigin3D(e+8),aspect:rK.TextureAspect[f[e+20>>2]]}),makeTexelCopyBufferLayout:e=>{var r=m[e+8>>2],t=m[e+12>>2];return{offset:rY(e),bytesPerRow:0xffffffff===r?void 0:r,rowsPerImage:0xffffffff===t?void 0:t}},makeTexelCopyBufferInfo:e=>{var r=rK.makeTexelCopyBufferLayout(e+0);return r.buffer=rK.getJsObject(m[e+16>>2]),r},makePassTimestampWrites:e=>{if(0!==e)return{querySet:rK.getJsObject(m[e+4>>2]),beginningOfPassWriteIndex:m[e+8>>2],endOfPassWriteIndex:m[e+12>>2]}},makePipelineConstants:(e,r)=>{if(e){for(var t={},n=0;n>3]}return t}},makePipelineLayout:e=>e?rK.getJsObject(e):"auto",makeComputeState:e=>{if(e)return{module:rK.getJsObject(m[e+4>>2]),constants:rK.makePipelineConstants(m[e+16>>2],m[e+20>>2]),entryPoint:rK.makeStringFromOptionalStringView(e+8)}},makeComputePipelineDesc:e=>({label:rK.makeStringFromOptionalStringView(e+4),layout:rK.makePipelineLayout(m[e+12>>2]),compute:rK.makeComputeState(e+16)}),makeRenderPipelineDesc:e=>{function r(e){if(e)return{operation:rK.BlendOperation[f[e>>2]],srcFactor:rK.BlendFactor[f[e+4>>2]],dstFactor:rK.BlendFactor[f[e+8>>2]]}}function t(e){return{compare:rK.CompareFunction[f[e>>2]],failOp:rK.StencilOperation[f[e+4>>2]],depthFailOp:rK.StencilOperation[f[e+8>>2]],passOp:rK.StencilOperation[f[e+12>>2]]}}return{label:rK.makeStringFromOptionalStringView(e+4),layout:rK.makePipelineLayout(m[e+12>>2]),vertex:function(e){if(e)return{module:rK.getJsObject(m[e+4>>2]),constants:rK.makePipelineConstants(m[e+16>>2],m[e+20>>2]),buffers:function(e,r){if(e){for(var t=[],n=0;n>2]],t=m[e+16>>2];return r||t?{arrayStride:rY(e+8),stepMode:r,attributes:function(e,r){for(var t,n=[],a=0;a>2]],offset:rY(t+8),shaderLocation:m[t+16>>2]}));return n}(t,m[e+20>>2])}:null}}(r+24*n));return t}}(m[e+24>>2],m[e+28>>2]),entryPoint:rK.makeStringFromOptionalStringView(e+8)}}(e+16),primitive:function(e){if(e)return{topology:rK.PrimitiveTopology[f[e+4>>2]],stripIndexFormat:rK.IndexFormat[f[e+8>>2]],frontFace:rK.FrontFace[f[e+12>>2]],cullMode:rK.CullMode[f[e+16>>2]],unclippedDepth:!!m[e+20>>2]}}(e+48),depthStencil:function(e){if(e)return{format:rK.TextureFormat[f[e+4>>2]],depthWriteEnabled:!!m[e+8>>2],depthCompare:rK.CompareFunction[f[e+12>>2]],stencilFront:t(e+16),stencilBack:t(e+32),stencilReadMask:m[e+48>>2],stencilWriteMask:m[e+52>>2],depthBias:f[e+56>>2],depthBiasSlopeScale:p[e+60>>2],depthBiasClamp:p[e+64>>2]}}(m[e+72>>2]),multisample:function(e){if(e)return{count:m[e+4>>2],mask:m[e+8>>2],alphaToCoverageEnabled:!!m[e+12>>2]}}(e+76),fragment:function(e){if(e)return{module:rK.getJsObject(m[e+4>>2]),constants:rK.makePipelineConstants(m[e+16>>2],m[e+20>>2]),targets:function(e,t){for(var n=[],a=0;a>2]];return t?{format:t,blend:function(e){if(e)return{alpha:r(e+12),color:r(e+0)}}(m[e+8>>2]),writeMask:m[e+16>>2]}:void 0}(t+24*a));return n}(m[e+24>>2],m[e+28>>2]),entryPoint:rK.makeStringFromOptionalStringView(e+8)}}(m[e+92>>2])}},fillLimitStruct:(e,r)=>{function t(t,n){var a=e[t];m[r+n>>2]=a}function n(t,n){rq(r+n,e[t])}t("maxTextureDimension1D",4),t("maxTextureDimension2D",8),t("maxTextureDimension3D",12),t("maxTextureArrayLayers",16),t("maxBindGroups",20),t("maxBindGroupsPlusVertexBuffers",24),t("maxBindingsPerBindGroup",28),t("maxDynamicUniformBuffersPerPipelineLayout",32),t("maxDynamicStorageBuffersPerPipelineLayout",36),t("maxSampledTexturesPerShaderStage",40),t("maxSamplersPerShaderStage",44),t("maxStorageBuffersPerShaderStage",48),t("maxStorageTexturesPerShaderStage",52),t("maxUniformBuffersPerShaderStage",56),t("minUniformBufferOffsetAlignment",80),t("minStorageBufferOffsetAlignment",84),n("maxUniformBufferBindingSize",64),n("maxStorageBufferBindingSize",72),t("maxVertexBuffers",88),n("maxBufferSize",96),t("maxVertexAttributes",104),t("maxVertexBufferArrayStride",108),t("maxInterStageShaderVariables",112),t("maxColorAttachments",116),t("maxColorAttachmentBytesPerSample",120),t("maxComputeWorkgroupStorageSize",124),t("maxComputeInvocationsPerWorkgroup",128),t("maxComputeWorkgroupSizeX",132),t("maxComputeWorkgroupSizeY",136),t("maxComputeWorkgroupSizeZ",140),t("maxComputeWorkgroupsPerDimension",144),void 0!==e.maxImmediateSize&&t("maxImmediateSize",148)},fillAdapterInfoStruct:(e,r)=>{m[r+52>>2]=e.subgroupMinSize,m[r+56>>2]=e.subgroupMaxSize;var t=rM(e.vendor+e.architecture+e.device+e.description),n=e$(e.vendor);rK.setStringView(r+4,t,n),t+=n;var a=e$(e.architecture);rK.setStringView(r+12,t,a),t+=a;var o=e$(e.device);rK.setStringView(r+20,t,o),t+=o;var i=e$(e.description);rK.setStringView(r+28,t,i),t+=i,f[r+36>>2]=2;var s=e.isFallbackAdapter?3:4;f[r+40>>2]=s,m[r+44>>2]=0,m[r+48>>2]=0},AddressMode:[,"clamp-to-edge","repeat","mirror-repeat"],BlendFactor:[,"zero","one","src","one-minus-src","src-alpha","one-minus-src-alpha","dst","one-minus-dst","dst-alpha","one-minus-dst-alpha","src-alpha-saturated","constant","one-minus-constant","src1","one-minus-src1","src1alpha","one-minus-src1alpha"],BlendOperation:[,"add","subtract","reverse-subtract","min","max"],BufferBindingType:[,,"uniform","storage","read-only-storage"],BufferMapState:[,"unmapped","pending","mapped"],CompareFunction:[,"never","less","equal","less-equal","greater","not-equal","greater-equal","always"],CompilationInfoRequestStatus:[,"success","callback-cancelled"],ComponentSwizzle:[,"0","1","r","g","b","a"],CompositeAlphaMode:[,"opaque","premultiplied","unpremultiplied","inherit"],CullMode:[,"none","front","back"],ErrorFilter:[,"validation","out-of-memory","internal"],FeatureLevel:[,"compatibility","core"],FeatureName:{1:"core-features-and-limits",2:"depth-clip-control",3:"depth32float-stencil8",4:"texture-compression-bc",5:"texture-compression-bc-sliced-3d",6:"texture-compression-etc2",7:"texture-compression-astc",8:"texture-compression-astc-sliced-3d",9:"timestamp-query",10:"indirect-first-instance",11:"shader-f16",12:"rg11b10ufloat-renderable",13:"bgra8unorm-storage",14:"float32-filterable",15:"float32-blendable",16:"clip-distances",17:"dual-source-blending",18:"subgroups",19:"texture-formats-tier1",20:"texture-formats-tier2",21:"primitive-index",22:"texture-component-swizzle",327692:"chromium-experimental-unorm16-texture-formats",327729:"chromium-experimental-multi-draw-indirect"},FilterMode:[,"nearest","linear"],FrontFace:[,"ccw","cw"],IndexFormat:[,"uint16","uint32"],InstanceFeatureName:[,"timed-wait-any","shader-source-spirv","multiple-devices-per-adapter"],LoadOp:[,"load","clear"],MipmapFilterMode:[,"nearest","linear"],OptionalBool:["false","true"],PowerPreference:[,"low-power","high-performance"],PredefinedColorSpace:[,"srgb","display-p3"],PrimitiveTopology:[,"point-list","line-list","line-strip","triangle-list","triangle-strip"],QueryType:[,"occlusion","timestamp"],SamplerBindingType:[,,"filtering","non-filtering","comparison"],Status:[,"success","error"],StencilOperation:[,"keep","zero","replace","invert","increment-clamp","decrement-clamp","increment-wrap","decrement-wrap"],StorageTextureAccess:[,,"write-only","read-only","read-write"],StoreOp:[,"store","discard"],SurfaceGetCurrentTextureStatus:[,"success-optimal","success-suboptimal","timeout","outdated","lost","error"],TextureAspect:[,"all","stencil-only","depth-only"],TextureDimension:[,"1d","2d","3d"],TextureFormat:[,"r8unorm","r8snorm","r8uint","r8sint","r16unorm","r16snorm","r16uint","r16sint","r16float","rg8unorm","rg8snorm","rg8uint","rg8sint","r32float","r32uint","r32sint","rg16unorm","rg16snorm","rg16uint","rg16sint","rg16float","rgba8unorm","rgba8unorm-srgb","rgba8snorm","rgba8uint","rgba8sint","bgra8unorm","bgra8unorm-srgb","rgb10a2uint","rgb10a2unorm","rg11b10ufloat","rgb9e5ufloat","rg32float","rg32uint","rg32sint","rgba16unorm","rgba16snorm","rgba16uint","rgba16sint","rgba16float","rgba32float","rgba32uint","rgba32sint","stencil8","depth16unorm","depth24plus","depth24plus-stencil8","depth32float","depth32float-stencil8","bc1-rgba-unorm","bc1-rgba-unorm-srgb","bc2-rgba-unorm","bc2-rgba-unorm-srgb","bc3-rgba-unorm","bc3-rgba-unorm-srgb","bc4-r-unorm","bc4-r-snorm","bc5-rg-unorm","bc5-rg-snorm","bc6h-rgb-ufloat","bc6h-rgb-float","bc7-rgba-unorm","bc7-rgba-unorm-srgb","etc2-rgb8unorm","etc2-rgb8unorm-srgb","etc2-rgb8a1unorm","etc2-rgb8a1unorm-srgb","etc2-rgba8unorm","etc2-rgba8unorm-srgb","eac-r11unorm","eac-r11snorm","eac-rg11unorm","eac-rg11snorm","astc-4x4-unorm","astc-4x4-unorm-srgb","astc-5x4-unorm","astc-5x4-unorm-srgb","astc-5x5-unorm","astc-5x5-unorm-srgb","astc-6x5-unorm","astc-6x5-unorm-srgb","astc-6x6-unorm","astc-6x6-unorm-srgb","astc-8x5-unorm","astc-8x5-unorm-srgb","astc-8x6-unorm","astc-8x6-unorm-srgb","astc-8x8-unorm","astc-8x8-unorm-srgb","astc-10x5-unorm","astc-10x5-unorm-srgb","astc-10x6-unorm","astc-10x6-unorm-srgb","astc-10x8-unorm","astc-10x8-unorm-srgb","astc-10x10-unorm","astc-10x10-unorm-srgb","astc-12x10-unorm","astc-12x10-unorm-srgb","astc-12x12-unorm","astc-12x12-unorm-srgb"],TextureSampleType:[,,"float","unfilterable-float","depth","sint","uint"],TextureViewDimension:[,"1d","2d","2d-array","cube","cube-array","3d"],ToneMappingMode:[,"standard","extended"],VertexFormat:[,"uint8","uint8x2","uint8x4","sint8","sint8x2","sint8x4","unorm8","unorm8x2","unorm8x4","snorm8","snorm8x2","snorm8x4","uint16","uint16x2","uint16x4","sint16","sint16x2","sint16x4","unorm16","unorm16x2","unorm16x4","snorm16","snorm16x2","snorm16x4","float16","float16x2","float16x4","float32","float32x2","float32x3","float32x4","uint32","uint32x2","uint32x3","uint32x4","sint32","sint32x2","sint32x3","sint32x4","unorm10-10-10-2","unorm8x4-bgra"],VertexStepMode:[,"vertex","instance"],WGSLLanguageFeatureName:[,"readonly_and_readwrite_storage_textures","packed_4x8_integer_dot_product","unrestricted_pointer_parameters","pointer_composite_access","uniform_buffer_standard_layout","subgroup_id"]},rZ={},r0=()=>{if(!r0.strings){var e={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:("object"==typeof navigator&&navigator.language||"C").replace("-","_")+".UTF-8",_:ei||"./this.program"};for(var r in rZ)void 0===rZ[r]?delete e[r]:e[r]=rZ[r];var t=[];for(var r in e)t.push(`${r}=${e[r]}`);r0.strings=t}return r0.strings},r2=[],r1=()=>{var e=rN(y);return e.concat(e.map(e=>"GL_"+e))},r4=(e,r,t)=>{if(!r)return void rW.recordError(1281);var n=void 0;switch(e){case 36346:n=1;break;case 36344:0!=t&&1!=t&&rW.recordError(1280);return;case 34814:case 36345:n=0;break;case 34466:var a=y.getParameter(34467);n=a?a.length:0;break;case 33309:if(rW.currentContext.version<2)return void rW.recordError(1282);n=r1().length;break;case 33307:case 33308:if(rW.currentContext.version<2)return void rW.recordError(1280);n=3*(33307==e)}if(void 0===n){var o=y.getParameter(e);switch(typeof o){case"number":n=o;break;case"boolean":n=+!!o;break;case"string":rW.recordError(1280);return;case"object":if(null===o)switch(e){case 34964:case 35725:case 34965:case 36006:case 36007:case 32873:case 34229:case 36662:case 36663:case 35053:case 35055:case 36010:case 35097:case 35869:case 32874:case 36389:case 35983:case 35368:case 34068:n=0;break;default:return void rW.recordError(1280)}else if(o instanceof Float32Array||o instanceof Uint32Array||o instanceof Int32Array||o instanceof Array){for(var i=0;i>2]=o[i];break;case 2:p[r+4*i>>2]=o[i];break;case 4:u[r+i]=+!!o[i]}return}else try{n=0|o.name}catch(r){rW.recordError(1280),ed(`GL_INVALID_ENUM in glGet${t}v: Unknown object returned from WebGL getParameter(${e})! (error: ${r})`);return}break;default:rW.recordError(1280),ed(`GL_INVALID_ENUM in glGet${t}v: Native code calling glGet${t}v(${e}) and it returns ${o} of type ${typeof o}!`);return}}switch(t){case 1:rq(r,n);break;case 0:f[r>>2]=n;break;case 2:p[r>>2]=n;break;case 4:u[r]=+!!n}},r3=e=>"]"==e.slice(-1)&&e.lastIndexOf("["),r8=e=>0==(e-=5120)?u:1==e?l:2==e?c:4==e?f:6==e?p:5==e||28922==e||28520==e||30779==e||30782==e?m:d,r6=(e,r)=>e>>>31-Math.clz32(r.BYTES_PER_ELEMENT),r5=(e,r,t,n,a,o)=>{var i,s=r8(e),u=({5:3,6:4,8:2,29502:3,29504:4,26917:2,26918:2,29846:3,29847:4}[r-6402]||1)*s.BYTES_PER_ELEMENT,l=n*((rW.unpackRowLength||t)*u+(i=rW.unpackAlignment)-1&-i);return s.subarray(r6(a,s),r6(a+l,s))},r9=e=>{var r=y.currentProgram;if(r){var t=r.uniformLocsById[e];return"number"==typeof t&&(r.uniformLocsById[e]=t=y.getUniformLocation(r,r.uniformArrayNamesById[e]+(t>0?`[${t}]`:""))),t}rW.recordError(1282)},r7=[],te=[];e7.createPreloadedFile=(e,r,t,n,a,o,i,s,u,l)=>{e9(e,r,t,n,a,s,u,l).then(o).catch(i)},e7.preloadFile=e9,e7.staticInit(),"u">typeof MainLoop&&MainLoop.preMainLoop.push(()=>rW.newRenderingFrameStarted());for(let e=0;e<32;++e)r2.push(Array(e));for(var tr=new Float32Array(288),tt=0;tt<=288;++tt)r7[tt]=tr.subarray(0,tt);for(var tn=new Int32Array(288),tt=0;tt<=288;++tt)te[tt]=tn.subarray(0,tt);if(r.preloadPlugins&&(eT=r.preloadPlugins),r.noExitRuntime&&(eF=r.noExitRuntime),r.print&&(ec=r.print),r.printErr&&(ed=r.printErr),r.wasmBinary&&(a=r.wasmBinary),r.arguments&&r.arguments,r.thisProgram&&(ei=r.thisProgram),r.preInit)for("function"==typeof r.preInit&&(r.preInit=[r.preInit]);r.preInit.length>0;)r.preInit.shift()();r.addRunDependency=e6,r.removeRunDependency=e8,r.ccall=(e,t,n,a,o)=>{var i={string:e=>{var r=0;return null!=e&&0!==e&&(r=rH(e)),r},array:e=>{let r;var t=(r=e.length,K(r));return u.set(e,t),t}},s=r["_"+e],l=[],c=0;if(a)for(var d=0;de7.unlink(...e),r.FS_createPath=(...e)=>e7.createPath(...e),r.FS_createDevice=(...e)=>e7.createDevice(...e),r.FS_createDataFile=e1,r.FS_createLazyFile=(...e)=>e7.createLazyFile(...e);var ta={1484533:e=>{let r=rp(e).getContext("webgpu");return rK.importJsTexture(r.getCurrentTexture())},1484676:(e,r,t,n,a)=>{let o=rp(e),i=rK.getJsObject(r),s=rK.getJsObject(t);i.queue.copyExternalImageToTexture({source:o},{texture:s},[n,a])},1484935:(e,r,t,n)=>{let a=rp(e),o=rK.getJsObject(r),i=rK.getJsObject(t),s=rK.getJsObject(n),u=o.createBindGroup({layout:s,entries:[{binding:0,resource:i},{binding:1,resource:a}]});return rK.importJsBindGroup(u)},1485305:(e,r)=>{let t=rp(e),n=rp(r);n.getContext("2d").drawImage(t,0,0,n.width,n.height)},1485470:(e,r)=>{let t=rp(e),n=rp(r),a=n.getContext("2d"),o=new ImageData(t,n.width,n.height);a.putImageData(o,0,0)},1485694:(e,r)=>{let t=rp(e),n=rp(r),a=t.getContext("2d").getImageData(0,0,t.width,t.height);n.set(a.data)},1485898:()=>"u">typeof HTMLCanvasElement,1485953:()=>!!r.preinitializedWebGPUDevice,1486004:()=>{rX["#canvas"]=r.canvas}};r._kVersionStampBuildChangelistStr=1024,r._kVersionStampCitcSnapshotStr=1056,r._kVersionStampCitcWorkspaceIdStr=1088,r._kVersionStampSourceUriStr=1600,r._kVersionStampBuildClientStr=2112,r._kVersionStampBuildClientMintStatusStr=2624,r._kVersionStampBuildCompilerStr=2656,r._kVersionStampBuildDateTimePstStr=3168,r._kVersionStampBuildDepotPathStr=3200,r._kVersionStampBuildIdStr=3712,r._kVersionStampBuildInfoStr=4224,r._kVersionStampBuildLabelStr=4736,r._kVersionStampBuildTargetStr=5248,r._kVersionStampBuildTimestampStr=5760,r._kVersionStampBuildToolStr=5792,r._kVersionStampG3BuildTargetStr=6304,r._kVersionStampVerifiableStr=6816,r._kVersionStampBuildFdoTypeStr=6848,r._kVersionStampBuildBaselineChangelistStr=6880,r._kVersionStampBuildLtoTypeStr=6912,r._kVersionStampBuildPropellerTypeStr=6944,r._kVersionStampBuildPghoTypeStr=6976,r._kVersionStampBuildUsernameStr=7008,r._kVersionStampBuildHostnameStr=7520,r._kVersionStampBuildDirectoryStr=8032,r._kVersionStampBuildChangelistInt=8544,r._kVersionStampCitcSnapshotInt=8552,r._kVersionStampBuildClientMintStatusInt=8556,r._kVersionStampBuildTimestampInt=8560,r._kVersionStampVerifiableInt=8568,r._kVersionStampBuildCoverageEnabledInt=8572,r._kVersionStampBuildBaselineChangelistInt=8576,r._kVersionStampPrecookedTimestampStr=8592,r._kVersionStampPrecookedClientInfoStr=9104;var to={gd:function(e,t){let n=r.canvas.getContext("webgl2"),a=n.createQuery();r.WEBGL_SHADER_CALC_METRICS=r.WEBGL_SHADER_CALC_METRICS||{},r.WEBGL_SHADER_CALC_METRICS[re(e)]={query:a,repetitions:t},r.WEBGL_QUERY_TIMER_EXT=r.WEBGL_QUERY_TIMER_EXT||n.getExtension("EXT_disjoint_timer_query_webgl2"),n.beginQuery(r.WEBGL_QUERY_TIMER_EXT.TIME_ELAPSED_EXT,a)},fd:function(e){r.canvas.getContext("webgl2").endQuery(r.WEBGL_QUERY_TIMER_EXT.TIME_ELAPSED_EXT,r.WEBGL_SHADER_CALC_METRICS[re(e)].query)},ed:function(){let e=r.preinitializedWebGPUDevice;return rM(e.adapterInfo?e.adapterInfo.architecture:"Unknown")},dd:function(){let e=r.preinitializedWebGPUDevice;return rM(e.adapterInfo?e.adapterInfo.description:"Unknown")},cd:function(){let e=r.preinitializedWebGPUDevice;return rM(e.adapterInfo?e.adapterInfo.device:"Unknown")},bd:function(){let e=r.preinitializedWebGPUDevice;return rM(e.adapterInfo?e.adapterInfo.vendor:"Unknown")},ad:function(e,t){r._wrapEmptyPacketListenerOutput(e,t)},$c:function(e,t,n,a,o,i,s,u){let l=r._imageConverter(t,n,a,o,i,s,Float32Array);r._wrapSimpleListenerOutput(e,l,u)},_c:function(e,t,n,a,o,i,s,u){let l=r._imageConverter(t,n,a,o,i,s,Float32Array);r._wrapSimpleListenerOutput(e,l,!1,u)},ob:function(e,t,n,a,o){let i=a?r.HEAPU8.slice(t,t+n):new Uint8Array(r.HEAPU8.buffer,t,n);r._wrapSimpleListenerOutput(e,i,o)},Zc:function(e,t,n){r._wrapSimpleListenerOutput(e,t,n)},Yc:function(e,t,n){r._wrapSimpleListenerOutput(e,t,n)},Xc:function(e,t,n){r._wrapSimpleListenerOutput(e,t,n)},Wc:function(e,t,n){r._wrapSimpleListenerOutput(e,t,n)},Vc:function(e,t,n){r._wrapSimpleListenerOutput(e,re(t),n)},Uc:function(e,t,n){r._wrapSimpleListenerOutput(e,t,n)},Tc:function(e,t,n,a,o,i,s,u){let l=r._imageConverter(t,n,a,o,i,s,Uint8Array);r._wrapSimpleListenerOutput(e,l,u)},Sc:function(e,t,n,a,o,i,s,u){let l=r._imageConverter(t,n,a,o,i,s,Uint8Array);r._wrapSimpleListenerOutput(e,l,!1,u)},O:function(e,t){r._wrapSimpleListenerOutput(e,void 0,!0,t)},Rc:function(e,t,n){r._wrapSimpleListenerOutput(e,t,!1,n)},Qc:function(e,t,n){r._wrapSimpleListenerOutput(e,t,!1,n)},Pc:function(e,t,n){r._wrapSimpleListenerOutput(e,t,!1,n)},Oc:function(e,t,n){r._wrapSimpleListenerOutput(e,t,!1,n)},Nc:function(e,t,n,a,o){let i=a?r.HEAPU8.slice(t,t+n):new Uint8Array(r.HEAPU8.buffer,t,n);r._wrapSimpleListenerOutput(e,i,!1,o)},Mc:function(e,t,n){r._wrapSimpleListenerOutput(e,re(t),!1,n)},Lc:function(e,t,n){r._wrapSimpleListenerOutput(e,t,!1,n)},Kc:function(e,t,n,a,o){r._wrapSimpleListenerOutput(e,{data:rW.textures[t],width:n,height:a},o)},Jc:function(e,t,n,a,o){r._wrapSimpleListenerOutput(e,{data:rW.textures[t],width:n,height:a},!1,o)},Oa:function(e,t){if(r.errorListener){let n=re(t);r.errorListener(e,n)}},nb:function(){r._imageConverter||(r._imageConverter=(e,t,n,a,o,i,s)=>({data:new s(i?r.HEAPU8.slice(e,e+t).buffer:r.HEAPU8.buffer,e,n*a*o),width:n,height:a}))},u:function(){r._wrapSimpleListenerOutput||(r._wrapSimpleListenerOutput=(e,...t)=>{if(r.simpleListeners){let n=re(e);r.simpleListeners[n]&&r.simpleListeners[n](...t)}}),r._wrapEmptyPacketListenerOutput||(r._wrapEmptyPacketListenerOutput=(e,t)=>{if(r.emptyPacketListeners){let n=re(e);r.emptyPacketListeners[n]&&r.emptyPacketListeners[n](t)}})},mb:function(){return r&&r.gpuOriginForWebTexturesIsBottomLeft},xb:function(e,r){return Asyncify.handleAsync(async()=>{let t=rK.getJsObject(e);"mapSync"in t?t.mapSync(GPUMapMode.READ):await t.mapAsync(GPUMapMode.READ);let n=t.getMappedRange();l.set(new Uint8Array(n),r),t.unmap()})},o:(e,r,t)=>{throw new eM(e).init(r,t),eV=e,ez++,eV},Ic:function(e){try{var r=rr.getStreamFromFD(e);return e7.dupStream(r).fd}catch(e){if(void 0===e7||"ErrnoError"!==e.name)throw e;return-e.errno}},Hc:function(e,r,t,n){try{if(r=rr.getStr(r),r=rr.calculateAt(e,r),-8&t)return -28;var a=e7.lookupPath(r,{follow:!0}).node;if(!a)return -44;var o="";if(4&t&&(o+="r"),2&t&&(o+="w"),1&t&&(o+="x"),o&&e7.nodePermissions(a,o))return -2;return 0}catch(e){if(void 0===e7||"ErrnoError"!==e.name)throw e;return-e.errno}},lb:function(e,r,t){rr.varargs=t;try{var n=rr.getStreamFromFD(e);switch(r){case 0:var a=rt();if(a<0)break;for(;e7.streams[a];)a++;return e7.dupStream(n,a).fd;case 1:case 2:case 13:case 14:return 0;case 3:return n.flags;case 4:var a=rt();return n.flags|=a,0;case 12:var a=rt();return c[a+0>>1]=2,0}return -28}catch(e){if(void 0===e7||"ErrnoError"!==e.name)throw e;return-e.errno}},Gc:function(e,r){try{return rr.writeStat(r,e7.fstat(e))}catch(e){if(void 0===e7||"ErrnoError"!==e.name)throw e;return-e.errno}},Lb:function(e,r,t){var n=rn(r,t);try{if(isNaN(n))return -61;return e7.ftruncate(e,n),0}catch(e){if(void 0===e7||"ErrnoError"!==e.name)throw e;return-e.errno}},Fc:function(e,r,t){rr.varargs=t;try{var n=rr.getStreamFromFD(e);switch(r){case 21509:case 21510:case 21511:case 21512:case 21524:case 21515:if(!n.tty)return -59;return 0;case 21505:if(!n.tty)return -59;if(n.tty.ops.ioctl_tcgets){var a=n.tty.ops.ioctl_tcgets(n),o=rt();f[o>>2]=a.c_iflag||0,f[o+4>>2]=a.c_oflag||0,f[o+8>>2]=a.c_cflag||0,f[o+12>>2]=a.c_lflag||0;for(var i=0;i<32;i++)u[o+i+17]=a.c_cc[i]||0}return 0;case 21506:case 21507:case 21508:if(!n.tty)return -59;if(n.tty.ops.ioctl_tcsets){for(var o=rt(),s=f[o>>2],l=f[o+4>>2],d=f[o+8>>2],m=f[o+12>>2],p=[],i=0;i<32;i++)p.push(u[o+i+17]);return n.tty.ops.ioctl_tcsets(n.tty,r,{c_iflag:s,c_oflag:l,c_cflag:d,c_lflag:m,c_cc:p})}return 0;case 21519:if(!n.tty)return -59;var o=rt();return f[o>>2]=0,0;case 21520:if(!n.tty)return -59;return -28;case 21537:case 21531:var o=rt();return e7.ioctl(n,r,o);case 21523:if(!n.tty)return -59;if(n.tty.ops.ioctl_tiocgwinsz){var g=n.tty.ops.ioctl_tiocgwinsz(n.tty),o=rt();c[o>>1]=g[0],c[o+2>>1]=g[1]}return 0;default:return -28}}catch(e){if(void 0===e7||"ErrnoError"!==e.name)throw e;return-e.errno}},Ec:function(e,r){try{return e=rr.getStr(e),rr.writeStat(r,e7.lstat(e))}catch(e){if(void 0===e7||"ErrnoError"!==e.name)throw e;return-e.errno}},Dc:function(e,r,t,n){try{r=rr.getStr(r);var a=256&n,o=4096&n;return n&=-6401,r=rr.calculateAt(e,r,o),rr.writeStat(t,a?e7.lstat(r):e7.stat(r))}catch(e){if(void 0===e7||"ErrnoError"!==e.name)throw e;return-e.errno}},kb:function(e,r,t,n){rr.varargs=n;try{r=rr.getStr(r),r=rr.calculateAt(e,r);var a=n?rt():0;return e7.open(r,t,a).fd}catch(e){if(void 0===e7||"ErrnoError"!==e.name)throw e;return-e.errno}},Cc:function(e,r){try{return e=rr.getStr(e),rr.writeStat(r,e7.stat(e))}catch(e){if(void 0===e7||"ErrnoError"!==e.name)throw e;return-e.errno}},xc:()=>ev(""),Ib:(e,r,t,n,a)=>{},wc:(e,r,t,n)=>{rc(e,{name:r=ra(r),fromWireType:function(e){return!!e},toWireType:function(e,r){return r?t:n},readValueFromPointer:function(e){return this.fromWireType(l[e])},destructorFunction:null})},vc:e=>rc(e,rh),ib:(e,r,t)=>{rc(e,{name:r=ra(r),fromWireType:e=>e,toWireType:(e,r)=>r,readValueFromPointer:((e,r)=>{switch(r){case 4:return function(e){return this.fromWireType(p[e>>2])};case 8:return function(e){return this.fromWireType(g[e>>3])};default:throw TypeError(`invalid float width (${r}): ${e}`)}})(r,t),destructorFunction:null})},I:(e,r,t,n,a)=>{r=ra(r);let o=e=>e;if(0===n){var i=32-8*t;a=(o=e=>e<>>i)(a)}rc(e,{name:r,fromWireType:o,toWireType:(e,r)=>r,readValueFromPointer:((e,r,t)=>{switch(r){case 1:return t?e=>u[e]:e=>l[e];case 2:return t?e=>c[e>>1]:e=>d[e>>1];case 4:return t?e=>f[e>>2]:e=>m[e>>2];default:throw TypeError(`invalid integer width (${r}): ${e}`)}})(r,t,0!==n),destructorFunction:null})},r:(e,r,t)=>{var n=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][r];function a(e){var r=m[e>>2],t=m[e+4>>2];return new n(u.buffer,t,r)}rc(e,{name:t=ra(t),fromWireType:a,readValueFromPointer:a},{ignoreDuplicateRegistrations:!0})},uc:(e,r)=>{rc(e,{name:r=ra(r),fromWireType(e){var r,t=m[e>>2];return r=re(e+4,t,!0),w(e),r},toWireType(e,r){r instanceof ArrayBuffer&&(r=new Uint8Array(r));var t,n="string"==typeof r;n||ArrayBuffer.isView(r)&&1==r.BYTES_PER_ELEMENT||rl("Cannot pass non-string to std::string"),t=n?e$(r):r.length;var a=x(4+t+1),o=a+4;if(m[a>>2]=t,n)if(0)for(var i=0;i255&&(w(a),rl("String has UTF-16 code units that do not fit in 8 bits")),l[o+i]=s}else rb(r,o,t+1);else l.set(r,o);return null!==e&&e.push(w,a),a},readValueFromPointer:rv,destructorFunction(e){w(e)}})},La:(e,r,t)=>{var n,a,o;t=ra(t),2===r?(n=rw,a=rx,o=r_):(n=rE,a=rS,o=rk),rc(e,{name:t,fromWireType:e=>{var t=m[e>>2],a=n(e+4,t*r,!0);return w(e),a},toWireType:(e,n)=>{"string"!=typeof n&&rl(`Cannot pass non-string to C++ string type ${t}`);var i=o(n),s=x(4+i+r);return m[s>>2]=i/r,a(n,s+4,i+r),null!==e&&e.push(w,s),s},readValueFromPointer:rv,destructorFunction(e){w(e)}})},tc:(e,r)=>{rc(e,{isVoid:!0,name:r=ra(r),fromWireType:()=>void 0,toWireType:(e,r)=>void 0})},$:(e,r,t)=>{var n,a,[o,...i]=((e,r)=>{for(var t=Array(e),n=0;n>2],`parameter ${n}`);return t})(e,r),s=o.toWireType.bind(o),u=i.map(e=>e.readValueFromPointer.bind(e)),l=Array(--e);return n=Object.defineProperty((r,n,a,o)=>{for(var i,c,d,f=0,p=0;p>2]=rg(i)),c},"name",{value:`methodCaller<(${i.map(e=>e.name)}) => ${o.name}>`}),a=rC.length,rC.push(n),a},q:rm,Ka:e=>e?(e=rL(e),rg(globalThis[e])):rg(globalThis),hb:(e,r)=>(e=rp(e),rg(e[r=rp(r)])),ja:e=>{e>9&&(rf[e+1]+=1)},Ja:(e,r)=>(e=rp(e))instanceof(r=rp(r)),_:(e,r,t,n,a)=>rC[e](r,t,n,a),ua:e=>rg(rL(e)),Z:e=>{for(var r=rp(e);r.length;){var t=r.pop();r.pop()(t)}rm(e)},gb:(e,r,t)=>{e=rp(e),r=rp(r),t=rp(t),e[r]=t},sc:e=>rg(typeof(e=rp(e))),Hb:function(e,r,t){var n=new Date(1e3*rn(e,r));f[t>>2]=n.getUTCSeconds(),f[t+4>>2]=n.getUTCMinutes(),f[t+8>>2]=n.getUTCHours(),f[t+12>>2]=n.getUTCDate(),f[t+16>>2]=n.getUTCMonth(),f[t+20>>2]=n.getUTCFullYear()-1900,f[t+24>>2]=n.getUTCDay();var a=Date.UTC(n.getUTCFullYear(),0,1,0,0,0,0),o=(n.getTime()-a)/864e5|0;f[t+28>>2]=o},Gb:function(e,r,t){var n=new Date(1e3*rn(e,r));f[t>>2]=n.getSeconds(),f[t+4>>2]=n.getMinutes(),f[t+8>>2]=n.getHours(),f[t+12>>2]=n.getDate(),f[t+16>>2]=n.getMonth(),f[t+20>>2]=n.getFullYear()-1900,f[t+24>>2]=n.getDay();var a=0|rP(n);f[t+28>>2]=a,f[t+36>>2]=-(60*n.getTimezoneOffset());var o=new Date(n.getFullYear(),0,1),i=new Date(n.getFullYear(),6,1).getTimezoneOffset(),s=o.getTimezoneOffset(),u=0|(i!=s&&n.getTimezoneOffset()==Math.min(s,i));f[t+32>>2]=u},Fb:function(e){let r;var t=(()=>{var r=new Date(f[e+20>>2]+1900,f[e+16>>2],f[e+12>>2],f[e+8>>2],f[e+4>>2],f[e>>2],0),t=f[e+32>>2],n=r.getTimezoneOffset(),a=new Date(r.getFullYear(),0,1),o=new Date(r.getFullYear(),6,1).getTimezoneOffset(),i=a.getTimezoneOffset(),s=Math.min(i,o);if(t<0)f[e+32>>2]=Number(o!=i&&s==n);else if(t>0!=(s==n)){var u=Math.max(i,o);r.setTime(r.getTime()+((t>0?s:u)-n)*6e4)}f[e+24>>2]=r.getDay();var l=0|rP(r);f[e+28>>2]=l,f[e>>2]=r.getSeconds(),f[e+4>>2]=r.getMinutes(),f[e+8>>2]=r.getHours(),f[e+12>>2]=r.getDate(),f[e+16>>2]=r.getMonth(),f[e+20>>2]=r.getYear();var c=r.getTime();return isNaN(c)?-1:c/1e3})();return r=+Math.abs(h=t)>=1?h>0?Math.floor(h/0x100000000)>>>0:~~Math.ceil((h-(~~h>>>0))/0x100000000)>>>0:0,Y(r),t>>>0},Eb:function(e,r,t,n,a,o,i,s){var u=rn(a,o);try{var l=rr.getStreamFromFD(n),c=e7.mmap(l,e,u,r,t),d=c.ptr;return f[i>>2]=c.allocated,m[s>>2]=d,0}catch(e){if(void 0===e7||"ErrnoError"!==e.name)throw e;return-e.errno}},Db:function(e,r,t,n,a,o,i){var s=rn(o,i);try{var u=rr.getStreamFromFD(a);2&t&&rr.doMsync(e,u,r,n,s)}catch(e){if(void 0===e7||"ErrnoError"!==e.name)throw e;return-e.errno}},rc:(e,r,t,n)=>{var a=(new Date).getFullYear(),o=new Date(a,0,1),i=new Date(a,6,1),s=o.getTimezoneOffset(),u=i.getTimezoneOffset(),l=Math.max(s,u);m[e>>2]=60*l,f[r>>2]=Number(s!=u);var c=e=>{var r=Math.abs(e),t=String(Math.floor(r/60)).padStart(2,"0"),n=String(r%60).padStart(2,"0");return`UTC${e>=0?"-":"+"}${t}${n}`},d=c(s),p=c(u);u=0&&e<=3))return 28;if(0===e)a=Date.now();else{0;a=rj()}var a,o=Math.round(1e3*a*1e3);return b=[o>>>0,+Math.abs(h=o)>=1?h>0?Math.floor(h/0x100000000)>>>0:~~Math.ceil((h-(~~h>>>0))/0x100000000)>>>0:0],f[n>>2]=b[0],f[n+4>>2]=b[1],0},qc:function(e,r){if("u">typeof dbg)dbg(re(e,r));else{if(void 0===t)function t(e){console.warn.apply(console,arguments)}t(re(e,r))}},Y:(e,r,t)=>rF(e,r,t),fb:(e,r,t)=>rF(e,r,t),Ia:(e,r)=>ed(re(e,r)),pc:()=>0x80000000,y:rj,ia:()=>0,oc:(e,r)=>ec(re(e,r)),nc:rU,mc:e=>{var r=l.length;if((e>>>=0)>0x80000000)return!1;for(var t=1;t<=4;t*=2){var n=r*(1+.2/t);if(n=Math.min(n,e+0x6000000),rG(Math.min(0x80000000,eQ(Math.max(e,n),65536))))return!0}return!1},eb:()=>{var e=rR().split("\n");return"Error"==e[0]&&e.shift(),rz(e),rD.last_addr=rV(e[3]),rD.last_stack=e,rD.last_addr},lc:(e,r,t)=>{rD.last_addr==e?n=rD.last_stack:("Error"==(n=rR().split("\n"))[0]&&n.shift(),rz(n));for(var n,a=3;n[a]&&rV(n[a])!=e;)++a;for(var o=0;o>2]=rV(n[o+a]);return o},kc:(e,r)=>{var t=r>>2,n=f[t+2],a={alpha:!!u[r+0],depth:!!u[r+1],stencil:!!u[r+2],antialias:!!u[r+3],premultipliedAlpha:!!u[r+4],preserveDrawingBuffer:!!u[r+5],powerPreference:rJ[n],failIfMajorPerformanceCaveat:!!u[r+12],majorVersion:f[t+4],minorVersion:f[t+5],enableExtensionsByDefault:u[r+24],explicitSwapControl:u[r+25],proxyContextToMainThread:f[t+7],renderViaOffscreenBackBuffer:u[r+32]},o=r$(e);return!o||a.explicitSwapControl?0:rW.createContext(o,a)},jc:e=>{rW.currentContext==e&&(rW.currentContext=0),rW.deleteContext(e)},ic:(e,r)=>{if(!r)return -5;if(!(e=rW.contexts[e]))return -3;var t=e.GLctx?.getContextAttributes();if(!t)return -3;u[r]=t.alpha,u[r+1]=t.depth,u[r+2]=t.stencil,u[r+3]=t.antialias,u[r+4]=t.premultipliedAlpha,u[r+5]=t.preserveDrawingBuffer;var n=t.powerPreference&&rJ.indexOf(t.powerPreference);return f[r+8>>2]=n,u[r+12]=t.failIfMajorPerformanceCaveat,f[r+16>>2]=e.version,f[r+20>>2]=0,u[r+24]=e.attributes.enableExtensionsByDefault,0},ha:()=>rW.currentContext?rW.currentContext.handle:0,hc:e=>rW.makeContextCurrent(e)?0:-5,Q:()=>(void 0===rK.preinitializedDeviceId&&(rK.preinitializedDeviceId=rK.importJsDevice(r.preinitializedWebGPUDevice),_(rK.preinitializedDeviceId)),_(rK.preinitializedDeviceId),rK.preinitializedDeviceId),gc:e=>{var r=rK.getJsObject(e),t=rK.Internals.bufferOnUnmaps[e];if(t){for(var n=0;n{var n,a=rK.getJsObject(e);-1==t&&(t=void 0);try{n=a.getMappedRange(r,t)}catch(e){return 0}var o=q(16,n.byteLength);return l.fill(0,o,n.byteLength),rK.Internals.bufferOnUnmaps[e].push(()=>{new Uint8Array(n).set(l.subarray(o,o+n.byteLength)),w(o)}),o},ec:e=>{var r=rK.getJsObject(e),t=rK.Internals.bufferOnUnmaps[e];if(t){for(var n=0;n{delete rK.Internals.jsObjects[e]},dc:(e,r,t)=>{var n,a=!!m[r+32>>2],o={label:rK.makeStringFromOptionalStringView(r+4),usage:m[r+16>>2],size:rY(r+24),mappedAtCreation:a},i=rK.getJsObject(e);try{n=i.createBuffer(o)}catch(e){return!1}return rK.Internals.jsObjectInsert(t,n),a&&(rK.Internals.bufferOnUnmaps[t]=[]),!0},Cb:function(e,r,t,n,a){var o=rn(r,t),i=rK.makeComputePipelineDesc(n),s=rK.getJsObject(e);rK.Internals.futureInsert(o,s.createComputePipelineAsync(i).then(e=>{ek(()=>{rK.Internals.jsObjectInsert(a,e),X(o,1,a,0)})},e=>{ek(()=>{var r=eD(),t=rH(e.message),n="validation"===e.reason?3:4*("internal"===e.reason);X(o,n,a,t),Q(r)})}))},Bb:function(e,r,t,n,a){var o=rn(r,t),i=rK.makeRenderPipelineDesc(n),s=rK.getJsObject(e);rK.Internals.futureInsert(o,s.createRenderPipelineAsync(i).then(e=>{ek(()=>{rK.Internals.jsObjectInsert(a,e),$(o,1,a,0)})},e=>{ek(()=>{var r=eD(),t=rH(e.message),n="validation"===e.reason?3:4*("internal"===e.reason);$(o,n,a,t),Q(r)})}))},cc:(e,r,t)=>{var n=m[r>>2],a=f[n+4>>2],o={label:rK.makeStringFromOptionalStringView(r+4),code:""};2===a&&(o.code=rK.makeStringFromStringView(n+8));var i=rK.getJsObject(e);rK.Internals.jsObjectInsert(t,i.createShaderModule(o))},bc:e=>{let r=rK.getJsObject(e);r.onuncapturederror=null,r.destroy()},ac:(e,r,t)=>{ev("TODO: Implement asyncify-free WaitAny for timeout=0")},Bc:(e,r)=>{var t=0,n=0;for(var a of r0()){var o=r+t;m[e+n>>2]=o,t+=rb(a,o,1/0)+1,n+=4}return 0},Ac:(e,r)=>{var t=r0();m[e>>2]=t.length;var n=0;for(var a of t)n+=e$(a)+1;return m[r>>2]=n,0},db:eS,Na:function(e){try{var r=rr.getStreamFromFD(e);return e7.close(r),0}catch(e){if(void 0===e7||"ErrnoError"!==e.name)throw e;return e.errno}},jb:function(e,r,t,n){try{var a=rr.getStreamFromFD(e),o=((e,r,t,n)=>{for(var a=0,o=0;o>2],s=m[r+4>>2];r+=8;var l=e7.read(e,u,i,s,n);if(l<0)return -1;if(a+=l,l>2]=o,0}catch(e){if(void 0===e7||"ErrnoError"!==e.name)throw e;return e.errno}},Jb:function(e,r,t,n,a){var o=rn(r,t);try{if(isNaN(o))return 61;var i=rr.getStreamFromFD(e);return e7.llseek(i,o,n),b=[i.position>>>0,(h=i.position,+Math.abs(h)>=1?h>0?Math.floor(h/0x100000000)>>>0:~~Math.ceil((h-(~~h>>>0))/0x100000000)>>>0:0)],f[a>>2]=b[0],f[a+4>>2]=b[1],i.getdents&&0===o&&0===n&&(i.getdents=null),0}catch(e){if(void 0===e7||"ErrnoError"!==e.name)throw e;return e.errno}},Ma:function(e,r,t,n){try{var a=rr.getStreamFromFD(e),o=((e,r,t,n)=>{for(var a=0,o=0;o>2],s=m[r+4>>2];r+=8;var l=e7.write(e,u,i,s,n);if(l<0)return -1;if(a+=l,l>2]=o,0}catch(e){if(void 0===e7||"ErrnoError"!==e.name)throw e;return e.errno}},b:e=>y.activeTexture(e),ta:(e,r)=>{y.attachShader(rW.programs[e],rW.shaders[r])},$b:(e,r,t)=>{y.bindAttribLocation(rW.programs[e],r,re(t))},c:(e,r)=>{if(r&&!rW.buffers[r]){var t=y.createBuffer();t.name=r,rW.buffers[r]=t}34962==e?y.currentArrayBufferBinding=r:34963==e&&(y.currentElementArrayBufferBinding=r),35051==e?y.currentPixelPackBufferBinding=r:35052==e&&(y.currentPixelUnpackBufferBinding=r),y.bindBuffer(e,rW.buffers[r])},cb:(e,r,t)=>{y.bindBufferBase(e,r,rW.buffers[t])},t:(e,r)=>{y.bindFramebuffer(e,rW.framebuffers[r])},a:(e,r)=>{y.bindTexture(e,rW.textures[r])},m:e=>{y.bindVertexArray(rW.vaos[e]);var r=y.getParameter(34965);y.currentElementArrayBufferBinding=r?0|r.name:0},bb:e=>y.blendEquation(e),_b:(e,r)=>y.blendFunc(e,r),j:(e,r,t,n)=>{rW.currentContext.version>=2?t&&r?y.bufferData(e,l,n,t,r):y.bufferData(e,r,n):y.bufferData(e,t?l.subarray(t,t+r):r,n)},H:e=>y.clear(e),X:(e,r,t,n)=>y.clearColor(e,r,t,n),da:(e,r,t,n)=>y.clientWaitSync(rW.syncs[e],r,(t>>>0)+0x100000000*n),ga:(e,r,t,n)=>{y.colorMask(!!e,!!r,!!t,!!n)},ab:e=>{y.compileShader(rW.shaders[e])},$a:()=>{var e=rW.getNewId(rW.programs),r=y.createProgram();return r.name=e,r.maxUniformLength=r.maxAttributeLength=r.maxUniformBlockNameLength=0,r.uniformIdCounter=1,rW.programs[e]=r,e},_a:e=>{var r=rW.getNewId(rW.shaders);return rW.shaders[r]=y.createShader(e),r},p:(e,r)=>{for(var t=0;t>2],a=rW.buffers[n];a&&(y.deleteBuffer(a),a.name=0,rW.buffers[n]=null,n==y.currentArrayBufferBinding&&(y.currentArrayBufferBinding=0),n==y.currentElementArrayBufferBinding&&(y.currentElementArrayBufferBinding=0),n==y.currentPixelPackBufferBinding&&(y.currentPixelPackBufferBinding=0),n==y.currentPixelUnpackBufferBinding&&(y.currentPixelUnpackBufferBinding=0))}},P:(e,r)=>{for(var t=0;t>2],a=rW.framebuffers[n];a&&(y.deleteFramebuffer(a),a.name=0,rW.framebuffers[n]=null)}},h:e=>{if(e){var r=rW.programs[e];if(!r)return void rW.recordError(1281);y.deleteProgram(r),r.name=0,rW.programs[e]=null}},sa:e=>{if(e){var r=rW.shaders[e];if(!r)return void rW.recordError(1281);y.deleteShader(r),rW.shaders[e]=null}},ra:e=>{if(e){var r=rW.syncs[e];if(!r)return void rW.recordError(1281);y.deleteSync(r),r.name=0,rW.syncs[e]=null}},D:(e,r)=>{for(var t=0;t>2],a=rW.textures[n];a&&(y.deleteTexture(a),a.name=0,rW.textures[n]=null)}},A:(e,r)=>{for(var t=0;t>2];y.deleteVertexArray(rW.vaos[n]),rW.vaos[n]=null}},Za:(e,r)=>{y.detachShader(rW.programs[e],rW.shaders[r])},G:e=>y.disable(e),n:e=>{rW.currentContext.clientBuffers[e].enabled=!1,y.disableVertexAttribArray(e)},i:(e,r,t)=>{rW.preDrawHandleClientVertexAttribBindings(r+t),y.drawArrays(e,r,t),rW.postDrawHandleClientVertexAttribBindings()},fa:(e,r)=>{for(var t=r2[e],n=0;n>2];y.drawBuffers(t)},Zb:e=>y.enable(e),l:e=>{rW.currentContext.clientBuffers[e].enabled=!0,y.enableVertexAttribArray(e)},Ya:(e,r)=>{var t=y.fenceSync(e,r);if(t){var n=rW.getNewId(rW.syncs);return t.name=n,rW.syncs[n]=t,n}return 0},qa:()=>y.finish(),v:()=>y.flush(),C:(e,r,t,n,a)=>{y.framebufferTexture2D(e,r,t,rW.textures[n],a)},Xa:(e,r,t,n,a)=>{y.framebufferTextureLayer(e,r,rW.textures[t],n,a)},s:(e,r)=>{rW.genObject(e,r,"createBuffer",rW.buffers)},W:(e,r)=>{rW.genObject(e,r,"createFramebuffer",rW.framebuffers)},F:(e,r)=>{rW.genObject(e,r,"createTexture",rW.textures)},B:(e,r)=>{rW.genObject(e,r,"createVertexArray",rW.vaos)},Wa:(e,r)=>y.getAttribLocation(rW.programs[e],re(r)),ea:()=>{var e=y.getError()||rW.lastError;return rW.lastError=0,e},Yb:(e,r)=>r4(e,r,2),w:(e,r)=>r4(e,r,0),Xb:(e,r,t)=>{if(!t||e>=rW.counter)return void rW.recordError(1281);if(e=rW.programs[e],35716==r){var n=y.getProgramInfoLog(e);null===n&&(n="(unknown error)"),f[t>>2]=n.length+1}else if(35719==r){if(!e.maxUniformLength)for(var a=y.getProgramParameter(e,35718),o=0;o>2]=e.maxUniformLength}else if(35722==r){if(!e.maxAttributeLength)for(var i=y.getProgramParameter(e,35721),o=0;o>2]=e.maxAttributeLength}else if(35381==r){if(!e.maxUniformBlockNameLength)for(var s=y.getProgramParameter(e,35382),o=0;o>2]=e.maxUniformBlockNameLength}else f[t>>2]=y.getProgramParameter(e,r)},Wb:(e,r,t,n)=>{var a=y.getShaderInfoLog(rW.shaders[e]);null===a&&(a="(unknown error)");var o=r>0&&n?rb(a,n,r):0;t&&(f[t>>2]=o)},Vb:(e,r,t)=>{if(!t)return void rW.recordError(1281);if(35716==r){var n=y.getShaderInfoLog(rW.shaders[e]);null===n&&(n="(unknown error)");var a=n?n.length+1:0;f[t>>2]=a}else if(35720==r){var o=y.getShaderSource(rW.shaders[e]),i=o?o.length+1:0;f[t>>2]=i}else f[t>>2]=y.getShaderParameter(rW.shaders[e],r)},N:e=>{var r=rW.stringCache[e];if(!r){switch(e){case 7939:r=rM(r1().join(" "));break;case 7936:case 7937:case 37445:case 37446:var t=y.getParameter(e);t||rW.recordError(1280),r=t?rM(t):0;break;case 7938:var n=y.getParameter(7938),a=`OpenGL ES 2.0 (${n})`;rW.currentContext.version>=2&&(a=`OpenGL ES 3.0 (${n})`),r=rM(a);break;case 35724:var o=y.getParameter(35724),i=o.match(/^WebGL GLSL ES ([0-9]\.[0-9][0-9]?)(?:$| .*)/);null!==i&&(3==i[1].length&&(i[1]=i[1]+"0"),o=`OpenGL ES GLSL ES ${i[1]} (${o})`),r=rM(o);break;default:rW.recordError(1280)}rW.stringCache[e]=r}return r},Ub:(e,r)=>y.getUniformBlockIndex(rW.programs[e],re(r)),d:(e,r)=>{if(r=re(r),e=rW.programs[e]){(e=>{var r,t,n=e.uniformLocsById,a=e.uniformSizeAndIdsByName;if(!n){e.uniformLocsById=n={},e.uniformArrayNamesById={};var o=y.getProgramParameter(e,35718);for(r=0;r0?s.slice(0,l):s,d=e.uniformIdCounter;for(e.uniformIdCounter+=u,a[c]=[u,d],t=0;t0&&(n=parseInt(r.slice(o+1))>>>0,a=r.slice(0,o));var i=e.uniformSizeAndIdsByName[a];if(i&&ny.lineWidth(e),Va:e=>{e=rW.programs[e],y.linkProgram(e),e.uniformLocsById=0,e.uniformSizeAndIdsByName={}},pa:(e,r)=>{3317==e?rW.unpackAlignment=r:3314==e&&(rW.unpackRowLength=r),y.pixelStorei(e,r)},oa:(e,r,t,n,a,o,i)=>{if(rW.currentContext.version>=2){if(y.currentPixelPackBufferBinding)return void y.readPixels(e,r,t,n,a,o,i);var s=r8(o),u=r6(i,s);return void y.readPixels(e,r,t,n,a,o,s,u)}var l=r5(o,a,t,n,i,a);l?y.readPixels(e,r,t,n,a,o,l):rW.recordError(1280)},Ua:(e,r,t,n)=>{var a=rW.getSource(e,r,t,n);y.shaderSource(rW.shaders[e],a)},E:(e,r,t,n,a,o,i,s,u)=>{if(rW.currentContext.version>=2){if(y.currentPixelUnpackBufferBinding)return void y.texImage2D(e,r,t,n,a,o,i,s,u);if(u){var l=r8(s),c=r6(u,l);y.texImage2D(e,r,t,n,a,o,i,s,l,c);return}}var d=u?r5(s,i,n,a,u,t):null;y.texImage2D(e,r,t,n,a,o,i,s,d)},na:(e,r,t)=>y.texParameterf(e,r,t),Ta:(e,r,t)=>{var n=p[t>>2];y.texParameterf(e,r,n)},f:(e,r,t)=>y.texParameteri(e,r,t),ma:(e,r,t,n,a)=>y.texStorage2D(e,r,t,n,a),Sb:(e,r,t,n,a,o)=>y.texStorage3D(e,r,t,n,a,o),V:(e,r,t,n,a,o,i,s,u)=>{if(rW.currentContext.version>=2){if(y.currentPixelUnpackBufferBinding)return void y.texSubImage2D(e,r,t,n,a,o,i,s,u);if(u){var l=r8(s);y.texSubImage2D(e,r,t,n,a,o,i,s,l,r6(u,l));return}}var c=u?r5(s,i,a,o,u,0):null;y.texSubImage2D(e,r,t,n,a,o,i,s,c)},Rb:(e,r,t,n,a,o,i,s,u,l,c)=>{if(y.currentPixelUnpackBufferBinding)y.texSubImage3D(e,r,t,n,a,o,i,s,u,l,c);else if(c){var d=r8(l);y.texSubImage3D(e,r,t,n,a,o,i,s,u,l,d,r6(c,d))}else y.texSubImage3D(e,r,t,n,a,o,i,s,u,l,null)},M:(e,r)=>{y.uniform1f(r9(e),r)},la:(e,r,t)=>{if(rW.currentContext.version>=2){r&&y.uniform1fv(r9(e),p,t>>2,r);return}if(r<=288)for(var n=r7[r],a=0;a>2];else var n=p.subarray(t>>2,t+4*r>>2);y.uniform1fv(r9(e),n)},e:(e,r)=>{y.uniform1i(r9(e),r)},U:(e,r,t)=>{y.uniform2f(r9(e),r,t)},Qb:(e,r,t)=>{if(rW.currentContext.version>=2){r&&y.uniform2fv(r9(e),p,t>>2,2*r);return}if(r<=144)for(var n=r7[r*=2],a=0;a>2],n[a+1]=p[t+(4*a+4)>>2];else var n=p.subarray(t>>2,t+8*r>>2);y.uniform2fv(r9(e),n)},Ha:(e,r,t,n)=>{y.uniform3f(r9(e),r,t,n)},Sa:(e,r,t,n,a)=>{y.uniform4f(r9(e),r,t,n,a)},T:(e,r,t)=>{if(rW.currentContext.version>=2){r&&y.uniform4fv(r9(e),p,t>>2,4*r);return}if(r<=72){var n=r7[4*r],a=p;t>>=2,r*=4;for(var o=0;o>2,t+16*r>>2);y.uniform4fv(r9(e),n)},Pb:(e,r,t)=>{if(rW.currentContext.version>=2){r&&y.uniform4iv(r9(e),f,t>>2,4*r);return}if(r<=72)for(var n=te[r*=4],a=0;a>2],n[a+1]=f[t+(4*a+4)>>2],n[a+2]=f[t+(4*a+8)>>2],n[a+3]=f[t+(4*a+12)>>2];else var n=f.subarray(t>>2,t+16*r>>2);y.uniform4iv(r9(e),n)},Ob:(e,r,t)=>{e=rW.programs[e],y.uniformBlockBinding(e,r,t)},Nb:(e,r,t,n)=>{if(rW.currentContext.version>=2){r&&y.uniformMatrix2fv(r9(e),!!t,p,n>>2,4*r);return}if(r<=72)for(var a=r7[r*=4],o=0;o>2],a[o+1]=p[n+(4*o+4)>>2],a[o+2]=p[n+(4*o+8)>>2],a[o+3]=p[n+(4*o+12)>>2];else var a=p.subarray(n>>2,n+16*r>>2);y.uniformMatrix2fv(r9(e),!!t,a)},Mb:(e,r,t,n)=>{if(rW.currentContext.version>=2){r&&y.uniformMatrix3fv(r9(e),!!t,p,n>>2,9*r);return}if(r<=32)for(var a=r7[r*=9],o=0;o>2],a[o+1]=p[n+(4*o+4)>>2],a[o+2]=p[n+(4*o+8)>>2],a[o+3]=p[n+(4*o+12)>>2],a[o+4]=p[n+(4*o+16)>>2],a[o+5]=p[n+(4*o+20)>>2],a[o+6]=p[n+(4*o+24)>>2],a[o+7]=p[n+(4*o+28)>>2],a[o+8]=p[n+(4*o+32)>>2];else var a=p.subarray(n>>2,n+36*r>>2);y.uniformMatrix3fv(r9(e),!!t,a)},Ga:(e,r,t,n)=>{if(rW.currentContext.version>=2){r&&y.uniformMatrix4fv(r9(e),!!t,p,n>>2,16*r);return}if(r<=18){var a=r7[16*r],o=p;n>>=2,r*=16;for(var i=0;i>2,n+64*r>>2);y.uniformMatrix4fv(r9(e),!!t,a)},g:e=>{e=rW.programs[e],y.useProgram(e),y.currentProgram=e},k:(e,r,t,n,a,o)=>{var i=rW.currentContext.clientBuffers[e];if(!y.currentArrayBufferBinding){i.size=r,i.type=t,i.normalized=n,i.stride=a,i.ptr=o,i.clientside=!0,i.vertexAttribPointerAdaptor=function(e,r,t,n,a,o){this.vertexAttribPointer(e,r,t,n,a,o)};return}i.clientside=!1,y.vertexAttribPointer(e,r,t,!!n,a,o)},S:(e,r,t,n)=>y.viewport(e,r,t,n),Ab:function(){let e;return"u">typeof HTMLCanvasElement?(e=document.createElement("canvas")).style.display="none":e=new OffscreenCanvas(0,0),rg(e)},zb:function(e){let t=r$(e);return r&&!t&&(t=r.canvasWebGpu),rg(t)},yb:function(e,r){let t=rK.getJsObject(e),n=rp(r);return rg(t.importExternalTexture({source:n}))},wb:function(e){let r=rp(e);y.texImage2D(y.TEXTURE_2D,0,y.RGBA,y.RGBA,y.UNSIGNED_BYTE,r)},zc:eE,yc:function(e,r){try{return eU(l.subarray(e,e+r)),0}catch(e){if(void 0===e7||"ErrnoError"!==e.name)throw e;return e.errno}},Fa:(e,r)=>{r&&(t={label:rK.makeStringFromOptionalStringView(r+4),timestampWrites:rK.makePassTimestampWrites(m[r+12>>2])});var t,n=rK.getJsObject(e),a=T(0);return rK.Internals.jsObjectInsert(a,n.beginComputePass(t)),a},Ea:(e,r)=>{var t,n,a,o=(n=m[(t=r)>>2],a=void 0,0!==n&&(f[n+4>>2],a=rY(n+8)),{label:rK.makeStringFromOptionalStringView(t+4),colorAttachments:function(e,r){for(var t=[],n=0;n>2];if(0!==r){var t=m[e+8>>2];return 0xffffffff==t&&(t=void 0),{view:rK.getJsObject(r),depthSlice:t,resolveTarget:rK.getJsObject(m[e+12>>2]),clearValue:rK.makeColor(e+24),loadOp:rK.LoadOp[f[e+16>>2]],storeOp:rK.StoreOp[f[e+20>>2]]}}}(r+56*n));return t}(m[t+12>>2],m[t+16>>2]),depthStencilAttachment:function(e){if(0!==e)return{view:rK.getJsObject(m[e+4>>2]),depthClearValue:p[e+16>>2],depthLoadOp:rK.LoadOp[f[e+8>>2]],depthStoreOp:rK.StoreOp[f[e+12>>2]],depthReadOnly:!!m[e+20>>2],stencilClearValue:m[e+32>>2],stencilLoadOp:rK.LoadOp[f[e+24>>2]],stencilStoreOp:rK.StoreOp[f[e+28>>2]],stencilReadOnly:!!m[e+36>>2]}}(m[t+20>>2]),occlusionQuerySet:rK.getJsObject(m[t+24>>2]),timestampWrites:rK.makePassTimestampWrites(m[t+28>>2]),maxDrawCount:a}),i=rK.getJsObject(e),s=F(0);return rK.Internals.jsObjectInsert(s,i.beginRenderPass(o)),s},vb:(e,r,t,n)=>{var a=rK.getJsObject(e),o=rK.makeExtent3D(n);a.copyBufferToTexture(rK.makeTexelCopyBufferInfo(r),rK.makeTexelCopyTextureInfo(t),o)},ub:(e,r,t,n)=>{var a=rK.getJsObject(e),o=rK.makeExtent3D(n);a.copyTextureToBuffer(rK.makeTexelCopyTextureInfo(r),rK.makeTexelCopyBufferInfo(t),o)},tb:(e,r,t,n)=>{var a=rK.getJsObject(e),o=rK.makeExtent3D(n);a.copyTextureToTexture(rK.makeTexelCopyTextureInfo(r),rK.makeTexelCopyTextureInfo(t),o)},L:(e,r)=>{var t=rK.getJsObject(e),n=C(0);return rK.Internals.jsObjectInsert(n,t.finish()),n},Da:(e,r,t,n)=>{rK.getJsObject(e).dispatchWorkgroups(r,t,n)},Ca:e=>{rK.getJsObject(e).end()},Ba:(e,r,t,n,a)=>{var o=rK.getJsObject(e),i=rK.getJsObject(t);0==n?o.setBindGroup(r,i):o.setBindGroup(r,i,m,a>>2,n)},Aa:(e,r)=>{var t=rK.getJsObject(e),n=rK.getJsObject(r);t.setPipeline(n)},za:(e,r)=>{var t=rK.getJsObject(e),n=k(0);return rK.Internals.jsObjectInsert(n,t.getBindGroupLayout(r)),n},ca:(e,r)=>{var t={label:rK.makeStringFromOptionalStringView(r+4),layout:rK.getJsObject(m[r+12>>2]),entries:function(e,r){for(var t=[],n=0;n>2],n=m[e+32>>2],a=m[e+36>>2],o=0;if(rK.iterateExtensions(e,{327681:e=>{o=m[e+8>>2]}}),t){var i=rY(e+24);-1==i&&(i=void 0),r={buffer:rK.getJsObject(t),offset:rY(e+16),size:i}}else r=rK.getJsObject(n||a||o);return{binding:m[e+4>>2],resource:r}}(r+40*n));return t}(m[r+16>>2],m[r+20>>2])},n=rK.getJsObject(e),a=S(0);return rK.Internals.jsObjectInsert(a,n.createBindGroup(t)),a},sb:(e,r)=>{var t={label:rK.makeStringFromOptionalStringView(r+4),entries:function(e,r){for(var t=[],n=0;n>2],visibility:m[e+8>>2],buffer:function(e){var r=m[e+4>>2];if(r)return{type:rK.BufferBindingType[r],hasDynamicOffset:!!m[e+8>>2],minBindingSize:rY(e+16)}}(e+24),sampler:function(e){var r=m[e+4>>2];if(r)return{type:rK.SamplerBindingType[r]}}(e+48),texture:function(e){var r=m[e+4>>2];if(r)return{sampleType:rK.TextureSampleType[r],viewDimension:rK.TextureViewDimension[f[e+8>>2]],multisampled:!!m[e+12>>2]}}(e+56),storageTexture:function(e){var r=m[e+4>>2];if(r)return{access:rK.StorageTextureAccess[r],format:rK.TextureFormat[f[e+8>>2]],viewDimension:rK.TextureViewDimension[f[e+12>>2]]}}(e+72)};return rK.iterateExtensions(e,{327682:e=>{r.externalTexture={}}}),r}(r+88*n));return t}(m[r+12>>2],m[r+16>>2])},n=rK.getJsObject(e),a=k(0);return rK.Internals.jsObjectInsert(a,n.createBindGroupLayout(t)),a},K:(e,r)=>{r&&(t={label:rK.makeStringFromOptionalStringView(r+4)});var t,n=rK.getJsObject(e),a=B(0);return rK.Internals.jsObjectInsert(a,n.createCommandEncoder(t)),a},rb:(e,r)=>{var t=rK.makeComputePipelineDesc(r),n=rK.getJsObject(e),a=L(0);return rK.Internals.jsObjectInsert(a,n.createComputePipeline(t)),a},qb:(e,r)=>{for(var t=m[r+12>>2],n=m[r+16>>2],a=[],o=0;o>2]));var i={label:rK.makeStringFromOptionalStringView(r+4),bindGroupLayouts:a},s=rK.getJsObject(e),u=O(0);return rK.Internals.jsObjectInsert(u,s.createPipelineLayout(i)),u},Ra:(e,r)=>{var t=rK.makeRenderPipelineDesc(r),n=rK.getJsObject(e),a=D(0);return rK.Internals.jsObjectInsert(a,n.createRenderPipeline(t)),a},R:(e,r)=>{r&&(t={label:rK.makeStringFromOptionalStringView(r+4),addressModeU:rK.AddressMode[f[r+12>>2]],addressModeV:rK.AddressMode[f[r+16>>2]],addressModeW:rK.AddressMode[f[r+20>>2]],magFilter:rK.FilterMode[f[r+24>>2]],minFilter:rK.FilterMode[f[r+28>>2]],mipmapFilter:rK.MipmapFilterMode[f[r+32>>2]],lodMinClamp:p[r+36>>2],lodMaxClamp:p[r+40>>2],compare:rK.CompareFunction[f[r+44>>2]],maxAnisotropy:d[r+48>>1]});var t,n=rK.getJsObject(e),a=M(0);return rK.Internals.jsObjectInsert(a,n.createSampler(t)),a},ba:(e,r)=>{var t={label:rK.makeStringFromOptionalStringView(r+4),size:rK.makeExtent3D(r+28),mipLevelCount:m[r+44>>2],sampleCount:m[r+48>>2],dimension:rK.TextureDimension[f[r+24>>2]],format:rK.TextureFormat[f[r+40>>2]],usage:m[r+16>>2]},n=m[r+52>>2];if(n){var a=m[r+56>>2];t.viewFormats=Array.from(f.subarray(a>>2,a+4*n>>2),e=>rK.TextureFormat[e])}var o=rK.getJsObject(e),i=z(0);return rK.Internals.jsObjectInsert(i,o.createTexture(t)),i},J:(e,r,t)=>{var n=rK.getJsObject(e),a=Array.from(f.subarray(t>>2,t+4*r>>2),e=>rK.getJsObject(e));n.submit(a)},ka:function(e,r,t,n,a,o){var i=rn(t,n),s=rK.getJsObject(e),u=rK.getJsObject(r),c=l.subarray(a,a+o);s.writeBuffer(u,i,c,0,o)},pb:(e,r,t,n,a,o)=>{var i=rK.getJsObject(e),s=rK.makeTexelCopyTextureInfo(r),u=rK.makeTexelCopyBufferLayout(a),c=rK.makeExtent3D(o),d=l.subarray(t,t+n);i.writeTexture(s,d,u,c)},ya:(e,r,t,n,a)=>{n>>>=0,a>>>=0,rK.getJsObject(e).draw(r,t,n,a)},xa:e=>{rK.getJsObject(e).end()},wa:(e,r,t,n,a)=>{var o=rK.getJsObject(e),i=rK.getJsObject(t);0==n?o.setBindGroup(r,i):o.setBindGroup(r,i,m,a>>2,n)},va:(e,r)=>{var t=rK.getJsObject(e),n=rK.getJsObject(r);t.setPipeline(n)},Qa:(e,r)=>{var t=rK.getJsObject(e),n=k(0);return rK.Internals.jsObjectInsert(n,t.getBindGroupLayout(r)),n},z:(e,r)=>{if(r){var t,n,a=m[r>>2];if(0!==a){f[a+4>>2];var o=a+8,i=rK.ComponentSwizzle[f[o>>2]]||"r",s=rK.ComponentSwizzle[f[o+4>>2]]||"g",u=rK.ComponentSwizzle[f[o+8>>2]]||"b",l=rK.ComponentSwizzle[f[o+12>>2]]||"a";n=`${i}${s}${u}${l}`}var c=m[r+24>>2],d=m[r+32>>2];t={label:rK.makeStringFromOptionalStringView(r+4),format:rK.TextureFormat[f[r+12>>2]],dimension:rK.TextureViewDimension[f[r+16>>2]],baseMipLevel:m[r+20>>2],mipLevelCount:0xffffffff===c?void 0:c,baseArrayLayer:m[r+28>>2],arrayLayerCount:0xffffffff===d?void 0:d,aspect:rK.TextureAspect[f[r+36>>2]],swizzle:n}}var p=rK.getJsObject(e),g=R(0);return rK.Internals.jsObjectInsert(g,p.createView(t)),g},Pa:e=>{rK.getJsObject(e).destroy()},aa:e=>{var r=rK.getJsObject(e);return rK.TextureFormat.indexOf(r.format)}};return et=await ew(),!function e(){if(e4>0){e3=e;return}if(r.preRun)for("function"==typeof r.preRun&&(r.preRun=[r.preRun]);r.preRun.length;)eA(r.preRun.shift());if(eI(ej),e4>0){e3=e;return}function t(){if(r.calledRun=!0,!ef){if(ep=!0,r.noFSInit||e7.initialized||e7.init(),eY.init(),et.id(),e7.ignorePermissions=!1,i?.(r),r.onRuntimeInitialized?.(),r.postRun)for("function"==typeof r.postRun&&(r.postRun=[r.postRun]);r.postRun.length;)eP(r.postRun.shift());eI(eO)}}r.setStatus?(r.setStatus("Running..."),setTimeout(()=>{setTimeout(()=>r.setStatus(""),1),t()},1)):t()}(),ep?r:new Promise((e,r)=>{i=e,s=r})}})();"object"==typeof exports&&"object"==typeof module?(module.exports=ModuleFactory,module.exports.default=ModuleFactory):"function"==typeof define&&define.amd&&define([],()=>ModuleFactory);