else{s=n;varr=Object.keys(s);e(null,r)}}functioni(n,i){n?e(n):(a=i,t.get(a.data,r))}n=mn(n),En(n);vara,s;o(t,n,i)}functionw(t,n,e,i){functiona(n,e){n?i(n):(l=e,t.get(l.data,s))}functions(t,n){t?i(t):(h=n,pn(h).has(d)?i(newVn.EEXIST):u())}functionu(){p=newWn(void0,In),p.nlinks+=1,p.size=n.length,p.data=n,t.put(p.id,p,f)}functionc(n){if(n)i(n);else{vare=Date.now();r(t,g,l,{mtime:e,ctime:e},i)}}functionf(n){n?i(n):(h[d]=newBn(p.id,In),t.put(l.data,h,c))}e=mn(e);varl,h,p,d=En(e),g=yn(e);xn==d?i(newVn.EEXIST):o(t,g,a)}functionb(t,n,e){functionr(n,r){n?e(n):(s=r,t.get(s.data,i))}functioni(n,r){n?e(n):(u=r,pn(u).has(c)?t.get(u[c].id,a):e(newVn.ENOENT("a component of the path does not name an existing file")))}functiona(t,n){t?e(t):n.mode!=In?e(newVn.EINVAL("path not a symbolic link")):e(null,n.data)}n=mn(n);vars,u,c=En(n),f=yn(n);o(t,f,r)}functionA(t,n,e,i){functiona(n,e){n?i(n):e.mode==Tn?i(newVn.EISDIR):(f=e,t.get(f.data,s))}functions(n,r){if(n)i(n);else{varo=newUint8Array(e);r&&o.set(r.subarray(0,e)),t.put(f.data,o,c)}}functionu(e){if(e)i(e);else{varo=Date.now();r(t,n,f,{mtime:o,ctime:o},i)}}functionc(n){n?i(n):(f.size=e,f.version+=1,t.put(f.id,f,u))}n=mn(n);varf;0>e?i(newVn.EINVAL("length cannot be negative")):o(t,n,a)}functionO(t,n,e,i){functiono(n,e){n?i(n):e.mode==Tn?i(newVn.EISDIR):(c=e,t.get(c.data,a))}functiona(n,r){if(n)i(n);else{varo=newUint8Array(e);r&&o.set(r.subarray(0,e)),t.put(c.data,o,u)}}functions(e){if(e)i(e);else{varo=Date.now();r(t,n.path,c,{mtime:o,ctime:o},i)}}functionu(n){n?i(n):(c.size=e,c.version+=1,t.put(c.id,c,s))}varc;0>e?i(newVn.EINVAL("length cannot be negative")):t.get(n.id,o)}functionT(t,n,e,i,a){functions(o,s){o?a(o):r(t,n,s,{atime:e,ctime:i,mtime:i},a)}n=mn(n),"number"!=typeofe||"number"!=typeofi?a(newVn.EINVAL("atime and mtime must be number")):0>e||0>i?a(newVn.EINVAL("atime and mtime must be positive integers")):o(t,n,s)}functionI(t,n,e,i,o){functiona(a,s){a?o(a):r(t,n.path,s,{atime:e,ctime:i,mtime:i},o)}"number"!=typeofe||"number"!=typeofi?o(newVn.EINVAL("atime and mtime must be a number")):0>e||0>i?o(newVn.EINVAL("atime and mtime must be positive integers")):t.get(n.id,a)}functionS(t,n,e,r,i,o){n=mn(n),"string"!=typeofe?o(newVn.EINVAL("attribute name must be a string")):e?null!==i&&i!==Fn&&i!==Un?o(newVn.EINVAL("invalid flag, must be null, XATTR_CREATE or XATTR_REPLACE")):a(t,n,e,r,i,o):o(newVn.EINVAL("attribute name cannot be an empty string"))}functionx(t,n,e,r,i,o){"string"!=typeofe?o(newVn.EINVAL("attribute name must be a string")):e?null!==i&&i!==Fn&&i!==Un?o(newVn.EINVAL("invalid flag, must be null, XATTR_CREATE or XATTR_REPLACE")):a(t,n,e,r,i,o):o(newVn.EINVAL("attribute name cannot be an empty string"))}functionN(t,n,e,r){functioni(t,n){n?n.xattrs[e]:null,t?r(t):n.xattrs.hasOwnProperty(e)?r(null,n.xattrs[e]):r(newVn.ENOATTR)}n=mn(n),"string"!=typeofe?r(newVn.EINVAL("attribute name must be a string")):e?o(t,n,i):r(newVn.EINVAL("attribute name cannot be an empty string"))}functionk(t,n,e,r){functioni(t,n){n?n.xattrs[e]:null,t?r(t):n.xattrs.hasOwnProperty(e)?r(null,n.xattrs[e]):r(newVn.ENOATTR)}"string"!=typeofe?r(newVn.EINVAL):e?t.get(n.id,i):r(newVn.EINVAL("attribute name cannot be an empty string"))}function_(t,n,e,i){functiona(o,a){functions(e){e?i(e):r(t,n,a,{ctime:Date.now()},i)}varu=a?a.xattrs:null;o?i(o):u.hasOwnProperty(e)?(deletea.xattrs[e],t.put(a.id,a,s)):i(newVn.ENOATTR)}n=mn(n),"string"!=typeofe?i(newVn.EINVAL("attribute name must be a string")):e?o(t,n,a):i(newVn.EINVAL("attribute name cannot be an empty string"))}functionD(t,n,e,i){functiono(o,a){functions(e){e?i(e):r(t,n.path,a,{ctime:Date.now()},i)}o?i(o):a.xattrs.hasOwnProperty(e)?(deletea.xattrs[e],t.put(a.id,a,s)):i(newVn.ENOATTR)}"string"!=typeofe?i(newVn.EINVAL("attribute name must be a string")):e?t.get(n.id,o):i(newVn.EINVAL("attribute name cannot be an empty string"))}functionR(t){returnpn(Mn).has(t)?Mn[t]:null}functionj(t,n,e){returnt?"function"==typeoft?t={encoding:n,flag:e}:"string"==typeoft&&(t={encodin