@zenfs/core 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/README.md +293 -0
  2. package/dist/ApiError.d.ts +86 -0
  3. package/dist/ApiError.js +135 -0
  4. package/dist/backends/AsyncMirror.d.ts +102 -0
  5. package/dist/backends/AsyncMirror.js +252 -0
  6. package/dist/backends/AsyncStore.d.ts +166 -0
  7. package/dist/backends/AsyncStore.js +620 -0
  8. package/dist/backends/FolderAdapter.d.ts +52 -0
  9. package/dist/backends/FolderAdapter.js +184 -0
  10. package/dist/backends/InMemory.d.ts +25 -0
  11. package/dist/backends/InMemory.js +46 -0
  12. package/dist/backends/Locked.d.ts +64 -0
  13. package/dist/backends/Locked.js +302 -0
  14. package/dist/backends/OverlayFS.d.ts +120 -0
  15. package/dist/backends/OverlayFS.js +749 -0
  16. package/dist/backends/SyncStore.d.ts +223 -0
  17. package/dist/backends/SyncStore.js +479 -0
  18. package/dist/backends/backend.d.ts +73 -0
  19. package/dist/backends/backend.js +14 -0
  20. package/dist/backends/index.d.ts +11 -0
  21. package/dist/backends/index.js +15 -0
  22. package/dist/browser.min.js +12 -0
  23. package/dist/browser.min.js.map +7 -0
  24. package/dist/cred.d.ts +14 -0
  25. package/dist/cred.js +15 -0
  26. package/dist/emulation/callbacks.d.ts +382 -0
  27. package/dist/emulation/callbacks.js +422 -0
  28. package/dist/emulation/constants.d.ts +101 -0
  29. package/dist/emulation/constants.js +110 -0
  30. package/dist/emulation/fs.d.ts +7 -0
  31. package/dist/emulation/fs.js +5 -0
  32. package/dist/emulation/index.d.ts +5 -0
  33. package/dist/emulation/index.js +7 -0
  34. package/dist/emulation/promises.d.ts +309 -0
  35. package/dist/emulation/promises.js +521 -0
  36. package/dist/emulation/shared.d.ts +62 -0
  37. package/dist/emulation/shared.js +192 -0
  38. package/dist/emulation/sync.d.ts +278 -0
  39. package/dist/emulation/sync.js +392 -0
  40. package/dist/file.d.ts +449 -0
  41. package/dist/file.js +576 -0
  42. package/dist/filesystem.d.ts +367 -0
  43. package/dist/filesystem.js +542 -0
  44. package/dist/index.d.ts +78 -0
  45. package/dist/index.js +113 -0
  46. package/dist/inode.d.ts +51 -0
  47. package/dist/inode.js +112 -0
  48. package/dist/mutex.d.ts +12 -0
  49. package/dist/mutex.js +48 -0
  50. package/dist/stats.d.ts +98 -0
  51. package/dist/stats.js +226 -0
  52. package/dist/utils.d.ts +52 -0
  53. package/dist/utils.js +261 -0
  54. package/license.md +122 -0
  55. package/package.json +61 -0
