@knockdata/objectexplorer 0.4.2 → 0.4.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/app/assets/WorkerParser.js +14 -14
- package/app/assets/browser-4.js +1 -1
- package/app/assets/browser.js +1 -1
- package/app/assets/index.css +1 -1
- package/app/assets/index.js +93 -90
- package/app/assets/search-worker.js +2 -2
- package/app/assets/wasm-worker.js +1 -1
- package/cli.js +3 -32
- package/package.json +1 -1
- package/server/WebServer.mjs +433 -319
- package/server/logging.proto +62 -0
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
const e=new TextEncoder,t=new TextDecoder;function n(){let t=new Uint8Array(4096),n=0;function r(e){if(n+e<=t.length)return;let r=t.length*2;for(;r<n+e;)r*=2;let i=new Uint8Array(r);i.set(t),t=i}function i(e){r(1),t[n++]=e&255}function a(e){let t=e>>>0;for(;t>=128;)i(t&127|128),t>>>=7;i(t)}function o(e){a(e.length),r(e.length),t.set(e,n),n+=e.length}function s(t){o(e.encode(t))}function c(e){r(4),t[n++]=e&255,t[n++]=e>>8&255,t[n++]=e>>16&255,t[n++]=e>>24&255}function l(){return t.slice(0,n)}return{writeU8:i,writeVarint:a,writeBytes:o,writeString:s,writeU32:c,result:l}}function r(e){let n=e instanceof Uint8Array?e:new Uint8Array(e),r=0;function i(){return n[r++]}function a(){let e=0,t=0;for(;;){let n=i();if(e|=(n&127)<<t,!(n&128))break;t+=7}return e>>>0}function o(){let e=a(),t=n.subarray(r,r+e);return r+=e,t}function s(){return t.decode(o())}function c(){let e=n[r]|n[r+1]<<8|n[r+2]<<16|n[r+3]<<24;return r+=4,e>>>0}function l(){return r>=n.length}return{readU8:i,readVarint:a,readBytes:o,readString:s,readU32:c,done:l}}const i=[73,68,88,49];function a(){let e=n();for(let t of i)e.writeU8(t);return e.writeU8(2),e.result()}function o(e){let{path:t,mtime:r=0,keywords:i}=e,a=Math.floor(r/1e3),o=n();o.writeU8(1),o.writeString(t),o.writeVarint(a),o.writeVarint(i.length);for(let{keyword:e,score:t}of i)o.writeString(e),o.writeU8(t);return o.result()}function s(e){let t=r(e);for(let e=0;e<4;e++)if(t.readU8()!==i[e])throw Error(`Invalid magic bytes`);let n=t.readU8();if(n!==2)throw Error(`Outdated index version `+n+`, expected 2`);let a=[];for(;!t.done();){let e=t.readU8();if(e===1){let e=t.readString(),n=t.readVarint()*1e3,r=t.readVarint(),i=[];for(let e=0;e<r;e++){let e=t.readString(),n=t.readU8();i.push({keyword:e,score:n})}a.push({type:`add`,path:e,mtime:n,keywords:i})}else if(e===2){let e=t.readString();a.push({type:`tombstone`,path:e})}else throw Error(`Unknown entry type: `+e)}return{entries:a}}function c(e){let t=new Map;for(let n of e)n.type===`add`?t.set(n.path,{keywords:n.keywords,mtime:n.mtime||0}):n.type===`tombstone`&&t.delete(n.path);return t}function l(){return{children:new Map,value:null}}function u(e){let t=l();for(let{keyword:n,value:r}of e){let e=t;for(let t of n)e.children.has(t)||e.children.set(t,l()),e=e.children.get(t);e.value=r}return t}function d(e,t,n){e.value!==null&&n.push({value:e.value,keyword:t});for(let[r,i]of e.children)d(i,t+r,n)}function f(e){let{root:t,prefix:n}=e,r=t;for(let e of n){if(!r.children.has(e))return[];r=r.children.get(e)}let i=[];return d(r,n,i),i}function p(e,t,n){let r=t.length,i=new Int32Array(r+1);i[0]=e[0]+1;for(let a=1;a<=r;a++){let r=t[a-1]===n?0:1,o=e[a]+1,s=i[a-1]+1,c=e[a-1]+r;i[a]=o<s?o<c?o:c:s<c?s:c}return i}function m(e,t,n,r,i,a){e.value!==null&&t[r.length]<=i&&a.push({value:e.value,keyword:n});let o=t[0];for(let e=1;e<t.length;e++)t[e]<o&&(o=t[e]);if(!(o>i))for(let[o,s]of e.children)m(s,p(t,r,o),n+o,r,i,a)}function h(e){let{root:t,query:n,maxDist:r}=e,i=new Int32Array(n.length+1);for(let e=0;e<=n.length;e++)i[e]=e;let a=[];return m(t,i,``,n,r,a),a}function g(e){return f(e)}const _=/[^a-zA-Z0-9]+/;function v(e){return e.toLowerCase().split(_).filter(e=>e.length>0)}function y(e){let t=c(e),n=new Map,r=new Map,i=new Map,a=0;for(let[e,o]of t)n.set(a,e),r.set(e,a),i.set(e,o.mtime),a++;let o=new Map;for(let[e,n]of t){let t=r.get(e);for(let{keyword:e,score:r}of n.keywords)o.has(e)?o.get(e).push([t,r]):o.set(e,[[t,r]])}let s=Array.from(o.keys()).sort();return{trie:u(s.map((e,t)=>({keyword:e,value:t}))),keywords:s,keywordToDocsList:s.map(e=>{let t=o.get(e);return t.sort((e,t)=>t[1]-e[1]),t}),pathIndex:n,pathToIdx:r,pathToMtime:i}}function b(e){let{index:t,query:n,maxResults:r=10}=e,{trie:i,keywordToDocsList:a,pathIndex:o}=t,s=v(n),c=n.toLowerCase().trim();c.length>0&&!s.includes(c)&&s.push(c);let l=new Map;for(let e of s){let t=e.length>=5?h({root:i,query:e,maxDist:1}):[],n=g({root:i,prefix:e}),r=new Set,o=[];for(let e of t)r.has(e.value)||(r.add(e.value),o.push(e.value));for(let e of n)r.has(e.value)||(r.add(e.value),o.push(e.value));for(let e of o){let t=a[e];if(t)for(let[e,n]of t){let t=l.get(e)||0;l.set(e,Math.min(t+n,255))}}}let u=Array.from(l.entries()).sort((e,t)=>t[1]===e[1]?e[0]-t[0]:t[1]-e[1]),d=[];for(let e=0;e<Math.min(u.length,r);e++){let[t,n]=u[e];d.push({path:o.get(t),score:n})}return d}const x=[{exts:`jpg jpeg jfif pjpeg pjp`,categories:`img bin`,mime:`image/jpeg`},{exts:`png`,categories:`img bin`,mime:`image/png`},{exts:`gif`,categories:`img bin`,mime:`image/gif`},{exts:`svg svgz`,categories:`img text`,mime:`image/svg+xml`},{exts:`webp`,categories:`img bin`,mime:`image/webp`},{exts:`ico`,categories:`img bin`,mime:`image/x-icon`},{exts:`bmp`,categories:`img bin`,mime:`image/bmp`},{exts:`tiff tif`,categories:`img bin`,mime:`image/tiff`},{exts:`avif`,categories:`img bin`,mime:`image/avif`},{exts:`heic heif`,categories:`img bin apple`,mime:`image/heic`},{exts:`jxl`,categories:`img bin`,mime:`image/jxl`},{exts:`psd`,categories:`img bin adobe`,mime:`image/vnd.adobe.photoshop`},{exts:`ai`,categories:`img bin adobe`,mime:`application/postscript`},{exts:`eps`,categories:`img bin`,mime:`application/postscript`},{exts:`raw cr2 nef arw dng orf rw2`,categories:`img bin camera`,mime:`image/x-raw`},{exts:`icns`,categories:`img bin apple`,mime:`image/x-icns`},{exts:`pdf`,categories:`doc bin`,mime:`application/pdf`},{exts:`doc`,categories:`doc bin ms`,mime:`application/msword`},{exts:`docx`,categories:`doc bin ms`,mime:`application/vnd.openxmlformats-officedocument.wordprocessingml.document`},{exts:`xls`,categories:`doc bin ms`,mime:`application/vnd.ms-excel`},{exts:`xlsx`,categories:`doc bin ms`,mime:`application/vnd.openxmlformats-officedocument.spreadsheetml.sheet`},{exts:`ppt`,categories:`doc bin ms`,mime:`application/vnd.ms-powerpoint`},{exts:`pptx`,categories:`doc bin ms`,mime:`application/vnd.openxmlformats-officedocument.presentationml.presentation`},{exts:`odt`,categories:`doc bin`,mime:`application/vnd.oasis.opendocument.text`},{exts:`ods`,categories:`doc bin`,mime:`application/vnd.oasis.opendocument.spreadsheet`},{exts:`odp`,categories:`doc bin`,mime:`application/vnd.oasis.opendocument.presentation`},{exts:`rtf`,categories:`doc text`,mime:`application/rtf`},{exts:`pages`,categories:`doc bin apple`,mime:`application/vnd.apple.pages`},{exts:`numbers`,categories:`doc bin apple`,mime:`application/vnd.apple.numbers`},{exts:`key`,categories:`doc bin apple`,mime:`application/vnd.apple.keynote`},{exts:`epub`,categories:`doc bin`,mime:`application/epub+zip`},{exts:`fb2`,categories:`doc text`,mime:`application/x-fictionbook+xml`},{exts:`fbz`,categories:`doc bin`,mime:`application/x-zip-compressed-fb2`},{exts:`mobi`,categories:`doc bin`,mime:`application/x-mobipocket-ebook`},{exts:`prc`,categories:`doc bin`,mime:`application/x-mobipocket-ebook`},{exts:`azw`,categories:`doc bin`,mime:`application/vnd.amazon.ebook`},{exts:`azw3`,categories:`doc bin`,mime:`application/vnd.amazon.mobi8-ebook`},{exts:`cbz`,categories:`doc bin`,mime:`application/vnd.comicbook+zip`},{exts:`cbt`,categories:`doc bin`,mime:`application/x-cbt`},{exts:`cbr`,categories:`doc bin`,mime:`application/vnd.comicbook-rar`},{exts:`mp3`,categories:`audio bin`,mime:`audio/mpeg`},{exts:`ogg oga`,categories:`audio bin`,mime:`audio/ogg`},{exts:`wav`,categories:`audio bin`,mime:`audio/wav`},{exts:`weba`,categories:`audio bin`,mime:`audio/webm`},{exts:`flac`,categories:`audio bin`,mime:`audio/flac`},{exts:`aac`,categories:`audio bin`,mime:`audio/aac`},{exts:`m4a`,categories:`audio bin apple`,mime:`audio/mp4`},{exts:`aiff aif`,categories:`audio bin apple`,mime:`audio/aiff`},{exts:`wma`,categories:`audio bin ms`,mime:`audio/x-ms-wma`},{exts:`opus`,categories:`audio bin`,mime:`audio/opus`},{exts:`mid midi`,categories:`audio bin`,mime:`audio/midi`},{exts:`mp4 m4v`,categories:`video bin`,mime:`video/mp4`},{exts:`ogv`,categories:`video bin`,mime:`video/ogg`},{exts:`webm`,categories:`video bin`,mime:`video/webm`},{exts:`3gp 3gpp`,categories:`video bin`,mime:`video/3gpp`},{exts:`avi`,categories:`video bin`,mime:`video/x-msvideo`},{exts:`mov`,categories:`video bin apple`,mime:`video/quicktime`},{exts:`mkv`,categories:`video bin`,mime:`video/x-matroska`},{exts:`wmv`,categories:`video bin ms`,mime:`video/x-ms-wmv`},{exts:`flv`,categories:`video bin`,mime:`video/x-flv`},{exts:`ts`,categories:`video bin`,mime:`video/mp2t`},{exts:`mpg mpeg`,categories:`video bin`,mime:`video/mpeg`},{exts:`m3u8`,categories:`video text`,mime:`application/vnd.apple.mpegurl`},{exts:`woff`,categories:`font bin`,mime:`font/woff`},{exts:`woff2`,categories:`font bin`,mime:`font/woff2`},{exts:`ttf`,categories:`font bin`,mime:`font/ttf`},{exts:`otf`,categories:`font bin`,mime:`font/otf`},{exts:`eot`,categories:`font bin ms`,mime:`application/vnd.ms-fontobject`},{exts:`zip`,categories:`zip bin`,mime:`application/zip`},{exts:`gz gzip`,categories:`zip bin`,mime:`application/gzip`},{exts:`tar`,categories:`zip bin`,mime:`application/x-tar`},{exts:`tgz`,categories:`zip bin`,mime:`application/gzip`},{exts:`bz2`,categories:`zip bin`,mime:`application/x-bzip2`},{exts:`xz`,categories:`zip bin`,mime:`application/x-xz`},{exts:`zst`,categories:`zip bin`,mime:`application/zstd`},{exts:`7z`,categories:`zip bin`,mime:`application/x-7z-compressed`},{exts:`rar`,categories:`zip bin`,mime:`application/vnd.rar`},{exts:`dmg`,categories:`zip bin apple`,mime:`application/x-apple-diskimage`},{exts:`apkg`,categories:`doc bin`,mime:`application/vnd.anki`},{exts:`pkg`,categories:`zip bin apple`,mime:`application/x-newton-compatible-pkg`},{exts:`iso`,categories:`zip bin`,mime:`application/x-iso9660-image`},{exts:`deb`,categories:`zip bin linux`,mime:`application/vnd.debian.binary-package`},{exts:`rpm`,categories:`zip bin linux`,mime:`application/x-rpm`},{exts:`msi`,categories:`zip bin ms`,mime:`application/x-msdownload`},{exts:`apk`,categories:`zip bin android`,mime:`application/vnd.android.package-archive`},{exts:`ipa`,categories:`zip bin apple`,mime:`application/octet-stream`},{exts:`jar war ear`,categories:`zip bin java`,mime:`application/java-archive`},{exts:`txt text`,categories:`data text`,mime:`text/plain`},{exts:`csv tsv`,categories:`data text`,mime:`text/csv`},{exts:`json`,categories:`data text`,mime:`application/json`},{exts:`jsonl ndjson`,categories:`data text`,mime:`application/x-ndjson`},{exts:`xml`,categories:`data text`,mime:`application/xml`},{exts:`yaml yml`,categories:`data text`,mime:`application/x-yaml`},{exts:`toml`,categories:`data text`,mime:`application/toml`},{exts:`ini cfg conf`,categories:`data text`,mime:`text/plain`},{exts:`env`,categories:`data text`,mime:`text/plain`},{exts:`log`,categories:`data text`,mime:`text/plain`},{exts:`html htm`,categories:`data text`,mime:`text/html`},{exts:`xhtml`,categories:`data text`,mime:`application/xhtml+xml`},{exts:`plist`,categories:`data text apple`,mime:`application/x-plist`},{exts:`ics`,categories:`data text`,mime:`text/calendar`},{exts:`vcf`,categories:`data text`,mime:`text/vcard`},{exts:`parquet`,categories:`data bin`,mime:`application/vnd.apache.parquet`},{exts:`avro`,categories:`data bin`,mime:`application/avro`},{exts:`orc`,categories:`data bin`,mime:`application/vnd.apache.orc`},{exts:`arrow feather ipc`,categories:`data bin`,mime:`application/vnd.apache.arrow.file`},{exts:`h5 hdf5 he5`,categories:`data bin`,mime:`application/x-hdf5`},{exts:`nc nc4 cdf`,categories:`data bin`,mime:`application/x-netcdf`},{exts:`sav`,categories:`data bin`,mime:`application/x-spss-sav`},{exts:`xpt`,categories:`data bin`,mime:`application/x-sas-xport`},{exts:`sas7bdat`,categories:`data bin`,mime:`application/x-sas-data`},{exts:`protobuf proto`,categories:`data text`,mime:`text/plain`},{exts:`sqlite db sqlite3`,categories:`data bin`,mime:`application/x-sqlite3`},{exts:`duckdb`,categories:`data bin`,mime:`application/vnd.duckdb`},{exts:`wasm`,categories:`data bin`,mime:`application/wasm`},{exts:`js mjs cjs`,lang:`javascript`,categories:`code text`,mime:`application/javascript`},{exts:`jsx`,lang:`javascript`,categories:`code text`,mime:`application/javascript`},{exts:`ts mts cts`,lang:`typescript`,categories:`code text`,mime:`application/typescript`},{exts:`tsx`,lang:`typescript`,categories:`code text`,mime:`application/typescript`},{exts:`py pyw`,lang:`python`,categories:`code text`,mime:`text/x-python`},{exts:`css`,lang:`css`,categories:`code text`,mime:`text/css`},{exts:`scss`,lang:`scss`,categories:`code text`,mime:`text/x-scss`},{exts:`less`,lang:`less`,categories:`code text`,mime:`text/x-less`},{exts:`c h`,lang:`c`,categories:`code text`,mime:`text/x-c`},{exts:`cpp cc cxx hpp hh hxx`,lang:`cpp`,categories:`code text`,mime:`text/x-c++`},{exts:`java`,lang:`java`,categories:`code text`,mime:`text/x-java`},{exts:`go`,lang:`go`,categories:`code text`,mime:`text/x-go`},{exts:`rs`,lang:`rust`,categories:`code text`,mime:`text/x-rust`},{exts:`rb`,lang:`ruby`,categories:`code text`,mime:`text/x-ruby`},{exts:`php`,lang:`php`,categories:`code text`,mime:`text/x-php`},{exts:`swift`,lang:`swift`,categories:`code text apple`,mime:`text/x-swift`},{exts:`kt kts`,lang:`kotlin`,categories:`code text`,mime:`text/x-kotlin`},{exts:`scala`,lang:`scala`,categories:`code text`,mime:`text/x-scala`},{exts:`r R`,lang:`r`,categories:`code text`,mime:`text/x-r`},{exts:`lua`,lang:`lua`,categories:`code text`,mime:`text/x-lua`},{exts:`pl pm`,lang:`perl`,categories:`code text`,mime:`text/x-perl`},{exts:`sh bash zsh fish`,lang:`shell`,categories:`code text`,mime:`application/x-sh`},{exts:`bat cmd ps1`,lang:`shell`,categories:`code text ms`,mime:`text/plain`},{exts:`sql`,lang:`sql`,categories:`code text`,mime:`application/sql`},{exts:`md markdown`,lang:`markdown`,categories:`code text`,mime:`text/markdown`},{exts:`tex latex`,lang:`latex`,categories:`code text`,mime:`application/x-tex`},{exts:`zig`,lang:`zig`,categories:`code text`,mime:`text/x-zig`},{exts:`nim`,lang:`nim`,categories:`code text`,mime:`text/x-nim`},{exts:`dart`,lang:`dart`,categories:`code text`,mime:`text/x-dart`},{exts:`ex exs`,lang:`elixir`,categories:`code text`,mime:`text/x-elixir`},{exts:`erl hrl`,lang:`erlang`,categories:`code text`,mime:`text/x-erlang`},{exts:`hs`,lang:`haskell`,categories:`code text`,mime:`text/x-haskell`},{exts:`clj cljs cljc`,lang:`clojure`,categories:`code text`,mime:`text/x-clojure`},{exts:`ml mli`,lang:`ocaml`,categories:`code text`,mime:`text/x-ocaml`},{exts:`v vh sv`,lang:`verilog`,categories:`code text`,mime:`text/x-verilog`},{exts:`vhd vhdl`,lang:`vhdl`,categories:`code text`,mime:`text/x-vhdl`},{exts:`m mm`,lang:`objc`,categories:`code text apple`,mime:`text/x-objectivec`},{exts:`cs`,lang:`csharp`,categories:`code text ms`,mime:`text/x-csharp`},{exts:`fs fsx fsi`,lang:`fsharp`,categories:`code text ms`,mime:`text/x-fsharp`},{exts:`vue`,lang:`vue`,categories:`code text`,mime:`text/x-vue`},{exts:`svelte`,lang:`svelte`,categories:`code text`,mime:`text/x-svelte`},{exts:`astro`,lang:`astro`,categories:`code text`,mime:`text/x-astro`},{exts:`graphql gql`,lang:`graphql`,categories:`code text`,mime:`application/graphql`},{exts:`dockerfile`,lang:`dockerfile`,categories:`code text`,mime:`text/x-dockerfile`},{exts:`tf hcl`,lang:`hcl`,categories:`code text`,mime:`text/x-hcl`},{exts:`cmake`,lang:`cmake`,categories:`code text`,mime:`text/x-cmake`},{exts:`stl`,categories:`3d bin`,mime:`model/stl`},{exts:`obj`,categories:`3d text`,mime:`model/obj`},{exts:`gltf`,categories:`3d text`,mime:`model/gltf+json`},{exts:`glb`,categories:`3d bin`,mime:`model/gltf-binary`},{exts:`fbx`,categories:`3d bin`,mime:`application/octet-stream`},{exts:`usdz`,categories:`3d bin apple`,mime:`model/vnd.usdz+zip`},{exts:`exe`,categories:`exec bin ms`,mime:`application/x-msdownload`},{exts:`dll`,categories:`exec bin ms`,mime:`application/x-msdownload`},{exts:`so`,categories:`exec bin linux`,mime:`application/x-sharedlib`},{exts:`dylib`,categories:`exec bin apple`,mime:`application/x-mach-binary`},{exts:`app`,categories:`exec bin apple`,mime:`application/x-mach-binary`},{exts:`o`,categories:`exec bin`,mime:`application/x-object`},{exts:`a lib`,categories:`exec bin`,mime:`application/x-archive`},{exts:`class`,categories:`exec bin java`,mime:`application/java-vm`},{exts:`pyc pyo`,categories:`exec bin`,mime:`application/x-python-code`},{exts:`node`,categories:`exec bin`,mime:`application/x-sharedlib`}];Object.fromEntries(x.flatMap(({exts:e,mime:t})=>e.split(` `).map(e=>[e,t]))),Object.fromEntries(x.flatMap(({exts:e,categories:t})=>e.split(` `).map(e=>[e,t?.split(` `)[0]]))),Object.fromEntries(x.flatMap(({exts:e,lang:t})=>e.split(` `).map(e=>[e,t])).filter(e=>e[1]));function ee(e){let t=e.split(`/`).pop(),n=t.lastIndexOf(`.`);return n>=0?t.slice(n+1).toLowerCase():``}new Set(x.filter(e=>e.categories?.includes(`zip`)).flatMap(e=>e.exts.split(` `))),new Set(`db duckdb sqlite sqlite3`.split(` `));const S=typeof process<`u`&&process.versions!=null&&process.versions.node!=null,C=typeof window<`u`&&typeof document<`u`,w=typeof self<`u`&&typeof WorkerGlobalScope<`u`&&self instanceof WorkerGlobalScope;C&&navigator.userAgent.indexOf(`Chrome`)>-1&&navigator.userAgent.indexOf(`Edg`),C&&navigator.userAgent.indexOf(`Safari`)>-1&&navigator.userAgent.indexOf(`Chrome`),C&&navigator.userAgent.indexOf(`Firefox`),C&&navigator.userAgent.indexOf(`Edg`),S?process.platform:/Mac|iPhone|iPad|iPod/.test(navigator.userAgent),S?process.platform:/Windows/.test(navigator.userAgent),S?process.platform:/Linux/.test(navigator.userAgent)&&/Android/.test(navigator.userAgent),!S&&/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent),!S&&/iPad|iPhone|iPod/.test(navigator.userAgent),!S&&/Android/.test(navigator.userAgent);const T=/[\p{White_Space}\p{P}\p{S}]+/u;function E(e){let{text:t}=e,n=new Map;if(t){let e=t.split(T).filter(Boolean);for(let t of e)n.set(t,(n.get(t)||0)+1)}return n}function D(e,t){let{title:n,body:r,keywords:i,ext:a}=e;function o(e,n){let r=e.toLowerCase().trim();r.length<=1||(!t.has(r)||t.get(r)<n)&&t.set(r,n)}if(Array.isArray(i))for(let e of i)o(e,100);if(n){let e=E({text:n,ext:a});for(let[t]of e)o(t,90)}if(r){let e=E({text:r,ext:a});for(let[t,n]of e.entries())o(t,Math.min(Math.round(n*10),89))}return t}const te=new Set(`.DS_Store,.angular,.aws-sam,.cache,.dynamodb,.env,.env.development,.env.local,.env.production,.eslintcache,.expo,.fleet,.git,.gradle,.hg,.history,.idea,.ipynb_checkpoints,.m2,.mypy_cache,.next,.nuxt,.nx,.nyc_output,.parcel-cache,.pytest_cache,.rollup.cache,.ruff_cache,.sass-cache,.serverless,.stylelintcache,.svelte-kit,.svn,.terraform,.tmp,.tox,.turbo,.venv,.vercel,Thumbs.db,__pycache__,bin,bower_components,build,coverage,dist,env,log,logs,node_modules,obj,out,package-lock.json,pnpm-lock.yaml,storybook-static,target,temp,tmp,vendor,venv,yarn.lock`.split(`,`)),ne=new Set([`.index.bin`,`.name.bin`,`.meta.bin`]);async function O(){return S?(await import(`node:path`)).join:function(...e){return e.join(`/`)}}async function k(e,t){let n=await O();if(S){let r=await import(`node:fs/promises`);return async function*i([a,o]){let s=await r.readdir(o,{withFileTypes:!0});for(let r of s){let s=`${a}/${r.name}`,c=n(o,r.name);r.isDirectory()?r.name.startsWith(`.`)||e.has(r.name)||(yield*i([s,c])):t.has(r.name)||(yield[s,c])}}}return async function*n([r,i]){for await(let[a,o]of i.entries()){let i=`${r}/${a}`;o.kind===`directory`?a.startsWith(`.`)||e.has(a)||(yield*n([i,o])):t.has(a)||(yield[i,o])}}}async function re(){if(S){let e=await import(`node:fs/promises`);return async function*(t){let n=await e.open(t);try{yield*n.readableWebStream()}finally{await n.close()}}}return async function*(e){yield*(await e.getFile()).stream()}}const A=await async function(){if(S){let e=await import(`node:fs/promises`);return async function(t){return(await e.readFile(t)).buffer}}return async function(e){return await(await e.getFile()).arrayBuffer()}}();async function*ie(e,t){let n=new TextDecoder,r=await(await re())(e),i=``,a=0;for await(let e of r){if(a===0&&t(e))return void 0;a+=1;let r=(i+n.decode(e,{stream:!0})).split(`
|
|
2
|
-
`);i=r.pop();for(let e of r)yield e}i.length>0&&(yield i)}await async function(){if(S){let e=await import(`node:fs/promises`);return async function(t){return e.readFile(t,`utf-8`)}}return async function(e){return(await e.getFile()).text()}}();async function ae(){if(S){let e=await import(`node:fs/promises`);return async function(t){return{mtime:(await e.stat(t)).mtimeMs}}}return async function(e){return{mtime:(await e.getFile()).lastModified}}}function oe(e){return/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}/.test(e)?e.replace(`T`,` `).replace(/[+-]\d{2}:\d{2}$/,``):e}function se(e){let t=new DataView(e),n=[],r=null,i=null,a=[137,80,78,71,13,10,26,10];for(let e=0;e<8;e++)if(t.getUint8(e)!==a[e])throw`Not PNG`;let o=8,s=new Set([`IHDR`,`tEXt`,`iTXt`,`zTXt`,`eXIf`,`skMf`,`skRf`]);for(;o<t.byteLength;){let a=t.getUint32(o),c=new Uint8Array(e,o+4,4),l=String.fromCharCode(...c);if(l===`IEND`)break;if(s.has(l)){let s=new Uint8Array(e,o+8,a);if(l===`IHDR`&&(n.push({name:`Width`,value:t.getUint32(o+8)}),n.push({name:`Height`,value:t.getUint32(o+12)}),n.push({name:`BitDepth`,value:t.getUint8(o+16)}),n.push({name:`ColorType`,value:ce(t.getUint8(o+17))})),l===`tEXt`){let e=le(s);n.push({name:e.keyword,value:e.value})}if(l===`iTXt`){let e=ue(s);if(e.keyword===`XML:com.adobe.xmp`){let t=me(e.value);n.push(...t)}else n.push({name:e.keyword,value:e.value})}if(l===`zTXt`){let e=de(s);n.push({name:e.keyword,value:e.value})}if(l===`eXIf`){let e=fe(s);n.push(...e)}if(l===`skMf`){let e=new TextDecoder(`utf-8`).decode(s);r=JSON.parse(e)}l===`skRf`&&(i=s)}o+=12+a}return{headers:n,skMf:r,skRf:i}}function ce(e){return{0:`Grayscale`,2:`RGB`,3:`Indexed`,4:`Grayscale+Alpha`,6:`RGBA`}[e]||e}function le(e){let t=e.indexOf(0);return{keyword:String.fromCharCode(...e.slice(0,t)),value:String.fromCharCode(...e.slice(t+1))}}function ue(e){let t=0,n=e.indexOf(0,t),r=String.fromCharCode(...e.slice(t,n));t=n+1;let i=e[t++];e[t++],n=e.indexOf(0,t),t=n+1,n=e.indexOf(0,t),t=n+1;let a=e.slice(t),o;if(i===0)o=new TextDecoder().decode(a);else try{let e=pako?pako.inflate(a):a;o=new TextDecoder().decode(e)}catch{o=`[compressed]`}return{keyword:r,value:o}}function de(e){let t=e.indexOf(0),n=String.fromCharCode(...e.slice(0,t));return e[t+1],e.slice(t+2),{keyword:n,value:`[compressed zTXt]`}}function fe(e){let t=[],n=new DataView(e.buffer,e.byteOffset,e.byteLength),r=n.getUint16(0)===18761,i=n.getUint32(4,r),a=n.getUint16(i,r),o={271:`Make`,272:`Model`,274:`Orientation`,306:`DateTime`,315:`Artist`};for(let e=0;e<a;e++){let a=i+2+e*12,s=n.getUint16(a,r),c=n.getUint16(a+2,r),l=n.getUint32(a+4,r);if(o[s]){let e=pe(n,a+8,c,l,r,0);t.push({name:o[s],value:e})}}return t}function pe(e,t,n,r,i,a){if(n===2){let n=r>4?a+e.getUint32(t,i):t,o=``;for(let t=0;t<r-1;t++)o+=String.fromCharCode(e.getUint8(n+t));return o}return n===3?e.getUint16(t,i):e.getUint32(t,i)}function me(e){let t=[];for(let{regex:n,name:r}of[{regex:/<dc:creator[^>]*>[\s\S]*?<rdf:li>([^<]+)<\/rdf:li>/i,name:`Creator`},{regex:/<dc:title[^>]*>[\s\S]*?<rdf:li[^>]*>([^<]+)<\/rdf:li>/i,name:`Title`},{regex:/<xmp:CreatorTool>([^<]+)<\/xmp:CreatorTool>/i,name:`CreatorTool`},{regex:/<xmp:CreateDate>([^<]+)<\/xmp:CreateDate>/i,name:`CreateDate`},{regex:/<xmp:ModifyDate>([^<]+)<\/xmp:ModifyDate>/i,name:`ModifyDate`},{regex:/<tiff:Make>([^<]+)<\/tiff:Make>/i,name:`Make`},{regex:/<tiff:Model>([^<]+)<\/tiff:Model>/i,name:`Model`},{regex:/<exif:PixelXDimension>([^<]+)<\/exif:PixelXDimension>/i,name:`PixelWidth`},{regex:/<exif:PixelYDimension>([^<]+)<\/exif:PixelYDimension>/i,name:`PixelHeight`},{regex:/<photoshop:ColorMode>([^<]+)<\/photoshop:ColorMode>/i,name:`ColorMode`}]){let i=e.match(n);i&&t.push({name:r,value:oe(i[1])})}return e.includes(`Skitch`)&&t.push({name:`Source`,value:`Skitch`}),t}function he(e){let t=new DataView(e),n=[];if(t.getUint16(0)!==65496)throw`Not JPEG`;let r=2;for(;r<t.byteLength;){let i=t.getUint16(r);if(i===65498||i===65497)break;if(i>=65488&&i<=65497||i===65281){r+=2;continue}let a=t.getUint16(r+2),o=new Uint8Array(e,r+4,a-2);if(i===65505){let t=String.fromCharCode(...o.slice(0,30));if(t.startsWith(`Exif\0\0`)){let t=ge(e,r+10);n.push(...t)}else if(t.startsWith(`http://ns.adobe.com/xap/1.0/\0`)){let t=new Uint8Array(e,r+4+29,a-2-29),i=ve(new TextDecoder().decode(t));n.push(...i)}}r+=2+a}return{headers:n}}function ge(e,t){let n=new DataView(e),r=[],i=n.getUint16(t)===18761,a=n.getUint32(t+4,i),o=n.getUint16(t+a,i),s={271:`Make`,272:`Model`,274:`Orientation`,282:`XResolution`,283:`YResolution`,306:`DateTime`,315:`Artist`,34665:`ExifIFD`,34853:`GPSIFD`};for(let e=0;e<o;e++){let o=t+a+2+e*12,c=n.getUint16(o,i),l=n.getUint16(o+2,i),u=n.getUint32(o+4,i);if(s[c]){let e=_e(n,o+8,l,u,i,t);r.push({name:s[c],value:e})}}return r}function _e(e,t,n,r,i,a){if(n===2){let n=r>4?a+e.getUint32(t,i):t,o=``;for(let t=0;t<r-1;t++)o+=String.fromCharCode(e.getUint8(n+t));return o}return n===3?e.getUint16(t,i):e.getUint32(t,i)}function ve(e){let t=[];for(let{regex:n,name:r}of[{regex:/<dc:creator[^>]*>[\s\S]*?<rdf:li>([^<]+)<\/rdf:li>/i,name:`Creator`},{regex:/<dc:title[^>]*>[\s\S]*?<rdf:li[^>]*>([^<]+)<\/rdf:li>/i,name:`Title`},{regex:/<xmp:CreatorTool>([^<]+)<\/xmp:CreatorTool>/i,name:`CreatorTool`},{regex:/<xmp:CreateDate>([^<]+)<\/xmp:CreateDate>/i,name:`CreateDate`},{regex:/<xmp:ModifyDate>([^<]+)<\/xmp:ModifyDate>/i,name:`ModifyDate`},{regex:/<tiff:Make>([^<]+)<\/tiff:Make>/i,name:`Make`},{regex:/<tiff:Model>([^<]+)<\/tiff:Model>/i,name:`Model`},{regex:/<exif:PixelXDimension>([^<]+)<\/exif:PixelXDimension>/i,name:`Width`},{regex:/<exif:PixelYDimension>([^<]+)<\/exif:PixelYDimension>/i,name:`Height`}]){let i=e.match(n);i&&t.push({name:r,value:i[1]})}return e.includes(`Skitch`)&&t.push({name:`Source`,value:`Skitch`}),t}function ye(e,t){let n=0,r=0;for(;t<e.length;){let i=e[t++];if(n|=(i&127)<<r,!(i&128))break;r+=7}return{value:n,pos:t}}function be(e){let{value:t,pos:n}=ye(e,0),r=new Uint8Array(t),i=n,a=0;for(;i<e.length&&a<t;){let t=e[i],n=t&3;if(n===0){let n=(t>>2)+1;t>>2==60?(n=e[i+1]+1,i+=2):t>>2==61?(n=(e[i+1]|e[i+2]<<8)+1,i+=3):t>>2==62?(n=(e[i+1]|e[i+2]<<8|e[i+3]<<16)+1,i+=4):i+=1,r.set(e.subarray(i,i+n),a),a+=n,i+=n}else if(n===1){let n=(t>>2&7)+4,o=t>>5<<8|e[i+1];i+=2;for(let e=0;e<n;e++)r[a]=r[a-o],a++}else if(n===2){let n=(t>>2)+1,o=e[i+1]|e[i+2]<<8;i+=3;for(let e=0;e<n;e++)r[a]=r[a-o],a++}else if(n===3){let n=(t>>2)+1,o=e[i+1]|e[i+2]<<8|e[i+3]<<16|e[i+4]<<24;i+=5;for(let e=0;e<n;e++)r[a]=r[a-o],a++}}return r}function xe(e,t){let n=new Uint8Array(t),r=0,i=0;for(;r<e.length;){let t=e[r++],a=t>>4&15;if(a===15){let t=0;do t=e[r++],a+=t;while(t===255)}if(a>0&&(n.set(e.subarray(r,r+a),i),r+=a,i+=a),r>=e.length)break;let o=e[r]|e[r+1]<<8;if(r+=2,o===0)break;let s=(t&15)+4;if((t&15)==15){let t=0;do t=e[r++],s+=t;while(t===255)}let c=i-o;if(o>=s)n.set(n.subarray(c,c+s),i);else for(let e=0;e<s;e++)n[i+e]=n[c+e];i+=s}return n.subarray(0,i)}function j(e){return e<=0?0:31-Math.clz32(e)}function Se(e){return e>0&&!(e&e-1)}function Ce(e,t,n){let r=0,i=0,a=n;if(a=n-1,e[a]===0)for(;a>t&&e[a]===0;)a--;let o=a,s=e[a],c=j(s);r=c,i=s&(1<<c)-1,a--;let l=c+(o-t)*8,u=0;for(;r<=24&&a>=t;)i=i<<8|e[a--],r+=8;return{read(n){if(n===0)return 0;u+=n,r-=n;let o=i>>>r&(1<<n)-1;for(;r<=24&&a>=t;)i=i<<8|e[a--],r+=8;return o},peek(e){return e===0||r<e?0:i>>>r-e&(1<<e)-1},consume(n){for(u+=n,r-=n;r<=24&&a>=t;)i=i<<8|e[a--],r+=8},available(){return r},hasMoreBytes(){return a>=t},totalBits(){return l},bitsConsumed(){return u}}}function we(e,t){let n=1<<t,r=Array(n);for(let e=0;e<n;e++)r[e]={symbol:0,stBits:0,nextState:0,baseline:0,nbBits:0};let i=n-1;for(let t=0;t<e.length;t++)if(e[t]===-1){if(i<0)break;r[i].symbol=t,i--}let a=(n>>1)+(n>>3)+3,o=n-1,s=0;for(let t=0;t<e.length;t++){let n=e[t];if(!(n<=0))for(let e=0;e<n;e++){r[s].symbol=t;do s=s+a&o;while(s>i)}}let c=Array(e.length);for(let t=0;t<e.length;t++){let n=e[t];c[t]=n<=0?1:n}for(let e=0;e<n;e++){let i=r[e].symbol,a=c[i],o=t-j(a);r[e].stBits=o,r[e].nextState=(a<<o)-n,c[i]=a+1}return r}function Te(e,t){return(e[t]|e[t+1]<<8|e[t+2]<<16|e[t+3]<<24)>>>0}function Ee(e,t,n){let r=t,i=t,a=Te(e,i),o=(a&15)+(n||0);a>>>=4;let s=4,c=(1<<o)+1,l=1<<o,u=o+1,d=[],f=0,p=!1;for(;;){if(p){let t=De(a)>>1;for(;t>=12;)f+=36,i+=3,s-=0,i=Math.min(i,r+(e.length-4)),a=Te(e,i)>>>s,t=De(a)>>1;for(f+=3*t,a>>>=2*t,s+=2*t,f+=a&3,s+=2;d.length<f;)d.push(0);if(f>=256)break;i+=s>>3,s&=7,a=Te(e,i)>>>s}let t=2*l-1-c,n;if((a&l-1)>>>0<t?(n=a&l-1,s+=u-1):(n=a&2*l-1,n>=l&&(n-=t),s+=u),n--,n>=0?c-=n:c+=n,d.push(n),f++,p=n===0,c<l){if(c<=1)break;u=j(c)+1,l=1<<u-1}if(f>=256)break;i+=s>>3,s&=7,a=Te(e,i)>>>s}if(c!==1)throw Error(`FSE_readNCount: corruption detected`);return i+=s+7>>3,{probs:d,accuracyLog:o,consumed:i-r}}function De(e){let t=~e>>>0;return t===0?32:31-Math.clz32(t&-t>>>0)}function Oe(e,t,n,r,i,a,o){if(e===0)return{table:r.table,accuracyLog:r.accuracyLog,consumed:0};if(e===1){let e=t[n];return{table:[{symbol:e,stBits:0,nextState:0,baseline:e<a.length?a[e]:0,nbBits:e<o.length?o[e]:0}],accuracyLog:0,consumed:1}}if(e===3){if(i===null)throw Error(`repeat mode without prior table`);return{table:i.table,accuracyLog:i.accuracyLog,consumed:0}}let{probs:s,accuracyLog:c,consumed:l}=Ee(t,n,5),u=1<<c,d=we(s,c);for(let e=0;e<u;e++){let t=d[e].symbol;t<a.length&&(d[e].baseline=a[t],d[e].nbBits=o[t])}return{table:d,accuracyLog:c,consumed:l}}const ke=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,18,20,22,24,28,32,40,48,64,128,256,512,1024,2048,4096,8192,16384,32768,65536],Ae=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,2,2,3,3,4,6,7,8,9,10,11,12,13,14,15,16],je=[3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,37,39,41,43,47,51,59,67,83,99,131,259,515,1027,2051,4099,8195,16387,32771,65539],Me=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,2,2,3,3,4,4,5,7,8,9,10,11,12,13,14,15,16],Ne=Array(32),Pe=Array(32);for(let e=0;e<32;e++)Pe[e]=e,Ne[e]=e===0?1:1<<e;const Fe=[4,3,2,2,2,2,2,2,2,2,2,2,2,1,1,1,2,2,2,2,2,2,2,2,2,3,2,1,1,1,1,1,-1,-1,-1,-1],Ie=[1,1,1,1,1,1,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,-1,-1,-1,-1,-1],Le=[1,4,3,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,-1,-1,-1,-1,-1,-1,-1];function Re(e,t,n,r){let i=1<<t,a=we(e,t);for(let e=0;e<i;e++){let t=a[e].symbol;t<n.length&&(a[e].baseline=n[t],a[e].nbBits=r[t])}return{table:a,accuracyLog:t}}const ze=Re(Fe,6,ke,Ae),Be=Re(Le,6,je,Me),Ve=Re(Ie,5,Ne,Pe);var He=Array(4096);for(let e=0;e<4096;e++)He[e]={symbol:0,nbBits:0};function Ue(e,t){let n=Math.min(128,e.length-t),r=Array.from(e.slice(t,t+n)).map(function(e){return e.toString(16).padStart(2,`0`)}).join(``);console.log(`[HUFF_RAW] pos=`+t+` hex=`+r);let i=e[t++],a=[];if(i>=128){let n=i-127;for(let r=0;r<n;r+=2){let i=e[t++];a.push(i>>4),r+1<n&&a.push(i&15)}let r=1+Math.ceil(n/2);return{weights:a,maxBits:We(a),consumed:r}}let o=i,s=t+o,{probs:c,accuracyLog:l,consumed:u}=Ee(e,t,5),d=we(c,l),f=Ce(e,t+u,s),p=f.totalBits(),m=f.read(l),h=f.read(l);for(console.log(`[decodeHuffmanTree] compSize=`,o,`accuracyLog=`,l,`probs=`,JSON.stringify(c),`totalBits=`,p,`revStart=`,t+u,`compEnd=`,s,`initState1=`,m,`initState2=`,h,`bitsAfterInit=`,f.bitsConsumed());a.length<255;){let e=d[m];a.push(e.symbol),m=e.nextState+f.read(e.stBits);let t=f.bitsConsumed();if((a.length<=10||t>p-20)&&console.log(`[HUFF_LOOP] w#`+a.length+` s1=`+e.symbol+` stBits=`+e.stBits+` bitsConsumed=`+t+` state1=`+m+` avail=`+f.available()),t>p){a.push(d[h].symbol),console.log(`[HUFF_BREAK] at w#`+a.length+` bitsConsumed=`+t+` > totalBits=`+p);break}if(a.length>=255)break;let n=d[h];a.push(n.symbol),h=n.nextState+f.read(n.stBits);let r=f.bitsConsumed();if((a.length<=10||r>p-20)&&console.log(`[HUFF_LOOP] w#`+a.length+` s2=`+n.symbol+` stBits=`+n.stBits+` bitsConsumed=`+r+` state2=`+h+` avail=`+f.available()),r>p){a.push(d[m].symbol),console.log(`[HUFF_BREAK] at w#`+a.length+` bitsConsumed=`+r+` > totalBits=`+p);break}}let g=1+o;return{weights:a,maxBits:We(a),consumed:g}}function We(e){let t=0;for(let n=0;n<e.length;n++)e[n]>t&&(t=e[n]);let n=0;for(let t=0;t<e.length;t++)e[t]>0&&(n+=1<<e[t]-1);let r=j(n)+ +!Se(n),i=1<<r,a=i-n,o=a>0?j(a)+1:0;console.log(`[buildHuffmanTable] weights.length=`,e.length,`sumW=`,n,`tableLog=`,r,`tableSize=`,i,`lastW=`,o,`remaining=`,a,`weights=`,JSON.stringify(e.slice(0,20)));let s=[...e,o],c=Array(r+2).fill(0);for(let e=0;e<s.length;e++){let t=s[e];t>0&&c[t]++}let l=0;for(let e=1;e<=r+1;e++){let t=c[e];c[e]=l,l+=t*(1<<e-1)}for(let e=0;e<s.length;e++){let t=s[e];if(t===0)continue;let n=r+1-t,i=1<<r-n,a=c[t];c[t]+=i;for(let t=0;t<i;t++)He[a+t].symbol=e,He[a+t].nbBits=n}return r}function Ge(e,t,n,r,i,a,o){if(i&&r>3){let i=e[t]|e[t+1]<<8,s=e[t+2]|e[t+3]<<8,c=e[t+4]|e[t+5]<<8,l=t+6,u=r+3>>2;M(e,l,l+i,o,0,u,a),l+=i,M(e,l,l+s,o,u,u,a),l+=s,M(e,l,l+c,o,u*2,u,a),l+=c,M(e,l,n,o,u*3,r-u*3,a)}else M(e,t,n,o,0,r,a)}function M(e,t,n,r,i,a,o){let s=Ce(e,t,n),c=0;for(;c<a;){let e=He[s.peek(o)];s.consume(e.nbBits),r[i+c++]=e.symbol}}function Ke(e){let t=e,n=Math.min(256,t.length);console.log(`[ZSTD_FRAME] len=`+t.length+` hex=`+Array.from(t.slice(0,n)).map(function(e){return e.toString(16).padStart(2,`0`)}).join(``));let r=0,i=t[r]|t[r+1]<<8|t[r+2]<<16|t[r+3]<<24;if(r+=4,i>>>0!=4247762216)throw Error(`not a zstd frame`);let a=t[r++],o=a>>5&1,s=a>>2&1,c=a>>6,l=a&3,u=0;if(o===0){let e=t[r++],n=e>>3,i=e&7;u=(1<<10+n)+(i<<7+n)}r+=[0,1,2,4][l];let d=-1;c===0&&o?d=t[r++]:c===1?(d=(t[r]|t[r+1]<<8)+256,r+=2):c===2?(d=(t[r]|t[r+1]<<8|t[r+2]<<16|t[r+3]<<24>>>0)>>>0,r+=4):c===3&&(d=((t[r]|t[r+1]<<8|t[r+2]<<16|t[r+3]<<24>>>0)>>>0)+((t[r+4]|t[r+5]<<8|t[r+6]<<16|t[r+7]<<24>>>0)>>>0)*4294967296,r+=8),o&&u===0&&(u=d);let f=d>0?new Uint8Array(d):new Uint8Array(u||131072),p=0,m=!1;for(;!m;){let e=t[r]|t[r+1]<<8|t[r+2]<<16;r+=3,m=e&1;let n=e>>1&3,i=e>>3;if(n===0)h(i),f.set(t.subarray(r,r+i),p),p+=i,r+=i;else if(n===1)h(i),f.fill(t[r++],p,p+i),p+=i;else if(n===2){let e=r+i;g(t,r,e),r=e}else throw Error(`reserved block type`)}return s&&(r+=4),f.subarray(0,p);function h(e){if(p+e>f.length){let t=new Uint8Array(Math.max(f.length*2,p+e));t.set(f),f=t}}function g(e,t,n){let r=e[t],i=r&3,a=0,o=0,s=null;if(i===0){let n=r>>2&3;n===0||n===2?(a=r>>3,t+=1):n===1?(a=(r>>4|e[t+1]<<4)&4095,t+=2):(a=(r>>4|e[t+1]<<4|e[t+2]<<12)&1048575,t+=3),s=e.slice(t,t+a),t+=a}else if(i===1){let n=r>>2&3;n===0||n===2?(a=r>>3,t+=1):n===1?(a=(r>>4|e[t+1]<<4)&4095,t+=2):(a=(r>>4|e[t+1]<<4|e[t+2]<<12)&1048575,t+=3),s=new Uint8Array(a),s.fill(e[t]),t+=1}else{let n=r>>2&3,c=n>0,l=e[t]|e[t+1]<<8|e[t+2]<<16|e[t+3]<<24;if(n<=1)a=l>>4&1023,o=l>>14&1023,t+=3;else if(n===2)a=l>>4&16383,o=l>>>18&16383,t+=4;else{let n=e[t+4];a=l>>4&262143,o=(l>>>22|n<<10)&262143,t+=5}s=new Uint8Array(a);let u=t;if(i===2){let n=Ue(e,t);_=n.maxBits,Ge(e,t+n.consumed,u+o,a,c,n.maxBits,s)}else Ge(e,t,u+o,a,c,_,s);t=u+o}let c=e[t++],l=0;if(c<128?l=c:c<255?l=(c-128<<8)+e[t++]:(l=(e[t]|e[t+1]<<8)+32512,t+=2),l===0){h(a),f.set(s,p),p+=a;return}let u=e[t++],d=u>>6&3,m=u>>4&3,g=u>>2&3,C=Oe(d,e,t,ze,x,ke,Ae);t+=C.consumed,x=C;let w=Oe(m,e,t,Ve,ee,Ne,Pe);t+=w.consumed,ee=w;let T=Oe(g,e,t,Be,S,je,Me);t+=T.consumed,S=T;let E=Ce(e,t,n),D=E.read(C.accuracyLog),te=E.read(w.accuracyLog),ne=E.read(T.accuracyLog),O=0;h(a+l*4);for(let e=0;e<l;e++){let t=w.table[te],n=T.table[ne],r=C.table[D],i=t.baseline+E.read(t.nbBits),a=n.baseline+E.read(n.nbBits),o=r.baseline+E.read(r.nbBits),c;if(i>3)c=i-3,b=y,y=v,v=c;else if(i===1)if(o===0){c=y;let e=v;v=y,y=e}else c=v;else i===2?o===0?(c=b,b=y,y=v,v=c):(c=y,y=v,v=c):o===0?(c=v-1,b=y,y=v,v=c):(c=b,b=y,y=v,v=c);if(o>0&&(h(o),f.set(s.subarray(O,O+o),p),p+=o,O+=o),a>0){h(a);let e=p-c;if(c>=a)f.set(f.subarray(e,e+a),p);else for(let t=0;t<a;t++)f[p+t]=f[e+t];p+=a}e<l-1&&(D=r.nextState+E.read(r.stBits),ne=n.nextState+E.read(n.stBits),te=t.nextState+E.read(t.stBits))}let k=s.length-O;k>0&&(h(k),f.set(s.subarray(O),p),p+=k)}var _,v,y,b,x,ee,S}function N(e,t){let n=0,r=0,i=0;for(;;){let a=e[t+i];if(n|=(a&127)<<r,i++,r+=7,!(a&128))break}return{value:n,consumed:i}}function P(e,t){let{value:n,consumed:r}=N(e,t);return{value:n>>>1^-(n&1),consumed:r}}function F(e,t){let n=0n,r=0n,i=0;for(;;){let a=BigInt(e[t+i]);if(n|=(a&127n)<<r,i++,r+=7n,(a&128n)==0n)break}return{value:Number(n>>1n^-(n&1n)),consumed:i}}function I(e,t,n){let r=e[t];if(r===0)return{typeId:0,fieldId:0,consumed:1};let i=r&15,a=r>>4&15,o=1;if(a===0){let r=P(e,t+1);n.fieldId=r.value,o=1+r.consumed}else n.fieldId+=a;return{typeId:i,fieldId:n.fieldId,consumed:o}}function L(e,t,n){if(n===1||n===2)return 0;if(n===3)return 1;if(n===4||n===5||n===6)return N(e,t).consumed;if(n===7)return 8;if(n===8){let n=N(e,t);return n.consumed+n.value}if(n===9||n===11){let n=e[t],r=n>>4&15,i=n&15,a=1;if(r===15){let n=N(e,t+1);r=n.value,a=1+n.consumed}for(let n=0;n<r;n++)a+=L(e,t+a,i);return a}if(n===10){let n=N(e,t),r=n.consumed,i=n.value;if(i>0){let n=e[t+r];r++;let a=n>>4&15,o=n&15;for(let n=0;n<i;n++)r+=L(e,t+r,a),r+=L(e,t+r,o)}return r}if(n===12){let n=0,r={fieldId:0};for(;;){let i=I(e,t+n,r);if(n+=i.consumed,i.typeId===0)break;n+=L(e,t+n,i.typeId)}return n}return 0}function qe(e,t){let n=N(e,t),r=n.value,i=t+n.consumed;return{data:e.subarray(i,i+r),len:r,consumed:n.consumed+r}}function Je(e,t,n){let r=t,i={fieldId:0},a=null,o=null,s=null,c=null;for(;;){let t=I(e,r,i);if(r+=t.consumed,t.typeId===0)break;if(t.typeId===8&&(t.fieldId===1||t.fieldId===2||t.fieldId===5||t.fieldId===6)){let n=qe(e,r);t.fieldId===1?c=n.data:t.fieldId===2?s=n.data:t.fieldId===5?o=n.data:s=n.data,t.fieldId===6&&(a=n.data),r+=n.consumed}else r+=L(e,r,t.typeId)}if(a||=s,o||=c,a&&o){let t=new DataView(e.buffer,e.byteOffset),r=n.type;if(r===1&&a.length>=4&&o.length>=4){let r=a.byteOffset-e.byteOffset,i=o.byteOffset-e.byteOffset;n.colMin=t.getInt32(r,!0),n.colMax=t.getInt32(i,!0),n.hasStats=!0}else if(r===2&&a.length>=8&&o.length>=8){let r=a.byteOffset-e.byteOffset,i=o.byteOffset-e.byteOffset;n.colMin=Number(t.getBigInt64(r,!0)),n.colMax=Number(t.getBigInt64(i,!0)),n.hasStats=!0}else if(r===4&&a.length>=4&&o.length>=4){let r=a.byteOffset-e.byteOffset,i=o.byteOffset-e.byteOffset;n.colMin=t.getFloat32(r,!0),n.colMax=t.getFloat32(i,!0),n.hasStats=!0}else if(r===5&&a.length>=8&&o.length>=8){let r=a.byteOffset-e.byteOffset,i=o.byteOffset-e.byteOffset;n.colMin=t.getFloat64(r,!0),n.colMax=t.getFloat64(i,!0),n.hasStats=!0}}return r-t}function Ye(e,t,n){let r=t,i=e[r]>>4&15;if(r++,i===15){let t=N(e,r);i=t.value,r+=t.consumed}for(let t=0;t<i;t++){let t=P(e,r);n.push(t.value),r+=t.consumed}return r-t}function Xe(e,t,n){let r=t,i={fieldId:0};for(;;){let t=I(e,r,i);if(r+=t.consumed,t.typeId===0)break;if(t.fieldId===1){let t=P(e,r);n.type=t.value,r+=t.consumed}else if(t.fieldId===2&&t.typeId===9)r+=Ye(e,r,n.encodings);else if(t.fieldId===4){let t=P(e,r);n.codec=t.value,r+=t.consumed}else if(t.fieldId===5){let t=F(e,r);n.numValues=t.value,r+=t.consumed}else if(t.fieldId===6){let t=F(e,r);n.totalUncompressedSize=t.value,r+=t.consumed}else if(t.fieldId===7){let t=F(e,r);n.totalCompressedSize=t.value,r+=t.consumed}else if(t.fieldId===8&&t.typeId===12)r+=Je(e,r,n);else if(t.fieldId===9){let t=F(e,r);n.dataPageOffset=t.value,r+=t.consumed}else if(t.fieldId===10){let t=F(e,r);n.indexPageOffset=t.value,r+=t.consumed}else if(t.fieldId===11){let t=F(e,r);n.dictionaryPageOffset=t.value,r+=t.consumed}else r+=L(e,r,t.typeId)}return r-t}function Ze(e,t,n){let r=t,i={fieldId:0};for(;;){let t=I(e,r,i);if(r+=t.consumed,t.typeId===0)break;if(t.fieldId===3&&t.typeId===12)r+=Xe(e,r,n);else if(t.fieldId===4){let t=F(e,r);n.offsetIndexOffset=t.value,r+=t.consumed}else if(t.fieldId===5){let t=P(e,r);n.offsetIndexLength=t.value,r+=t.consumed}else if(t.fieldId===6){let t=F(e,r);n.columnIndexOffset=t.value,r+=t.consumed}else if(t.fieldId===7){let t=P(e,r);n.columnIndexLength=t.value,r+=t.consumed}else r+=L(e,r,t.typeId)}return r-t}function Qe(e,t,n){let r=t,i={fieldId:0},a={numRows:0,numCols:n,chunks:[]};for(let e=0;e<n;e++)a.chunks.push({dataPageOffset:0,dictionaryPageOffset:0,indexPageOffset:0,totalCompressedSize:0,totalUncompressedSize:0,codec:0,type:0,numValues:0,encodings:[],offsetIndexOffset:0,offsetIndexLength:0,columnIndexOffset:0,columnIndexLength:0,hasStats:!1,colMin:0,colMax:0});for(;;){let t=I(e,r,i);if(r+=t.consumed,t.typeId===0)break;if(t.fieldId===1&&t.typeId===9){let t=e[r],i=t>>4&15,o=t&15;if(r++,i===15){let t=N(e,r);i=t.value,r+=t.consumed}for(let t=0;t<i&&t<n;t++)r+=o===12?Ze(e,r,a.chunks[t]):L(e,r,o)}else if(t.fieldId===3){let t=F(e,r);a.numRows=t.value,r+=t.consumed}else if(t.fieldId===5){let t=F(e,r);r+=t.consumed}else r+=L(e,r,t.typeId)}return{rg:a,consumed:r-t}}function $e(e,t,n){let r=t,i=[],a=[],o=[];for(let t=0;t<n;t++){let t={fieldId:0},n=-1,s=0,c=``,l=!1;for(;;){let i=I(e,r,t);if(r+=i.consumed,i.typeId===0)break;if(i.fieldId===1&&(i.typeId===5||i.typeId===6)){let t=P(e,r);n=t.value,r+=t.consumed}else if(i.fieldId===3&&(i.typeId===5||i.typeId===6)){let t=P(e,r);s=t.value,r+=t.consumed}else if(i.fieldId===4&&i.typeId===8){let t=qe(e,r);c=new TextDecoder().decode(t.data),r+=t.consumed}else if(i.fieldId===5&&(i.typeId===5||i.typeId===6)){let t=P(e,r);r+=t.consumed,l=!0}else r+=L(e,r,i.typeId)}l||(i.push(c),a.push(n),o.push(s))}return{schema:{numCols:i.length,colNames:i,colTypes:a,colRepetition:o},consumed:r-t}}function et(e){let t=new DataView(e.buffer,e.byteOffset,e.byteLength).getUint32(e.byteLength-8,!0),n=e.byteLength-8-t,r=n,i={fieldId:0},a=null,o=0,s=0,c=``,l=[];for(;;){let t=I(e,r,i);if(r+=t.consumed,t.typeId===0)break;if(t.fieldId===1&&(t.typeId===5||t.typeId===6)){let t=P(e,r);s=t.value,r+=t.consumed}else if(t.fieldId===6&&t.typeId===8){let t=qe(e,r);c=new TextDecoder().decode(t.data),r+=t.consumed}else if(t.fieldId===2&&t.typeId===9){let t=e[r]>>4&15;if(r++,t===15){let n=N(e,r);t=n.value,r+=n.consumed}let n=$e(e,r,t);a=n.schema,r+=n.consumed}else if(t.fieldId===3&&(t.typeId===6||t.typeId===5)){let t=F(e,r);o=t.value,r+=t.consumed}else if(t.fieldId===4&&t.typeId===9){let t=e[r]>>4&15;if(r++,t===15){let n=N(e,r);t=n.value,r+=n.consumed}for(let n=0;n<t;n++){let t=Qe(e,r,a?a.numCols:0);l.push(t.rg),r+=t.consumed}}else r+=L(e,r,t.typeId)}return{schema:a,numRows:o,numRowGroups:l.length,rowGroups:l,version:s,createdBy:c,footerOffset:n,footerLength:t}}function tt(e){let t=new Uint8Array(e);if(t.byteLength<8)throw Error(`file too small`);if(t[0]!==80||t[1]!==65||t[2]!==82||t[3]!==49)throw Error(`not a parquet file`);let n=t.byteLength-4;if(t[n]!==80||t[n+1]!==65||t[n+2]!==82||t[n+3]!==49)throw Error(`not a parquet file`);let r=et(t);return{buf:t,schema:r.schema,numRows:r.numRows,numRowGroups:r.numRowGroups,rowGroups:r.rowGroups,version:r.version,createdBy:r.createdBy,footerOffset:r.footerOffset,footerLength:r.footerLength,format:0}}async function nt(e){return rt(new DecompressionStream(`deflate-raw`),e)}async function rt(e,t){let n=e.writable.getWriter();n.write(t).catch(()=>{}),n.close().catch(()=>{});let r=e.readable.getReader(),i=[],a=0,o=!0;for(;o;)try{let{done:e,value:t}=await r.read();e?o=!1:(i.push(t),a+=t.byteLength)}catch(e){if(i.length===0)throw e;o=!1}let s=new Uint8Array(a),c=0;for(let e of i)s.set(e,c),c+=e.byteLength;return s}await async function(){if(S){let{Readable:e}=await import(`node:stream`);return function(t){return e.from([t])}}return function(e){return new ReadableStream({start(t){t.enqueue(e),t.close()}})}}(),await async function(){if(S){let{createInflateRaw:e}=await import(`node:zlib`),{Readable:t}=await import(`node:stream`);return function(n){let r=e();return t.from([n]).pipe(r)}}return function(e){let t=new DecompressionStream(`deflate-raw`),n=t.writable.getWriter();return n.write(e),n.close(),t.readable}}();const it=new Set([`null`,`boolean`,`int`,`long`,`float`,`double`,`bytes`,`string`]);function R(e,t){return typeof e==`string`?it.has(e)?{kind:e}:t[e]??{kind:`string`}:Array.isArray(e)?{kind:`union`,branches:e.map(e=>R(e,t))}:at(e,t)}function at(e,t){let n=e.type,r=e.logicalType??null;if(n===`record`||n===`error`){let n={kind:`record`,name:e.name,fields:[]};t[e.name]=n;for(let r of e.fields)n.fields.push({name:r.name,node:R(r.type,t)});return n}if(n===`enum`){let n={kind:`enum`,name:e.name,symbols:e.symbols};return t[e.name]=n,n}if(n===`fixed`){let n={kind:`fixed`,name:e.name,size:e.size,logicalType:r};return t[e.name]=n,n}return n===`array`?{kind:`array`,items:R(e.items,t)}:n===`map`?{kind:`map`,values:R(e.values,t)}:{...R(n,t),logicalType:r}}function ot(e){return R(JSON.parse(e),{})}function z(e){if(e.logicalType)return e.logicalType;if(e.kind===`union`){let t=e.branches.filter(e=>e.kind!==`null`);return t.length===1?`${z(t[0])}?`:e.branches.map(z).join(` | `)}return e.kind===`array`?`array<${z(e.items)}>`:e.kind===`map`?`map<${z(e.values)}>`:e.kind===`record`||e.kind===`enum`||e.kind===`fixed`?e.name:e.kind}function st(e){return e.kind===`record`?e.fields.map(e=>({name:e.name,type:z(e.node)})):[{name:`value`,type:z(e)}]}new TextDecoder;function ct(e){return{bytes:e,offset:0}}function B(e){let t=e.bytes,n=t[e.offset++],r=n&127,i=1;for(;n&128;)n=t[e.offset++],i*=128,r+=(n&127)*i;return r%2==0?r/2:-(r+1)/2}const lt=new TextDecoder;function ut(e){let t={},n=0,r=0,i=B(e);for(;i!==0;){i<0&&(i=-i,B(e));for(let a=0;a<i;a++){let i=lt.decode(dt(e)),a=B(e),o=e.offset;e.offset+=a,t[i]=lt.decode(e.bytes.subarray(o,o+a)),i===`avro.schema`&&(n=o,r=a)}i=B(e)}return{meta:t,schemaOffset:n,schemaLength:r}}function dt(e){let t=B(e),n=e.bytes.subarray(e.offset,e.offset+t);return e.offset+=t,n}function ft(e){let t=new Uint8Array(e);if(t.byteLength<4)throw Error(`file too small`);if(t[0]!==79||t[1]!==98||t[2]!==106||t[3]!==1)throw Error(`not an avro file`);let n=ct(t);n.offset=4;let{meta:r,schemaOffset:i,schemaLength:a}=ut(n),o=t.subarray(n.offset,n.offset+16);n.offset+=16;let s=n.offset,c=[],l=0;for(;n.offset<t.byteLength;){let e=n.offset,t=B(n),r=B(n),i=n.offset;c.push({offset:e,dataOffset:i,dataSize:r,numRows:t,size:i+r+16-e}),l+=t,n.offset=i+r+16}let u=ot(r[`avro.schema`]);return{buf:t,schema:u,schemaJson:r[`avro.schema`],schemaOffset:i,schemaLength:a,columns:st(u),codec:r[`avro.codec`]??`null`,meta:r,syncMarker:o,headerSize:s,blocks:c,numBlocks:c.length,numRows:l,format:3}}const pt=new TextDecoder;function V(e,t,n){return{bytes:e,offset:t??0,end:n??e.length}}function H(e){let t=e.bytes,n=0,r=1,i=t[e.offset++];for(n=i&127;i&128;)i=t[e.offset++],r*=128,n+=(i&127)*r;return n}function mt(e){let t=H(e);return{field:Math.floor(t/8),wire:t%8}}function ht(e){let t=H(e),n=e.bytes.subarray(e.offset,e.offset+t);return e.offset+=t,n}function gt(e){return pt.decode(ht(e))}function _t(e,t){if(t===0)H(e);else if(t===2){let t=H(e);e.offset+=t}else if(t===1)e.offset+=8;else if(t===5)e.offset+=4;else throw Error(`unsupported protobuf wire type ${t}`)}function U(e,t){for(;e.offset<e.end;){let{field:n,wire:r}=mt(e);t(n,r,e)||_t(e,r)}}function vt(e){let t=V(ht(e)),n=[];for(;t.offset<t.end;)n.push(H(t));return n}function yt(e){let t=H(e),n=e.offset;return e.offset+=t,V(e.bytes,n,n+t)}const bt=[`boolean`,`byte`,`short`,`int`,`long`,`float`,`double`,`string`,`binary`,`timestamp`,`list`,`map`,`struct`,`union`,`decimal`,`date`,`varchar`,`char`,`timestamp_instant`],xt=[`none`,`zlib`,`snappy`,`lzo`,`lz4`,`zstd`];function St(e){let t=V(e),n={footerLength:0,compression:0,compressionBlockSize:0,metadataLength:0,writerVersion:0,version:[]};return U(t,(e,r)=>e===1?(n.footerLength=H(t),!0):e===2?(n.compression=H(t),!0):e===3?(n.compressionBlockSize=H(t),!0):e===4&&r===2?(n.version=vt(t),!0):e===5?(n.metadataLength=H(t),!0):e===6&&(n.writerVersion=H(t),!0)),n}function Ct(e){let t={offset:0,indexLength:0,dataLength:0,footerLength:0,numRows:0};return U(e,n=>n===1?(t.offset=H(e),!0):n===2?(t.indexLength=H(e),!0):n===3?(t.dataLength=H(e),!0):n===4?(t.footerLength=H(e),!0):n===5&&(t.numRows=H(e),!0)),t}function wt(e){let t={kind:0,subtypes:[],fieldNames:[],precision:0,scale:0};return U(e,(n,r)=>n===1?(t.kind=H(e),!0):n===2&&r===2?(t.subtypes=vt(e),!0):n===2?(t.subtypes.push(H(e)),!0):n===3?(t.fieldNames.push(gt(e)),!0):n===5?(t.precision=H(e),!0):n===6&&(t.scale=H(e),!0)),t}function Tt(e){let t=V(e),n={headerLength:3,contentLength:0,stripes:[],types:[],numRows:0,rowIndexStride:0,writer:0};return U(t,e=>e===1?(n.headerLength=H(t),!0):e===2?(n.contentLength=H(t),!0):e===3?(n.stripes.push(Ct(yt(t))),!0):e===4?(n.types.push(wt(yt(t))),!0):e===6?(n.numRows=H(t),!0):e===8?(n.rowIndexStride=H(t),!0):e===9&&(n.writer=H(t),!0)),n}function Et(e){let t=e[0];return t.subtypes.map((n,r)=>({id:n,name:t.fieldNames[r],type:e[n],label:W(e,n)}))}function W(e,t){let n=e[t],r=bt[n.kind]??`kind ${n.kind}`;return n.kind===14?`decimal(${n.precision},${n.scale})`:n.kind===10?`list<${W(e,n.subtypes[0])}>`:n.kind===11?`map<${W(e,n.subtypes[0])},${W(e,n.subtypes[1])}>`:r}new TextDecoder;async function Dt(e,t){if(e===1)return await nt(t);if(e===2)return be(t);if(e===5)return Ke(t);if(e===4)return xe(t);throw Error(`unsupported orc compression ${e}`)}async function Ot(e,t,n,r){if(e===0)return t.subarray(n,n+r);let i=[],a=0,o=n,s=n+r;for(;o<s;){let n=t[o]+t[o+1]*256+t[o+2]*65536,r=Math.floor(n/2),s=n%2==1;o+=3;let c=t.subarray(o,o+r),l=s?c:await Dt(e,c);i.push(l),a+=l.length,o+=r}if(i.length===1)return i[0];let c=new Uint8Array(a),l=0;for(let e of i)c.set(e,l),l+=e.length;return c}async function kt(e){let t=new Uint8Array(e);if(t.byteLength<8)throw Error(`file too small`);if(t[0]!==79||t[1]!==82||t[2]!==67)throw Error(`not an orc file`);let n=t[t.byteLength-1],r=t.byteLength-1-n,i=St(t.subarray(r,r+n)),a=r-i.footerLength,o=Tt(await Ot(i.compression,t,a,i.footerLength));return{buf:t,postScript:i,postScriptOffset:r,postScriptLength:n,footerOffset:a,footerLength:i.footerLength,metadataOffset:a-i.metadataLength,metadataLength:i.metadataLength,compressionKind:i.compression,compression:xt[i.compression]??`kind ${i.compression}`,types:o.types,columns:Et(o.types),stripes:o.stripes,numStripes:o.stripes.length,numRows:o.numRows,rowIndexStride:o.rowIndexStride,writer:o.writer,format:4}}function At(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function jt(e,t){return t+e.getUint32(t,!0)}function G(e,t,n){let r=t-e.getInt32(t,!0),i=e.getUint16(r,!0),a=4+n*2;if(a<i){let n=e.getUint16(r+a,!0);return n===0?0:t+n}return 0}function K(e,t,n,r,i){let a=G(e,t,n);return a===0?r:i(a)}function Mt(e,t,n,r){return K(e,t,n,r,t=>e.getUint8(t))}function Nt(e,t,n,r){return K(e,t,n,r,t=>e.getUint8(t)===1)}function q(e,t,n,r){return K(e,t,n,r,t=>e.getInt16(t,!0))}function J(e,t,n,r){return K(e,t,n,r,t=>e.getInt32(t,!0))}function Pt(e,t,n,r){return K(e,t,n,r,t=>Number(e.getBigInt64(t,!0)))}function Ft(e,t,n){let r=G(e,t,n);return r===0?0:r+e.getUint32(r,!0)}function It(e,t,n){let r=G(e,t,n);return r===0?0:r+e.getUint32(r,!0)}function Lt(e,t){return t===0?0:e.getUint32(t,!0)}function Rt(e,t,n,r){return t+4+n*r}function zt(e,t,n){let r=Rt(e,t,n,4);return r+e.getUint32(r,!0)}function Bt(e,t,n){let r=G(e,t,n);if(r===0)return``;{let t=r+e.getUint32(r,!0),n=e.getUint32(t,!0),i=new Uint8Array(e.buffer,e.byteOffset+t+4,n);return new TextDecoder().decode(i)}}const Vt=[`s`,`ms`,`us`,`ns`];function Ht(e,t,n){let r=Ft(e,t,3);if(n===2){let t=J(e,r,0,32),n=Nt(e,r,1,!0);return{bitWidth:t,signed:n,label:`${n?`int`:`uint`}${t}`}}if(n===3){let t=q(e,r,0,2);return{precision:t,label:t===2?`double`:t===1?`float`:`half`}}if(n===7){let t=J(e,r,0,0),n=J(e,r,1,0);return{precision:t,scale:n,bitWidth:J(e,r,2,128),label:`decimal(${t},${n})`}}if(n===8)return{unit:q(e,r,0,1),label:`date`};if(n===9){let t=q(e,r,0,1);return{unit:t,bitWidth:J(e,r,1,32),label:`time[${Vt[t]}]`}}if(n===10){let t=q(e,r,0,0);return{unit:t,timezone:Bt(e,r,1),label:`timestamp[${Vt[t]}]`}}return n===5||n===20?{label:`string`}:n===4||n===19?{label:`bytes`}:n===6?{label:`boolean`}:n===1?{label:`null`}:n===13?{label:`struct`}:{label:`type ${n}`}}function Ut(e,t){let n=Mt(e,t,2,0),r=[],i=It(e,t,5);for(let t=0;t<Lt(e,i);t++)r.push(Ut(e,zt(e,i,t)));return{name:Bt(e,t,0),nullable:Nt(e,t,1,!0),typeId:n,...Ht(e,t,n),children:r}}function Wt(e,t){let n=[],r=It(e,t,1);for(let t=0;t<Lt(e,r);t++)n.push(Ut(e,zt(e,r,t)));return{endianness:q(e,t,0,0),fields:n}}new TextDecoder;const Gt=[65,82,82,79,87,49];function Kt(e,t){return Gt.every((n,r)=>e[t+r]===n)}function qt(e,t,n){let r=It(e,t,n),i=[];for(let t=0;t<Lt(e,r);t++){let n=Rt(e,r,t,24);i.push({offset:Number(e.getBigInt64(n,!0)),metaDataLength:e.getInt32(n+8,!0),bodyLength:Number(e.getBigInt64(n+16,!0))})}return i}function Jt(e,t){let n=t;e.getUint32(n,!0)===4294967295&&(n+=4);let r=e.getInt32(n,!0);return n+=4,{table:jt(e,n),metaLength:r}}function Yt(e){let t=new Uint8Array(e);if(t.byteLength<20)throw Error(`file too small`);if(!Kt(t,0)||!Kt(t,t.byteLength-6))throw Error(`not an arrow file`);let n=At(t),r=n.getInt32(t.byteLength-10,!0),i=t.byteLength-10-r,a=jt(n,i),o=Wt(n,Ft(n,a,1)),s=qt(n,a,2),c=qt(n,a,3),l=0;for(let e of c){let{table:t}=Jt(n,e.offset);l+=Pt(n,Ft(n,t,2),0,0)}return{buf:t,view:n,schema:o,columns:o.fields.map(e=>({name:e.name,type:e.label})),dictionaries:s,batches:c,numBatches:c.length,numRows:l,version:q(n,a,0,0),footerOffset:i,footerLength:r,format:5}}function Y(e,t,n){let r=t;function i(t){let n=0,i=1,a=!0;for(let o=0;o<t;o++){let t=e.getUint8(r+o);t!==255&&(a=!1),n+=t*i,i*=256}return r+=t,a?null:n}return{get offset(){return r},set offset(e){r=e},u8(){let t=e.getUint8(r);return r+=1,t},u16(){let t=e.getUint16(r,!0);return r+=2,t},u32(){let t=e.getUint32(r,!0);return r+=4,t},u64(){let t=Number(e.getBigUint64(r,!0));return r+=8,t},i8(){let t=e.getInt8(r);return r+=1,t},variable:i,address(){return i(n.offsetSize)},length(){return i(n.lengthSize)},skip(e){r+=e},align(e){r+=(e-r%e)%e}}}const Xt=new TextDecoder;function Zt(e,t){let n=t;for(;n<e.length&&e[n]!==0;)n++;return Xt.decode(e.subarray(t,n))}function Qt(e,t,n){return Xt.decode(e.subarray(t,t+n)).replace(/\0+$/,``)}function $t(e,t,n){for(let r=0;r<n.length;r++)if(e[t+r]!==n.charCodeAt(r))return!1;return!0}const en=[137,72,68,70,13,10,26,10];function tn(e,t){let n=0;for(;n<e.length&&!en.every((t,r)=>e[n+r]===t);)n=n===0?512:n*2;if(n>=e.length)throw Error(`not an hdf5 file`);let r=e[n+8];if(r<=1){let i={offsetSize:e[n+13],lengthSize:e[n+14]},a=Y(t,n+(r===0?24:28),i),o=a.address();a.address();let s=a.address();a.address();let c=nn(a,i);return{version:r,sizes:i,baseAddress:o,endOfFile:s,superblockOffset:n,rootAddress:c.objectHeader,rootEntry:c}}{let i={offsetSize:e[n+9],lengthSize:e[n+10]},a=Y(t,n+12,i),o=a.address();a.address();let s=a.address(),c=a.address();return{version:r,sizes:i,baseAddress:o,endOfFile:s,superblockOffset:n,rootAddress:c,rootEntry:null}}}function nn(e,t){let n=e.address(),r=e.address(),i=e.u32();e.skip(4);let a=e.offset;return e.skip(16),{nameOffset:n,objectHeader:r,cacheType:i,scratch:a,size:t.offsetSize*2+24}}function rn(e,t){return $t(e.buf,t,`OHDR`)?sn(e,t):an(e,t)}function an(e,t){let n=Y(e.view,t,e.sizes),r=n.u8();n.skip(1);let i=n.u16(),a=n.u32(),o=n.u32();n.align(8);let s=[];return on(e,n.offset,o,i,s),{version:r,referenceCount:a,messages:s,address:t,size:n.offset-t+o}}function on(e,t,n,r,i){let a=Y(e.view,t,e.sizes),o=t+n;for(;a.offset<o-8&&i.length<r;){let t=a.u16(),n=a.u16();a.u8(),a.skip(3);let o=a.offset;if(a.skip(n),t===16){let t=Y(e.view,o,e.sizes);on(e,t.address(),t.length(),r,i)}else i.push({type:t,offset:o,size:n})}}function sn(e,t){let n=Y(e.view,t,e.sizes);n.skip(4);let r=n.u8(),i=n.u8();i&32&&n.skip(16),i&16&&n.skip(4);let a=n.variable(1<<(i&3)),o=[];return cn(e,n.offset,a,i,o),{version:r,referenceCount:1,messages:o,address:t,size:n.offset-t+a+4}}function cn(e,t,n,r,i){let a=Y(e.view,t,e.sizes),o=t+n;for(;a.offset<o-3;){let t=a.u8(),n=a.u16();a.u8(),r&4&&a.skip(2);let o=a.offset;if(a.skip(n),t===16){let t=Y(e.view,o,e.sizes),n=t.address(),a=t.length();cn(e,n+4,a-8,r,i)}else i.push({type:t,offset:o,size:n})}}function ln(e,t){let n=Y(e.view,t.offset,e.sizes),r=n.u8(),i=n.u8(),a=n.u8();r===1?n.skip(5):n.skip(1);let o=[];for(let e=0;e<i;e++)o.push(n.length());return{rank:i,shape:o,flags:a}}function un(e,t){let n=Y(e.view,t,e.sizes),r=n.u8(),i=n.u8()|n.u8()<<8|n.u8()<<16,a=n.u32(),o=r&15,s={typeClass:o,size:a,bigEndian:(i&1)==1,signed:!1,label:``};return o===0?(s.signed=!!(i&8),s.label=`${s.signed?`int`:`uint`}${a*8}`):o===1?s.label=a===4?`float32`:a===8?`float64`:`float${a*8}`:o===3?s.label=`string[${a}]`:o===9?(s.vlenKind=i&15,s.base=un(e,t+8),s.label=s.vlenKind===1?`string`:`vlen<${s.base.label}>`):s.label=`class ${o}[${a}]`,s}function dn(e,t){let n=Y(e.view,t.offset,e.sizes);if(n.u8()>=3){let e=n.u8();if(e===0){let t=n.u16();return{layoutClass:e,kind:`compact`,address:n.offset,size:t}}if(e===1)return{layoutClass:e,kind:`contiguous`,address:n.address(),size:n.length()};{let t=n.u8(),r=n.address(),i=[];for(let e=0;e<t;e++)i.push(n.u32());return{layoutClass:e,kind:`chunked`,address:r,rank:t,chunkShape:i,elementSize:i.pop()}}}{let e=n.u8(),t=n.u8();n.skip(5);let r=t===0?null:n.address(),i=[];for(let t=0;t<e;t++)i.push(n.u32());if(t===2){let a=n.u32();return i.pop(),{layoutClass:t,kind:`chunked`,address:r,rank:e,chunkShape:i,elementSize:a}}if(t===0){let e=n.u32();return{layoutClass:t,kind:`compact`,address:n.offset,size:e}}return{layoutClass:t,kind:`contiguous`,address:r,size:0}}}function fn(e,t){let n=Y(e.view,t.offset,e.sizes),r=n.u8(),i=n.u8();r===1&&n.skip(6);let a=[];for(let t=0;t<i;t++){let t=n.u16(),i=r===1||t>=256?n.u16():0,o=n.u16(),s=n.u16(),c=i>0?Qt(e.buf,n.offset,i):``;n.skip(i);let l=[];for(let e=0;e<s;e++)l.push(n.u32());r===1&&s%2==1&&n.skip(4),a.push({id:t,name:c,flags:o,values:l})}return a}function pn(e,t){let n=Y(e.view,t.offset,e.sizes);n.u8();let r=n.u8(),i=r&8?n.u8():0;r&4&&n.skip(8),r&16&&n.skip(1);let a=n.variable(1<<(r&3)),o=Qt(e.buf,n.offset,a);return n.skip(a),i===0?{name:o,linkType:i,address:n.address()}:{name:o,linkType:i,address:null}}function mn(e,t){let n=Y(e.view,t.offset,e.sizes);return n.u8(),n.u8()&1&&n.skip(8),{heapAddress:n.address(),nameIndexAddress:n.address()}}function hn(e,t){let n=Y(e.view,t.offset,e.sizes);return{treeAddress:n.address(),heapAddress:n.address()}}function gn(e,t){let n=Y(e.view,t+8,e.sizes),r=n.length();return n.length(),{dataAddress:n.address(),dataSize:r}}function _n(e,t,n){return Zt(e.buf,t.dataAddress+n)}function vn(e,t,n,r){if(t===null||!$t(e.buf,t,`TREE`))return r;let i=Y(e.view,t+4,e.sizes);i.u8();let a=i.u8(),o=i.u16();i.address(),i.address();let s=[];for(let e=0;e<o;e++)i.length(),s.push(i.address());for(let t of s)a>0?vn(e,t,n,r):yn(e,t,n,r);return r}function yn(e,t,n,r){if(t===null||!$t(e.buf,t,`SNOD`))return;let i=Y(e.view,t+4,e.sizes);i.u8(),i.skip(1);let a=i.u16();for(let t=0;t<a;t++){let t=nn(i,e.sizes);r.push({name:_n(e,n,t.nameOffset),address:t.objectHeader})}}function bn(e){let t=!e.bigEndian;return e.typeClass===1?e.size===4?(e,n)=>e.getFloat32(n,t):(e,n)=>e.getFloat64(n,t):e.typeClass===0?e.size===1?e.signed?(e,t)=>e.getInt8(t):(e,t)=>e.getUint8(t):e.size===2?e.signed?(e,n)=>e.getInt16(n,t):(e,n)=>e.getUint16(n,t):e.size===4?e.signed?(e,n)=>e.getInt32(n,t):(e,n)=>e.getUint32(n,t):e.signed?(e,n)=>Number(e.getBigInt64(n,t)):(e,n)=>Number(e.getBigUint64(n,t)):null}function xn(e,t,n){let r=Y(e.view,t+8,e.sizes);for(r.length();r.offset<e.buf.length;){let t=r.u16();r.u16(),r.skip(4);let i=r.length();if(t===0)return null;if(t===n)return e.buf.subarray(r.offset,r.offset+i);r.skip(Math.ceil(i/8)*8)}return null}function Sn(e,t,n,r){let i=new DataView(t.buffer,t.byteOffset,t.byteLength),a=[];for(let t=0;t<r;t++){let r=Y(i,t*n.size,e.sizes);r.u32();let o=r.address(),s=r.u32(),c=o===null?null:xn(e,o,s);c===null?a.push(null):n.vlenKind===1?a.push(Qt(c,0,c.length)):a.push(Cn(c,n.base,Math.floor(c.length/n.base.size),e))}return a}function Cn(e,t,n,r){let i=[];if(t.typeClass===3)for(let r=0;r<n;r++)i.push(Qt(e,r*t.size,t.size));else if(t.typeClass===9&&r)return Sn(r,e,t,n);else{let r=bn(t),a=new DataView(e.buffer,e.byteOffset,e.byteLength);for(let e=0;e<n;e++)i.push(r?r(a,e*t.size):null)}return i}function wn(e){let t=1;for(let n of e)t*=n;return t}function X(e,t){return e.messages.find(e=>e.type===t)}function Tn(e,t){let n=X(t,17);if(n){let{treeAddress:t,heapAddress:r}=hn(e,n);return{links:vn(e,t,gn(e,r),[]),dense:!1}}{let n=t.messages.filter(e=>e.type===6).map(t=>pn(e,t)).filter(e=>e.address!==null),r=X(t,2),i=r?mn(e,r).heapAddress:null;return{links:n,dense:n.length===0&&i!==null}}}function En(e,t){let n=[];for(let r of t.messages)r.type===12&&n.push(Dn(e,r));return n}function Dn(e,t){let n=Y(e.view,t.offset,e.sizes),r=n.u8();n.u8();let i=n.u16(),a=n.u16(),o=n.u16();r===3&&n.u8();let s=r===1,c=new TextDecoder().decode(e.buf.subarray(n.offset,n.offset+i)).replace(/\0+$/,``);n.skip(s?Math.ceil(i/8)*8:i);let l=n.offset;n.skip(s?Math.ceil(a/8)*8:a);let u=n.offset;n.skip(s?Math.ceil(o/8)*8:o);let d=un(e,l),f=ln(e,{offset:u}),p=wn(f.shape),m=Cn(e.buf.subarray(n.offset,n.offset+p*d.size),d,p,e);return{name:c,type:d.label,shape:f.shape,values:m}}function On(e,t,n,r,i){let a=X(t,1),o=X(t,3),s=X(t,8),c=X(t,11),l=ln(e,a),u=un(e,o.offset),d=dn(e,s),f=c?fn(e,c):[];return{kind:`dataset`,name:r,path:n,address:i,shape:l.shape,rank:l.rank,type:u,typeLabel:u.label,layout:d,filters:f,filterLabel:f.map(e=>e.name||An(e.id)).join(` + `),numElements:wn(l.shape),attributes:En(e,t)}}const kn={1:`deflate`,2:`shuffle`,3:`fletcher32`,4:`szip`,5:`nbit`,6:`scaleoffset`},An=e=>kn[e]??`filter ${e}`;function jn(e,t,n,r,i,a){if(a.has(t)||i.length>4096)return null;a.add(t);let o=rn(e,t);if(X(o,1)&&X(o,8)){let a=On(e,o,n,r,t);return i.push(a),a}{let{links:s,dense:c}=Tn(e,o),l={kind:`group`,name:r,path:n,address:t,attributes:En(e,o),dense:c,children:[]};i.push(l);for(let t of s){let r=n===`/`?`/${t.name}`:`${n}/${t.name}`,o=jn(e,t.address,r,t.name,i,a);o&&l.children.push(o)}return l}}function Mn(e){let t=new Uint8Array(e),n=new DataView(e),r=tn(t,n),i={buf:t,view:n,sizes:r.sizes,superblock:r},a=[],o=jn(i,r.rootAddress,`/`,`/`,a,new Set);return{...i,root:o,nodes:a,datasets:a.filter(e=>e.kind===`dataset`),groups:a.filter(e=>e.kind===`group`),version:r.version,endOfFile:r.endOfFile,format:6}}const Nn={1:{name:`byte`,size:1,read:(e,t)=>e.getInt8(t)},2:{name:`char`,size:1,read:(e,t)=>e.getUint8(t)},3:{name:`short`,size:2,read:(e,t)=>e.getInt16(t)},4:{name:`int`,size:4,read:(e,t)=>e.getInt32(t)},5:{name:`float`,size:4,read:(e,t)=>e.getFloat32(t)},6:{name:`double`,size:8,read:(e,t)=>e.getFloat64(t)},7:{name:`ubyte`,size:1,read:(e,t)=>e.getUint8(t)},8:{name:`ushort`,size:2,read:(e,t)=>e.getUint16(t)},9:{name:`uint`,size:4,read:(e,t)=>e.getUint32(t)},10:{name:`int64`,size:8,read:(e,t)=>Number(e.getBigInt64(t))},11:{name:`uint64`,size:8,read:(e,t)=>Number(e.getBigUint64(t))}},Pn=new TextDecoder;function Fn(e){return{buf:e,view:new DataView(e.buffer,e.byteOffset,e.byteLength),offset:0,wide:!1}}function Z(e){let t=e.view.getInt32(e.offset);return e.offset+=4,t}function Q(e){if(e.wide){let t=Number(e.view.getBigInt64(e.offset));return e.offset+=8,t}return Z(e)}function In(e,t){if(t){let t=Number(e.view.getBigInt64(e.offset));return e.offset+=8,t}return Z(e)>>>0}function Ln(e){e.offset+=(4-e.offset%4)%4}function Rn(e){let t=Q(e),n=Pn.decode(e.buf.subarray(e.offset,e.offset+t));return e.offset+=t,Ln(e),n}function zn(e,t,n){let r=Nn[t],i=[];for(let t=0;t<n;t++)i.push(r.read(e.view,e.offset+t*r.size));return e.offset+=n*r.size,Ln(e),t===2?Pn.decode(Uint8Array.from(i)).replace(/\0+$/,``):i}function Bn(e){let t=Z(e),n=Q(e),r={};if(t===12)for(let t=0;t<n;t++){let t=Rn(e);r[t]=zn(e,Z(e),Q(e))}return r}function Vn(e){let t=Z(e),n=Q(e),r=[];if(t===10)for(let t=0;t<n;t++)r.push({name:Rn(e),length:Q(e)});return r}function Hn(e,t,n){let r=Z(e),i=Q(e),a=[];if(r===11)for(let r=0;r<i;r++){let r=Rn(e),i=Q(e),o=[];for(let t=0;t<i;t++)o.push(Z(e));let s=Bn(e),c=Z(e),l=Q(e),u=In(e,n),d=o.map(e=>t[e].length);a.push({name:r,path:`/${r}`,type:c,typeName:Nn[c].name,shape:d,dimensions:o.map(e=>t[e].name),isRecord:o.length>0&&t[o[0]].length===0,attributes:s,byteSize:l,offset:u})}return a}function Un(e){let t=new Uint8Array(e);if(t.byteLength<8)throw Error(`file too small`);if(t[0]!==67||t[1]!==68||t[2]!==70)throw Error(`not a netcdf file`);let n=t[3],r=Fn(t);r.wide=n===5,r.offset=4;let i=Z(r)>>>0,a=Vn(r),o=Bn(r),s=Hn(r,a,n!==1);return{buf:t,view:r.view,version:n,versionLabel:n===1?`classic`:n===2?`64-bit offset`:`CDF-5`,headerSize:r.offset,numRecords:i,dimensions:a,attributes:o,variables:s,format:7}}const Wn=Zn(se),Gn=Zn(he);async function Kn(e){let{schema:t,rowGroups:n}=tt(await A(e));return JSON.stringify({schema:t,rowGroups:n})}async function qn(e){let{columns:t,codec:n,numRows:r,blocks:i}=ft(await A(e));return JSON.stringify({columns:t,codec:n,numRows:r,blocks:i})}async function Jn(e){let{columns:t,compression:n,numRows:r,stripes:i}=await kt(await A(e));return JSON.stringify({columns:t,compression:n,numRows:r,stripes:i})}async function Yn(e){let{columns:t,numRows:n,batches:r}=Yt(await A(e));return JSON.stringify({columns:t,numRows:n,batches:r})}async function $(e){let t=await A(e),n=new Uint8Array(t);if(n[0]===137&&n[1]===72&&n[2]===68&&n[3]===70){let{version:e,groups:n,datasets:r}=Mn(t);return JSON.stringify({version:e,groups:n.map(e=>e.path),datasets:r.map(e=>({path:e.path,type:e.typeLabel,shape:e.shape}))})}{let{versionLabel:e,dimensions:n,attributes:r,variables:i}=Un(t);return JSON.stringify({version:e,dimensions:n,attributes:r,variables:i.map(e=>({path:e.path,type:e.typeName,shape:e.shape}))})}}const Xn={png:Wn,jpg:Gn,jpeg:Gn,parquet:Kn,avro:qn,orc:Jn,arrow:Yn,feather:Yn,ipc:Yn,h5:$,hdf5:$,he5:$,nc:$,nc4:$,cdf:$};function Zn(e){return async function(t){let n=e(await A(t));return n&&JSON.stringify(n)}}async function*Qn(e,t){let n=(await e(t)).split(`
|
|
3
|
-
`);for(let e of n)yield e}async function $n(e){let{containerHandle:t,pattern:n,flags:r=`ig`,index:i,mtimeMap:s,indexOnly:c,nameOnly:l,indexSearchOnly:u,on:d=function(){}}=e,f=e.perFileLimit||3,p=e.maxFiles||1e3,m=e.startAfterPath||``,h=e.onlyPath||``,g=e.skipMatches||0,_=n?new RegExp(n,r):null,v=await ae(),y=await k(te,ne),x=0,S=0,C=0,w=``,T=!1,E=[a()],O=!1,re=!!m;if(i&&!c&&!h&&!m){let e=b({index:i,query:n,maxResults:50});for(let t of e)d(`indexMatch`,t)}if(u)return{containerHandle:t,filesSearched:0,totalMatchFiles:0,totalMatchContent:0,lastPath:``,truncatedFiles:!1,updatedLogBytes:null};let A=y([``,t]);for await(let[e,t]of A){let n=e.slice(1);if(re)n===m&&(re=!1);else if(!(h&&n!==h))try{let{mtime:r}=await v(t),i=s?s.get(n):void 0,a=c||l||i===void 0||Math.floor(i/1e3)!==Math.floor(r/1e3),u=await se({child:t,childPath:e,cleanPath:n,regex:_,extractKw:a,nameOnly:l});if(C++,a&&u&&(O=!0,E.push(o({path:n,mtime:r,keywords:u.keywords}))),u&&u.hasMore&&d(`fileMore`,{path:e}),S>=p){T=!0;break}if(h)break}catch(n){console.log({childPath:e,child:t,error:n})}}return{containerHandle:t,filesSearched:C,totalMatchFiles:S,totalMatchContent:x,lastPath:w,truncatedFiles:T,updatedLogBytes:O?E:null};function oe(e){let t=Math.min(e.length,8192);for(let n=0;n<t;n++)if(e[n]===0)return!0;return!1}async function se(e){let{child:t,childPath:n,cleanPath:r,regex:i,extractKw:a=!0,nameOnly:o}=e,s=ee(r),c=r.split(`/`).pop().replace(/\.[^.]+$/,``),l=new Map,u=0,p=0,m=0,h=!1;if(o)return D({title:c,body:``,ext:s},l),{keywords:Array.from(l.entries()).map(([e,t])=>({keyword:e,score:t})),hasMore:!1};try{let e=Xn[s],n=e?Qn(e,t):ie(t,oe);for await(let e of n){let n=!1;try{n=_(e)}catch{console.log(e,t)}if(n)break}return{keywords:Array.from(l.entries()).map(([e,t])=>({keyword:e,score:t})),hasMore:h}}catch(t){return console.error({...e,...t}),null}function _(e){if(u+=1,a&&D({title:c,body:e,ext:s},l),i){i.lastIndex=0;let t=i.exec(e);if(t&&(p+=1,p>g)){if(m<f){x++;let i={path:n,line:e,lineNumber:u,match:t[0]};m===0&&g===0?(d(`contentFirstMatch`,i),S++,w=r):d(`contentMatch`,i),m++}else if(h=!0,a===!1)return!0}}return!1}}}console.log({type:`tracer`}),w&&(self.addEventListener(`unhandledrejection`,e=>{self.postMessage({type:`error`,message:e.reason?.message,stack:e.reason?.stack})},{once:!0}),self.onmessage=async function(e){console.log(e);let{containerHandle:t,pattern:n,flags:r,indexOnly:i,nameOnly:a,indexSearchOnly:o,perFileLimit:s,maxFiles:c,startAfterPath:l,onlyPath:u,skipMatches:d}=e.data;if(t)if(a){let e=await $n({containerHandle:t,nameOnly:!0,on:tr});self.postMessage({type:`finished`,result:e})}else if(i){let e=await $n({containerHandle:t,flags:r,indexOnly:!0,on:tr});self.postMessage({type:`finished`,result:e})}else{let{index:e,mtimeMap:i}=await er(t,o?`.name.bin`:`.index.bin`),a=await $n({containerHandle:t,pattern:n,flags:r,index:e,mtimeMap:i,indexSearchOnly:o,on:tr,perFileLimit:s,maxFiles:c,startAfterPath:l,onlyPath:u,skipMatches:d});self.postMessage({type:`finished`,result:a})}});async function er(e,t){try{let n=await(await(await e.getFileHandle(t)).getFile()).arrayBuffer(),r=y(s(new Uint8Array(n)).entries);return{index:r,mtimeMap:r.pathToMtime}}catch(e){return console.log(`no index or version mismatch, searching all files:`,e.message),{index:null,mtimeMap:null}}}function tr(e,t){self.postMessage({type:e,result:t})}
|
|
2
|
+
`);i=r.pop();for(let e of r)yield e}i.length>0&&(yield i)}await async function(){if(S){let e=await import(`node:fs/promises`);return async function(t){return e.readFile(t,`utf-8`)}}return async function(e){return(await e.getFile()).text()}}();async function ae(){if(S){let e=await import(`node:fs/promises`);return async function(t){return{mtime:(await e.stat(t)).mtimeMs}}}return async function(e){return{mtime:(await e.getFile()).lastModified}}}function oe(e){return/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}/.test(e)?e.replace(`T`,` `).replace(/[+-]\d{2}:\d{2}$/,``):e}function se(e){let t=new DataView(e),n=[],r=null,i=null,a=[137,80,78,71,13,10,26,10];for(let e=0;e<8;e++)if(t.getUint8(e)!==a[e])throw`Not PNG`;let o=8,s=new Set([`IHDR`,`tEXt`,`iTXt`,`zTXt`,`eXIf`,`skMf`,`skRf`]);for(;o<t.byteLength;){let a=t.getUint32(o),c=new Uint8Array(e,o+4,4),l=String.fromCharCode(...c);if(l===`IEND`)break;if(s.has(l)){let s=new Uint8Array(e,o+8,a);if(l===`IHDR`&&(n.push({name:`Width`,value:t.getUint32(o+8)}),n.push({name:`Height`,value:t.getUint32(o+12)}),n.push({name:`BitDepth`,value:t.getUint8(o+16)}),n.push({name:`ColorType`,value:ce(t.getUint8(o+17))})),l===`tEXt`){let e=le(s);n.push({name:e.keyword,value:e.value})}if(l===`iTXt`){let e=ue(s);if(e.keyword===`XML:com.adobe.xmp`){let t=me(e.value);n.push(...t)}else n.push({name:e.keyword,value:e.value})}if(l===`zTXt`){let e=de(s);n.push({name:e.keyword,value:e.value})}if(l===`eXIf`){let e=fe(s);n.push(...e)}if(l===`skMf`){let e=new TextDecoder(`utf-8`).decode(s);r=JSON.parse(e)}l===`skRf`&&(i=s)}o+=12+a}return{headers:n,skMf:r,skRf:i}}function ce(e){return{0:`Grayscale`,2:`RGB`,3:`Indexed`,4:`Grayscale+Alpha`,6:`RGBA`}[e]||e}function le(e){let t=e.indexOf(0);return{keyword:String.fromCharCode(...e.slice(0,t)),value:String.fromCharCode(...e.slice(t+1))}}function ue(e){let t=0,n=e.indexOf(0,t),r=String.fromCharCode(...e.slice(t,n));t=n+1;let i=e[t++];e[t++],n=e.indexOf(0,t),t=n+1,n=e.indexOf(0,t),t=n+1;let a=e.slice(t),o;if(i===0)o=new TextDecoder().decode(a);else try{let e=pako?pako.inflate(a):a;o=new TextDecoder().decode(e)}catch{o=`[compressed]`}return{keyword:r,value:o}}function de(e){let t=e.indexOf(0),n=String.fromCharCode(...e.slice(0,t));return e[t+1],e.slice(t+2),{keyword:n,value:`[compressed zTXt]`}}function fe(e){let t=[],n=new DataView(e.buffer,e.byteOffset,e.byteLength),r=n.getUint16(0)===18761,i=n.getUint32(4,r),a=n.getUint16(i,r),o={271:`Make`,272:`Model`,274:`Orientation`,306:`DateTime`,315:`Artist`};for(let e=0;e<a;e++){let a=i+2+e*12,s=n.getUint16(a,r),c=n.getUint16(a+2,r),l=n.getUint32(a+4,r);if(o[s]){let e=pe(n,a+8,c,l,r,0);t.push({name:o[s],value:e})}}return t}function pe(e,t,n,r,i,a){if(n===2){let n=r>4?a+e.getUint32(t,i):t,o=``;for(let t=0;t<r-1;t++)o+=String.fromCharCode(e.getUint8(n+t));return o}return n===3?e.getUint16(t,i):e.getUint32(t,i)}function me(e){let t=[];for(let{regex:n,name:r}of[{regex:/<dc:creator[^>]*>[\s\S]*?<rdf:li>([^<]+)<\/rdf:li>/i,name:`Creator`},{regex:/<dc:title[^>]*>[\s\S]*?<rdf:li[^>]*>([^<]+)<\/rdf:li>/i,name:`Title`},{regex:/<xmp:CreatorTool>([^<]+)<\/xmp:CreatorTool>/i,name:`CreatorTool`},{regex:/<xmp:CreateDate>([^<]+)<\/xmp:CreateDate>/i,name:`CreateDate`},{regex:/<xmp:ModifyDate>([^<]+)<\/xmp:ModifyDate>/i,name:`ModifyDate`},{regex:/<tiff:Make>([^<]+)<\/tiff:Make>/i,name:`Make`},{regex:/<tiff:Model>([^<]+)<\/tiff:Model>/i,name:`Model`},{regex:/<exif:PixelXDimension>([^<]+)<\/exif:PixelXDimension>/i,name:`PixelWidth`},{regex:/<exif:PixelYDimension>([^<]+)<\/exif:PixelYDimension>/i,name:`PixelHeight`},{regex:/<photoshop:ColorMode>([^<]+)<\/photoshop:ColorMode>/i,name:`ColorMode`}]){let i=e.match(n);i&&t.push({name:r,value:oe(i[1])})}return e.includes(`Skitch`)&&t.push({name:`Source`,value:`Skitch`}),t}function he(e){let t=new DataView(e),n=[];if(t.getUint16(0)!==65496)throw`Not JPEG`;let r=2;for(;r<t.byteLength;){let i=t.getUint16(r);if(i===65498||i===65497)break;if(i>=65488&&i<=65497||i===65281){r+=2;continue}let a=t.getUint16(r+2),o=new Uint8Array(e,r+4,a-2);if(i===65505){let t=String.fromCharCode(...o.slice(0,30));if(t.startsWith(`Exif\0\0`)){let t=ge(e,r+10);n.push(...t)}else if(t.startsWith(`http://ns.adobe.com/xap/1.0/\0`)){let t=new Uint8Array(e,r+4+29,a-2-29),i=ve(new TextDecoder().decode(t));n.push(...i)}}r+=2+a}return{headers:n}}function ge(e,t){let n=new DataView(e),r=[],i=n.getUint16(t)===18761,a=n.getUint32(t+4,i),o=n.getUint16(t+a,i),s={271:`Make`,272:`Model`,274:`Orientation`,282:`XResolution`,283:`YResolution`,306:`DateTime`,315:`Artist`,34665:`ExifIFD`,34853:`GPSIFD`};for(let e=0;e<o;e++){let o=t+a+2+e*12,c=n.getUint16(o,i),l=n.getUint16(o+2,i),u=n.getUint32(o+4,i);if(s[c]){let e=_e(n,o+8,l,u,i,t);r.push({name:s[c],value:e})}}return r}function _e(e,t,n,r,i,a){if(n===2){let n=r>4?a+e.getUint32(t,i):t,o=``;for(let t=0;t<r-1;t++)o+=String.fromCharCode(e.getUint8(n+t));return o}return n===3?e.getUint16(t,i):e.getUint32(t,i)}function ve(e){let t=[];for(let{regex:n,name:r}of[{regex:/<dc:creator[^>]*>[\s\S]*?<rdf:li>([^<]+)<\/rdf:li>/i,name:`Creator`},{regex:/<dc:title[^>]*>[\s\S]*?<rdf:li[^>]*>([^<]+)<\/rdf:li>/i,name:`Title`},{regex:/<xmp:CreatorTool>([^<]+)<\/xmp:CreatorTool>/i,name:`CreatorTool`},{regex:/<xmp:CreateDate>([^<]+)<\/xmp:CreateDate>/i,name:`CreateDate`},{regex:/<xmp:ModifyDate>([^<]+)<\/xmp:ModifyDate>/i,name:`ModifyDate`},{regex:/<tiff:Make>([^<]+)<\/tiff:Make>/i,name:`Make`},{regex:/<tiff:Model>([^<]+)<\/tiff:Model>/i,name:`Model`},{regex:/<exif:PixelXDimension>([^<]+)<\/exif:PixelXDimension>/i,name:`Width`},{regex:/<exif:PixelYDimension>([^<]+)<\/exif:PixelYDimension>/i,name:`Height`}]){let i=e.match(n);i&&t.push({name:r,value:i[1]})}return e.includes(`Skitch`)&&t.push({name:`Source`,value:`Skitch`}),t}function ye(e,t){let n=0,r=0;for(;t<e.length;){let i=e[t++];if(n|=(i&127)<<r,!(i&128))break;r+=7}return{value:n,pos:t}}function be(e){let{value:t,pos:n}=ye(e,0),r=new Uint8Array(t),i=n,a=0;for(;i<e.length&&a<t;){let t=e[i],n=t&3;if(n===0){let n=(t>>2)+1;t>>2==60?(n=e[i+1]+1,i+=2):t>>2==61?(n=(e[i+1]|e[i+2]<<8)+1,i+=3):t>>2==62?(n=(e[i+1]|e[i+2]<<8|e[i+3]<<16)+1,i+=4):i+=1,r.set(e.subarray(i,i+n),a),a+=n,i+=n}else if(n===1){let n=(t>>2&7)+4,o=t>>5<<8|e[i+1];i+=2;for(let e=0;e<n;e++)r[a]=r[a-o],a++}else if(n===2){let n=(t>>2)+1,o=e[i+1]|e[i+2]<<8;i+=3;for(let e=0;e<n;e++)r[a]=r[a-o],a++}else if(n===3){let n=(t>>2)+1,o=e[i+1]|e[i+2]<<8|e[i+3]<<16|e[i+4]<<24;i+=5;for(let e=0;e<n;e++)r[a]=r[a-o],a++}}return r}function xe(e,t){let n=new Uint8Array(t),r=0,i=0;for(;r<e.length;){let t=e[r++],a=t>>4&15;if(a===15){let t=0;do t=e[r++],a+=t;while(t===255)}if(a>0&&(n.set(e.subarray(r,r+a),i),r+=a,i+=a),r>=e.length)break;let o=e[r]|e[r+1]<<8;if(r+=2,o===0)break;let s=(t&15)+4;if((t&15)==15){let t=0;do t=e[r++],s+=t;while(t===255)}let c=i-o;if(o>=s)n.set(n.subarray(c,c+s),i);else for(let e=0;e<s;e++)n[i+e]=n[c+e];i+=s}return n.subarray(0,i)}function j(e){return e<=0?0:31-Math.clz32(e)}function Se(e){return e>0&&!(e&e-1)}function Ce(e,t,n){let r=0,i=0,a=n;if(a=n-1,e[a]===0)for(;a>t&&e[a]===0;)a--;let o=a,s=e[a],c=j(s);r=c,i=s&(1<<c)-1,a--;let l=c+(o-t)*8,u=0;for(;r<=24&&a>=t;)i=i<<8|e[a--],r+=8;return{read(n){if(n===0)return 0;u+=n,r-=n;let o=i>>>r&(1<<n)-1;for(;r<=24&&a>=t;)i=i<<8|e[a--],r+=8;return o},peek(e){return e===0||r<e?0:i>>>r-e&(1<<e)-1},consume(n){for(u+=n,r-=n;r<=24&&a>=t;)i=i<<8|e[a--],r+=8},available(){return r},hasMoreBytes(){return a>=t},totalBits(){return l},bitsConsumed(){return u}}}function we(e,t){let n=1<<t,r=Array(n);for(let e=0;e<n;e++)r[e]={symbol:0,stBits:0,nextState:0,baseline:0,nbBits:0};let i=n-1;for(let t=0;t<e.length;t++)if(e[t]===-1){if(i<0)break;r[i].symbol=t,i--}let a=(n>>1)+(n>>3)+3,o=n-1,s=0;for(let t=0;t<e.length;t++){let n=e[t];if(!(n<=0))for(let e=0;e<n;e++){r[s].symbol=t;do s=s+a&o;while(s>i)}}let c=Array(e.length);for(let t=0;t<e.length;t++){let n=e[t];c[t]=n<=0?1:n}for(let e=0;e<n;e++){let i=r[e].symbol,a=c[i],o=t-j(a);r[e].stBits=o,r[e].nextState=(a<<o)-n,c[i]=a+1}return r}function Te(e,t){return(e[t]|e[t+1]<<8|e[t+2]<<16|e[t+3]<<24)>>>0}function Ee(e,t,n){let r=t,i=t,a=Te(e,i),o=(a&15)+(n||0);a>>>=4;let s=4,c=(1<<o)+1,l=1<<o,u=o+1,d=[],f=0,p=!1;for(;;){if(p){let t=De(a)>>1;for(;t>=12;)f+=36,i+=3,s-=0,i=Math.min(i,r+(e.length-4)),a=Te(e,i)>>>s,t=De(a)>>1;for(f+=3*t,a>>>=2*t,s+=2*t,f+=a&3,s+=2;d.length<f;)d.push(0);if(f>=256)break;i+=s>>3,s&=7,a=Te(e,i)>>>s}let t=2*l-1-c,n;if((a&l-1)>>>0<t?(n=a&l-1,s+=u-1):(n=a&2*l-1,n>=l&&(n-=t),s+=u),n--,n>=0?c-=n:c+=n,d.push(n),f++,p=n===0,c<l){if(c<=1)break;u=j(c)+1,l=1<<u-1}if(f>=256)break;i+=s>>3,s&=7,a=Te(e,i)>>>s}if(c!==1)throw Error(`FSE_readNCount: corruption detected`);return i+=s+7>>3,{probs:d,accuracyLog:o,consumed:i-r}}function De(e){let t=~e>>>0;return t===0?32:31-Math.clz32(t&-t>>>0)}function Oe(e,t,n,r,i,a,o){if(e===0)return{table:r.table,accuracyLog:r.accuracyLog,consumed:0};if(e===1){let e=t[n];return{table:[{symbol:e,stBits:0,nextState:0,baseline:e<a.length?a[e]:0,nbBits:e<o.length?o[e]:0}],accuracyLog:0,consumed:1}}if(e===3){if(i===null)throw Error(`repeat mode without prior table`);return{table:i.table,accuracyLog:i.accuracyLog,consumed:0}}let{probs:s,accuracyLog:c,consumed:l}=Ee(t,n,5),u=1<<c,d=we(s,c);for(let e=0;e<u;e++){let t=d[e].symbol;t<a.length&&(d[e].baseline=a[t],d[e].nbBits=o[t])}return{table:d,accuracyLog:c,consumed:l}}const ke=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,18,20,22,24,28,32,40,48,64,128,256,512,1024,2048,4096,8192,16384,32768,65536],Ae=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,2,2,3,3,4,6,7,8,9,10,11,12,13,14,15,16],je=[3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,37,39,41,43,47,51,59,67,83,99,131,259,515,1027,2051,4099,8195,16387,32771,65539],Me=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,2,2,3,3,4,4,5,7,8,9,10,11,12,13,14,15,16],Ne=Array(32),Pe=Array(32);for(let e=0;e<32;e++)Pe[e]=e,Ne[e]=e===0?1:1<<e;const Fe=[4,3,2,2,2,2,2,2,2,2,2,2,2,1,1,1,2,2,2,2,2,2,2,2,2,3,2,1,1,1,1,1,-1,-1,-1,-1],Ie=[1,1,1,1,1,1,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,-1,-1,-1,-1,-1],Le=[1,4,3,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,-1,-1,-1,-1,-1,-1,-1];function Re(e,t,n,r){let i=1<<t,a=we(e,t);for(let e=0;e<i;e++){let t=a[e].symbol;t<n.length&&(a[e].baseline=n[t],a[e].nbBits=r[t])}return{table:a,accuracyLog:t}}const ze=Re(Fe,6,ke,Ae),Be=Re(Le,6,je,Me),Ve=Re(Ie,5,Ne,Pe);var He=Array(4096);for(let e=0;e<4096;e++)He[e]={symbol:0,nbBits:0};function Ue(e,t){let n=Math.min(128,e.length-t),r=Array.from(e.slice(t,t+n)).map(function(e){return e.toString(16).padStart(2,`0`)}).join(``);console.log(`[HUFF_RAW] pos=`+t+` hex=`+r);let i=e[t++],a=[];if(i>=128){let n=i-127;for(let r=0;r<n;r+=2){let i=e[t++];a.push(i>>4),r+1<n&&a.push(i&15)}let r=1+Math.ceil(n/2);return{weights:a,maxBits:We(a),consumed:r}}let o=i,s=t+o,{probs:c,accuracyLog:l,consumed:u}=Ee(e,t,5),d=we(c,l),f=Ce(e,t+u,s),p=f.totalBits(),m=f.read(l),h=f.read(l);for(console.log(`[decodeHuffmanTree] compSize=`,o,`accuracyLog=`,l,`probs=`,JSON.stringify(c),`totalBits=`,p,`revStart=`,t+u,`compEnd=`,s,`initState1=`,m,`initState2=`,h,`bitsAfterInit=`,f.bitsConsumed());a.length<255;){let e=d[m];a.push(e.symbol),m=e.nextState+f.read(e.stBits);let t=f.bitsConsumed();if((a.length<=10||t>p-20)&&console.log(`[HUFF_LOOP] w#`+a.length+` s1=`+e.symbol+` stBits=`+e.stBits+` bitsConsumed=`+t+` state1=`+m+` avail=`+f.available()),t>p){a.push(d[h].symbol),console.log(`[HUFF_BREAK] at w#`+a.length+` bitsConsumed=`+t+` > totalBits=`+p);break}if(a.length>=255)break;let n=d[h];a.push(n.symbol),h=n.nextState+f.read(n.stBits);let r=f.bitsConsumed();if((a.length<=10||r>p-20)&&console.log(`[HUFF_LOOP] w#`+a.length+` s2=`+n.symbol+` stBits=`+n.stBits+` bitsConsumed=`+r+` state2=`+h+` avail=`+f.available()),r>p){a.push(d[m].symbol),console.log(`[HUFF_BREAK] at w#`+a.length+` bitsConsumed=`+r+` > totalBits=`+p);break}}let g=1+o;return{weights:a,maxBits:We(a),consumed:g}}function We(e){let t=0;for(let n=0;n<e.length;n++)e[n]>t&&(t=e[n]);let n=0;for(let t=0;t<e.length;t++)e[t]>0&&(n+=1<<e[t]-1);let r=j(n)+ +!Se(n),i=1<<r,a=i-n,o=a>0?j(a)+1:0;console.log(`[buildHuffmanTable] weights.length=`,e.length,`sumW=`,n,`tableLog=`,r,`tableSize=`,i,`lastW=`,o,`remaining=`,a,`weights=`,JSON.stringify(e.slice(0,20)));let s=[...e,o],c=Array(r+2).fill(0);for(let e=0;e<s.length;e++){let t=s[e];t>0&&c[t]++}let l=0;for(let e=1;e<=r+1;e++){let t=c[e];c[e]=l,l+=t*(1<<e-1)}for(let e=0;e<s.length;e++){let t=s[e];if(t===0)continue;let n=r+1-t,i=1<<r-n,a=c[t];c[t]+=i;for(let t=0;t<i;t++)He[a+t].symbol=e,He[a+t].nbBits=n}return r}function Ge(e,t,n,r,i,a,o){if(i&&r>3){let i=e[t]|e[t+1]<<8,s=e[t+2]|e[t+3]<<8,c=e[t+4]|e[t+5]<<8,l=t+6,u=r+3>>2;M(e,l,l+i,o,0,u,a),l+=i,M(e,l,l+s,o,u,u,a),l+=s,M(e,l,l+c,o,u*2,u,a),l+=c,M(e,l,n,o,u*3,r-u*3,a)}else M(e,t,n,o,0,r,a)}function M(e,t,n,r,i,a,o){let s=Ce(e,t,n),c=0;for(;c<a;){let e=He[s.peek(o)];s.consume(e.nbBits),r[i+c++]=e.symbol}}function Ke(e){let t=e,n=Math.min(256,t.length);console.log(`[ZSTD_FRAME] len=`+t.length+` hex=`+Array.from(t.slice(0,n)).map(function(e){return e.toString(16).padStart(2,`0`)}).join(``));let r=0,i=t[r]|t[r+1]<<8|t[r+2]<<16|t[r+3]<<24;if(r+=4,i>>>0!=4247762216)throw Error(`not a zstd frame`);let a=t[r++],o=a>>5&1,s=a>>2&1,c=a>>6,l=a&3,u=0;if(o===0){let e=t[r++],n=e>>3,i=e&7;u=(1<<10+n)+(i<<7+n)}r+=[0,1,2,4][l];let d=-1;c===0&&o?d=t[r++]:c===1?(d=(t[r]|t[r+1]<<8)+256,r+=2):c===2?(d=(t[r]|t[r+1]<<8|t[r+2]<<16|t[r+3]<<24>>>0)>>>0,r+=4):c===3&&(d=((t[r]|t[r+1]<<8|t[r+2]<<16|t[r+3]<<24>>>0)>>>0)+((t[r+4]|t[r+5]<<8|t[r+6]<<16|t[r+7]<<24>>>0)>>>0)*4294967296,r+=8),o&&u===0&&(u=d);let f=d>0?new Uint8Array(d):new Uint8Array(u||131072),p=0,m=!1;for(;!m;){let e=t[r]|t[r+1]<<8|t[r+2]<<16;r+=3,m=e&1;let n=e>>1&3,i=e>>3;if(n===0)h(i),f.set(t.subarray(r,r+i),p),p+=i,r+=i;else if(n===1)h(i),f.fill(t[r++],p,p+i),p+=i;else if(n===2){let e=r+i;g(t,r,e),r=e}else throw Error(`reserved block type`)}return s&&(r+=4),f.subarray(0,p);function h(e){if(p+e>f.length){let t=new Uint8Array(Math.max(f.length*2,p+e));t.set(f),f=t}}function g(e,t,n){let r=e[t],i=r&3,a=0,o=0,s=null;if(i===0){let n=r>>2&3;n===0||n===2?(a=r>>3,t+=1):n===1?(a=(r>>4|e[t+1]<<4)&4095,t+=2):(a=(r>>4|e[t+1]<<4|e[t+2]<<12)&1048575,t+=3),s=e.slice(t,t+a),t+=a}else if(i===1){let n=r>>2&3;n===0||n===2?(a=r>>3,t+=1):n===1?(a=(r>>4|e[t+1]<<4)&4095,t+=2):(a=(r>>4|e[t+1]<<4|e[t+2]<<12)&1048575,t+=3),s=new Uint8Array(a),s.fill(e[t]),t+=1}else{let n=r>>2&3,c=n>0,l=e[t]|e[t+1]<<8|e[t+2]<<16|e[t+3]<<24;if(n<=1)a=l>>4&1023,o=l>>14&1023,t+=3;else if(n===2)a=l>>4&16383,o=l>>>18&16383,t+=4;else{let n=e[t+4];a=l>>4&262143,o=(l>>>22|n<<10)&262143,t+=5}s=new Uint8Array(a);let u=t;if(i===2){let n=Ue(e,t);_=n.maxBits,Ge(e,t+n.consumed,u+o,a,c,n.maxBits,s)}else Ge(e,t,u+o,a,c,_,s);t=u+o}let c=e[t++],l=0;if(c<128?l=c:c<255?l=(c-128<<8)+e[t++]:(l=(e[t]|e[t+1]<<8)+32512,t+=2),l===0){h(a),f.set(s,p),p+=a;return}let u=e[t++],d=u>>6&3,m=u>>4&3,g=u>>2&3,C=Oe(d,e,t,ze,x,ke,Ae);t+=C.consumed,x=C;let w=Oe(m,e,t,Ve,ee,Ne,Pe);t+=w.consumed,ee=w;let T=Oe(g,e,t,Be,S,je,Me);t+=T.consumed,S=T;let E=Ce(e,t,n),D=E.read(C.accuracyLog),te=E.read(w.accuracyLog),ne=E.read(T.accuracyLog),O=0;h(a+l*4);for(let e=0;e<l;e++){let t=w.table[te],n=T.table[ne],r=C.table[D],i=t.baseline+E.read(t.nbBits),a=n.baseline+E.read(n.nbBits),o=r.baseline+E.read(r.nbBits),c;if(i>3)c=i-3,b=y,y=v,v=c;else if(i===1){if(o===0){c=y;let e=v;v=y,y=e}else c=v}else i===2?o===0?(c=b,b=y,y=v,v=c):(c=y,y=v,v=c):o===0?(c=v-1,b=y,y=v,v=c):(c=b,b=y,y=v,v=c);if(o>0&&(h(o),f.set(s.subarray(O,O+o),p),p+=o,O+=o),a>0){h(a);let e=p-c;if(c>=a)f.set(f.subarray(e,e+a),p);else for(let t=0;t<a;t++)f[p+t]=f[e+t];p+=a}e<l-1&&(D=r.nextState+E.read(r.stBits),ne=n.nextState+E.read(n.stBits),te=t.nextState+E.read(t.stBits))}let k=s.length-O;k>0&&(h(k),f.set(s.subarray(O),p),p+=k)}var _,v,y,b,x,ee,S}function N(e,t){let n=0,r=0,i=0;for(;;){let a=e[t+i];if(n|=(a&127)<<r,i++,r+=7,!(a&128))break}return{value:n,consumed:i}}function P(e,t){let{value:n,consumed:r}=N(e,t);return{value:n>>>1^-(n&1),consumed:r}}function F(e,t){let n=0n,r=0n,i=0;for(;;){let a=BigInt(e[t+i]);if(n|=(a&127n)<<r,i++,r+=7n,(a&128n)==0n)break}return{value:Number(n>>1n^-(n&1n)),consumed:i}}function I(e,t,n){let r=e[t];if(r===0)return{typeId:0,fieldId:0,consumed:1};let i=r&15,a=r>>4&15,o=1;if(a===0){let r=P(e,t+1);n.fieldId=r.value,o=1+r.consumed}else n.fieldId+=a;return{typeId:i,fieldId:n.fieldId,consumed:o}}function L(e,t,n){if(n===1||n===2)return 0;if(n===3)return 1;if(n===4||n===5||n===6)return N(e,t).consumed;if(n===7)return 8;if(n===8){let n=N(e,t);return n.consumed+n.value}if(n===9||n===11){let n=e[t],r=n>>4&15,i=n&15,a=1;if(r===15){let n=N(e,t+1);r=n.value,a=1+n.consumed}for(let n=0;n<r;n++)a+=L(e,t+a,i);return a}if(n===10){let n=N(e,t),r=n.consumed,i=n.value;if(i>0){let n=e[t+r];r++;let a=n>>4&15,o=n&15;for(let n=0;n<i;n++)r+=L(e,t+r,a),r+=L(e,t+r,o)}return r}if(n===12){let n=0,r={fieldId:0};for(;;){let i=I(e,t+n,r);if(n+=i.consumed,i.typeId===0)break;n+=L(e,t+n,i.typeId)}return n}return 0}function qe(e,t){let n=N(e,t),r=n.value,i=t+n.consumed;return{data:e.subarray(i,i+r),len:r,consumed:n.consumed+r}}function Je(e,t,n){let r=t,i={fieldId:0},a=null,o=null,s=null,c=null;for(;;){let t=I(e,r,i);if(r+=t.consumed,t.typeId===0)break;if(t.typeId===8&&(t.fieldId===1||t.fieldId===2||t.fieldId===5||t.fieldId===6)){let n=qe(e,r);t.fieldId===1?c=n.data:t.fieldId===2?s=n.data:t.fieldId===5?o=n.data:s=n.data,t.fieldId===6&&(a=n.data),r+=n.consumed}else r+=L(e,r,t.typeId)}if(a||=s,o||=c,a&&o){let t=new DataView(e.buffer,e.byteOffset),r=n.type;if(r===1&&a.length>=4&&o.length>=4){let r=a.byteOffset-e.byteOffset,i=o.byteOffset-e.byteOffset;n.colMin=t.getInt32(r,!0),n.colMax=t.getInt32(i,!0),n.hasStats=!0}else if(r===2&&a.length>=8&&o.length>=8){let r=a.byteOffset-e.byteOffset,i=o.byteOffset-e.byteOffset;n.colMin=Number(t.getBigInt64(r,!0)),n.colMax=Number(t.getBigInt64(i,!0)),n.hasStats=!0}else if(r===4&&a.length>=4&&o.length>=4){let r=a.byteOffset-e.byteOffset,i=o.byteOffset-e.byteOffset;n.colMin=t.getFloat32(r,!0),n.colMax=t.getFloat32(i,!0),n.hasStats=!0}else if(r===5&&a.length>=8&&o.length>=8){let r=a.byteOffset-e.byteOffset,i=o.byteOffset-e.byteOffset;n.colMin=t.getFloat64(r,!0),n.colMax=t.getFloat64(i,!0),n.hasStats=!0}}return r-t}function Ye(e,t,n){let r=t,i=e[r]>>4&15;if(r++,i===15){let t=N(e,r);i=t.value,r+=t.consumed}for(let t=0;t<i;t++){let t=P(e,r);n.push(t.value),r+=t.consumed}return r-t}function Xe(e,t,n){let r=t,i={fieldId:0};for(;;){let t=I(e,r,i);if(r+=t.consumed,t.typeId===0)break;if(t.fieldId===1){let t=P(e,r);n.type=t.value,r+=t.consumed}else if(t.fieldId===2&&t.typeId===9)r+=Ye(e,r,n.encodings);else if(t.fieldId===4){let t=P(e,r);n.codec=t.value,r+=t.consumed}else if(t.fieldId===5){let t=F(e,r);n.numValues=t.value,r+=t.consumed}else if(t.fieldId===6){let t=F(e,r);n.totalUncompressedSize=t.value,r+=t.consumed}else if(t.fieldId===7){let t=F(e,r);n.totalCompressedSize=t.value,r+=t.consumed}else if(t.fieldId===8&&t.typeId===12)r+=Je(e,r,n);else if(t.fieldId===9){let t=F(e,r);n.dataPageOffset=t.value,r+=t.consumed}else if(t.fieldId===10){let t=F(e,r);n.indexPageOffset=t.value,r+=t.consumed}else if(t.fieldId===11){let t=F(e,r);n.dictionaryPageOffset=t.value,r+=t.consumed}else r+=L(e,r,t.typeId)}return r-t}function Ze(e,t,n){let r=t,i={fieldId:0};for(;;){let t=I(e,r,i);if(r+=t.consumed,t.typeId===0)break;if(t.fieldId===3&&t.typeId===12)r+=Xe(e,r,n);else if(t.fieldId===4){let t=F(e,r);n.offsetIndexOffset=t.value,r+=t.consumed}else if(t.fieldId===5){let t=P(e,r);n.offsetIndexLength=t.value,r+=t.consumed}else if(t.fieldId===6){let t=F(e,r);n.columnIndexOffset=t.value,r+=t.consumed}else if(t.fieldId===7){let t=P(e,r);n.columnIndexLength=t.value,r+=t.consumed}else r+=L(e,r,t.typeId)}return r-t}function Qe(e,t,n){let r=t,i={fieldId:0},a={numRows:0,numCols:n,chunks:[]};for(let e=0;e<n;e++)a.chunks.push({dataPageOffset:0,dictionaryPageOffset:0,indexPageOffset:0,totalCompressedSize:0,totalUncompressedSize:0,codec:0,type:0,numValues:0,encodings:[],offsetIndexOffset:0,offsetIndexLength:0,columnIndexOffset:0,columnIndexLength:0,hasStats:!1,colMin:0,colMax:0});for(;;){let t=I(e,r,i);if(r+=t.consumed,t.typeId===0)break;if(t.fieldId===1&&t.typeId===9){let t=e[r],i=t>>4&15,o=t&15;if(r++,i===15){let t=N(e,r);i=t.value,r+=t.consumed}for(let t=0;t<i&&t<n;t++)r+=o===12?Ze(e,r,a.chunks[t]):L(e,r,o)}else if(t.fieldId===3){let t=F(e,r);a.numRows=t.value,r+=t.consumed}else if(t.fieldId===5){let t=F(e,r);r+=t.consumed}else r+=L(e,r,t.typeId)}return{rg:a,consumed:r-t}}function $e(e,t,n){let r=t,i=[],a=[],o=[];for(let t=0;t<n;t++){let t={fieldId:0},n=-1,s=0,c=``,l=!1;for(;;){let i=I(e,r,t);if(r+=i.consumed,i.typeId===0)break;if(i.fieldId===1&&(i.typeId===5||i.typeId===6)){let t=P(e,r);n=t.value,r+=t.consumed}else if(i.fieldId===3&&(i.typeId===5||i.typeId===6)){let t=P(e,r);s=t.value,r+=t.consumed}else if(i.fieldId===4&&i.typeId===8){let t=qe(e,r);c=new TextDecoder().decode(t.data),r+=t.consumed}else if(i.fieldId===5&&(i.typeId===5||i.typeId===6)){let t=P(e,r);r+=t.consumed,l=!0}else r+=L(e,r,i.typeId)}l||(i.push(c),a.push(n),o.push(s))}return{schema:{numCols:i.length,colNames:i,colTypes:a,colRepetition:o},consumed:r-t}}function et(e){let t=new DataView(e.buffer,e.byteOffset,e.byteLength).getUint32(e.byteLength-8,!0),n=e.byteLength-8-t,r=n,i={fieldId:0},a=null,o=0,s=0,c=``,l=[];for(;;){let t=I(e,r,i);if(r+=t.consumed,t.typeId===0)break;if(t.fieldId===1&&(t.typeId===5||t.typeId===6)){let t=P(e,r);s=t.value,r+=t.consumed}else if(t.fieldId===6&&t.typeId===8){let t=qe(e,r);c=new TextDecoder().decode(t.data),r+=t.consumed}else if(t.fieldId===2&&t.typeId===9){let t=e[r]>>4&15;if(r++,t===15){let n=N(e,r);t=n.value,r+=n.consumed}let n=$e(e,r,t);a=n.schema,r+=n.consumed}else if(t.fieldId===3&&(t.typeId===6||t.typeId===5)){let t=F(e,r);o=t.value,r+=t.consumed}else if(t.fieldId===4&&t.typeId===9){let t=e[r]>>4&15;if(r++,t===15){let n=N(e,r);t=n.value,r+=n.consumed}for(let n=0;n<t;n++){let t=Qe(e,r,a?a.numCols:0);l.push(t.rg),r+=t.consumed}}else r+=L(e,r,t.typeId)}return{schema:a,numRows:o,numRowGroups:l.length,rowGroups:l,version:s,createdBy:c,footerOffset:n,footerLength:t}}function tt(e){let t=new Uint8Array(e);if(t.byteLength<8)throw Error(`file too small`);if(t[0]!==80||t[1]!==65||t[2]!==82||t[3]!==49)throw Error(`not a parquet file`);let n=t.byteLength-4;if(t[n]!==80||t[n+1]!==65||t[n+2]!==82||t[n+3]!==49)throw Error(`not a parquet file`);let r=et(t);return{buf:t,schema:r.schema,numRows:r.numRows,numRowGroups:r.numRowGroups,rowGroups:r.rowGroups,version:r.version,createdBy:r.createdBy,footerOffset:r.footerOffset,footerLength:r.footerLength,format:0}}async function nt(e){return rt(new DecompressionStream(`deflate-raw`),e)}async function rt(e,t){let n=e.writable.getWriter();n.write(t).catch(()=>{}),n.close().catch(()=>{});let r=e.readable.getReader(),i=[],a=0,o=!0;for(;o;)try{let{done:e,value:t}=await r.read();e?o=!1:(i.push(t),a+=t.byteLength)}catch(e){if(i.length===0)throw e;o=!1}let s=new Uint8Array(a),c=0;for(let e of i)s.set(e,c),c+=e.byteLength;return s}await async function(){if(S){let{Readable:e}=await import(`node:stream`);return function(t){return e.from([t])}}return function(e){return new ReadableStream({start(t){t.enqueue(e),t.close()}})}}(),await async function(){if(S){let{createInflateRaw:e}=await import(`node:zlib`),{Readable:t}=await import(`node:stream`);return function(n){let r=e();return t.from([n]).pipe(r)}}return function(e){let t=new DecompressionStream(`deflate-raw`),n=t.writable.getWriter();return n.write(e),n.close(),t.readable}}();const it=new Set([`null`,`boolean`,`int`,`long`,`float`,`double`,`bytes`,`string`]);function R(e,t){return typeof e==`string`?it.has(e)?{kind:e}:t[e]??{kind:`string`}:Array.isArray(e)?{kind:`union`,branches:e.map(e=>R(e,t))}:at(e,t)}function at(e,t){let n=e.type,r=e.logicalType??null;if(n===`record`||n===`error`){let n={kind:`record`,name:e.name,fields:[]};t[e.name]=n;for(let r of e.fields)n.fields.push({name:r.name,node:R(r.type,t)});return n}if(n===`enum`){let n={kind:`enum`,name:e.name,symbols:e.symbols};return t[e.name]=n,n}if(n===`fixed`){let n={kind:`fixed`,name:e.name,size:e.size,logicalType:r};return t[e.name]=n,n}return n===`array`?{kind:`array`,items:R(e.items,t)}:n===`map`?{kind:`map`,values:R(e.values,t)}:{...R(n,t),logicalType:r}}function ot(e){return R(JSON.parse(e),{})}function z(e){if(e.logicalType)return e.logicalType;if(e.kind===`union`){let t=e.branches.filter(e=>e.kind!==`null`);return t.length===1?`${z(t[0])}?`:e.branches.map(z).join(` | `)}return e.kind===`array`?`array<${z(e.items)}>`:e.kind===`map`?`map<${z(e.values)}>`:e.kind===`record`||e.kind===`enum`||e.kind===`fixed`?e.name:e.kind}function st(e){return e.kind===`record`?e.fields.map(e=>({name:e.name,type:z(e.node)})):[{name:`value`,type:z(e)}]}new TextDecoder;function ct(e){return{bytes:e,offset:0}}function B(e){let t=e.bytes,n=t[e.offset++],r=n&127,i=1;for(;n&128;)n=t[e.offset++],i*=128,r+=(n&127)*i;return r%2==0?r/2:-(r+1)/2}const lt=new TextDecoder;function ut(e){let t={},n=0,r=0,i=B(e);for(;i!==0;){i<0&&(i=-i,B(e));for(let a=0;a<i;a++){let i=lt.decode(dt(e)),a=B(e),o=e.offset;e.offset+=a,t[i]=lt.decode(e.bytes.subarray(o,o+a)),i===`avro.schema`&&(n=o,r=a)}i=B(e)}return{meta:t,schemaOffset:n,schemaLength:r}}function dt(e){let t=B(e),n=e.bytes.subarray(e.offset,e.offset+t);return e.offset+=t,n}function ft(e){let t=new Uint8Array(e);if(t.byteLength<4)throw Error(`file too small`);if(t[0]!==79||t[1]!==98||t[2]!==106||t[3]!==1)throw Error(`not an avro file`);let n=ct(t);n.offset=4;let{meta:r,schemaOffset:i,schemaLength:a}=ut(n),o=t.subarray(n.offset,n.offset+16);n.offset+=16;let s=n.offset,c=[],l=0;for(;n.offset<t.byteLength;){let e=n.offset,t=B(n),r=B(n),i=n.offset;c.push({offset:e,dataOffset:i,dataSize:r,numRows:t,size:i+r+16-e}),l+=t,n.offset=i+r+16}let u=ot(r[`avro.schema`]);return{buf:t,schema:u,schemaJson:r[`avro.schema`],schemaOffset:i,schemaLength:a,columns:st(u),codec:r[`avro.codec`]??`null`,meta:r,syncMarker:o,headerSize:s,blocks:c,numBlocks:c.length,numRows:l,format:3}}const pt=new TextDecoder;function V(e,t,n){return{bytes:e,offset:t??0,end:n??e.length}}function H(e){let t=e.bytes,n=0,r=1,i=t[e.offset++];for(n=i&127;i&128;)i=t[e.offset++],r*=128,n+=(i&127)*r;return n}function mt(e){let t=H(e);return{field:Math.floor(t/8),wire:t%8}}function ht(e){let t=H(e),n=e.bytes.subarray(e.offset,e.offset+t);return e.offset+=t,n}function gt(e){return pt.decode(ht(e))}function _t(e,t){if(t===0)H(e);else if(t===2){let t=H(e);e.offset+=t}else if(t===1)e.offset+=8;else if(t===5)e.offset+=4;else throw Error(`unsupported protobuf wire type ${t}`)}function U(e,t){for(;e.offset<e.end;){let{field:n,wire:r}=mt(e);t(n,r,e)||_t(e,r)}}function vt(e){let t=V(ht(e)),n=[];for(;t.offset<t.end;)n.push(H(t));return n}function yt(e){let t=H(e),n=e.offset;return e.offset+=t,V(e.bytes,n,n+t)}const bt=[`boolean`,`byte`,`short`,`int`,`long`,`float`,`double`,`string`,`binary`,`timestamp`,`list`,`map`,`struct`,`union`,`decimal`,`date`,`varchar`,`char`,`timestamp_instant`],xt=[`none`,`zlib`,`snappy`,`lzo`,`lz4`,`zstd`];function St(e){let t=V(e),n={footerLength:0,compression:0,compressionBlockSize:0,metadataLength:0,writerVersion:0,version:[]};return U(t,(e,r)=>e===1?(n.footerLength=H(t),!0):e===2?(n.compression=H(t),!0):e===3?(n.compressionBlockSize=H(t),!0):e===4&&r===2?(n.version=vt(t),!0):e===5?(n.metadataLength=H(t),!0):e===6&&(n.writerVersion=H(t),!0)),n}function Ct(e){let t={offset:0,indexLength:0,dataLength:0,footerLength:0,numRows:0};return U(e,n=>n===1?(t.offset=H(e),!0):n===2?(t.indexLength=H(e),!0):n===3?(t.dataLength=H(e),!0):n===4?(t.footerLength=H(e),!0):n===5&&(t.numRows=H(e),!0)),t}function wt(e){let t={kind:0,subtypes:[],fieldNames:[],precision:0,scale:0};return U(e,(n,r)=>n===1?(t.kind=H(e),!0):n===2&&r===2?(t.subtypes=vt(e),!0):n===2?(t.subtypes.push(H(e)),!0):n===3?(t.fieldNames.push(gt(e)),!0):n===5?(t.precision=H(e),!0):n===6&&(t.scale=H(e),!0)),t}function Tt(e){let t=V(e),n={headerLength:3,contentLength:0,stripes:[],types:[],numRows:0,rowIndexStride:0,writer:0};return U(t,e=>e===1?(n.headerLength=H(t),!0):e===2?(n.contentLength=H(t),!0):e===3?(n.stripes.push(Ct(yt(t))),!0):e===4?(n.types.push(wt(yt(t))),!0):e===6?(n.numRows=H(t),!0):e===8?(n.rowIndexStride=H(t),!0):e===9&&(n.writer=H(t),!0)),n}function Et(e){let t=e[0];return t.subtypes.map((n,r)=>({id:n,name:t.fieldNames[r],type:e[n],label:W(e,n)}))}function W(e,t){let n=e[t],r=bt[n.kind]??`kind ${n.kind}`;return n.kind===14?`decimal(${n.precision},${n.scale})`:n.kind===10?`list<${W(e,n.subtypes[0])}>`:n.kind===11?`map<${W(e,n.subtypes[0])},${W(e,n.subtypes[1])}>`:r}new TextDecoder;async function Dt(e,t){if(e===1)return await nt(t);if(e===2)return be(t);if(e===5)return Ke(t);if(e===4)return xe(t);throw Error(`unsupported orc compression ${e}`)}async function Ot(e,t,n,r){if(e===0)return t.subarray(n,n+r);let i=[],a=0,o=n,s=n+r;for(;o<s;){let n=t[o]+t[o+1]*256+t[o+2]*65536,r=Math.floor(n/2),s=n%2==1;o+=3;let c=t.subarray(o,o+r),l=s?c:await Dt(e,c);i.push(l),a+=l.length,o+=r}if(i.length===1)return i[0];let c=new Uint8Array(a),l=0;for(let e of i)c.set(e,l),l+=e.length;return c}async function kt(e){let t=new Uint8Array(e);if(t.byteLength<8)throw Error(`file too small`);if(t[0]!==79||t[1]!==82||t[2]!==67)throw Error(`not an orc file`);let n=t[t.byteLength-1],r=t.byteLength-1-n,i=St(t.subarray(r,r+n)),a=r-i.footerLength,o=Tt(await Ot(i.compression,t,a,i.footerLength));return{buf:t,postScript:i,postScriptOffset:r,postScriptLength:n,footerOffset:a,footerLength:i.footerLength,metadataOffset:a-i.metadataLength,metadataLength:i.metadataLength,compressionKind:i.compression,compression:xt[i.compression]??`kind ${i.compression}`,types:o.types,columns:Et(o.types),stripes:o.stripes,numStripes:o.stripes.length,numRows:o.numRows,rowIndexStride:o.rowIndexStride,writer:o.writer,format:4}}function At(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function jt(e,t){return t+e.getUint32(t,!0)}function G(e,t,n){let r=t-e.getInt32(t,!0),i=e.getUint16(r,!0),a=4+n*2;if(a<i){let n=e.getUint16(r+a,!0);return n===0?0:t+n}return 0}function K(e,t,n,r,i){let a=G(e,t,n);return a===0?r:i(a)}function Mt(e,t,n,r){return K(e,t,n,r,t=>e.getUint8(t))}function Nt(e,t,n,r){return K(e,t,n,r,t=>e.getUint8(t)===1)}function q(e,t,n,r){return K(e,t,n,r,t=>e.getInt16(t,!0))}function J(e,t,n,r){return K(e,t,n,r,t=>e.getInt32(t,!0))}function Pt(e,t,n,r){return K(e,t,n,r,t=>Number(e.getBigInt64(t,!0)))}function Ft(e,t,n){let r=G(e,t,n);return r===0?0:r+e.getUint32(r,!0)}function It(e,t,n){let r=G(e,t,n);return r===0?0:r+e.getUint32(r,!0)}function Lt(e,t){return t===0?0:e.getUint32(t,!0)}function Rt(e,t,n,r){return t+4+n*r}function zt(e,t,n){let r=Rt(e,t,n,4);return r+e.getUint32(r,!0)}function Bt(e,t,n){let r=G(e,t,n);if(r===0)return``;{let t=r+e.getUint32(r,!0),n=e.getUint32(t,!0),i=new Uint8Array(e.buffer,e.byteOffset+t+4,n);return new TextDecoder().decode(i)}}const Vt=[`s`,`ms`,`us`,`ns`];function Ht(e,t,n){let r=Ft(e,t,3);if(n===2){let t=J(e,r,0,32),n=Nt(e,r,1,!0);return{bitWidth:t,signed:n,label:`${n?`int`:`uint`}${t}`}}if(n===3){let t=q(e,r,0,2);return{precision:t,label:t===2?`double`:t===1?`float`:`half`}}if(n===7){let t=J(e,r,0,0),n=J(e,r,1,0);return{precision:t,scale:n,bitWidth:J(e,r,2,128),label:`decimal(${t},${n})`}}if(n===8)return{unit:q(e,r,0,1),label:`date`};if(n===9){let t=q(e,r,0,1);return{unit:t,bitWidth:J(e,r,1,32),label:`time[${Vt[t]}]`}}if(n===10){let t=q(e,r,0,0);return{unit:t,timezone:Bt(e,r,1),label:`timestamp[${Vt[t]}]`}}return n===5||n===20?{label:`string`}:n===4||n===19?{label:`bytes`}:n===6?{label:`boolean`}:n===1?{label:`null`}:n===13?{label:`struct`}:{label:`type ${n}`}}function Ut(e,t){let n=Mt(e,t,2,0),r=[],i=It(e,t,5);for(let t=0;t<Lt(e,i);t++)r.push(Ut(e,zt(e,i,t)));return{name:Bt(e,t,0),nullable:Nt(e,t,1,!0),typeId:n,...Ht(e,t,n),children:r}}function Wt(e,t){let n=[],r=It(e,t,1);for(let t=0;t<Lt(e,r);t++)n.push(Ut(e,zt(e,r,t)));return{endianness:q(e,t,0,0),fields:n}}new TextDecoder;const Gt=[65,82,82,79,87,49];function Kt(e,t){return Gt.every((n,r)=>e[t+r]===n)}function qt(e,t,n){let r=It(e,t,n),i=[];for(let t=0;t<Lt(e,r);t++){let n=Rt(e,r,t,24);i.push({offset:Number(e.getBigInt64(n,!0)),metaDataLength:e.getInt32(n+8,!0),bodyLength:Number(e.getBigInt64(n+16,!0))})}return i}function Jt(e,t){let n=t;e.getUint32(n,!0)===4294967295&&(n+=4);let r=e.getInt32(n,!0);return n+=4,{table:jt(e,n),metaLength:r}}function Yt(e){let t=new Uint8Array(e);if(t.byteLength<20)throw Error(`file too small`);if(!Kt(t,0)||!Kt(t,t.byteLength-6))throw Error(`not an arrow file`);let n=At(t),r=n.getInt32(t.byteLength-10,!0),i=t.byteLength-10-r,a=jt(n,i),o=Wt(n,Ft(n,a,1)),s=qt(n,a,2),c=qt(n,a,3),l=0;for(let e of c){let{table:t}=Jt(n,e.offset);l+=Pt(n,Ft(n,t,2),0,0)}return{buf:t,view:n,schema:o,columns:o.fields.map(e=>({name:e.name,type:e.label})),dictionaries:s,batches:c,numBatches:c.length,numRows:l,version:q(n,a,0,0),footerOffset:i,footerLength:r,format:5}}function Y(e,t,n){let r=t;function i(t){let n=0,i=1,a=!0;for(let o=0;o<t;o++){let t=e.getUint8(r+o);t!==255&&(a=!1),n+=t*i,i*=256}return r+=t,a?null:n}return{get offset(){return r},set offset(e){r=e},u8(){let t=e.getUint8(r);return r+=1,t},u16(){let t=e.getUint16(r,!0);return r+=2,t},u32(){let t=e.getUint32(r,!0);return r+=4,t},u64(){let t=Number(e.getBigUint64(r,!0));return r+=8,t},i8(){let t=e.getInt8(r);return r+=1,t},variable:i,address(){return i(n.offsetSize)},length(){return i(n.lengthSize)},skip(e){r+=e},align(e){r+=(e-r%e)%e}}}const Xt=new TextDecoder;function Zt(e,t){let n=t;for(;n<e.length&&e[n]!==0;)n++;return Xt.decode(e.subarray(t,n))}function Qt(e,t,n){return Xt.decode(e.subarray(t,t+n)).replace(/\0+$/,``)}function $t(e,t,n){for(let r=0;r<n.length;r++)if(e[t+r]!==n.charCodeAt(r))return!1;return!0}const en=[137,72,68,70,13,10,26,10];function tn(e,t){let n=0;for(;n<e.length&&!en.every((t,r)=>e[n+r]===t);)n=n===0?512:n*2;if(n>=e.length)throw Error(`not an hdf5 file`);let r=e[n+8];if(r<=1){let i={offsetSize:e[n+13],lengthSize:e[n+14]},a=Y(t,n+(r===0?24:28),i),o=a.address();a.address();let s=a.address();a.address();let c=nn(a,i);return{version:r,sizes:i,baseAddress:o,endOfFile:s,superblockOffset:n,rootAddress:c.objectHeader,rootEntry:c}}{let i={offsetSize:e[n+9],lengthSize:e[n+10]},a=Y(t,n+12,i),o=a.address();a.address();let s=a.address(),c=a.address();return{version:r,sizes:i,baseAddress:o,endOfFile:s,superblockOffset:n,rootAddress:c,rootEntry:null}}}function nn(e,t){let n=e.address(),r=e.address(),i=e.u32();e.skip(4);let a=e.offset;return e.skip(16),{nameOffset:n,objectHeader:r,cacheType:i,scratch:a,size:t.offsetSize*2+24}}function rn(e,t){return $t(e.buf,t,`OHDR`)?sn(e,t):an(e,t)}function an(e,t){let n=Y(e.view,t,e.sizes),r=n.u8();n.skip(1);let i=n.u16(),a=n.u32(),o=n.u32();n.align(8);let s=[];return on(e,n.offset,o,i,s),{version:r,referenceCount:a,messages:s,address:t,size:n.offset-t+o}}function on(e,t,n,r,i){let a=Y(e.view,t,e.sizes),o=t+n;for(;a.offset<o-8&&i.length<r;){let t=a.u16(),n=a.u16();a.u8(),a.skip(3);let o=a.offset;if(a.skip(n),t===16){let t=Y(e.view,o,e.sizes);on(e,t.address(),t.length(),r,i)}else i.push({type:t,offset:o,size:n})}}function sn(e,t){let n=Y(e.view,t,e.sizes);n.skip(4);let r=n.u8(),i=n.u8();i&32&&n.skip(16),i&16&&n.skip(4);let a=n.variable(1<<(i&3)),o=[];return cn(e,n.offset,a,i,o),{version:r,referenceCount:1,messages:o,address:t,size:n.offset-t+a+4}}function cn(e,t,n,r,i){let a=Y(e.view,t,e.sizes),o=t+n;for(;a.offset<o-3;){let t=a.u8(),n=a.u16();a.u8(),r&4&&a.skip(2);let o=a.offset;if(a.skip(n),t===16){let t=Y(e.view,o,e.sizes),n=t.address(),a=t.length();cn(e,n+4,a-8,r,i)}else i.push({type:t,offset:o,size:n})}}function ln(e,t){let n=Y(e.view,t.offset,e.sizes),r=n.u8(),i=n.u8(),a=n.u8();r===1?n.skip(5):n.skip(1);let o=[];for(let e=0;e<i;e++)o.push(n.length());return{rank:i,shape:o,flags:a}}function un(e,t){let n=Y(e.view,t,e.sizes),r=n.u8(),i=n.u8()|n.u8()<<8|n.u8()<<16,a=n.u32(),o=r&15,s={typeClass:o,size:a,bigEndian:(i&1)==1,signed:!1,label:``};return o===0?(s.signed=!!(i&8),s.label=`${s.signed?`int`:`uint`}${a*8}`):o===1?s.label=a===4?`float32`:a===8?`float64`:`float${a*8}`:o===3?s.label=`string[${a}]`:o===9?(s.vlenKind=i&15,s.base=un(e,t+8),s.label=s.vlenKind===1?`string`:`vlen<${s.base.label}>`):s.label=`class ${o}[${a}]`,s}function dn(e,t){let n=Y(e.view,t.offset,e.sizes);if(n.u8()>=3){let e=n.u8();if(e===0){let t=n.u16();return{layoutClass:e,kind:`compact`,address:n.offset,size:t}}if(e===1)return{layoutClass:e,kind:`contiguous`,address:n.address(),size:n.length()};{let t=n.u8(),r=n.address(),i=[];for(let e=0;e<t;e++)i.push(n.u32());return{layoutClass:e,kind:`chunked`,address:r,rank:t,chunkShape:i,elementSize:i.pop()}}}{let e=n.u8(),t=n.u8();n.skip(5);let r=t===0?null:n.address(),i=[];for(let t=0;t<e;t++)i.push(n.u32());if(t===2){let a=n.u32();return i.pop(),{layoutClass:t,kind:`chunked`,address:r,rank:e,chunkShape:i,elementSize:a}}if(t===0){let e=n.u32();return{layoutClass:t,kind:`compact`,address:n.offset,size:e}}return{layoutClass:t,kind:`contiguous`,address:r,size:0}}}function fn(e,t){let n=Y(e.view,t.offset,e.sizes),r=n.u8(),i=n.u8();r===1&&n.skip(6);let a=[];for(let t=0;t<i;t++){let t=n.u16(),i=r===1||t>=256?n.u16():0,o=n.u16(),s=n.u16(),c=i>0?Qt(e.buf,n.offset,i):``;n.skip(i);let l=[];for(let e=0;e<s;e++)l.push(n.u32());r===1&&s%2==1&&n.skip(4),a.push({id:t,name:c,flags:o,values:l})}return a}function pn(e,t){let n=Y(e.view,t.offset,e.sizes);n.u8();let r=n.u8(),i=r&8?n.u8():0;r&4&&n.skip(8),r&16&&n.skip(1);let a=n.variable(1<<(r&3)),o=Qt(e.buf,n.offset,a);return n.skip(a),i===0?{name:o,linkType:i,address:n.address()}:{name:o,linkType:i,address:null}}function mn(e,t){let n=Y(e.view,t.offset,e.sizes);return n.u8(),n.u8()&1&&n.skip(8),{heapAddress:n.address(),nameIndexAddress:n.address()}}function hn(e,t){let n=Y(e.view,t.offset,e.sizes);return{treeAddress:n.address(),heapAddress:n.address()}}function gn(e,t){let n=Y(e.view,t+8,e.sizes),r=n.length();return n.length(),{dataAddress:n.address(),dataSize:r}}function _n(e,t,n){return Zt(e.buf,t.dataAddress+n)}function vn(e,t,n,r){if(t===null||!$t(e.buf,t,`TREE`))return r;let i=Y(e.view,t+4,e.sizes);i.u8();let a=i.u8(),o=i.u16();i.address(),i.address();let s=[];for(let e=0;e<o;e++)i.length(),s.push(i.address());for(let t of s)a>0?vn(e,t,n,r):yn(e,t,n,r);return r}function yn(e,t,n,r){if(t===null||!$t(e.buf,t,`SNOD`))return;let i=Y(e.view,t+4,e.sizes);i.u8(),i.skip(1);let a=i.u16();for(let t=0;t<a;t++){let t=nn(i,e.sizes);r.push({name:_n(e,n,t.nameOffset),address:t.objectHeader})}}function bn(e){let t=!e.bigEndian;return e.typeClass===1?e.size===4?(e,n)=>e.getFloat32(n,t):(e,n)=>e.getFloat64(n,t):e.typeClass===0?e.size===1?e.signed?(e,t)=>e.getInt8(t):(e,t)=>e.getUint8(t):e.size===2?e.signed?(e,n)=>e.getInt16(n,t):(e,n)=>e.getUint16(n,t):e.size===4?e.signed?(e,n)=>e.getInt32(n,t):(e,n)=>e.getUint32(n,t):e.signed?(e,n)=>Number(e.getBigInt64(n,t)):(e,n)=>Number(e.getBigUint64(n,t)):null}function xn(e,t,n){let r=Y(e.view,t+8,e.sizes);for(r.length();r.offset<e.buf.length;){let t=r.u16();r.u16(),r.skip(4);let i=r.length();if(t===0)return null;if(t===n)return e.buf.subarray(r.offset,r.offset+i);r.skip(Math.ceil(i/8)*8)}return null}function Sn(e,t,n,r){let i=new DataView(t.buffer,t.byteOffset,t.byteLength),a=[];for(let t=0;t<r;t++){let r=Y(i,t*n.size,e.sizes);r.u32();let o=r.address(),s=r.u32(),c=o===null?null:xn(e,o,s);c===null?a.push(null):n.vlenKind===1?a.push(Qt(c,0,c.length)):a.push(Cn(c,n.base,Math.floor(c.length/n.base.size),e))}return a}function Cn(e,t,n,r){let i=[];if(t.typeClass===3)for(let r=0;r<n;r++)i.push(Qt(e,r*t.size,t.size));else if(t.typeClass===9&&r)return Sn(r,e,t,n);else{let r=bn(t),a=new DataView(e.buffer,e.byteOffset,e.byteLength);for(let e=0;e<n;e++)i.push(r?r(a,e*t.size):null)}return i}function wn(e){let t=1;for(let n of e)t*=n;return t}function X(e,t){return e.messages.find(e=>e.type===t)}function Tn(e,t){let n=X(t,17);if(n){let{treeAddress:t,heapAddress:r}=hn(e,n);return{links:vn(e,t,gn(e,r),[]),dense:!1}}{let n=t.messages.filter(e=>e.type===6).map(t=>pn(e,t)).filter(e=>e.address!==null),r=X(t,2),i=r?mn(e,r).heapAddress:null;return{links:n,dense:n.length===0&&i!==null}}}function En(e,t){let n=[];for(let r of t.messages)r.type===12&&n.push(Dn(e,r));return n}function Dn(e,t){let n=Y(e.view,t.offset,e.sizes),r=n.u8();n.u8();let i=n.u16(),a=n.u16(),o=n.u16();r===3&&n.u8();let s=r===1,c=new TextDecoder().decode(e.buf.subarray(n.offset,n.offset+i)).replace(/\0+$/,``);n.skip(s?Math.ceil(i/8)*8:i);let l=n.offset;n.skip(s?Math.ceil(a/8)*8:a);let u=n.offset;n.skip(s?Math.ceil(o/8)*8:o);let d=un(e,l),f=ln(e,{offset:u}),p=wn(f.shape),m=Cn(e.buf.subarray(n.offset,n.offset+p*d.size),d,p,e);return{name:c,type:d.label,shape:f.shape,values:m}}function On(e,t,n,r,i){let a=X(t,1),o=X(t,3),s=X(t,8),c=X(t,11),l=ln(e,a),u=un(e,o.offset),d=dn(e,s),f=c?fn(e,c):[];return{kind:`dataset`,name:r,path:n,address:i,shape:l.shape,rank:l.rank,type:u,typeLabel:u.label,layout:d,filters:f,filterLabel:f.map(e=>e.name||An(e.id)).join(` + `),numElements:wn(l.shape),attributes:En(e,t)}}const kn={1:`deflate`,2:`shuffle`,3:`fletcher32`,4:`szip`,5:`nbit`,6:`scaleoffset`},An=e=>kn[e]??`filter ${e}`;function jn(e,t,n,r,i,a){if(a.has(t)||i.length>4096)return null;a.add(t);let o=rn(e,t);if(X(o,1)&&X(o,8)){let a=On(e,o,n,r,t);return i.push(a),a}{let{links:s,dense:c}=Tn(e,o),l={kind:`group`,name:r,path:n,address:t,attributes:En(e,o),dense:c,children:[]};i.push(l);for(let t of s){let r=n===`/`?`/${t.name}`:`${n}/${t.name}`,o=jn(e,t.address,r,t.name,i,a);o&&l.children.push(o)}return l}}function Mn(e){let t=new Uint8Array(e),n=new DataView(e),r=tn(t,n),i={buf:t,view:n,sizes:r.sizes,superblock:r},a=[],o=jn(i,r.rootAddress,`/`,`/`,a,new Set);return{...i,root:o,nodes:a,datasets:a.filter(e=>e.kind===`dataset`),groups:a.filter(e=>e.kind===`group`),version:r.version,endOfFile:r.endOfFile,format:6}}const Nn={1:{name:`byte`,size:1,read:(e,t)=>e.getInt8(t)},2:{name:`char`,size:1,read:(e,t)=>e.getUint8(t)},3:{name:`short`,size:2,read:(e,t)=>e.getInt16(t)},4:{name:`int`,size:4,read:(e,t)=>e.getInt32(t)},5:{name:`float`,size:4,read:(e,t)=>e.getFloat32(t)},6:{name:`double`,size:8,read:(e,t)=>e.getFloat64(t)},7:{name:`ubyte`,size:1,read:(e,t)=>e.getUint8(t)},8:{name:`ushort`,size:2,read:(e,t)=>e.getUint16(t)},9:{name:`uint`,size:4,read:(e,t)=>e.getUint32(t)},10:{name:`int64`,size:8,read:(e,t)=>Number(e.getBigInt64(t))},11:{name:`uint64`,size:8,read:(e,t)=>Number(e.getBigUint64(t))}},Pn=new TextDecoder;function Fn(e){return{buf:e,view:new DataView(e.buffer,e.byteOffset,e.byteLength),offset:0,wide:!1}}function Z(e){let t=e.view.getInt32(e.offset);return e.offset+=4,t}function Q(e){if(e.wide){let t=Number(e.view.getBigInt64(e.offset));return e.offset+=8,t}return Z(e)}function In(e,t){if(t){let t=Number(e.view.getBigInt64(e.offset));return e.offset+=8,t}return Z(e)>>>0}function Ln(e){e.offset+=(4-e.offset%4)%4}function Rn(e){let t=Q(e),n=Pn.decode(e.buf.subarray(e.offset,e.offset+t));return e.offset+=t,Ln(e),n}function zn(e,t,n){let r=Nn[t],i=[];for(let t=0;t<n;t++)i.push(r.read(e.view,e.offset+t*r.size));return e.offset+=n*r.size,Ln(e),t===2?Pn.decode(Uint8Array.from(i)).replace(/\0+$/,``):i}function Bn(e){let t=Z(e),n=Q(e),r={};if(t===12)for(let t=0;t<n;t++){let t=Rn(e);r[t]=zn(e,Z(e),Q(e))}return r}function Vn(e){let t=Z(e),n=Q(e),r=[];if(t===10)for(let t=0;t<n;t++)r.push({name:Rn(e),length:Q(e)});return r}function Hn(e,t,n){let r=Z(e),i=Q(e),a=[];if(r===11)for(let r=0;r<i;r++){let r=Rn(e),i=Q(e),o=[];for(let t=0;t<i;t++)o.push(Z(e));let s=Bn(e),c=Z(e),l=Q(e),u=In(e,n),d=o.map(e=>t[e].length);a.push({name:r,path:`/${r}`,type:c,typeName:Nn[c].name,shape:d,dimensions:o.map(e=>t[e].name),isRecord:o.length>0&&t[o[0]].length===0,attributes:s,byteSize:l,offset:u})}return a}function Un(e){let t=new Uint8Array(e);if(t.byteLength<8)throw Error(`file too small`);if(t[0]!==67||t[1]!==68||t[2]!==70)throw Error(`not a netcdf file`);let n=t[3],r=Fn(t);r.wide=n===5,r.offset=4;let i=Z(r)>>>0,a=Vn(r),o=Bn(r),s=Hn(r,a,n!==1);return{buf:t,view:r.view,version:n,versionLabel:n===1?`classic`:n===2?`64-bit offset`:`CDF-5`,headerSize:r.offset,numRecords:i,dimensions:a,attributes:o,variables:s,format:7}}const Wn=Zn(se),Gn=Zn(he);async function Kn(e){let{schema:t,rowGroups:n}=tt(await A(e));return JSON.stringify({schema:t,rowGroups:n})}async function qn(e){let{columns:t,codec:n,numRows:r,blocks:i}=ft(await A(e));return JSON.stringify({columns:t,codec:n,numRows:r,blocks:i})}async function Jn(e){let{columns:t,compression:n,numRows:r,stripes:i}=await kt(await A(e));return JSON.stringify({columns:t,compression:n,numRows:r,stripes:i})}async function Yn(e){let{columns:t,numRows:n,batches:r}=Yt(await A(e));return JSON.stringify({columns:t,numRows:n,batches:r})}async function $(e){let t=await A(e),n=new Uint8Array(t);if(n[0]===137&&n[1]===72&&n[2]===68&&n[3]===70){let{version:e,groups:n,datasets:r}=Mn(t);return JSON.stringify({version:e,groups:n.map(e=>e.path),datasets:r.map(e=>({path:e.path,type:e.typeLabel,shape:e.shape}))})}{let{versionLabel:e,dimensions:n,attributes:r,variables:i}=Un(t);return JSON.stringify({version:e,dimensions:n,attributes:r,variables:i.map(e=>({path:e.path,type:e.typeName,shape:e.shape}))})}}const Xn={png:Wn,jpg:Gn,jpeg:Gn,parquet:Kn,avro:qn,orc:Jn,arrow:Yn,feather:Yn,ipc:Yn,h5:$,hdf5:$,he5:$,nc:$,nc4:$,cdf:$};function Zn(e){return async function(t){let n=e(await A(t));return n&&JSON.stringify(n)}}async function*Qn(e,t){let n=(await e(t)).split(`
|
|
3
|
+
`);for(let e of n)yield e}async function $n(e){let{containerHandle:t,pattern:n,flags:r=`ig`,index:i,mtimeMap:s,indexOnly:c,nameOnly:l,indexSearchOnly:u,on:d=function(){}}=e,f=e.perFileLimit||3,p=e.maxFiles||1e3,m=e.startAfterPath||``,h=e.onlyPath||``,g=e.skipMatches||0,_=n?new RegExp(n,r):null,v=await ae(),y=await k(te,ne),x=0,S=0,C=0,w=``,T=!1,E=[a()],O=!1,re=!!m;if(i&&!c&&!h&&!m){let e=b({index:i,query:n,maxResults:50});for(let t of e)d(`indexMatch`,t)}if(u)return{containerHandle:t,filesSearched:0,totalMatchFiles:0,totalMatchContent:0,lastPath:``,truncatedFiles:!1,updatedLogBytes:null};let A=y([``,t]);for await(let[e,t]of A){let n=e.slice(1);if(re)n===m&&(re=!1);else if(!(h&&n!==h))try{let{mtime:r}=await v(t),i=s?s.get(n):void 0,a=c||l||i===void 0||Math.floor(i/1e3)!==Math.floor(r/1e3),u=await se({child:t,childPath:e,cleanPath:n,regex:_,extractKw:a,nameOnly:l});if(C++,a&&u&&(O=!0,E.push(o({path:n,mtime:r,keywords:u.keywords}))),u&&u.hasMore&&d(`fileMore`,{path:e}),S>=p){T=!0;break}if(h)break}catch(n){console.log({childPath:e,child:t,error:n})}}return{containerHandle:t,filesSearched:C,totalMatchFiles:S,totalMatchContent:x,lastPath:w,truncatedFiles:T,updatedLogBytes:O?E:null};function oe(e){let t=Math.min(e.length,8192);for(let n=0;n<t;n++)if(e[n]===0)return!0;return!1}async function se(e){let{child:t,childPath:n,cleanPath:r,regex:i,extractKw:a=!0,nameOnly:o}=e,s=ee(r),c=r.split(`/`).pop().replace(/\.[^.]+$/,``),l=new Map,u=0,p=0,m=0,h=!1;if(o)return D({title:c,body:``,ext:s},l),{keywords:Array.from(l.entries()).map(([e,t])=>({keyword:e,score:t})),hasMore:!1};try{let e=Xn[s],n=e?Qn(e,t):ie(t,oe);for await(let e of n){let n=!1;try{n=_(e)}catch{console.log(e,t)}if(n)break}return{keywords:Array.from(l.entries()).map(([e,t])=>({keyword:e,score:t})),hasMore:h}}catch(t){return console.error({...e,...t}),null}function _(e){if(u+=1,a&&D({title:c,body:e,ext:s},l),i){i.lastIndex=0;let t=i.exec(e);if(t&&(p+=1,p>g)){if(m<f){x++;let i={path:n,line:e,lineNumber:u,match:t[0]};m===0&&g===0?(d(`contentFirstMatch`,i),S++,w=r):d(`contentMatch`,i),m++}else if(h=!0,a===!1)return!0}}return!1}}}console.log({type:`tracer`}),w&&(self.addEventListener(`unhandledrejection`,e=>{self.postMessage({type:`error`,message:e.reason?.message,stack:e.reason?.stack})},{once:!0}),self.onmessage=async function(e){console.log(e);let{containerHandle:t,pattern:n,flags:r,indexOnly:i,nameOnly:a,indexSearchOnly:o,perFileLimit:s,maxFiles:c,startAfterPath:l,onlyPath:u,skipMatches:d}=e.data;if(t){if(a){let e=await $n({containerHandle:t,nameOnly:!0,on:tr});self.postMessage({type:`finished`,result:e})}else if(i){let e=await $n({containerHandle:t,flags:r,indexOnly:!0,on:tr});self.postMessage({type:`finished`,result:e})}else{let{index:e,mtimeMap:i}=await er(t,o?`.name.bin`:`.index.bin`),a=await $n({containerHandle:t,pattern:n,flags:r,index:e,mtimeMap:i,indexSearchOnly:o,on:tr,perFileLimit:s,maxFiles:c,startAfterPath:l,onlyPath:u,skipMatches:d});self.postMessage({type:`finished`,result:a})}}});async function er(e,t){try{let n=await(await(await e.getFileHandle(t)).getFile()).arrayBuffer(),r=y(s(new Uint8Array(n)).entries);return{index:r,mtimeMap:r.pathToMtime}}catch(e){return console.log(`no index or version mismatch, searching all files:`,e.message),{index:null,mtimeMap:null}}}function tr(e,t){self.postMessage({type:e,result:t})}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
async function e(e={}){var t=e,n=!!globalThis.window,r=!!globalThis.WorkerGlobalScope,i=globalThis.process?.versions?.node&&globalThis.process?.type!=`renderer`;if(i){let{createRequire:e}=await import(`node:module`);var a=e(import.meta.url)}var o=`./this.program`,s=import.meta.url,c=``;function l(e){return t.locateFile?t.locateFile(e,c):c+e}var u,d;if(i){var f=a("node:fs");s.startsWith(`file:`)&&(c=a("node:path").dirname(a("node:url").fileURLToPath(s))+`/`),d=e=>(e=_(e)?new URL(e):e,f.readFileSync(e)),u=async(e,t=!0)=>(e=_(e)?new URL(e):e,f.readFileSync(e,t?void 0:`utf8`)),process.argv.length>1&&(o=process.argv[1].replace(/\\/g,`/`)),process.argv.slice(2)}else if(n||r){try{c=new URL(`.`,s).href}catch{}r&&(d=e=>{var t=new XMLHttpRequest;return t.open(`GET`,e,!1),t.responseType=`arraybuffer`,t.send(null),new Uint8Array(t.response)}),u=async e=>{var t=await fetch(e,{credentials:`same-origin`});if(t.ok)return t.arrayBuffer();throw Error(t.status+` : `+t.url)}}var p=console.log.bind(console),m=console.error.bind(console),h,g=!1,_=e=>e.startsWith(`file://`);function v(){return Z.buffer}function y(){if(!C?.buffer?.resizable){var e=v();C=new Int8Array(e),H=new Int16Array(e),t.HEAPU8=M=new Uint8Array(e),t.HEAP32=L=new Int32Array(e),R=new Uint32Array(e),z=new BigInt64Array(e)}}function b(){var e=t.preRun;e&&(typeof e==`function`&&(e=[e]),w.push(...e)),le(w)}function ee(){!t.noFSInit&&!I.initialized&&I.init(),j.init(),$.__wasm_call_ctors(),I.ignorePermissions=!1}function te(){var e=t.postRun;e&&(typeof e==`function`&&(e=[e]),ue.push(...e)),le(ue)}function x(e){throw t.onAbort?.(e),e=`Aborted(${e})`,m(e),g=!0,e+=`. Build with -sASSERTIONS for more info.`,new WebAssembly.RuntimeError(e)}var S;function ne(){return t.locateFile?l(`sqlite.wasm`):`sqlite.wasm`}function re(e){if(d)return d(e);throw`both async and sync fetching of the wasm failed`}async function ie(e){if(!h)try{var t=await u(e);return new Uint8Array(t)}catch{}return re(e)}async function ae(e,t){try{var n=await ie(e);return await WebAssembly.instantiate(n,t)}catch(e){m(`failed to asynchronously prepare wasm: ${e}`),x(e)}}async function oe(e,t,n){if(!e&&!i)try{var r=fetch(t,{credentials:`same-origin`});return await WebAssembly.instantiateStreaming(r,n)}catch(e){m(`wasm streaming compile failed: ${e}`),m(`falling back to ArrayBuffer instantiation`)}return ae(t,n)}function se(){return{env:Ut,wasi_snapshot_preview1:Ut}}async function ce(){function e(e){return $=e.exports,Ht($),y(),$}function n(t){return e(t.instance)}var r=se(),i=t.instantiateWasm;return i?new Promise(t=>{i(r,n=>t(e(n)))}):(S??=ne(),n(await oe(h,S,r)))}var C,le=e=>{for(;e.length>0;)e.shift()(t)},ue=[],w=[],T={isAbs:e=>e.charAt(0)===`/`,splitPath:e=>/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/.exec(e).slice(1),normalizeArray:(e,t)=>{for(var n=0,r=e.length-1;r>=0;r--){var i=e[r];i===`.`?e.splice(r,1):i===`..`?(e.splice(r,1),n++):n&&(e.splice(r,1),n--)}if(t)for(;n;n--)e.unshift(`..`);return e},normalize:e=>{var t=T.isAbs(e),n=e.slice(-1)===`/`;return e=T.normalizeArray(e.split(`/`).filter(e=>!!e),!t).join(`/`),!e&&!t&&(e=`.`),e&&n&&(e+=`/`),(t?`/`:``)+e},dirname:e=>{var t=T.splitPath(e),n=t[0],r=t[1];return!n&&!r?`.`:(r&&=r.slice(0,-1),n+r)},basename:e=>e&&e.match(/([^\/]+|\/)\/*$/)[1],join:(...e)=>T.normalize(e.join(`/`)),join2:(e,t)=>T.normalize(e+`/`+t)},de=()=>{if(i){var e=a("node:crypto");return t=>(e.randomFillSync(t),0)}return e=>(crypto.getRandomValues(e),0)},fe=e=>(fe=de())(e),E={resolve:(...e)=>{for(var t=``,n=!1,r=e.length-1;r>=-1&&!n;r--){var i=r>=0?e[r]:I.cwd();if(typeof i!=`string`)throw TypeError(`Arguments to path.resolve must be strings`);if(!i)return``;t=i+`/`+t,n=T.isAbs(i)}return t=T.normalizeArray(t.split(`/`).filter(e=>!!e),!n).join(`/`),(n?`/`:``)+t||`.`},relative:(e,t)=>{e=E.resolve(e).slice(1),t=E.resolve(t).slice(1);function n(e){for(var t=0;t<e.length&&e[t]===``;t++);for(var n=e.length-1;n>=0&&e[n]===``;n--);return t>n?[]:e.slice(t,n-t+1)}for(var r=n(e.split(`/`)),i=n(t.split(`/`)),a=Math.min(r.length,i.length),o=a,s=0;s<a;s++)if(r[s]!==i[s]){o=s;break}for(var c=[],s=o;s<r.length;s++)c.push(`..`);return c=c.concat(i.slice(o)),c.join(`/`)}},pe=globalThis.TextDecoder&&new TextDecoder,me=(e,t,n,r)=>{var i=t+n;if(r)return i;for(;e[t]&&!(t>=i);)++t;return t},D=(e,t=0,n,r)=>{var i=me(e,t,n,r);if(i-t>16&&e.buffer&&pe)return pe.decode(e.subarray(t,i));for(var a=``;t<i;){var o=e[t++];if(!(o&128)){a+=String.fromCharCode(o);continue}var s=e[t++]&63;if((o&224)==192){a+=String.fromCharCode((o&31)<<6|s);continue}var c=e[t++]&63;if(o=(o&240)==224?(o&15)<<12|s<<6|c:(o&7)<<18|s<<12|c<<6|e[t++]&63,o<65536)a+=String.fromCharCode(o);else{var l=o-65536;a+=String.fromCharCode(55296|l>>10,56320|l&1023)}}return a},O=[],k=e=>{for(var t=0,n=0;n<e.length;++n){var r=e.charCodeAt(n);r<=127?t++:r<=2047?t+=2:r>=55296&&r<=57343?(t+=4,++n):t+=3}return t},he=(e,t,n,r)=>{if(!(r>0))return 0;for(var i=n,a=n+r-1,o=0;o<e.length;++o){var s=e.codePointAt(o);if(s<=127){if(n>=a)break;t[n++]=s}else if(s<=2047){if(n+1>=a)break;t[n++]=192|s>>6,t[n++]=128|s&63}else if(s<=65535){if(n+2>=a)break;t[n++]=224|s>>12,t[n++]=128|s>>6&63,t[n++]=128|s&63}else{if(n+3>=a)break;t[n++]=240|s>>18,t[n++]=128|s>>12&63,t[n++]=128|s>>6&63,t[n++]=128|s&63,o++}}return t[n]=0,n-i},A=(e,t,n)=>{var r=n>0?n:k(e)+1,i=Array(r),a=he(e,i,0,i.length);return t&&(i.length=a),i},ge=()=>{if(!O.length){var e=null;if(i){var t=256,n=Buffer.alloc(t),r=0,a=process.stdin.fd;try{r=f.readSync(a,n,0,t)}catch(e){if(e.toString().includes(`EOF`))r=0;else throw e}r>0&&(e=n.slice(0,r).toString(`utf-8`))}else globalThis.window?.prompt&&(e=window.prompt(`Input: `),e!==null&&(e+=`
|
|
2
|
-
`));if(!e)return null;O=A(e,!0)}return O.shift()},j={ttys:[],init(){},shutdown(){},register(e,t){j.ttys[e]={input:[],output:[],ops:t},I.registerDevice(e,j.stream_ops)},stream_ops:{open(e){var t=j.ttys[e.node.rdev];if(!t)throw new I.ErrnoError(43);e.tty=t,e.seekable=!1},close(e){e.tty.ops.fsync(e.tty)},fsync(e){e.tty.ops.fsync(e.tty)},read(e,t,n,r,i){if(!e.tty||!e.tty.ops.get_char)throw new I.ErrnoError(60);for(var a=0,o=0;o<r;o++){var s;try{s=e.tty.ops.get_char(e.tty)}catch{throw new I.ErrnoError(29)}if(s===void 0&&a===0)throw new I.ErrnoError(6);if(s==null)break;a++,t[n+o]=s}return a&&(e.node.atime=Date.now()),a},write(e,t,n,r,i){if(!e.tty||!e.tty.ops.put_char)throw new I.ErrnoError(60);try{for(var a=0;a<r;a++)e.tty.ops.put_char(e.tty,t[n+a])}catch{throw new I.ErrnoError(29)}return r&&(e.node.mtime=e.node.ctime=Date.now()),a}},default_tty_ops:{get_char(e){return ge()},put_char(e,t){t===null||t===10?(p(D(e.output)),e.output=[]):t!=0&&e.output.push(t)},fsync(e){e.output?.length>0&&(p(D(e.output)),e.output=[])},ioctl_tcgets(e){return{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,t,n){return 0},ioctl_tiocgwinsz(e){return[24,80]}},default_tty1_ops:{put_char(e,t){t===null||t===10?(m(D(e.output)),e.output=[]):t!=0&&e.output.push(t)},fsync(e){e.output?.length>0&&(m(D(e.output)),e.output=[])}}},M,_e=(e,t)=>M.fill(0,e,e+t),ve=(e,t)=>Math.ceil(e/t)*t,ye=e=>{e=ve(e,65536);var t=Vt(65536,e);return t&&_e(t,e),t},N={ops_table:null,mount(e){return N.createNode(null,`/`,16895,0)},createNode(e,t,n,r){if(I.isBlkdev(n)||I.isFIFO(n))throw new I.ErrnoError(63);N.ops_table||={dir:{node:{getattr:N.node_ops.getattr,setattr:N.node_ops.setattr,lookup:N.node_ops.lookup,mknod:N.node_ops.mknod,rename:N.node_ops.rename,unlink:N.node_ops.unlink,rmdir:N.node_ops.rmdir,readdir:N.node_ops.readdir,symlink:N.node_ops.symlink},stream:{llseek:N.stream_ops.llseek}},file:{node:{getattr:N.node_ops.getattr,setattr:N.node_ops.setattr},stream:{llseek:N.stream_ops.llseek,read:N.stream_ops.read,write:N.stream_ops.write,mmap:N.stream_ops.mmap,msync:N.stream_ops.msync}},link:{node:{getattr:N.node_ops.getattr,setattr:N.node_ops.setattr,readlink:N.node_ops.readlink},stream:{}},chrdev:{node:{getattr:N.node_ops.getattr,setattr:N.node_ops.setattr},stream:I.chrdev_stream_ops}};var i=I.createNode(e,t,n,r);return I.isDir(i.mode)?(i.node_ops=N.ops_table.dir.node,i.stream_ops=N.ops_table.dir.stream,i.contents={}):I.isFile(i.mode)?(i.node_ops=N.ops_table.file.node,i.stream_ops=N.ops_table.file.stream,i.usedBytes=0,i.contents=N.emptyFileContents??=new Uint8Array):I.isLink(i.mode)?(i.node_ops=N.ops_table.link.node,i.stream_ops=N.ops_table.link.stream):I.isChrdev(i.mode)&&(i.node_ops=N.ops_table.chrdev.node,i.stream_ops=N.ops_table.chrdev.stream),i.atime=i.mtime=i.ctime=Date.now(),e&&(e.contents[t]=i,e.atime=e.mtime=e.ctime=i.atime),i},getFileDataAsTypedArray(e){return e.contents.subarray(0,e.usedBytes)},expandFileStorage(e,t){var n=e.contents.length;if(!(n>=t)){t=Math.max(t,n*(n<1048576?2:1.125)>>>0),n&&(t=Math.max(t,256));var r=N.getFileDataAsTypedArray(e);e.contents=new Uint8Array(t),e.contents.set(r)}},resizeFileStorage(e,t){if(e.usedBytes!=t){var n=e.contents;e.contents=new Uint8Array(t),e.contents.set(n.subarray(0,Math.min(t,e.usedBytes))),e.usedBytes=t}},node_ops:{getattr(e){var t={};return t.dev=I.isChrdev(e.mode)?e.id:1,t.ino=e.id,t.mode=e.mode,t.nlink=1,t.uid=0,t.gid=0,t.rdev=e.rdev,t.size=I.isDir(e.mode)?4096:I.isFile(e.mode)?e.usedBytes:I.isLink(e.mode)?e.link.length:0,t.atime=new Date(e.atime),t.mtime=new Date(e.mtime),t.ctime=new Date(e.ctime),t.blksize=4096,t.blocks=Math.ceil(t.size/t.blksize),t},setattr(e,t){for(let n of[`mode`,`atime`,`mtime`,`ctime`])t[n]!=null&&(e[n]=t[n]);t.size!==void 0&&N.resizeFileStorage(e,t.size)},lookup(e,t){throw N.doesNotExistError||(N.doesNotExistError=new I.ErrnoError(44),N.doesNotExistError.stack=`<generic error, no stack>`),N.doesNotExistError},mknod(e,t,n,r){return N.createNode(e,t,n,r)},rename(e,t,n){var r;try{r=I.lookupNode(t,n)}catch{}if(r){if(I.isDir(e.mode))for(var i in r.contents)throw new I.ErrnoError(55);I.hashRemoveNode(r)}delete e.parent.contents[e.name],t.contents[n]=e,e.name=n,t.ctime=t.mtime=e.parent.ctime=e.parent.mtime=Date.now()},unlink(e,t){delete e.contents[t],e.ctime=e.mtime=Date.now()},rmdir(e,t){for(var n in I.lookupNode(e,t).contents)throw new I.ErrnoError(55);delete e.contents[t],e.ctime=e.mtime=Date.now()},readdir(e){return[`.`,`..`,...Object.keys(e.contents)]},symlink(e,t,n){var r=N.createNode(e,t,41471,0);return r.link=n,r},readlink(e){if(!I.isLink(e.mode))throw new I.ErrnoError(28);return e.link}},stream_ops:{read(e,t,n,r,i){var a=e.node.contents;if(i>=e.node.usedBytes)return 0;var o=Math.min(e.node.usedBytes-i,r);return t.set(a.subarray(i,i+o),n),o},write(e,t,n,r,i,a){if(t.buffer===C.buffer&&(a=!1),!r)return 0;var o=e.node;return o.mtime=o.ctime=Date.now(),a?(o.contents=t.subarray(n,n+r),o.usedBytes=r):o.usedBytes===0&&i===0?(o.contents=t.slice(n,n+r),o.usedBytes=r):(N.expandFileStorage(o,i+r),o.contents.set(t.subarray(n,n+r),i),o.usedBytes=Math.max(o.usedBytes,i+r)),r},llseek(e,t,n){var r=t;if(n===1?r+=e.position:n===2&&I.isFile(e.node.mode)&&(r+=e.node.usedBytes),r<0)throw new I.ErrnoError(28);return r},mmap(e,t,n,r,i){if(!I.isFile(e.node.mode))throw new I.ErrnoError(43);var a,o,s=e.node.contents;if(!(i&2)&&s.buffer===C.buffer)o=!1,a=s.byteOffset;else{if(o=!0,a=ye(t),!a)throw new I.ErrnoError(48);s&&((n>0||n+t<s.length)&&(s=s.subarray?s.subarray(n,n+t):Array.prototype.slice.call(s,n,n+t)),C.set(s,a))}return{ptr:a,allocated:o}},msync(e,t,n,r,i){return N.stream_ops.write(e,t,0,r,n,!1),0}}},be=e=>{if(typeof e!=`string`)return e;var t={r:0,"r+":2,w:577,"w+":578,a:1089,"a+":1090}[e];if(t===void 0)throw Error(`Unknown file open mode: ${e}`);return t},xe=e=>(typeof e==`string`&&(e=A(e,!0)),e.subarray||(e=new Uint8Array(e)),e),P=(e,t)=>{var n=0;return e&&(n|=365),t&&(n|=146),n},Se=async e=>{var t=await u(e);return new Uint8Array(t)},Ce=(...e)=>I.createDataFile(...e),we=e=>e,Te=null,Ee=async()=>Te,F=0,De=null,Oe=e=>{F--,t.monitorRunDependencies?.(F),F||De()},ke=e=>{F||(Te=new Promise(e=>De=e)),F++,t.monitorRunDependencies?.(F)},Ae=[],je=async(e,t)=>{typeof Browser<`u`&&Browser.init();for(var n of Ae)if(n.canHandle(t))return n.handle(e,t);return e},Me=async(e,t,n,r,i,a,o,s)=>{var c=t?E.resolve(T.join2(e,t)):e,l=we(`cp ${c}`);ke(l);try{var u=n;typeof n==`string`&&(u=await Se(n)),u=await je(u,c),s?.(),a||Ce(e,t,u,r,i,o)}finally{Oe(l)}},Ne=(e,t,n,r,i,a,o,s,c,l)=>{Me(e,t,n,r,i,s,c,l).then(a).catch(o)},I={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:`/`,initialized:!1,ignorePermissions:!0,filesystems:null,syncFSRequests:0,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(this.flags&2097155)!=1}get isWrite(){return!!(this.flags&2097155)}get isAppend(){return this.flags&1024}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,t,n,r){e||=this,this.parent=e,this.mount=e.mount,this.id=I.nextInode++,this.name=t,this.mode=n,this.rdev=r,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 I.isDir(this.mode)}get isDevice(){return I.isChrdev(this.mode)}addListener(e,t=!1){var n={cb:e,exclusive:t},r=this.listeners??=new Set;return r.add(n),{listeners:r,entry:n}}notifyListeners(e){if(this.listeners){var t;for(var n of this.listeners)n.exclusive?(t||=[]).push(n):n.cb(e);if(t){var r=(this.exclTurn||0)%t.length;this.exclTurn=r+1,t[r].cb(e)}}}},lookupPath(e,t={}){if(!e)throw new I.ErrnoError(44);t.follow_mount??=!0,T.isAbs(e)||(e=I.cwd()+`/`+e);linkloop:for(var n=0;n<40;n++){for(var r=e.split(`/`).filter(e=>!!e),i=I.root,a=`/`,o=0;o<r.length;o++){var s=o===r.length-1;if(s&&t.parent)break;if(r[o]!==`.`){if(r[o]===`..`){if(a=T.dirname(a),I.isRoot(i)){e=a+`/`+r.slice(o+1).join(`/`),n--;continue linkloop}i=i.parent;continue}a=T.join2(a,r[o]);try{i=I.lookupNode(i,r[o])}catch(e){if(e?.errno===44&&s&&t.noent_okay)return{path:a};throw e}if(I.isMountpoint(i)&&(!s||t.follow_mount)&&(i=i.mounted.root),I.isLink(i.mode)&&(!s||t.follow)){if(!i.node_ops.readlink)throw new I.ErrnoError(52);var c=i.node_ops.readlink(i);T.isAbs(c)||(c=T.dirname(a)+`/`+c),e=c+`/`+r.slice(o+1).join(`/`);continue linkloop}}}return{path:a,node:i}}throw new I.ErrnoError(32)},getPath(e){for(var t;;){if(I.isRoot(e)){var n=e.mount.mountpoint;return t?n[n.length-1]===`/`?n+t:`${n}/${t}`:n}t=t?`${e.name}/${t}`:e.name,e=e.parent}},hashName(e,t){for(var n=0,r=0;r<t.length;r++)n=(n<<5)-n+t.charCodeAt(r)|0;return(e+n>>>0)%I.nameTable.length},hashAddNode(e){var t=I.hashName(e.parent.id,e.name);e.name_next=I.nameTable[t],I.nameTable[t]=e},hashRemoveNode(e){var t=I.hashName(e.parent.id,e.name);if(I.nameTable[t]===e)I.nameTable[t]=e.name_next;else for(var n=I.nameTable[t];n;){if(n.name_next===e){n.name_next=e.name_next;break}n=n.name_next}},lookupNode(e,t){var n=I.mayLookup(e);if(n)throw new I.ErrnoError(n);for(var r=I.hashName(e.id,t),i=I.nameTable[r];i;i=i.name_next){var a=i.name;if(i.parent.id===e.id&&a===t)return i}return I.lookup(e,t)},createNode(e,t,n,r){var i=new I.FSNode(e,t,n,r);return I.hashAddNode(i),i},destroyNode(e){I.hashRemoveNode(e)},isRoot(e){return e===e.parent},isMountpoint(e){return!!e.mounted},isFile(e){return(e&61440)==32768},isDir(e){return(e&61440)==16384},isLink(e){return(e&61440)==40960},isChrdev(e){return(e&61440)==8192},isBlkdev(e){return(e&61440)==24576},isFIFO(e){return(e&61440)==4096},isSocket(e){return(e&49152)==49152},flagsToPermissionString(e){var t=[`r`,`w`,`rw`][e&3];return e&512&&(t+=`w`),t},nodePermissions(e,t){return I.ignorePermissions?0:t.includes(`r`)&&!(e.mode&292)||t.includes(`w`)&&!(e.mode&146)||t.includes(`x`)&&!(e.mode&73)?2:0},mayLookup(e){return I.isDir(e.mode)?I.nodePermissions(e,`x`)||(e.node_ops.lookup?0:2):54},mayCreate(e,t){if(!I.isDir(e.mode))return 54;try{return I.lookupNode(e,t),20}catch{}return I.nodePermissions(e,`wx`)},mayDelete(e,t,n){var r;try{r=I.lookupNode(e,t)}catch(e){return e.errno}var i=I.nodePermissions(e,`wx`);if(i)return i;if(n){if(!I.isDir(r.mode))return 54;if(I.isRoot(r)||I.getPath(r)===I.cwd())return 10}else if(I.isDir(r.mode))return 31;return 0},mayOpen(e,t){if(!e)return 44;if(I.isLink(e.mode))return 32;var n=I.flagsToPermissionString(t);return I.isDir(e.mode)&&(n!==`r`||t&576)?31:I.nodePermissions(e,n)},checkOpExists(e,t){if(!e)throw new I.ErrnoError(t);return e},MAX_OPEN_FDS:4096,nextfd(){for(var e=0;e<=I.MAX_OPEN_FDS;e++)if(!I.streams[e])return e;throw new I.ErrnoError(33)},getStreamChecked(e){var t=I.getStream(e);if(!t)throw new I.ErrnoError(8);return t},getStream:e=>I.streams[e],createStream(e,t=-1){return e=Object.assign(new I.FSStream,e),t==-1&&(t=I.nextfd()),e.fd=t,I.streams[t]=e,e},closeStream(e){I.streams[e]=null},dupStream(e,t=-1){var n=I.createStream(e,t);return n.stream_ops?.dup?.(n),n},doSetAttr(e,t,n){var r=e?.stream_ops.setattr,i=r?e:t;r??=t.node_ops.setattr,I.checkOpExists(r,63);try{r(i,n)}catch(e){throw e instanceof RangeError?new I.ErrnoError(22):e}},chrdev_stream_ops:{open(e){e.stream_ops=I.getDevice(e.node.rdev).stream_ops,e.stream_ops.open?.(e)},llseek(){throw new I.ErrnoError(70)}},major:e=>e>>8,minor:e=>e&255,makedev:(e,t)=>e<<8|t,registerDevice(e,t){I.devices[e]={stream_ops:t}},getDevice:e=>I.devices[e],getMounts(e){for(var t=[],n=[e];n.length;){var r=n.pop();t.push(r),n.push(...r.mounts)}return t},syncfs(e,t){typeof e==`function`&&(t=e,e=!1),I.syncFSRequests++,I.syncFSRequests>1&&m(`warning: ${I.syncFSRequests} FS.syncfs operations in flight at once, probably just doing extra work`);var n=I.getMounts(I.root.mount),r=0;function i(e){return I.syncFSRequests--,t(e)}function a(e){if(e)return a.errored?void 0:(a.errored=!0,i(e));++r>=n.length&&i(null)}for(var o of n)o.type.syncfs?o.type.syncfs(o,e,a):a(null)},mount(e,t,n){var r=n===`/`,i=!n,a;if(r&&I.root)throw new I.ErrnoError(10);if(!r&&!i){var o=I.lookupPath(n,{follow_mount:!1});if(n=o.path,a=o.node,I.isMountpoint(a))throw new I.ErrnoError(10);if(!I.isDir(a.mode))throw new I.ErrnoError(54)}var s={type:e,opts:t,mountpoint:n,mounts:[]},c=e.mount(s);return c.mount=s,s.root=c,r?I.root=c:a&&(a.mounted=s,a.mount&&a.mount.mounts.push(s)),c},unmount(e){var t=I.lookupPath(e,{follow_mount:!1});if(!I.isMountpoint(t.node))throw new I.ErrnoError(28);var n=t.node,r=n.mounted,i=I.getMounts(r);for(var[a,o]of Object.entries(I.nameTable))for(;o;){var s=o.name_next;i.includes(o.mount)&&I.destroyNode(o),o=s}n.mounted=null;var c=n.mount.mounts.indexOf(r);n.mount.mounts.splice(c,1)},lookup(e,t){return e.node_ops.lookup(e,t)},mknod(e,t,n){var r=I.lookupPath(e,{parent:!0}).node,i=T.basename(e);if(!i)throw new I.ErrnoError(28);if(i===`.`||i===`..`)throw new I.ErrnoError(20);var a=I.mayCreate(r,i);if(a)throw new I.ErrnoError(a);if(!r.node_ops.mknod)throw new I.ErrnoError(63);return r.node_ops.mknod(r,i,t,n)},statfs(e){return I.statfsNode(I.lookupPath(e,{follow:!0}).node)},statfsStream(e){return I.statfsNode(e.node)},statfsNode(e){var t={bsize:4096,frsize:4096,blocks:1e6,bfree:5e5,bavail:5e5,files:I.nextInode,ffree:I.nextInode-1,fsid:42,flags:2,namelen:255};return e.node_ops.statfs&&Object.assign(t,e.node_ops.statfs(e.mount.opts.root)),t},create(e,t=438){return t&=4095,t|=32768,I.mknod(e,t,0)},mkdir(e,t=511){return t&=1023,t|=16384,I.mknod(e,t,0)},mkdirTree(e,t){var n=e.split(`/`),r=``;for(var i of n)if(i){(r||T.isAbs(e))&&(r+=`/`),r+=i;try{I.mkdir(r,t)}catch(e){if(e.errno!=20)throw e}}},mkdev(e,t,n){return n===void 0&&(n=t,t=438),t|=8192,I.mknod(e,t,n)},symlink(e,t){if(!E.resolve(e))throw new I.ErrnoError(44);var n=I.lookupPath(t,{parent:!0}).node;if(!n)throw new I.ErrnoError(44);var r=T.basename(t),i=I.mayCreate(n,r);if(i)throw new I.ErrnoError(i);if(!n.node_ops.symlink)throw new I.ErrnoError(63);return n.node_ops.symlink(n,r,e)},link(e,t,n){var r=I.lookupPath(t,{parent:!0}).node;if(!r)throw new I.ErrnoError(44);var i=T.basename(t),a=I.mayCreate(r,i);if(a)throw new I.ErrnoError(a);if(!r.node_ops.link)throw new I.ErrnoError(34);return r.node_ops.link(r,i,e,n)},rename(e,t){var n=T.dirname(e),r=T.dirname(t),i=T.basename(e),a=T.basename(t),o=I.lookupPath(e,{parent:!0}),s=o.node,c;if(o=I.lookupPath(t,{parent:!0}),c=o.node,!s||!c)throw new I.ErrnoError(44);if(s.mount!==c.mount)throw new I.ErrnoError(75);var l=I.lookupNode(s,i),u=E.relative(e,r);if(u.charAt(0)!==`.`)throw new I.ErrnoError(28);if(u=E.relative(t,n),u.charAt(0)!==`.`)throw new I.ErrnoError(55);var d;try{d=I.lookupNode(c,a)}catch{}if(l!==d){var f=I.isDir(l.mode),p=I.mayDelete(s,i,f);if(p||(p=d?I.mayDelete(c,a,f):I.mayCreate(c,a),p))throw new I.ErrnoError(p);if(!s.node_ops.rename)throw new I.ErrnoError(63);if(I.isMountpoint(l)||d&&I.isMountpoint(d))throw new I.ErrnoError(10);if(c!==s&&(p=I.nodePermissions(s,`w`),p))throw new I.ErrnoError(p);I.hashRemoveNode(l);try{s.node_ops.rename(l,c,a),l.parent=c}catch(e){throw e}finally{I.hashAddNode(l)}}},rmdir(e){var t=I.lookupPath(e,{parent:!0}).node,n=T.basename(e),r=I.lookupNode(t,n),i=I.mayDelete(t,n,!0);if(i)throw new I.ErrnoError(i);if(!t.node_ops.rmdir)throw new I.ErrnoError(63);if(I.isMountpoint(r))throw new I.ErrnoError(10);t.node_ops.rmdir(t,n),I.destroyNode(r)},readdir(e){var t=I.lookupPath(e,{follow:!0}).node;return I.checkOpExists(t.node_ops.readdir,54)(t)},unlink(e){var t=I.lookupPath(e,{parent:!0}).node;if(!t)throw new I.ErrnoError(44);var n=T.basename(e),r=I.lookupNode(t,n),i=I.mayDelete(t,n,!1);if(i)throw new I.ErrnoError(i);if(!t.node_ops.unlink)throw new I.ErrnoError(63);if(I.isMountpoint(r))throw new I.ErrnoError(10);t.node_ops.unlink(t,n),I.destroyNode(r)},readlink(e){var t=I.lookupPath(e).node;if(!t)throw new I.ErrnoError(44);if(!t.node_ops.readlink)throw new I.ErrnoError(28);return t.node_ops.readlink(t)},stat(e,t){var n=I.lookupPath(e,{follow:!t}).node;return I.checkOpExists(n.node_ops.getattr,63)(n)},fstat(e){var t=I.getStreamChecked(e),n=t.node,r=t.stream_ops.getattr,i=r?t:n;return r??=n.node_ops.getattr,I.checkOpExists(r,63),r(i)},lstat(e){return I.stat(e,!0)},doChmod(e,t,n,r){I.doSetAttr(e,t,{mode:n&4095|t.mode&-4096,ctime:Date.now(),dontFollow:r})},chmod(e,t,n){var r=typeof e==`string`?I.lookupPath(e,{follow:!n}).node:e;I.doChmod(null,r,t,n)},lchmod(e,t){I.chmod(e,t,!0)},fchmod(e,t){var n=I.getStreamChecked(e);I.doChmod(n,n.node,t,!1)},doChown(e,t,n){I.doSetAttr(e,t,{timestamp:Date.now(),dontFollow:n})},chown(e,t,n,r){var i=typeof e==`string`?I.lookupPath(e,{follow:!r}).node:e;I.doChown(null,i,r)},lchown(e,t,n){I.chown(e,t,n,!0)},fchown(e,t,n){var r=I.getStreamChecked(e);I.doChown(r,r.node,!1)},doTruncate(e,t,n){if(I.isDir(t.mode))throw new I.ErrnoError(31);if(!I.isFile(t.mode))throw new I.ErrnoError(28);var r=I.nodePermissions(t,`w`);if(r)throw new I.ErrnoError(r);I.doSetAttr(e,t,{size:n,timestamp:Date.now()})},truncate(e,t){if(t<0)throw new I.ErrnoError(28);var n=typeof e==`string`?I.lookupPath(e,{follow:!0}).node:e;I.doTruncate(null,n,t)},ftruncate(e,t){var n=I.getStreamChecked(e);if(t<0||!(n.flags&2097155))throw new I.ErrnoError(28);I.doTruncate(n,n.node,t)},utime(e,t,n,r){var i=I.lookupPath(e,{follow:!r});I.doSetAttr(null,i.node,{atime:t,mtime:n,dontFollow:r})},open(e,t,n=438){if(e===``)throw new I.ErrnoError(44);t=be(t),n=t&64?n&4095|32768:0;var r,i;if(typeof e==`object`)r=e;else{i=e.endsWith(`/`);var a=I.lookupPath(e,{follow:!(t&131072),noent_okay:!0});r=a.node,e=a.path}var o=!1;if(t&64)if(r){if(t&128)throw new I.ErrnoError(20)}else if(i)throw new I.ErrnoError(31);else r=I.mknod(e,n|511,0),o=!0;if(!r)throw new I.ErrnoError(44);if(I.isChrdev(r.mode)&&(t&=-513),t&65536&&!I.isDir(r.mode))throw new I.ErrnoError(54);if(!o){var s=I.mayOpen(r,t);if(s)throw new I.ErrnoError(s)}t&512&&!o&&I.truncate(r,0),t&=-131713;var c=I.createStream({node:r,path:I.getPath(r),flags:t,seekable:!0,position:0,stream_ops:r.stream_ops,ungotten:[],error:!1});return c.stream_ops.open&&c.stream_ops.open(c),o&&I.chmod(r,n&511),c},close(e){if(I.isClosed(e))throw new I.ErrnoError(8);e.getdents&&=null,e.node?.notifyListeners(32);try{e.stream_ops.close&&e.stream_ops.close(e)}catch(e){throw e}finally{I.closeStream(e.fd)}e.fd=null},isClosed(e){return e.fd===null},llseek(e,t,n){if(I.isClosed(e))throw new I.ErrnoError(8);if(!e.seekable||!e.stream_ops.llseek)throw new I.ErrnoError(70);if(n!=0&&n!=1&&n!=2)throw new I.ErrnoError(28);return e.position=e.stream_ops.llseek(e,t,n),e.ungotten=[],e.position},read(e,t,n,r,i){if(r<0||i<0)throw new I.ErrnoError(28);if(I.isClosed(e)||(e.flags&2097155)==1)throw new I.ErrnoError(8);if(I.isDir(e.node.mode))throw new I.ErrnoError(31);if(!e.stream_ops.read)throw new I.ErrnoError(28);var a=i!==void 0;if(!a)i=e.position;else if(!e.seekable)throw new I.ErrnoError(70);var o=e.stream_ops.read(e,t,n,r,i);return a||(e.position+=o),o},write(e,t,n,r,i,a){if(r<0||i<0)throw new I.ErrnoError(28);if(I.isClosed(e)||!(e.flags&2097155))throw new I.ErrnoError(8);if(I.isDir(e.node.mode))throw new I.ErrnoError(31);if(!e.stream_ops.write)throw new I.ErrnoError(28);e.seekable&&e.flags&1024&&I.llseek(e,0,2);var o=i!==void 0;if(!o)i=e.position;else if(!e.seekable)throw new I.ErrnoError(70);var s=e.stream_ops.write(e,t,n,r,i,a);return o||(e.position+=s),s},mmap(e,t,n,r,i){if(r&2&&!(i&2)&&(e.flags&2097155)!=2||(e.flags&2097155)==1)throw new I.ErrnoError(2);if(!e.stream_ops.mmap)throw new I.ErrnoError(43);if(!t)throw new I.ErrnoError(28);return e.stream_ops.mmap(e,t,n,r,i)},msync(e,t,n,r,i){return e.stream_ops.msync?e.stream_ops.msync(e,t,n,r,i):0},ioctl(e,t,n){if(!e.stream_ops.ioctl)throw new I.ErrnoError(59);return e.stream_ops.ioctl(e,t,n)},readFile(e,t={}){t.flags=t.flags??0,t.encoding=t.encoding??`binary`,t.encoding!==`utf8`&&t.encoding!==`binary`&&x(`Invalid encoding type "${t.encoding}"`);var n=I.open(e,t.flags),r=I.stat(e).size,i=new Uint8Array(r);return I.read(n,i,0,r,0),t.encoding===`utf8`&&(i=D(i)),I.close(n),i},writeFile(e,t,n={}){n.flags=n.flags??577;var r=I.open(e,n.flags,n.mode);t=xe(t),I.write(r,t,0,t.byteLength,void 0,n.canOwn),I.close(r)},cwd:()=>I.currentPath,chdir(e){var t=I.lookupPath(e,{follow:!0});if(t.node===null)throw new I.ErrnoError(44);if(!I.isDir(t.node.mode))throw new I.ErrnoError(54);var n=I.nodePermissions(t.node,`x`);if(n)throw new I.ErrnoError(n);I.currentPath=t.path},createDefaultDirectories(){I.mkdir(`/tmp`),I.mkdir(`/home`),I.mkdir(`/home/web_user`)},createDefaultDevices(){I.mkdir(`/dev`),I.registerDevice(I.makedev(1,3),{read:()=>0,write:(e,t,n,r,i)=>r,llseek:()=>0}),I.mkdev(`/dev/null`,I.makedev(1,3)),j.register(I.makedev(5,0),j.default_tty_ops),j.register(I.makedev(6,0),j.default_tty1_ops),I.mkdev(`/dev/tty`,I.makedev(5,0)),I.mkdev(`/dev/tty1`,I.makedev(6,0));var e=new Uint8Array(1024),t=0,n=()=>(t===0&&(fe(e),t=e.byteLength),e[--t]);I.createDevice(`/dev`,`random`,n),I.createDevice(`/dev`,`urandom`,n),I.mkdir(`/dev/shm`),I.mkdir(`/dev/shm/tmp`)},createSpecialDirectories(){I.mkdir(`/proc`);var e=I.mkdir(`/proc/self`);I.mkdir(`/proc/self/fd`),I.mount({mount(){var t=I.createNode(e,`fd`,16895,73);return t.stream_ops={llseek:N.stream_ops.llseek},t.node_ops={lookup(e,t){var n=+t,r=I.getStreamChecked(n),i={parent:null,mount:{mountpoint:`fake`},node_ops:{readlink:()=>r.path},id:n+1};return i.parent=i,i},readdir(){return Array.from(I.streams.entries()).filter(([e,t])=>t).map(([e,t])=>e.toString())}},t}},{},`/proc/self/fd`)},createStandardStreams(e,t,n){e?I.createDevice(`/dev`,`stdin`,e):I.symlink(`/dev/tty`,`/dev/stdin`),t?I.createDevice(`/dev`,`stdout`,null,t):I.symlink(`/dev/tty`,`/dev/stdout`),n?I.createDevice(`/dev`,`stderr`,null,n):I.symlink(`/dev/tty1`,`/dev/stderr`),I.open(`/dev/stdin`,0),I.open(`/dev/stdout`,1),I.open(`/dev/stderr`,1)},staticInit(){I.nameTable=Array(4096),I.mount(N,{},`/`),I.createDefaultDirectories(),I.createDefaultDevices(),I.createSpecialDirectories(),I.filesystems={MEMFS:N}},init(e,n,r){I.initialized=!0,e??=t.stdin,n??=t.stdout,r??=t.stderr,I.createStandardStreams(e,n,r)},quit(){I.initialized=!1;for(var e of I.streams)e&&I.close(e)},findObject(e,t){var n=I.analyzePath(e,t);return n.exists?n.object:null},analyzePath(e,t){try{var n=I.lookupPath(e,{follow:!t});e=n.path}catch{}var r={isRoot:!1,exists:!1,error:0,name:null,path:null,object:null,parentExists:!1,parentPath:null,parentObject:null};try{var n=I.lookupPath(e,{parent:!0});r.parentExists=!0,r.parentPath=n.path,r.parentObject=n.node,r.name=T.basename(e),n=I.lookupPath(e,{follow:!t}),r.exists=!0,r.path=n.path,r.object=n.node,r.name=n.node.name,r.isRoot=n.path===`/`}catch(e){r.error=e.errno}return r},createPath(e,t,n,r){e=typeof e==`string`?e:I.getPath(e);for(var i=t.split(`/`).reverse();i.length;){var a=i.pop();if(a){var o=T.join2(e,a);try{I.mkdir(o)}catch(e){if(e.errno!=20)throw e}e=o}}return o},createFile(e,t,n,r,i){var a=T.join2(typeof e==`string`?e:I.getPath(e),t),o=P(r,i);return I.create(a,o)},createDataFile(e,t,n,r,i,a){var o=t;e&&(e=typeof e==`string`?e:I.getPath(e),o=t?T.join2(e,t):e);var s=P(r,i),c=I.create(o,s);if(n){n=xe(n),I.chmod(c,s|146);var l=I.open(c,577);I.write(l,n,0,n.length,0,a),I.close(l),I.chmod(c,s)}},createDevice(e,t,n,r){var i=T.join2(typeof e==`string`?e:I.getPath(e),t),a=P(!!n,!!r);I.createDevice.major??=64;var o=I.makedev(I.createDevice.major++,0);return I.registerDevice(o,{open(e){e.seekable=!1},close(e){r?.buffer?.length&&r(10)},read(e,t,r,i,a){for(var o=0,s=0;s<i;s++){var c;try{c=n()}catch{throw new I.ErrnoError(29)}if(c===void 0&&o===0)throw new I.ErrnoError(6);if(c==null)break;o++,t[r+s]=c}return o&&(e.node.atime=Date.now()),o},write(e,t,n,i,a){for(var o=0;o<i;o++)try{r(t[n+o])}catch{throw new I.ErrnoError(29)}return i&&(e.node.mtime=e.node.ctime=Date.now()),o}}),I.mkdev(i,a,o)},forceLoadFile(e){if(e.isDevice||e.isFolder||e.link||e.contents)return!0;if(globalThis.XMLHttpRequest)x(`Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.`);else try{e.contents=d(e.url)}catch{throw new I.ErrnoError(29)}},createLazyFile(e,t,n,i,a){class o{lengthKnown=!1;chunks=[];get(e){if(!(e>this.length-1||e<0)){var t=e%this.chunkSize,n=e/this.chunkSize|0;return this.getter(n)[t]}}setDataGetter(e){this.getter=e}cacheLength(){var e=new XMLHttpRequest;e.open(`HEAD`,n,!1),e.send(null),e.status>=200&&e.status<300||e.status===304||x(`Couldn't load ${n}. Status: ${e.status}`);var t=Number(e.getResponseHeader(`Content-length`)),r,i=(r=e.getResponseHeader(`Accept-Ranges`))&&r===`bytes`,a=(r=e.getResponseHeader(`Content-Encoding`))&&r===`gzip`,o=1048576;i||(o=t);var s=(e,r)=>{e>r&&x(`invalid range (${e}, ${r}) or no bytes requested!`),r>t-1&&x(`only ${t} bytes available! programmer error!`);var i=new XMLHttpRequest;return i.open(`GET`,n,!1),t!==o&&i.setRequestHeader(`Range`,`bytes=${e}-${r}`),i.responseType=`arraybuffer`,i.overrideMimeType&&i.overrideMimeType(`text/plain; charset=x-user-defined`),i.send(null),i.status>=200&&i.status<300||i.status===304||x(`Couldn't load ${n}. Status: ${i.status}`),i.response===void 0?A(i.responseText??``,!0):new Uint8Array(i.response||[])},c=this;c.setDataGetter(e=>{var n=e*o,r=(e+1)*o-1;return r=Math.min(r,t-1),c.chunks[e]===void 0&&(c.chunks[e]=s(n,r)),c.chunks[e]===void 0&&x(`doXHR failed!`),c.chunks[e]}),(a||!t)&&(o=t=1,t=this.getter(0).length,o=t,p(`LazyFiles on gzip forces download of the whole file when length is accessed`)),this._length=t,this._chunkSize=o,this.lengthKnown=!0}get length(){return this.lengthKnown||this.cacheLength(),this._length}get chunkSize(){return this.lengthKnown||this.cacheLength(),this._chunkSize}}if(globalThis.XMLHttpRequest){r||x(`Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc`);var s={isDevice:!1,contents:new o}}else var s={isDevice:!1,url:n};var c=I.createFile(e,t,s,i,a);s.contents?c.contents=s.contents:s.url&&(c.contents=null,c.url=s.url),Object.defineProperties(c,{usedBytes:{get:function(){return this.contents.length}}});var l={};for(let[e,t]of Object.entries(c.stream_ops))l[e]=(...e)=>(I.forceLoadFile(c),t(...e));function u(e,t,n,r,i){var a=e.node.contents;if(i>=a.length)return 0;var o=Math.min(a.length-i,r);if(a.slice)for(var s=0;s<o;s++)t[n+s]=a[i+s];else for(var s=0;s<o;s++)t[n+s]=a.get(i+s);return o}return l.read=(e,t,n,r,i)=>(I.forceLoadFile(c),u(e,t,n,r,i)),l.mmap=(e,t,n,r,i)=>{I.forceLoadFile(c);var a=ye(t);if(!a)throw new I.ErrnoError(48);return u(e,C,a,t,n),{ptr:a,allocated:!0}},c.stream_ops=l,c}},Pe=(e,t,n)=>e?D(M,e,t,n):``,L,R,z,B={currentUmask:18,calculateAt(e,t,n){if(T.isAbs(t))return t;var r=e===-100?I.cwd():B.getStreamFromFD(e).path;if(t.length==0){if(!n)throw new I.ErrnoError(44);return r}return r+`/`+t},writeStat(e,t){R[e>>2]=t.dev,R[e+4>>2]=t.mode,R[e+8>>2]=t.nlink,R[e+12>>2]=t.uid,R[e+16>>2]=t.gid,R[e+20>>2]=t.rdev,z[e+24>>3]=BigInt(t.size),L[e+32>>2]=4096,L[e+36>>2]=t.blocks;var n=t.atime.getTime(),r=t.mtime.getTime(),i=t.ctime.getTime();return z[e+40>>3]=BigInt(Math.floor(n/1e3)),R[e+48>>2]=n%1e3*1e3*1e3,z[e+56>>3]=BigInt(Math.floor(r/1e3)),R[e+64>>2]=r%1e3*1e3*1e3,z[e+72>>3]=BigInt(Math.floor(i/1e3)),R[e+80>>2]=i%1e3*1e3*1e3,z[e+88>>3]=BigInt(t.ino),0},writeStatFs(e,t){R[e+4>>2]=t.bsize,R[e+60>>2]=t.bsize,z[e+8>>3]=BigInt(t.blocks),z[e+16>>3]=BigInt(t.bfree),z[e+24>>3]=BigInt(t.bavail),z[e+32>>3]=BigInt(t.files),z[e+40>>3]=BigInt(t.ffree),R[e+48>>2]=t.fsid,R[e+64>>2]=t.flags,R[e+56>>2]=t.namelen},doMsync(e,t,n,r,i){if(!I.isFile(t.node.mode))throw new I.ErrnoError(43);if(r&2)return 0;var a=M.subarray(e,e+n);I.msync(t,a,i,n,r)},getStreamFromFD(e){return I.getStreamChecked(e)},varargs:void 0,getStr(e){return Pe(e)}};function Fe(e,t){try{return e=B.getStr(e),I.chmod(e,t),0}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return-e.errno}}function Ie(e,t,n,r){try{if(t=B.getStr(t),t=B.calculateAt(e,t),n&-8)return-28;var i=I.lookupPath(t,{follow:!0}).node;if(!i)return-44;var a=``;return n&4&&(a+=`r`),n&2&&(a+=`w`),n&1&&(a+=`x`),a&&I.nodePermissions(i,a)?-2:0}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return-e.errno}}function Le(e,t){try{return I.fchmod(e,t),0}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return-e.errno}}function Re(e,t,n){try{return I.fchown(e,t,n),0}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return-e.errno}}var V=()=>{var e=L[B.varargs>>2];return B.varargs+=4,e},ze=V,H;function Be(e,t,n){B.varargs=n;try{var r=B.getStreamFromFD(e);switch(t){case 0:var i=V();if(i<0)return-28;for(;I.streams[i];)i++;return I.dupStream(r,i).fd;case 1:case 2:return 0;case 3:return r.flags;case 4:var i=V(),a=289792;return r.flags=r.flags&~a|i&a,0;case 12:var i=ze(),o=0;return H[i+o>>1]=2,0;case 13:case 14:return 0}return-28}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return-e.errno}}function Ve(e,t){try{return B.writeStat(t,I.fstat(e))}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return-e.errno}}var He=9007199254740992,Ue=-9007199254740992,U=e=>e<Ue||e>He?NaN:Number(e);function We(e,t){t=U(t);try{return isNaN(t)?-22:(I.ftruncate(e,t),0)}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return-e.errno}}var W=(e,t,n)=>he(e,M,t,n);function Ge(e,t){try{if(t===0)return-28;var n=I.cwd(),r=k(n)+1;return t<r?-68:(W(n,e,t),r)}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return-e.errno}}var Ke=()=>0;function qe(e,t){try{return e=B.getStr(e),B.writeStat(t,I.lstat(e))}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return-e.errno}}function Je(e,t,n){try{return t=B.getStr(t),t=B.calculateAt(e,t),n&=~B.currentUmask,I.mkdir(t,n,0),0}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return-e.errno}}function Ye(e,t,n,r){try{t=B.getStr(t);var i=r&256,a=r&4096;return r&=-6401,t=B.calculateAt(e,t,a),B.writeStat(n,i?I.lstat(t):I.stat(t))}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return-e.errno}}function Xe(e,t,n,r){B.varargs=r;try{t=B.getStr(t),t=B.calculateAt(e,t);var i=r?V():0;return n&64&&(i&=~B.currentUmask),I.open(t,n,i).fd}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return-e.errno}}function Ze(e,t,n,r){try{if(t=B.getStr(t),t=B.calculateAt(e,t),r<=0)return-28;var i=I.readlink(t),a=Math.min(r,k(i)),o=C[n+a];return W(i,n,r+1),C[n+a]=o,a}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return-e.errno}}function Qe(e){try{return e=B.getStr(e),I.rmdir(e),0}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return-e.errno}}function $e(e,t){try{return e=B.getStr(e),B.writeStat(t,I.stat(e))}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return-e.errno}}function et(e,t,n){try{if(t=B.getStr(t),t=B.calculateAt(e,t),!n)I.unlink(t);else if(n===512)I.rmdir(t);else return-28;return 0}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return-e.errno}}var tt=e=>R[e>>2]+L[e+4>>2]*4294967296;function nt(e,t,n,r){try{var i=r&256;t=B.getStr(t),t=B.calculateAt(e,t,!0);var a=Date.now(),o,s;if(!n)o=a,s=a;else{var c=tt(n),l=L[n+8>>2];o=l==1073741823?a:l==1073741822?null:c*1e3+l/1e6,n+=16,c=tt(n),l=L[n+8>>2],s=l==1073741823?a:l==1073741822?null:c*1e3+l/1e6}return(s??o)!==null&&I.utime(t,o,s,i),0}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return-e.errno}}var rt=e=>e%4==0&&(e%100!=0||e%400==0),it=[0,31,60,91,121,152,182,213,244,274,305,335],at=[0,31,59,90,120,151,181,212,243,273,304,334],ot=e=>(rt(e.getFullYear())?it:at)[e.getMonth()]+e.getDate()-1;function st(e,t){e=U(e);var n=new Date(e*1e3);if(isNaN(n.getTime()))return 1;L[t>>2]=n.getSeconds(),L[t+4>>2]=n.getMinutes(),L[t+8>>2]=n.getHours(),L[t+12>>2]=n.getDate(),L[t+16>>2]=n.getMonth(),L[t+20>>2]=n.getFullYear()-1900,L[t+24>>2]=n.getDay();var r=ot(n)|0;L[t+28>>2]=r,L[t+36>>2]=-(n.getTimezoneOffset()*60);var i=new Date(n.getFullYear(),0,1),a=new Date(n.getFullYear(),6,1).getTimezoneOffset(),o=i.getTimezoneOffset(),s=(a!=o&&n.getTimezoneOffset()==Math.min(o,a))|0;return L[t+32>>2]=s,0}function ct(e,t,n,r,i,a,o){i=U(i);try{var s=B.getStreamFromFD(r),c=I.mmap(s,e,i,t,n),l=c.ptr;return L[a>>2]=c.allocated,R[o>>2]=l,0}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return-e.errno}}function lt(e,t,n,r,i,a){a=U(a);try{var o=B.getStreamFromFD(i);n&2&&B.doMsync(e,o,t,r,a)}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return-e.errno}}var ut=(e,t,n,r)=>{var i=new Date().getFullYear(),a=new Date(i,0,1),o=new Date(i,6,1),s=a.getTimezoneOffset(),c=o.getTimezoneOffset(),l=Math.max(s,c);R[e>>2]=l*60,L[t>>2]=Number(s!=c);var u=e=>{var t=e>=0?`-`:`+`,n=Math.abs(e);return`UTC${t}${String(Math.floor(n/60)).padStart(2,`0`)}${String(n%60).padStart(2,`0`)}`},d=u(s),f=u(c);c<s?(W(d,n,17),W(f,r,17)):(W(d,r,17),W(f,n,17))},dt=()=>performance.now(),ft=()=>Date.now(),pt=1,mt=e=>e>=0&&e<=3;function ht(e,t,n){if(t=U(t),!mt(e))return 28;var r;if(e===0)r=ft();else if(pt)r=dt();else return 52;var i=Math.round(r*1e3*1e3);return z[n>>3]=BigInt(i),0}var gt=()=>2147483648,_t=()=>gt(),vt=e=>{var t=(e-Z.buffer.byteLength+65535)/65536|0;try{return Z.grow(t),y(),1}catch{}},yt=e=>{var t=M.length;e>>>=0;var n=gt();if(e>n)return!1;for(var r=1;r<=4;r*=2){var i=t*(1+.2/r);if(i=Math.min(i,e+100663296),vt(Math.min(n,ve(Math.max(e,i),65536))))return!0}return!1},G={},bt=()=>o,K=()=>{if(!K.strings){var e={USER:`web_user`,LOGNAME:`web_user`,PATH:`/`,PWD:`/`,HOME:`/home/web_user`,LANG:(globalThis.navigator?.language??`C`).replace(`-`,`_`)+`.UTF-8`,_:bt()};for(var t in G)G[t]===void 0?delete e[t]:e[t]=G[t];var n=[];for(var t in e)n.push(`${t}=${e[t]}`);K.strings=n}return K.strings},xt=(e,t)=>{var n=0,r=0;for(var i of K()){var a=t+n;R[e+r>>2]=a,n+=W(i,a,1/0)+1,r+=4}return 0},St=(e,t)=>{var n=K();R[e>>2]=n.length;var r=0;for(var i of n)r+=k(i)+1;return R[t>>2]=r,0};function Ct(e){try{var t=B.getStreamFromFD(e);return I.close(t),0}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return e.errno}}function wt(e,t){try{var n=0,r=0,i=0,a=B.getStreamFromFD(e),o=a.tty?2:I.isDir(a.mode)?3:I.isLink(a.mode)?7:4;return C[t]=o,H[t+2>>1]=i,z[t+8>>3]=BigInt(n),z[t+16>>3]=BigInt(r),0}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return e.errno}}var Tt=(e,t,n,r)=>{for(var i=0,a=0;a<n;a++){var o=R[t>>2],s=R[t+4>>2];t+=8;try{var c=I.read(e,C,o,s,r)}catch(e){if(i>0&&e instanceof I.ErrnoError&&(e.errno==6||e.errno==6))break;throw e}if(c<0)return-1;if(i+=c,c<s)break;r!==void 0&&(r+=c)}return i};function Et(e,t,n,r){try{var i=Tt(B.getStreamFromFD(e),t,n);return R[r>>2]=i,0}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return e.errno}}function Dt(e,t,n,r){t=U(t);try{if(isNaN(t))return 22;var i=B.getStreamFromFD(e);return I.llseek(i,t,n),z[r>>3]=BigInt(i.position),i.getdents&&t===0&&n===0&&(i.getdents=null),0}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return e.errno}}function Ot(e){try{var t=B.getStreamFromFD(e);return t.stream_ops?.fsync?.(t)}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return e.errno}}var kt=(e,t,n,r)=>{if(n==1)return I.write(e,C,R[t>>2],R[t+4>>2],r);for(var i=0,a=0,o=t;a<n;a++,o+=8)i+=R[o+4>>2];for(var s=new Uint8Array(i),c=0,a=0;a<n;a++,t+=8){var l=R[t>>2],u=R[t+4>>2];s.set(M.subarray(l,l+u),c),c+=u}return I.write(e,s,0,i,r)};function At(e,t,n,r){try{var i=kt(B.getStreamFromFD(e),t,n);return R[r>>2]=i,0}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return e.errno}}var q=[],jt=e=>{var t=q[e];return t||(q[e]=t=Q.get(e)),t},Mt=(e,t)=>{if(J)for(var n=e;n<e+t;n++){var r=jt(n);r&&J.set(r,n)}},J,Nt=e=>(J||(J=new WeakMap,Mt(0,Q.length)),J.get(e)||0),Pt=[],Ft=()=>Pt.length?Pt.pop():Q.grow(1),It=(e,t)=>{Q.set(e,t),q[e]=Q.get(e)},Y=e=>{let t=e.length;return[t%128|128,t>>7,...e]},Lt={i:127,p:127,j:126,f:125,d:124,e:111},Rt=e=>Y(Array.from(e,e=>Lt[e])),zt=(e,t)=>{var n=Uint8Array.of(0,97,115,109,1,0,0,0,1,...Y([1,96,...Rt(t.slice(1)),...Rt(t[0]===`v`?``:t[0])]),2,7,1,1,101,1,102,0,0,7,5,1,1,102,0,0),r=new WebAssembly.Module(n);return new WebAssembly.Instance(r,{e:{f:e}}).exports.f},Bt=(e,t)=>{var n=Nt(e);if(n)return n;var r=Ft();try{It(r,e)}catch(n){if(!(n instanceof TypeError))throw n;It(r,zt(e,t))}return J.set(e,r),r};I.createPreloadedFile=Ne,I.preloadFile=Me,I.staticInit(),t.noExitRuntime&&t.noExitRuntime,t.print&&(p=t.print),t.printErr&&(m=t.printErr),t.arguments&&t.arguments,t.thisProgram&&(o=t.thisProgram);var X=t.preInit;if(X)for(typeof X==`function`&&(t.preInit=X=[X]);X.length>0;)X.shift()();t.addFunction=Bt,t.UTF8ToString=Pe,t.stringToUTF8=W,t.lengthBytesUTF8=k;var Vt,Z,Q;function Ht(e){t._sqlite3_initialize=e.sqlite3_initialize,t._sqlite3_vfs_register=e.sqlite3_vfs_register,t._sqlite3_step=e.sqlite3_step,t._sqlite3_column_int64=e.sqlite3_column_int64,t._sqlite3_exec=e.sqlite3_exec,t._sqlite3_finalize=e.sqlite3_finalize,t._sqlite3_prepare_v2=e.sqlite3_prepare_v2,t._sqlite3_column_text=e.sqlite3_column_text,t._sqlite3_errmsg=e.sqlite3_errmsg,t._sqlite3_column_count=e.sqlite3_column_count,t._sqlite3_column_blob=e.sqlite3_column_blob,t._sqlite3_column_bytes=e.sqlite3_column_bytes,t._sqlite3_column_double=e.sqlite3_column_double,t._sqlite3_column_type=e.sqlite3_column_type,t._sqlite3_column_name=e.sqlite3_column_name,t._sqlite3_bind_blob=e.sqlite3_bind_blob,t._sqlite3_bind_double=e.sqlite3_bind_double,t._sqlite3_bind_int=e.sqlite3_bind_int,t._sqlite3_bind_int64=e.sqlite3_bind_int64,t._sqlite3_bind_null=e.sqlite3_bind_null,t._sqlite3_bind_text=e.sqlite3_bind_text,t._sqlite3_last_insert_rowid=e.sqlite3_last_insert_rowid,t._sqlite3_changes=e.sqlite3_changes,t._sqlite3_close=e.sqlite3_close,t._sqlite3_open_v2=e.sqlite3_open_v2,t._malloc=e.malloc,t._free=e.free,Vt=e.emscripten_builtin_memalign,e._emscripten_stack_restore,e._emscripten_stack_alloc,e.emscripten_stack_get_current,Z=e.memory,Q=e.__indirect_function_table}var Ut={__syscall_chmod:Fe,__syscall_faccessat:Ie,__syscall_fchmod:Le,__syscall_fchown32:Re,__syscall_fcntl64:Be,__syscall_fstat64:Ve,__syscall_ftruncate64:We,__syscall_getcwd:Ge,__syscall_geteuid32:Ke,__syscall_lstat64:qe,__syscall_mkdirat:Je,__syscall_newfstatat:Ye,__syscall_openat:Xe,__syscall_readlinkat:Ze,__syscall_rmdir:Qe,__syscall_stat64:$e,__syscall_unlinkat:et,__syscall_utimensat:nt,_localtime_js:st,_mmap_js:ct,_munmap_js:lt,_tzset_js:ut,clock_time_get:ht,emscripten_date_now:ft,emscripten_get_heap_max:_t,emscripten_get_now:dt,emscripten_resize_heap:yt,environ_get:xt,environ_sizes_get:St,fd_close:Ct,fd_fdstat_get:wt,fd_read:Et,fd_seek:Dt,fd_sync:Ot,fd_write:At};async function Wt(){b(),F&&await Ee();var e=t.setStatus;e&&(e(`Running...`),await new Promise(e=>setTimeout(e,1)),setTimeout(e,1,``)),!g&&(ee(),t.onRuntimeInitialized?.(),te())}var $=await ce();return await Wt(),t}const t=BigInt(2**53-1);function n(e){function n(t){let n=e.lengthBytesUTF8(t)+1,r=e._malloc(n);return e.stringToUTF8(t,r,n),r}function r(t,r=!0){let i=r?1:6,a=n(t),o=e._malloc(4),s=e._sqlite3_open_v2(a,o,i,0),c=e.HEAP32[o>>2];if(e._free(a),e._free(o),s!==0){let t=c?e.UTF8ToString(e._sqlite3_errmsg(c)):`sqlite3_open_v2 failed`;throw Error(t)}if(!r){let t=n(`PRAGMA journal_mode=MEMORY`);e._sqlite3_exec(c,t,0,0,0),e._free(t)}return c}function i(t){return e._sqlite3_close(t),null}function a(t,r){let i=n(r),a=e._sqlite3_exec(t,i,0,0,0);if(e._free(i),a!==0)throw Error(e.UTF8ToString(e._sqlite3_errmsg(t)));return null}function o(t,r){for(let i=0;i<r.length;i++){let a=r[i],o=i+1;if(a==null)e._sqlite3_bind_null(t,o);else if(typeof a==`number`)Number.isInteger(a)?e._sqlite3_bind_int(t,o,a):e._sqlite3_bind_double(t,o,a);else if(typeof a==`bigint`)e._sqlite3_bind_int64(t,o,a);else if(typeof a==`string`){let r=n(a);e._sqlite3_bind_text(t,o,r,-1,-1),e._free(r)}else if(a instanceof Uint8Array||a instanceof ArrayBuffer){let n=a instanceof ArrayBuffer?new Uint8Array(a):a,r=e._malloc(n.byteLength);e.HEAPU8.set(n,r),e._sqlite3_bind_blob(t,o,r,n.byteLength,-1),e._free(r)}}}function s(n,r){let i={};for(let a=0;a<r;a++){let r=e.UTF8ToString(e._sqlite3_column_name(n,a)),o=e._sqlite3_column_type(n,a),s=null;if(o===1){let r=e._sqlite3_column_int64(n,a);s=r<=t&&r>=-t?Number(r):r}else if(o===2)s=e._sqlite3_column_double(n,a);else if(o===3)s=e.UTF8ToString(e._sqlite3_column_text(n,a));else if(o===4){let t=e._sqlite3_column_blob(n,a),r=e._sqlite3_column_bytes(n,a);s=e.HEAPU8.slice(t,t+r).buffer}i[r]=s}return i}function c(t,r,i){let a=n(r),s=e._malloc(4),c=e._sqlite3_prepare_v2(t,a,-1,s,0);e._free(a);let l=e.HEAP32[s>>2];if(e._free(s),c!==0)throw Error(e.UTF8ToString(e._sqlite3_errmsg(t)));return o(l,i),l}function l(t,n,r=[]){let i=c(t,n,r),a=e._sqlite3_column_count(i),o=[],l=e._sqlite3_step(i);for(;l===100;)o.push(s(i,a)),l=e._sqlite3_step(i);if(e._sqlite3_finalize(i),l!==101)throw Error(e.UTF8ToString(e._sqlite3_errmsg(t)));return o}function u(t,n,r=[]){let i=c(t,n,r),a=e._sqlite3_step(i);if(e._sqlite3_finalize(i),a!==101&&a!==100)throw Error(e.UTF8ToString(e._sqlite3_errmsg(t)));return{changes:e._sqlite3_changes(t),lastInsertRowid:e._sqlite3_last_insert_rowid(t)}}return{open:r,close:i,exec:a,query:l,run:u}}const r=new Map,i=new Map;let a=1;async function o(e){let{opfsRoot:t,path:n}=e,o=n.replace(/^\//,``).split(`/`),s=o.pop(),c=t;for(let e of o)c=await c.getDirectoryHandle(e,{create:!0});let l=await(await c.getFileHandle(s,{create:!0})).createSyncAccessHandle(),u=a++;return r.set(u,l),i.set(n,u),u}async function s(e){let{opfsRoot:t,path:n,buffer:o}=e,s=n.replace(/^\//,``).split(`/`),c=s.pop(),l=t;for(let e of s)l=await l.getDirectoryHandle(e,{create:!0});let u=await(await l.getFileHandle(c,{create:!0})).createSyncAccessHandle();u.truncate(0),u.write(new Uint8Array(o),{at:0}),u.flush();let d=a++;return r.set(d,u),i.set(n,d),d}function c(e){let t=e._malloc(52);e.HEAP32.fill(0,t>>2,t+52>>2),e.HEAP32[t+0>>2]=1;function n(t){let n=e.HEAP32[t+4>>2];return r.has(n)&&(r.get(n).close(),r.delete(n)),0}function a(t,n,i,a){let o=e.HEAP32[t+4>>2],s=r.get(o);if(s){let t=e.HEAPU8.subarray(n,n+i),r=s.read(t,{at:Number(a)});return r<i?(e.HEAPU8.fill(0,n+r,n+i),522):0}return 10}function o(t,n,i,a){let o=e.HEAP32[t+4>>2],s=r.get(o);if(s){let t=e.HEAPU8.subarray(n,n+i);return s.write(t,{at:Number(a)}),0}return 10}function s(t,n){let i=e.HEAP32[t+4>>2],a=r.get(i);return a?(a.truncate(Number(n)),0):10}function c(t,n){let i=e.HEAP32[t+4>>2],a=r.get(i);return a?(a.flush(),0):10}function l(t,n){let i=e.HEAP32[t+4>>2],a=r.get(i);if(a){let t=a.getSize();return e.HEAP32[n>>2]=t>>>0,e.HEAP32[n+4>>2]=t/4294967296>>>0,0}return 10}function u(e,t){return 0}function d(e,t){return 0}function f(t,n){return e.HEAP32[n>>2]=0,0}function p(e,t,n){return 12}function m(e){return 4096}function h(e){return 5648}e.HEAP32[t+4>>2]=e.addFunction(n,`ii`),e.HEAP32[t+8>>2]=e.addFunction(a,`iiiij`),e.HEAP32[t+12>>2]=e.addFunction(o,`iiiij`),e.HEAP32[t+16>>2]=e.addFunction(s,`iij`),e.HEAP32[t+20>>2]=e.addFunction(c,`iii`),e.HEAP32[t+24>>2]=e.addFunction(l,`iii`),e.HEAP32[t+28>>2]=e.addFunction(u,`iii`),e.HEAP32[t+32>>2]=e.addFunction(d,`iii`),e.HEAP32[t+36>>2]=e.addFunction(f,`iii`),e.HEAP32[t+40>>2]=e.addFunction(p,`iiii`),e.HEAP32[t+44>>2]=e.addFunction(m,`ii`),e.HEAP32[t+48>>2]=e.addFunction(h,`ii`);let g=e._malloc(72);e.HEAP32.fill(0,g>>2,g+72>>2);let _=e.lengthBytesUTF8(`opfs`)+1,v=e._malloc(_);e.stringToUTF8(`opfs`,v,_),e.HEAP32[g+0>>2]=1,e.HEAP32[g+4>>2]=8,e.HEAP32[g+8>>2]=512,e.HEAP32[g+16>>2]=v;function y(n,r,a,o,s){let c=r?e.UTF8ToString(r):``,l=i.get(c)??0;return e.HEAP32[a+0>>2]=t,e.HEAP32[a+4>>2]=l,s&&(e.HEAP32[s>>2]=o),0}function b(t,n,r){let a=n?e.UTF8ToString(n):``;return i.delete(a),0}function ee(t,n,r,a){let o=n?e.UTF8ToString(n):``;return e.HEAP32[a>>2]=+!!i.has(o),0}function te(t,n,r,i){let a=n?e.UTF8ToString(n):``,o=a.startsWith(`/`)?a:`/`+a;return e.stringToUTF8(o,i,r),0}function x(t,n,r){let i=new Uint8Array(n);return crypto.getRandomValues(i),e.HEAPU8.set(i,r),n}function S(e,t){return 0}function ne(t,n){let r=Date.now()/864e5+2440587.5;return new DataView(e.HEAPU8.buffer,n,8).setFloat64(0,r,!0),0}function re(e,t,n){return 0}e.HEAP32[g+24>>2]=e.addFunction(y,`iiiiii`),e.HEAP32[g+28>>2]=e.addFunction(b,`iiii`),e.HEAP32[g+32>>2]=e.addFunction(ee,`iiiii`),e.HEAP32[g+36>>2]=e.addFunction(te,`iiiii`),e.HEAP32[g+56>>2]=e.addFunction(x,`iiii`),e.HEAP32[g+60>>2]=e.addFunction(S,`iii`),e.HEAP32[g+64>>2]=e.addFunction(ne,`iii`),e.HEAP32[g+68>>2]=e.addFunction(re,`iiii`),e._sqlite3_vfs_register(g,1)}let l=null,u=null,d=null;self.onmessage=async function({data:e}){let{id:t,type:n}=e;try{let n=await f(e);self.postMessage({id:t,type:`result`,value:n})}catch(e){self.postMessage({id:t,type:`error`,message:e.message})}};async function f(e){let{type:t,db:n,sql:r,params:i,path:a,readOnly:o}=e;if(t===`init`)return await p(e.wasmBinary);if(t===`load`)return await m(a,e.buffer,o);if(t===`open`)return await h(a,o);if(t===`close`)return d.close(n);if(t===`exec`)return d.exec(n,r);if(t===`query`)return d.query(n,r,i);if(t===`run`)return d.run(n,r,i);throw Error(`unknown type: `+t)}async function p(t){return l||(u=await navigator.storage.getDirectory(),l=await e({wasmBinary:t}),c(l),d=n(l)),null}async function m(e,t,n){if(l)return await s({opfsRoot:u,path:e,buffer:t}),await h(e,n);throw Error(`not initialized, call init() first`)}async function h(e,t){if(l)return i.has(e)||await o({opfsRoot:u,path:e}),d.open(e,t);throw Error(`not initialized, call init() first`)}
|
|
2
|
+
`));if(!e)return null;O=A(e,!0)}return O.shift()},j={ttys:[],init(){},shutdown(){},register(e,t){j.ttys[e]={input:[],output:[],ops:t},I.registerDevice(e,j.stream_ops)},stream_ops:{open(e){var t=j.ttys[e.node.rdev];if(!t)throw new I.ErrnoError(43);e.tty=t,e.seekable=!1},close(e){e.tty.ops.fsync(e.tty)},fsync(e){e.tty.ops.fsync(e.tty)},read(e,t,n,r,i){if(!e.tty||!e.tty.ops.get_char)throw new I.ErrnoError(60);for(var a=0,o=0;o<r;o++){var s;try{s=e.tty.ops.get_char(e.tty)}catch{throw new I.ErrnoError(29)}if(s===void 0&&a===0)throw new I.ErrnoError(6);if(s==null)break;a++,t[n+o]=s}return a&&(e.node.atime=Date.now()),a},write(e,t,n,r,i){if(!e.tty||!e.tty.ops.put_char)throw new I.ErrnoError(60);try{for(var a=0;a<r;a++)e.tty.ops.put_char(e.tty,t[n+a])}catch{throw new I.ErrnoError(29)}return r&&(e.node.mtime=e.node.ctime=Date.now()),a}},default_tty_ops:{get_char(e){return ge()},put_char(e,t){t===null||t===10?(p(D(e.output)),e.output=[]):t!=0&&e.output.push(t)},fsync(e){e.output?.length>0&&(p(D(e.output)),e.output=[])},ioctl_tcgets(e){return{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,t,n){return 0},ioctl_tiocgwinsz(e){return[24,80]}},default_tty1_ops:{put_char(e,t){t===null||t===10?(m(D(e.output)),e.output=[]):t!=0&&e.output.push(t)},fsync(e){e.output?.length>0&&(m(D(e.output)),e.output=[])}}},M,_e=(e,t)=>M.fill(0,e,e+t),ve=(e,t)=>Math.ceil(e/t)*t,ye=e=>{e=ve(e,65536);var t=Vt(65536,e);return t&&_e(t,e),t},N={ops_table:null,mount(e){return N.createNode(null,`/`,16895,0)},createNode(e,t,n,r){if(I.isBlkdev(n)||I.isFIFO(n))throw new I.ErrnoError(63);N.ops_table||={dir:{node:{getattr:N.node_ops.getattr,setattr:N.node_ops.setattr,lookup:N.node_ops.lookup,mknod:N.node_ops.mknod,rename:N.node_ops.rename,unlink:N.node_ops.unlink,rmdir:N.node_ops.rmdir,readdir:N.node_ops.readdir,symlink:N.node_ops.symlink},stream:{llseek:N.stream_ops.llseek}},file:{node:{getattr:N.node_ops.getattr,setattr:N.node_ops.setattr},stream:{llseek:N.stream_ops.llseek,read:N.stream_ops.read,write:N.stream_ops.write,mmap:N.stream_ops.mmap,msync:N.stream_ops.msync}},link:{node:{getattr:N.node_ops.getattr,setattr:N.node_ops.setattr,readlink:N.node_ops.readlink},stream:{}},chrdev:{node:{getattr:N.node_ops.getattr,setattr:N.node_ops.setattr},stream:I.chrdev_stream_ops}};var i=I.createNode(e,t,n,r);return I.isDir(i.mode)?(i.node_ops=N.ops_table.dir.node,i.stream_ops=N.ops_table.dir.stream,i.contents={}):I.isFile(i.mode)?(i.node_ops=N.ops_table.file.node,i.stream_ops=N.ops_table.file.stream,i.usedBytes=0,i.contents=N.emptyFileContents??=new Uint8Array):I.isLink(i.mode)?(i.node_ops=N.ops_table.link.node,i.stream_ops=N.ops_table.link.stream):I.isChrdev(i.mode)&&(i.node_ops=N.ops_table.chrdev.node,i.stream_ops=N.ops_table.chrdev.stream),i.atime=i.mtime=i.ctime=Date.now(),e&&(e.contents[t]=i,e.atime=e.mtime=e.ctime=i.atime),i},getFileDataAsTypedArray(e){return e.contents.subarray(0,e.usedBytes)},expandFileStorage(e,t){var n=e.contents.length;if(!(n>=t)){t=Math.max(t,n*(n<1048576?2:1.125)>>>0),n&&(t=Math.max(t,256));var r=N.getFileDataAsTypedArray(e);e.contents=new Uint8Array(t),e.contents.set(r)}},resizeFileStorage(e,t){if(e.usedBytes!=t){var n=e.contents;e.contents=new Uint8Array(t),e.contents.set(n.subarray(0,Math.min(t,e.usedBytes))),e.usedBytes=t}},node_ops:{getattr(e){var t={};return t.dev=I.isChrdev(e.mode)?e.id:1,t.ino=e.id,t.mode=e.mode,t.nlink=1,t.uid=0,t.gid=0,t.rdev=e.rdev,t.size=I.isDir(e.mode)?4096:I.isFile(e.mode)?e.usedBytes:I.isLink(e.mode)?e.link.length:0,t.atime=new Date(e.atime),t.mtime=new Date(e.mtime),t.ctime=new Date(e.ctime),t.blksize=4096,t.blocks=Math.ceil(t.size/t.blksize),t},setattr(e,t){for(let n of[`mode`,`atime`,`mtime`,`ctime`])t[n]!=null&&(e[n]=t[n]);t.size!==void 0&&N.resizeFileStorage(e,t.size)},lookup(e,t){throw N.doesNotExistError||(N.doesNotExistError=new I.ErrnoError(44),N.doesNotExistError.stack=`<generic error, no stack>`),N.doesNotExistError},mknod(e,t,n,r){return N.createNode(e,t,n,r)},rename(e,t,n){var r;try{r=I.lookupNode(t,n)}catch{}if(r){if(I.isDir(e.mode))for(var i in r.contents)throw new I.ErrnoError(55);I.hashRemoveNode(r)}delete e.parent.contents[e.name],t.contents[n]=e,e.name=n,t.ctime=t.mtime=e.parent.ctime=e.parent.mtime=Date.now()},unlink(e,t){delete e.contents[t],e.ctime=e.mtime=Date.now()},rmdir(e,t){for(var n in I.lookupNode(e,t).contents)throw new I.ErrnoError(55);delete e.contents[t],e.ctime=e.mtime=Date.now()},readdir(e){return[`.`,`..`,...Object.keys(e.contents)]},symlink(e,t,n){var r=N.createNode(e,t,41471,0);return r.link=n,r},readlink(e){if(!I.isLink(e.mode))throw new I.ErrnoError(28);return e.link}},stream_ops:{read(e,t,n,r,i){var a=e.node.contents;if(i>=e.node.usedBytes)return 0;var o=Math.min(e.node.usedBytes-i,r);return t.set(a.subarray(i,i+o),n),o},write(e,t,n,r,i,a){if(t.buffer===C.buffer&&(a=!1),!r)return 0;var o=e.node;return o.mtime=o.ctime=Date.now(),a?(o.contents=t.subarray(n,n+r),o.usedBytes=r):o.usedBytes===0&&i===0?(o.contents=t.slice(n,n+r),o.usedBytes=r):(N.expandFileStorage(o,i+r),o.contents.set(t.subarray(n,n+r),i),o.usedBytes=Math.max(o.usedBytes,i+r)),r},llseek(e,t,n){var r=t;if(n===1?r+=e.position:n===2&&I.isFile(e.node.mode)&&(r+=e.node.usedBytes),r<0)throw new I.ErrnoError(28);return r},mmap(e,t,n,r,i){if(!I.isFile(e.node.mode))throw new I.ErrnoError(43);var a,o,s=e.node.contents;if(!(i&2)&&s.buffer===C.buffer)o=!1,a=s.byteOffset;else{if(o=!0,a=ye(t),!a)throw new I.ErrnoError(48);s&&((n>0||n+t<s.length)&&(s=s.subarray?s.subarray(n,n+t):Array.prototype.slice.call(s,n,n+t)),C.set(s,a))}return{ptr:a,allocated:o}},msync(e,t,n,r,i){return N.stream_ops.write(e,t,0,r,n,!1),0}}},be=e=>{if(typeof e!=`string`)return e;var t={r:0,"r+":2,w:577,"w+":578,a:1089,"a+":1090}[e];if(t===void 0)throw Error(`Unknown file open mode: ${e}`);return t},xe=e=>(typeof e==`string`&&(e=A(e,!0)),e.subarray||(e=new Uint8Array(e)),e),P=(e,t)=>{var n=0;return e&&(n|=365),t&&(n|=146),n},Se=async e=>{var t=await u(e);return new Uint8Array(t)},Ce=(...e)=>I.createDataFile(...e),we=e=>e,Te=null,Ee=async()=>Te,F=0,De=null,Oe=e=>{F--,t.monitorRunDependencies?.(F),F||De()},ke=e=>{F||(Te=new Promise(e=>De=e)),F++,t.monitorRunDependencies?.(F)},Ae=[],je=async(e,t)=>{typeof Browser<`u`&&Browser.init();for(var n of Ae)if(n.canHandle(t))return n.handle(e,t);return e},Me=async(e,t,n,r,i,a,o,s)=>{var c=t?E.resolve(T.join2(e,t)):e,l=we(`cp ${c}`);ke(l);try{var u=n;typeof n==`string`&&(u=await Se(n)),u=await je(u,c),s?.(),a||Ce(e,t,u,r,i,o)}finally{Oe(l)}},Ne=(e,t,n,r,i,a,o,s,c,l)=>{Me(e,t,n,r,i,s,c,l).then(a).catch(o)},I={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:`/`,initialized:!1,ignorePermissions:!0,filesystems:null,syncFSRequests:0,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(this.flags&2097155)!=1}get isWrite(){return!!(this.flags&2097155)}get isAppend(){return this.flags&1024}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,t,n,r){e||=this,this.parent=e,this.mount=e.mount,this.id=I.nextInode++,this.name=t,this.mode=n,this.rdev=r,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 I.isDir(this.mode)}get isDevice(){return I.isChrdev(this.mode)}addListener(e,t=!1){var n={cb:e,exclusive:t},r=this.listeners??=new Set;return r.add(n),{listeners:r,entry:n}}notifyListeners(e){if(this.listeners){var t;for(var n of this.listeners)n.exclusive?(t||=[]).push(n):n.cb(e);if(t){var r=(this.exclTurn||0)%t.length;this.exclTurn=r+1,t[r].cb(e)}}}},lookupPath(e,t={}){if(!e)throw new I.ErrnoError(44);t.follow_mount??=!0,T.isAbs(e)||(e=I.cwd()+`/`+e);linkloop:for(var n=0;n<40;n++){for(var r=e.split(`/`).filter(e=>!!e),i=I.root,a=`/`,o=0;o<r.length;o++){var s=o===r.length-1;if(s&&t.parent)break;if(r[o]!==`.`){if(r[o]===`..`){if(a=T.dirname(a),I.isRoot(i)){e=a+`/`+r.slice(o+1).join(`/`),n--;continue linkloop}i=i.parent;continue}a=T.join2(a,r[o]);try{i=I.lookupNode(i,r[o])}catch(e){if(e?.errno===44&&s&&t.noent_okay)return{path:a};throw e}if(I.isMountpoint(i)&&(!s||t.follow_mount)&&(i=i.mounted.root),I.isLink(i.mode)&&(!s||t.follow)){if(!i.node_ops.readlink)throw new I.ErrnoError(52);var c=i.node_ops.readlink(i);T.isAbs(c)||(c=T.dirname(a)+`/`+c),e=c+`/`+r.slice(o+1).join(`/`);continue linkloop}}}return{path:a,node:i}}throw new I.ErrnoError(32)},getPath(e){for(var t;;){if(I.isRoot(e)){var n=e.mount.mountpoint;return t?n[n.length-1]===`/`?n+t:`${n}/${t}`:n}t=t?`${e.name}/${t}`:e.name,e=e.parent}},hashName(e,t){for(var n=0,r=0;r<t.length;r++)n=(n<<5)-n+t.charCodeAt(r)|0;return(e+n>>>0)%I.nameTable.length},hashAddNode(e){var t=I.hashName(e.parent.id,e.name);e.name_next=I.nameTable[t],I.nameTable[t]=e},hashRemoveNode(e){var t=I.hashName(e.parent.id,e.name);if(I.nameTable[t]===e)I.nameTable[t]=e.name_next;else for(var n=I.nameTable[t];n;){if(n.name_next===e){n.name_next=e.name_next;break}n=n.name_next}},lookupNode(e,t){var n=I.mayLookup(e);if(n)throw new I.ErrnoError(n);for(var r=I.hashName(e.id,t),i=I.nameTable[r];i;i=i.name_next){var a=i.name;if(i.parent.id===e.id&&a===t)return i}return I.lookup(e,t)},createNode(e,t,n,r){var i=new I.FSNode(e,t,n,r);return I.hashAddNode(i),i},destroyNode(e){I.hashRemoveNode(e)},isRoot(e){return e===e.parent},isMountpoint(e){return!!e.mounted},isFile(e){return(e&61440)==32768},isDir(e){return(e&61440)==16384},isLink(e){return(e&61440)==40960},isChrdev(e){return(e&61440)==8192},isBlkdev(e){return(e&61440)==24576},isFIFO(e){return(e&61440)==4096},isSocket(e){return(e&49152)==49152},flagsToPermissionString(e){var t=[`r`,`w`,`rw`][e&3];return e&512&&(t+=`w`),t},nodePermissions(e,t){return I.ignorePermissions?0:t.includes(`r`)&&!(e.mode&292)||t.includes(`w`)&&!(e.mode&146)||t.includes(`x`)&&!(e.mode&73)?2:0},mayLookup(e){return I.isDir(e.mode)?I.nodePermissions(e,`x`)||(e.node_ops.lookup?0:2):54},mayCreate(e,t){if(!I.isDir(e.mode))return 54;try{return I.lookupNode(e,t),20}catch{}return I.nodePermissions(e,`wx`)},mayDelete(e,t,n){var r;try{r=I.lookupNode(e,t)}catch(e){return e.errno}var i=I.nodePermissions(e,`wx`);if(i)return i;if(n){if(!I.isDir(r.mode))return 54;if(I.isRoot(r)||I.getPath(r)===I.cwd())return 10}else if(I.isDir(r.mode))return 31;return 0},mayOpen(e,t){if(!e)return 44;if(I.isLink(e.mode))return 32;var n=I.flagsToPermissionString(t);return I.isDir(e.mode)&&(n!==`r`||t&576)?31:I.nodePermissions(e,n)},checkOpExists(e,t){if(!e)throw new I.ErrnoError(t);return e},MAX_OPEN_FDS:4096,nextfd(){for(var e=0;e<=I.MAX_OPEN_FDS;e++)if(!I.streams[e])return e;throw new I.ErrnoError(33)},getStreamChecked(e){var t=I.getStream(e);if(!t)throw new I.ErrnoError(8);return t},getStream:e=>I.streams[e],createStream(e,t=-1){return e=Object.assign(new I.FSStream,e),t==-1&&(t=I.nextfd()),e.fd=t,I.streams[t]=e,e},closeStream(e){I.streams[e]=null},dupStream(e,t=-1){var n=I.createStream(e,t);return n.stream_ops?.dup?.(n),n},doSetAttr(e,t,n){var r=e?.stream_ops.setattr,i=r?e:t;r??=t.node_ops.setattr,I.checkOpExists(r,63);try{r(i,n)}catch(e){throw e instanceof RangeError?new I.ErrnoError(22):e}},chrdev_stream_ops:{open(e){e.stream_ops=I.getDevice(e.node.rdev).stream_ops,e.stream_ops.open?.(e)},llseek(){throw new I.ErrnoError(70)}},major:e=>e>>8,minor:e=>e&255,makedev:(e,t)=>e<<8|t,registerDevice(e,t){I.devices[e]={stream_ops:t}},getDevice:e=>I.devices[e],getMounts(e){for(var t=[],n=[e];n.length;){var r=n.pop();t.push(r),n.push(...r.mounts)}return t},syncfs(e,t){typeof e==`function`&&(t=e,e=!1),I.syncFSRequests++,I.syncFSRequests>1&&m(`warning: ${I.syncFSRequests} FS.syncfs operations in flight at once, probably just doing extra work`);var n=I.getMounts(I.root.mount),r=0;function i(e){return I.syncFSRequests--,t(e)}function a(e){if(e)return a.errored?void 0:(a.errored=!0,i(e));++r>=n.length&&i(null)}for(var o of n)o.type.syncfs?o.type.syncfs(o,e,a):a(null)},mount(e,t,n){var r=n===`/`,i=!n,a;if(r&&I.root)throw new I.ErrnoError(10);if(!r&&!i){var o=I.lookupPath(n,{follow_mount:!1});if(n=o.path,a=o.node,I.isMountpoint(a))throw new I.ErrnoError(10);if(!I.isDir(a.mode))throw new I.ErrnoError(54)}var s={type:e,opts:t,mountpoint:n,mounts:[]},c=e.mount(s);return c.mount=s,s.root=c,r?I.root=c:a&&(a.mounted=s,a.mount&&a.mount.mounts.push(s)),c},unmount(e){var t=I.lookupPath(e,{follow_mount:!1});if(!I.isMountpoint(t.node))throw new I.ErrnoError(28);var n=t.node,r=n.mounted,i=I.getMounts(r);for(var[a,o]of Object.entries(I.nameTable))for(;o;){var s=o.name_next;i.includes(o.mount)&&I.destroyNode(o),o=s}n.mounted=null;var c=n.mount.mounts.indexOf(r);n.mount.mounts.splice(c,1)},lookup(e,t){return e.node_ops.lookup(e,t)},mknod(e,t,n){var r=I.lookupPath(e,{parent:!0}).node,i=T.basename(e);if(!i)throw new I.ErrnoError(28);if(i===`.`||i===`..`)throw new I.ErrnoError(20);var a=I.mayCreate(r,i);if(a)throw new I.ErrnoError(a);if(!r.node_ops.mknod)throw new I.ErrnoError(63);return r.node_ops.mknod(r,i,t,n)},statfs(e){return I.statfsNode(I.lookupPath(e,{follow:!0}).node)},statfsStream(e){return I.statfsNode(e.node)},statfsNode(e){var t={bsize:4096,frsize:4096,blocks:1e6,bfree:5e5,bavail:5e5,files:I.nextInode,ffree:I.nextInode-1,fsid:42,flags:2,namelen:255};return e.node_ops.statfs&&Object.assign(t,e.node_ops.statfs(e.mount.opts.root)),t},create(e,t=438){return t&=4095,t|=32768,I.mknod(e,t,0)},mkdir(e,t=511){return t&=1023,t|=16384,I.mknod(e,t,0)},mkdirTree(e,t){var n=e.split(`/`),r=``;for(var i of n)if(i){(r||T.isAbs(e))&&(r+=`/`),r+=i;try{I.mkdir(r,t)}catch(e){if(e.errno!=20)throw e}}},mkdev(e,t,n){return n===void 0&&(n=t,t=438),t|=8192,I.mknod(e,t,n)},symlink(e,t){if(!E.resolve(e))throw new I.ErrnoError(44);var n=I.lookupPath(t,{parent:!0}).node;if(!n)throw new I.ErrnoError(44);var r=T.basename(t),i=I.mayCreate(n,r);if(i)throw new I.ErrnoError(i);if(!n.node_ops.symlink)throw new I.ErrnoError(63);return n.node_ops.symlink(n,r,e)},link(e,t,n){var r=I.lookupPath(t,{parent:!0}).node;if(!r)throw new I.ErrnoError(44);var i=T.basename(t),a=I.mayCreate(r,i);if(a)throw new I.ErrnoError(a);if(!r.node_ops.link)throw new I.ErrnoError(34);return r.node_ops.link(r,i,e,n)},rename(e,t){var n=T.dirname(e),r=T.dirname(t),i=T.basename(e),a=T.basename(t),o=I.lookupPath(e,{parent:!0}),s=o.node,c;if(o=I.lookupPath(t,{parent:!0}),c=o.node,!s||!c)throw new I.ErrnoError(44);if(s.mount!==c.mount)throw new I.ErrnoError(75);var l=I.lookupNode(s,i),u=E.relative(e,r);if(u.charAt(0)!==`.`)throw new I.ErrnoError(28);if(u=E.relative(t,n),u.charAt(0)!==`.`)throw new I.ErrnoError(55);var d;try{d=I.lookupNode(c,a)}catch{}if(l!==d){var f=I.isDir(l.mode),p=I.mayDelete(s,i,f);if(p||(p=d?I.mayDelete(c,a,f):I.mayCreate(c,a),p))throw new I.ErrnoError(p);if(!s.node_ops.rename)throw new I.ErrnoError(63);if(I.isMountpoint(l)||d&&I.isMountpoint(d))throw new I.ErrnoError(10);if(c!==s&&(p=I.nodePermissions(s,`w`),p))throw new I.ErrnoError(p);I.hashRemoveNode(l);try{s.node_ops.rename(l,c,a),l.parent=c}catch(e){throw e}finally{I.hashAddNode(l)}}},rmdir(e){var t=I.lookupPath(e,{parent:!0}).node,n=T.basename(e),r=I.lookupNode(t,n),i=I.mayDelete(t,n,!0);if(i)throw new I.ErrnoError(i);if(!t.node_ops.rmdir)throw new I.ErrnoError(63);if(I.isMountpoint(r))throw new I.ErrnoError(10);t.node_ops.rmdir(t,n),I.destroyNode(r)},readdir(e){var t=I.lookupPath(e,{follow:!0}).node;return I.checkOpExists(t.node_ops.readdir,54)(t)},unlink(e){var t=I.lookupPath(e,{parent:!0}).node;if(!t)throw new I.ErrnoError(44);var n=T.basename(e),r=I.lookupNode(t,n),i=I.mayDelete(t,n,!1);if(i)throw new I.ErrnoError(i);if(!t.node_ops.unlink)throw new I.ErrnoError(63);if(I.isMountpoint(r))throw new I.ErrnoError(10);t.node_ops.unlink(t,n),I.destroyNode(r)},readlink(e){var t=I.lookupPath(e).node;if(!t)throw new I.ErrnoError(44);if(!t.node_ops.readlink)throw new I.ErrnoError(28);return t.node_ops.readlink(t)},stat(e,t){var n=I.lookupPath(e,{follow:!t}).node;return I.checkOpExists(n.node_ops.getattr,63)(n)},fstat(e){var t=I.getStreamChecked(e),n=t.node,r=t.stream_ops.getattr,i=r?t:n;return r??=n.node_ops.getattr,I.checkOpExists(r,63),r(i)},lstat(e){return I.stat(e,!0)},doChmod(e,t,n,r){I.doSetAttr(e,t,{mode:n&4095|t.mode&-4096,ctime:Date.now(),dontFollow:r})},chmod(e,t,n){var r=typeof e==`string`?I.lookupPath(e,{follow:!n}).node:e;I.doChmod(null,r,t,n)},lchmod(e,t){I.chmod(e,t,!0)},fchmod(e,t){var n=I.getStreamChecked(e);I.doChmod(n,n.node,t,!1)},doChown(e,t,n){I.doSetAttr(e,t,{timestamp:Date.now(),dontFollow:n})},chown(e,t,n,r){var i=typeof e==`string`?I.lookupPath(e,{follow:!r}).node:e;I.doChown(null,i,r)},lchown(e,t,n){I.chown(e,t,n,!0)},fchown(e,t,n){var r=I.getStreamChecked(e);I.doChown(r,r.node,!1)},doTruncate(e,t,n){if(I.isDir(t.mode))throw new I.ErrnoError(31);if(!I.isFile(t.mode))throw new I.ErrnoError(28);var r=I.nodePermissions(t,`w`);if(r)throw new I.ErrnoError(r);I.doSetAttr(e,t,{size:n,timestamp:Date.now()})},truncate(e,t){if(t<0)throw new I.ErrnoError(28);var n=typeof e==`string`?I.lookupPath(e,{follow:!0}).node:e;I.doTruncate(null,n,t)},ftruncate(e,t){var n=I.getStreamChecked(e);if(t<0||!(n.flags&2097155))throw new I.ErrnoError(28);I.doTruncate(n,n.node,t)},utime(e,t,n,r){var i=I.lookupPath(e,{follow:!r});I.doSetAttr(null,i.node,{atime:t,mtime:n,dontFollow:r})},open(e,t,n=438){if(e===``)throw new I.ErrnoError(44);t=be(t),n=t&64?n&4095|32768:0;var r,i;if(typeof e==`object`)r=e;else{i=e.endsWith(`/`);var a=I.lookupPath(e,{follow:!(t&131072),noent_okay:!0});r=a.node,e=a.path}var o=!1;if(t&64){if(r){if(t&128)throw new I.ErrnoError(20)}else if(i)throw new I.ErrnoError(31);else r=I.mknod(e,n|511,0),o=!0}if(!r)throw new I.ErrnoError(44);if(I.isChrdev(r.mode)&&(t&=-513),t&65536&&!I.isDir(r.mode))throw new I.ErrnoError(54);if(!o){var s=I.mayOpen(r,t);if(s)throw new I.ErrnoError(s)}t&512&&!o&&I.truncate(r,0),t&=-131713;var c=I.createStream({node:r,path:I.getPath(r),flags:t,seekable:!0,position:0,stream_ops:r.stream_ops,ungotten:[],error:!1});return c.stream_ops.open&&c.stream_ops.open(c),o&&I.chmod(r,n&511),c},close(e){if(I.isClosed(e))throw new I.ErrnoError(8);e.getdents&&=null,e.node?.notifyListeners(32);try{e.stream_ops.close&&e.stream_ops.close(e)}catch(e){throw e}finally{I.closeStream(e.fd)}e.fd=null},isClosed(e){return e.fd===null},llseek(e,t,n){if(I.isClosed(e))throw new I.ErrnoError(8);if(!e.seekable||!e.stream_ops.llseek)throw new I.ErrnoError(70);if(n!=0&&n!=1&&n!=2)throw new I.ErrnoError(28);return e.position=e.stream_ops.llseek(e,t,n),e.ungotten=[],e.position},read(e,t,n,r,i){if(r<0||i<0)throw new I.ErrnoError(28);if(I.isClosed(e)||(e.flags&2097155)==1)throw new I.ErrnoError(8);if(I.isDir(e.node.mode))throw new I.ErrnoError(31);if(!e.stream_ops.read)throw new I.ErrnoError(28);var a=i!==void 0;if(!a)i=e.position;else if(!e.seekable)throw new I.ErrnoError(70);var o=e.stream_ops.read(e,t,n,r,i);return a||(e.position+=o),o},write(e,t,n,r,i,a){if(r<0||i<0)throw new I.ErrnoError(28);if(I.isClosed(e)||!(e.flags&2097155))throw new I.ErrnoError(8);if(I.isDir(e.node.mode))throw new I.ErrnoError(31);if(!e.stream_ops.write)throw new I.ErrnoError(28);e.seekable&&e.flags&1024&&I.llseek(e,0,2);var o=i!==void 0;if(!o)i=e.position;else if(!e.seekable)throw new I.ErrnoError(70);var s=e.stream_ops.write(e,t,n,r,i,a);return o||(e.position+=s),s},mmap(e,t,n,r,i){if(r&2&&!(i&2)&&(e.flags&2097155)!=2||(e.flags&2097155)==1)throw new I.ErrnoError(2);if(!e.stream_ops.mmap)throw new I.ErrnoError(43);if(!t)throw new I.ErrnoError(28);return e.stream_ops.mmap(e,t,n,r,i)},msync(e,t,n,r,i){return e.stream_ops.msync?e.stream_ops.msync(e,t,n,r,i):0},ioctl(e,t,n){if(!e.stream_ops.ioctl)throw new I.ErrnoError(59);return e.stream_ops.ioctl(e,t,n)},readFile(e,t={}){t.flags=t.flags??0,t.encoding=t.encoding??`binary`,t.encoding!==`utf8`&&t.encoding!==`binary`&&x(`Invalid encoding type "${t.encoding}"`);var n=I.open(e,t.flags),r=I.stat(e).size,i=new Uint8Array(r);return I.read(n,i,0,r,0),t.encoding===`utf8`&&(i=D(i)),I.close(n),i},writeFile(e,t,n={}){n.flags=n.flags??577;var r=I.open(e,n.flags,n.mode);t=xe(t),I.write(r,t,0,t.byteLength,void 0,n.canOwn),I.close(r)},cwd:()=>I.currentPath,chdir(e){var t=I.lookupPath(e,{follow:!0});if(t.node===null)throw new I.ErrnoError(44);if(!I.isDir(t.node.mode))throw new I.ErrnoError(54);var n=I.nodePermissions(t.node,`x`);if(n)throw new I.ErrnoError(n);I.currentPath=t.path},createDefaultDirectories(){I.mkdir(`/tmp`),I.mkdir(`/home`),I.mkdir(`/home/web_user`)},createDefaultDevices(){I.mkdir(`/dev`),I.registerDevice(I.makedev(1,3),{read:()=>0,write:(e,t,n,r,i)=>r,llseek:()=>0}),I.mkdev(`/dev/null`,I.makedev(1,3)),j.register(I.makedev(5,0),j.default_tty_ops),j.register(I.makedev(6,0),j.default_tty1_ops),I.mkdev(`/dev/tty`,I.makedev(5,0)),I.mkdev(`/dev/tty1`,I.makedev(6,0));var e=new Uint8Array(1024),t=0,n=()=>(t===0&&(fe(e),t=e.byteLength),e[--t]);I.createDevice(`/dev`,`random`,n),I.createDevice(`/dev`,`urandom`,n),I.mkdir(`/dev/shm`),I.mkdir(`/dev/shm/tmp`)},createSpecialDirectories(){I.mkdir(`/proc`);var e=I.mkdir(`/proc/self`);I.mkdir(`/proc/self/fd`),I.mount({mount(){var t=I.createNode(e,`fd`,16895,73);return t.stream_ops={llseek:N.stream_ops.llseek},t.node_ops={lookup(e,t){var n=+t,r=I.getStreamChecked(n),i={parent:null,mount:{mountpoint:`fake`},node_ops:{readlink:()=>r.path},id:n+1};return i.parent=i,i},readdir(){return Array.from(I.streams.entries()).filter(([e,t])=>t).map(([e,t])=>e.toString())}},t}},{},`/proc/self/fd`)},createStandardStreams(e,t,n){e?I.createDevice(`/dev`,`stdin`,e):I.symlink(`/dev/tty`,`/dev/stdin`),t?I.createDevice(`/dev`,`stdout`,null,t):I.symlink(`/dev/tty`,`/dev/stdout`),n?I.createDevice(`/dev`,`stderr`,null,n):I.symlink(`/dev/tty1`,`/dev/stderr`),I.open(`/dev/stdin`,0),I.open(`/dev/stdout`,1),I.open(`/dev/stderr`,1)},staticInit(){I.nameTable=Array(4096),I.mount(N,{},`/`),I.createDefaultDirectories(),I.createDefaultDevices(),I.createSpecialDirectories(),I.filesystems={MEMFS:N}},init(e,n,r){I.initialized=!0,e??=t.stdin,n??=t.stdout,r??=t.stderr,I.createStandardStreams(e,n,r)},quit(){I.initialized=!1;for(var e of I.streams)e&&I.close(e)},findObject(e,t){var n=I.analyzePath(e,t);return n.exists?n.object:null},analyzePath(e,t){try{var n=I.lookupPath(e,{follow:!t});e=n.path}catch{}var r={isRoot:!1,exists:!1,error:0,name:null,path:null,object:null,parentExists:!1,parentPath:null,parentObject:null};try{var n=I.lookupPath(e,{parent:!0});r.parentExists=!0,r.parentPath=n.path,r.parentObject=n.node,r.name=T.basename(e),n=I.lookupPath(e,{follow:!t}),r.exists=!0,r.path=n.path,r.object=n.node,r.name=n.node.name,r.isRoot=n.path===`/`}catch(e){r.error=e.errno}return r},createPath(e,t,n,r){e=typeof e==`string`?e:I.getPath(e);for(var i=t.split(`/`).reverse();i.length;){var a=i.pop();if(a){var o=T.join2(e,a);try{I.mkdir(o)}catch(e){if(e.errno!=20)throw e}e=o}}return o},createFile(e,t,n,r,i){var a=T.join2(typeof e==`string`?e:I.getPath(e),t),o=P(r,i);return I.create(a,o)},createDataFile(e,t,n,r,i,a){var o=t;e&&(e=typeof e==`string`?e:I.getPath(e),o=t?T.join2(e,t):e);var s=P(r,i),c=I.create(o,s);if(n){n=xe(n),I.chmod(c,s|146);var l=I.open(c,577);I.write(l,n,0,n.length,0,a),I.close(l),I.chmod(c,s)}},createDevice(e,t,n,r){var i=T.join2(typeof e==`string`?e:I.getPath(e),t),a=P(!!n,!!r);I.createDevice.major??=64;var o=I.makedev(I.createDevice.major++,0);return I.registerDevice(o,{open(e){e.seekable=!1},close(e){r?.buffer?.length&&r(10)},read(e,t,r,i,a){for(var o=0,s=0;s<i;s++){var c;try{c=n()}catch{throw new I.ErrnoError(29)}if(c===void 0&&o===0)throw new I.ErrnoError(6);if(c==null)break;o++,t[r+s]=c}return o&&(e.node.atime=Date.now()),o},write(e,t,n,i,a){for(var o=0;o<i;o++)try{r(t[n+o])}catch{throw new I.ErrnoError(29)}return i&&(e.node.mtime=e.node.ctime=Date.now()),o}}),I.mkdev(i,a,o)},forceLoadFile(e){if(e.isDevice||e.isFolder||e.link||e.contents)return!0;if(globalThis.XMLHttpRequest)x(`Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.`);else try{e.contents=d(e.url)}catch{throw new I.ErrnoError(29)}},createLazyFile(e,t,n,i,a){class o{lengthKnown=!1;chunks=[];get(e){if(!(e>this.length-1||e<0)){var t=e%this.chunkSize,n=e/this.chunkSize|0;return this.getter(n)[t]}}setDataGetter(e){this.getter=e}cacheLength(){var e=new XMLHttpRequest;e.open(`HEAD`,n,!1),e.send(null),e.status>=200&&e.status<300||e.status===304||x(`Couldn't load ${n}. Status: ${e.status}`);var t=Number(e.getResponseHeader(`Content-length`)),r,i=(r=e.getResponseHeader(`Accept-Ranges`))&&r===`bytes`,a=(r=e.getResponseHeader(`Content-Encoding`))&&r===`gzip`,o=1048576;i||(o=t);var s=(e,r)=>{e>r&&x(`invalid range (${e}, ${r}) or no bytes requested!`),r>t-1&&x(`only ${t} bytes available! programmer error!`);var i=new XMLHttpRequest;return i.open(`GET`,n,!1),t!==o&&i.setRequestHeader(`Range`,`bytes=${e}-${r}`),i.responseType=`arraybuffer`,i.overrideMimeType&&i.overrideMimeType(`text/plain; charset=x-user-defined`),i.send(null),i.status>=200&&i.status<300||i.status===304||x(`Couldn't load ${n}. Status: ${i.status}`),i.response===void 0?A(i.responseText??``,!0):new Uint8Array(i.response||[])},c=this;c.setDataGetter(e=>{var n=e*o,r=(e+1)*o-1;return r=Math.min(r,t-1),c.chunks[e]===void 0&&(c.chunks[e]=s(n,r)),c.chunks[e]===void 0&&x(`doXHR failed!`),c.chunks[e]}),(a||!t)&&(o=t=1,t=this.getter(0).length,o=t,p(`LazyFiles on gzip forces download of the whole file when length is accessed`)),this._length=t,this._chunkSize=o,this.lengthKnown=!0}get length(){return this.lengthKnown||this.cacheLength(),this._length}get chunkSize(){return this.lengthKnown||this.cacheLength(),this._chunkSize}}if(globalThis.XMLHttpRequest){r||x(`Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc`);var s={isDevice:!1,contents:new o}}else var s={isDevice:!1,url:n};var c=I.createFile(e,t,s,i,a);s.contents?c.contents=s.contents:s.url&&(c.contents=null,c.url=s.url),Object.defineProperties(c,{usedBytes:{get:function(){return this.contents.length}}});var l={};for(let[e,t]of Object.entries(c.stream_ops))l[e]=(...e)=>(I.forceLoadFile(c),t(...e));function u(e,t,n,r,i){var a=e.node.contents;if(i>=a.length)return 0;var o=Math.min(a.length-i,r);if(a.slice)for(var s=0;s<o;s++)t[n+s]=a[i+s];else for(var s=0;s<o;s++)t[n+s]=a.get(i+s);return o}return l.read=(e,t,n,r,i)=>(I.forceLoadFile(c),u(e,t,n,r,i)),l.mmap=(e,t,n,r,i)=>{I.forceLoadFile(c);var a=ye(t);if(!a)throw new I.ErrnoError(48);return u(e,C,a,t,n),{ptr:a,allocated:!0}},c.stream_ops=l,c}},Pe=(e,t,n)=>e?D(M,e,t,n):``,L,R,z,B={currentUmask:18,calculateAt(e,t,n){if(T.isAbs(t))return t;var r=e===-100?I.cwd():B.getStreamFromFD(e).path;if(t.length==0){if(!n)throw new I.ErrnoError(44);return r}return r+`/`+t},writeStat(e,t){R[e>>2]=t.dev,R[e+4>>2]=t.mode,R[e+8>>2]=t.nlink,R[e+12>>2]=t.uid,R[e+16>>2]=t.gid,R[e+20>>2]=t.rdev,z[e+24>>3]=BigInt(t.size),L[e+32>>2]=4096,L[e+36>>2]=t.blocks;var n=t.atime.getTime(),r=t.mtime.getTime(),i=t.ctime.getTime();return z[e+40>>3]=BigInt(Math.floor(n/1e3)),R[e+48>>2]=n%1e3*1e3*1e3,z[e+56>>3]=BigInt(Math.floor(r/1e3)),R[e+64>>2]=r%1e3*1e3*1e3,z[e+72>>3]=BigInt(Math.floor(i/1e3)),R[e+80>>2]=i%1e3*1e3*1e3,z[e+88>>3]=BigInt(t.ino),0},writeStatFs(e,t){R[e+4>>2]=t.bsize,R[e+60>>2]=t.bsize,z[e+8>>3]=BigInt(t.blocks),z[e+16>>3]=BigInt(t.bfree),z[e+24>>3]=BigInt(t.bavail),z[e+32>>3]=BigInt(t.files),z[e+40>>3]=BigInt(t.ffree),R[e+48>>2]=t.fsid,R[e+64>>2]=t.flags,R[e+56>>2]=t.namelen},doMsync(e,t,n,r,i){if(!I.isFile(t.node.mode))throw new I.ErrnoError(43);if(r&2)return 0;var a=M.subarray(e,e+n);I.msync(t,a,i,n,r)},getStreamFromFD(e){return I.getStreamChecked(e)},varargs:void 0,getStr(e){return Pe(e)}};function Fe(e,t){try{return e=B.getStr(e),I.chmod(e,t),0}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return-e.errno}}function Ie(e,t,n,r){try{if(t=B.getStr(t),t=B.calculateAt(e,t),n&-8)return-28;var i=I.lookupPath(t,{follow:!0}).node;if(!i)return-44;var a=``;return n&4&&(a+=`r`),n&2&&(a+=`w`),n&1&&(a+=`x`),a&&I.nodePermissions(i,a)?-2:0}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return-e.errno}}function Le(e,t){try{return I.fchmod(e,t),0}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return-e.errno}}function Re(e,t,n){try{return I.fchown(e,t,n),0}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return-e.errno}}var V=()=>{var e=L[B.varargs>>2];return B.varargs+=4,e},ze=V,H;function Be(e,t,n){B.varargs=n;try{var r=B.getStreamFromFD(e);switch(t){case 0:var i=V();if(i<0)return-28;for(;I.streams[i];)i++;return I.dupStream(r,i).fd;case 1:case 2:return 0;case 3:return r.flags;case 4:var i=V(),a=289792;return r.flags=r.flags&~a|i&a,0;case 12:var i=ze(),o=0;return H[i+o>>1]=2,0;case 13:case 14:return 0}return-28}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return-e.errno}}function Ve(e,t){try{return B.writeStat(t,I.fstat(e))}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return-e.errno}}var He=9007199254740992,Ue=-9007199254740992,U=e=>e<Ue||e>He?NaN:Number(e);function We(e,t){t=U(t);try{return isNaN(t)?-22:(I.ftruncate(e,t),0)}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return-e.errno}}var W=(e,t,n)=>he(e,M,t,n);function Ge(e,t){try{if(t===0)return-28;var n=I.cwd(),r=k(n)+1;return t<r?-68:(W(n,e,t),r)}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return-e.errno}}var Ke=()=>0;function qe(e,t){try{return e=B.getStr(e),B.writeStat(t,I.lstat(e))}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return-e.errno}}function Je(e,t,n){try{return t=B.getStr(t),t=B.calculateAt(e,t),n&=~B.currentUmask,I.mkdir(t,n,0),0}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return-e.errno}}function Ye(e,t,n,r){try{t=B.getStr(t);var i=r&256,a=r&4096;return r&=-6401,t=B.calculateAt(e,t,a),B.writeStat(n,i?I.lstat(t):I.stat(t))}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return-e.errno}}function Xe(e,t,n,r){B.varargs=r;try{t=B.getStr(t),t=B.calculateAt(e,t);var i=r?V():0;return n&64&&(i&=~B.currentUmask),I.open(t,n,i).fd}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return-e.errno}}function Ze(e,t,n,r){try{if(t=B.getStr(t),t=B.calculateAt(e,t),r<=0)return-28;var i=I.readlink(t),a=Math.min(r,k(i)),o=C[n+a];return W(i,n,r+1),C[n+a]=o,a}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return-e.errno}}function Qe(e){try{return e=B.getStr(e),I.rmdir(e),0}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return-e.errno}}function $e(e,t){try{return e=B.getStr(e),B.writeStat(t,I.stat(e))}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return-e.errno}}function et(e,t,n){try{if(t=B.getStr(t),t=B.calculateAt(e,t),!n)I.unlink(t);else if(n===512)I.rmdir(t);else return-28;return 0}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return-e.errno}}var tt=e=>R[e>>2]+L[e+4>>2]*4294967296;function nt(e,t,n,r){try{var i=r&256;t=B.getStr(t),t=B.calculateAt(e,t,!0);var a=Date.now(),o,s;if(!n)o=a,s=a;else{var c=tt(n),l=L[n+8>>2];o=l==1073741823?a:l==1073741822?null:c*1e3+l/1e6,n+=16,c=tt(n),l=L[n+8>>2],s=l==1073741823?a:l==1073741822?null:c*1e3+l/1e6}return(s??o)!==null&&I.utime(t,o,s,i),0}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return-e.errno}}var rt=e=>e%4==0&&(e%100!=0||e%400==0),it=[0,31,60,91,121,152,182,213,244,274,305,335],at=[0,31,59,90,120,151,181,212,243,273,304,334],ot=e=>(rt(e.getFullYear())?it:at)[e.getMonth()]+e.getDate()-1;function st(e,t){e=U(e);var n=new Date(e*1e3);if(isNaN(n.getTime()))return 1;L[t>>2]=n.getSeconds(),L[t+4>>2]=n.getMinutes(),L[t+8>>2]=n.getHours(),L[t+12>>2]=n.getDate(),L[t+16>>2]=n.getMonth(),L[t+20>>2]=n.getFullYear()-1900,L[t+24>>2]=n.getDay();var r=ot(n)|0;L[t+28>>2]=r,L[t+36>>2]=-(n.getTimezoneOffset()*60);var i=new Date(n.getFullYear(),0,1),a=new Date(n.getFullYear(),6,1).getTimezoneOffset(),o=i.getTimezoneOffset(),s=(a!=o&&n.getTimezoneOffset()==Math.min(o,a))|0;return L[t+32>>2]=s,0}function ct(e,t,n,r,i,a,o){i=U(i);try{var s=B.getStreamFromFD(r),c=I.mmap(s,e,i,t,n),l=c.ptr;return L[a>>2]=c.allocated,R[o>>2]=l,0}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return-e.errno}}function lt(e,t,n,r,i,a){a=U(a);try{var o=B.getStreamFromFD(i);n&2&&B.doMsync(e,o,t,r,a)}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return-e.errno}}var ut=(e,t,n,r)=>{var i=new Date().getFullYear(),a=new Date(i,0,1),o=new Date(i,6,1),s=a.getTimezoneOffset(),c=o.getTimezoneOffset(),l=Math.max(s,c);R[e>>2]=l*60,L[t>>2]=Number(s!=c);var u=e=>{var t=e>=0?`-`:`+`,n=Math.abs(e);return`UTC${t}${String(Math.floor(n/60)).padStart(2,`0`)}${String(n%60).padStart(2,`0`)}`},d=u(s),f=u(c);c<s?(W(d,n,17),W(f,r,17)):(W(d,r,17),W(f,n,17))},dt=()=>performance.now(),ft=()=>Date.now(),pt=1,mt=e=>e>=0&&e<=3;function ht(e,t,n){if(t=U(t),!mt(e))return 28;var r;if(e===0)r=ft();else if(pt)r=dt();else return 52;var i=Math.round(r*1e3*1e3);return z[n>>3]=BigInt(i),0}var gt=()=>2147483648,_t=()=>gt(),vt=e=>{var t=(e-Z.buffer.byteLength+65535)/65536|0;try{return Z.grow(t),y(),1}catch{}},yt=e=>{var t=M.length;e>>>=0;var n=gt();if(e>n)return!1;for(var r=1;r<=4;r*=2){var i=t*(1+.2/r);if(i=Math.min(i,e+100663296),vt(Math.min(n,ve(Math.max(e,i),65536))))return!0}return!1},G={},bt=()=>o,K=()=>{if(!K.strings){var e={USER:`web_user`,LOGNAME:`web_user`,PATH:`/`,PWD:`/`,HOME:`/home/web_user`,LANG:(globalThis.navigator?.language??`C`).replace(`-`,`_`)+`.UTF-8`,_:bt()};for(var t in G)G[t]===void 0?delete e[t]:e[t]=G[t];var n=[];for(var t in e)n.push(`${t}=${e[t]}`);K.strings=n}return K.strings},xt=(e,t)=>{var n=0,r=0;for(var i of K()){var a=t+n;R[e+r>>2]=a,n+=W(i,a,1/0)+1,r+=4}return 0},St=(e,t)=>{var n=K();R[e>>2]=n.length;var r=0;for(var i of n)r+=k(i)+1;return R[t>>2]=r,0};function Ct(e){try{var t=B.getStreamFromFD(e);return I.close(t),0}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return e.errno}}function wt(e,t){try{var n=0,r=0,i=0,a=B.getStreamFromFD(e),o=a.tty?2:I.isDir(a.mode)?3:I.isLink(a.mode)?7:4;return C[t]=o,H[t+2>>1]=i,z[t+8>>3]=BigInt(n),z[t+16>>3]=BigInt(r),0}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return e.errno}}var Tt=(e,t,n,r)=>{for(var i=0,a=0;a<n;a++){var o=R[t>>2],s=R[t+4>>2];t+=8;try{var c=I.read(e,C,o,s,r)}catch(e){if(i>0&&e instanceof I.ErrnoError&&(e.errno==6||e.errno==6))break;throw e}if(c<0)return-1;if(i+=c,c<s)break;r!==void 0&&(r+=c)}return i};function Et(e,t,n,r){try{var i=Tt(B.getStreamFromFD(e),t,n);return R[r>>2]=i,0}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return e.errno}}function Dt(e,t,n,r){t=U(t);try{if(isNaN(t))return 22;var i=B.getStreamFromFD(e);return I.llseek(i,t,n),z[r>>3]=BigInt(i.position),i.getdents&&t===0&&n===0&&(i.getdents=null),0}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return e.errno}}function Ot(e){try{var t=B.getStreamFromFD(e);return t.stream_ops?.fsync?.(t)}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return e.errno}}var kt=(e,t,n,r)=>{if(n==1)return I.write(e,C,R[t>>2],R[t+4>>2],r);for(var i=0,a=0,o=t;a<n;a++,o+=8)i+=R[o+4>>2];for(var s=new Uint8Array(i),c=0,a=0;a<n;a++,t+=8){var l=R[t>>2],u=R[t+4>>2];s.set(M.subarray(l,l+u),c),c+=u}return I.write(e,s,0,i,r)};function At(e,t,n,r){try{var i=kt(B.getStreamFromFD(e),t,n);return R[r>>2]=i,0}catch(e){if(I===void 0||e.name!==`ErrnoError`)throw e;return e.errno}}var q=[],jt=e=>{var t=q[e];return t||(q[e]=t=Q.get(e)),t},Mt=(e,t)=>{if(J)for(var n=e;n<e+t;n++){var r=jt(n);r&&J.set(r,n)}},J,Nt=e=>(J||(J=new WeakMap,Mt(0,Q.length)),J.get(e)||0),Pt=[],Ft=()=>Pt.length?Pt.pop():Q.grow(1),It=(e,t)=>{Q.set(e,t),q[e]=Q.get(e)},Y=e=>{let t=e.length;return[t%128|128,t>>7,...e]},Lt={i:127,p:127,j:126,f:125,d:124,e:111},Rt=e=>Y(Array.from(e,e=>Lt[e])),zt=(e,t)=>{var n=Uint8Array.of(0,97,115,109,1,0,0,0,1,...Y([1,96,...Rt(t.slice(1)),...Rt(t[0]===`v`?``:t[0])]),2,7,1,1,101,1,102,0,0,7,5,1,1,102,0,0),r=new WebAssembly.Module(n);return new WebAssembly.Instance(r,{e:{f:e}}).exports.f},Bt=(e,t)=>{var n=Nt(e);if(n)return n;var r=Ft();try{It(r,e)}catch(n){if(!(n instanceof TypeError))throw n;It(r,zt(e,t))}return J.set(e,r),r};I.createPreloadedFile=Ne,I.preloadFile=Me,I.staticInit(),t.noExitRuntime&&t.noExitRuntime,t.print&&(p=t.print),t.printErr&&(m=t.printErr),t.arguments&&t.arguments,t.thisProgram&&(o=t.thisProgram);var X=t.preInit;if(X)for(typeof X==`function`&&(t.preInit=X=[X]);X.length>0;)X.shift()();t.addFunction=Bt,t.UTF8ToString=Pe,t.stringToUTF8=W,t.lengthBytesUTF8=k;var Vt,Z,Q;function Ht(e){t._sqlite3_initialize=e.sqlite3_initialize,t._sqlite3_vfs_register=e.sqlite3_vfs_register,t._sqlite3_step=e.sqlite3_step,t._sqlite3_column_int64=e.sqlite3_column_int64,t._sqlite3_exec=e.sqlite3_exec,t._sqlite3_finalize=e.sqlite3_finalize,t._sqlite3_prepare_v2=e.sqlite3_prepare_v2,t._sqlite3_column_text=e.sqlite3_column_text,t._sqlite3_errmsg=e.sqlite3_errmsg,t._sqlite3_column_count=e.sqlite3_column_count,t._sqlite3_column_blob=e.sqlite3_column_blob,t._sqlite3_column_bytes=e.sqlite3_column_bytes,t._sqlite3_column_double=e.sqlite3_column_double,t._sqlite3_column_type=e.sqlite3_column_type,t._sqlite3_column_name=e.sqlite3_column_name,t._sqlite3_bind_blob=e.sqlite3_bind_blob,t._sqlite3_bind_double=e.sqlite3_bind_double,t._sqlite3_bind_int=e.sqlite3_bind_int,t._sqlite3_bind_int64=e.sqlite3_bind_int64,t._sqlite3_bind_null=e.sqlite3_bind_null,t._sqlite3_bind_text=e.sqlite3_bind_text,t._sqlite3_last_insert_rowid=e.sqlite3_last_insert_rowid,t._sqlite3_changes=e.sqlite3_changes,t._sqlite3_close=e.sqlite3_close,t._sqlite3_open_v2=e.sqlite3_open_v2,t._malloc=e.malloc,t._free=e.free,Vt=e.emscripten_builtin_memalign,e._emscripten_stack_restore,e._emscripten_stack_alloc,e.emscripten_stack_get_current,Z=e.memory,Q=e.__indirect_function_table}var Ut={__syscall_chmod:Fe,__syscall_faccessat:Ie,__syscall_fchmod:Le,__syscall_fchown32:Re,__syscall_fcntl64:Be,__syscall_fstat64:Ve,__syscall_ftruncate64:We,__syscall_getcwd:Ge,__syscall_geteuid32:Ke,__syscall_lstat64:qe,__syscall_mkdirat:Je,__syscall_newfstatat:Ye,__syscall_openat:Xe,__syscall_readlinkat:Ze,__syscall_rmdir:Qe,__syscall_stat64:$e,__syscall_unlinkat:et,__syscall_utimensat:nt,_localtime_js:st,_mmap_js:ct,_munmap_js:lt,_tzset_js:ut,clock_time_get:ht,emscripten_date_now:ft,emscripten_get_heap_max:_t,emscripten_get_now:dt,emscripten_resize_heap:yt,environ_get:xt,environ_sizes_get:St,fd_close:Ct,fd_fdstat_get:wt,fd_read:Et,fd_seek:Dt,fd_sync:Ot,fd_write:At};async function Wt(){b(),F&&await Ee();var e=t.setStatus;e&&(e(`Running...`),await new Promise(e=>setTimeout(e,1)),setTimeout(e,1,``)),!g&&(ee(),t.onRuntimeInitialized?.(),te())}var $=await ce();return await Wt(),t}const t=BigInt(2**53-1);function n(e){function n(t){let n=e.lengthBytesUTF8(t)+1,r=e._malloc(n);return e.stringToUTF8(t,r,n),r}function r(t,r=!0){let i=r?1:6,a=n(t),o=e._malloc(4),s=e._sqlite3_open_v2(a,o,i,0),c=e.HEAP32[o>>2];if(e._free(a),e._free(o),s!==0){let t=c?e.UTF8ToString(e._sqlite3_errmsg(c)):`sqlite3_open_v2 failed`;throw Error(t)}if(!r){let t=n(`PRAGMA journal_mode=MEMORY`);e._sqlite3_exec(c,t,0,0,0),e._free(t)}return c}function i(t){return e._sqlite3_close(t),null}function a(t,r){let i=n(r),a=e._sqlite3_exec(t,i,0,0,0);if(e._free(i),a!==0)throw Error(e.UTF8ToString(e._sqlite3_errmsg(t)));return null}function o(t,r){for(let i=0;i<r.length;i++){let a=r[i],o=i+1;if(a==null)e._sqlite3_bind_null(t,o);else if(typeof a==`number`)Number.isInteger(a)?e._sqlite3_bind_int(t,o,a):e._sqlite3_bind_double(t,o,a);else if(typeof a==`bigint`)e._sqlite3_bind_int64(t,o,a);else if(typeof a==`string`){let r=n(a);e._sqlite3_bind_text(t,o,r,-1,-1),e._free(r)}else if(a instanceof Uint8Array||a instanceof ArrayBuffer){let n=a instanceof ArrayBuffer?new Uint8Array(a):a,r=e._malloc(n.byteLength);e.HEAPU8.set(n,r),e._sqlite3_bind_blob(t,o,r,n.byteLength,-1),e._free(r)}}}function s(n,r){let i={};for(let a=0;a<r;a++){let r=e.UTF8ToString(e._sqlite3_column_name(n,a)),o=e._sqlite3_column_type(n,a),s=null;if(o===1){let r=e._sqlite3_column_int64(n,a);s=r<=t&&r>=-t?Number(r):r}else if(o===2)s=e._sqlite3_column_double(n,a);else if(o===3)s=e.UTF8ToString(e._sqlite3_column_text(n,a));else if(o===4){let t=e._sqlite3_column_blob(n,a),r=e._sqlite3_column_bytes(n,a);s=e.HEAPU8.slice(t,t+r).buffer}i[r]=s}return i}function c(t,r,i){let a=n(r),s=e._malloc(4),c=e._sqlite3_prepare_v2(t,a,-1,s,0);e._free(a);let l=e.HEAP32[s>>2];if(e._free(s),c!==0)throw Error(e.UTF8ToString(e._sqlite3_errmsg(t)));return o(l,i),l}function l(t,n,r=[]){let i=c(t,n,r),a=e._sqlite3_column_count(i),o=[],l=e._sqlite3_step(i);for(;l===100;)o.push(s(i,a)),l=e._sqlite3_step(i);if(e._sqlite3_finalize(i),l!==101)throw Error(e.UTF8ToString(e._sqlite3_errmsg(t)));return o}function u(t,n,r=[]){let i=c(t,n,r),a=e._sqlite3_step(i);if(e._sqlite3_finalize(i),a!==101&&a!==100)throw Error(e.UTF8ToString(e._sqlite3_errmsg(t)));return{changes:e._sqlite3_changes(t),lastInsertRowid:e._sqlite3_last_insert_rowid(t)}}return{open:r,close:i,exec:a,query:l,run:u}}const r=new Map,i=new Map;let a=1;async function o(e){let{opfsRoot:t,path:n}=e,o=n.replace(/^\//,``).split(`/`),s=o.pop(),c=t;for(let e of o)c=await c.getDirectoryHandle(e,{create:!0});let l=await(await c.getFileHandle(s,{create:!0})).createSyncAccessHandle(),u=a++;return r.set(u,l),i.set(n,u),u}async function s(e){let{opfsRoot:t,path:n,buffer:o}=e,s=n.replace(/^\//,``).split(`/`),c=s.pop(),l=t;for(let e of s)l=await l.getDirectoryHandle(e,{create:!0});let u=await(await l.getFileHandle(c,{create:!0})).createSyncAccessHandle();u.truncate(0),u.write(new Uint8Array(o),{at:0}),u.flush();let d=a++;return r.set(d,u),i.set(n,d),d}function c(e){let t=e._malloc(52);e.HEAP32.fill(0,t>>2,t+52>>2),e.HEAP32[t+0>>2]=1;function n(t){let n=e.HEAP32[t+4>>2];return r.has(n)&&(r.get(n).close(),r.delete(n)),0}function a(t,n,i,a){let o=e.HEAP32[t+4>>2],s=r.get(o);if(s){let t=e.HEAPU8.subarray(n,n+i),r=s.read(t,{at:Number(a)});return r<i?(e.HEAPU8.fill(0,n+r,n+i),522):0}return 10}function o(t,n,i,a){let o=e.HEAP32[t+4>>2],s=r.get(o);if(s){let t=e.HEAPU8.subarray(n,n+i);return s.write(t,{at:Number(a)}),0}return 10}function s(t,n){let i=e.HEAP32[t+4>>2],a=r.get(i);return a?(a.truncate(Number(n)),0):10}function c(t,n){let i=e.HEAP32[t+4>>2],a=r.get(i);return a?(a.flush(),0):10}function l(t,n){let i=e.HEAP32[t+4>>2],a=r.get(i);if(a){let t=a.getSize();return e.HEAP32[n>>2]=t>>>0,e.HEAP32[n+4>>2]=t/4294967296>>>0,0}return 10}function u(e,t){return 0}function d(e,t){return 0}function f(t,n){return e.HEAP32[n>>2]=0,0}function p(e,t,n){return 12}function m(e){return 4096}function h(e){return 5648}e.HEAP32[t+4>>2]=e.addFunction(n,`ii`),e.HEAP32[t+8>>2]=e.addFunction(a,`iiiij`),e.HEAP32[t+12>>2]=e.addFunction(o,`iiiij`),e.HEAP32[t+16>>2]=e.addFunction(s,`iij`),e.HEAP32[t+20>>2]=e.addFunction(c,`iii`),e.HEAP32[t+24>>2]=e.addFunction(l,`iii`),e.HEAP32[t+28>>2]=e.addFunction(u,`iii`),e.HEAP32[t+32>>2]=e.addFunction(d,`iii`),e.HEAP32[t+36>>2]=e.addFunction(f,`iii`),e.HEAP32[t+40>>2]=e.addFunction(p,`iiii`),e.HEAP32[t+44>>2]=e.addFunction(m,`ii`),e.HEAP32[t+48>>2]=e.addFunction(h,`ii`);let g=e._malloc(72);e.HEAP32.fill(0,g>>2,g+72>>2);let _=e.lengthBytesUTF8(`opfs`)+1,v=e._malloc(_);e.stringToUTF8(`opfs`,v,_),e.HEAP32[g+0>>2]=1,e.HEAP32[g+4>>2]=8,e.HEAP32[g+8>>2]=512,e.HEAP32[g+16>>2]=v;function y(n,r,a,o,s){let c=r?e.UTF8ToString(r):``,l=i.get(c)??0;return e.HEAP32[a+0>>2]=t,e.HEAP32[a+4>>2]=l,s&&(e.HEAP32[s>>2]=o),0}function b(t,n,r){let a=n?e.UTF8ToString(n):``;return i.delete(a),0}function ee(t,n,r,a){let o=n?e.UTF8ToString(n):``;return e.HEAP32[a>>2]=+!!i.has(o),0}function te(t,n,r,i){let a=n?e.UTF8ToString(n):``,o=a.startsWith(`/`)?a:`/`+a;return e.stringToUTF8(o,i,r),0}function x(t,n,r){let i=new Uint8Array(n);return crypto.getRandomValues(i),e.HEAPU8.set(i,r),n}function S(e,t){return 0}function ne(t,n){let r=Date.now()/864e5+2440587.5;return new DataView(e.HEAPU8.buffer,n,8).setFloat64(0,r,!0),0}function re(e,t,n){return 0}e.HEAP32[g+24>>2]=e.addFunction(y,`iiiiii`),e.HEAP32[g+28>>2]=e.addFunction(b,`iiii`),e.HEAP32[g+32>>2]=e.addFunction(ee,`iiiii`),e.HEAP32[g+36>>2]=e.addFunction(te,`iiiii`),e.HEAP32[g+56>>2]=e.addFunction(x,`iiii`),e.HEAP32[g+60>>2]=e.addFunction(S,`iii`),e.HEAP32[g+64>>2]=e.addFunction(ne,`iii`),e.HEAP32[g+68>>2]=e.addFunction(re,`iiii`),e._sqlite3_vfs_register(g,1)}let l=null,u=null,d=null;self.onmessage=async function({data:e}){let{id:t,type:n}=e;try{let n=await f(e);self.postMessage({id:t,type:`result`,value:n})}catch(e){self.postMessage({id:t,type:`error`,message:e.message})}};async function f(e){let{type:t,db:n,sql:r,params:i,path:a,readOnly:o}=e;if(t===`init`)return await p(e.wasmBinary);if(t===`load`)return await m(a,e.buffer,o);if(t===`open`)return await h(a,o);if(t===`close`)return d.close(n);if(t===`exec`)return d.exec(n,r);if(t===`query`)return d.query(n,r,i);if(t===`run`)return d.run(n,r,i);throw Error(`unknown type: `+t)}async function p(t){return l||(u=await navigator.storage.getDirectory(),l=await e({wasmBinary:t}),c(l),d=n(l)),null}async function m(e,t,n){if(l)return await s({opfsRoot:u,path:e,buffer:t}),await h(e,n);throw Error(`not initialized, call init() first`)}async function h(e,t){if(l)return i.has(e)||await o({opfsRoot:u,path:e}),d.open(e,t);throw Error(`not initialized, call init() first`)}
|
package/cli.js
CHANGED
|
@@ -51,10 +51,6 @@ const startFolder = positional[0] ? path.resolve(positional[0]) : process.cwd()
|
|
|
51
51
|
const userData = path.join(os.homedir(), ".objectexplorer")
|
|
52
52
|
fs.mkdirSync(userData, { recursive: true })
|
|
53
53
|
|
|
54
|
-
// seed the launch folder as a default root; the server keeps existing folders.json
|
|
55
|
-
// entries whose folderPath still exists, so this just needs to be present on disk.
|
|
56
|
-
seedFolder(userData, startFolder)
|
|
57
|
-
|
|
58
54
|
// an absolute path is not a valid ESM specifier on Windows ("C:\..." parses as scheme
|
|
59
55
|
// "c:"), so the bundle is addressed as a file:// URL; the dev branch stays relative.
|
|
60
56
|
const serverPath = isDev ? "../server/WebServer.js" : pathToFileURL(path.join(bundleDir, "WebServer.mjs")).href
|
|
@@ -68,6 +64,9 @@ const server = await WebServer({
|
|
|
68
64
|
publicDir,
|
|
69
65
|
demoPath,
|
|
70
66
|
userData,
|
|
67
|
+
// the launch folder becomes a root, so it is in the tree on the first run; the server
|
|
68
|
+
// records it in meta.db and finds it there on the next start
|
|
69
|
+
startFolder,
|
|
71
70
|
port,
|
|
72
71
|
portRetry: true,
|
|
73
72
|
})
|
|
@@ -81,34 +80,6 @@ else {
|
|
|
81
80
|
openBrowser(url)
|
|
82
81
|
}
|
|
83
82
|
|
|
84
|
-
function seedFolder(userData, folderPath) {
|
|
85
|
-
const foldersFile = path.join(userData, "folders.json")
|
|
86
|
-
let folders = []
|
|
87
|
-
if (fs.existsSync(foldersFile)) {
|
|
88
|
-
folders = JSON.parse(fs.readFileSync(foldersFile, "utf8"))
|
|
89
|
-
}
|
|
90
|
-
const exists = folders.find(folder => folder.folderPath === folderPath)
|
|
91
|
-
if (exists) {
|
|
92
|
-
}
|
|
93
|
-
else {
|
|
94
|
-
const name = folderName(folderPath)
|
|
95
|
-
folders.push({ name, root: name, path: "/", objectKind: "folder", folderPath })
|
|
96
|
-
fs.writeFileSync(foldersFile, JSON.stringify(folders, null, 4))
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
// path.basename of a drive root ("C:\") or of "/" is empty, so fall back to the path
|
|
101
|
-
// with its separators and colon stripped ("C:\" -> "C", "/" -> "root")
|
|
102
|
-
function folderName(folderPath) {
|
|
103
|
-
const name = path.basename(folderPath)
|
|
104
|
-
if (name) {
|
|
105
|
-
return name
|
|
106
|
-
}
|
|
107
|
-
else {
|
|
108
|
-
return folderPath.replace(/[\\/:]/g, "") || "root"
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
|
|
112
83
|
function openBrowser(target) {
|
|
113
84
|
if (process.platform === "darwin") {
|
|
114
85
|
launch("open", [target])
|
package/package.json
CHANGED