1(function(){"use strict";var Oe={},Le;function ct(){if(Le)return Oe;Le=1;var ft=(()=>{var I=self.location.href;return async function(M={}){var W,n=M,g,v,c=new Promise((e,t)=>{g=e,v=t});["_malloc","_free","_neopen_createPen_wasm","_neopen_destroyPen_wasm","_neopen_onPenDown_wasm","_neopen_onPenMove_wasm","_neopen_onPenUp_wasm","_neopen_releasePenResult_wasm","_memory","___indirect_function_table","onRuntimeInitialized"].forEach(e=>{Object.getOwnPropertyDescriptor(c,e)||Object.defineProperty(c,e,{get:()=>b("You are getting "+e+" on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js"),set:()=>b("You are setting "+e+" on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")})});var x=typeof window=="object",T=typeof importScripts=="function",U=typeof process=="object"&&typeof process.versions=="object"&&typeof process.versions.node=="string",F=!x&&!U&&!T;if(n.ENVIRONMENT)throw new Error("Module.ENVIRONMENT has been deprecated. To force the environment, use the ENVIRONMENT compile-time option (for example, -sENVIRONMENT=web or -sENVIRONMENT=node)");if(U){const{createRequire:e}=await Promise.resolve().then(function(){return ut});var z=e(self.location.href)}var re=Object.assign({},n),L="./this.program",h="";function X(e){return n.locateFile?n.locateFile(e,h):h+e}var Z,ne,q;if(U){if(typeof process>"u"||!process.release||process.release.name!=="node")throw new Error("not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)");var ue=process.versions.node,B=ue.split(".").slice(0,3);if(B=B[0]*1e4+B[1]*100+B[2].split("-")[0]*1,B<16e4)throw new Error("This emscripten-generated code requires node v16.0.0 (detected v"+ue+")");var ae=z("fs"),we=z("path");h=z("url").fileURLToPath(new URL("./",self.location.href)),Z=(e,t)=>(e=me(e)?new URL(e):we.normalize(e),ae.readFileSync(e,t?void 0:"utf8")),q=e=>{var t=Z(e,!0);return t.buffer||(t=new Uint8Array(t)),s(t.buffer),t},ne=(e,t,r,a=!0)=>{e=me(e)?new URL(e):we.normalize(e),ae.readFile(e,a?void 0:"utf8",(i,f)=>{i?r(i):t(a?f.buffer:f)})},!n.thisProgram&&process.argv.length>1&&(L=process.argv[1].replace(/\\/g,"/")),process.argv.slice(2)}else if(F){if(typeof process=="object"&&typeof z=="function"||typeof window=="object"||typeof importScripts=="function")throw new Error("not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)")}else if(x||T){if(T?h=self.location.href:typeof document<"u"&&document.currentScript&&(h=document.currentScript.src),I&&(h=I),h.startsWith("blob:")?h="":h=h.substr(0,h.replace(/[?#].*/,"").lastIndexOf("/")+1),!(typeof window=="object"||typeof importScripts=="function"))throw new Error("not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)");Z=e=>{var t=new XMLHttpRequest;return t.open("GET",e,!1),t.send(null),t.responseText},T&&(q=e=>{var t=new XMLHttpRequest;return t.open("GET",e,!1),t.responseType="arraybuffer",t.send(null),new Uint8Array(t.response)}),ne=(e,t,r)=>{if(me(e)){var a=new XMLHttpRequest;a.open("GET",e,!0),a.responseType="arraybuffer",a.onload=()=>{if(a.status==200||a.status==0&&a.response){t(a.response);return}r()},a.onerror=r,a.send(null);return}fetch(e,{credentials:"same-origin"}).then(i=>i.ok?i.arrayBuffer():Promise.reject(new Error(i.status+" : "+i.url))).then(t,r)}}else throw new Error("environment detection error");var fe=n.print||console.log.bind(console),w=n.printErr||console.error.bind(console);Object.assign(n,re),re=null,vr(),n.arguments&&n.arguments,j("arguments","arguments_"),n.thisProgram&&(L=n.thisProgram),j("thisProgram","thisProgram"),n.quit&&n.quit,j("quit","quit_"),s(typeof n.memoryInitializerPrefixURL>"u","Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead"),s(typeof n.pthreadMainPrefixURL>"u","Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead"),s(typeof n.cdInitializerPrefixURL>"u","Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead"),s(typeof n.filePackagePrefixURL>"u","Module.filePackagePrefixURL option was removed, use Module.locateFile instead"),s(typeof n.read>"u","Module.read option was removed (modify read_ in JS)"),s(typeof n.readAsync>"u","Module.readAsync option was removed (modify readAsync in JS)"),s(typeof n.readBinary>"u","Module.readBinary option was removed (modify readBinary in JS)"),s(typeof n.setWindowTitle>"u","Module.setWindowTitle option was removed (modify emscripten_set_window_title in JS)"),s(typeof n.TOTAL_MEMORY>"u","Module.TOTAL_MEMORY has been renamed Module.INITIAL_MEMORY"),j("asm","wasmExports"),j("read","read_"),j("readAsync","readAsync"),j("readBinary","readBinary"),j("setWindowTitle","setWindowTitle"),s(!F,"shell environment detected but not enabled at build time. Add `shell` to `-sENVIRONMENT` to enable.");var G;n.wasmBinary&&(G=n.wasmBinary),j("wasmBinary","wasmBinary"),typeof WebAssembly!="object"&&w("no native wasm support detected");var V,Y=!1;function s(e,t){e||b("Assertion failed"+(t?": "+t:""))}var S,ie,be,_,p,Ae,Fe;function ke(){var e=V.buffer;n.HEAP8=S=new Int8Array(e),n.HEAP16=be=new Int16Array(e),n.HEAPU8=ie=new Uint8Array(e),n.HEAPU16=new Uint16Array(e),n.HEAP32=_=new Int32Array(e),n.HEAPU32=p=new Uint32Array(e),n.HEAPF32=Ae=new Float32Array(e),n.HEAPF64=Fe=new Float64Array(e)}s(!n.STACK_SIZE,"STACK_SIZE can no longer be set at runtime. Use -sSTACK_SIZE at link t
1ime"),s(typeof Int32Array<"u"&&typeof Float64Array<"u"&&Int32Array.prototype.subarray!=null&&Int32Array.prototype.set!=null,"JS engine does not provide full typed array support"),s(!n.wasmMemory,"Use of `wasmMemory` detected. Use -sIMPORTED_MEMORY to define wasmMemory externally"),s(!n.INITIAL_MEMORY,"Detected runtime INITIAL_MEMORY setting. Use -sIMPORTED_MEMORY to define wasmMemory dynamically");function pt(){var e=Ce();s((e&3)==0),e==0&&(e+=4),p[e>>2]=34821223,p[e+4>>2]=2310721022,p[0]=1668509029}function Me(){if(!Y){var e=Ce();e==0&&(e+=4);var t=p[e>>2],r=p[e+4>>2];(t!=34821223||r!=2310721022)&&b(`Stack overflow! Stack cookie has been overwritten at ${ge(e)}, expected hex dwords 0x89BACDFE and 0x2135467, but received ${ge(r)} ${ge(t)}`),p[0]!=1668509029&&b("Runtime error: The application has corrupted its heap memory area (address zero)!")}}(function(){var e=new Int16Array(1),t=new Int8Array(e.buffer);if(e[0]=25459,t[0]!==115||t[1]!==99)throw"Runtime error: expected the system to be little-endian! (Run with -sSUPPORT_BIG_ENDIAN to bypass)"})();var xe=[],Ye=[],He=[],Pe=!1;function yt(){if(n.preRun)for(typeof n.preRun=="function"&&(n.preRun=[n.preRun]);n.preRun.length;)wt(n.preRun.shift());Re(xe)}function vt(){s(!Pe),Pe=!0,Me(),Re(Ye)}function ht(){if(Me(),n.postRun)for(typeof n.postRun=="function"&&(n.postRun=[n.postRun]);n.postRun.length;)Et(n.postRun.shift());Re(He)}function wt(e){xe.unshift(e)}function bt(e){Ye.unshift(e)}function Et(e){He.unshift(e)}s(Math.imul,"This browser does not support Math.imul(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"),s(Math.fround,"This browser does not support Math.fround(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"),s(Math.clz32,"This browser does not support Math.clz32(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"),s(Math.trunc,"This browser does not support Math.trunc(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");var Q=0,ee=null,de=null,_e={};function Tt(e){Q++,n.monitorRunDependencies?.(Q),s(!_e[e]),_e[e]=1,ee===null&&typeof setInterval<"u"&&(ee=setInterval(()=>{if(Y){clearInterval(ee),ee=null;return}var t=!1;for(var r in _e)t||(t=!0,w("still waiting on run dependencies:")),w(`dependency: ${r}`);t&&w("(end of list)")},1e4))}function St(e){if(Q--,n.monitorRunDependencies?.(Q),s(_e[e]),delete _e[e],Q==0&&(ee!==null&&(clearInterval(ee),ee=null),de)){var t=de;de=null,t()}}function b(e){n.onAbort?.(e),e="Aborted("+e+")",w(e),Y=!0;var t=new WebAssembly.RuntimeError(e);throw v(t),t}var N={error(){b("Filesystem support (FS) was not included. The problem is that you are using files from JS, but files were not used from C/C++, so filesystem support was not auto-included. You can force-include filesystem support with -sFORCE_FILESYSTEM")},init(){N.error()},createDataFile(){N.error()},createPreloadedFile(){N.error()},createLazyFile(){N.error()},open(){N.error()},mkdev(){N.error()},registerDevice(){N.error()},analyzePath(){N.error()},ErrnoError(){N.error()}};n.FS_createDataFile=N.createDataFile,n.FS_createPreloadedFile=N.createPreloadedFile;var At="data:application/octet-stream;base64,",We=e=>e.startsWith(At),me=e=>e.startsWith("file://");function P(e,t){return(...r)=>{s(Pe,`native function \`${e}\` called before runtime initialization`);var a=H[e];return s(a,`exported native function \`${e}\` not found`),s(r.length<=t,`native function \`${e}\` called with ${r.length} args but expects ${t}`),a(...r)}}function Ft(){if(n.locateFile){var e="neo_pen_wasm.wasm";return We(e)?e:X(e)}return new URL("/assets/neo_pen_wasm-BvRi4nA4.wasm",self.location.href).href}var oe;function Be(e){if(e==oe&&G)return new Uint8Array(G);if(q)return q(e);throw"both async and sync fetching of the wasm failed"}function Mt(e){return G?Promise.resolve().then(()=>Be(e)):new Promise((t,r)=>{ne(e,a=>t(new Uint8Array(a)),a=>{try{t(Be(e))}catch(i){r(i)}})})}function je(e,t,r){return Mt(e).then(a=>WebAssembly.instantiate(a,t)).then(r,a=>{w(`failed to asynchronously prepare wasm: ${a}`),me(oe)&&w(`warning: Loading from a file URI (${oe}) is not supported in most browsers. See https://emscripten.org/docs/getting_started/FAQ.html#how-do-i-run-a-local-webserver-for-testing-why-does-my-program-stall-in-downloading-or-preparing`),b(a)})}function Pt(e,t,r,a){return!e&&typeof WebAssembly.instantiateStreaming=="function"&&!We(t)&&!me(t)&&!U&&typeof fetch=="function"?fetch(t,{credentials:"same-origin"}).then(i=>{var f=WebAssembly.instantiateStreaming(i,r);return f.then(a,function(l){return w(`wasm streaming compile failed: ${l}`),w("falling back to ArrayBuffer instantiation"),je(t,r,a)})}):je(t,r,a)}function Rt(){return{env:rt,wasi_snapshot_preview1:rt}}function It(){var e=Rt();function t(i,f){return H=i.exports,V=H.memory,s(V,"memory not found in wasm exports"),ke(),bt(H.__wasm_call_ctors),St("wasm-instantiate"),H}Tt("wasm-instantiate");var r=n;function a(i){s(n===r,"the Module object should not be replaced during async compilation - perhaps the order of HTML elements is wrong?"),r=null,t(i.instance)}if(n.instantiateWasm)try{return n.instantiateWasm(e,t)}catch(i){w(`Module.instantiateWasm callback failed with error: ${i}`),v(i)}return oe||(oe=Ft()),Pt(G,oe,e,a).catch(v),{}}var D,se;function j(e,t,r=!0){Object.getOwnPropertyDescriptor(n,e)||Object.defineProperty(n,e,{configurable:!0,get(){let a=r?" (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)":"";b(`\`Module.${e}\` has been replaced by \`${t}\``+a)}})}function Ut(e){Object.getOwnPropertyDescriptor(n,e)&&b(`\`Module.${e}\` was supplied but \`${e}\` not included in INCOMING_MODULE_JS_API`)}function ze(e){return e==="FS_createPath"||e==="FS_createDataFile"||e==="FS_createPreloadedFile"||e==="FS_unlink"||e==="addRunDependency"||e==="FS_createLazyFile"||e==="FS_createDevice"||e==="removeRunDependency"}function Ge(e,t){typeof globalThis<"u"&&Object.defineProperty(globalThis,e,{configurable:!0,get(){te(`\`${e}\` is not longer defined by emscripten. ${t}`)}})}Ge("buffer","Please use HEAP8.buffer or wasmMemory.buffer"),Ge("asm","Please use wasmExports instead");function Ct(e){typeof globalThis<"u"&&!Object.getOwnPropertyDescriptor(globalThis,e)&&Object.defineProperty(globalThis,e,{configurable:!0,get(){var t=`\`${e}\` is a library symbol and not included by default; add it to your library.js __deps or to DEFAULT_LIBRARY_FUNCS_TO_INCLUDE on the command line`,r=e;r.startsWith("_")||(r="$"+e),t+=` (e.g. -sDEFAULT_LIBRARY_FUNCS_TO_INCLUDE='${r}')`,ze(e)&&(t+=". Alternatively, forcing filesystem support (-sFORCE_FILESYSTEM) can export this for you"),te(t)}}),Ve(e)}function Ve(e){Object.getOwnPropertyDescriptor(n,e)||Object.defineProperty(n,e,{configurable:!0,get(){var t=`'${e}' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the Emscripten FAQ)`;ze(e)&&(t+=". Alternatively, forcing filesystem support (-sFORCE_FILESYSTEM) can export this for you"),b(t)}})}var Re=e=>{for(;e.length>0;)e.shift()(n)};function Dt(e,t="i8"){switch(t.endsWith("*")&&(t="*"),t){case"i1":return S[e];case"i8":return S[e];case"i16":return be[e>>1];case"i32":return _[e>>2];case"i64":b("to do getValue(i64) use WASM_BIGINT");case"float":return Ae[e>>2];case"double":return Fe[e>>3];case"*":return p[e>>2];default:b(`invalid type for getValue: ${t}`)}}n.noExitRuntime;var ge=e=>(s(typeof e=="number"),e>>>=0,"0x"+e.toString(16).padStart(8,"0"));function Ot(e,t,r="i8"){switch(r.endsWith("*")&&(r="*"),r){case"i1":S[e]=t;break;case"i8":S[e]=t;break;case"i16":be[e>>1]=t;break;case"i32":_[e>>2]=t;break;case"i64":b("to do setValue(i64) use WASM_BIGINT");case"float":Ae[e>>2]=t;break;case"double":Fe[e>>3]=t;break;case"*":p[e>>2]=t;break;default:b(`invalid type for setValue: ${r}`)}}var Lt=e=>at(e),Nt=()=>ot(),te=e=>{te.shown||={},te.shown[e]||(te.shown[e]=1,U&&(e="warning: "+e),w(e))},$e=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0,Je=(e,t,r)=>{for(var a=t+r,i=t;e[i]&&!(i>=a);)++i;if(i-t>16&&e.buffer&&$e)return $e.decode(e.subarray(t,i));for(var f="";t<i;){var l=e[t++];if(!(l&128)){f+=String.fromCharCode(l);continue}var d=e[t++]&63;if((l&224)==192){f+=String.fromCharCode((l&31)<<6|d);continue}var m=e[t++]&63;if((l&240)==224?l=(l&15)<<12|d<<6|m:((l&248)!=240&&te("Invalid UTF-8 leading byte "+ge(l)+" encountered when deserializing a UTF-8 string in wasm memory to a JS string!"),l=(l&7)<<18|d<<12|m<<6|e[t++]&63),l<65536)f+=String.fromCharCode(l);else{var E=l-65536;f+=String.fromCharCode(55296|E>>10,56320|E&1023)}}return f},le=(e,t)=>
1(s(typeof e=="number",`UTF8ToString expects a number (got ${typeof e})`),e?Je(ie,e,t):""),kt=(e,t,r,a)=>{b(`Assertion failed: ${le(e)}, at: `+[t?le(t):"unknown filename",r,a?le(a):"unknown function"])};class xt{constructor(t){this.excPtr=t,this.ptr=t-24}set_type(t){p[this.ptr+4>>2]=t}get_type(){return p[this.ptr+4>>2]}set_destructor(t){p[this.ptr+8>>2]=t}get_destructor(){return p[this.ptr+8>>2]}set_caught(t){t=t?1:0,S[this.ptr+12]=t}get_caught(){return S[this.ptr+12]!=0}set_rethrown(t){t=t?1:0,S[this.ptr+13]=t}get_rethrown(){return S[this.ptr+13]!=0}init(t,r){this.set_adjusted_ptr(0),this.set_type(t),this.set_destructor(r)}set_adjusted_ptr(t){p[this.ptr+16>>2]=t}get_adjusted_ptr(){return p[this.ptr+16>>2]}get_exception_ptr(){var t=hr(this.get_type());if(t)return p[this.excPtr>>2];var r=this.get_adjusted_ptr();return r!==0?r:this.excPtr}}var Yt=(e,t,r)=>{var a=new xt(e);a.init(t,r),s(!1,"Exception thrown, but exception catching is not enabled. Compile with -sNO_DISABLE_EXCEPTION_CATCHING or -sEXCEPTION_CATCHING_ALLOWED=[..] to catch.")},Ht=()=>{b("native code called abort()")},Wt=1,Bt=()=>Wt,jt=(e,t,r)=>ie.copyWithin(e,t,t+r),Ie=(e,t)=>(s(e==e>>>0||e==(e|0)),s(t===(t|0)),t+2097152>>>0<4194305-!!e?(e>>>0)+t*4294967296:NaN);function zt(e,t,r){var a=Ie(e,t),i=new Date(a*1e3);_[r>>2]=i.getUTCSeconds(),_[r+4>>2]=i.getUTCMinutes(),_[r+8>>2]=i.getUTCHours(),_[r+12>>2]=i.getUTCDate(),_[r+16>>2]=i.getUTCMonth(),_[r+20>>2]=i.getUTCFullYear()-1900,_[r+24>>2]=i.getUTCDay();var f=Date.UTC(i.getUTCFullYear(),0,1,0,0,0,0),l=(i.getTime()-f)/(1e3*60*60*24)|0;_[r+28>>2]=l}var pe=e=>e%4===0&&(e%100!==0||e%400===0),Gt=[0,31,60,91,121,152,182,213,244,274,305,335],Vt=[0,31,59,90,120,151,181,212,243,273,304,334],$t=e=>{var t=pe(e.getFullYear()),r=t?Gt:Vt,a=r[e.getMonth()]+e.getDate()-1;return a};function Jt(e,t,r){var a=Ie(e,t),i=new Date(a*1e3);_[r>>2]=i.getSeconds(),_[r+4>>2]=i.getMinutes(),_[r+8>>2]=i.getHours(),_[r+12>>2]=i.getDate(),_[r+16>>2]=i.getMonth(),_[r+20>>2]=i.getFullYear()-1900,_[r+24>>2]=i.getDay();var f=$t(i)|0;_[r+28>>2]=f,_[r+36>>2]=-(i.getTimezoneOffset()*60);var l=new Date(i.getFullYear(),0,1),d=new Date(i.getFullYear(),6,1).getTimezoneOffset(),m=l.getTimezoneOffset(),E=(d!=m&&i.getTimezoneOffset()==Math.min(m,d))|0;_[r+32>>2]=E}var Ke=(e,t,r,a)=>{if(s(typeof e=="string",`stringToUTF8Array expects a string (got ${typeof e})`),!(a>0))return 0;for(var i=r,f=r+a-1,l=0;l<e.length;++l){var d=e.charCodeAt(l);if(d>=55296&&d<=57343){var m=e.charCodeAt(++l);d=65536+((d&1023)<<10)|m&1023}if(d<=127){if(r>=f)break;t[r++]=d}else if(d<=2047){if(r+1>=f)break;t[r++]=192|d>>6,t[r++]=128|d&63}else if(d<=65535){if(r+2>=f)break;t[r++]=224|d>>12,t[r++]=128|d>>6&63,t[r++]=128|d&63}else{if(r+3>=f)break;d>1114111&&te("Invalid Unicode code point "+ge(d)+" encountered when serializing a JS string to a UTF-8 string in wasm memory! (Valid unicode code points should be in range 0-0x10FFFF)."),t[r++]=240|d>>18,t[r++]=128|d>>12&63,t[r++]=128|d>>6&63,t[r++]=128|d&63}}return t[r]=0,r-i},ye=(e,t,r)=>(s(typeof r=="number","stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!"),Ke(e,ie,t,r)),Ee=e=>{for(var t=0,r=0;r<e.length;++r){var a=e.charCodeAt(r);a<=127?t++:a<=2047?t+=2:a>=55296&&a<=57343?(t+=4,++r):t+=3}return t},Kt=(e,t,r,a)=>{var i=new Date().getFullYear(),f=new Date(i,0,1),l=new Date(i,6,1),d=f.getTimezoneOffset(),m=l.getTimezoneOffset(),E=Math.max(d,m);p[e>>2]=E*60,_[t>>2]=+(d!=m);var C=ce=>ce.toLocaleTimeString(void 0,{hour12:!1,timeZoneName:"short"}).split(" ")[1],k=C(f),y=C(l);s(k),s(y),s(Ee(k)<=16,`timezone name truncated to fit in TZNAME_MAX (${k})`),s(Ee(y)<=16,`timezone name truncated to fit in TZNAME_MAX (${y})`),m<d?(ye(k,r,17),ye(y,a,17)):(ye(k,a,17),ye(y,r,17))},Xt=()=>Date.now(),Xe;Xe=()=>performance.now();var Zt=()=>2147483648,qt=e=>{var t=V.buffer,r=(e-t.byteLength+65535)/65536;try{return V.grow(r),ke(),1}catch(a){w(`growMemory: Attempted to grow heap from ${t.byteLength} bytes to ${e} bytes, but got error: ${a}`)}},Qt=e=>{var t=ie.length;e>>>=0,s(e>t);var r=Zt();if(e>r)return w(`Cannot enlarge memory, requested ${e} bytes, but the limit is ${r} bytes!`),!1;for(var a=(m,E)=>m+(E-m%E)%E,i=1;i<=4;i*=2){var f=t*(1+.2/i);f=Math.min(f,e+100663296);var l=Math.min(r,a(Math.max(e,f),65536)),d=qt(l);if(d)return!0}return w(`Failed to grow the heap from ${t} bytes to ${l}
1 bytes, not enough memory!`),!1},Ue={},er=()=>L||"./this.program",ve=()=>{if(!ve.strings){var e=(typeof navigator=="object"&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",t={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:e,_:er()};for(var r in Ue)Ue[r]===void 0?delete t[r]:t[r]=Ue[r];var a=[];for(var r in t)a.push(`${r}=${t[r]}`);ve.strings=a}return ve.strings},tr=(e,t)=>{for(var r=0;r<e.length;++r)s(e.charCodeAt(r)===(e.charCodeAt(r)&255)),S[t++]=e.charCodeAt(r);S[t]=0},rr=(e,t)=>{var r=0;return ve().forEach((a,i)=>{var f=t+r;p[e+i*4>>2]=f,tr(a,f),r+=a.length+1}),0},nr=(e,t)=>{var r=ve();p[e>>2]=r.length;var a=0;return r.forEach(i=>a+=i.length+1),p[t>>2]=a,0},ar=e=>{b("fd_close called without SYSCALLS_REQUIRE_FILESYSTEM")},ir=(e,t)=>{var r=0,a=0,i=0;{s(e==0||e==1||e==2);var f=2;e==0?r=2:(e==1||e==2)&&(r=64),i=1}return S[t]=f,be[t+2>>1]=i,se=[r>>>0,(D=r,+Math.abs(D)>=1?D>0?+Math.floor(D/4294967296)>>>0:~~+Math.ceil((D-+(~~D>>>0))/4294967296)>>>0:0)],_[t+8>>2]=se[0],_[t+12>>2]=se[1],se=[a>>>0,(D=a,+Math.abs(D)>=1?D>0?+Math.floor(D/4294967296)>>>0:~~+Math.ceil((D-+(~~D>>>0))/4294967296)>>>0:0)],_[t+16>>2]=se[0],_[t+20>>2]=se[1],0};function or(e,t,r,a,i){return Ie(t,r),70}var sr=[null,[],[]],lr=(e,t)=>{var r=sr[e];s(r),t===0||t===10?((e===1?fe:w)(Je(r,0)),r.length=0):r.push(t)},cr=(e,t,r,a)=>{for(var i=0,f=0;f<r;f++){var l=p[t>>2],d=p[t+4>>2];t+=8;for(var m=0;m<d;m++)lr(e,ie[l+m]);i+=d}return p[a>>2]=i,0},ur=(e,t)=>{for(var r=0,a=0;a<=t;r+=e[a++]);return r},Ze=[31,29,31,30,31,30,31,31,30,31,30,31],qe=[31,28,31,30,31,30,31,31,30,31,30,31],fr=(e,t)=>{for(var r=new Date(e.getTime());t>0;){var a=pe(r.getFullYear()),i=r.getMonth(),f=(a?Ze:qe)[i];if(t>f-r.getDate())t-=f-r.getDate()+1,r.setDate(1),i<11?r.setMonth(i+1):(r.setMonth(0),r.setFullYear(r.getFullYear()+1));else return r.setDate(r.getDate()+t),r}return r};function dr(e,t,r){var a=Ee(e)+1,i=new Array(a);return Ke(e,i,0,i.length),i}var Qe=(e,t)=>{s(e.length>=0,"writeArrayToMemory array must have a length (should be an array or typed array)"),S.set(e,t)},_r=(e,t,r,a)=>{var i=p[a+40>>2],f={tm_sec:_[a>>2],tm_min:_[a+4>>2],tm_hour:_[a+8>>2],tm_mday:_[a+12>>2],tm_mon:_[a+16>>2],tm_year:_[a+20>>2],tm_wday:_[a+24>>2],tm_yday:_[a+28>>2],tm_isdst:_[a+32>>2],tm_gmtoff:_[a+36>>2],tm_zone:i?le(i):""},l=le(r),d={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S","%Ec":"%c","%EC":"%C","%Ex":"%m/%d/%y","%EX":"%H:%M:%S","%Ey":"%y","%EY":"%Y","%Od":"%d","%Oe":"%e","%OH":"%H","%OI":"%I","%Om":"%m","%OM":"%M","%OS":"%S","%Ou":"%u","%OU":"%U","%OV":"%V","%Ow":"%w","%OW":"%W","%Oy":"%y"};for(var m in d)l=l.replace(new RegExp(m,"g"),d[m]);var E=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],C=["January","February","March","April","May","June","July","August","September","October","November","December"];function k(o,u,O){for(var R=typeof o=="number"?o.toString():o||"";R.length<u;)R=O[0]+R;return R}function y(o,u){return k(o,u,"0")}function ce(o,u){function O(Se){return Se<0?-1:Se>0?1:0}var R;return(R=O(o.getFullYear()-u.getFullYear()))===0&&(R=O(o.getMonth()-u.getMonth()))===0&&(R=O(o.getDate()-u.getDate())),R}function A(o){switch(o.getDay()){case 0:return new Date(o.getFullYear()-1,11,29);case 1:return o;case 2:return new Date(o.getFullYear(),0,3);case 3:return new Date(o.getFullYear(),0,2);case 4:return new Date(o.getFullYear(),0,1);case 5:return new Date(o.getFullYear()-1,11,31);case 6:return new Date(o.getFullYear()-1,11,30)}}function $(o){var u=fr(new Date(o.tm_year+1900,0,1),o.tm_yday),O=new Date(u.getFullYear(),0,4),R=new Date(u.getFullYear()+1,0,4),Se=A(O),Tr=A(R);return ce(Se,u)<=0?ce(Tr,u)<=0?u.getFullYear()+1:u.getFullYear():u.getFullYear()-1}var lt={"%a":o=>E[o.tm_wday].substring(0,3),"%A":o=>E[o.tm_wday],"%b":o=>C[o.tm_mon].substring(0,3),"%B":o=>C[o.tm_mon],"%C":o=>{var u=o.tm_year+1900;return y(u/100|0,2)},"%d":o=>y(o.tm_mday,2),"%e":o=>k(o.tm_mday,2," "),"%g":o=>$(o).toString().substring(2),"%G":$,"%H":o=>y(o.tm_hour,2),"%I":o=>{var u=o.tm_hour;return u==0?u=12:u>12&&(u-=12),y(u,2)},"%j":o=>y(o.tm_mday+ur(pe(o.tm_year+1900)?Ze:qe,o.tm_mon-1),3),"%m":o=>y(o.tm_mon+1,2),"%M":o=>y(o.tm_min,2),"%n":()=>` 2`,"%p":o=>o.tm_hour>=0&&o.tm_hour<12?"AM":"PM","%S":o=>y(o.tm_sec,2),"%t":()=>" ","%u":o=>o.tm_wday||7,"%U":o=>{var u=o.tm_yday+7-o.tm_wday;return y(Math.floor(u/7),2)},"%V":o=>{var u=Math.floor((o.tm_yday+7-(o.tm_wday+6)%7)/7);if((o.tm_wday+371-o.tm_yday-2)%7<=2&&u++,u){if(u==53){var R=(o.tm_wday+371-o.tm_yday)%7;R!=4&&(R!=3||!pe(o.tm_year))&&(u=1)}}else{u=52;var O=(o.tm_wday+7-o.tm_yday-1)%7;(O==4||O==5&&pe(o.tm_year%400-1))&&u++}return y(u,2)},"%w":o=>o.tm_wday,"%W":o=>{var u=o.tm_yday+7-(o.tm_wday+6)%7;return y(Math.floor(u/7),2)},"%y":o=>(o.tm_year+1900).toString().substring(2),"%Y":o=>o.tm_year+1900,"%z":o=>{var u=o.tm_gmtoff,O=u>=0;return u=Math.abs(u)/60,u=u/60*100+u%60,(O?"+":"-")+("0000"+u).slice(-4)},"%Z":o=>o.tm_zone,"%%":()=>"%"};l=l.replace(/%%/g,"\0\0");for(var m in lt)l.includes(m)&&(l=l.replace(new RegExp(m,"g"),lt[m](f)));l=l.replace(/\0\0/g,"%");var De=dr(l);return De.length>t?0:(Qe(De,e),De.length-1)},mr=(e,t,r,a,i)=>_r(e,t,r,a),gr=e=>{var t=n["_"+e];return s(t,"Cannot call unknown function "+e+", make sure it is exported"),t},et=e=>it(e),pr=e=>{var t=Ee(e)+1,r=et(t);return ye(e,r,t),r},tt=(e,t,r,a,i)=>{var f={string:A=>{var $=0;return A!=null&&A!==0&&($=pr(A)),$},array:A=>{var $=et(A.length);return Qe(A,$),$}};function l(A){return t==="string"?le(A):t==="boolean"?!!A:A}var d=gr(e),m=[],E=0;if(s(t!=="array",'Return type should not be "array".'),a)for(var C=0;C<a.length;C++){var k=f[r[C]];k?(E===0&&(E=Nt()),m[C]=k(a[C])):m[C]=a[C]}var y=d(...m);function ce(A){return E!==0&&Lt(E),l(A)}return y=ce(y),y},yr=(e,t,r,a)=>(...i)=>
2tt(e,t,r,i);function vr(){Ut("fetchSettings")}var rt={__assert_fail:kt,__cxa_throw:Yt,_abort_js:Ht,_emscripten_get_now_is_monotonic:Bt,_emscripten_memcpy_js:jt,_gmtime_js:zt,_localtime_js:Jt,_tzset_js:Kt,emscripten_date_now:Xt,emscripten_get_now:Xe,emscripten_resize_heap:Qt,environ_get:rr,environ_sizes_get:nr,fd_close:ar,fd_fdstat_get:ir,fd_seek:or,fd_write:cr,strftime_l:mr},H=It();n._neopen_createPen_wasm=P("neopen_createPen_wasm",1),n._neopen_destroyPen_wasm=P("neopen_destroyPen_wasm",1),n._neopen_onPenDown_wasm=P("neopen_onPenDown_wasm",6),n._neopen_onPenMove_wasm=P("neopen_onPenMove_wasm",8),n._neopen_onPenUp_wasm=P("neopen_onPenUp_wasm",6),n._neopen_releasePenResult_wasm=P("neopen_releasePenResult_wasm",1),n._malloc=P("malloc",1),n._free=P("free",1);var nt=()=>(nt=H.emscripten_stack_init)(),Ce=()=>(Ce=H.emscripten_stack_get_end)(),at=e=>(at=H._emscripten_stack_restore)(e),it=e=>(it=H._emscripten_stack_alloc)(e),ot=()=>(ot=H.emscripten_stack_get_current)(),hr=P("__cxa_is_pointer_type",1);n.dynCall_jiji=P("dynCall_jiji",5),n.dynCall_iiiiij=P("dynCall_iiiiij",7),n.dynCall_iiiiijj=P("dynCall_iiiiijj",9),n.dynCall_iiiiiijj=P("dynCall_iiiiiijj",10),n.dynCall_viijii=P("dynCall_viijii",7),n.ccall=tt,n.cwrap=yr,n.setValue=Ot,n.getValue=Dt;var wr=["writeI53ToI64","writeI53ToI64Clamped","writeI53ToI64Signaling","
2writeI53ToU64Clamped","writeI53ToU64Signaling","readI53FromI64","readI53FromU64","convertI32PairToI53","convertU32PairToI53","getTempRet0","setTempRet0","zeroMemory","exitJS","inetPton4","inetNtop4","inetPton6","inetNtop6","readSockaddr","writeSockaddr","initRandomFill","randomFill","emscriptenLog","readEmAsmArgs","jstoi_q","listenOnce","autoResumeAudioContext","dynCallLegacy","getDynCaller","dynCall","handleException","keepRuntimeAlive","runtimeKeepalivePush","runtimeKeepalivePop","callUserCallback","maybeExit","asmjsMangle","asyncLoad","alignMemory","mmapAlloc","HandleAllocator","getNativeTypeSize","STACK_SIZE","STACK_ALIGN","POINTER_SIZE","ASSERTIONS","uleb128Encode","sigToWasmTypes","generateFuncType","convertJsFunctionToWasm","getEmptyTableSlot","updateTableMap","getFunctionAddress","addFunction","removeFunction","reallyNegative","unSign","strLen","reSign","formatString","intArrayToString","AsciiToString","UTF16ToString","stringToUTF16","lengthBytesUTF16","UTF32ToString","stringToUTF32","lengthBytesUTF32","stringToNewUTF8","registerKeyEventCallback","maybeCStringToJsString","findEventTarget","getBoundingClientRect","fillMouseEventData","registerMouseEventCallback","registerWheelEventCallback","registerUiEventCallback","registerFocusEventCallback","fillDeviceOrientationEventData","registerDeviceOrientationEventCallback","fillDeviceMotionEventData","registerDeviceMotionEventCallback","screenOrientation","fillOrientationChangeEventData","registerOrientationChangeEventCallback","fillFullscreenChangeEventData","registerFullscreenChangeEventCallback","JSEvents_requestFullscreen","JSEvents_resizeCanvasForFullscreen","registerRestoreOldStyle","hideEverythingExceptGivenElement","restoreHiddenElements","setLetterbox","softFullscreenResizeWebGLRenderTarget","doRequestFullscreen","fillPointerlockChangeEventData","registerPointerlockChangeEventCallback","registerPointerlockErrorEventCallback","requestPointerLock","fillVisibilityChangeEventData","registerVisibilityChangeEventCallback","registerTouchEventCallback","fillGamepadEventData","registerGamepadEventCallback","registerBeforeUnloadEventCallback","fillBatteryEventData","battery","registerBatteryEventCallback","setCanvasElementSize","getCanvasElementSize","jsStackTrace","getCallstack","convertPCtoSourceLocation","checkWasiClock","wasiRightsToMuslOFlags","wasiOFlagsToMuslOFlags","createDyncallWrapper","safeSetTimeout","setImmediateWrapped","clearImmediateWrapped","polyfillSetImmediate","getPromise","makePromise","idsToPromises","makePromiseCallback","findMatchingCatch","Browser_asyncPrepareDataCounter","setMainLoop","getSocketFromFD","getSocketAddress","FS_createPreloadedFile","FS_modeStringToFlags","FS_getMode","FS_stdin_getChar","FS_unlink","FS_createDataFile","FS_mkdirTree","_setNetworkCallback","heapObjectForWebGLType","toTypedArrayIndex","webgl_enable_ANGLE_instanced_arrays","webgl_enable_OES_vertex_array_object","webgl_enable_WEBGL_draw_buffers","webgl_enable_WEBGL_multi_draw","emscriptenWebGLGet","computeUnpackAlignedImageSize","colorChannelsInGlTextureFormat","emscriptenWebGLGetTexPixelData","emscriptenWebGLGetUniform","webglGetUniformLocation","webglPrepareUniformLocationsBeforeFirstUse","webglGetLeftBracePos","emscriptenWebGLGetVertexAttrib","__glGetActiveAttribOrUniform","writeGLArray","registerWebGlEventCallback","runAndAbortIfError","ALLOC_NORMAL","ALLOC_STACK","allocate","writeStringToMemory","writeAsciiToMemory","setErrNo","demangle","stackTrace"];wr.forEach(Ct);var br=["run","addOnPreRun","addOnInit","addOnPreMain","addOnExit","addOnPostRun","addRunDependency","removeRunDependency","out","err","callMain","abort","wasmMemory","wasmExports","writeStackCookie","checkStackCookie","convertI32PairToI53Checked","stackSave","stackRestore","stackAlloc","ptrToString","getHeapMax","growMemory","ENV","MONTH_DAYS_REGULAR","MONTH_DAYS_LEAP","MONTH_DAYS_REGULAR_CUMULATIVE","MONTH_DAYS_LEAP_CUMULATIVE","isLeapYear","ydayFromDate","arraySum","addDays","ERRNO_CODES","ERRNO_MESSAGES","DNS","Protocols","Sockets","timers","warnOnce","readEmAsmArgsArray","jstoi_s","getExecutableName","wasmTable","noExitRuntime","getCFunc","freeTableIndexes","functionsInTableMap","PATH","PATH_FS","UTF8Decoder","UTF8ArrayToString","UTF8ToString","stringToUTF8Array","stringToUTF8","lengthBytesUTF8","intArrayFromString","stringToAscii","UTF16Decoder","stringToUTF8OnStack","writeArrayToMemory","JSEvents","specialHTMLTargets","findCanvasEventTarget","currentFullscreenStrategy","restoreOldWindowedStyle","UNWIND_CACHE","ExitStatus","getEnvStrings","flush_NO_FILESYSTEM","promiseMap","uncaughtExceptionCount","exceptionLast","exceptionCaught","ExceptionInfo","Browser","getPreloadedImageData__data","wget","SYSCALLS","preloadPlugins","FS_stdin_getChar_buffer","FS_createPath","FS_createDevice","FS_readFile","FS","FS_createLazyFile","MEMFS","TTY","PIPEFS","SOCKFS","tempFixedLengthArray","miniTempWebGLFloatBuffers","miniTempWebGLIntBuffers","GL","AL","GLUT","EGL","GLEW","IDBStore","SDL","SDL_gfx","allocateUTF8","allocateUTF8OnStack","print","printErr"];br.forEach(Ve);var Te;de=function e(){Te||st(),Te||(de=e)};function Er(){nt(),pt()}function st(){if(Q>0||(Er(),yt(),Q>0))return;function e(){Te||(Te=!0,n.calledRun=!0,!Y&&(vt(),g(n),n.onRuntimeInitialized&&n.onRuntimeInitialized(),s(!n._main,'compiled without a main, but one is present. if you added it from JS, use Module["onRuntimeInitialized"]'),ht(
2)))}n.setStatus?(n.setStatus("Running..."),setTimeout(function(){setTimeout(function(){n.setStatus("")},1),e()},1)):e(),Me()}if(n.preInit)for(typeof n.preInit=="function"&&(n.preInit=[n.preInit]);n.preInit.length>0;)n.preInit.pop()();st(),W=c;for(const e of Object.keys(n))e in M||Object.defineProperty(M,e,{configurable:!0,get(){b(`Access to module property ('${e}') is no longer possible via the module constructor argument; Instead, use the result of the module constructor.`)}});return W}})();class dt{static instance=null;static loadPromise=null;static async getInstance(){return this.instance?this.instance:(this.loadPromise||(this.loadPromise=ft().then(M=>(this.instance=M,M)).catch(()=>{this.loadPromise=null})),this.loadPromise)}}const _t=()=>dt.getInstance();function mt(I){const M=["penType","fastMode","dpi","displayScaleX","displayScaleY","scalePrecision","color","penWidth","penMinWidth","rotateAngle","tiltEnabled","tiltScale","directionEnabled","brushShape","brushRatio","brushAngle","brushSpacing","pressureSensitivity","velocitySensitivity","velocityAmplifier","velocityIgnoreThreshold","velocityLowerBound","velocityUpperBound","smoothLevel"],W=["penType","rotateAngle","tiltEnabled","directionEnabled","brushShape"],n=["color"],g=["fastMode"],v=(M.length-1)*4+1,c=new ArrayBuffer(v),x=new DataView(c);let T=0;for(let U=0;U<M.length;U++){const F=M[U];W.includes(F)?(x.setInt32(T,I[F]??0,!0),T+=4):n.includes(F)?(x.setUint32(T,I[F]??0,!0),T+=4):g.includes(F)?(x.setUint8(T,I[F]?1:0),T+=1):(x.setFloat32(T,I[F]??0,!0),T+=4)}return c}const J=4,he=4,Ne=8,K=6*J+3*he+Ne;function gt(I,M=32767){const W=new ArrayBuffer(I.length*K),n=new DataView(W);let g=0;return I.forEach(v=>{n.setFloat32(g,v.x,!0),g+=J,n.setFloat32(g,v.y,!0),g+=J,n.setFloat32(g,v.pressure/M,!0),g+=J,n.setFloat32(g,v.size??0,!0),g+=J,n.setInt32(g,0,!0),g+=he,n.setInt32(g,0,!0),g+=he,n.setFloat32(g,0,!0),g+=J,n.setFloat32(g,0,!0),g+=J;const c=BigInt(v.event_time??0);n.setUint32(g,Number(c&0xffffffffn),!0),n.setUint32(g+4,Number(c>>32n),!0),g+=Ne,n.setInt32(g,0,!0),g+=he}),W}return self.onmessage=async function(I){const{penConfig:M,pointData:W,shapeId:n,maxPressure:g}=I.data,v=gt(W,g);try{const c=await _t(),x={penType:5,fastMode:0,dpi:320,displayScaleX:1,displayScaleY:1,scalePrecision:1,color:-13938769,penWidth:1,penMinWidth:0,rotateAngle:0,tiltEnabled:0,tiltScale:3,directionEnabled:0,brushShape:0,brushRatio:5,brushAngle:0,brushSpacing:.25,pressureSensitivity:1,velocitySensitivity:0,velocityAmplifier:0,velocityIgnoreThreshold:0,velocityLowerBound:0,velocityUpperBound:0,smoothLevel:.2};Object.assign(x,M);const T=mt(x),U=c._malloc(T.byteLength);c.HEAP8.set(new Uint8Array(T),U);const F=c._neopen_createPen_wasm(U),z=new Uint8Array(v,0,K),re=new Uint8Array(v,v.byteLength-K,K),L=c._malloc(4),h=c._malloc(4),X=[],Z=c._malloc(z.byteLength);c.HEAP8.set(z,Z),c._neopen_onPenDown_wasm(F,Z,z.byteLength,!0,L,h);const ne=new DataView(c.HEAP8.buffer).getUint32(L,!0),q=new DataView(c.HEAP8.buffer).getUint32(h,!0),ue=new Uint8Array(q);ue.set(new Uint8Array(c.HEAP8.buffer,ne,q)),X.push(ue);let B=0;const ae=c._malloc(v.byteLength),we=new Uint8Array(v);c.HEAP8.set(we,ae);for(let Y=K;Y<v.byteLength;Y+=K){c._neopen_onPenMove_wasm(F,ae+Y,K,0,0,!0,L,h),B=new DataView(c.HEAP8.buffer).getUint32(L,!0);const s=new DataView(c.HEAP8.buffer).getUint32(h,!0),S=new Uint8Array(s);S.set(new Uint8Array(c.HEAP8.buffer,B,s)),X.push(S)}c._free(ae);const fe=c._malloc(re.byteLength);c.HEAP8.set(re,fe),c._neopen_onPenUp_wasm(F,fe,re.byteLength,!0,L,h);const w=new DataView(c.HEAP8.buffer).getUint32(L,!0),G=new DataView(c.HEAP8.buffer).getUint32(h,!0),V=new Uint8Array(G);V.set(new Uint8Array(c.HEAP8.buffer,w,G)),X.push(V),c._free(U),c._free(Z),c._free(fe),c._free(L),c._free(h),c._neopen_releasePenResult_wasm(ne),c._neopen_releasePenResult_wasm(B),c._neopen_releasePenResult_wasm(w),c._neopen_destroyPen_wasm(F),self.postMessage({data:X,uniqueId:n},{transfer:X.map(Y=>Y.buffer)})}catch{throw new Error(n)}},Oe}ct();var ut=Object.freeze({__proto__:null})})();
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.