@@ -0,0 +1,73 @@
1
+ import type { BFSCallback, FileSystem } from '../filesystem';
2
+ /**
3
+ * Describes a file system option.
4
+ */
5
+ export interface BackendOption<T> {
6
+ /**
7
+ * The basic JavaScript type(s) for this option.
8
+ */
9
+ type: string | string[];
10
+ /**
11
+ * Whether or not the option is optional (e.g., can be set to null or undefined).
12
+ * Defaults to `false`.
13
+ */
14
+ optional?: boolean;
15
+ /**
16
+ * Description of the option. Used in error messages and documentation.
17
+ */
18
+ description: string;
19
+ /**
20
+ * A custom validation function to check if the option is valid.
21
+ * Resolves if valid and rejects if not.
22
+ */
23
+ validator?(opt: T): Promise<void>;
24
+ }
25
+ /**
26
+ * Describes all of the options available in a file system.
27
+ */
28
+ export interface BackendOptions {
29
+ [name: string]: BackendOption<unknown>;
30
+ }
31
+ /**
32
+ * Contains types for static functions on a backend.
33
+ */
34
+ export interface BaseBackendConstructor<FS extends typeof FileSystem = typeof FileSystem> {
35
+ new (...params: ConstructorParameters<FS>): InstanceType<FS>;
36
+ /**
37
+ * A name to identify the backend.
38
+ */
39
+ Name: string;
40
+ /**
41
+ * Describes all of the options available for this backend.
42
+ */
43
+ Options: BackendOptions;
44
+ /**
45
+ * Whether the backend is available in the current environment.
46
+ * It supports checking synchronously and asynchronously
47
+ * Sync:
48
+ * Returns 'true' if this backend is available in the current
49
+ * environment. For example, a `localStorage`-backed filesystem will return
50
+ * 'false' if the browser does not support that API.
51
+ *
52
+ * Defaults to 'false', as the FileSystem base class isn't usable alone.
53
+ */
54
+ isAvailable(): boolean;
55
+ }
56
+ /**
57
+ * Contains types for static functions on a backend.
58
+ */
59
+ export interface BackendConstructor<FS extends typeof FileSystem = typeof FileSystem> extends BaseBackendConstructor<FS> {
60
+ /**
61
+ * Creates backend of this given type with the given
62
+ * options, and either returns the result in a promise or callback.
63
+ */
64
+ Create(): Promise<InstanceType<FS>>;
65
+ Create(options: object): Promise<InstanceType<FS>>;
66
+ Create(cb: BFSCallback<InstanceType<FS>>): void;
67
+ Create(options: object, cb: BFSCallback<InstanceType<FS>>): void;
68
+ Create(options: object, cb?: BFSCallback<InstanceType<FS>>): Promise<InstanceType<FS>> | void;
69
+ }
70
+ export declare function CreateBackend<FS extends BaseBackendConstructor>(this: FS): Promise<InstanceType<FS>>;
71
+ export declare function CreateBackend<FS extends BaseBackendConstructor>(this: FS, options: BackendOptions): Promise<InstanceType<FS>>;
72
+ export declare function CreateBackend<FS extends BaseBackendConstructor>(this: FS, cb: BFSCallback<InstanceType<FS>>): void;
73
+ export declare function CreateBackend<FS extends BaseBackendConstructor>(this: FS, options: BackendOptions, cb: BFSCallback<InstanceType<FS>>): void;
@@ -0,0 +1,14 @@
1
+ import { checkOptions } from '../utils';
2
+ export function CreateBackend(options, cb) {
3
+ cb = typeof options === 'function' ? options : cb;
4
+ checkOptions(this, options);
5
+ const fs = new this(typeof options === 'function' ? {} : options);
6
+ // Promise
7
+ if (typeof cb != 'function') {
8
+ return fs.whenReady();
9
+ }
10
+ // Callback
11
+ fs.whenReady()
12
+ .then(fs => cb(null, fs))
13
+ .catch(err => cb(err));
14
+ }
@@ -0,0 +1,11 @@
1
+ import { AsyncMirror } from './AsyncMirror';
2
+ import { FolderAdapter } from './FolderAdapter';
3
+ import { InMemoryFileSystem as InMemory } from './InMemory';
4
+ import { OverlayFS } from './OverlayFS';
5
+ import { BackendConstructor } from './backend';
6
+ export declare const backends: {
7
+ [backend: string]: BackendConstructor;
8
+ };
9
+ export default backends;
10
+ export { AsyncMirror, FolderAdapter, InMemory, OverlayFS };
11
+ export declare function registerBackend(name: string, fs: BackendConstructor): void;
@@ -0,0 +1,15 @@
1
+ import { AsyncMirror } from './AsyncMirror';
2
+ import { FolderAdapter } from './FolderAdapter';
3
+ import { InMemoryFileSystem as InMemory } from './InMemory';
4
+ import { OverlayFS } from './OverlayFS';
5
+ export const backends = {
6
+ AsyncMirror,
7
+ FolderAdapter,
8
+ InMemory,
9
+ OverlayFS,
10
+ };
11
+ export default backends;
12
+ export { AsyncMirror, FolderAdapter, InMemory, OverlayFS };
13
+ export function registerBackend(name, fs) {
14
+ backends[name] = fs;
15
+ }
@@ -0,0 +1,12 @@
1
+ var ZenFS=(()=>{var st=Object.defineProperty,Jn=Object.defineProperties,Hn=Object.getOwnPropertyDescriptor,Gn=Object.getOwnPropertyDescriptors,Zn=Object.getOwnPropertyNames,$i=Object.getOwnPropertySymbols,Qn=Object.getPrototypeOf,ji=Object.prototype.hasOwnProperty,es=Object.prototype.propertyIsEnumerable,ts=Reflect.get;var P=Math.pow,Ki=(n,t,e)=>t in n?st(n,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):n[t]=e,ge=(n,t)=>{for(var e in t||(t={}))ji.call(t,e)&&Ki(n,e,t[e]);if($i)for(var e of $i(t))es.call(t,e)&&Ki(n,e,t[e]);return n},Se=(n,t)=>Jn(n,Gn(t)),l=(n,t)=>st(n,"name",{value:t,configurable:!0});var ot=(n,t)=>{for(var e in t)st(n,e,{get:t[e],enumerable:!0})},is=(n,t,e,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Zn(t))!ji.call(n,o)&&o!==e&&st(n,o,{get:()=>t[o],enumerable:!(i=Hn(t,o))||i.enumerable});return n};var rs=n=>is(st({},"__esModule",{value:!0}),n);var Yi=(n,t,e)=>ts(Qn(n),e,t);var g=(n,t,e)=>new Promise((i,o)=>{var c=m=>{try{d(e.next(m))}catch(b){o(b)}},a=m=>{try{d(e.throw(m))}catch(b){o(b)}},d=m=>m.done?i(m.value):Promise.resolve(m.value).then(c,a);d((e=e.apply(n,t)).next())});var Ca={};ot(Ca,{ActionType:()=>Ct,ApiError:()=>h,AsyncKeyValueFile:()=>rt,AsyncKeyValueFileSystem:()=>zt,AsyncMirror:()=>ke,BaseFile:()=>ct,BaseFileSystem:()=>fe,Cred:()=>q,ErrorCode:()=>ie,ErrorStrings:()=>H,FileFlag:()=>O,FileSystem:()=>Ae,FileType:()=>G,FolderAdapter:()=>be,InMemory:()=>me,NoSyncFile:()=>xt,OverlayFS:()=>Fe,PreloadFile:()=>ce,ROOT_NODE_ID:()=>he,SimpleSyncRWTransaction:()=>Ze,Stats:()=>Q,SyncKeyValueFile:()=>Qe,SyncKeyValueFileSystem:()=>et,SynchronousFileSystem:()=>Pe,backends:()=>Ut,bufferValidator:()=>qs,checkOptions:()=>Gt,configure:()=>Fa,copyingSlice:()=>Xs,default:()=>xa,fs:()=>Rt,getEmptyDirNode:()=>lt,getFileSystem:()=>Tn,initialize:()=>In,mkdirpSync:()=>pn,randomUUID:()=>Ke,registerBackend:()=>va,setImmediate:()=>Zs,toPromise:()=>Gs,wait:()=>Hs});var N={};ot(N,{_debugEnd:()=>Pr,_debugProcess:()=>Ar,_events:()=>Hr,_eventsCount:()=>Gr,_exiting:()=>mr,_fatalExceptions:()=>Ir,_getActiveHandles:()=>br,_getActiveRequests:()=>yr,_kill:()=>Sr,_linkedBinding:()=>fr,_maxListeners:()=>Jr,_preload_modules:()=>Yr,_rawDebug:()=>ur,_startProfilerIdleNotifier:()=>Rr,_stopProfilerIdleNotifier:()=>Lr,_tickCallback:()=>Or,abort:()=>zr,addListener:()=>Zr,allowedNodeEnvironmentFlags:()=>_r,arch:()=>Gi,argv:()=>er,argv0:()=>jr,assert:()=>kr,binding:()=>sr,chdir:()=>cr,config:()=>pr,cpuUsage:()=>wt,cwd:()=>ar,debugPort:()=>Kr,default:()=>cn,dlopen:()=>gr,domain:()=>hr,emit:()=>nn,emitWarning:()=>nr,env:()=>Qi,execArgv:()=>tr,execPath:()=>$r,exit:()=>xr,features:()=>Br,hasUncaughtExceptionCaptureCallback:()=>Nr,hrtime:()=>bt,kill:()=>Fr,listeners:()=>an,memoryUsage:()=>vr,moduleLoadList:()=>dr,nextTick:()=>qi,off:()=>en,on:()=>Ce,once:()=>Qr,openStdin:()=>Cr,pid:()=>Vr,platform:()=>Zi,ppid:()=>Wr,prependListener:()=>sn,prependOnceListener:()=>on,reallyExit:()=>wr,release:()=>lr,removeAllListeners:()=>rn,removeListener:()=>tn,resourceUsage:()=>Er,setSourceMapsEnabled:()=>Xr,setUncaughtExceptionCaptureCallback:()=>Tr,stderr:()=>Ur,stdin:()=>Mr,stdout:()=>Dr,title:()=>Hi,umask:()=>or,uptime:()=>qr,version:()=>ir,versions:()=>rr});function Yt(n){throw new Error("Node.js process "+n+" is not supported by JSPM core outside of Node.js")}l(Yt,"unimplemented");var xe=[],qe=!1,Ue,yt=-1;function ns(){!qe||!Ue||(qe=!1,Ue.length?xe=Ue.concat(xe):yt=-1,xe.length&&Xi())}l(ns,"cleanUpNextTick");function Xi(){if(!qe){var n=setTimeout(ns,0);qe=!0;for(var t=xe.length;t;){for(Ue=xe,xe=[];++yt<t;)Ue&&Ue[yt].run();yt=-1,t=xe.length}Ue=null,qe=!1,clearTimeout(n)}}l(Xi,"drainQueue");function qi(n){var t=new Array(arguments.length-1);if(arguments.length>1)for(var e=1;e<arguments.length;e++)t[e-1]=arguments[e];xe.push(new Ji(n,t)),xe.length===1&&!qe&&setTimeout(Xi,0)}l(qi,"nextTick");function Ji(n,t){this.fun=n,this.array=t}l(Ji,"Item");Ji.prototype.run=function(){this.fun.apply(null,this.array)};var Hi="browser",Gi="x64",Zi="browser",Qi={PATH:"/usr/bin",LANG:navigator.language+".UTF-8",PWD:"/",HOME:"/home",TMP:"/tmp"},er=["/usr/bin/node"],tr=[],ir="v16.8.0",rr={},nr=l(function(n,t){console.warn((t?t+": ":"")+n)},"emitWarning"),sr=l(function(n){Yt("binding")},"binding"),or=l(function(n){return 0},"umask"),ar=l(function(){return"/"},"cwd"),cr=l(function(n){},"chdir"),lr={name:"node",sourceUrl:"",headersUrl:"",libUrl:""};function ee(){}l(ee,"noop");var ur=ee,dr=[];function fr(n){Yt("_linkedBinding")}l(fr,"_linkedBinding");var hr={},mr=!1,pr={};function gr(n){Yt("dlopen")}l(gr,"dlopen");function yr(){return[]}l(yr,"_getActiveRequests");function br(){return[]}l(br,"_getActiveHandles");var wr=ee,Sr=ee,wt=l(function(){return{}},"cpuUsage"),Er=wt,vr=wt,Fr=ee,xr=ee,Cr=ee,_r={};function kr(n,t){if(!n)throw new Error(t||"assertion error")}l(kr,"assert");var Br={inspector:!1,debug:!1,uv:!1,ipv6:!1,tls_alpn:!1,tls_sni:!1,tls_ocsp:!1,tls:!1,cached_builtins:!0},Ir=ee,Tr=ee;function Nr(){return!1}l(Nr,"hasUncaughtExceptionCaptureCallback");var Or=ee,Ar=ee,Pr=ee,Rr=ee,Lr=ee,Dr=void 0,Ur=void 0,Mr=void 0,zr=ee,Vr=2,Wr=1,$r="/bin/usr/node",Kr=9229,jr="node",Yr=[],Xr=ee,Te={now:typeof performance!="undefined"?performance.now.bind(performance):void 0,timing:typeof performance!="undefined"?performance.timing:void 0};Te.now===void 0&&(Kt=Date.now(),Te.timing&&Te.timing.navigationStart&&(Kt=Te.timing.navigationStart),Te.now=()=>Date.now()-Kt);var Kt;function qr(){return Te.now()/1e3}l(qr,"uptime");var jt=1e9;function bt(n){var t=Math.floor((Date.now()-Te.now())*.001),e=Te.now()*.001,i=Math.floor(e)+t,o=Math.floor(e%1*1e9);return n&&(i=i-n[0],o=o-n[1],o<0&&(i--,o+=jt)),[i,o]}l(bt,"hrtime");bt.bigint=function(n){var t=bt(n);return typeof BigInt=="undefined"?t[0]*jt+t[1]:BigInt(t[0]*jt)+BigInt(t[1])};var Jr=10,Hr={},Gr=0;function Ce(){return cn}l(Ce,"on");var Zr=Ce,Qr=Ce,en=Ce,tn=Ce,rn=Ce,nn=ee,sn=Ce,on=Ce;function an(n){return[]}l(an,"listeners");var cn={version:ir,versions:rr,arch:Gi,platform:Zi,release:lr,_rawDebug:ur,moduleLoadList:dr,binding:sr,_linkedBinding:fr,_events:Hr,_eventsCount:Gr,_maxListeners:Jr,on:Ce,addListener:Zr,once:Qr,off:en,removeListener:tn,removeAllListeners:rn,emit:nn,prependListener:sn,prependOnceListener:on,listeners:an,domain:hr,_exiting:mr,config:pr,dlopen:gr,uptime:qr,_getActiveRequests:yr,_getActiveHandles:br,reallyExit:wr,_kill:Sr,cpuUsage:wt,resourceUsage:Er,memoryUsage:vr,kill:Fr,exit:xr,openStdin:Cr,allowedNodeEnvironmentFlags:_r,assert:kr,features:Br,_fatalExceptions:Ir,setUncaughtExceptionCaptureCallback:Tr,hasUncaughtExceptionCaptureCallback:Nr,emitWarning:nr,nextTick:qi,_tickCallback:Or,_debugProcess:Ar,_debugEnd:Pr,_startProfilerIdleNotifier:Rr,_stopProfilerIdleNotifier:Lr,stdout:Dr,stdin:Mr,stderr:Ur,abort:zr,umask:or,chdir:cr,cwd:ar,env:Qi,title:Hi,argv:er,execArgv:tr,pid:Vr,ppid:Wr,execPath:$r,debugPort:Kr,hrtime:bt,argv0:jr,_preload_modules:Yr,setSourceMapsEnabled:Xr};var at={},ln=!1;function ss(){if(ln)return at;ln=!0,at.byteLength=d,at.toByteArray=b,at.fromByteArray=x;for(var n=[],t=[],e=typeof Uint8Array!="undefined"?Uint8Array:Array,i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",o=0,c=i.length;o<c;++o)n[o]=i[o],t[i.charCodeAt(o)]=o;t["-".charCodeAt(0)]=62,t["_".charCodeAt(0)]=63;function a(F){var C=F.length;if(C%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var v=F.indexOf("=");v===-1&&(v=C);var _=v===C?0:4-v%4;return[v,_]}l(a,"getLens");function d(F){var C=a(F),v=C[0],_=C[1];return(v+_)*3/4-_}l(d,"byteLength");function m(F,C,v){return(C+v)*3/4-v}l(m,"_byteLength");function b(F){var C,v=a(F),_=v[0],A=v[1],L=new e(m(F,_,A)),V=0,ae=A>0?_-4:_,te;for(te=0;te<ae;te+=4)C=t[F.charCodeAt(te)]<<18|t[F.charCodeAt(te+1)]<<12|t[F.charCodeAt(te+2)]<<6|t[F.charCodeAt(te+3)],L[V++]=C>>16&255,L[V++]=C>>8&255,L[V++]=C&255;return A===2&&(C=t[F.charCodeAt(te)]<<2|t[F.charCodeAt(te+1)]>>4,L[V++]=C&255),A===1&&(C=t[F.charCodeAt(te)]<<10|t[F.charCodeAt(te+1)]<<4|t[F.charCodeAt(te+2)]>>2,L[V++]=C>>8&255,L[V++]=C&255),L}l(b,"toByteArray");function S(F){return n[F>>18&63]+n[F>>12&63]+n[F>>6&63]+n[F&63]}l(S,"tripletToBase64");function w(F,C,v){for(var _,A=[],L=C;L<v;L+=3)_=(F[L]<<16&16711680)+(F[L+1]<<8&65280)+(F[L+2]&255),A.push(S(_));return A.join("")}l(w,"encodeChunk");function x(F){for(var C,v=F.length,_=v%3,A=[],L=16383,V=0,ae=v-_;V<ae;V+=L)A.push(w(F,V,V+L>ae?ae:V+L));return _===1?(C=F[v-1],A.push(n[C>>2]+n[C<<4&63]+"==")):_===2&&(C=(F[v-2]<<8)+F[v-1],A.push(n[C>>10]+n[C>>4&63]+n[C<<2&63]+"=")),A.join("")}return l(x,"fromByteArray"),at}l(ss,"dew$2");var St={},un=!1;function os(){if(un)return St;un=!0;return St.read=function(n,t,e,i,o){var c,a,d=o*8-i-1,m=(1<<d)-1,b=m>>1,S=-7,w=e?o-1:0,x=e?-1:1,F=n[t+w];for(w+=x,c=F&(1<<-S)-1,F>>=-S,S+=d;S>0;c=c*256+n[t+w],w+=x,S-=8);for(a=c&(1<<-S)-1,c>>=-S,S+=i;S>0;a=a*256+n[t+w],w+=x,S-=8);if(c===0)c=1-b;else{if(c===m)return a?NaN:(F?-1:1)*(1/0);a=a+Math.pow(2,i),c=c-b}return(F?-1:1)*a*Math.pow(2,c-i)},St.write=function(n,t,e,i,o,c){var a,d,m,b=c*8-o-1,S=(1<<b)-1,w=S>>1,x=o===23?Math.pow(2,-24)-Math.pow(2,-77):0,F=i?0:c-1,C=i?1:-1,v=t<0||t===0&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(d=isNaN(t)?1:0,a=S):(a=Math.floor(Math.log(t)/Math.LN2),t*(m=Math.pow(2,-a))<1&&(a--,m*=2),a+w>=1?t+=x/m:t+=x*Math.pow(2,1-w),t*m>=2&&(a++,m/=2),a+w>=S?(d=0,a=S):a+w>=1?(d=(t*m-1)*Math.pow(2,o),a=a+w):(d=t*Math.pow(2,w-1)*Math.pow(2,o),a=0));o>=8;n[e+F]=d&255,F+=C,d/=256,o-=8);for(a=a<<o|d,b+=o;b>0;n[e+F]=a&255,F+=C,a/=256,b-=8);n[e+F-C]|=v*128},St}l(os,"dew$1");var Me={},dn=!1;function as(){if(dn)return Me;dn=!0;let n=ss(),t=os(),e=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;Me.Buffer=a,Me.SlowBuffer=A,Me.INSPECT_MAX_BYTES=50;let i=2147483647;Me.kMaxLength=i,a.TYPED_ARRAY_SUPPORT=o(),!a.TYPED_ARRAY_SUPPORT&&typeof console!="undefined"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function o(){try{let u=new Uint8Array(1),r={foo:function(){return 42}};return Object.setPrototypeOf(r,Uint8Array.prototype),Object.setPrototypeOf(u,r),u.foo()===42}catch(u){return!1}}l(o,"typedArraySupport"),Object.defineProperty(a.prototype,"parent",{enumerable:!0,get:function(){if(a.isBuffer(this))return this.buffer}}),Object.defineProperty(a.prototype,"offset",{enumerable:!0,get:function(){if(a.isBuffer(this))return this.byteOffset}});function c(u){if(u>i)throw new RangeError('The value "'+u+'" is invalid for option "size"');let r=new Uint8Array(u);return Object.setPrototypeOf(r,a.prototype),r}l(c,"createBuffer");function a(u,r,s){if(typeof u=="number"){if(typeof r=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return S(u)}return d(u,r,s)}l(a,"Buffer"),a.poolSize=8192;function d(u,r,s){if(typeof u=="string")return w(u,r);if(ArrayBuffer.isView(u))return F(u);if(u==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof u);if(we(u,ArrayBuffer)||u&&we(u.buffer,ArrayBuffer)||typeof SharedArrayBuffer!="undefined"&&(we(u,SharedArrayBuffer)||u&&we(u.buffer,SharedArrayBuffer)))return C(u,r,s);if(typeof u=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');let f=u.valueOf&&u.valueOf();if(f!=null&&f!==u)return a.from(f,r,s);let p=v(u);if(p)return p;if(typeof Symbol!="undefined"&&Symbol.toPrimitive!=null&&typeof u[Symbol.toPrimitive]=="function")return a.from(u[Symbol.toPrimitive]("string"),r,s);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof u)}l(d,"from"),a.from=function(u,r,s){return d(u,r,s)},Object.setPrototypeOf(a.prototype,Uint8Array.prototype),Object.setPrototypeOf(a,Uint8Array);function m(u){if(typeof u!="number")throw new TypeError('"size" argument must be of type number');if(u<0)throw new RangeError('The value "'+u+'" is invalid for option "size"')}l(m,"assertSize");function b(u,r,s){return m(u),u<=0?c(u):r!==void 0?typeof s=="string"?c(u).fill(r,s):c(u).fill(r):c(u)}l(b,"alloc"),a.alloc=function(u,r,s){return b(u,r,s)};function S(u){return m(u),c(u<0?0:_(u)|0)}l(S,"allocUnsafe"),a.allocUnsafe=function(u){return S(u)},a.allocUnsafeSlow=function(u){return S(u)};function w(u,r){if((typeof r!="string"||r==="")&&(r="utf8"),!a.isEncoding(r))throw new TypeError("Unknown encoding: "+r);let s=L(u,r)|0,f=c(s),p=f.write(u,r);return p!==s&&(f=f.slice(0,p)),f}l(w,"fromString");function x(u){let r=u.length<0?0:_(u.length)|0,s=c(r);for(let f=0;f<r;f+=1)s[f]=u[f]&255;return s}l(x,"fromArrayLike");function F(u){if(we(u,Uint8Array)){let r=new Uint8Array(u);return C(r.buffer,r.byteOffset,r.byteLength)}return x(u)}l(F,"fromArrayView");function C(u,r,s){if(r<0||u.byteLength<r)throw new RangeError('"offset" is outside of buffer bounds');if(u.byteLength<r+(s||0))throw new RangeError('"length" is outside of buffer bounds');let f;return r===void 0&&s===void 0?f=new Uint8Array(u):s===void 0?f=new Uint8Array(u,r):f=new Uint8Array(u,r,s),Object.setPrototypeOf(f,a.prototype),f}l(C,"fromArrayBuffer");function v(u){if(a.isBuffer(u)){let r=_(u.length)|0,s=c(r);return s.length===0||u.copy(s,0,0,r),s}if(u.length!==void 0)return typeof u.length!="number"||$t(u.length)?c(0):x(u);if(u.type==="Buffer"&&Array.isArray(u.data))return x(u.data)}l(v,"fromObject");function _(u){if(u>=i)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+i.toString(16)+" bytes");return u|0}l(_,"checked");function A(u){return+u!=u&&(u=0),a.alloc(+u)}l(A,"SlowBuffer"),a.isBuffer=l(function(r){return r!=null&&r._isBuffer===!0&&r!==a.prototype},"isBuffer"),a.compare=l(function(r,s){if(we(r,Uint8Array)&&(r=a.from(r,r.offset,r.byteLength)),we(s,Uint8Array)&&(s=a.from(s,s.offset,s.byteLength)),!a.isBuffer(r)||!a.isBuffer(s))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(r===s)return 0;let f=r.length,p=s.length;for(let y=0,E=Math.min(f,p);y<E;++y)if(r[y]!==s[y]){f=r[y],p=s[y];break}return f<p?-1:p<f?1:0},"compare"),a.isEncoding=l(function(r){switch(String(r).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},"isEncoding"),a.concat=l(function(r,s){if(!Array.isArray(r))throw new TypeError('"list" argument must be an Array of Buffers');if(r.length===0)return a.alloc(0);let f;if(s===void 0)for(s=0,f=0;f<r.length;++f)s+=r[f].length;let p=a.allocUnsafe(s),y=0;for(f=0;f<r.length;++f){let E=r[f];if(we(E,Uint8Array))y+E.length>p.length?(a.isBuffer(E)||(E=a.from(E)),E.copy(p,y)):Uint8Array.prototype.set.call(p,E,y);else if(a.isBuffer(E))E.copy(p,y);else throw new TypeError('"list" argument must be an Array of Buffers');y+=E.length}return p},"concat");function L(u,r){if(a.isBuffer(u))return u.length;if(ArrayBuffer.isView(u)||we(u,ArrayBuffer))return u.byteLength;if(typeof u!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof u);let s=u.length,f=arguments.length>2&&arguments[2]===!0;if(!f&&s===0)return 0;let p=!1;for(;;)switch(r){case"ascii":case"latin1":case"binary":return s;case"utf8":case"utf-8":return Wt(u).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return s*2;case"hex":return s>>>1;case"base64":return Wi(u).length;default:if(p)return f?-1:Wt(u).length;r=(""+r).toLowerCase(),p=!0}}l(L,"byteLength"),a.byteLength=L;function V(u,r,s){let f=!1;if((r===void 0||r<0)&&(r=0),r>this.length||((s===void 0||s>this.length)&&(s=this.length),s<=0)||(s>>>=0,r>>>=0,s<=r))return"";for(u||(u="utf8");;)switch(u){case"hex":return zn(this,r,s);case"utf8":case"utf-8":return Ai(this,r,s);case"ascii":return Un(this,r,s);case"latin1":case"binary":return Mn(this,r,s);case"base64":return Ln(this,r,s);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Vn(this,r,s);default:if(f)throw new TypeError("Unknown encoding: "+u);u=(u+"").toLowerCase(),f=!0}}l(V,"slowToString"),a.prototype._isBuffer=!0;function ae(u,r,s){let f=u[r];u[r]=u[s],u[s]=f}l(ae,"swap"),a.prototype.swap16=l(function(){let r=this.length;if(r%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let s=0;s<r;s+=2)ae(this,s,s+1);return this},"swap16"),a.prototype.swap32=l(function(){let r=this.length;if(r%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(let s=0;s<r;s+=4)ae(this,s,s+3),ae(this,s+1,s+2);return this},"swap32"),a.prototype.swap64=l(function(){let r=this.length;if(r%8!==0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(let s=0;s<r;s+=8)ae(this,s,s+7),ae(this,s+1,s+6),ae(this,s+2,s+5),ae(this,s+3,s+4);return this},"swap64"),a.prototype.toString=l(function(){let r=this.length;return r===0?"":arguments.length===0?Ai(this,0,r):V.apply(this,arguments)},"toString"),a.prototype.toLocaleString=a.prototype.toString,a.prototype.equals=l(function(r){if(!a.isBuffer(r))throw new TypeError("Argument must be a Buffer");return this===r?!0:a.compare(this,r)===0},"equals"),a.prototype.inspect=l(function(){let r="",s=Me.INSPECT_MAX_BYTES;return r=this.toString("hex",0,s).replace(/(.{2})/g,"$1 ").trim(),this.length>s&&(r+=" ... "),"<Buffer "+r+">"},"inspect"),e&&(a.prototype[e]=a.prototype.inspect),a.prototype.compare=l(function(r,s,f,p,y){if(we(r,Uint8Array)&&(r=a.from(r,r.offset,r.byteLength)),!a.isBuffer(r))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof r);if(s===void 0&&(s=0),f===void 0&&(f=r?r.length:0),p===void 0&&(p=0),y===void 0&&(y=this.length),s<0||f>r.length||p<0||y>this.length)throw new RangeError("out of range index");if(p>=y&&s>=f)return 0;if(p>=y)return-1;if(s>=f)return 1;if(s>>>=0,f>>>=0,p>>>=0,y>>>=0,this===r)return 0;let E=y-p,T=f-s,W=Math.min(E,T),M=this.slice(p,y),$=r.slice(s,f);for(let D=0;D<W;++D)if(M[D]!==$[D]){E=M[D],T=$[D];break}return E<T?-1:T<E?1:0},"compare");function te(u,r,s,f,p){if(u.length===0)return-1;if(typeof s=="string"?(f=s,s=0):s>2147483647?s=2147483647:s<-2147483648&&(s=-2147483648),s=+s,$t(s)&&(s=p?0:u.length-1),s<0&&(s=u.length+s),s>=u.length){if(p)return-1;s=u.length-1}else if(s<0)if(p)s=0;else return-1;if(typeof r=="string"&&(r=a.from(r,f)),a.isBuffer(r))return r.length===0?-1:Oi(u,r,s,f,p);if(typeof r=="number")return r=r&255,typeof Uint8Array.prototype.indexOf=="function"?p?Uint8Array.prototype.indexOf.call(u,r,s):Uint8Array.prototype.lastIndexOf.call(u,r,s):Oi(u,[r],s,f,p);throw new TypeError("val must be string, number or Buffer")}l(te,"bidirectionalIndexOf");function Oi(u,r,s,f,p){let y=1,E=u.length,T=r.length;if(f!==void 0&&(f=String(f).toLowerCase(),f==="ucs2"||f==="ucs-2"||f==="utf16le"||f==="utf-16le")){if(u.length<2||r.length<2)return-1;y=2,E/=2,T/=2,s/=2}function W($,D){return y===1?$[D]:$.readUInt16BE(D*y)}l(W,"read");let M;if(p){let $=-1;for(M=s;M<E;M++)if(W(u,M)===W(r,$===-1?0:M-$)){if($===-1&&($=M),M-$+1===T)return $*y}else $!==-1&&(M-=M-$),$=-1}else for(s+T>E&&(s=E-T),M=s;M>=0;M--){let $=!0;for(let D=0;D<T;D++)if(W(u,M+D)!==W(r,D)){$=!1;break}if($)return M}return-1}l(Oi,"arrayIndexOf"),a.prototype.includes=l(function(r,s,f){return this.indexOf(r,s,f)!==-1},"includes"),a.prototype.indexOf=l(function(r,s,f){return te(this,r,s,f,!0)},"indexOf"),a.prototype.lastIndexOf=l(function(r,s,f){return te(this,r,s,f,!1)},"lastIndexOf");function Nn(u,r,s,f){s=Number(s)||0;let p=u.length-s;f?(f=Number(f),f>p&&(f=p)):f=p;let y=r.length;f>y/2&&(f=y/2);let E;for(E=0;E<f;++E){let T=parseInt(r.substr(E*2,2),16);if($t(T))return E;u[s+E]=T}return E}l(Nn,"hexWrite");function On(u,r,s,f){return gt(Wt(r,u.length-s),u,s,f)}l(On,"utf8Write");function An(u,r,s,f){return gt(jn(r),u,s,f)}l(An,"asciiWrite");function Pn(u,r,s,f){return gt(Wi(r),u,s,f)}l(Pn,"base64Write");function Rn(u,r,s,f){return gt(Yn(r,u.length-s),u,s,f)}l(Rn,"ucs2Write"),a.prototype.write=l(function(r,s,f,p){if(s===void 0)p="utf8",f=this.length,s=0;else if(f===void 0&&typeof s=="string")p=s,f=this.length,s=0;else if(isFinite(s))s=s>>>0,isFinite(f)?(f=f>>>0,p===void 0&&(p="utf8")):(p=f,f=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");let y=this.length-s;if((f===void 0||f>y)&&(f=y),r.length>0&&(f<0||s<0)||s>this.length)throw new RangeError("Attempt to write outside buffer bounds");p||(p="utf8");let E=!1;for(;;)switch(p){case"hex":return Nn(this,r,s,f);case"utf8":case"utf-8":return On(this,r,s,f);case"ascii":case"latin1":case"binary":return An(this,r,s,f);case"base64":return Pn(this,r,s,f);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Rn(this,r,s,f);default:if(E)throw new TypeError("Unknown encoding: "+p);p=(""+p).toLowerCase(),E=!0}},"write"),a.prototype.toJSON=l(function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}},"toJSON");function Ln(u,r,s){return r===0&&s===u.length?n.fromByteArray(u):n.fromByteArray(u.slice(r,s))}l(Ln,"base64Slice");function Ai(u,r,s){s=Math.min(u.length,s);let f=[],p=r;for(;p<s;){let y=u[p],E=null,T=y>239?4:y>223?3:y>191?2:1;if(p+T<=s){let W,M,$,D;switch(T){case 1:y<128&&(E=y);break;case 2:W=u[p+1],(W&192)===128&&(D=(y&31)<<6|W&63,D>127&&(E=D));break;case 3:W=u[p+1],M=u[p+2],(W&192)===128&&(M&192)===128&&(D=(y&15)<<12|(W&63)<<6|M&63,D>2047&&(D<55296||D>57343)&&(E=D));break;case 4:W=u[p+1],M=u[p+2],$=u[p+3],(W&192)===128&&(M&192)===128&&($&192)===128&&(D=(y&15)<<18|(W&63)<<12|(M&63)<<6|$&63,D>65535&&D<1114112&&(E=D))}}E===null?(E=65533,T=1):E>65535&&(E-=65536,f.push(E>>>10&1023|55296),E=56320|E&1023),f.push(E),p+=T}return Dn(f)}l(Ai,"utf8Slice");let Pi=4096;function Dn(u){let r=u.length;if(r<=Pi)return String.fromCharCode.apply(String,u);let s="",f=0;for(;f<r;)s+=String.fromCharCode.apply(String,u.slice(f,f+=Pi));return s}l(Dn,"decodeCodePointsArray");function Un(u,r,s){let f="";s=Math.min(u.length,s);for(let p=r;p<s;++p)f+=String.fromCharCode(u[p]&127);return f}l(Un,"asciiSlice");function Mn(u,r,s){let f="";s=Math.min(u.length,s);for(let p=r;p<s;++p)f+=String.fromCharCode(u[p]);return f}l(Mn,"latin1Slice");function zn(u,r,s){let f=u.length;(!r||r<0)&&(r=0),(!s||s<0||s>f)&&(s=f);let p="";for(let y=r;y<s;++y)p+=Xn[u[y]];return p}l(zn,"hexSlice");function Vn(u,r,s){let f=u.slice(r,s),p="";for(let y=0;y<f.length-1;y+=2)p+=String.fromCharCode(f[y]+f[y+1]*256);return p}l(Vn,"utf16leSlice"),a.prototype.slice=l(function(r,s){let f=this.length;r=~~r,s=s===void 0?f:~~s,r<0?(r+=f,r<0&&(r=0)):r>f&&(r=f),s<0?(s+=f,s<0&&(s=0)):s>f&&(s=f),s<r&&(s=r);let p=this.subarray(r,s);return Object.setPrototypeOf(p,a.prototype),p},"slice");function J(u,r,s){if(u%1!==0||u<0)throw new RangeError("offset is not uint");if(u+r>s)throw new RangeError("Trying to access beyond buffer length")}l(J,"checkOffset"),a.prototype.readUintLE=a.prototype.readUIntLE=l(function(r,s,f){r=r>>>0,s=s>>>0,f||J(r,s,this.length);let p=this[r],y=1,E=0;for(;++E<s&&(y*=256);)p+=this[r+E]*y;return p},"readUIntLE"),a.prototype.readUintBE=a.prototype.readUIntBE=l(function(r,s,f){r=r>>>0,s=s>>>0,f||J(r,s,this.length);let p=this[r+--s],y=1;for(;s>0&&(y*=256);)p+=this[r+--s]*y;return p},"readUIntBE"),a.prototype.readUint8=a.prototype.readUInt8=l(function(r,s){return r=r>>>0,s||J(r,1,this.length),this[r]},"readUInt8"),a.prototype.readUint16LE=a.prototype.readUInt16LE=l(function(r,s){return r=r>>>0,s||J(r,2,this.length),this[r]|this[r+1]<<8},"readUInt16LE"),a.prototype.readUint16BE=a.prototype.readUInt16BE=l(function(r,s){return r=r>>>0,s||J(r,2,this.length),this[r]<<8|this[r+1]},"readUInt16BE"),a.prototype.readUint32LE=a.prototype.readUInt32LE=l(function(r,s){return r=r>>>0,s||J(r,4,this.length),(this[r]|this[r+1]<<8|this[r+2]<<16)+this[r+3]*16777216},"readUInt32LE"),a.prototype.readUint32BE=a.prototype.readUInt32BE=l(function(r,s){return r=r>>>0,s||J(r,4,this.length),this[r]*16777216+(this[r+1]<<16|this[r+2]<<8|this[r+3])},"readUInt32BE"),a.prototype.readBigUInt64LE=Ie(l(function(r){r=r>>>0,Xe(r,"offset");let s=this[r],f=this[r+7];(s===void 0||f===void 0)&&nt(r,this.length-8);let p=s+this[++r]*P(2,8)+this[++r]*P(2,16)+this[++r]*P(2,24),y=this[++r]+this[++r]*P(2,8)+this[++r]*P(2,16)+f*P(2,24);return BigInt(p)+(BigInt(y)<<BigInt(32))},"readBigUInt64LE")),a.prototype.readBigUInt64BE=Ie(l(function(r){r=r>>>0,Xe(r,"offset");let s=this[r],f=this[r+7];(s===void 0||f===void 0)&&nt(r,this.length-8);let p=s*P(2,24)+this[++r]*P(2,16)+this[++r]*P(2,8)+this[++r],y=this[++r]*P(2,24)+this[++r]*P(2,16)+this[++r]*P(2,8)+f;return(BigInt(p)<<BigInt(32))+BigInt(y)},"readBigUInt64BE")),a.prototype.readIntLE=l(function(r,s,f){r=r>>>0,s=s>>>0,f||J(r,s,this.length);let p=this[r],y=1,E=0;for(;++E<s&&(y*=256);)p+=this[r+E]*y;return y*=128,p>=y&&(p-=Math.pow(2,8*s)),p},"readIntLE"),a.prototype.readIntBE=l(function(r,s,f){r=r>>>0,s=s>>>0,f||J(r,s,this.length);let p=s,y=1,E=this[r+--p];for(;p>0&&(y*=256);)E+=this[r+--p]*y;return y*=128,E>=y&&(E-=Math.pow(2,8*s)),E},"readIntBE"),a.prototype.readInt8=l(function(r,s){return r=r>>>0,s||J(r,1,this.length),this[r]&128?(255-this[r]+1)*-1:this[r]},"readInt8"),a.prototype.readInt16LE=l(function(r,s){r=r>>>0,s||J(r,2,this.length);let f=this[r]|this[r+1]<<8;return f&32768?f|4294901760:f},"readInt16LE"),a.prototype.readInt16BE=l(function(r,s){r=r>>>0,s||J(r,2,this.length);let f=this[r+1]|this[r]<<8;return f&32768?f|4294901760:f},"readInt16BE"),a.prototype.readInt32LE=l(function(r,s){return r=r>>>0,s||J(r,4,this.length),this[r]|this[r+1]<<8|this[r+2]<<16|this[r+3]<<24},"readInt32LE"),a.prototype.readInt32BE=l(function(r,s){return r=r>>>0,s||J(r,4,this.length),this[r]<<24|this[r+1]<<16|this[r+2]<<8|this[r+3]},"readInt32BE"),a.prototype.readBigInt64LE=Ie(l(function(r){r=r>>>0,Xe(r,"offset");let s=this[r],f=this[r+7];(s===void 0||f===void 0)&&nt(r,this.length-8);let p=this[r+4]+this[r+5]*P(2,8)+this[r+6]*P(2,16)+(f<<24);return(BigInt(p)<<BigInt(32))+BigInt(s+this[++r]*P(2,8)+this[++r]*P(2,16)+this[++r]*P(2,24))},"readBigInt64LE")),a.prototype.readBigInt64BE=Ie(l(function(r){r=r>>>0,Xe(r,"offset");let s=this[r],f=this[r+7];(s===void 0||f===void 0)&&nt(r,this.length-8);let p=(s<<24)+this[++r]*P(2,16)+this[++r]*P(2,8)+this[++r];return(BigInt(p)<<BigInt(32))+BigInt(this[++r]*P(2,24)+this[++r]*P(2,16)+this[++r]*P(2,8)+f)},"readBigInt64BE")),a.prototype.readFloatLE=l(function(r,s){return r=r>>>0,s||J(r,4,this.length),t.read(this,r,!0,23,4)},"readFloatLE"),a.prototype.readFloatBE=l(function(r,s){return r=r>>>0,s||J(r,4,this.length),t.read(this,r,!1,23,4)},"readFloatBE"),a.prototype.readDoubleLE=l(function(r,s){return r=r>>>0,s||J(r,8,this.length),t.read(this,r,!0,52,8)},"readDoubleLE"),a.prototype.readDoubleBE=l(function(r,s){return r=r>>>0,s||J(r,8,this.length),t.read(this,r,!1,52,8)},"readDoubleBE");function ne(u,r,s,f,p,y){if(!a.isBuffer(u))throw new TypeError('"buffer" argument must be a Buffer instance');if(r>p||r<y)throw new RangeError('"value" argument is out of bounds');if(s+f>u.length)throw new RangeError("Index out of range")}l(ne,"checkInt"),a.prototype.writeUintLE=a.prototype.writeUIntLE=l(function(r,s,f,p){if(r=+r,s=s>>>0,f=f>>>0,!p){let T=Math.pow(2,8*f)-1;ne(this,r,s,f,T,0)}let y=1,E=0;for(this[s]=r&255;++E<f&&(y*=256);)this[s+E]=r/y&255;return s+f},"writeUIntLE"),a.prototype.writeUintBE=a.prototype.writeUIntBE=l(function(r,s,f,p){if(r=+r,s=s>>>0,f=f>>>0,!p){let T=Math.pow(2,8*f)-1;ne(this,r,s,f,T,0)}let y=f-1,E=1;for(this[s+y]=r&255;--y>=0&&(E*=256);)this[s+y]=r/E&255;return s+f},"writeUIntBE"),a.prototype.writeUint8=a.prototype.writeUInt8=l(function(r,s,f){return r=+r,s=s>>>0,f||ne(this,r,s,1,255,0),this[s]=r&255,s+1},"writeUInt8"),a.prototype.writeUint16LE=a.prototype.writeUInt16LE=l(function(r,s,f){return r=+r,s=s>>>0,f||ne(this,r,s,2,65535,0),this[s]=r&255,this[s+1]=r>>>8,s+2},"writeUInt16LE"),a.prototype.writeUint16BE=a.prototype.writeUInt16BE=l(function(r,s,f){return r=+r,s=s>>>0,f||ne(this,r,s,2,65535,0),this[s]=r>>>8,this[s+1]=r&255,s+2},"writeUInt16BE"),a.prototype.writeUint32LE=a.prototype.writeUInt32LE=l(function(r,s,f){return r=+r,s=s>>>0,f||ne(this,r,s,4,4294967295,0),this[s+3]=r>>>24,this[s+2]=r>>>16,this[s+1]=r>>>8,this[s]=r&255,s+4},"writeUInt32LE"),a.prototype.writeUint32BE=a.prototype.writeUInt32BE=l(function(r,s,f){return r=+r,s=s>>>0,f||ne(this,r,s,4,4294967295,0),this[s]=r>>>24,this[s+1]=r>>>16,this[s+2]=r>>>8,this[s+3]=r&255,s+4},"writeUInt32BE");function Ri(u,r,s,f,p){Vi(r,f,p,u,s,7);let y=Number(r&BigInt(4294967295));u[s++]=y,y=y>>8,u[s++]=y,y=y>>8,u[s++]=y,y=y>>8,u[s++]=y;let E=Number(r>>BigInt(32)&BigInt(4294967295));return u[s++]=E,E=E>>8,u[s++]=E,E=E>>8,u[s++]=E,E=E>>8,u[s++]=E,s}l(Ri,"wrtBigUInt64LE");function Li(u,r,s,f,p){Vi(r,f,p,u,s,7);let y=Number(r&BigInt(4294967295));u[s+7]=y,y=y>>8,u[s+6]=y,y=y>>8,u[s+5]=y,y=y>>8,u[s+4]=y;let E=Number(r>>BigInt(32)&BigInt(4294967295));return u[s+3]=E,E=E>>8,u[s+2]=E,E=E>>8,u[s+1]=E,E=E>>8,u[s]=E,s+8}l(Li,"wrtBigUInt64BE"),a.prototype.writeBigUInt64LE=Ie(l(function(r,s=0){return Ri(this,r,s,BigInt(0),BigInt("0xffffffffffffffff"))},"writeBigUInt64LE")),a.prototype.writeBigUInt64BE=Ie(l(function(r,s=0){return Li(this,r,s,BigInt(0),BigInt("0xffffffffffffffff"))},"writeBigUInt64BE")),a.prototype.writeIntLE=l(function(r,s,f,p){if(r=+r,s=s>>>0,!p){let W=Math.pow(2,8*f-1);ne(this,r,s,f,W-1,-W)}let y=0,E=1,T=0;for(this[s]=r&255;++y<f&&(E*=256);)r<0&&T===0&&this[s+y-1]!==0&&(T=1),this[s+y]=(r/E>>0)-T&255;return s+f},"writeIntLE"),a.prototype.writeIntBE=l(function(r,s,f,p){if(r=+r,s=s>>>0,!p){let W=Math.pow(2,8*f-1);ne(this,r,s,f,W-1,-W)}let y=f-1,E=1,T=0;for(this[s+y]=r&255;--y>=0&&(E*=256);)r<0&&T===0&&this[s+y+1]!==0&&(T=1),this[s+y]=(r/E>>0)-T&255;return s+f},"writeIntBE"),a.prototype.writeInt8=l(function(r,s,f){return r=+r,s=s>>>0,f||ne(this,r,s,1,127,-128),r<0&&(r=255+r+1),this[s]=r&255,s+1},"writeInt8"),a.prototype.writeInt16LE=l(function(r,s,f){return r=+r,s=s>>>0,f||ne(this,r,s,2,32767,-32768),this[s]=r&255,this[s+1]=r>>>8,s+2},"writeInt16LE"),a.prototype.writeInt16BE=l(function(r,s,f){return r=+r,s=s>>>0,f||ne(this,r,s,2,32767,-32768),this[s]=r>>>8,this[s+1]=r&255,s+2},"writeInt16BE"),a.prototype.writeInt32LE=l(function(r,s,f){return r=+r,s=s>>>0,f||ne(this,r,s,4,2147483647,-2147483648),this[s]=r&255,this[s+1]=r>>>8,this[s+2]=r>>>16,this[s+3]=r>>>24,s+4},"writeInt32LE"),a.prototype.writeInt32BE=l(function(r,s,f){return r=+r,s=s>>>0,f||ne(this,r,s,4,2147483647,-2147483648),r<0&&(r=4294967295+r+1),this[s]=r>>>24,this[s+1]=r>>>16,this[s+2]=r>>>8,this[s+3]=r&255,s+4},"writeInt32BE"),a.prototype.writeBigInt64LE=Ie(l(function(r,s=0){return Ri(this,r,s,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))},"writeBigInt64LE")),a.prototype.writeBigInt64BE=Ie(l(function(r,s=0){return Li(this,r,s,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))},"writeBigInt64BE"));function Di(u,r,s,f,p,y){if(s+f>u.length)throw new RangeError("Index out of range");if(s<0)throw new RangeError("Index out of range")}l(Di,"checkIEEE754");function Ui(u,r,s,f,p){return r=+r,s=s>>>0,p||Di(u,r,s,4),t.write(u,r,s,f,23,4),s+4}l(Ui,"writeFloat"),a.prototype.writeFloatLE=l(function(r,s,f){return Ui(this,r,s,!0,f)},"writeFloatLE"),a.prototype.writeFloatBE=l(function(r,s,f){return Ui(this,r,s,!1,f)},"writeFloatBE");function Mi(u,r,s,f,p){return r=+r,s=s>>>0,p||Di(u,r,s,8),t.write(u,r,s,f,52,8),s+8}l(Mi,"writeDouble"),a.prototype.writeDoubleLE=l(function(r,s,f){return Mi(this,r,s,!0,f)},"writeDoubleLE"),a.prototype.writeDoubleBE=l(function(r,s,f){return Mi(this,r,s,!1,f)},"writeDoubleBE"),a.prototype.copy=l(function(r,s,f,p){if(!a.isBuffer(r))throw new TypeError("argument should be a Buffer");if(f||(f=0),!p&&p!==0&&(p=this.length),s>=r.length&&(s=r.length),s||(s=0),p>0&&p<f&&(p=f),p===f||r.length===0||this.length===0)return 0;if(s<0)throw new RangeError("targetStart out of bounds");if(f<0||f>=this.length)throw new RangeError("Index out of range");if(p<0)throw new RangeError("sourceEnd out of bounds");p>this.length&&(p=this.length),r.length-s<p-f&&(p=r.length-s+f);let y=p-f;return this===r&&typeof Uint8Array.prototype.copyWithin=="function"?this.copyWithin(s,f,p):Uint8Array.prototype.set.call(r,this.subarray(f,p),s),y},"copy"),a.prototype.fill=l(function(r,s,f,p){if(typeof r=="string"){if(typeof s=="string"?(p=s,s=0,f=this.length):typeof f=="string"&&(p=f,f=this.length),p!==void 0&&typeof p!="string")throw new TypeError("encoding must be a string");if(typeof p=="string"&&!a.isEncoding(p))throw new TypeError("Unknown encoding: "+p);if(r.length===1){let E=r.charCodeAt(0);(p==="utf8"&&E<128||p==="latin1")&&(r=E)}}else typeof r=="number"?r=r&255:typeof r=="boolean"&&(r=Number(r));if(s<0||this.length<s||this.length<f)throw new RangeError("Out of range index");if(f<=s)return this;s=s>>>0,f=f===void 0?this.length:f>>>0,r||(r=0);let y;if(typeof r=="number")for(y=s;y<f;++y)this[y]=r;else{let E=a.isBuffer(r)?r:a.from(r,p),T=E.length;if(T===0)throw new TypeError('The value "'+r+'" is invalid for argument "value"');for(y=0;y<f-s;++y)this[y+s]=E[y%T]}return this},"fill");let Ye={};function Vt(u,r,s){Ye[u]=l(class extends s{constructor(){super(),Object.defineProperty(this,"message",{value:r.apply(this,arguments),writable:!0,configurable:!0}),this.name=`${this.name} [${u}]`,this.stack,delete this.name}get code(){return u}set code(p){Object.defineProperty(this,"code",{configurable:!0,enumerable:!0,value:p,writable:!0})}toString(){return`${this.name} [${u}]: ${this.message}`}},"NodeError")}l(Vt,"E"),Vt("ERR_BUFFER_OUT_OF_BOUNDS",function(u){return u?`${u} is outside of buffer bounds`:"Attempt to access memory outside buffer bounds"},RangeError),Vt("ERR_INVALID_ARG_TYPE",function(u,r){return`The "${u}" argument must be of type number. Received type ${typeof r}`},TypeError),Vt("ERR_OUT_OF_RANGE",function(u,r,s){let f=`The value of "${u}" is out of range.`,p=s;return Number.isInteger(s)&&Math.abs(s)>P(2,32)?p=zi(String(s)):typeof s=="bigint"&&(p=String(s),(s>P(BigInt(2),BigInt(32))||s<-P(BigInt(2),BigInt(32)))&&(p=zi(p)),p+="n"),f+=` It must be ${r}. Received ${p}`,f},RangeError);function zi(u){let r="",s=u.length,f=u[0]==="-"?1:0;for(;s>=f+4;s-=3)r=`_${u.slice(s-3,s)}${r}`;return`${u.slice(0,s)}${r}`}l(zi,"addNumericalSeparator");function Wn(u,r,s){Xe(r,"offset"),(u[r]===void 0||u[r+s]===void 0)&&nt(r,u.length-(s+1))}l(Wn,"checkBounds");function Vi(u,r,s,f,p,y){if(u>s||u<r){let E=typeof r=="bigint"?"n":"",T;throw y>3?r===0||r===BigInt(0)?T=`>= 0${E} and < 2${E} ** ${(y+1)*8}${E}`:T=`>= -(2${E} ** ${(y+1)*8-1}${E}) and < 2 ** ${(y+1)*8-1}${E}`:T=`>= ${r}${E} and <= ${s}${E}`,new Ye.ERR_OUT_OF_RANGE("value",T,u)}Wn(f,p,y)}l(Vi,"checkIntBI");function Xe(u,r){if(typeof u!="number")throw new Ye.ERR_INVALID_ARG_TYPE(r,"number",u)}l(Xe,"validateNumber");function nt(u,r,s){throw Math.floor(u)!==u?(Xe(u,s),new Ye.ERR_OUT_OF_RANGE(s||"offset","an integer",u)):r<0?new Ye.ERR_BUFFER_OUT_OF_BOUNDS:new Ye.ERR_OUT_OF_RANGE(s||"offset",`>= ${s?1:0} and <= ${r}`,u)}l(nt,"boundsError");let $n=/[^+/0-9A-Za-z-_]/g;function Kn(u){if(u=u.split("=")[0],u=u.trim().replace($n,""),u.length<2)return"";for(;u.length%4!==0;)u=u+"=";return u}l(Kn,"base64clean");function Wt(u,r){r=r||1/0;let s,f=u.length,p=null,y=[];for(let E=0;E<f;++E){if(s=u.charCodeAt(E),s>55295&&s<57344){if(!p){if(s>56319){(r-=3)>-1&&y.push(239,191,189);continue}else if(E+1===f){(r-=3)>-1&&y.push(239,191,189);continue}p=s;continue}if(s<56320){(r-=3)>-1&&y.push(239,191,189),p=s;continue}s=(p-55296<<10|s-56320)+65536}else p&&(r-=3)>-1&&y.push(239,191,189);if(p=null,s<128){if((r-=1)<0)break;y.push(s)}else if(s<2048){if((r-=2)<0)break;y.push(s>>6|192,s&63|128)}else if(s<65536){if((r-=3)<0)break;y.push(s>>12|224,s>>6&63|128,s&63|128)}else if(s<1114112){if((r-=4)<0)break;y.push(s>>18|240,s>>12&63|128,s>>6&63|128,s&63|128)}else throw new Error("Invalid code point")}return y}l(Wt,"utf8ToBytes");function jn(u){let r=[];for(let s=0;s<u.length;++s)r.push(u.charCodeAt(s)&255);return r}l(jn,"asciiToBytes");function Yn(u,r){let s,f,p,y=[];for(let E=0;E<u.length&&!((r-=2)<0);++E)s=u.charCodeAt(E),f=s>>8,p=s%256,y.push(p),y.push(f);return y}l(Yn,"utf16leToBytes");function Wi(u){return n.toByteArray(Kn(u))}l(Wi,"base64ToBytes");function gt(u,r,s,f){let p;for(p=0;p<f&&!(p+s>=r.length||p>=u.length);++p)r[p+s]=u[p];return p}l(gt,"blitBuffer");function we(u,r){return u instanceof r||u!=null&&u.constructor!=null&&u.constructor.name!=null&&u.constructor.name===r.name}l(we,"isInstance");function $t(u){return u!==u}l($t,"numberIsNaN");let Xn=function(){let u="0123456789abcdef",r=new Array(256);for(let s=0;s<16;++s){let f=s*16;for(let p=0;p<16;++p)r[f+p]=u[s]+u[p]}return r}();function Ie(u){return typeof BigInt=="undefined"?qn:u}l(Ie,"defineBigIntMethod");function qn(){throw new Error("BigInt not supported")}return l(qn,"BufferBigIntNotDefined"),Me}l(as,"dew");var ze=as();ze.Buffer;ze.SlowBuffer;ze.INSPECT_MAX_BYTES;ze.kMaxLength;var k=ze.Buffer,Aa=ze.INSPECT_MAX_BYTES,Pa=ze.kMaxLength;var Ii={};ot(Ii,{_toUnixTimestamp:()=>yn,access:()=>Mo,accessSync:()=>wa,appendFile:()=>po,appendFileSync:()=>Ho,chmod:()=>Po,chmodSync:()=>pa,chown:()=>Oo,chownSync:()=>ha,close:()=>yo,closeSync:()=>Zo,constants:()=>He,createReadStream:()=>$o,createWriteStream:()=>Ko,exists:()=>oo,existsSync:()=>En,fchmod:()=>xo,fchmodSync:()=>sa,fchown:()=>Fo,fchownSync:()=>na,fdatasync:()=>So,fdatasyncSync:()=>ta,fstat:()=>go,fstatSync:()=>Go,fsync:()=>wo,fsyncSync:()=>ea,ftruncate:()=>bo,ftruncateSync:()=>Qo,futimes:()=>Co,futimesSync:()=>oa,getMount:()=>Ge,getMounts:()=>wn,initialize:()=>Sn,lchmod:()=>Ro,lchmodSync:()=>ga,lchown:()=>Ao,lchownSync:()=>ma,link:()=>Io,linkSync:()=>ua,lstat:()=>co,lstatSync:()=>Xo,lutimes:()=>Do,lutimesSync:()=>ba,mkdir:()=>ko,mkdirSync:()=>ca,mount:()=>It,open:()=>fo,openSync:()=>Jo,promises:()=>dt,read:()=>vo,readFile:()=>ho,readFileSync:()=>Fn,readSync:()=>ra,readdir:()=>Bo,readdirSync:()=>la,readlink:()=>No,readlinkSync:()=>fa,realpath:()=>Uo,realpathSync:()=>Bi,rename:()=>so,renameSync:()=>jo,rmdir:()=>_o,rmdirSync:()=>aa,stat:()=>ao,statSync:()=>Yo,symlink:()=>To,symlinkSync:()=>da,truncate:()=>lo,truncateSync:()=>qo,umount:()=>Qt,unlink:()=>uo,unlinkSync:()=>vn,unwatchFile:()=>Vo,utimes:()=>Lo,utimesSync:()=>ya,watch:()=>Wo,watchFile:()=>zo,write:()=>Eo,writeFile:()=>mo,writeFileSync:()=>xn,writeSync:()=>ia});var ie=(v=>(v[v.EPERM=1]="EPERM",v[v.ENOENT=2]="ENOENT",v[v.EIO=5]="EIO",v[v.EBADF=9]="EBADF",v[v.EACCES=13]="EACCES",v[v.EBUSY=16]="EBUSY",v[v.EEXIST=17]="EEXIST",v[v.ENOTDIR=20]="ENOTDIR",v[v.EISDIR=21]="EISDIR",v[v.EINVAL=22]="EINVAL",v[v.EFBIG=27]="EFBIG",v[v.ENOSPC=28]="ENOSPC",v[v.EROFS=30]="EROFS",v[v.ENOTEMPTY=39]="ENOTEMPTY",v[v.ENOTSUP=95]="ENOTSUP",v))(ie||{}),H={};H[1]="Operation not permitted.";H[2]="No such file or directory.";H[5]="Input/output error.";H[9]="Bad file descriptor.";H[13]="Permission denied.";H[16]="Resource busy or locked.";H[17]="File exists.";H[20]="File is not a directory.";H[21]="File is a directory.";H[22]="Invalid argument.";H[27]="File is too big.";H[28]="No space left on disk.";H[30]="Cannot modify a read-only file system.";H[39]="Directory is not empty.";H[95]="Operation is not supported.";var h=class extends Error{constructor(e,i=H[e],o){super(i);this.syscall="";this.errno=e,this.code=ie[e],this.path=o,this.message=`Error: ${this.code}: ${i}${this.path?`, '${this.path}'`:""}`}static fromJSON(e){let i=new h(e.errno,e.message,e.path);return i.code=e.code,i.stack=e.stack,i}static fromBuffer(e,i=0){return h.fromJSON(JSON.parse(e.toString("utf8",i+4,i+4+e.readUInt32LE(i))))}static FileError(e,i){return new h(e,H[e],i)}static EACCES(e){return this.FileError(13,e)}static ENOENT(e){return this.FileError(2,e)}static EEXIST(e){return this.FileError(17,e)}static EISDIR(e){return this.FileError(21,e)}static ENOTDIR(e){return this.FileError(20,e)}static EPERM(e){return this.FileError(1,e)}static ENOTEMPTY(e){return this.FileError(39,e)}toString(){return this.message}toJSON(){return{errno:this.errno,code:this.code,path:this.path,stack:this.stack,message:this.message}}writeToBuffer(e=k.alloc(this.bufferSize()),i=0){let o=e.write(JSON.stringify(this.toJSON()),i+4);return e.writeUInt32LE(o,i),e}bufferSize(){return 4+k.byteLength(JSON.stringify(this.toJSON()))}};l(h,"ApiError");var Xt={},fn=!1,Je=typeof globalThis!="undefined"?globalThis:typeof self!="undefined"?self:global;function cs(){if(fn)return Xt;fn=!0;var n=Xt={},t,e;function i(){throw new Error("setTimeout has not been defined")}l(i,"defaultSetTimout");function o(){throw new Error("clearTimeout has not been defined")}l(o,"defaultClearTimeout"),function(){try{typeof setTimeout=="function"?t=setTimeout:t=i}catch(v){t=i}try{typeof clearTimeout=="function"?e=clearTimeout:e=o}catch(v){e=o}}();function c(v){if(t===setTimeout)return setTimeout(v,0);if((t===i||!t)&&setTimeout)return t=setTimeout,setTimeout(v,0);try{return t(v,0)}catch(_){try{return t.call(null,v,0)}catch(A){return t.call(this||Je,v,0)}}}l(c,"runTimeout");function a(v){if(e===clearTimeout)return clearTimeout(v);if((e===o||!e)&&clearTimeout)return e=clearTimeout,clearTimeout(v);try{return e(v)}catch(_){try{return e.call(null,v)}catch(A){return e.call(this||Je,v)}}}l(a,"runClearTimeout");var d=[],m=!1,b,S=-1;function w(){!m||!b||(m=!1,b.length?d=b.concat(d):S=-1,d.length&&x())}l(w,"cleanUpNextTick");function x(){if(!m){var v=c(w);m=!0;for(var _=d.length;_;){for(b=d,d=[];++S<_;)b&&b[S].run();S=-1,_=d.length}b=null,m=!1,a(v)}}l(x,"drainQueue"),n.nextTick=function(v){var _=new Array(arguments.length-1);if(arguments.length>1)for(var A=1;A<arguments.length;A++)_[A-1]=arguments[A];d.push(new F(v,_)),d.length===1&&!m&&c(x)};function F(v,_){(this||Je).fun=v,(this||Je).array=_}l(F,"Item"),F.prototype.run=function(){(this||Je).fun.apply(null,(this||Je).array)},n.title="browser",n.browser=!0,n.env={},n.argv=[],n.version="",n.versions={};function C(){}return l(C,"noop"),n.on=C,n.addListener=C,n.once=C,n.off=C,n.removeListener=C,n.removeAllListeners=C,n.emit=C,n.prependListener=C,n.prependOnceListener=C,n.listeners=function(v){return[]},n.binding=function(v){throw new Error("process.binding is not supported")},n.cwd=function(){return"/"},n.chdir=function(v){throw new Error("process.chdir is not supported")},n.umask=function(){return 0},Xt}l(cs,"dew");var z=cs();z.platform="browser";z.addListener;z.argv;z.binding;z.browser;z.chdir;z.cwd;z.emit;z.env;z.listeners;z.nextTick;z.off;z.on;z.once;z.prependListener;z.prependOnceListener;z.removeAllListeners;z.removeListener;z.title;z.umask;z.version;z.versions;var qt={},hn=!1;function ls(){if(hn)return qt;hn=!0;var n=z;function t(c){if(typeof c!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(c))}l(t,"assertPath");function e(c,a){for(var d="",m=0,b=-1,S=0,w,x=0;x<=c.length;++x){if(x<c.length)w=c.charCodeAt(x);else{if(w===47)break;w=47}if(w===47){if(!(b===x-1||S===1))if(b!==x-1&&S===2){if(d.length<2||m!==2||d.charCodeAt(d.length-1)!==46||d.charCodeAt(d.length-2)!==46){if(d.length>2){var F=d.lastIndexOf("/");if(F!==d.length-1){F===-1?(d="",m=0):(d=d.slice(0,F),m=d.length-1-d.lastIndexOf("/")),b=x,S=0;continue}}else if(d.length===2||d.length===1){d="",m=0,b=x,S=0;continue}}a&&(d.length>0?d+="/..":d="..",m=2)}else d.length>0?d+="/"+c.slice(b+1,x):d=c.slice(b+1,x),m=x-b-1;b=x,S=0}else w===46&&S!==-1?++S:S=-1}return d}l(e,"normalizeStringPosix");function i(c,a){var d=a.dir||a.root,m=a.base||(a.name||"")+(a.ext||"");return d?d===a.root?d+m:d+c+m:m}l(i,"_format");var o={resolve:l(function(){for(var a="",d=!1,m,b=arguments.length-1;b>=-1&&!d;b--){var S;b>=0?S=arguments[b]:(m===void 0&&(m=n.cwd()),S=m),t(S),S.length!==0&&(a=S+"/"+a,d=S.charCodeAt(0)===47)}return a=e(a,!d),d?a.length>0?"/"+a:"/":a.length>0?a:"."},"resolve"),normalize:l(function(a){if(t(a),a.length===0)return".";var d=a.charCodeAt(0)===47,m=a.charCodeAt(a.length-1)===47;return a=e(a,!d),a.length===0&&!d&&(a="."),a.length>0&&m&&(a+="/"),d?"/"+a:a},"normalize"),isAbsolute:l(function(a){return t(a),a.length>0&&a.charCodeAt(0)===47},"isAbsolute"),join:l(function(){if(arguments.length===0)return".";for(var a,d=0;d<arguments.length;++d){var m=arguments[d];t(m),m.length>0&&(a===void 0?a=m:a+="/"+m)}return a===void 0?".":o.normalize(a)},"join"),relative:l(function(a,d){if(t(a),t(d),a===d||(a=o.resolve(a),d=o.resolve(d),a===d))return"";for(var m=1;m<a.length&&a.charCodeAt(m)===47;++m);for(var b=a.length,S=b-m,w=1;w<d.length&&d.charCodeAt(w)===47;++w);for(var x=d.length,F=x-w,C=S<F?S:F,v=-1,_=0;_<=C;++_){if(_===C){if(F>C){if(d.charCodeAt(w+_)===47)return d.slice(w+_+1);if(_===0)return d.slice(w+_)}else S>C&&(a.charCodeAt(m+_)===47?v=_:_===0&&(v=0));break}var A=a.charCodeAt(m+_),L=d.charCodeAt(w+_);if(A!==L)break;A===47&&(v=_)}var V="";for(_=m+v+1;_<=b;++_)(_===b||a.charCodeAt(_)===47)&&(V.length===0?V+="..":V+="/..");return V.length>0?V+d.slice(w+v):(w+=v,d.charCodeAt(w)===47&&++w,d.slice(w))},"relative"),_makeLong:l(function(a){return a},"_makeLong"),dirname:l(function(a){if(t(a),a.length===0)return".";for(var d=a.charCodeAt(0),m=d===47,b=-1,S=!0,w=a.length-1;w>=1;--w)if(d=a.charCodeAt(w),d===47){if(!S){b=w;break}}else S=!1;return b===-1?m?"/":".":m&&b===1?"//":a.slice(0,b)},"dirname"),basename:l(function(a,d){if(d!==void 0&&typeof d!="string")throw new TypeError('"ext" argument must be a string');t(a);var m=0,b=-1,S=!0,w;if(d!==void 0&&d.length>0&&d.length<=a.length){if(d.length===a.length&&d===a)return"";var x=d.length-1,F=-1;for(w=a.length-1;w>=0;--w){var C=a.charCodeAt(w);if(C===47){if(!S){m=w+1;break}}else F===-1&&(S=!1,F=w+1),x>=0&&(C===d.charCodeAt(x)?--x===-1&&(b=w):(x=-1,b=F))}return m===b?b=F:b===-1&&(b=a.length),a.slice(m,b)}else{for(w=a.length-1;w>=0;--w)if(a.charCodeAt(w)===47){if(!S){m=w+1;break}}else b===-1&&(S=!1,b=w+1);return b===-1?"":a.slice(m,b)}},"basename"),extname:l(function(a){t(a);for(var d=-1,m=0,b=-1,S=!0,w=0,x=a.length-1;x>=0;--x){var F=a.charCodeAt(x);if(F===47){if(!S){m=x+1;break}continue}b===-1&&(S=!1,b=x+1),F===46?d===-1?d=x:w!==1&&(w=1):d!==-1&&(w=-1)}return d===-1||b===-1||w===0||w===1&&d===b-1&&d===m+1?"":a.slice(d,b)},"extname"),format:l(function(a){if(a===null||typeof a!="object")throw new TypeError('The "pathObject" argument must be of type Object. Received type '+typeof a);return i("/",a)},"format"),parse:l(function(a){t(a);var d={root:"",dir:"",base:"",ext:"",name:""};if(a.length===0)return d;var m=a.charCodeAt(0),b=m===47,S;b?(d.root="/",S=1):S=0;for(var w=-1,x=0,F=-1,C=!0,v=a.length-1,_=0;v>=S;--v){if(m=a.charCodeAt(v),m===47){if(!C){x=v+1;break}continue}F===-1&&(C=!1,F=v+1),m===46?w===-1?w=v:_!==1&&(_=1):w!==-1&&(_=-1)}return w===-1||F===-1||_===0||_===1&&w===F-1&&w===x+1?F!==-1&&(x===0&&b?d.base=d.name=a.slice(1,F):d.base=d.name=a.slice(x,F)):(x===0&&b?(d.name=a.slice(1,w),d.base=a.slice(1,F)):(d.name=a.slice(x,w),d.base=a.slice(x,F)),d.ext=a.slice(w,F)),x>0?d.dir=a.slice(0,x-1):b&&(d.dir="/"),d},"parse"),sep:"/",delimiter:":",win32:null,posix:null};return o.posix=o,qt=o,qt}l(ls,"dew");var Z=ls();var ac=Z._makeLong,re=Z.basename,cc=Z.delimiter,U=Z.dirname,lc=Z.extname,uc=Z.format,dc=Z.isAbsolute,Ee=Z.join,fc=Z.normalize,hc=Z.parse,Ne=Z.posix,mn=Z.relative,ve=Z.resolve,Ve=Z.sep,mc=Z.win32;var He={};ot(He,{COPYFILE_EXCL:()=>fs,COPYFILE_FICLONE:()=>hs,COPYFILE_FICLONE_FORCE:()=>ms,F_OK:()=>us,O_APPEND:()=>vs,O_CREAT:()=>bs,O_DIRECT:()=>Is,O_DIRECTORY:()=>Fs,O_DSYNC:()=>ks,O_EXCL:()=>ws,O_NOATIME:()=>xs,O_NOCTTY:()=>Ss,O_NOFOLLOW:()=>Cs,O_NONBLOCK:()=>Ts,O_RDONLY:()=>ps,O_RDWR:()=>ys,O_SYMLINK:()=>Bs,O_SYNC:()=>_s,O_TRUNC:()=>Es,O_WRONLY:()=>gs,R_OK:()=>_e,S_IFBLK:()=>Os,S_IFCHR:()=>Ns,S_IFDIR:()=>vt,S_IFIFO:()=>As,S_IFLNK:()=>Ft,S_IFMT:()=>de,S_IFREG:()=>Et,S_IFSOCK:()=>Ps,S_IRGRP:()=>zs,S_IROTH:()=>Ks,S_IRUSR:()=>Ls,S_IRWXG:()=>Ms,S_IRWXO:()=>$s,S_IRWXU:()=>Rs,S_IWGRP:()=>Vs,S_IWOTH:()=>js,S_IWUSR:()=>Ds,S_IXGRP:()=>Ws,S_IXOTH:()=>Ys,S_IXUSR:()=>Us,W_OK:()=>Oe,X_OK:()=>ds});var us=0,_e=4,Oe=2,ds=1,fs=1,hs=2,ms=4,ps=0,gs=1,ys=2,bs=64,ws=128,Ss=256,Es=512,vs=1024,Fs=65536,xs=262144,Cs=131072,_s=1052672,ks=4096,Bs=32768,Is=16384,Ts=2048,de=61440,Et=32768,vt=16384,Ns=8192,Os=24576,As=4096,Ft=40960,Ps=49152,Rs=448,Ls=256,Ds=128,Us=64,Ms=56,zs=32,Vs=16,Ws=8,$s=7,Ks=4,js=2,Ys=1;var Jt=class{constructor(t,e,i,o,c,a){this.uid=t;this.gid=e;this.suid=i;this.sgid=o;this.euid=c;this.egid=a}},q=Jt;l(q,"Cred"),q.Root=new Jt(0,0,0,0,0,0);var G=(i=>(i[i.FILE=32768]="FILE",i[i.DIRECTORY=16384]="DIRECTORY",i[i.SYMLINK=40960]="SYMLINK",i))(G||{}),Q=class{constructor(t,e,i,o,c,a,d,m,b){this.dev=0;this.ino=0;this.rdev=0;this.nlink=1;this.blksize=4096;this.uid=0;this.gid=0;this.fileData=null;this.size=e;let S=0;if(typeof o!="number"&&(S=Date.now(),o=S),typeof c!="number"&&(S||(S=Date.now()),c=S),typeof a!="number"&&(S||(S=Date.now()),a=S),typeof b!="number"&&(S||(S=Date.now()),b=S),typeof d!="number"&&(d=0),typeof m!="number"&&(m=0),this.atimeMs=o,this.ctimeMs=a,this.mtimeMs=c,this.birthtimeMs=b,i)this.mode=i;else switch(t){case G.FILE:this.mode=420;break;case G.DIRECTORY:default:this.mode=511}this.blocks=Math.ceil(e/512),this.mode&61440||(this.mode|=t)}static fromBuffer(t){let e=t.readUInt32LE(0),i=t.readUInt32LE(4),o=t.readDoubleLE(8),c=t.readDoubleLE(16),a=t.readDoubleLE(24),d=t.readUInt32LE(32),m=t.readUInt32LE(36);return new Q(i&61440,e,i&-61441,o,c,a,d,m)}static clone(t){return new Q(t.mode&61440,t.size,t.mode&-61441,t.atimeMs,t.mtimeMs,t.ctimeMs,t.uid,t.gid,t.birthtimeMs)}get atime(){return new Date(this.atimeMs)}get mtime(){return new Date(this.mtimeMs)}get ctime(){return new Date(this.ctimeMs)}get birthtime(){return new Date(this.birthtimeMs)}toBuffer(){let t=k.alloc(32);return t.writeUInt32LE(this.size,0),t.writeUInt32LE(this.mode,4),t.writeDoubleLE(this.atime.getTime(),8),t.writeDoubleLE(this.mtime.getTime(),16),t.writeDoubleLE(this.ctime.getTime(),24),t.writeUInt32LE(this.uid,32),t.writeUInt32LE(this.gid,36),t}isFile(){return(this.mode&61440)===32768}isDirectory(){return(this.mode&61440)===16384}isSymbolicLink(){return(this.mode&61440)===40960}hasAccess(t,e){if(e.euid===0||e.egid===0)return!0;let i=this.mode&-61441,o=15,c=15,a=15;if(e.euid==this.uid){let b=(3840&i)>>8;o=(t^b)&t}if(e.egid==this.gid){let b=(240&i)>>4;c=(t^b)&t}let d=15&i;return a=(t^d)&t,!(o&c&a)}getCred(t=this.uid,e=this.gid){return new q(t,e,this.uid,this.gid,t,e)}chmod(t){this.mode=this.mode&61440|t}chown(t,e){!isNaN(+t)&&0<=+t&&+t<P(2,32)&&(this.uid=t),!isNaN(+e)&&0<=+e&&+e<P(2,32)&&(this.gid=e)}isSocket(){return!1}isBlockDevice(){return!1}isCharacterDevice(){return!1}isFIFO(){return!1}};l(Q,"Stats");var Ct=(o=>(o[o.NOP=0]="NOP",o[o.THROW_EXCEPTION=1]="THROW_EXCEPTION",o[o.TRUNCATE_FILE=2]="TRUNCATE_FILE",o[o.CREATE_FILE=3]="CREATE_FILE",o))(Ct||{}),$e=class{static getFileFlag(t){return $e.flagCache.has(t)||$e.flagCache.set(t,new $e(t)),$e.flagCache.get(t)}constructor(t){if(this.flagStr=t,$e.validFlagStrs.indexOf(t)<0)throw new h(22,"Invalid flag: "+t)}getFlagString(){return this.flagStr}getMode(){let t=0;return t<<=1,t+=+this.isReadable(),t<<=1,t+=+this.isWriteable(),t<<=1,t}isReadable(){return this.flagStr.indexOf("r")!==-1||this.flagStr.indexOf("+")!==-1}isWriteable(){return this.flagStr.indexOf("w")!==-1||this.flagStr.indexOf("a")!==-1||this.flagStr.indexOf("+")!==-1}isTruncating(){return this.flagStr.indexOf("w")!==-1}isAppendable(){return this.flagStr.indexOf("a")!==-1}isSynchronous(){return this.flagStr.indexOf("s")!==-1}isExclusive(){return this.flagStr.indexOf("x")!==-1}pathExistsAction(){return this.isExclusive()?1:this.isTruncating()?2:0}pathNotExistsAction(){return(this.isWriteable()||this.isAppendable())&&this.flagStr!=="r+"?3:1}},O=$e;l(O,"FileFlag"),O.flagCache=new Map,O.validFlagStrs=["r","r+","rs","rs+","w","wx","w+","wx+","a","ax","a+","ax+"];var ct=class{sync(){return g(this,null,function*(){throw new h(95)})}syncSync(){throw new h(95)}datasync(){return g(this,null,function*(){return this.sync()})}datasyncSync(){return this.syncSync()}chown(t,e){return g(this,null,function*(){throw new h(95)})}chownSync(t,e){throw new h(95)}chmod(t){return g(this,null,function*(){throw new h(95)})}chmodSync(t){throw new h(95)}utimes(t,e){return g(this,null,function*(){throw new h(95)})}utimesSync(t,e){throw new h(95)}};l(ct,"BaseFile");var ce=class extends ct{constructor(e,i,o,c,a){super();this._pos=0;this._dirty=!1;if(this._fs=e,this._path=i,this._flag=o,this._stat=c,this._buffer=a||k.alloc(0),this._stat.size!==this._buffer.length&&this._flag.isReadable())throw new Error(`Invalid buffer: Buffer is ${this._buffer.length} long, yet Stats object specifies that file is ${this._stat.size} long.`)}getBuffer(){return this._buffer}getStats(){return this._stat}getFlag(){return this._flag}getPath(){return this._path}getPos(){return this._flag.isAppendable()?this._stat.size:this._pos}advancePos(e){return this._pos+=e}setPos(e){return this._pos=e}sync(){return g(this,null,function*(){this.syncSync()})}syncSync(){throw new h(95)}close(){return g(this,null,function*(){this.closeSync()})}closeSync(){throw new h(95)}stat(){return g(this,null,function*(){return Q.clone(this._stat)})}statSync(){return Q.clone(this._stat)}truncate(e){if(this.truncateSync(e),this._flag.isSynchronous()&&!Ge("/").metadata.synchronous)return this.sync()}truncateSync(e){if(this._dirty=!0,!this._flag.isWriteable())throw new h(1,"File not opened with a writeable mode.");if(this._stat.mtimeMs=Date.now(),e>this._buffer.length){let o=k.alloc(e-this._buffer.length,0);this.writeSync(o,0,o.length,this._buffer.length),this._flag.isSynchronous()&&Ge("/").metadata.synchronous&&this.syncSync();return}this._stat.size=e;let i=k.alloc(e);this._buffer.copy(i,0,0,e),this._buffer=i,this._flag.isSynchronous()&&Ge("/").metadata.synchronous&&this.syncSync()}write(e,i,o,c){return g(this,null,function*(){return this.writeSync(e,i,o,c)})}writeSync(e,i,o,c){if(this._dirty=!0,c==null&&(c=this.getPos()),!this._flag.isWriteable())throw new h(1,"File not opened with a writeable mode.");let a=c+o;if(a>this._stat.size&&(this._stat.size=a,a>this._buffer.length)){let m=k.alloc(a);this._buffer.copy(m),this._buffer=m}let d=e.copy(this._buffer,c,i,i+o);return this._stat.mtimeMs=Date.now(),this._flag.isSynchronous()?(this.syncSync(),d):(this.setPos(c+d),d)}read(e,i,o,c){return g(this,null,function*(){return{bytesRead:this.readSync(e,i,o,c),buffer:e}})}readSync(e,i,o,c){if(!this._flag.isReadable())throw new h(1,"File not opened with a readable mode.");c==null&&(c=this.getPos()),c+o>this._stat.size&&(o=this._stat.size-c);let d=this._buffer.copy(e,i,c,c+o);return this._stat.atimeMs=Date.now(),this._pos=c+o,d}chmod(e){return g(this,null,function*(){this.chmodSync(e)})}chmodSync(e){if(!this._fs.metadata.supportsProperties)throw new h(95);this._dirty=!0,this._stat.chmod(e),this.syncSync()}chown(e,i){return g(this,null,function*(){this.chownSync(e,i)})}chownSync(e,i){if(!this._fs.metadata.supportsProperties)throw new h(95);this._dirty=!0,this._stat.chown(e,i),this.syncSync()}isDirty(){return this._dirty}resetDirty(){this._dirty=!1}};l(ce,"PreloadFile");var xt=class extends ce{constructor(t,e,i,o,c){super(t,e,i,o,c)}sync(){return g(this,null,function*(){})}syncSync(){}close(){return g(this,null,function*(){})}closeSync(){}};l(xt,"NoSyncFile");var Ae=class{constructor(t){}};l(Ae,"FileSystem");var Ht=class extends Ae{constructor(e){super();this._ready=Promise.resolve(this)}get metadata(){return{name:this.constructor.name,readonly:!1,synchronous:!1,supportsProperties:!1,supportsLinks:!1,totalSpace:0,freeSpace:0}}whenReady(){return this._ready}openFile(e,i,o){return g(this,null,function*(){throw new h(95)})}createFile(e,i,o,c){return g(this,null,function*(){throw new h(95)})}open(e,i,o,c){return g(this,null,function*(){try{let a=yield this.stat(e,c);switch(i.pathExistsAction()){case 1:throw h.EEXIST(e);case 2:let d=yield this.openFile(e,i,c);if(!d)throw new Error("BFS has reached an impossible code path; please file a bug.");return yield d.truncate(0),yield d.sync(),d;case 0:return this.openFile(e,i,c);default:throw new h(22,"Invalid FileFlag object.")}}catch(a){switch(i.pathNotExistsAction()){case 3:let d=yield this.stat(U(e),c);if(d&&!d.isDirectory())throw h.ENOTDIR(U(e));return this.createFile(e,i,o,c);case 1:throw h.ENOENT(e);default:throw new h(22,"Invalid FileFlag object.")}}})}access(e,i,o){return g(this,null,function*(){throw new h(95)})}accessSync(e,i,o){throw new h(95)}rename(e,i,o){return g(this,null,function*(){throw new h(95)})}renameSync(e,i,o){throw new h(95)}stat(e,i){return g(this,null,function*(){throw new h(95)})}statSync(e,i){throw new h(95)}openFileSync(e,i,o){throw new h(95)}createFileSync(e,i,o,c){throw new h(95)}openSync(e,i,o,c){let a;try{a=this.statSync(e,c)}catch(d){switch(i.pathNotExistsAction()){case 3:if(!this.statSync(U(e),c).isDirectory())throw h.ENOTDIR(U(e));return this.createFileSync(e,i,o,c);case 1:throw h.ENOENT(e);default:throw new h(22,"Invalid FileFlag object.")}}if(!a.hasAccess(o,c))throw h.EACCES(e);switch(i.pathExistsAction()){case 1:throw h.EEXIST(e);case 2:return this.unlinkSync(e,c),this.createFileSync(e,i,a.mode,c);case 0:return this.openFileSync(e,i,c);default:throw new h(22,"Invalid FileFlag object.")}}unlink(e,i){return g(this,null,function*(){throw new h(95)})}unlinkSync(e,i){throw new h(95)}rmdir(e,i){return g(this,null,function*(){throw new h(95)})}rmdirSync(e,i){throw new h(95)}mkdir(e,i,o){return g(this,null,function*(){throw new h(95)})}mkdirSync(e,i,o){throw new h(95)}readdir(e,i){return g(this,null,function*(){throw new h(95)})}readdirSync(e,i){throw new h(95)}exists(e,i){return g(this,null,function*(){try{return yield this.stat(e,i),!0}catch(o){return!1}})}existsSync(e,i){try{return this.statSync(e,i),!0}catch(o){return!1}}realpath(e,i){return g(this,null,function*(){if(this.metadata.supportsLinks){let o=e.split(Ve);for(let c=0;c<o.length;c++){let a=o.slice(0,c+1);o[c]=Ee(...a)}return o.join(Ve)}else{if(!(yield this.exists(e,i)))throw h.ENOENT(e);return e}})}realpathSync(e,i){if(this.metadata.supportsLinks){let o=e.split(Ve);for(let c=0;c<o.length;c++){let a=o.slice(0,c+1);o[c]=Ee(...a)}return o.join(Ve)}else{if(this.existsSync(e,i))return e;throw h.ENOENT(e)}}truncate(e,i,o){return g(this,null,function*(){let c=yield this.open(e,O.getFileFlag("r+"),420,o);try{yield c.truncate(i)}finally{yield c.close()}})}truncateSync(e,i,o){let c=this.openSync(e,O.getFileFlag("r+"),420,o);try{c.truncateSync(i)}finally{c.closeSync()}}readFile(e,i,o,c){return g(this,null,function*(){let a=yield this.open(e,o,420,c);try{let d=yield a.stat(),m=k.alloc(d.size);return yield a.read(m,0,d.size,0),yield a.close(),i===null?m:m.toString(i)}finally{yield a.close()}})}readFileSync(e,i,o,c){let a=this.openSync(e,o,420,c);try{let d=a.statSync(),m=k.alloc(d.size);return a.readSync(m,0,d.size,0),a.closeSync(),i===null?m:m.toString(i)}finally{a.closeSync()}}writeFile(e,i,o,c,a,d){return g(this,null,function*(){let m=yield this.open(e,c,a,d);try{typeof i=="string"&&(i=k.from(i,o)),yield m.write(i,0,i.length,0)}finally{yield m.close()}})}writeFileSync(e,i,o,c,a,d){let m=this.openSync(e,c,a,d);try{typeof i=="string"&&(i=k.from(i,o)),m.writeSync(i,0,i.length,0)}finally{m.closeSync()}}appendFile(e,i,o,c,a,d){return g(this,null,function*(){let m=yield this.open(e,c,a,d);try{typeof i=="string"&&(i=k.from(i,o)),yield m.write(i,0,i.length,null)}finally{yield m.close()}})}appendFileSync(e,i,o,c,a,d){let m=this.openSync(e,c,a,d);try{typeof i=="string"&&(i=k.from(i,o)),m.writeSync(i,0,i.length,null)}finally{m.closeSync()}}chmod(e,i,o){return g(this,null,function*(){throw new h(95)})}chmodSync(e,i,o){throw new h(95)}chown(e,i,o,c){return g(this,null,function*(){throw new h(95)})}chownSync(e,i,o,c){throw new h(95)}utimes(e,i,o,c){return g(this,null,function*(){throw new h(95)})}utimesSync(e,i,o,c){throw new h(95)}link(e,i,o){return g(this,null,function*(){throw new h(95)})}linkSync(e,i,o){throw new h(95)}symlink(e,i,o,c){return g(this,null,function*(){throw new h(95)})}symlinkSync(e,i,o,c){throw new h(95)}readlink(e,i){return g(this,null,function*(){throw new h(95)})}readlinkSync(e,i){throw new h(95)}},fe=Ht;l(fe,"BaseFileSystem"),fe.Name=Ht.name;var Pe=class extends fe{get metadata(){return Se(ge({},super.metadata),{synchronous:!0})}access(t,e,i){return g(this,null,function*(){return this.accessSync(t,e,i)})}rename(t,e,i){return g(this,null,function*(){return this.renameSync(t,e,i)})}stat(t,e){return g(this,null,function*(){return this.statSync(t,e)})}open(t,e,i,o){return g(this,null,function*(){return this.openSync(t,e,i,o)})}unlink(t,e){return g(this,null,function*(){return this.unlinkSync(t,e)})}rmdir(t,e){return g(this,null,function*(){return this.rmdirSync(t,e)})}mkdir(t,e,i){return g(this,null,function*(){return this.mkdirSync(t,e,i)})}readdir(t,e){return g(this,null,function*(){return this.readdirSync(t,e)})}chmod(t,e,i){return g(this,null,function*(){return this.chmodSync(t,e,i)})}chown(t,e,i,o){return g(this,null,function*(){return this.chownSync(t,e,i,o)})}utimes(t,e,i,o){return g(this,null,function*(){return this.utimesSync(t,e,i,o)})}link(t,e,i){return g(this,null,function*(){return this.linkSync(t,e,i)})}symlink(t,e,i,o){return g(this,null,function*(){return this.symlinkSync(t,e,i,o)})}readlink(t,e){return g(this,null,function*(){return this.readlinkSync(t,e)})}};l(Pe,"SynchronousFileSystem");var se=class{constructor(t,e,i,o,c,a,d,m){this.id=t;this.size=e;this.mode=i;this.atime=o;this.mtime=c;this.ctime=a;this.uid=d;this.gid=m}static fromBuffer(t){if(t===void 0)throw new Error("NO");return new se(t.toString("ascii",38),t.readUInt32LE(0),t.readUInt16LE(4),t.readDoubleLE(6),t.readDoubleLE(14),t.readDoubleLE(22),t.readUInt32LE(30),t.readUInt32LE(34))}toStats(){return new Q((this.mode&61440)===G.DIRECTORY?G.DIRECTORY:G.FILE,this.size,this.mode,this.atime,this.mtime,this.ctime,this.uid,this.gid)}getSize(){return 38+this.id.length}toBuffer(t=k.alloc(this.getSize())){return t.writeUInt32LE(this.size,0),t.writeUInt16LE(this.mode,4),t.writeDoubleLE(this.atime,6),t.writeDoubleLE(this.mtime,14),t.writeDoubleLE(this.ctime,22),t.writeUInt32LE(this.uid,30),t.writeUInt32LE(this.gid,34),t.write(this.id,38,this.id.length,"ascii"),t}update(t){let e=!1;this.size!==t.size&&(this.size=t.size,e=!0),this.mode!==t.mode&&(this.mode=t.mode,e=!0);let i=t.atime.getTime();this.atime!==i&&(this.atime=i,e=!0);let o=t.mtime.getTime();this.mtime!==o&&(this.mtime=o,e=!0);let c=t.ctime.getTime();return this.ctime!==c&&(this.ctime=c,e=!0),this.uid!==t.uid&&(this.uid=t.uid,e=!0),this.uid!==t.uid&&(this.uid=t.uid,e=!0),e}isFile(){return(this.mode&61440)===G.FILE}isDirectory(){return(this.mode&61440)===G.DIRECTORY}};l(se,"Inode");function pn(n,t,e,i){i.existsSync(n,e)||(pn(U(n),t,e,i),i.mkdirSync(n,t,e))}l(pn,"mkdirpSync");function Xs(n,t=0,e=n.length){if(t<0||e<0||e>n.length||t>e)throw new TypeError(`Invalid slice bounds on buffer of length ${n.length}: [${t}, ${e}]`);return n.length===0?k.alloc(0):n.subarray(t,e)}l(Xs,"copyingSlice");function qs(n){return g(this,null,function*(){if(!k.isBuffer(n))throw new h(22,"option must be a Buffer.")})}l(qs,"bufferValidator");function _t(n,t,e,i,o){return Math.min(n+1,t+1,e+1,i===o?t:t+1)}l(_t,"_min");function Js(n,t){if(n===t)return 0;n.length>t.length&&([n,t]=[t,n]);let e=n.length,i=t.length;for(;e>0&&n.charCodeAt(e-1)===t.charCodeAt(i-1);)e--,i--;let o=0;for(;o<e&&n.charCodeAt(o)===t.charCodeAt(o);)o++;if(e-=o,i-=o,e===0||i===1)return i;let c=new Array(e<<1);for(let x=0;x<e;)c[e+x]=n.charCodeAt(o+x),c[x]=++x;let a,d,m,b,S;for(a=0;a+3<i;){let x=t.charCodeAt(o+(d=a)),F=t.charCodeAt(o+(m=a+1)),C=t.charCodeAt(o+(b=a+2)),v=t.charCodeAt(o+(S=a+3)),_=a+=4;for(let A=0;A<e;){let L=c[e+A],V=c[A];d=_t(V,d,m,x,L),m=_t(d,m,b,F,L),b=_t(m,b,S,C,L),_=_t(b,S,_,v,L),c[A++]=_,S=b,b=m,m=d,d=V}}let w=0;for(;a<i;){let x=t.charCodeAt(o+(d=a));w=++a;for(let F=0;F<e;F++){let C=c[F];c[F]=w=C<d||w<d?C>w?w+1:C+1:x===c[e+F]?d:d+1,d=C}}return w}l(Js,"levenshtein");function Gt(n,t){return g(this,null,function*(){let e=n.Options,i=n.Name,o=0,c=!1,a=!1;for(let d in e)if(Object.prototype.hasOwnProperty.call(e,d)){let m=e[d],b=t&&t[d];if(b==null){if(!m.optional){let S=Object.keys(t).filter(w=>!(w in e)).map(w=>({str:w,distance:Js(d,w)})).filter(w=>w.distance<5).sort((w,x)=>w.distance-x.distance);if(c)return;throw c=!0,new h(22,`[${i}] Required option '${d}' not provided.${S.length>0?` You provided unrecognized option '${S[0].str}'; perhaps you meant to type '${d}'.`:""}
2
+ Option description: ${m.description}`)}}else{let S=!1;if(Array.isArray(m.type)?S=m.type.indexOf(typeof b)!==-1:S=typeof b===m.type,S){if(m.validator){o++;try{yield m.validator(b)}catch(w){if(!c){if(w)throw c=!0,w;if(o--,o===0&&a)return}}}}else{if(c)return;throw c=!0,new h(22,`[${i}] Value provided for option ${d} is not the proper type. Expected ${Array.isArray(m.type)?`one of {${m.type.join(", ")}}`:m.type}, but received ${typeof b}
3
+ Option description: ${m.description}`)}}}a=!0})}l(Gt,"checkOptions");function Hs(n){return new Promise(t=>{setTimeout(t,n)})}l(Hs,"wait");function Gs(n){return function(...t){return new Promise((e,i)=>{t.push((o,...c)=>{o?i(o):e(c[0])}),n(...t)})}}l(Gs,"toPromise");var Zs=typeof globalThis.setImmediate=="function"?globalThis.setImmediate:n=>setTimeout(n,0),he="/";function lt(){return k.from("{}")}l(lt,"getEmptyDirNode");function Ke(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(n){let t=Math.random()*16|0;return(n==="x"?t:t&3|8).toString(16)})}l(Ke,"randomUUID");var Ze=class{constructor(t){this.store=t;this.originalData={};this.modifiedKeys=[]}get(t){let e=this.store.get(t);return this.stashOldValue(t,e),e}put(t,e,i){return this.markModified(t),this.store.put(t,e,i)}del(t){this.markModified(t),this.store.del(t)}commit(){}abort(){for(let t of this.modifiedKeys){let e=this.originalData[t];e?this.store.put(t,e,!0):this.store.del(t)}}_has(t){return Object.prototype.hasOwnProperty.call(this.originalData,t)}stashOldValue(t,e){this._has(t)||(this.originalData[t]=e)}markModified(t){this.modifiedKeys.indexOf(t)===-1&&(this.modifiedKeys.push(t),this._has(t)||(this.originalData[t]=this.store.get(t)))}};l(Ze,"SimpleSyncRWTransaction");var Qe=class extends ce{constructor(t,e,i,o,c){super(t,e,i,o,c)}syncSync(){this.isDirty()&&(this._fs._syncSync(this.getPath(),this.getBuffer(),this.getStats()),this.resetDirty())}closeSync(){this.syncSync()}};l(Qe,"SyncKeyValueFile");var et=class extends Pe{constructor(e){super();this.store=e.store,this.makeRootDirectory()}static isAvailable(){return!0}getName(){return this.store.name()}isReadOnly(){return!1}supportsSymlinks(){return!1}supportsProps(){return!0}supportsSynch(){return!0}empty(){this.store.clear(),this.makeRootDirectory()}accessSync(e,i,o){let c=this.store.beginTransaction("readonly");if(!this.findINode(c,e).toStats().hasAccess(i,o))throw h.EACCES(e)}renameSync(e,i,o){let c=this.store.beginTransaction("readwrite"),a=U(e),d=re(e),m=U(i),b=re(i),S=this.findINode(c,a),w=this.getDirListing(c,a,S);if(!S.toStats().hasAccess(2,o))throw h.EACCES(e);if(!w[d])throw h.ENOENT(e);let x=w[d];if(delete w[d],(m+"/").indexOf(e+"/")===0)throw new h(16,a);let F,C;if(m===a?(F=S,C=w):(F=this.findINode(c,m),C=this.getDirListing(c,m,F)),C[b]){let v=this.getINode(c,i,C[b]);if(v.isFile())try{c.del(v.id),c.del(C[b])}catch(_){throw c.abort(),_}else throw h.EPERM(i)}C[b]=x;try{c.put(S.id,k.from(JSON.stringify(w)),!0),c.put(F.id,k.from(JSON.stringify(C)),!0)}catch(v){throw c.abort(),v}c.commit()}statSync(e,i){let o=this.findINode(this.store.beginTransaction("readonly"),e).toStats();if(!o.hasAccess(4,i))throw h.EACCES(e);return o}createFileSync(e,i,o,c){let a=this.store.beginTransaction("readwrite"),d=k.alloc(0),m=this.commitNewFile(a,e,G.FILE,o,c,d);return new Qe(this,e,i,m.toStats(),d)}openFileSync(e,i,o){let c=this.store.beginTransaction("readonly"),a=this.findINode(c,e),d=c.get(a.id);if(!a.toStats().hasAccess(i.getMode(),o))throw h.EACCES(e);if(d===void 0)throw h.ENOENT(e);return new Qe(this,e,i,a.toStats(),d)}unlinkSync(e,i){this.removeEntry(e,!1,i)}rmdirSync(e,i){if(this.readdirSync(e,i).length>0)throw h.ENOTEMPTY(e);this.removeEntry(e,!0,i)}mkdirSync(e,i,o){let c=this.store.beginTransaction("readwrite"),a=k.from("{}");this.commitNewFile(c,e,G.DIRECTORY,i,o,a)}readdirSync(e,i){let o=this.store.beginTransaction("readonly"),c=this.findINode(o,e);if(!c.toStats().hasAccess(4,i))throw h.EACCES(e);return Object.keys(this.getDirListing(o,e,c))}chmodSync(e,i,o){this.openFileSync(e,O.getFileFlag("r+"),o).chmodSync(i)}chownSync(e,i,o,c){this.openFileSync(e,O.getFileFlag("r+"),c).chownSync(i,o)}_syncSync(e,i,o){let c=this.store.beginTransaction("readwrite"),a=this._findINode(c,U(e),re(e)),d=this.getINode(c,e,a),m=d.update(o);try{c.put(d.id,i,!0),m&&c.put(a,d.toBuffer(),!0)}catch(b){throw c.abort(),b}c.commit()}makeRootDirectory(){let e=this.store.beginTransaction("readwrite");if(e.get(he)===void 0){let i=new Date().getTime(),o=new se(Ke(),4096,511|G.DIRECTORY,i,i,i,0,0);e.put(o.id,lt(),!1),e.put(he,o.toBuffer(),!1),e.commit()}}_findINode(e,i,o,c=new Set){let a=Ne.join(i,o);if(c.has(a))throw new h(5,"Infinite loop detected while finding inode",a);c.add(a);let d=l(m=>{let b=this.getDirListing(e,i,m);if(b[o])return b[o];throw h.ENOENT(ve(i,o))},"readDirectory");return i==="."&&(i=N.cwd()),i==="/"?o===""?he:d(this.getINode(e,i,he)):d(this.getINode(e,i+Ve+o,this._findINode(e,U(i),re(i),c)))}findINode(e,i){return this.getINode(e,i,this._findINode(e,U(i),re(i)))}getINode(e,i,o){let c=e.get(o);if(c===void 0)throw h.ENOENT(i);return se.fromBuffer(c)}getDirListing(e,i,o){if(!o.isDirectory())throw h.ENOTDIR(i);let c=e.get(o.id);if(c===void 0)throw h.ENOENT(i);return JSON.parse(c.toString())}addNewNode(e,i){let c;for(;0<5;)try{return c=Ke(),e.put(c,i,!1),c}catch(a){}throw new h(5,"Unable to commit data to key-value store.")}commitNewFile(e,i,o,c,a,d){let m=U(i),b=re(i),S=this.findINode(e,m),w=this.getDirListing(e,m,S),x=new Date().getTime();if(!S.toStats().hasAccess(4,a))throw h.EACCES(i);if(i==="/")throw h.EEXIST(i);if(w[b])throw h.EEXIST(i);let F;try{let C=this.addNewNode(e,d);F=new se(C,d.length,c|o,x,x,x,a.uid,a.gid);let v=this.addNewNode(e,F.toBuffer());w[b]=v,e.put(S.id,k.from(JSON.stringify(w)),!0)}catch(C){throw e.abort(),C}return e.commit(),F}removeEntry(e,i,o){let c=this.store.beginTransaction("readwrite"),a=U(e),d=this.findINode(c,a),m=this.getDirListing(c,a,d),b=re(e);if(!m[b])throw h.ENOENT(e);let S=m[b],w=this.getINode(c,e,S);if(!w.toStats().hasAccess(2,o))throw h.EACCES(e);if(delete m[b],!i&&w.isDirectory())throw h.EISDIR(e);if(i&&!w.isDirectory())throw h.ENOTDIR(e);try{c.del(w.id),c.del(S),c.put(d.id,k.from(JSON.stringify(m)),!0)}catch(x){throw c.abort(),x}c.commit()}};l(et,"SyncKeyValueFileSystem");function Re(n,t){t=typeof n=="function"?n:t,Gt(this,n);let e=new this(typeof n=="function"?{}:n);if(typeof t!="function")return e.whenReady();e.whenReady().then(i=>t(null,i)).catch(i=>t(i))}l(Re,"CreateBackend");var kt=class{constructor(){this.store=new Map}name(){return me.Name}clear(){this.store.clear()}beginTransaction(t){return new Ze(this)}get(t){return this.store.get(t)}put(t,e,i){return!i&&this.store.has(t)?!1:(this.store.set(t,e),!0)}del(t){this.store.delete(t)}};l(kt,"InMemoryStore");var Zt=class extends et{constructor(){super({store:new kt})}},me=Zt;l(me,"InMemoryFileSystem"),me.Name="InMemory",me.Create=Re.bind(Zt),me.Options={};function yn(n){if(typeof n=="number")return n;if(n instanceof Date)return n.getTime()/1e3;throw new Error("Cannot parse time: "+n)}l(yn,"_toUnixTimestamp");function le(n,t){switch(typeof n){case"number":return n;case"string":let e=parseInt(n,8);return isNaN(e)?t:e;default:return t}}l(le,"normalizeMode");function oe(n){if(n instanceof Date)return n;if(typeof n=="number")return new Date(n*1e3);throw new h(22,"Invalid time.")}l(oe,"normalizeTime");function j(n){if(n.indexOf("\0")>=0)throw new h(22,"Path must be a string without null bytes.");if(n==="")throw new h(22,"Path must not be empty.");return n=n.replaceAll(/\/+/g,"/"),Ne.resolve(n)}l(j,"normalizePath");function Le(n,t,e,i){switch(n===null?"null":typeof n){case"object":return{encoding:typeof n.encoding!="undefined"?n.encoding:t,flag:typeof n.flag!="undefined"?n.flag:e,mode:le(n.mode,i)};case"string":return{encoding:n,flag:e,mode:i};case"null":case"undefined":case"function":return{encoding:t,flag:e,mode:i};default:throw new TypeError(`"options" must be a string or an object, got ${typeof n} instead.`)}}l(Le,"normalizeOptions");function I(){}l(I,"nop");var B;function bn(n){B=n}l(bn,"setCred");var je=new Map,Qs=100;function Bt(n){let t=Qs++;return je.set(t,n),t}l(Bt,"getFdForFile");function K(n){if(!je.has(n))throw new h(9,"Invalid file descriptor.");return je.get(n)}l(K,"fd2file");var ye=new Map;me.Create().then(n=>It("/",n));function Ge(n){return ye.get(n)}l(Ge,"getMount");function wn(){return Object.fromEntries(ye.entries())}l(wn,"getMounts");function It(n,t){if(n[0]!=="/"&&(n="/"+n),n=Ne.resolve(n),ye.has(n))throw new h(22,"Mount point "+n+" is already in use.");ye.set(n,t)}l(It,"mount");function Qt(n){if(n[0]!=="/"&&(n=`/${n}`),n=Ne.resolve(n),!ye.has(n))throw new h(22,"Mount point "+n+" is already unmounted.");ye.delete(n)}l(Qt,"umount");function pe(n){let t=[...ye].sort((e,i)=>e[0].length>i[0].length?-1:1);for(let[e,i]of t)if(e.length<=n.length&&n.startsWith(e))return n=n.slice(e.length>1?e.length:0),n===""&&(n="/"),{fs:i,path:n,mountPoint:e};throw new h(5,"ZenFS not initialized with a file system")}l(pe,"resolveFS");function gn(n,t){for(let[e,i]of Object.entries(t))n=n.replaceAll(e,i);return n}l(gn,"fixPaths");function De(n,t){return n.stack=gn(n.stack,t),n.message=gn(n.message,t),n}l(De,"fixError");function Sn(n){n["/"]&&Qt("/");for(let[t,e]of Object.entries(n)){if(!e.constructor.isAvailable())throw new h(22,`Can not mount "${t}" since the filesystem is unavailable.`);It(t,e)}}l(Sn,"initialize");var dt={};ot(dt,{access:()=>ki,appendFile:()=>si,chmod:()=>Fi,chown:()=>Ei,close:()=>ai,constants:()=>He,createReadStream:()=>ro,createWriteStream:()=>no,exists:()=>Tt,fchmod:()=>hi,fchown:()=>fi,fdatasync:()=>ui,fstat:()=>oi,fsync:()=>li,ftruncate:()=>ci,futimes:()=>mi,lchmod:()=>xi,lchown:()=>vi,link:()=>bi,lstat:()=>ii,lutimes:()=>_i,mkdir:()=>gi,open:()=>ni,read:()=>di,readFile:()=>Ot,readdir:()=>yi,readlink:()=>Si,realpath:()=>ut,rename:()=>ei,rmdir:()=>pi,stat:()=>ti,symlink:()=>wi,truncate:()=>ri,unlink:()=>Nt,unwatchFile:()=>to,utimes:()=>Ci,watch:()=>io,watchFile:()=>eo,write:()=>Pt,writeFile:()=>At});function Y(){return g(this,arguments,function*(...[n,t,e,...i]){e=j(e);let{fs:o,path:c}=pe(t&&(yield Tt(e))?yield ut(e):e);try{return o[n](c,...i)}catch(a){throw De(a,{[c]:e})}})}l(Y,"doOp");function ei(n,t){return g(this,null,function*(){n=j(n),t=j(t);let e=pe(n),i=pe(t),o={[e.path]:n,[i.path]:t};try{if(e===i)return e.fs.rename(e.path,i.path,B);let c=yield Ot(n);yield At(t,c),yield Nt(n)}catch(c){throw De(c,o)}})}l(ei,"rename");function Tt(n){return g(this,null,function*(){n=j(n);try{let{fs:t,path:e}=pe(n);return t.exists(e,B)}catch(t){if(t.errno==2)return!1;throw t}})}l(Tt,"exists");function ti(n){return g(this,null,function*(){return Y("stat",!0,n,B)})}l(ti,"stat");function ii(n){return g(this,null,function*(){return Y("stat",!1,n,B)})}l(ii,"lstat");function ri(n,t=0){return g(this,null,function*(){if(t<0)throw new h(22);return Y("truncate",!0,n,t,B)})}l(ri,"truncate");function Nt(n){return g(this,null,function*(){return Y("unlink",!1,n,B)})}l(Nt,"unlink");function ni(n,t,e=420){return g(this,null,function*(){let i=yield Y("open",!0,n,O.getFileFlag(t),le(e,420),B);return Bt(i)})}l(ni,"open");function Ot(e){return g(this,arguments,function*(n,t={}){let i=Le(t,null,"r",null),o=O.getFileFlag(i.flag);if(!o.isReadable())throw new h(22,"Flag passed to readFile must allow for reading.");return Y("readFile",!0,n,i.encoding,o,B)})}l(Ot,"readFile");function At(n,t,e){return g(this,null,function*(){let i=Le(e,"utf8","w",420),o=O.getFileFlag(i.flag);if(!o.isWriteable())throw new h(22,"Flag passed to writeFile must allow for writing.");return Y("writeFile",!0,n,t,i.encoding,o,i.mode,B)})}l(At,"writeFile");function si(n,t,e){return g(this,null,function*(){let i=Le(e,"utf8","a",420),o=O.getFileFlag(i.flag);if(!o.isAppendable())throw new h(22,"Flag passed to appendFile must allow for appending.");return Y("appendFile",!0,n,t,i.encoding,o,i.mode,B)})}l(si,"appendFile");function oi(n){return g(this,null,function*(){return K(n).stat()})}l(oi,"fstat");function ai(n){return g(this,null,function*(){yield K(n).close(),je.delete(n)})}l(ai,"close");function ci(n,t=0){return g(this,null,function*(){let e=K(n);if(t<0)throw new h(22);return e.truncate(t)})}l(ci,"ftruncate");function li(n){return g(this,null,function*(){return K(n).sync()})}l(li,"fsync");function ui(n){return g(this,null,function*(){return K(n).datasync()})}l(ui,"fdatasync");function Pt(n,t,e,i,o){return g(this,null,function*(){let c,a=0,d,m;if(typeof t=="string"){m=typeof e=="number"?e:null;let S=typeof i=="string"?i:"utf8";a=0,c=k.from(t,S),d=c.length}else c=t,a=e,d=i,m=typeof o=="number"?o:null;let b=K(n);return m==null&&(m=b.getPos()),b.write(c,a,d,m)})}l(Pt,"write");function di(n,t,e,i,o){return g(this,null,function*(){let c=K(n);return isNaN(+o)&&(o=c.getPos()),c.read(t,e,i,o)})}l(di,"read");function fi(n,t,e){return g(this,null,function*(){return K(n).chown(t,e)})}l(fi,"fchown");function hi(n,t){return g(this,null,function*(){let e=typeof t=="string"?parseInt(t,8):t;return K(n).chmod(e)})}l(hi,"fchmod");function mi(n,t,e){return g(this,null,function*(){return K(n).utimes(oe(t),oe(e))})}l(mi,"futimes");function pi(n){return g(this,null,function*(){return Y("rmdir",!0,n,B)})}l(pi,"rmdir");function gi(n,t){return g(this,null,function*(){return Y("mkdir",!0,n,le(t,511),B)})}l(gi,"mkdir");function yi(n){return g(this,null,function*(){n=j(n);let t=yield Y("readdir",!0,n,B),e=[...ye.keys()];for(let i of e)if(i.startsWith(n)){let o=i.slice(n.length);if(o.includes("/")||o.length==0)continue;t.push(o)}return t})}l(yi,"readdir");function bi(n,t){return g(this,null,function*(){return t=j(t),Y("link",!1,n,t,B)})}l(bi,"link");function wi(n,t,e="file"){return g(this,null,function*(){if(!["file","dir","junction"].includes(e))throw new h(22,"Invalid type: "+e);return t=j(t),Y("symlink",!1,n,t,e,B)})}l(wi,"symlink");function Si(n){return g(this,null,function*(){return Y("readlink",!1,n,B)})}l(Si,"readlink");function Ei(n,t,e){return g(this,null,function*(){return Y("chown",!0,n,t,e,B)})}l(Ei,"chown");function vi(n,t,e){return g(this,null,function*(){return Y("chown",!1,n,t,e,B)})}l(vi,"lchown");function Fi(n,t){return g(this,null,function*(){let e=le(t,-1);if(e<0)throw new h(22,"Invalid mode.");return Y("chmod",!0,n,e,B)})}l(Fi,"chmod");function xi(n,t){return g(this,null,function*(){let e=le(t,-1);if(e<1)throw new h(22,"Invalid mode.");return Y("chmod",!1,j(n),e,B)})}l(xi,"lchmod");function Ci(n,t,e){return g(this,null,function*(){return Y("utimes",!0,n,oe(t),oe(e),B)})}l(Ci,"utimes");function _i(n,t,e){return g(this,null,function*(){return Y("utimes",!1,n,oe(t),oe(e),B)})}l(_i,"lutimes");function ut(e){return g(this,arguments,function*(n,t={}){n=j(n);let{fs:i,path:o,mountPoint:c}=pe(n);try{if(!(yield i.stat(o,B)).isSymbolicLink())return n;let d=c+j(yield i.readlink(o,B));return ut(d)}catch(a){throw De(a,{[o]:n})}})}l(ut,"realpath");function eo(i,o){return g(this,arguments,function*(n,t,e=I){throw new h(95)})}l(eo,"watchFile");function to(e){return g(this,arguments,function*(n,t=I){throw new h(95)})}l(to,"unwatchFile");function io(i,o){return g(this,arguments,function*(n,t,e=I){throw new h(95)})}l(io,"watch");function ki(n,t=384){return g(this,null,function*(){return Y("access",!0,n,t,B)})}l(ki,"access");function ro(n,t){return g(this,null,function*(){throw new h(95)})}l(ro,"createReadStream");function no(n,t){return g(this,null,function*(){throw new h(95)})}l(no,"createWriteStream");function so(n,t,e=I){ei(n,t).then(()=>e()).catch(e)}l(so,"rename");function oo(n,t=I){Tt(n).then(t).catch(()=>t(!1))}l(oo,"exists");function ao(n,t=I){ti(n).then(e=>t(null,e)).catch(t)}l(ao,"stat");function co(n,t=I){ii(n).then(e=>t(null,e)).catch(t)}l(co,"lstat");function lo(n,t=0,e=I){e=typeof t=="function"?t:e,ri(n,typeof t=="number"?t:0).then(()=>e()).catch(e)}l(lo,"truncate");function uo(n,t=I){Nt(n).then(()=>t()).catch(t)}l(uo,"unlink");function fo(n,t,e,i=I){let o=le(e,420);i=typeof e=="function"?e:i,ni(n,t,o).then(c=>i(null,c)).catch(i)}l(fo,"open");function ho(n,t={},e=I){e=typeof t=="function"?t:e,Ot(n,typeof t=="function"?null:t)}l(ho,"readFile");function mo(n,t,e={},i=I){i=typeof e=="function"?e:i,At(n,t,typeof e=="function"?void 0:e)}l(mo,"writeFile");function po(n,t,e,i=I){i=typeof e=="function"?e:i,si(n,t,typeof e=="function"?null:e)}l(po,"appendFile");function go(n,t=I){oi(n).then(e=>t(null,e)).catch(t)}l(go,"fstat");function yo(n,t=I){ai(n).then(()=>t()).catch(t)}l(yo,"close");function bo(n,t,e=I){let i=typeof t=="number"?t:0;e=typeof t=="function"?t:e,ci(n,i)}l(bo,"ftruncate");function wo(n,t=I){li(n).then(()=>t()).catch(t)}l(wo,"fsync");function So(n,t=I){ui(n).then(()=>t()).catch(t)}l(So,"fdatasync");function Eo(n,t,e,i,o,c=I){let a,d,m,b=null,S;if(typeof t=="string"){switch(S="utf8",typeof e){case"function":c=e;break;case"number":b=e,S=typeof i=="string"?i:"utf8",c=typeof o=="function"?o:c;break;default:c=typeof i=="function"?i:typeof o=="function"?o:c,c(new h(22,"Invalid arguments."));return}a=k.from(t,S),d=0,m=a.length;let w=c;Pt(n,a,d,m,b).then(x=>w(null,x,a.toString(S))).catch(w)}else{a=t,d=e,m=i,b=typeof o=="number"?o:null;let w=typeof o=="function"?o:c;Pt(n,a,d,m,b).then(x=>w(null,x,a)).catch(w)}}l(Eo,"write");function vo(n,t,e,i,o,c=I){di(n,t,e,i,o).then(({bytesRead:a,buffer:d})=>c(null,a,d)).catch(c)}l(vo,"read");function Fo(n,t,e,i=I){fi(n,t,e).then(()=>i()).catch(i)}l(Fo,"fchown");function xo(n,t,e){hi(n,t).then(()=>e()).catch(e)}l(xo,"fchmod");function Co(n,t,e,i=I){mi(n,t,e).then(()=>i()).catch(i)}l(Co,"futimes");function _o(n,t=I){pi(n).then(()=>t()).catch(t)}l(_o,"rmdir");function ko(n,t,e=I){gi(n,t).then(()=>e()).catch(e)}l(ko,"mkdir");function Bo(n,t=I){yi(n).then(e=>t(null,e)).catch(t)}l(Bo,"readdir");function Io(n,t,e=I){bi(n,t).then(()=>e()).catch(e)}l(Io,"link");function To(n,t,e,i=I){let o=typeof e=="string"?e:"file";i=typeof e=="function"?e:i,wi(n,t,typeof e=="function"?null:e).then(()=>i()).catch(i)}l(To,"symlink");function No(n,t=I){Si(n).then(e=>t(null,e)).catch(t)}l(No,"readlink");function Oo(n,t,e,i=I){Ei(n,t,e).then(()=>i()).catch(i)}l(Oo,"chown");function Ao(n,t,e,i=I){vi(n,t,e).then(()=>i()).catch(i)}l(Ao,"lchown");function Po(n,t,e=I){Fi(n,t).then(()=>e()).catch(e)}l(Po,"chmod");function Ro(n,t,e=I){xi(n,t).then(()=>e()).catch(e)}l(Ro,"lchmod");function Lo(n,t,e,i=I){Ci(n,t,e).then(()=>i()).catch(i)}l(Lo,"utimes");function Do(n,t,e,i=I){_i(n,t,e).then(()=>i()).catch(i)}l(Do,"lutimes");function Uo(n,t,e=I){let i=typeof t=="object"?t:{};e=typeof t=="function"?t:e,ut(n,typeof t=="function"?null:t).then(o=>e(null,o)).catch(e)}l(Uo,"realpath");function Mo(n,t,e=I){let i=typeof t=="number"?t:4;e=typeof t=="function"?t:e,ki(n,typeof t=="function"?null:t).then(()=>e()).catch(e)}l(Mo,"access");function zo(n,t,e=I){throw new h(95)}l(zo,"watchFile");function Vo(n,t=I){throw new h(95)}l(Vo,"unwatchFile");function Wo(n,t,e=I){throw new h(95)}l(Wo,"watch");function $o(n,t){throw new h(95)}l($o,"createReadStream");function Ko(n,t){throw new h(95)}l(Ko,"createWriteStream");function X(...[n,t,e,...i]){e=j(e);let{fs:o,path:c}=pe(t&&En(e)?Bi(e):e);try{return o[n](c,...i)}catch(a){throw De(a,{[c]:e})}}l(X,"doOp");function jo(n,t){n=j(n),t=j(t);let e=pe(n),i=pe(t),o={[e.path]:n,[i.path]:t};try{if(e===i)return e.fs.renameSync(e.path,i.path,B);let c=Fn(n);xn(t,c),vn(n)}catch(c){throw De(c,o)}}l(jo,"renameSync");function En(n){n=j(n);try{let{fs:t,path:e}=pe(n);return t.existsSync(e,B)}catch(t){if(t.errno==2)return!1;throw t}}l(En,"existsSync");function Yo(n){return X("statSync",!0,n,B)}l(Yo,"statSync");function Xo(n){return X("statSync",!1,n,B)}l(Xo,"lstatSync");function qo(n,t=0){if(t<0)throw new h(22);return X("truncateSync",!0,n,t,B)}l(qo,"truncateSync");function vn(n){return X("unlinkSync",!1,n,B)}l(vn,"unlinkSync");function Jo(n,t,e=420){let i=X("openSync",!0,n,O.getFileFlag(t),le(e,420),B);return Bt(i)}l(Jo,"openSync");function Fn(n,t={}){let e=Le(t,null,"r",null),i=O.getFileFlag(e.flag);if(!i.isReadable())throw new h(22,"Flag passed to readFile must allow for reading.");return X("readFileSync",!0,n,e.encoding,i,B)}l(Fn,"readFileSync");function xn(n,t,e){let i=Le(e,"utf8","w",420),o=O.getFileFlag(i.flag);if(!o.isWriteable())throw new h(22,"Flag passed to writeFile must allow for writing.");return X("writeFileSync",!0,n,t,i.encoding,o,i.mode,B)}l(xn,"writeFileSync");function Ho(n,t,e){let i=Le(e,"utf8","a",420),o=O.getFileFlag(i.flag);if(!o.isAppendable())throw new h(22,"Flag passed to appendFile must allow for appending.");return X("appendFileSync",!0,n,t,i.encoding,o,i.mode,B)}l(Ho,"appendFileSync");function Go(n){return K(n).statSync()}l(Go,"fstatSync");function Zo(n){K(n).closeSync(),je.delete(n)}l(Zo,"closeSync");function Qo(n,t=0){let e=K(n);if(t<0)throw new h(22);e.truncateSync(t)}l(Qo,"ftruncateSync");function ea(n){K(n).syncSync()}l(ea,"fsyncSync");function ta(n){K(n).datasyncSync()}l(ta,"fdatasyncSync");function ia(n,t,e,i,o){let c,a=0,d,m;if(typeof t=="string"){m=typeof e=="number"?e:null;let S=typeof i=="string"?i:"utf8";a=0,c=k.from(t,S),d=c.length}else c=t,a=e,d=i,m=typeof o=="number"?o:null;let b=K(n);return m==null&&(m=b.getPos()),b.writeSync(c,a,d,m)}l(ia,"writeSync");function ra(n,t,e,i,o){let c=K(n),a=e;return typeof e=="object"&&({offset:a,length:i,position:o}=e),isNaN(+o)&&(o=c.getPos()),c.readSync(t,a,i,o)}l(ra,"readSync");function na(n,t,e){K(n).chownSync(t,e)}l(na,"fchownSync");function sa(n,t){let e=typeof t=="string"?parseInt(t,8):t;K(n).chmodSync(e)}l(sa,"fchmodSync");function oa(n,t,e){K(n).utimesSync(oe(t),oe(e))}l(oa,"futimesSync");function aa(n){return X("rmdirSync",!0,n,B)}l(aa,"rmdirSync");function ca(n,t){X("mkdirSync",!0,n,le(t,511),B)}l(ca,"mkdirSync");function la(n){n=j(n);let t=X("readdirSync",!0,n,B),e=[...ye.keys()];for(let i of e)if(i.startsWith(n)){let o=i.slice(n.length);if(o.includes("/")||o.length==0)continue;t.push(o)}return t}l(la,"readdirSync");function ua(n,t){return t=j(t),X("linkSync",!1,n,t,B)}l(ua,"linkSync");function da(n,t,e){if(!["file","dir","junction"].includes(e))throw new h(22,"Invalid type: "+e);return t=j(t),X("symlinkSync",!1,n,t,e,B)}l(da,"symlinkSync");function fa(n){return X("readlinkSync",!1,n,B)}l(fa,"readlinkSync");function ha(n,t,e){X("chownSync",!0,n,t,e,B)}l(ha,"chownSync");function ma(n,t,e){X("chownSync",!1,n,t,e,B)}l(ma,"lchownSync");function pa(n,t){let e=le(t,-1);if(e<0)throw new h(22,"Invalid mode.");X("chmodSync",!0,n,e,B)}l(pa,"chmodSync");function ga(n,t){let e=le(t,-1);if(e<1)throw new h(22,"Invalid mode.");X("chmodSync",!1,n,e,B)}l(ga,"lchmodSync");function ya(n,t,e){X("utimesSync",!0,n,oe(t),oe(e),B)}l(ya,"utimesSync");function ba(n,t,e){X("utimesSync",!1,n,oe(t),oe(e),B)}l(ba,"lutimesSync");function Bi(n,t={}){n=j(n);let{fs:e,path:i,mountPoint:o}=pe(n);try{if(!e.statSync(i,B).isSymbolicLink())return n;let a=j(o+e.readlinkSync(i,B));return Bi(a)}catch(c){throw De(c,{[i]:n})}}l(Bi,"realpathSync");function wa(n,t=384){return X("accessSync",!0,n,t,B)}l(wa,"accessSync");var Sa=Ii,Rt=Sa;var Lt=class extends ce{constructor(t,e,i,o,c){super(t,e,i,o,c)}syncSync(){this.isDirty()&&(this._fs._syncSync(this),this.resetDirty())}closeSync(){this.syncSync()}};l(Lt,"MirrorFile");var ft=class extends Pe{constructor({sync:e,async:i}){super();this._queue=[];this._queueRunning=!1;this._isInitialized=!1;this._initializeCallbacks=[];this._sync=e,this._async=i,this._ready=this._initialize()}static isAvailable(){return!0}get metadata(){return Se(ge({},super.metadata),{name:ft.Name,synchronous:!0,supportsProperties:this._sync.metadata.supportsProperties&&this._async.metadata.supportsProperties})}_syncSync(e){let i=e.getStats();this._sync.writeFileSync(e.getPath(),e.getBuffer(),null,O.getFileFlag("w"),i.mode,i.getCred(0,0)),this.enqueueOp({apiMethod:"writeFile",arguments:[e.getPath(),e.getBuffer(),null,e.getFlag(),i.mode,i.getCred(0,0)]})}renameSync(e,i,o){this._sync.renameSync(e,i,o),this.enqueueOp({apiMethod:"rename",arguments:[e,i,o]})}statSync(e,i){return this._sync.statSync(e,i)}openSync(e,i,o,c){return this._sync.openSync(e,i,o,c).closeSync(),new Lt(this,e,i,this._sync.statSync(e,c),this._sync.readFileSync(e,null,O.getFileFlag("r"),c))}unlinkSync(e,i){this._sync.unlinkSync(e,i),this.enqueueOp({apiMethod:"unlink",arguments:[e,i]})}rmdirSync(e,i){this._sync.rmdirSync(e,i),this.enqueueOp({apiMethod:"rmdir",arguments:[e,i]})}mkdirSync(e,i,o){this._sync.mkdirSync(e,i,o),this.enqueueOp({apiMethod:"mkdir",arguments:[e,i,o]})}readdirSync(e,i){return this._sync.readdirSync(e,i)}existsSync(e,i){return this._sync.existsSync(e,i)}chmodSync(e,i,o){this._sync.chmodSync(e,i,o),this.enqueueOp({apiMethod:"chmod",arguments:[e,i,o]})}chownSync(e,i,o,c){this._sync.chownSync(e,i,o,c),this.enqueueOp({apiMethod:"chown",arguments:[e,i,o,c]})}utimesSync(e,i,o,c){this._sync.utimesSync(e,i,o,c),this.enqueueOp({apiMethod:"utimes",arguments:[e,i,o,c]})}_initialize(){return g(this,null,function*(){if(!this._isInitialized){let e=l((c,a)=>g(this,null,function*(){if(c!=="/"){let m=yield this._async.stat(c,q.Root);this._sync.mkdirSync(c,a,m.getCred())}let d=yield this._async.readdir(c,q.Root);for(let m of d)yield o(Ee(c,m))}),"copyDirectory"),i=l((c,a)=>g(this,null,function*(){let d=yield this._async.readFile(c,null,O.getFileFlag("r"),q.Root);this._sync.writeFileSync(c,d,null,O.getFileFlag("w"),a,q.Root)}),"copyFile"),o=l(c=>g(this,null,function*(){let a=yield this._async.stat(c,q.Root);a.isDirectory()?yield e(c,a.mode):yield i(c,a.mode)}),"copyItem");try{yield e("/",0),this._isInitialized=!0}catch(c){throw this._isInitialized=!1,c}}return this})}enqueueOp(e){if(this._queue.push(e),!this._queueRunning){this._queueRunning=!0;let i=l(o=>{if(o)throw new Error(`WARNING: File system has desynchronized. Received following error: ${o}
4
+ $`);if(this._queue.length>0){let c=this._queue.shift();c.arguments.push(i),this._async[c.apiMethod].apply(this._async,c.arguments)}else this._queueRunning=!1},"doNextOp");i()}}},ke=ft;l(ke,"AsyncMirror"),ke.Name="AsyncMirror",ke.Create=Re.bind(ft),ke.Options={sync:{type:"object",description:"The synchronous file system to mirror the asynchronous file system to.",validator:e=>g(ft,null,function*(){if(!(e!=null&&e.metadata.synchronous))throw new h(22,"'sync' option must be a file system that supports synchronous operations")})},async:{type:"object",description:"The asynchronous file system to mirror."}};var Ti=class extends fe{constructor({folder:e,wrapped:i}){super();this._folder=e,this._wrapped=i,this._ready=this._initialize()}static isAvailable(){return!0}get metadata(){return Se(ge(ge({},super.metadata),this._wrapped.metadata),{supportsLinks:!1})}_initialize(){return g(this,null,function*(){if(!(yield this._wrapped.exists(this._folder,q.Root))&&this._wrapped.metadata.readonly)throw h.ENOENT(this._folder);return yield this._wrapped.mkdir(this._folder,511,q.Root),this})}},be=Ti;l(be,"FolderAdapter"),be.Name="FolderAdapter",be.Create=Re.bind(Ti),be.Options={folder:{type:"string",description:"The folder to use as the root directory"},wrapped:{type:"object",description:"The file system to wrap"}};function Cn(n,t){if(t!==null&&typeof t=="object"){let e=t,i=e.path;i&&(i="/"+mn(n,i),e.message=e.message.replace(e.path,i),e.path=i)}return t}l(Cn,"translateError");function Ea(n,t){return typeof t=="function"?function(e){arguments.length>0&&(arguments[0]=Cn(n,e)),t.apply(null,arguments)}:t}l(Ea,"wrapCallback");function _n(n,t,e){return n.slice(n.length-4)!=="Sync"?function(){return arguments.length>0&&(t&&(arguments[0]=Ee(this._folder,arguments[0])),e&&(arguments[1]=Ee(this._folder,arguments[1])),arguments[arguments.length-1]=Ea(this._folder,arguments[arguments.length-1])),this._wrapped[n].apply(this._wrapped,arguments)}:function(){try{return t&&(arguments[0]=Ee(this._folder,arguments[0])),e&&(arguments[1]=Ee(this._folder,arguments[1])),this._wrapped[n].apply(this._wrapped,arguments)}catch(i){throw Cn(this._folder,i)}}}l(_n,"wrapFunction");["diskSpace","stat","statSync","open","openSync","unlink","unlinkSync","rmdir","rmdirSync","mkdir","mkdirSync","readdir","readdirSync","exists","existsSync","realpath","realpathSync","truncate","truncateSync","readFile","readFileSync","writeFile","writeFileSync","appendFile","appendFileSync","chmod","chmodSync","chown","chownSync","utimes","utimesSync","readlink","readlinkSync"].forEach(n=>{be.prototype[n]=_n(n,!0,!1)});["rename","renameSync","link","linkSync","symlink","symlinkSync"].forEach(n=>{be.prototype[n]=_n(n,!0,!0)});var tt=class{constructor(){this._locks=new Map}lock(t){return new Promise(e=>{this._locks.has(t)?this._locks.get(t).push(e):this._locks.set(t,[])})}unlock(t){if(!this._locks.has(t))throw new Error("unlock of a non-locked mutex");let e=this._locks.get(t).shift();if(e){setTimeout(e,0);return}this._locks.delete(t)}tryLock(t){return this._locks.has(t)?!1:(this._locks.set(t,[]),!0)}isLocked(t){return this._locks.has(t)}};l(tt,"Mutex");var it=class{constructor(t){this._ready=Promise.resolve(this);this._fs=t,this._mu=new tt}whenReady(){return this._ready}get metadata(){return Se(ge({},this._fs.metadata),{name:"LockedFS<"+this._fs.metadata.name+">"})}get fs(){return this._fs}rename(t,e,i){return g(this,null,function*(){yield this._mu.lock(t),yield this._fs.rename(t,e,i),this._mu.unlock(t)})}renameSync(t,e,i){if(this._mu.isLocked(t))throw new Error("invalid sync call");return this._fs.renameSync(t,e,i)}stat(t,e){return g(this,null,function*(){yield this._mu.lock(t);let i=yield this._fs.stat(t,e);return this._mu.unlock(t),i})}statSync(t,e){if(this._mu.isLocked(t))throw new Error("invalid sync call");return this._fs.statSync(t,e)}access(t,e,i){return g(this,null,function*(){yield this._mu.lock(t),yield this._fs.access(t,e,i),this._mu.unlock(t)})}accessSync(t,e,i){if(this._mu.isLocked(t))throw new Error("invalid sync call");return this._fs.accessSync(t,e,i)}open(t,e,i,o){return g(this,null,function*(){yield this._mu.lock(t);let c=yield this._fs.open(t,e,i,o);return this._mu.unlock(t),c})}openSync(t,e,i,o){if(this._mu.isLocked(t))throw new Error("invalid sync call");return this._fs.openSync(t,e,i,o)}unlink(t,e){return g(this,null,function*(){yield this._mu.lock(t),yield this._fs.unlink(t,e),this._mu.unlock(t)})}unlinkSync(t,e){if(this._mu.isLocked(t))throw new Error("invalid sync call");return this._fs.unlinkSync(t,e)}rmdir(t,e){return g(this,null,function*(){yield this._mu.lock(t),yield this._fs.rmdir(t,e),this._mu.unlock(t)})}rmdirSync(t,e){if(this._mu.isLocked(t))throw new Error("invalid sync call");return this._fs.rmdirSync(t,e)}mkdir(t,e,i){return g(this,null,function*(){yield this._mu.lock(t),yield this._fs.mkdir(t,e,i),this._mu.unlock(t)})}mkdirSync(t,e,i){if(this._mu.isLocked(t))throw new Error("invalid sync call");return this._fs.mkdirSync(t,e,i)}readdir(t,e){return g(this,null,function*(){yield this._mu.lock(t);let i=yield this._fs.readdir(t,e);return this._mu.unlock(t),i})}readdirSync(t,e){if(this._mu.isLocked(t))throw new Error("invalid sync call");return this._fs.readdirSync(t,e)}exists(t,e){return g(this,null,function*(){yield this._mu.lock(t);let i=yield this._fs.exists(t,e);return this._mu.unlock(t),i})}existsSync(t,e){if(this._mu.isLocked(t))throw new Error("invalid sync call");return this._fs.existsSync(t,e)}realpath(t,e){return g(this,null,function*(){yield this._mu.lock(t);let i=yield this._fs.realpath(t,e);return this._mu.unlock(t),i})}realpathSync(t,e){if(this._mu.isLocked(t))throw new Error("invalid sync call");return this._fs.realpathSync(t,e)}truncate(t,e,i){return g(this,null,function*(){yield this._mu.lock(t),yield this._fs.truncate(t,e,i),this._mu.unlock(t)})}truncateSync(t,e,i){if(this._mu.isLocked(t))throw new Error("invalid sync call");return this._fs.truncateSync(t,e,i)}readFile(t,e,i,o){return g(this,null,function*(){yield this._mu.lock(t);let c=yield this._fs.readFile(t,e,i,o);return this._mu.unlock(t),c})}readFileSync(t,e,i,o){if(this._mu.isLocked(t))throw new Error("invalid sync call");return this._fs.readFileSync(t,e,i,o)}writeFile(t,e,i,o,c,a){return g(this,null,function*(){yield this._mu.lock(t),yield this._fs.writeFile(t,e,i,o,c,a),this._mu.unlock(t)})}writeFileSync(t,e,i,o,c,a){if(this._mu.isLocked(t))throw new Error("invalid sync call");return this._fs.writeFileSync(t,e,i,o,c,a)}appendFile(t,e,i,o,c,a){return g(this,null,function*(){yield this._mu.lock(t),yield this._fs.appendFile(t,e,i,o,c,a),this._mu.unlock(t)})}appendFileSync(t,e,i,o,c,a){if(this._mu.isLocked(t))throw new Error("invalid sync call");return this._fs.appendFileSync(t,e,i,o,c,a)}chmod(t,e,i){return g(this,null,function*(){yield this._mu.lock(t),yield this._fs.chmod(t,e,i),this._mu.unlock(t)})}chmodSync(t,e,i){if(this._mu.isLocked(t))throw new Error("invalid sync call");return this._fs.chmodSync(t,e,i)}chown(t,e,i,o){return g(this,null,function*(){yield this._mu.lock(t),yield this._fs.chown(t,e,i,o),this._mu.unlock(t)})}chownSync(t,e,i,o){if(this._mu.isLocked(t))throw new Error("invalid sync call");return this._fs.chownSync(t,e,i,o)}utimes(t,e,i,o){return g(this,null,function*(){yield this._mu.lock(t),yield this._fs.utimes(t,e,i,o),this._mu.unlock(t)})}utimesSync(t,e,i,o){if(this._mu.isLocked(t))throw new Error("invalid sync call");return this._fs.utimesSync(t,e,i,o)}link(t,e,i){return g(this,null,function*(){yield this._mu.lock(t),yield this._fs.link(t,e,i),this._mu.unlock(t)})}linkSync(t,e,i){if(this._mu.isLocked(t))throw new Error("invalid sync call");return this._fs.linkSync(t,e,i)}symlink(t,e,i,o){return g(this,null,function*(){yield this._mu.lock(t),yield this._fs.symlink(t,e,i,o),this._mu.unlock(t)})}symlinkSync(t,e,i,o){if(this._mu.isLocked(t))throw new Error("invalid sync call");return this._fs.symlinkSync(t,e,i,o)}readlink(t,e){return g(this,null,function*(){yield this._mu.lock(t);let i=yield this._fs.readlink(t,e);return this._mu.unlock(t),i})}readlinkSync(t,e){if(this._mu.isLocked(t))throw new Error("invalid sync call");return this._fs.readlinkSync(t,e)}};l(it,"LockedFS");var Be="/.deletedFiles.log";function kn(n){return 146|n}l(kn,"makeModeWritable");function ue(n){return O.getFileFlag(n)}l(ue,"getFlag");var ht=class extends ce{constructor(t,e,i,o,c){super(t,e,i,o,c)}sync(){return g(this,null,function*(){this.isDirty()&&(yield this._fs._syncAsync(this),this.resetDirty())})}syncSync(){this.isDirty()&&(this._fs._syncSync(this),this.resetDirty())}close(){return g(this,null,function*(){yield this.sync()})}closeSync(){this.syncSync()}};l(ht,"OverlayFile");var mt=class extends fe{constructor({writable:e,readable:i}){super();this._isInitialized=!1;this._deletedFiles={};this._deleteLog="";this._deleteLogUpdatePending=!1;this._deleteLogUpdateNeeded=!1;this._deleteLogError=null;if(this._writable=e,this._readable=i,this._writable.metadata.readonly)throw new h(22,"Writable file system must be writable.")}static isAvailable(){return!0}get metadata(){return Se(ge({},super.metadata),{name:Fe.Name,synchronous:this._readable.metadata.synchronous&&this._writable.metadata.synchronous,supportsProperties:this._readable.metadata.supportsProperties&&this._writable.metadata.supportsProperties})}getOverlayedFileSystems(){return{readable:this._readable,writable:this._writable}}_syncAsync(e){return g(this,null,function*(){let i=e.getStats();return yield this.createParentDirectoriesAsync(e.getPath(),i.getCred(0,0)),this._writable.writeFile(e.getPath(),e.getBuffer(),null,ue("w"),i.mode,i.getCred(0,0))})}_syncSync(e){let i=e.getStats();this.createParentDirectories(e.getPath(),i.getCred(0,0)),this._writable.writeFileSync(e.getPath(),e.getBuffer(),null,ue("w"),i.mode,i.getCred(0,0))}_initialize(){return g(this,null,function*(){if(!this._isInitialized){try{let e=yield this._writable.readFile(Be,"utf8",ue("r"),q.Root);this._deleteLog=e}catch(e){if(e.errno!==2)throw e}this._isInitialized=!0,this._reparseDeletionLog()}})}getDeletionLog(){return this._deleteLog}restoreDeletionLog(e,i){this._deleteLog=e,this._reparseDeletionLog(),this.updateLog("",i)}rename(e,i,o){return g(this,null,function*(){if(this.checkInitialized(),this.checkPath(e),this.checkPath(i),e===Be||i===Be)throw h.EPERM("Cannot rename deletion log.");let c=yield this.stat(e,o);if(c.isDirectory()){if(e===i)return;let a=511;if(yield this.exists(i,o)){let d=yield this.stat(i,o);if(a=d.mode,d.isDirectory()){if((yield this.readdir(i,o)).length>0)throw h.ENOTEMPTY(i)}else throw h.ENOTDIR(i)}if((yield this._writable.exists(e,o))?yield this._writable.rename(e,i,o):(yield this._writable.exists(i,o))||(yield this._writable.mkdir(i,a,o)),yield this._readable.exists(e,o))for(let d of yield this._readable.readdir(e,o))yield this.rename(ve(e,d),ve(i,d),o)}else{if((yield this.exists(i,o))&&(yield this.stat(i,o)).isDirectory())throw h.EISDIR(i);yield this.writeFile(i,yield this.readFile(e,null,ue("r"),o),null,ue("w"),c.mode,o)}e!==i&&(yield this.exists(e,o))&&(yield this.unlink(e,o))})}renameSync(e,i,o){if(this.checkInitialized(),this.checkPath(e),this.checkPath(i),e===Be||i===Be)throw h.EPERM("Cannot rename deletion log.");let c=this.statSync(e,o);if(c.isDirectory()){if(e===i)return;let a=511;if(this.existsSync(i,o)){let d=this.statSync(i,o);if(a=d.mode,d.isDirectory()){if(this.readdirSync(i,o).length>0)throw h.ENOTEMPTY(i)}else throw h.ENOTDIR(i)}this._writable.existsSync(e,o)?this._writable.renameSync(e,i,o):this._writable.existsSync(i,o)||this._writable.mkdirSync(i,a,o),this._readable.existsSync(e,o)&&this._readable.readdirSync(e,o).forEach(d=>{this.renameSync(ve(e,d),ve(i,d),o)})}else{if(this.existsSync(i,o)&&this.statSync(i,o).isDirectory())throw h.EISDIR(i);this.writeFileSync(i,this.readFileSync(e,null,ue("r"),o),null,ue("w"),c.mode,o)}e!==i&&this.existsSync(e,o)&&this.unlinkSync(e,o)}stat(e,i){return g(this,null,function*(){this.checkInitialized();try{return this._writable.stat(e,i)}catch(o){if(this._deletedFiles[e])throw h.ENOENT(e);let c=Q.clone(yield this._readable.stat(e,i));return c.mode=kn(c.mode),c}})}statSync(e,i){this.checkInitialized();try{return this._writable.statSync(e,i)}catch(o){if(this._deletedFiles[e])throw h.ENOENT(e);let c=Q.clone(this._readable.statSync(e,i));return c.mode=kn(c.mode),c}}open(e,i,o,c){return g(this,null,function*(){if(this.checkInitialized(),this.checkPath(e),e===Be)throw h.EPERM("Cannot open deletion log.");if(yield this.exists(e,c))switch(i.pathExistsAction()){case 2:return yield this.createParentDirectoriesAsync(e,c),this._writable.open(e,i,o,c);case 0:if(yield this._writable.exists(e,c))return this._writable.open(e,i,o,c);{let a=yield this._readable.readFile(e,null,ue("r"),c),d=Q.clone(yield this._readable.stat(e,c));return d.mode=o,new ht(this,e,i,d,a)}default:throw h.EEXIST(e)}else switch(i.pathNotExistsAction()){case 3:return yield this.createParentDirectoriesAsync(e,c),this._writable.open(e,i,o,c);default:throw h.ENOENT(e)}})}openSync(e,i,o,c){if(this.checkInitialized(),this.checkPath(e),e===Be)throw h.EPERM("Cannot open deletion log.");if(this.existsSync(e,c))switch(i.pathExistsAction()){case 2:return this.createParentDirectories(e,c),this._writable.openSync(e,i,o,c);case 0:if(this._writable.existsSync(e,c))return this._writable.openSync(e,i,o,c);{let a=this._readable.readFileSync(e,null,ue("r"),c),d=Q.clone(this._readable.statSync(e,c));return d.mode=o,new ht(this,e,i,d,a)}default:throw h.EEXIST(e)}else switch(i.pathNotExistsAction()){case 3:return this.createParentDirectories(e,c),this._writable.openSync(e,i,o,c);default:throw h.ENOENT(e)}}unlink(e,i){return g(this,null,function*(){if(this.checkInitialized(),this.checkPath(e),yield this.exists(e,i))(yield this._writable.exists(e,i))&&(yield this._writable.unlink(e,i)),(yield this.exists(e,i))&&this.deletePath(e,i);else throw h.ENOENT(e)})}unlinkSync(e,i){if(this.checkInitialized(),this.checkPath(e),this.existsSync(e,i))this._writable.existsSync(e,i)&&this._writable.unlinkSync(e,i),this.existsSync(e,i)&&this.deletePath(e,i);else throw h.ENOENT(e)}rmdir(e,i){return g(this,null,function*(){if(this.checkInitialized(),yield this.exists(e,i)){if((yield this._writable.exists(e,i))&&(yield this._writable.rmdir(e,i)),yield this.exists(e,i)){if((yield this.readdir(e,i)).length>0)throw h.ENOTEMPTY(e);this.deletePath(e,i)}}else throw h.ENOENT(e)})}rmdirSync(e,i){if(this.checkInitialized(),this.existsSync(e,i)){if(this._writable.existsSync(e,i)&&this._writable.rmdirSync(e,i),this.existsSync(e,i)){if(this.readdirSync(e,i).length>0)throw h.ENOTEMPTY(e);this.deletePath(e,i)}}else throw h.ENOENT(e)}mkdir(e,i,o){return g(this,null,function*(){if(this.checkInitialized(),yield this.exists(e,o))throw h.EEXIST(e);yield this.createParentDirectoriesAsync(e,o),yield this._writable.mkdir(e,i,o)})}mkdirSync(e,i,o){if(this.checkInitialized(),this.existsSync(e,o))throw h.EEXIST(e);this.createParentDirectories(e,o),this._writable.mkdirSync(e,i,o)}readdir(e,i){return g(this,null,function*(){if(this.checkInitialized(),!(yield this.stat(e,i)).isDirectory())throw h.ENOTDIR(e);let c=[];try{c=c.concat(yield this._writable.readdir(e,i))}catch(d){}try{c=c.concat((yield this._readable.readdir(e,i)).filter(d=>!this._deletedFiles[`${e}/${d}`]))}catch(d){}let a={};return c.filter(d=>{let m=!a[d];return a[d]=!0,m})})}readdirSync(e,i){if(this.checkInitialized(),!this.statSync(e,i).isDirectory())throw h.ENOTDIR(e);let c=[];try{c=c.concat(this._writable.readdirSync(e,i))}catch(d){}try{c=c.concat(this._readable.readdirSync(e,i).filter(d=>!this._deletedFiles[`${e}/${d}`]))}catch(d){}let a={};return c.filter(d=>{let m=!a[d];return a[d]=!0,m})}exists(e,i){return g(this,null,function*(){return this.checkInitialized(),(yield this._writable.exists(e,i))||(yield this._readable.exists(e,i))&&this._deletedFiles[e]!==!0})}existsSync(e,i){return this.checkInitialized(),this._writable.existsSync(e,i)||this._readable.existsSync(e,i)&&this._deletedFiles[e]!==!0}chmod(e,i,o){return g(this,null,function*(){this.checkInitialized(),yield this.operateOnWritableAsync(e,o),yield this._writable.chmod(e,i,o)})}chmodSync(e,i,o){this.checkInitialized(),this.operateOnWritable(e,o),this._writable.chmodSync(e,i,o)}chown(e,i,o,c){return g(this,null,function*(){this.checkInitialized(),yield this.operateOnWritableAsync(e,c),yield this._writable.chown(e,i,o,c)})}chownSync(e,i,o,c){this.checkInitialized(),this.operateOnWritable(e,c),this._writable.chownSync(e,i,o,c)}utimes(e,i,o,c){return g(this,null,function*(){this.checkInitialized(),yield this.operateOnWritableAsync(e,c),yield this._writable.utimes(e,i,o,c)})}utimesSync(e,i,o,c){this.checkInitialized(),this.operateOnWritable(e,c),this._writable.utimesSync(e,i,o,c)}deletePath(e,i){this._deletedFiles[e]=!0,this.updateLog(`d${e}
5
+ `,i)}updateLog(e,i){this._deleteLog+=e,this._deleteLogUpdatePending?this._deleteLogUpdateNeeded=!0:(this._deleteLogUpdatePending=!0,this._writable.writeFile(Be,this._deleteLog,"utf8",O.getFileFlag("w"),420,i).then(()=>{this._deleteLogUpdateNeeded&&(this._deleteLogUpdateNeeded=!1,this.updateLog("",i))}).catch(o=>{this._deleteLogError=o}).finally(()=>{this._deleteLogUpdatePending=!1}))}_reparseDeletionLog(){this._deletedFiles={},this._deleteLog.split(`
6
+ `).forEach(e=>{this._deletedFiles[e.slice(1)]=e.slice(0,1)==="d"})}checkInitialized(){if(this._isInitialized){if(this._deleteLogError!==null){let e=this._deleteLogError;throw this._deleteLogError=null,e}}else throw new h(1,"OverlayFS is not initialized. Please initialize OverlayFS using its initialize() method before using it.")}checkPath(e){if(e===Be)throw h.EPERM(e)}createParentDirectories(e,i){let o=U(e),c=[];for(;!this._writable.existsSync(o,i);)c.push(o),o=U(o);c=c.reverse();for(let a of c)this._writable.mkdirSync(a,this.statSync(a,i).mode,i)}createParentDirectoriesAsync(e,i){return g(this,null,function*(){let o=U(e),c=[];for(;!(yield this._writable.exists(o,i));)c.push(o),o=U(o);c=c.reverse();for(let a of c){let d=yield this.stat(a,i);yield this._writable.mkdir(a,d.mode,i)}})}operateOnWritable(e,i){if(!this.existsSync(e,i))throw h.ENOENT(e);this._writable.existsSync(e,i)||this.copyToWritable(e,i)}operateOnWritableAsync(e,i){return g(this,null,function*(){if(!(yield this.exists(e,i)))throw h.ENOENT(e);if(!(yield this._writable.exists(e,i)))return this.copyToWritableAsync(e,i)})}copyToWritable(e,i){let o=this.statSync(e,i);o.isDirectory()?this._writable.mkdirSync(e,o.mode,i):this.writeFileSync(e,this._readable.readFileSync(e,null,ue("r"),i),null,ue("w"),o.mode,i)}copyToWritableAsync(e,i){return g(this,null,function*(){let o=yield this.stat(e,i);o.isDirectory()?yield this._writable.mkdir(e,o.mode,i):yield this.writeFile(e,yield this._readable.readFile(e,null,ue("r"),i),null,ue("w"),o.mode,i)})}};l(mt,"UnlockedOverlayFS");var Dt=class extends it{static isAvailable(){return mt.isAvailable()}constructor(t){super(new mt(t)),this._ready=this._initialize()}getOverlayedFileSystems(){return super.fs.getOverlayedFileSystems()}getDeletionLog(){return super.fs.getDeletionLog()}resDeletionLog(){return super.fs.getDeletionLog()}unwrap(){return super.fs}_initialize(){return g(this,null,function*(){return yield Yi(Dt.prototype,this,"fs")._initialize(),this})}},Fe=Dt;l(Fe,"OverlayFS"),Fe.Name="OverlayFS",Fe.Create=Re.bind(Dt),Fe.Options={writable:{type:"object",description:"The file system to write modified files to."},readable:{type:"object",description:"The file system that initially populates this file system."}};var Ut={AsyncMirror:ke,FolderAdapter:be,InMemory:me,OverlayFS:Fe};function va(n,t){Ut[n]=t}l(va,"registerBackend");var pt=class{constructor(t,e){this.key=t;this.value=e;this.prev=null;this.next=null}};l(pt,"LRUNode");var Mt=class{constructor(t){this.limit=t;this.size=0;this.map={};this.head=null;this.tail=null}set(t,e){let i=new pt(t,e);this.map[t]?(this.map[t].value=i.value,this.remove(i.key)):this.size>=this.limit&&(delete this.map[this.tail.key],this.size--,this.tail=this.tail.prev,this.tail.next=null),this.setHead(i)}get(t){if(this.map[t]){let e=this.map[t].value,i=new pt(t,e);return this.remove(t),this.setHead(i),e}else return null}remove(t){let e=this.map[t];e&&(e.prev!==null?e.prev.next=e.next:this.head=e.next,e.next!==null?e.next.prev=e.prev:this.tail=e.prev,delete this.map[t],this.size--)}removeAll(){this.size=0,this.map={},this.head=null,this.tail=null}setHead(t){t.next=this.head,t.prev=null,this.head!==null&&(this.head.prev=t),this.head=t,this.tail===null&&(this.tail=t),this.size++,this.map[t.key]=t}};l(Mt,"LRUCache");var rt=class extends ce{constructor(t,e,i,o,c){super(t,e,i,o,c)}sync(){return g(this,null,function*(){this.isDirty()&&(yield this._fs._sync(this.getPath(),this.getBuffer(),this.getStats()),this.resetDirty())})}close(){return g(this,null,function*(){this.sync()})}};l(rt,"AsyncKeyValueFile");var zt=class extends fe{constructor(e){super();this._cache=null;e>0&&(this._cache=new Mt(e))}static isAvailable(){return!0}init(e){return g(this,null,function*(){this.store=e,yield this.makeRootDirectory()})}getName(){return this.store.name()}isReadOnly(){return!1}supportsSymlinks(){return!1}supportsProps(){return!0}supportsSynch(){return!1}empty(){return g(this,null,function*(){this._cache&&this._cache.removeAll(),yield this.store.clear(),yield this.makeRootDirectory()})}access(e,i,o){return g(this,null,function*(){let c=this.store.beginTransaction("readonly"),a=yield this.findINode(c,e);if(!a)throw h.ENOENT(e);if(!a.toStats().hasAccess(i,o))throw h.EACCES(e)})}rename(e,i,o){return g(this,null,function*(){let c=this._cache;this._cache&&(this._cache=null,c.removeAll());try{let a=this.store.beginTransaction("readwrite"),d=U(e),m=re(e),b=U(i),S=re(i),w=yield this.findINode(a,d),x=yield this.getDirListing(a,d,w);if(!w.toStats().hasAccess(2,o))throw h.EACCES(e);if(!x[m])throw h.ENOENT(e);let F=x[m];if(delete x[m],(b+"/").indexOf(e+"/")===0)throw new h(16,d);let C,v;if(b===d?(C=w,v=x):(C=yield this.findINode(a,b),v=yield this.getDirListing(a,b,C)),v[S]){let _=yield this.getINode(a,i,v[S]);if(_.isFile())try{yield a.del(_.id),yield a.del(v[S])}catch(A){throw yield a.abort(),A}else throw h.EPERM(i)}v[S]=F;try{yield a.put(w.id,k.from(JSON.stringify(x)),!0),yield a.put(C.id,k.from(JSON.stringify(v)),!0)}catch(_){throw yield a.abort(),_}yield a.commit()}finally{c&&(this._cache=c)}})}stat(e,i){return g(this,null,function*(){let o=this.store.beginTransaction("readonly"),a=(yield this.findINode(o,e)).toStats();if(!a.hasAccess(4,i))throw h.EACCES(e);return a})}createFile(e,i,o,c){return g(this,null,function*(){let a=this.store.beginTransaction("readwrite"),d=k.alloc(0),m=yield this.commitNewFile(a,e,G.FILE,o,c,d);return new rt(this,e,i,m.toStats(),d)})}openFile(e,i,o){return g(this,null,function*(){let c=this.store.beginTransaction("readonly"),a=yield this.findINode(c,e),d=yield c.get(a.id);if(!a.toStats().hasAccess(i.getMode(),o))throw h.EACCES(e);if(d===void 0)throw h.ENOENT(e);return new rt(this,e,i,a.toStats(),d)})}unlink(e,i){return g(this,null,function*(){return this.removeEntry(e,!1,i)})}rmdir(e,i){return g(this,null,function*(){if((yield this.readdir(e,i)).length>0)throw h.ENOTEMPTY(e);yield this.removeEntry(e,!0,i)})}mkdir(e,i,o){return g(this,null,function*(){let c=this.store.beginTransaction("readwrite"),a=k.from("{}");yield this.commitNewFile(c,e,G.DIRECTORY,i,o,a)})}readdir(e,i){return g(this,null,function*(){let o=this.store.beginTransaction("readonly"),c=yield this.findINode(o,e);if(!c.toStats().hasAccess(4,i))throw h.EACCES(e);return Object.keys(yield this.getDirListing(o,e,c))})}chmod(e,i,o){return g(this,null,function*(){yield(yield this.openFile(e,O.getFileFlag("r+"),o)).chmod(i)})}chown(e,i,o,c){return g(this,null,function*(){yield(yield this.openFile(e,O.getFileFlag("r+"),c)).chown(i,o)})}_sync(e,i,o){return g(this,null,function*(){let c=this.store.beginTransaction("readwrite"),a=yield this._findINode(c,U(e),re(e)),d=yield this.getINode(c,e,a),m=d.update(o);try{yield c.put(d.id,i,!0),m&&(yield c.put(a,d.toBuffer(),!0))}catch(b){throw yield c.abort(),b}yield c.commit()})}makeRootDirectory(){return g(this,null,function*(){let e=this.store.beginTransaction("readwrite");if((yield e.get(he))===void 0){let i=new Date().getTime(),o=new se(Ke(),4096,511|G.DIRECTORY,i,i,i,0,0);yield e.put(o.id,lt(),!1),yield e.put(he,o.toBuffer(),!1),yield e.commit()}})}_findINode(a,d,m){return g(this,arguments,function*(e,i,o,c=new Set){let b=Ne.join(i,o);if(c.has(b))throw new h(5,"Infinite loop detected while finding inode",b);if(c.add(b),this._cache){let S=this._cache.get(b);if(S)return S}if(i==="/"){if(o==="")return this._cache&&this._cache.set(b,he),he;{let S=yield this.getINode(e,i,he),w=yield this.getDirListing(e,i,S);if(w[o]){let x=w[o];return this._cache&&this._cache.set(b,x),x}else throw h.ENOENT(ve(i,o))}}else{let S=yield this.findINode(e,i,c),w=yield this.getDirListing(e,i,S);if(w[o]){let x=w[o];return this._cache&&this._cache.set(b,x),x}else throw h.ENOENT(ve(i,o))}})}findINode(c,a){return g(this,arguments,function*(e,i,o=new Set){let d=yield this._findINode(e,U(i),re(i),o);return this.getINode(e,i,d)})}getINode(e,i,o){return g(this,null,function*(){let c=yield e.get(o);if(!c)throw h.ENOENT(i);return se.fromBuffer(c)})}getDirListing(e,i,o){return g(this,null,function*(){if(!o.isDirectory())throw h.ENOTDIR(i);let c=yield e.get(o.id);try{return JSON.parse(c.toString())}catch(a){throw h.ENOENT(i)}})}addNewNode(e,i){return g(this,null,function*(){let o=0,c=l(()=>g(this,null,function*(){if(++o===5)throw new h(5,"Unable to commit data to key-value store.");{let a=Ke();return(yield e.put(a,i,!1))?a:c()}}),"reroll");return c()})}commitNewFile(e,i,o,c,a,d){return g(this,null,function*(){let m=U(i),b=re(i),S=yield this.findINode(e,m),w=yield this.getDirListing(e,m,S),x=new Date().getTime();if(!S.toStats().hasAccess(2,a))throw h.EACCES(i);if(i==="/")throw h.EEXIST(i);if(w[b])throw yield e.abort(),h.EEXIST(i);try{let F=yield this.addNewNode(e,d),C=new se(F,d.length,c|o,x,x,x,a.uid,a.gid),v=yield this.addNewNode(e,C.toBuffer());return w[b]=v,yield e.put(S.id,k.from(JSON.stringify(w)),!0),yield e.commit(),C}catch(F){throw e.abort(),F}})}removeEntry(e,i,o){return g(this,null,function*(){this._cache&&this._cache.remove(e);let c=this.store.beginTransaction("readwrite"),a=U(e),d=yield this.findINode(c,a),m=yield this.getDirListing(c,a,d),b=re(e);if(!m[b])throw h.ENOENT(e);let S=m[b],w=yield this.getINode(c,e,S);if(!w.toStats().hasAccess(2,o))throw h.EACCES(e);if(delete m[b],!i&&w.isDirectory())throw h.EISDIR(e);if(i&&!w.isDirectory())throw h.ENOTDIR(e);try{yield c.del(w.id),yield c.del(S),yield c.put(d.id,k.from(JSON.stringify(m)),!0)}catch(x){throw yield c.abort(),x}yield c.commit()})}};l(zt,"AsyncKeyValueFileSystem");N&&void 0&&(void 0)();function In(n,t=0,e=0){return bn(new q(t,e,t,e,t,e)),Rt.initialize(n)}l(In,"initialize");function Bn(n){return g(this,null,function*(){("fs"in n||n instanceof Ae)&&(n={"/":n});for(let[t,e]of Object.entries(n))typeof e!="number"&&(t=t.toString(),!(e instanceof Ae)&&(typeof e=="string"&&(e={fs:e}),n[t]=yield Tn(e)));return In(n)})}l(Bn,"_configure");function Fa(n,t){if(typeof t!="function")return Bn(n);Bn(n).then(()=>t()).catch(e=>t(e))}l(Fa,"configure");function Ni(e){return g(this,arguments,function*({fs:n,options:t={}}){if(!n)throw new h(1,'Missing "fs" property on configuration object.');if(typeof t!="object"||t===null)throw new h(22,'Invalid "options" property on configuration object.');let i=Object.keys(t).filter(c=>c!="fs");for(let c of i){let a=t[c];if(a===null||typeof a!="object"||!("fs"in a))continue;let d=yield Ni(a);t[c]=d}let o=Ut[n];if(o)return o.Create(t);throw new h(1,`File system ${n} is not available in ZenFS.`)})}l(Ni,"_getFileSystem");function Tn(n,t){if(typeof t!="function")return Ni(n);Ni(n).then(e=>t(null,e)).catch(e=>t(e))}l(Tn,"getFileSystem");var xa=Rt;return rs(Ca);})();
7
+ /*! Bundled license information:
8
+
9
+ @jspm/core/nodelibs/browser/buffer.js:
10
+ (*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> *)
11
+ */
12
+ //# sourceMappingURL=browser.min.js.map