@helia/mfs 3.0.7-e567717 → 3.0.8-3bf5ab0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.min.js CHANGED
@@ -1,3 +1,3 @@
1
1
  (function (root, factory) {(typeof module === 'object' && module.exports) ? module.exports = factory() : root.HeliaMfs = factory()}(typeof self !== 'undefined' ? self : this, function () {
2
- "use strict";var HeliaMfs=(()=>{var Nc=Object.create;var yr=Object.defineProperty;var Tc=Object.getOwnPropertyDescriptor;var Dc=Object.getOwnPropertyNames;var Lc=Object.getPrototypeOf,Fc=Object.prototype.hasOwnProperty;var Ge=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),G=(r,e)=>{for(var t in e)yr(r,t,{get:e[t],enumerable:!0})},Vi=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Dc(e))!Fc.call(r,i)&&i!==t&&yr(r,i,{get:()=>e[i],enumerable:!(n=Tc(e,i))||n.enumerable});return r};var R=(r,e,t)=>(t=r!=null?Nc(Lc(r)):{},Vi(e||!r||!r.__esModule?yr(t,"default",{value:r,enumerable:!0}):t,r)),Pc=r=>Vi(yr({},"__esModule",{value:!0}),r);var K=Ge((yd,ji)=>{"use strict";function Hi(r,e){for(let t in e)Object.defineProperty(r,t,{value:e[t],enumerable:!0,configurable:!0});return r}function Uc(r,e,t){if(!r||typeof r=="string")throw new TypeError("Please pass an Error to err-code");t||(t={}),typeof e=="object"&&(t=e,e=""),e&&(t.code=e);try{return Hi(r,t)}catch{t.message=r.message,t.stack=r.stack;let i=function(){};return i.prototype=Object.create(Object.getPrototypeOf(r)),Hi(new i,t)}}ji.exports=Uc});var Jo=Ge((Yt,Ar)=>{(function(r,e){"use strict";var t={version:"3.0.0",x86:{},x64:{},inputValidation:!0};function n(u){if(!Array.isArray(u)&&!ArrayBuffer.isView(u))return!1;for(var d=0;d<u.length;d++)if(!Number.isInteger(u[d])||u[d]<0||u[d]>255)return!1;return!0}function i(u,d){return(u&65535)*d+(((u>>>16)*d&65535)<<16)}function o(u,d){return u<<d|u>>>32-d}function s(u){return u^=u>>>16,u=i(u,2246822507),u^=u>>>13,u=i(u,3266489909),u^=u>>>16,u}function a(u,d){u=[u[0]>>>16,u[0]&65535,u[1]>>>16,u[1]&65535],d=[d[0]>>>16,d[0]&65535,d[1]>>>16,d[1]&65535];var m=[0,0,0,0];return m[3]+=u[3]+d[3],m[2]+=m[3]>>>16,m[3]&=65535,m[2]+=u[2]+d[2],m[1]+=m[2]>>>16,m[2]&=65535,m[1]+=u[1]+d[1],m[0]+=m[1]>>>16,m[1]&=65535,m[0]+=u[0]+d[0],m[0]&=65535,[m[0]<<16|m[1],m[2]<<16|m[3]]}function c(u,d){u=[u[0]>>>16,u[0]&65535,u[1]>>>16,u[1]&65535],d=[d[0]>>>16,d[0]&65535,d[1]>>>16,d[1]&65535];var m=[0,0,0,0];return m[3]+=u[3]*d[3],m[2]+=m[3]>>>16,m[3]&=65535,m[2]+=u[2]*d[3],m[1]+=m[2]>>>16,m[2]&=65535,m[2]+=u[3]*d[2],m[1]+=m[2]>>>16,m[2]&=65535,m[1]+=u[1]*d[3],m[0]+=m[1]>>>16,m[1]&=65535,m[1]+=u[2]*d[2],m[0]+=m[1]>>>16,m[1]&=65535,m[1]+=u[3]*d[1],m[0]+=m[1]>>>16,m[1]&=65535,m[0]+=u[0]*d[3]+u[1]*d[2]+u[2]*d[1]+u[3]*d[0],m[0]&=65535,[m[0]<<16|m[1],m[2]<<16|m[3]]}function h(u,d){return d%=64,d===32?[u[1],u[0]]:d<32?[u[0]<<d|u[1]>>>32-d,u[1]<<d|u[0]>>>32-d]:(d-=32,[u[1]<<d|u[0]>>>32-d,u[0]<<d|u[1]>>>32-d])}function f(u,d){return d%=64,d===0?u:d<32?[u[0]<<d|u[1]>>>32-d,u[1]<<d]:[u[1]<<d-32,0]}function l(u,d){return[u[0]^d[0],u[1]^d[1]]}function y(u){return u=l(u,[0,u[0]>>>1]),u=c(u,[4283543511,3981806797]),u=l(u,[0,u[0]>>>1]),u=c(u,[3301882366,444984403]),u=l(u,[0,u[0]>>>1]),u}t.x86.hash32=function(u,d){if(t.inputValidation&&!n(u))return e;d=d||0;for(var m=u.length%4,x=u.length-m,g=d,w=0,b=3432918353,k=461845907,A=0;A<x;A=A+4)w=u[A]|u[A+1]<<8|u[A+2]<<16|u[A+3]<<24,w=i(w,b),w=o(w,15),w=i(w,k),g^=w,g=o(g,13),g=i(g,5)+3864292196;switch(w=0,m){case 3:w^=u[A+2]<<16;case 2:w^=u[A+1]<<8;case 1:w^=u[A],w=i(w,b),w=o(w,15),w=i(w,k),g^=w}return g^=u.length,g=s(g),g>>>0},t.x86.hash128=function(u,d){if(t.inputValidation&&!n(u))return e;d=d||0;for(var m=u.length%16,x=u.length-m,g=d,w=d,b=d,k=d,A=0,I=0,S=0,D=0,me=597399067,dr=2869860233,pr=951274213,mr=2716044179,N=0;N<x;N=N+16)A=u[N]|u[N+1]<<8|u[N+2]<<16|u[N+3]<<24,I=u[N+4]|u[N+5]<<8|u[N+6]<<16|u[N+7]<<24,S=u[N+8]|u[N+9]<<8|u[N+10]<<16|u[N+11]<<24,D=u[N+12]|u[N+13]<<8|u[N+14]<<16|u[N+15]<<24,A=i(A,me),A=o(A,15),A=i(A,dr),g^=A,g=o(g,19),g+=w,g=i(g,5)+1444728091,I=i(I,dr),I=o(I,16),I=i(I,pr),w^=I,w=o(w,17),w+=b,w=i(w,5)+197830471,S=i(S,pr),S=o(S,17),S=i(S,mr),b^=S,b=o(b,15),b+=k,b=i(b,5)+2530024501,D=i(D,mr),D=o(D,18),D=i(D,me),k^=D,k=o(k,13),k+=g,k=i(k,5)+850148119;switch(A=0,I=0,S=0,D=0,m){case 15:D^=u[N+14]<<16;case 14:D^=u[N+13]<<8;case 13:D^=u[N+12],D=i(D,mr),D=o(D,18),D=i(D,me),k^=D;case 12:S^=u[N+11]<<24;case 11:S^=u[N+10]<<16;case 10:S^=u[N+9]<<8;case 9:S^=u[N+8],S=i(S,pr),S=o(S,17),S=i(S,mr),b^=S;case 8:I^=u[N+7]<<24;case 7:I^=u[N+6]<<16;case 6:I^=u[N+5]<<8;case 5:I^=u[N+4],I=i(I,dr),I=o(I,16),I=i(I,pr),w^=I;case 4:A^=u[N+3]<<24;case 3:A^=u[N+2]<<16;case 2:A^=u[N+1]<<8;case 1:A^=u[N],A=i(A,me),A=o(A,15),A=i(A,dr),g^=A}return g^=u.length,w^=u.length,b^=u.length,k^=u.length,g+=w,g+=b,g+=k,w+=g,b+=g,k+=g,g=s(g),w=s(w),b=s(b),k=s(k),g+=w,g+=b,g+=k,w+=g,b+=g,k+=g,("00000000"+(g>>>0).toString(16)).slice(-8)+("00000000"+(w>>>0).toString(16)).slice(-8)+("00000000"+(b>>>0).toString(16)).slice(-8)+("00000000"+(k>>>0).toString(16)).slice(-8)},t.x64.hash128=function(u,d){if(t.inputValidation&&!n(u))return e;d=d||0;for(var m=u.length%16,x=u.length-m,g=[0,d],w=[0,d],b=[0,0],k=[0,0],A=[2277735313,289559509],I=[1291169091,658871167],S=0;S<x;S=S+16)b=[u[S+4]|u[S+5]<<8|u[S+6]<<16|u[S+7]<<24,u[S]|u[S+1]<<8|u[S+2]<<16|u[S+3]<<24],k=[u[S+12]|u[S+13]<<8|u[S+14]<<16|u[S+15]<<24,u[S+8]|u[S+9]<<8|u[S+10]<<16|u[S+11]<<24],b=c(b,A),b=h(b,31),b=c(b,I),g=l(g,b),g=h(g,27),g=a(g,w),g=a(c(g,[0,5]),[0,1390208809]),k=c(k,I),k=h(k,33),k=c(k,A),w=l(w,k),w=h(w,31),w=a(w,g),w=a(c(w,[0,5]),[0,944331445]);switch(b=[0,0],k=[0,0],m){case 15:k=l(k,f([0,u[S+14]],48));case 14:k=l(k,f([0,u[S+13]],40));case 13:k=l(k,f([0,u[S+12]],32));case 12:k=l(k,f([0,u[S+11]],24));case 11:k=l(k,f([0,u[S+10]],16));case 10:k=l(k,f([0,u[S+9]],8));case 9:k=l(k,[0,u[S+8]]),k=c(k,I),k=h(k,33),k=c(k,A),w=l(w,k);case 8:b=l(b,f([0,u[S+7]],56));case 7:b=l(b,f([0,u[S+6]],48));case 6:b=l(b,f([0,u[S+5]],40));case 5:b=l(b,f([0,u[S+4]],32));case 4:b=l(b,f([0,u[S+3]],24));case 3:b=l(b,f([0,u[S+2]],16));case 2:b=l(b,f([0,u[S+1]],8));case 1:b=l(b,[0,u[S]]),b=c(b,A),b=h(b,31),b=c(b,I),g=l(g,b)}return g=l(g,[0,u.length]),w=l(w,[0,u.length]),g=a(g,w),w=a(w,g),g=y(g),w=y(w),g=a(g,w),w=a(w,g),("00000000"+(g[0]>>>0).toString(16)).slice(-8)+("00000000"+(g[1]>>>0).toString(16)).slice(-8)+("00000000"+(w[0]>>>0).toString(16)).slice(-8)+("00000000"+(w[1]>>>0).toString(16)).slice(-8)},typeof Yt<"u"?(typeof Ar<"u"&&Ar.exports&&(Yt=Ar.exports=t),Yt.murmurHash3=t):typeof define=="function"&&define.amd?define([],function(){return t}):(t._murmurHash3=r.murmurHash3,t.noConflict=function(){return r.murmurHash3=t._murmurHash3,t._murmurHash3=e,t.noConflict=e,t},r.murmurHash3=t)})(Yt)});var Qo=Ge((Jm,Yo)=>{Yo.exports=Jo()});var Ir=Ge((n0,es)=>{"use strict";es.exports=class{constructor(){this._bitArrays=[],this._data=[],this._length=0,this._changedLength=!1,this._changedData=!1}set(e,t){let n=this._internalPositionFor(e,!1);if(t===void 0)n!==-1&&(this._unsetInternalPos(n),this._unsetBit(e),this._changedLength=!0,this._changedData=!0);else{let i=!1;n===-1?(n=this._data.length,this._setBit(e),this._changedData=!0):i=!0,this._setInternalPos(n,e,t,i),this._changedLength=!0}}unset(e){this.set(e,void 0)}get(e){this._sortData();let t=this._internalPositionFor(e,!0);if(t!==-1)return this._data[t][1]}push(e){return this.set(this.length,e),this.length}get length(){if(this._sortData(),this._changedLength){let e=this._data[this._data.length-1];this._length=e?e[0]+1:0,this._changedLength=!1}return this._length}forEach(e){let t=0;for(;t<this.length;)e(this.get(t),t,this),t++}map(e){let t=0,n=new Array(this.length);for(;t<this.length;)n[t]=e(this.get(t),t,this),t++;return n}reduce(e,t){let n=0,i=t;for(;n<this.length;){let o=this.get(n);i=e(i,o,n),n++}return i}find(e){let t=0,n,i;for(;t<this.length&&!n;)i=this.get(t),n=e(i),t++;return n?i:void 0}_internalPositionFor(e,t){let n=this._bytePosFor(e,t);if(n>=this._bitArrays.length)return-1;let i=this._bitArrays[n],o=e-n*7;if(!((i&1<<o)>0))return-1;let a=this._bitArrays.slice(0,n).reduce(Df,0),c=~(4294967295<<o+1),h=Zo(i&c);return a+h-1}_bytePosFor(e,t){let n=Math.floor(e/7),i=n+1;for(;!t&&this._bitArrays.length<i;)this._bitArrays.push(0);return n}_setBit(e){let t=this._bytePosFor(e,!1);this._bitArrays[t]|=1<<e-t*7}_unsetBit(e){let t=this._bytePosFor(e,!1);this._bitArrays[t]&=~(1<<e-t*7)}_setInternalPos(e,t,n,i){let o=this._data,s=[t,n];if(i)this._sortData(),o[e]=s;else{if(o.length)if(o[o.length-1][0]>=t)o.push(s);else if(o[0][0]<=t)o.unshift(s);else{let a=Math.round(o.length/2);this._data=o.slice(0,a).concat(s).concat(o.slice(a))}else this._data.push(s);this._changedData=!0,this._changedLength=!0}}_unsetInternalPos(e){this._data.splice(e,1)}_sortData(){this._changedData&&this._data.sort(Lf),this._changedData=!1}bitField(){let e=[],t=8,n=0,i=0,o,s=this._bitArrays.slice();for(;s.length||n;){n===0&&(o=s.shift(),n=7);let c=Math.min(n,t),h=~(255<<c),f=o&h;i|=f<<8-t,o=o>>>c,n-=c,t-=c,(!t||!n&&!s.length)&&(e.push(i),i=0,t=8)}for(var a=e.length-1;a>0&&e[a]===0;a--)e.pop();return e}compactArray(){return this._sortData(),this._data.map(Ff)}};function Df(r,e){return r+Zo(e)}function Zo(r){let e=r;return e=e-(e>>1&1431655765),e=(e&858993459)+(e>>2&858993459),(e+(e>>4)&252645135)*16843009>>24}function Lf(r,e){return r[0]-e[0]}function Ff(r){return r[1]}});var Ga=Ge((sw,Ci)=>{"use strict";var Zl=Object.prototype.hasOwnProperty,Y="~";function sr(){}Object.create&&(sr.prototype=Object.create(null),new sr().__proto__||(Y=!1));function eh(r,e,t){this.fn=r,this.context=e,this.once=t||!1}function ja(r,e,t,n,i){if(typeof t!="function")throw new TypeError("The listener must be a function");var o=new eh(t,n||r,i),s=Y?Y+e:e;return r._events[s]?r._events[s].fn?r._events[s]=[r._events[s],o]:r._events[s].push(o):(r._events[s]=o,r._eventsCount++),r}function Yr(r,e){--r._eventsCount===0?r._events=new sr:delete r._events[e]}function X(){this._events=new sr,this._eventsCount=0}X.prototype.eventNames=function(){var e=[],t,n;if(this._eventsCount===0)return e;for(n in t=this._events)Zl.call(t,n)&&e.push(Y?n.slice(1):n);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e};X.prototype.listeners=function(e){var t=Y?Y+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var i=0,o=n.length,s=new Array(o);i<o;i++)s[i]=n[i].fn;return s};X.prototype.listenerCount=function(e){var t=Y?Y+e:e,n=this._events[t];return n?n.fn?1:n.length:0};X.prototype.emit=function(e,t,n,i,o,s){var a=Y?Y+e:e;if(!this._events[a])return!1;var c=this._events[a],h=arguments.length,f,l;if(c.fn){switch(c.once&&this.removeListener(e,c.fn,void 0,!0),h){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,t),!0;case 3:return c.fn.call(c.context,t,n),!0;case 4:return c.fn.call(c.context,t,n,i),!0;case 5:return c.fn.call(c.context,t,n,i,o),!0;case 6:return c.fn.call(c.context,t,n,i,o,s),!0}for(l=1,f=new Array(h-1);l<h;l++)f[l-1]=arguments[l];c.fn.apply(c.context,f)}else{var y=c.length,u;for(l=0;l<y;l++)switch(c[l].once&&this.removeListener(e,c[l].fn,void 0,!0),h){case 1:c[l].fn.call(c[l].context);break;case 2:c[l].fn.call(c[l].context,t);break;case 3:c[l].fn.call(c[l].context,t,n);break;case 4:c[l].fn.call(c[l].context,t,n,i);break;default:if(!f)for(u=1,f=new Array(h-1);u<h;u++)f[u-1]=arguments[u];c[l].fn.apply(c[l].context,f)}}return!0};X.prototype.on=function(e,t,n){return ja(this,e,t,n,!1)};X.prototype.once=function(e,t,n){return ja(this,e,t,n,!0)};X.prototype.removeListener=function(e,t,n,i){var o=Y?Y+e:e;if(!this._events[o])return this;if(!t)return Yr(this,o),this;var s=this._events[o];if(s.fn)s.fn===t&&(!i||s.once)&&(!n||s.context===n)&&Yr(this,o);else{for(var a=0,c=[],h=s.length;a<h;a++)(s[a].fn!==t||i&&!s[a].once||n&&s[a].context!==n)&&c.push(s[a]);c.length?this._events[o]=c.length===1?c[0]:c:Yr(this,o)}return this};X.prototype.removeAllListeners=function(e){var t;return e?(t=Y?Y+e:e,this._events[t]&&Yr(this,t)):(this._events=new sr,this._eventsCount=0),this};X.prototype.off=X.prototype.removeListener;X.prototype.addListener=X.prototype.on;X.prefixed=Y;X.EventEmitter=X;typeof Ci<"u"&&(Ci.exports=X)});var rc=Ge((Qw,tc)=>{"use strict";tc.exports=r=>{if(Object.prototype.toString.call(r)!=="[object Object]")return!1;let e=Object.getPrototypeOf(r);return e===null||e===Object.prototype}});var cc=Ge((sc,ac)=>{"use strict";var tn=rc(),{hasOwnProperty:ic}=Object.prototype,{propertyIsEnumerable:uh}=Object,Ct=(r,e,t)=>Object.defineProperty(r,e,{value:t,writable:!0,enumerable:!0,configurable:!0}),fh=sc,nc={concatArrays:!1,ignoreUndefined:!1},rn=r=>{let e=[];for(let t in r)ic.call(r,t)&&e.push(t);if(Object.getOwnPropertySymbols){let t=Object.getOwnPropertySymbols(r);for(let n of t)uh.call(r,n)&&e.push(n)}return e};function It(r){return Array.isArray(r)?lh(r):tn(r)?hh(r):r}function lh(r){let e=r.slice(0,0);return rn(r).forEach(t=>{Ct(e,t,It(r[t]))}),e}function hh(r){let e=Object.getPrototypeOf(r)===null?Object.create(null):{};return rn(r).forEach(t=>{Ct(e,t,It(r[t]))}),e}var oc=(r,e,t,n)=>(t.forEach(i=>{typeof e[i]>"u"&&n.ignoreUndefined||(i in r&&r[i]!==Object.getPrototypeOf(r)?Ct(r,i,Pi(r[i],e[i],n)):Ct(r,i,It(e[i])))}),r),dh=(r,e,t)=>{let n=r.slice(0,0),i=0;return[r,e].forEach(o=>{let s=[];for(let a=0;a<o.length;a++)ic.call(o,a)&&(s.push(String(a)),o===r?Ct(n,i++,o[a]):Ct(n,i++,It(o[a])));n=oc(n,o,rn(o).filter(a=>!s.includes(a)),t)}),n};function Pi(r,e,t){return t.concatArrays&&Array.isArray(r)&&Array.isArray(e)?dh(r,e,t):!tn(e)||!tn(r)?It(e):oc(r,e,rn(e),t)}ac.exports=function(...r){let e=Pi(It(nc),this!==fh&&this||{},nc),t={_:{}};for(let n of r)if(n!==void 0){if(!tn(n))throw new TypeError("`"+n+"` is not an Option Object");t=Pi(t,{_:n},e)}return t._}});var pd={};G(pd,{mfs:()=>dd});var mi=R(K(),1);function zc(r){return r[Symbol.asyncIterator]!=null}function Oc(r){if(zc(r))return(async()=>{for await(let e of r)return e})();for(let e of r)return e}var kn=Oc;function Rc(r){return r[Symbol.asyncIterator]!=null}function $c(r,e=1){return e=Number(e),Rc(r)?async function*(){let t=[];if(e<1&&(e=1),e!==Math.round(e))throw new Error("Batch size must be an integer");for await(let n of r)for(t.push(n);t.length>=e;)yield t.slice(0,e),t=t.slice(e);for(;t.length>0;)yield t.slice(0,e),t=t.slice(e)}():function*(){let t=[];if(e<1&&(e=1),e!==Math.round(e))throw new Error("Batch size must be an integer");for(let n of r)for(t.push(n);t.length>=e;)yield t.slice(0,e),t=t.slice(e);for(;t.length>0;)yield t.slice(0,e),t=t.slice(e)}()}var gr=$c;async function*Pt(r,e=1){for await(let t of gr(r,e)){let n=t.map(async i=>i().then(o=>({ok:!0,value:o}),o=>({ok:!1,err:o})));for(let i=0;i<n.length;i++){let o=await n[i];if(o.ok)yield o.value;else throw o.err}}}function Ne(r=0){return new Uint8Array(r)}function te(r=0){return new Uint8Array(r)}function We(r,e){e==null&&(e=r.reduce((i,o)=>i+o.length,0));let t=te(e),n=0;for(let i of r)t.set(i,n),n+=i.length;return t}function Gi(r,e){if(r===e)return!0;if(r.byteLength!==e.byteLength)return!1;for(let t=0;t<r.byteLength;t++)if(r[t]!==e[t])return!1;return!0}var Xi=Symbol.for("@achingbrain/uint8arraylist");function Wi(r,e){if(e==null||e<0)throw new RangeError("index is out of bounds");let t=0;for(let n of r){let i=t+n.byteLength;if(e<i)return{buf:n,index:e-t};t=i}throw new RangeError("index is out of bounds")}function wr(r){return!!r?.[Xi]}var ot=class r{bufs;length;[Xi]=!0;constructor(...e){this.bufs=[],this.length=0,e.length>0&&this.appendAll(e)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...e){this.appendAll(e)}appendAll(e){let t=0;for(let n of e)if(n instanceof Uint8Array)t+=n.byteLength,this.bufs.push(n);else if(wr(n))t+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=t}prepend(...e){this.prependAll(e)}prependAll(e){let t=0;for(let n of e.reverse())if(n instanceof Uint8Array)t+=n.byteLength,this.bufs.unshift(n);else if(wr(n))t+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=t}get(e){let t=Wi(this.bufs,e);return t.buf[t.index]}set(e,t){let n=Wi(this.bufs,e);n.buf[n.index]=t}write(e,t=0){if(e instanceof Uint8Array)for(let n=0;n<e.length;n++)this.set(t+n,e[n]);else if(wr(e))for(let n=0;n<e.length;n++)this.set(t+n,e.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(e){if(e=Math.trunc(e),!(Number.isNaN(e)||e<=0)){if(e===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(e>=this.bufs[0].byteLength)e-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(e),this.length-=e;break}}}slice(e,t){let{bufs:n,length:i}=this._subList(e,t);return We(n,i)}subarray(e,t){let{bufs:n,length:i}=this._subList(e,t);return n.length===1?n[0]:We(n,i)}sublist(e,t){let{bufs:n,length:i}=this._subList(e,t),o=new r;return o.length=i,o.bufs=[...n],o}_subList(e,t){if(e=e??0,t=t??this.length,e<0&&(e=this.length+e),t<0&&(t=this.length+t),e<0||t>this.length)throw new RangeError("index is out of bounds");if(e===t)return{bufs:[],length:0};if(e===0&&t===this.length)return{bufs:this.bufs,length:this.length};let n=[],i=0;for(let o=0;o<this.bufs.length;o++){let s=this.bufs[o],a=i,c=a+s.byteLength;if(i=c,e>=c)continue;let h=e>=a&&e<c,f=t>a&&t<=c;if(h&&f){if(e===a&&t===c){n.push(s);break}let l=e-a;n.push(s.subarray(l,l+(t-e)));break}if(h){if(e===0){n.push(s);continue}n.push(s.subarray(e-a));continue}if(f){if(t===c){n.push(s);break}n.push(s.subarray(0,t-a));break}n.push(s)}return{bufs:n,length:t-e}}indexOf(e,t=0){if(!wr(e)&&!(e instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=e instanceof Uint8Array?e:e.subarray();if(t=Number(t??0),isNaN(t)&&(t=0),t<0&&(t=this.length+t),t<0&&(t=0),e.length===0)return t>this.length?this.length:t;let i=n.byteLength;if(i===0)throw new TypeError("search must be at least 1 byte long");let o=256,s=new Int32Array(o);for(let l=0;l<o;l++)s[l]=-1;for(let l=0;l<i;l++)s[n[l]]=l;let a=s,c=this.byteLength-n.byteLength,h=n.byteLength-1,f;for(let l=t;l<=c;l+=f){f=0;for(let y=h;y>=0;y--){let u=this.get(l+y);if(n[y]!==u){f=Math.max(1,y-a[u]);break}}if(f===0)return l}return-1}getInt8(e){let t=this.subarray(e,e+1);return new DataView(t.buffer,t.byteOffset,t.byteLength).getInt8(0)}setInt8(e,t){let n=te(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,t),this.write(n,e)}getInt16(e,t){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,t)}setInt16(e,t,n){let i=Ne(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt16(0,t,n),this.write(i,e)}getInt32(e,t){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,t)}setInt32(e,t,n){let i=Ne(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt32(0,t,n),this.write(i,e)}getBigInt64(e,t){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,t)}setBigInt64(e,t,n){let i=Ne(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigInt64(0,t,n),this.write(i,e)}getUint8(e){let t=this.subarray(e,e+1);return new DataView(t.buffer,t.byteOffset,t.byteLength).getUint8(0)}setUint8(e,t){let n=te(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,t),this.write(n,e)}getUint16(e,t){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,t)}setUint16(e,t,n){let i=Ne(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint16(0,t,n),this.write(i,e)}getUint32(e,t){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,t)}setUint32(e,t,n){let i=Ne(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint32(0,t,n),this.write(i,e)}getBigUint64(e,t){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,t)}setBigUint64(e,t,n){let i=Ne(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigUint64(0,t,n),this.write(i,e)}getFloat32(e,t){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,t)}setFloat32(e,t,n){let i=Ne(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat32(0,t,n),this.write(i,e)}getFloat64(e,t){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,t)}setFloat64(e,t,n){let i=Ne(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat64(0,t,n),this.write(i,e)}equals(e){if(e==null||!(e instanceof r)||e.bufs.length!==this.bufs.length)return!1;for(let t=0;t<this.bufs.length;t++)if(!Gi(this.bufs[t],e.bufs[t]))return!1;return!0}static fromUint8Arrays(e,t){let n=new r;return n.bufs=e,t==null&&(t=e.reduce((i,o)=>i+o.byteLength,0)),n.length=t,n}};var Mc=262144,Ut=(r={})=>{let e=r.chunkSize??Mc;return async function*(n){let i=new ot,o=0,s=!1;for await(let a of n)for(i.append(a),o+=a.length;o>=e;)if(yield i.slice(0,e),s=!0,e===i.length)i=new ot,o=0;else{let c=new ot;c.append(i.sublist(e)),i=c,o-=e}(!s||o>0)&&(yield i.subarray(0,o))}};var $={};G($,{code:()=>V,createLink:()=>po,createNode:()=>ho,decode:()=>O,encode:()=>T,name:()=>Ou,prepare:()=>P,validate:()=>Un});var Nn={};G(Nn,{base32:()=>Ue,base32hex:()=>Zc,base32hexpad:()=>tu,base32hexpadupper:()=>ru,base32hexupper:()=>eu,base32pad:()=>Yc,base32padupper:()=>Qc,base32upper:()=>Jc,base32z:()=>nu});var st={};G(st,{coerce:()=>fe,empty:()=>qi,equals:()=>En,fromHex:()=>Hc,fromString:()=>Sn,isBinary:()=>jc,toHex:()=>Vc,toString:()=>Bn});var qi=new Uint8Array(0);function Vc(r){return r.reduce((e,t)=>e+t.toString(16).padStart(2,"0"),"")}function Hc(r){let e=r.match(/../g);return e!=null?new Uint8Array(e.map(t=>parseInt(t,16))):qi}function En(r,e){if(r===e)return!0;if(r.byteLength!==e.byteLength)return!1;for(let t=0;t<r.byteLength;t++)if(r[t]!==e[t])return!1;return!0}function fe(r){if(r instanceof Uint8Array&&r.constructor.name==="Uint8Array")return r;if(r instanceof ArrayBuffer)return new Uint8Array(r);if(ArrayBuffer.isView(r))return new Uint8Array(r.buffer,r.byteOffset,r.byteLength);throw new Error("Unknown type, must be binary type")}function jc(r){return r instanceof ArrayBuffer||ArrayBuffer.isView(r)}function Sn(r){return new TextEncoder().encode(r)}function Bn(r){return new TextDecoder().decode(r)}function Gc(r,e){if(r.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),n=0;n<t.length;n++)t[n]=255;for(var i=0;i<r.length;i++){var o=r.charAt(i),s=o.charCodeAt(0);if(t[s]!==255)throw new TypeError(o+" is ambiguous");t[s]=i}var a=r.length,c=r.charAt(0),h=Math.log(a)/Math.log(256),f=Math.log(256)/Math.log(a);function l(d){if(d instanceof Uint8Array||(ArrayBuffer.isView(d)?d=new Uint8Array(d.buffer,d.byteOffset,d.byteLength):Array.isArray(d)&&(d=Uint8Array.from(d))),!(d instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(d.length===0)return"";for(var m=0,x=0,g=0,w=d.length;g!==w&&d[g]===0;)g++,m++;for(var b=(w-g)*f+1>>>0,k=new Uint8Array(b);g!==w;){for(var A=d[g],I=0,S=b-1;(A!==0||I<x)&&S!==-1;S--,I++)A+=256*k[S]>>>0,k[S]=A%a>>>0,A=A/a>>>0;if(A!==0)throw new Error("Non-zero carry");x=I,g++}for(var D=b-x;D!==b&&k[D]===0;)D++;for(var me=c.repeat(m);D<b;++D)me+=r.charAt(k[D]);return me}function y(d){if(typeof d!="string")throw new TypeError("Expected String");if(d.length===0)return new Uint8Array;var m=0;if(d[m]!==" "){for(var x=0,g=0;d[m]===c;)x++,m++;for(var w=(d.length-m)*h+1>>>0,b=new Uint8Array(w);d[m];){var k=t[d.charCodeAt(m)];if(k===255)return;for(var A=0,I=w-1;(k!==0||A<g)&&I!==-1;I--,A++)k+=a*b[I]>>>0,b[I]=k%256>>>0,k=k/256>>>0;if(k!==0)throw new Error("Non-zero carry");g=A,m++}if(d[m]!==" "){for(var S=w-g;S!==w&&b[S]===0;)S++;for(var D=new Uint8Array(x+(w-S)),me=x;S!==w;)D[me++]=b[S++];return D}}}function u(d){var m=y(d);if(m)return m;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:y,decode:u}}var Wc=Gc,Xc=Wc,Ki=Xc;var vn=class{name;prefix;baseEncode;constructor(e,t,n){this.name=e,this.prefix=t,this.baseEncode=n}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}},An=class{name;prefix;baseDecode;prefixCodePoint;constructor(e,t,n){if(this.name=e,this.prefix=t,t.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=t.codePointAt(0),this.baseDecode=n}decode(e){if(typeof e=="string"){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(e){return Ji(this,e)}},Cn=class{decoders;constructor(e){this.decoders=e}or(e){return Ji(this,e)}decode(e){let t=e[0],n=this.decoders[t];if(n!=null)return n.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}};function Ji(r,e){return new Cn({...r.decoders??{[r.prefix]:r},...e.decoders??{[e.prefix]:e}})}var In=class{name;prefix;baseEncode;baseDecode;encoder;decoder;constructor(e,t,n,i){this.name=e,this.prefix=t,this.baseEncode=n,this.baseDecode=i,this.encoder=new vn(e,t,n),this.decoder=new An(e,t,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}};function at({name:r,prefix:e,encode:t,decode:n}){return new In(r,e,t,n)}function Pe({name:r,prefix:e,alphabet:t}){let{encode:n,decode:i}=Ki(t,r);return at({prefix:e,name:r,encode:n,decode:o=>fe(i(o))})}function qc(r,e,t,n){let i={};for(let f=0;f<e.length;++f)i[e[f]]=f;let o=r.length;for(;r[o-1]==="=";)--o;let s=new Uint8Array(o*t/8|0),a=0,c=0,h=0;for(let f=0;f<o;++f){let l=i[r[f]];if(l===void 0)throw new SyntaxError(`Non-${n} character`);c=c<<t|l,a+=t,a>=8&&(a-=8,s[h++]=255&c>>a)}if(a>=t||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return s}function Kc(r,e,t){let n=e[e.length-1]==="=",i=(1<<t)-1,o="",s=0,a=0;for(let c=0;c<r.length;++c)for(a=a<<8|r[c],s+=8;s>t;)s-=t,o+=e[i&a>>s];if(s!==0&&(o+=e[i&a<<t-s]),n)for(;o.length*t&7;)o+="=";return o}function F({name:r,prefix:e,bitsPerChar:t,alphabet:n}){return at({prefix:e,name:r,encode(i){return Kc(i,n,t)},decode(i){return qc(i,n,t,r)}})}var Ue=F({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),Jc=F({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),Yc=F({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),Qc=F({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),Zc=F({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),eu=F({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),tu=F({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),ru=F({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),nu=F({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Tn={};G(Tn,{base58btc:()=>le,base58flickr:()=>iu});var le=Pe({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),iu=Pe({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var ou=Zi,Yi=128,su=127,au=~su,cu=Math.pow(2,31);function Zi(r,e,t){e=e||[],t=t||0;for(var n=t;r>=cu;)e[t++]=r&255|Yi,r/=128;for(;r&au;)e[t++]=r&255|Yi,r>>>=7;return e[t]=r|0,Zi.bytes=t-n+1,e}var uu=Dn,fu=128,Qi=127;function Dn(r,n){var t=0,n=n||0,i=0,o=n,s,a=r.length;do{if(o>=a)throw Dn.bytes=0,new RangeError("Could not decode varint");s=r[o++],t+=i<28?(s&Qi)<<i:(s&Qi)*Math.pow(2,i),i+=7}while(s>=fu);return Dn.bytes=o-n,t}var lu=Math.pow(2,7),hu=Math.pow(2,14),du=Math.pow(2,21),pu=Math.pow(2,28),mu=Math.pow(2,35),yu=Math.pow(2,42),gu=Math.pow(2,49),wu=Math.pow(2,56),xu=Math.pow(2,63),bu=function(r){return r<lu?1:r<hu?2:r<du?3:r<pu?4:r<mu?5:r<yu?6:r<gu?7:r<wu?8:r<xu?9:10},_u={encode:ou,decode:uu,encodingLength:bu},ku=_u,zt=ku;function Ot(r,e=0){return[zt.decode(r,e),zt.decode.bytes]}function ct(r,e,t=0){return zt.encode(r,e,t),e}function ut(r){return zt.encodingLength(r)}function Xe(r,e){let t=e.byteLength,n=ut(r),i=n+ut(t),o=new Uint8Array(i+t);return ct(r,o,0),ct(t,o,n),o.set(e,i),new ft(r,t,e,o)}function br(r){let e=fe(r),[t,n]=Ot(e),[i,o]=Ot(e.subarray(n)),s=e.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new ft(t,i,s,e)}function eo(r,e){if(r===e)return!0;{let t=e;return r.code===t.code&&r.size===t.size&&t.bytes instanceof Uint8Array&&En(r.bytes,t.bytes)}}var ft=class{code;size;digest;bytes;constructor(e,t,n,i){this.code=e,this.size=t,this.digest=n,this.bytes=i}};function to(r,e){let{bytes:t,version:n}=r;switch(n){case 0:return Su(t,Ln(r),e??le.encoder);default:return Bu(t,Ln(r),e??Ue.encoder)}}var ro=new WeakMap;function Ln(r){let e=ro.get(r);if(e==null){let t=new Map;return ro.set(r,t),t}return e}var C=class r{code;version;multihash;bytes;"/";constructor(e,t,n,i){this.code=t,this.version=e,this.multihash=n,this.bytes=i,this["/"]=i}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:e,multihash:t}=this;if(e!==Rt)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(t.code!==vu)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return r.createV0(t)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:e,digest:t}=this.multihash,n=Xe(e,t);return r.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(e){return r.equals(this,e)}static equals(e,t){let n=t;return n!=null&&e.code===n.code&&e.version===n.version&&eo(e.multihash,n.multihash)}toString(e){return to(this,e)}toJSON(){return{"/":to(this)}}link(){return this}[Symbol.toStringTag]="CID";[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(e){if(e==null)return null;let t=e;if(t instanceof r)return t;if(t["/"]!=null&&t["/"]===t.bytes||t.asCID===t){let{version:n,code:i,multihash:o,bytes:s}=t;return new r(n,i,o,s??no(n,i,o.bytes))}else if(t[Au]===!0){let{version:n,multihash:i,code:o}=t,s=br(i);return r.create(n,o,s)}else return null}static create(e,t,n){if(typeof t!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(e){case 0:{if(t!==Rt)throw new Error(`Version 0 CID must use dag-pb (code: ${Rt}) block encoding`);return new r(e,t,n,n.bytes)}case 1:{let i=no(e,t,n.bytes);return new r(e,t,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return r.create(0,Rt,e)}static createV1(e,t){return r.create(1,e,t)}static decode(e){let[t,n]=r.decodeFirst(e);if(n.length!==0)throw new Error("Incorrect length");return t}static decodeFirst(e){let t=r.inspectBytes(e),n=t.size-t.multihashSize,i=fe(e.subarray(n,n+t.multihashSize));if(i.byteLength!==t.multihashSize)throw new Error("Incorrect length");let o=i.subarray(t.multihashSize-t.digestSize),s=new ft(t.multihashCode,t.digestSize,o,i);return[t.version===0?r.createV0(s):r.createV1(t.codec,s),e.subarray(t.size)]}static inspectBytes(e){let t=0,n=()=>{let[l,y]=Ot(e.subarray(t));return t+=y,l},i=n(),o=Rt;if(i===18?(i=0,t=0):o=n(),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let s=t,a=n(),c=n(),h=t+c,f=h-s;return{version:i,codec:o,multihashCode:a,digestSize:c,multihashSize:f,size:h}}static parse(e,t){let[n,i]=Eu(e,t),o=r.decode(i);if(o.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return Ln(o).set(n,e),o}};function Eu(r,e){switch(r[0]){case"Q":{let t=e??le;return[le.prefix,t.decode(`${le.prefix}${r}`)]}case le.prefix:{let t=e??le;return[le.prefix,t.decode(r)]}case Ue.prefix:{let t=e??Ue;return[Ue.prefix,t.decode(r)]}default:{if(e==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[r[0],e.decode(r)]}}}function Su(r,e,t){let{prefix:n}=t;if(n!==le.prefix)throw Error(`Cannot string encode V0 in ${t.name} encoding`);let i=e.get(n);if(i==null){let o=t.encode(r).slice(1);return e.set(n,o),o}else return i}function Bu(r,e,t){let{prefix:n}=t,i=e.get(n);if(i==null){let o=t.encode(r);return e.set(n,o),o}else return i}var Rt=112,vu=18;function no(r,e,t){let n=ut(r),i=n+ut(e),o=new Uint8Array(i+t.byteLength);return ct(r,o,0),ct(e,o,n),o.set(t,i),o}var Au=Symbol.for("@ipld/js-cid/CID");var Cu=new TextDecoder;function Fn(r,e){let t=0;for(let n=0;;n+=7){if(n>=64)throw new Error("protobuf: varint overflow");if(e>=r.length)throw new Error("protobuf: unexpected end of data");let i=r[e++];if(t+=n<28?(i&127)<<n:(i&127)*2**n,i<128)break}return[t,e]}function _r(r,e){let t;[t,e]=Fn(r,e);let n=e+t;if(t<0||n<0)throw new Error("protobuf: invalid length");if(n>r.length)throw new Error("protobuf: unexpected end of data");return[r.subarray(e,n),n]}function io(r,e){let t;return[t,e]=Fn(r,e),[t&7,t>>3,e]}function Iu(r){let e={},t=r.length,n=0;for(;n<t;){let i,o;if([i,o,n]=io(r,n),o===1){if(e.Hash)throw new Error("protobuf: (PBLink) duplicate Hash section");if(i!==2)throw new Error(`protobuf: (PBLink) wrong wireType (${i}) for Hash`);if(e.Name!==void 0)throw new Error("protobuf: (PBLink) invalid order, found Name before Hash");if(e.Tsize!==void 0)throw new Error("protobuf: (PBLink) invalid order, found Tsize before Hash");[e.Hash,n]=_r(r,n)}else if(o===2){if(e.Name!==void 0)throw new Error("protobuf: (PBLink) duplicate Name section");if(i!==2)throw new Error(`protobuf: (PBLink) wrong wireType (${i}) for Name`);if(e.Tsize!==void 0)throw new Error("protobuf: (PBLink) invalid order, found Tsize before Name");let s;[s,n]=_r(r,n),e.Name=Cu.decode(s)}else if(o===3){if(e.Tsize!==void 0)throw new Error("protobuf: (PBLink) duplicate Tsize section");if(i!==0)throw new Error(`protobuf: (PBLink) wrong wireType (${i}) for Tsize`);[e.Tsize,n]=Fn(r,n)}else throw new Error(`protobuf: (PBLink) invalid fieldNumber, expected 1, 2 or 3, got ${o}`)}if(n>t)throw new Error("protobuf: (PBLink) unexpected end of data");return e}function oo(r){let e=r.length,t=0,n,i=!1,o;for(;t<e;){let a,c;if([a,c,t]=io(r,t),a!==2)throw new Error(`protobuf: (PBNode) invalid wireType, expected 2, got ${a}`);if(c===1){if(o)throw new Error("protobuf: (PBNode) duplicate Data section");[o,t]=_r(r,t),n&&(i=!0)}else if(c===2){if(i)throw new Error("protobuf: (PBNode) duplicate Links section");n||(n=[]);let h;[h,t]=_r(r,t),n.push(Iu(h))}else throw new Error(`protobuf: (PBNode) invalid fieldNumber, expected 1 or 2, got ${c}`)}if(t>e)throw new Error("protobuf: (PBNode) unexpected end of data");let s={};return o&&(s.Data=o),s.Links=n||[],s}var ao=new TextEncoder,so=2**32,Nu=2**31;function Tu(r,e){let t=e.length;if(typeof r.Tsize=="number"){if(r.Tsize<0)throw new Error("Tsize cannot be negative");if(!Number.isSafeInteger(r.Tsize))throw new Error("Tsize too large for encoding");t=$t(e,t,r.Tsize)-1,e[t]=24}if(typeof r.Name=="string"){let n=ao.encode(r.Name);t-=n.length,e.set(n,t),t=$t(e,t,n.length)-1,e[t]=18}return r.Hash&&(t-=r.Hash.length,e.set(r.Hash,t),t=$t(e,t,r.Hash.length)-1,e[t]=10),e.length-t}function co(r){let e=Lu(r),t=new Uint8Array(e),n=e;if(r.Data&&(n-=r.Data.length,t.set(r.Data,n),n=$t(t,n,r.Data.length)-1,t[n]=10),r.Links)for(let i=r.Links.length-1;i>=0;i--){let o=Tu(r.Links[i],t.subarray(0,n));n-=o,n=$t(t,n,o)-1,t[n]=18}return t}function Du(r){let e=0;if(r.Hash){let t=r.Hash.length;e+=1+t+ht(t)}if(typeof r.Name=="string"){let t=ao.encode(r.Name).length;e+=1+t+ht(t)}return typeof r.Tsize=="number"&&(e+=1+ht(r.Tsize)),e}function Lu(r){let e=0;if(r.Data){let t=r.Data.length;e+=1+t+ht(t)}if(r.Links)for(let t of r.Links){let n=Du(t);e+=1+n+ht(n)}return e}function $t(r,e,t){e-=ht(t);let n=e;for(;t>=Nu;)r[e++]=t&127|128,t/=128;for(;t>=128;)r[e++]=t&127|128,t>>>=7;return r[e]=t,n}function ht(r){return r%2===0&&r++,Math.floor((Fu(r)+6)/7)}function Fu(r){let e=0;return r>=so&&(r=Math.floor(r/so),e=32),r>=65536&&(r>>>=16,e+=16),r>=256&&(r>>>=8,e+=8),e+Pu[r]}var Pu=[0,1,2,2,3,3,3,3,4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8];var Uu=["Data","Links"],zu=["Hash","Name","Tsize"],Pn=new TextEncoder;function fo(r,e){if(r===e)return 0;let t=r.Name?Pn.encode(r.Name):[],n=e.Name?Pn.encode(e.Name):[],i=t.length,o=n.length;for(let s=0,a=Math.min(i,o);s<a;++s)if(t[s]!==n[s]){i=t[s],o=n[s];break}return i<o?-1:o<i?1:0}function uo(r,e){return!Object.keys(r).some(t=>!e.includes(t))}function lo(r){if(typeof r.asCID=="object"){let t=C.asCID(r);if(!t)throw new TypeError("Invalid DAG-PB form");return{Hash:t}}if(typeof r!="object"||Array.isArray(r))throw new TypeError("Invalid DAG-PB form");let e={};if(r.Hash){let t=C.asCID(r.Hash);try{t||(typeof r.Hash=="string"?t=C.parse(r.Hash):r.Hash instanceof Uint8Array&&(t=C.decode(r.Hash)))}catch(n){throw new TypeError(`Invalid DAG-PB form: ${n.message}`)}t&&(e.Hash=t)}if(!e.Hash)throw new TypeError("Invalid DAG-PB form");return typeof r.Name=="string"&&(e.Name=r.Name),typeof r.Tsize=="number"&&(e.Tsize=r.Tsize),e}function P(r){if((r instanceof Uint8Array||typeof r=="string")&&(r={Data:r}),typeof r!="object"||Array.isArray(r))throw new TypeError("Invalid DAG-PB form");let e={};if(r.Data!==void 0)if(typeof r.Data=="string")e.Data=Pn.encode(r.Data);else if(r.Data instanceof Uint8Array)e.Data=r.Data;else throw new TypeError("Invalid DAG-PB form");if(r.Links!==void 0)if(Array.isArray(r.Links))e.Links=r.Links.map(lo),e.Links.sort(fo);else throw new TypeError("Invalid DAG-PB form");else e.Links=[];return e}function Un(r){if(!r||typeof r!="object"||Array.isArray(r)||r instanceof Uint8Array||r["/"]&&r["/"]===r.bytes)throw new TypeError("Invalid DAG-PB form");if(!uo(r,Uu))throw new TypeError("Invalid DAG-PB form (extraneous properties)");if(r.Data!==void 0&&!(r.Data instanceof Uint8Array))throw new TypeError("Invalid DAG-PB form (Data must be bytes)");if(!Array.isArray(r.Links))throw new TypeError("Invalid DAG-PB form (Links must be a list)");for(let e=0;e<r.Links.length;e++){let t=r.Links[e];if(!t||typeof t!="object"||Array.isArray(t)||t instanceof Uint8Array||t["/"]&&t["/"]===t.bytes)throw new TypeError("Invalid DAG-PB form (bad link)");if(!uo(t,zu))throw new TypeError("Invalid DAG-PB form (extraneous properties on link)");if(t.Hash===void 0)throw new TypeError("Invalid DAG-PB form (link must have a Hash)");if(t.Hash==null||!t.Hash["/"]||t.Hash["/"]!==t.Hash.bytes)throw new TypeError("Invalid DAG-PB form (link Hash must be a CID)");if(t.Name!==void 0&&typeof t.Name!="string")throw new TypeError("Invalid DAG-PB form (link Name must be a string)");if(t.Tsize!==void 0){if(typeof t.Tsize!="number"||t.Tsize%1!==0)throw new TypeError("Invalid DAG-PB form (link Tsize must be an integer)");if(t.Tsize<0)throw new TypeError("Invalid DAG-PB form (link Tsize cannot be negative)")}if(e>0&&fo(t,r.Links[e-1])===-1)throw new TypeError("Invalid DAG-PB form (links must be sorted by Name bytes)")}}function ho(r,e=[]){return P({Data:r,Links:e})}function po(r,e,t){return lo({Hash:t,Name:r,Tsize:e})}function mo(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}var Ou="dag-pb",V=112;function T(r){Un(r);let e={};return r.Links&&(e.Links=r.Links.map(t=>{let n={};return t.Hash&&(n.Hash=t.Hash.bytes),t.Name!==void 0&&(n.Name=t.Name),t.Tsize!==void 0&&(n.Tsize=t.Tsize),n})),r.Data&&(e.Data=r.Data),co(e)}function O(r){let e=mo(r),t=oo(e),n={};return t.Data&&(n.Data=t.Data),t.Links&&(n.Links=t.Links.map(i=>{let o={};try{o.Hash=C.decode(i.Hash)}catch{}if(!o.Hash)throw new Error("Invalid Hash field found in link, expected CID");return i.Name!==void 0&&(o.Name=i.Name),i.Tsize!==void 0&&(o.Tsize=i.Tsize),o})),n}var fi=R(K(),1);var Ru=Math.pow(2,7),$u=Math.pow(2,14),Mu=Math.pow(2,21),yo=Math.pow(2,28),go=Math.pow(2,35),wo=Math.pow(2,42),xo=Math.pow(2,49),J=128,ze=127;function Mt(r){if(r<Ru)return 1;if(r<$u)return 2;if(r<Mu)return 3;if(r<yo)return 4;if(r<go)return 5;if(r<wo)return 6;if(r<xo)return 7;if(Number.MAX_SAFE_INTEGER!=null&&r>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function bo(r,e,t=0){switch(Mt(r)){case 8:e[t++]=r&255|J,r/=128;case 7:e[t++]=r&255|J,r/=128;case 6:e[t++]=r&255|J,r/=128;case 5:e[t++]=r&255|J,r/=128;case 4:e[t++]=r&255|J,r>>>=7;case 3:e[t++]=r&255|J,r>>>=7;case 2:e[t++]=r&255|J,r>>>=7;case 1:{e[t++]=r&255,r>>>=7;break}default:throw new Error("unreachable")}return e}function _o(r,e){let t=r[e],n=0;if(n+=t&ze,t<J||(t=r[e+1],n+=(t&ze)<<7,t<J)||(t=r[e+2],n+=(t&ze)<<14,t<J)||(t=r[e+3],n+=(t&ze)<<21,t<J)||(t=r[e+4],n+=(t&ze)*yo,t<J)||(t=r[e+5],n+=(t&ze)*go,t<J)||(t=r[e+6],n+=(t&ze)*wo,t<J)||(t=r[e+7],n+=(t&ze)*xo,t<J))return n;throw new RangeError("Could not decode varint")}var zn=new Float32Array([-0]),Oe=new Uint8Array(zn.buffer);function ko(r,e,t){zn[0]=r,e[t]=Oe[0],e[t+1]=Oe[1],e[t+2]=Oe[2],e[t+3]=Oe[3]}function Eo(r,e){return Oe[0]=r[e],Oe[1]=r[e+1],Oe[2]=r[e+2],Oe[3]=r[e+3],zn[0]}var On=new Float64Array([-0]),W=new Uint8Array(On.buffer);function So(r,e,t){On[0]=r,e[t]=W[0],e[t+1]=W[1],e[t+2]=W[2],e[t+3]=W[3],e[t+4]=W[4],e[t+5]=W[5],e[t+6]=W[6],e[t+7]=W[7]}function Bo(r,e){return W[0]=r[e],W[1]=r[e+1],W[2]=r[e+2],W[3]=r[e+3],W[4]=r[e+4],W[5]=r[e+5],W[6]=r[e+6],W[7]=r[e+7],On[0]}var Vu=BigInt(Number.MAX_SAFE_INTEGER),Hu=BigInt(Number.MIN_SAFE_INTEGER),re=class r{lo;hi;constructor(e,t){this.lo=e|0,this.hi=t|0}toNumber(e=!1){if(!e&&this.hi>>>31>0){let t=~this.lo+1>>>0,n=~this.hi>>>0;return t===0&&(n=n+1>>>0),-(t+n*4294967296)}return this.lo+this.hi*4294967296}toBigInt(e=!1){if(e)return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n);if(this.hi>>>31){let t=~this.lo+1>>>0,n=~this.hi>>>0;return t===0&&(n=n+1>>>0),-(BigInt(t)+(BigInt(n)<<32n))}return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n)}toString(e=!1){return this.toBigInt(e).toString()}zzEncode(){let e=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^e)>>>0,this.lo=(this.lo<<1^e)>>>0,this}zzDecode(){let e=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^e)>>>0,this.hi=(this.hi>>>1^e)>>>0,this}length(){let e=this.lo,t=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?t===0?e<16384?e<128?1:2:e<2097152?3:4:t<16384?t<128?5:6:t<2097152?7:8:n<128?9:10}static fromBigInt(e){if(e===0n)return qe;if(e<Vu&&e>Hu)return this.fromNumber(Number(e));let t=e<0n;t&&(e=-e);let n=e>>32n,i=e-(n<<32n);return t&&(n=~n|0n,i=~i|0n,++i>vo&&(i=0n,++n>vo&&(n=0n))),new r(Number(i),Number(n))}static fromNumber(e){if(e===0)return qe;let t=e<0;t&&(e=-e);let n=e>>>0,i=(e-n)/4294967296>>>0;return t&&(i=~i>>>0,n=~n>>>0,++n>4294967295&&(n=0,++i>4294967295&&(i=0))),new r(n,i)}static from(e){return typeof e=="number"?r.fromNumber(e):typeof e=="bigint"?r.fromBigInt(e):typeof e=="string"?r.fromBigInt(BigInt(e)):e.low!=null||e.high!=null?new r(e.low>>>0,e.high>>>0):qe}},qe=new re(0,0);qe.toBigInt=function(){return 0n};qe.zzEncode=qe.zzDecode=function(){return this};qe.length=function(){return 1};var vo=4294967296n;function Ao(r){let e=0,t=0;for(let n=0;n<r.length;++n)t=r.charCodeAt(n),t<128?e+=1:t<2048?e+=2:(t&64512)===55296&&(r.charCodeAt(n+1)&64512)===56320?(++n,e+=4):e+=3;return e}function Co(r,e,t){if(t-e<1)return"";let i,o=[],s=0,a;for(;e<t;)a=r[e++],a<128?o[s++]=a:a>191&&a<224?o[s++]=(a&31)<<6|r[e++]&63:a>239&&a<365?(a=((a&7)<<18|(r[e++]&63)<<12|(r[e++]&63)<<6|r[e++]&63)-65536,o[s++]=55296+(a>>10),o[s++]=56320+(a&1023)):o[s++]=(a&15)<<12|(r[e++]&63)<<6|r[e++]&63,s>8191&&((i??(i=[])).push(String.fromCharCode.apply(String,o)),s=0);return i!=null?(s>0&&i.push(String.fromCharCode.apply(String,o.slice(0,s))),i.join("")):String.fromCharCode.apply(String,o.slice(0,s))}function Rn(r,e,t){let n=t,i,o;for(let s=0;s<r.length;++s)i=r.charCodeAt(s),i<128?e[t++]=i:i<2048?(e[t++]=i>>6|192,e[t++]=i&63|128):(i&64512)===55296&&((o=r.charCodeAt(s+1))&64512)===56320?(i=65536+((i&1023)<<10)+(o&1023),++s,e[t++]=i>>18|240,e[t++]=i>>12&63|128,e[t++]=i>>6&63|128,e[t++]=i&63|128):(e[t++]=i>>12|224,e[t++]=i>>6&63|128,e[t++]=i&63|128);return t-n}function ye(r,e){return RangeError(`index out of range: ${r.pos} + ${e??1} > ${r.len}`)}function kr(r,e){return(r[e-4]|r[e-3]<<8|r[e-2]<<16|r[e-1]<<24)>>>0}var $n=class{buf;pos;len;_slice=Uint8Array.prototype.subarray;constructor(e){this.buf=e,this.pos=0,this.len=e.length}uint32(){let e=4294967295;if(e=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(e=(e|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return e;if((this.pos+=5)>this.len)throw this.pos=this.len,ye(this,10);return e}int32(){return this.uint32()|0}sint32(){let e=this.uint32();return e>>>1^-(e&1)|0}bool(){return this.uint32()!==0}fixed32(){if(this.pos+4>this.len)throw ye(this,4);return kr(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw ye(this,4);return kr(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw ye(this,4);let e=Eo(this.buf,this.pos);return this.pos+=4,e}double(){if(this.pos+8>this.len)throw ye(this,4);let e=Bo(this.buf,this.pos);return this.pos+=8,e}bytes(){let e=this.uint32(),t=this.pos,n=this.pos+e;if(n>this.len)throw ye(this,e);return this.pos+=e,t===n?new Uint8Array(0):this.buf.subarray(t,n)}string(){let e=this.bytes();return Co(e,0,e.length)}skip(e){if(typeof e=="number"){if(this.pos+e>this.len)throw ye(this,e);this.pos+=e}else do if(this.pos>=this.len)throw ye(this);while(this.buf[this.pos++]&128);return this}skipType(e){switch(e){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;(e=this.uint32()&7)!==4;)this.skipType(e);break;case 5:this.skip(4);break;default:throw Error(`invalid wire type ${e} at offset ${this.pos}`)}return this}readLongVarint(){let e=new re(0,0),t=0;if(this.len-this.pos>4){for(;t<4;++t)if(e.lo=(e.lo|(this.buf[this.pos]&127)<<t*7)>>>0,this.buf[this.pos++]<128)return e;if(e.lo=(e.lo|(this.buf[this.pos]&127)<<28)>>>0,e.hi=(e.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return e;t=0}else{for(;t<3;++t){if(this.pos>=this.len)throw ye(this);if(e.lo=(e.lo|(this.buf[this.pos]&127)<<t*7)>>>0,this.buf[this.pos++]<128)return e}return e.lo=(e.lo|(this.buf[this.pos++]&127)<<t*7)>>>0,e}if(this.len-this.pos>4){for(;t<5;++t)if(e.hi=(e.hi|(this.buf[this.pos]&127)<<t*7+3)>>>0,this.buf[this.pos++]<128)return e}else for(;t<5;++t){if(this.pos>=this.len)throw ye(this);if(e.hi=(e.hi|(this.buf[this.pos]&127)<<t*7+3)>>>0,this.buf[this.pos++]<128)return e}throw Error("invalid varint encoding")}readFixed64(){if(this.pos+8>this.len)throw ye(this,8);let e=kr(this.buf,this.pos+=4),t=kr(this.buf,this.pos+=4);return new re(e,t)}int64(){return this.readLongVarint().toBigInt()}int64Number(){return this.readLongVarint().toNumber()}int64String(){return this.readLongVarint().toString()}uint64(){return this.readLongVarint().toBigInt(!0)}uint64Number(){let e=_o(this.buf,this.pos);return this.pos+=Mt(e),e}uint64String(){return this.readLongVarint().toString(!0)}sint64(){return this.readLongVarint().zzDecode().toBigInt()}sint64Number(){return this.readLongVarint().zzDecode().toNumber()}sint64String(){return this.readLongVarint().zzDecode().toString()}fixed64(){return this.readFixed64().toBigInt()}fixed64Number(){return this.readFixed64().toNumber()}fixed64String(){return this.readFixed64().toString()}sfixed64(){return this.readFixed64().toBigInt()}sfixed64Number(){return this.readFixed64().toNumber()}sfixed64String(){return this.readFixed64().toString()}};function Mn(r){return new $n(r instanceof Uint8Array?r:r.subarray())}function Vt(r,e,t){let n=Mn(r);return e.decode(n,void 0,t)}var Vn={};G(Vn,{base10:()=>ju});var ju=Pe({prefix:"9",name:"base10",alphabet:"0123456789"});var Hn={};G(Hn,{base16:()=>Gu,base16upper:()=>Wu});var Gu=F({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),Wu=F({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var jn={};G(jn,{base2:()=>Xu});var Xu=F({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Gn={};G(Gn,{base256emoji:()=>Qu});var No=Array.from("\u{1F680}\u{1FA90}\u2604\u{1F6F0}\u{1F30C}\u{1F311}\u{1F312}\u{1F313}\u{1F314}\u{1F315}\u{1F316}\u{1F317}\u{1F318}\u{1F30D}\u{1F30F}\u{1F30E}\u{1F409}\u2600\u{1F4BB}\u{1F5A5}\u{1F4BE}\u{1F4BF}\u{1F602}\u2764\u{1F60D}\u{1F923}\u{1F60A}\u{1F64F}\u{1F495}\u{1F62D}\u{1F618}\u{1F44D}\u{1F605}\u{1F44F}\u{1F601}\u{1F525}\u{1F970}\u{1F494}\u{1F496}\u{1F499}\u{1F622}\u{1F914}\u{1F606}\u{1F644}\u{1F4AA}\u{1F609}\u263A\u{1F44C}\u{1F917}\u{1F49C}\u{1F614}\u{1F60E}\u{1F607}\u{1F339}\u{1F926}\u{1F389}\u{1F49E}\u270C\u2728\u{1F937}\u{1F631}\u{1F60C}\u{1F338}\u{1F64C}\u{1F60B}\u{1F497}\u{1F49A}\u{1F60F}\u{1F49B}\u{1F642}\u{1F493}\u{1F929}\u{1F604}\u{1F600}\u{1F5A4}\u{1F603}\u{1F4AF}\u{1F648}\u{1F447}\u{1F3B6}\u{1F612}\u{1F92D}\u2763\u{1F61C}\u{1F48B}\u{1F440}\u{1F62A}\u{1F611}\u{1F4A5}\u{1F64B}\u{1F61E}\u{1F629}\u{1F621}\u{1F92A}\u{1F44A}\u{1F973}\u{1F625}\u{1F924}\u{1F449}\u{1F483}\u{1F633}\u270B\u{1F61A}\u{1F61D}\u{1F634}\u{1F31F}\u{1F62C}\u{1F643}\u{1F340}\u{1F337}\u{1F63B}\u{1F613}\u2B50\u2705\u{1F97A}\u{1F308}\u{1F608}\u{1F918}\u{1F4A6}\u2714\u{1F623}\u{1F3C3}\u{1F490}\u2639\u{1F38A}\u{1F498}\u{1F620}\u261D\u{1F615}\u{1F33A}\u{1F382}\u{1F33B}\u{1F610}\u{1F595}\u{1F49D}\u{1F64A}\u{1F639}\u{1F5E3}\u{1F4AB}\u{1F480}\u{1F451}\u{1F3B5}\u{1F91E}\u{1F61B}\u{1F534}\u{1F624}\u{1F33C}\u{1F62B}\u26BD\u{1F919}\u2615\u{1F3C6}\u{1F92B}\u{1F448}\u{1F62E}\u{1F646}\u{1F37B}\u{1F343}\u{1F436}\u{1F481}\u{1F632}\u{1F33F}\u{1F9E1}\u{1F381}\u26A1\u{1F31E}\u{1F388}\u274C\u270A\u{1F44B}\u{1F630}\u{1F928}\u{1F636}\u{1F91D}\u{1F6B6}\u{1F4B0}\u{1F353}\u{1F4A2}\u{1F91F}\u{1F641}\u{1F6A8}\u{1F4A8}\u{1F92C}\u2708\u{1F380}\u{1F37A}\u{1F913}\u{1F619}\u{1F49F}\u{1F331}\u{1F616}\u{1F476}\u{1F974}\u25B6\u27A1\u2753\u{1F48E}\u{1F4B8}\u2B07\u{1F628}\u{1F31A}\u{1F98B}\u{1F637}\u{1F57A}\u26A0\u{1F645}\u{1F61F}\u{1F635}\u{1F44E}\u{1F932}\u{1F920}\u{1F927}\u{1F4CC}\u{1F535}\u{1F485}\u{1F9D0}\u{1F43E}\u{1F352}\u{1F617}\u{1F911}\u{1F30A}\u{1F92F}\u{1F437}\u260E\u{1F4A7}\u{1F62F}\u{1F486}\u{1F446}\u{1F3A4}\u{1F647}\u{1F351}\u2744\u{1F334}\u{1F4A3}\u{1F438}\u{1F48C}\u{1F4CD}\u{1F940}\u{1F922}\u{1F445}\u{1F4A1}\u{1F4A9}\u{1F450}\u{1F4F8}\u{1F47B}\u{1F910}\u{1F92E}\u{1F3BC}\u{1F975}\u{1F6A9}\u{1F34E}\u{1F34A}\u{1F47C}\u{1F48D}\u{1F4E3}\u{1F942}"),qu=No.reduce((r,e,t)=>(r[t]=e,r),[]),Ku=No.reduce((r,e,t)=>(r[e.codePointAt(0)]=t,r),[]);function Ju(r){return r.reduce((e,t)=>(e+=qu[t],e),"")}function Yu(r){let e=[];for(let t of r){let n=Ku[t.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${t}`);e.push(n)}return new Uint8Array(e)}var Qu=at({prefix:"\u{1F680}",name:"base256emoji",encode:Ju,decode:Yu});var Wn={};G(Wn,{base36:()=>Zu,base36upper:()=>ef});var Zu=Pe({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),ef=Pe({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Xn={};G(Xn,{base64:()=>Ht,base64pad:()=>tf,base64url:()=>rf,base64urlpad:()=>nf});var Ht=F({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),tf=F({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),rf=F({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),nf=F({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var qn={};G(qn,{base8:()=>of});var of=F({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var Kn={};G(Kn,{identity:()=>sf});var sf=at({prefix:"\0",name:"identity",encode:r=>Bn(r),decode:r=>Sn(r)});var _p=new TextEncoder,af=new TextDecoder;var To=512;function Do(r){return JSON.parse(af.decode(r))}var Ee={};G(Ee,{code:()=>ee,decode:()=>ff,encode:()=>uf,name:()=>cf});var cf="raw",ee=85;function uf(r){return fe(r)}function ff(r){return fe(r)}var Qn={};G(Qn,{identity:()=>Yn});var Lo=0,lf="identity",Fo=fe;function hf(r){return Xe(Lo,Fo(r))}var Yn={code:Lo,name:lf,encode:Fo,digest:hf};var ei={};G(ei,{sha256:()=>ne,sha512:()=>df});function Ke({name:r,code:e,encode:t}){return new Zn(r,e,t)}var Zn=class{name;code;encode;constructor(e,t,n){this.name=e,this.code=t,this.encode=n}digest(e){if(e instanceof Uint8Array){let t=this.encode(e);return t instanceof Uint8Array?Xe(this.code,t):t.then(n=>Xe(this.code,n))}else throw Error("Unknown type, must be binary type")}};function Uo(r){return async e=>new Uint8Array(await crypto.subtle.digest(r,e))}var ne=Ke({name:"sha2-256",code:18,encode:Uo("SHA-256")}),df=Ke({name:"sha2-512",code:19,encode:Uo("SHA-512")});var ti={...Kn,...jn,...qn,...Vn,...Hn,...Nn,...Wn,...Tn,...Xn,...Gn},Fp={...ei,...Qn};function Oo(r,e,t,n){return{name:r,prefix:e,encoder:{name:r,prefix:e,encode:t},decoder:{decode:n}}}var zo=Oo("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),ri=Oo("ascii","a",r=>{let e="a";for(let t=0;t<r.length;t++)e+=String.fromCharCode(r[t]);return e},r=>{r=r.substring(1);let e=te(r.length);for(let t=0;t<r.length;t++)e[t]=r.charCodeAt(t);return e}),pf={utf8:zo,"utf-8":zo,hex:ti.base16,latin1:ri,ascii:ri,binary:ri,...ti},Er=pf;function he(r,e="utf8"){let t=Er[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return t.decoder.decode(`${t.prefix}${r}`)}function ni(r){let e=r??8192,t=e>>>1,n,i=e;return function(s){if(s<1||s>t)return te(s);i+s>e&&(n=te(e),i=0);let a=n.subarray(i,i+=s);return i&7&&(i=(i|7)+1),a}}var Je=class{fn;len;next;val;constructor(e,t,n){this.fn=e,this.len=t,this.next=void 0,this.val=n}};function ii(){}var si=class{head;tail;len;next;constructor(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}},mf=ni();function yf(r){return globalThis.Buffer!=null?te(r):mf(r)}var Gt=class{len;head;tail;states;constructor(){this.len=0,this.head=new Je(ii,0,0),this.tail=this.head,this.states=null}_push(e,t,n){return this.tail=this.tail.next=new Je(e,t,n),this.len+=t,this}uint32(e){return this.len+=(this.tail=this.tail.next=new ai((e=e>>>0)<128?1:e<16384?2:e<2097152?3:e<268435456?4:5,e)).len,this}int32(e){return e<0?this._push(Sr,10,re.fromNumber(e)):this.uint32(e)}sint32(e){return this.uint32((e<<1^e>>31)>>>0)}uint64(e){let t=re.fromBigInt(e);return this._push(Sr,t.length(),t)}uint64Number(e){return this._push(bo,Mt(e),e)}uint64String(e){return this.uint64(BigInt(e))}int64(e){return this.uint64(e)}int64Number(e){return this.uint64Number(e)}int64String(e){return this.uint64String(e)}sint64(e){let t=re.fromBigInt(e).zzEncode();return this._push(Sr,t.length(),t)}sint64Number(e){let t=re.fromNumber(e).zzEncode();return this._push(Sr,t.length(),t)}sint64String(e){return this.sint64(BigInt(e))}bool(e){return this._push(oi,1,e?1:0)}fixed32(e){return this._push(jt,4,e>>>0)}sfixed32(e){return this.fixed32(e)}fixed64(e){let t=re.fromBigInt(e);return this._push(jt,4,t.lo)._push(jt,4,t.hi)}fixed64Number(e){let t=re.fromNumber(e);return this._push(jt,4,t.lo)._push(jt,4,t.hi)}fixed64String(e){return this.fixed64(BigInt(e))}sfixed64(e){return this.fixed64(e)}sfixed64Number(e){return this.fixed64Number(e)}sfixed64String(e){return this.fixed64String(e)}float(e){return this._push(ko,4,e)}double(e){return this._push(So,8,e)}bytes(e){let t=e.length>>>0;return t===0?this._push(oi,1,0):this.uint32(t)._push(wf,t,e)}string(e){let t=Ao(e);return t!==0?this.uint32(t)._push(Rn,t,e):this._push(oi,1,0)}fork(){return this.states=new si(this),this.head=this.tail=new Je(ii,0,0),this.len=0,this}reset(){return this.states!=null?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new Je(ii,0,0),this.len=0),this}ldelim(){let e=this.head,t=this.tail,n=this.len;return this.reset().uint32(n),n!==0&&(this.tail.next=e.next,this.tail=t,this.len+=n),this}finish(){let e=this.head.next,t=yf(this.len),n=0;for(;e!=null;)e.fn(e.val,t,n),n+=e.len,e=e.next;return t}};function oi(r,e,t){e[t]=r&255}function gf(r,e,t){for(;r>127;)e[t++]=r&127|128,r>>>=7;e[t]=r}var ai=class extends Je{next;constructor(e,t){super(gf,e,t),this.next=void 0}};function Sr(r,e,t){for(;r.hi!==0;)e[t++]=r.lo&127|128,r.lo=(r.lo>>>7|r.hi<<25)>>>0,r.hi>>>=7;for(;r.lo>127;)e[t++]=r.lo&127|128,r.lo=r.lo>>>7;e[t++]=r.lo}function jt(r,e,t){e[t]=r&255,e[t+1]=r>>>8&255,e[t+2]=r>>>16&255,e[t+3]=r>>>24}function wf(r,e,t){e.set(r,t)}globalThis.Buffer!=null&&(Gt.prototype.bytes=function(r){let e=r.length>>>0;return this.uint32(e),e>0&&this._push(xf,e,r),this},Gt.prototype.string=function(r){let e=globalThis.Buffer.byteLength(r);return this.uint32(e),e>0&&this._push(bf,e,r),this});function xf(r,e,t){e.set(r,t)}function bf(r,e,t){r.length<40?Rn(r,e,t):e.utf8Write!=null?e.utf8Write(r,t):e.set(he(r),t)}function ci(){return new Gt}function Wt(r,e){let t=ci();return e.encode(r,t,{lengthDelimited:!1}),t.finish()}var dt;(function(r){r[r.VARINT=0]="VARINT",r[r.BIT64=1]="BIT64",r[r.LENGTH_DELIMITED=2]="LENGTH_DELIMITED",r[r.START_GROUP=3]="START_GROUP",r[r.END_GROUP=4]="END_GROUP",r[r.BIT32=5]="BIT32"})(dt||(dt={}));function Br(r,e,t,n){return{name:r,type:e,encode:t,decode:n}}function ui(r){function e(i){if(r[i.toString()]==null)throw new Error("Invalid enum value");return r[i]}let t=function(o,s){let a=e(o);s.int32(a)},n=function(o){let s=o.int32();return e(s)};return Br("enum",dt.VARINT,t,n)}function Xt(r,e){return Br("message",dt.LENGTH_DELIMITED,r,e)}var ge;(function(r){let e;(function(i){i.Raw="Raw",i.Directory="Directory",i.File="File",i.Metadata="Metadata",i.Symlink="Symlink",i.HAMTShard="HAMTShard"})(e=r.DataType||(r.DataType={}));let t;(function(i){i[i.Raw=0]="Raw",i[i.Directory=1]="Directory",i[i.File=2]="File",i[i.Metadata=3]="Metadata",i[i.Symlink=4]="Symlink",i[i.HAMTShard=5]="HAMTShard"})(t||(t={})),function(i){i.codec=()=>ui(t)}(e=r.DataType||(r.DataType={}));let n;r.codec=()=>(n==null&&(n=Xt((i,o,s={})=>{if(s.lengthDelimited!==!1&&o.fork(),i.Type!=null&&(o.uint32(8),r.DataType.codec().encode(i.Type,o)),i.Data!=null&&(o.uint32(18),o.bytes(i.Data)),i.filesize!=null&&(o.uint32(24),o.uint64(i.filesize)),i.blocksizes!=null)for(let a of i.blocksizes)o.uint32(32),o.uint64(a);i.hashType!=null&&(o.uint32(40),o.uint64(i.hashType)),i.fanout!=null&&(o.uint32(48),o.uint64(i.fanout)),i.mode!=null&&(o.uint32(56),o.uint32(i.mode)),i.mtime!=null&&(o.uint32(66),vr.codec().encode(i.mtime,o)),s.lengthDelimited!==!1&&o.ldelim()},(i,o)=>{let s={blocksizes:[]},a=o==null?i.len:i.pos+o;for(;i.pos<a;){let c=i.uint32();switch(c>>>3){case 1:s.Type=r.DataType.codec().decode(i);break;case 2:s.Data=i.bytes();break;case 3:s.filesize=i.uint64();break;case 4:s.blocksizes.push(i.uint64());break;case 5:s.hashType=i.uint64();break;case 6:s.fanout=i.uint64();break;case 7:s.mode=i.uint32();break;case 8:s.mtime=vr.codec().decode(i,i.uint32());break;default:i.skipType(c&7);break}}return s})),n),r.encode=i=>Wt(i,r.codec()),r.decode=i=>Vt(i,r.codec())})(ge||(ge={}));var vr;(function(r){let e;r.codec=()=>(e==null&&(e=Xt((t,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),t.Seconds!=null&&(n.uint32(8),n.int64(t.Seconds)),t.FractionalNanoseconds!=null&&(n.uint32(21),n.fixed32(t.FractionalNanoseconds)),i.lengthDelimited!==!1&&n.ldelim()},(t,n)=>{let i={},o=n==null?t.len:t.pos+n;for(;t.pos<o;){let s=t.uint32();switch(s>>>3){case 1:i.Seconds=t.int64();break;case 2:i.FractionalNanoseconds=t.fixed32();break;default:t.skipType(s&7);break}}return i})),e),r.encode=t=>Wt(t,r.codec()),r.decode=t=>Vt(t,r.codec())})(vr||(vr={}));var Ro;(function(r){let e;r.codec=()=>(e==null&&(e=Xt((t,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),t.MimeType!=null&&(n.uint32(10),n.string(t.MimeType)),i.lengthDelimited!==!1&&n.ldelim()},(t,n)=>{let i={},o=n==null?t.len:t.pos+n;for(;t.pos<o;){let s=t.uint32();switch(s>>>3){case 1:i.MimeType=t.string();break;default:t.skipType(s&7);break}}return i})),e),r.encode=t=>Wt(t,r.codec()),r.decode=t=>Vt(t,r.codec())})(Ro||(Ro={}));var $o={Raw:"raw",Directory:"directory",File:"file",Metadata:"metadata",Symlink:"symlink",HAMTShard:"hamt-sharded-directory"},_f=["directory","hamt-sharded-directory"],Mo=parseInt("0644",8),Vo=parseInt("0755",8),v=class r{static unmarshal(e){let t=ge.decode(e),n=new r({type:$o[t.Type!=null?t.Type.toString():"File"],data:t.Data,blockSizes:t.blocksizes,mode:t.mode,mtime:t.mtime!=null?{secs:t.mtime.Seconds??0n,nsecs:t.mtime.FractionalNanoseconds}:void 0,fanout:t.fanout});return n._originalMode=t.mode??0,n}type;data;blockSizes;hashType;fanout;mtime;_mode;_originalMode;constructor(e={type:"file"}){let{type:t,data:n,blockSizes:i,hashType:o,fanout:s,mtime:a,mode:c}=e;if(t!=null&&!Object.values($o).includes(t))throw(0,fi.default)(new Error("Type: "+t+" is not valid"),"ERR_INVALID_TYPE");this.type=t??"file",this.data=n,this.hashType=o,this.fanout=s,this.blockSizes=i??[],this._originalMode=0,this.mode=c,this.mtime=a}set mode(e){e==null?this._mode=this.isDirectory()?Vo:Mo:this._mode=e&4095}get mode(){return this._mode}isDirectory(){return _f.includes(this.type)}addBlockSize(e){this.blockSizes.push(e)}removeBlockSize(e){this.blockSizes.splice(e,1)}fileSize(){if(this.isDirectory())return 0n;let e=0n;return this.blockSizes.forEach(t=>{e+=t}),this.data!=null&&(e+=BigInt(this.data.length)),e}marshal(){let e;switch(this.type){case"raw":e=ge.DataType.Raw;break;case"directory":e=ge.DataType.Directory;break;case"file":e=ge.DataType.File;break;case"metadata":e=ge.DataType.Metadata;break;case"symlink":e=ge.DataType.Symlink;break;case"hamt-sharded-directory":e=ge.DataType.HAMTShard;break;default:throw(0,fi.default)(new Error(`Type: ${e} is not valid`),"ERR_INVALID_TYPE")}let t=this.data;(this.data==null||this.data.length===0)&&(t=void 0);let n;this.mode!=null&&(n=this._originalMode&4294963200|(this.mode??0),n===Mo&&!this.isDirectory()&&(n=void 0),n===Vo&&this.isDirectory()&&(n=void 0));let i;return this.mtime!=null&&(i={Seconds:this.mtime.secs,FractionalNanoseconds:this.mtime.nsecs}),ge.encode({Type:e,Data:t,filesize:this.isDirectory()?void 0:this.fileSize(),blocksizes:this.blockSizes,hashType:this.hashType,fanout:this.fanout,mode:n,mtime:i})}};var U=class extends Event{type;detail;constructor(e,t){super(e),this.type=e,this.detail=t}};var we=async(r,e,t)=>{t.codec==null&&(t.codec=$);let n=await ne.digest(r),i=C.create(t.cidVersion,t.codec.code,n);return await e.put(i,r,t),i};function Ho(r){return async function*(t,n){let i=0n;for await(let o of t.content)yield async()=>{let s,a={codec:$,cidVersion:r.cidVersion,onProgress:r.onProgress};r.rawLeaves?(a.codec=Ee,a.cidVersion=1):(s=new v({type:r.leafType,data:o}),o=T({Data:s.marshal(),Links:[]}));let c=await we(o,n,a);return i+=BigInt(o.byteLength),r.onProgress?.(new U("unixfs:importer:progress:file:write",{bytesWritten:i,cid:c,path:t.path})),{cid:c,unixfs:s,size:BigInt(o.length),block:o}}}}var li=R(K(),1);var jo=async(r,e,t)=>{let n=new v({type:"directory",mtime:r.mtime,mode:r.mode}),i=T(P({Data:n.marshal()})),o=await we(i,e,t),s=r.path;return{cid:o,path:s,unixfs:n,size:BigInt(i.length),originalPath:r.originalPath,block:i}};async function*kf(r,e,t){let n=-1,i;for await(let o of Pt(t.bufferImporter(r,e),t.blockWriteConcurrency)){if(n++,n===0){i={...o,single:!0};continue}else n===1&&i!=null&&(yield{...i,block:void 0,single:void 0},i=void 0);yield{...o,block:void 0}}i!=null&&(yield i)}function Go(r){return r.single===!0}var Ef=(r,e,t)=>async function(i){if(i.length===1&&Go(i[0])&&t.reduceSingleLeafToSelf){let f=i[0],l=f.block;return Go(f)&&(r.mtime!==void 0||r.mode!==void 0)&&(f.unixfs=new v({type:"file",mtime:r.mtime,mode:r.mode,data:f.block}),l={Data:f.unixfs.marshal(),Links:[]},f.block=T(P(l)),f.cid=await we(f.block,e,{...t,cidVersion:t.cidVersion}),f.size=BigInt(f.block.length)),t.onProgress?.(new U("unixfs:importer:progress:file:layout",{cid:f.cid,path:f.originalPath})),{cid:f.cid,path:r.path,unixfs:f.unixfs,size:f.size,originalPath:f.originalPath}}let o=new v({type:"file",mtime:r.mtime,mode:r.mode}),s=i.filter(f=>f.cid.code===ee&&f.size>0||f.unixfs!=null&&f.unixfs.data==null&&f.unixfs.fileSize()>0n?!0:!!f.unixfs?.data?.length).map(f=>f.cid.code===ee?(o.addBlockSize(f.size),{Name:"",Tsize:Number(f.size),Hash:f.cid}):(f.unixfs==null||f.unixfs.data==null?o.addBlockSize(f.unixfs?.fileSize()??0n):o.addBlockSize(BigInt(f.unixfs.data.length)),{Name:"",Tsize:Number(f.size),Hash:f.cid})),a={Data:o.marshal(),Links:s},c=T(P(a)),h=await we(c,e,t);return t.onProgress?.(new U("unixfs:importer:progress:file:layout",{cid:h,path:r.originalPath})),{cid:h,path:r.path,unixfs:o,size:BigInt(c.length+a.Links.reduce((f,l)=>f+(l.Tsize??0),0)),originalPath:r.originalPath,block:c}},Wo=async(r,e,t)=>t.layout(kf(r,e,t),Ef(r,e,t));function Sf(r){return Symbol.iterator in r}function Bf(r){return Symbol.asyncIterator in r}function vf(r){try{if(r instanceof Uint8Array)return async function*(){yield r}();if(Sf(r))return async function*(){yield*r}();if(Bf(r))return r}catch{throw(0,li.default)(new Error("Content was invalid"),"ERR_INVALID_CONTENT")}throw(0,li.default)(new Error("Content was invalid"),"ERR_INVALID_CONTENT")}function Xo(r){return async function*(t,n){for await(let i of t){let o;if(i.path!=null&&(o=i.path,i.path=i.path.split("/").filter(s=>s!=null&&s!==".").join("/")),Af(i)){let s={path:i.path,mtime:i.mtime,mode:i.mode,content:async function*(){let a=0n;for await(let c of r.chunker(r.chunkValidator(vf(i.content)))){let h=BigInt(c.byteLength);a+=h,r.onProgress?.(new U("unixfs:importer:progress:file:read",{bytesRead:a,chunkSize:h,path:i.path})),yield c}}(),originalPath:o};yield async()=>Wo(s,n,r)}else if(i.path!=null){let s={path:i.path,mtime:i.mtime,mode:i.mode,originalPath:o};yield async()=>jo(s,n,r)}else throw new Error("Import candidate must have content or path or both")}}}function Af(r){return r.content!=null}var hi=R(K(),1);var qo=()=>async function*(e){for await(let t of e){if(t.length===void 0)throw(0,hi.default)(new Error("Content was invalid"),"ERR_INVALID_CONTENT");if(typeof t=="string"||t instanceof String)yield he(t.toString());else if(Array.isArray(t))yield Uint8Array.from(t);else if(t instanceof Uint8Array)yield t;else throw(0,hi.default)(new Error("Content was invalid"),"ERR_INVALID_CONTENT")}};var Cf=174;function qt(r){let e=r?.maxChildrenPerNode??Cf;return async function t(n,i){let o=[];for await(let s of gr(n,e))o.push(await i(s));return o.length>1?t(o,i):o[0]}}function If(r){return r[Symbol.asyncIterator]!=null}function Nf(r){if(If(r))return(async()=>{let t=[];for await(let n of r)t.push(n);return t})();let e=[];for(let t of r)e.push(t);return e}var Ko=Nf;var Se=class{options;root;dir;path;dirty;flat;parent;parentKey;unixfs;mode;mtime;cid;size;nodeSize;constructor(e,t){this.options=t??{},this.root=e.root,this.dir=e.dir,this.path=e.path,this.dirty=e.dirty,this.flat=e.flat,this.parent=e.parent,this.parentKey=e.parentKey,this.unixfs=e.unixfs,this.mode=e.mode,this.mtime=e.mtime}},Kt=C.parse("QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn"),Jt=C.parse("zdj7WbTaiJT1fgatdet9Ei9iDB5hdCxkbVyhyh8YTUnXMiwYi");var Ye=class extends Se{_children;constructor(e,t){super(e,t),this._children=new Map}async put(e,t){this.cid=void 0,this.size=void 0,this.nodeSize=void 0,this._children.set(e,t)}async get(e){return Promise.resolve(this._children.get(e))}childCount(){return this._children.size}directChildrenCount(){return this.childCount()}onlyChild(){return this._children.values().next().value}async*eachChildSeries(){for(let[e,t]of this._children.entries())yield{key:e,child:t}}estimateNodeSize(){if(this.nodeSize!==void 0)return this.nodeSize;this.nodeSize=0;for(let[e,t]of this._children.entries())t.size!=null&&t.cid!=null&&(this.nodeSize+=e.length+(this.options.cidVersion===1?Jt.bytes.byteLength:Kt.bytes.byteLength));return this.nodeSize}async*flush(e){let t=[];for(let[c,h]of this._children.entries()){let f=h;if(h instanceof Se)for await(let l of h.flush(e))f=l,yield l;f.size!=null&&f.cid!=null&&t.push({Name:c,Tsize:Number(f.size),Hash:f.cid})}let n=new v({type:"directory",mtime:this.mtime,mode:this.mode}),i={Data:n.marshal(),Links:t},o=T(P(i)),s=await we(o,e,this.options),a=o.length+i.Links.reduce((c,h)=>c+(h.Tsize==null?0:h.Tsize),0);this.cid=s,this.size=a,yield{cid:s,unixfs:n,path:this.path,size:BigInt(a)}}};var Cr=R(Qo(),1);function Tf(r){let e=new Array(4);for(let t=0;t<4;t++)e[t]=r&255,r=r>>8;return new Uint8Array(e)}var Zm=Ke({name:"murmur3-32",code:35,encode:r=>Tf(Cr.default.x86.hash32(r))}),Qe=Ke({name:"murmur3-128",code:34,encode:r=>st.fromHex(Cr.default.x64.hash128(r))}),e0=Ke({name:"murmur3-x64-64",code:34,encode:r=>st.fromHex(Cr.default.x64.hash128(r)).subarray(0,8)});var ts=R(Ir(),1);var ie=class r{_options;_popCount;_parent;_posAtParent;_children;key;constructor(e,t,n=0){this._options=e,this._popCount=0,this._parent=t,this._posAtParent=n,this._children=new ts.default,this.key=null}async put(e,t){let n=await this._findNewBucketAndPos(e);n.bucket._putAt(n,e,t)}async get(e){let t=await this._findChild(e);if(t!=null)return t.value}async del(e){let t=await this._findPlace(e),n=t.bucket._at(t.pos);n!=null&&n.key===e&&t.bucket._delAt(t.pos)}leafCount(){return this._children.compactArray().reduce((t,n)=>n instanceof r?t+n.leafCount():t+1,0)}childrenCount(){return this._children.length}onlyChild(){return this._children.get(0)}*eachLeafSeries(){let e=this._children.compactArray();for(let t of e)t instanceof r?yield*t.eachLeafSeries():yield t}serialize(e,t){let n=[];return t(this._children.reduce((i,o,s)=>(o!=null&&(o instanceof r?i.push(o.serialize(e,t)):i.push(e(o,s))),i),n))}async asyncTransform(e,t){return rs(this,e,t)}toJSON(){return this.serialize(Uf,zf)}prettyPrint(){return JSON.stringify(this.toJSON(),null," ")}tableSize(){return Math.pow(2,this._options.bits)}async _findChild(e){let t=await this._findPlace(e),n=t.bucket._at(t.pos);if(!(n instanceof r)&&n!=null&&n.key===e)return n}async _findPlace(e){let t=this._options.hash(typeof e=="string"?he(e):e),n=await t.take(this._options.bits),i=this._children.get(n);return i instanceof r?i._findPlace(t):{bucket:this,pos:n,hash:t,existingChild:i}}async _findNewBucketAndPos(e){let t=await this._findPlace(e);if(t.existingChild!=null&&t.existingChild.key!==e){let n=new r(this._options,t.bucket,t.pos);t.bucket._putObjectAt(t.pos,n);let i=await n._findPlace(t.existingChild.hash);return i.bucket._putAt(i,t.existingChild.key,t.existingChild.value),n._findNewBucketAndPos(t.hash)}return t}_putAt(e,t,n){this._putObjectAt(e.pos,{key:t,value:n,hash:e.hash})}_putObjectAt(e,t){this._children.get(e)==null&&this._popCount++,this._children.set(e,t)}_delAt(e){if(e===-1)throw new Error("Invalid position");this._children.get(e)!=null&&this._popCount--,this._children.unset(e),this._level()}_level(){if(this._parent!=null&&this._popCount<=1)if(this._popCount===1){let e=this._children.find(Pf);if(e!=null&&!(e instanceof r)){let t=e.hash;t.untake(this._options.bits);let n={pos:this._posAtParent,hash:t,bucket:this._parent};this._parent._putAt(n,e.key,e.value)}}else this._parent._delAt(this._posAtParent)}_at(e){return this._children.get(e)}};function Pf(r){return!!r}function Uf(r,e){return r.key}function zf(r){return r}async function rs(r,e,t){let n=[];for(let i of r._children.compactArray())if(i instanceof ie)await rs(i,e,t);else{let o=await e(i);n.push({bitField:r._children.bitField(),children:o})}return t(n)}var Of=[255,254,252,248,240,224,192,128],Rf=[1,3,7,15,31,63,127,255],Nr=class{_value;_currentBytePos;_currentBitPos;constructor(e){this._value=e,this._currentBytePos=e.length-1,this._currentBitPos=7}availableBits(){return this._currentBitPos+1+this._currentBytePos*8}totalBits(){return this._value.length*8}take(e){let t=e,n=0;for(;t>0&&this._haveBits();){let i=this._value[this._currentBytePos],o=this._currentBitPos+1,s=Math.min(o,t),a=$f(i,o-s,s);n=(n<<s)+a,t-=s,this._currentBitPos-=s,this._currentBitPos<0&&(this._currentBitPos=7,this._currentBytePos--)}return n}untake(e){for(this._currentBitPos+=e;this._currentBitPos>7;)this._currentBitPos-=8,this._currentBytePos+=1}_haveBits(){return this._currentBytePos>=0}};function $f(r,e,t){let n=Mf(e,t);return(r&n)>>>e}function Mf(r,e){return Of[r]&Rf[Math.min(e+r-1,7)]}function ns(r){function e(t){return t instanceof Tr?t:new Tr(t,r)}return e}var Tr=class{_value;_hashFn;_depth;_availableBits;_currentBufferIndex;_buffers;constructor(e,t){if(!(e instanceof Uint8Array))throw new Error("can only hash Uint8Arrays");this._value=e,this._hashFn=t,this._depth=-1,this._availableBits=0,this._currentBufferIndex=0,this._buffers=[]}async take(e){let t=e;for(;this._availableBits<t;)await this._produceMoreBits();let n=0;for(;t>0;){let i=this._buffers[this._currentBufferIndex],o=Math.min(i.availableBits(),t),s=i.take(o);n=(n<<o)+s,t-=o,this._availableBits-=o,i.availableBits()===0&&this._currentBufferIndex++}return n}untake(e){let t=e;for(;t>0;){let n=this._buffers[this._currentBufferIndex],i=Math.min(n.totalBits()-n.availableBits(),t);n.untake(i),t-=i,this._availableBits+=i,this._currentBufferIndex>0&&n.totalBits()===n.availableBits()&&(this._depth--,this._currentBufferIndex--)}}async _produceMoreBits(){this._depth++;let e=this._depth>0?We([this._value,Uint8Array.from([this._depth])]):this._value,t=await this._hashFn(e),n=new Nr(t);this._buffers.push(n),this._availableBits+=n.availableBits()}};function pt(r){if(r==null||r.hashFn==null)throw new Error("please define an options.hashFn");let e={bits:r.bits??8,hash:ns(r.hashFn)};return new ie(e)}async function Vf(r){return(await Qe.encode(r)).slice(0,8).reverse()}var is=BigInt(34),Hf=8,di=class extends Se{_bucket;constructor(e,t){super(e,t),this._bucket=pt({hashFn:Vf,bits:t.shardFanoutBits??Hf})}async put(e,t){this.cid=void 0,this.size=void 0,this.nodeSize=void 0,await this._bucket.put(e,t)}async get(e){return this._bucket.get(e)}childCount(){return this._bucket.leafCount()}directChildrenCount(){return this._bucket.childrenCount()}onlyChild(){return this._bucket.onlyChild()}async*eachChildSeries(){for await(let{key:e,value:t}of this._bucket.eachLeafSeries())yield{key:e,child:t}}estimateNodeSize(){return this.nodeSize!==void 0?this.nodeSize:(this.nodeSize=as(this._bucket,this,this.options),this.nodeSize)}async*flush(e){for await(let t of ss(this._bucket,e,this,this.options))yield{...t,path:this.path}}},os=di;async function*ss(r,e,t,n){let i=r._children,o=(r.tableSize()-1).toString(16).length,s=[],a=0n;for(let d=0;d<i.length;d++){let m=i.get(d);if(m==null)continue;let x=d.toString(16).toUpperCase().padStart(o,"0");if(m instanceof ie){let g;for await(let w of ss(m,e,null,n))g=w;if(g==null)throw new Error("Could not flush sharded directory, no subshard found");s.push({Name:x,Tsize:Number(g.size),Hash:g.cid}),a+=g.size}else if(jf(m.value)){let g=m.value,w;for await(let k of g.flush(e))w=k,yield w;if(w==null)throw new Error("Did not flush dir");let b=x+m.key;s.push({Name:b,Tsize:Number(w.size),Hash:w.cid}),a+=w.size}else{let g=m.value;if(g.cid==null)continue;let w=x+m.key,b=g.size;s.push({Name:w,Tsize:Number(b),Hash:g.cid}),a+=BigInt(b??0)}}let c=Uint8Array.from(i.bitField().reverse()),h=new v({type:"hamt-sharded-directory",data:c,fanout:BigInt(r.tableSize()),hashType:is,mtime:t?.mtime,mode:t?.mode}),f={Data:h.marshal(),Links:s},l=T(P(f)),y=await we(l,e,n),u=BigInt(l.byteLength)+a;yield{cid:y,unixfs:h,size:u}}function jf(r){return typeof r.flush=="function"}function as(r,e,t){let n=r._children,i=(r.tableSize()-1).toString(16).length,o=[];for(let h=0;h<n.length;h++){let f=n.get(h);if(f==null)continue;let l=h.toString(16).toUpperCase().padStart(i,"0");if(f instanceof ie){let y=as(f,null,t);o.push({Name:l,Tsize:Number(y),Hash:t.cidVersion===0?Kt:Jt})}else if(typeof f.value.flush=="function"){let u=f.value.nodeSize();o.push({Name:l+f.key,Tsize:Number(u),Hash:t.cidVersion===0?Kt:Jt})}else{let y=f.value;if(y.cid==null)continue;let u=l+f.key,d=y.size;o.push({Name:u,Tsize:Number(d),Hash:y.cid})}}let s=Uint8Array.from(n.bitField().reverse()),a=new v({type:"hamt-sharded-directory",data:s,fanout:BigInt(r.tableSize()),hashType:is,mtime:e?.mtime,mode:e?.mode});return T(P({Data:a.marshal(),Links:o})).length}async function pi(r,e,t,n){let i=e;e instanceof Ye&&e.estimateNodeSize()>t&&(i=await Gf(e,n));let o=i.parent;if(o!=null){if(i!==e){if(r!=null&&(r.parent=i),i.parentKey==null)throw new Error("No parent key found");await o.put(i.parentKey,i)}return pi(i,o,t,n)}return i}async function Gf(r,e){let t=new os({root:r.root,dir:!0,parent:r.parent,parentKey:r.parentKey,path:r.path,dirty:r.dirty,flat:!1,mtime:r.mtime,mode:r.mode},e);for await(let{key:n,child:i}of r.eachChildSeries())await t.put(n,i);return t}var cs=(r="")=>r.split(/(?<!\\)\//).filter(Boolean);async function Wf(r,e,t){let n=cs(r.path??""),i=n.length-1,o=e,s="";for(let a=0;a<n.length;a++){let c=n[a];s+=`${s!==""?"/":""}${c}`;let h=a===i;if(o.dirty=!0,o.cid=void 0,o.size=void 0,h)await o.put(c,r),e=await pi(null,o,t.shardSplitThresholdBytes,t);else{let f=await o.get(c);(f==null||!(f instanceof Se))&&(f=new Ye({root:!1,dir:!0,parent:o,parentKey:c,path:s,dirty:!0,flat:!0,mtime:f?.unixfs?.mtime,mode:f?.unixfs?.mode},t)),await o.put(c,f),o=f}}return e}async function*us(r,e){if(!(r instanceof Se)){r.unixfs?.isDirectory()===!0&&(yield r);return}yield*r.flush(e)}function fs(r){return async function*(t,n){let i=new Ye({root:!0,dir:!0,path:"",dirty:!0,flat:!0},r),o,s=!1;for await(let a of t){if(a==null)continue;let c=`${a.originalPath??""}`.split("/")[0];c!=null&&c!==""&&(o==null?(o=c,s=!0):o!==c&&(s=!1)),i=await Wf(a,i,r),(a.unixfs==null||!a.unixfs.isDirectory())&&(yield a)}if(r.wrapWithDirectory||s&&i.childCount()>1)yield*us(i,n);else for await(let a of i.eachChildSeries())a!=null&&(yield*us(a.child,n))}}async function*Re(r,e,t={}){let n;Symbol.asyncIterator in r||Symbol.iterator in r?n=r:n=[r];let i=t.wrapWithDirectory??!1,o=t.shardSplitThresholdBytes??262144,s=t.shardFanoutBits??8,a=t.cidVersion??1,c=t.rawLeaves??!0,h=t.leafType??"file",f=t.fileImportConcurrency??50,l=t.blockWriteConcurrency??10,y=t.reduceSingleLeafToSelf??!0,u=t.chunker??Ut(),d=t.chunkValidator??qo(),m=t.dagBuilder??Xo({chunker:u,chunkValidator:d,wrapWithDirectory:i,layout:t.layout??qt(),bufferImporter:t.bufferImporter??Ho({cidVersion:a,rawLeaves:c,leafType:h,onProgress:t.onProgress}),blockWriteConcurrency:l,reduceSingleLeafToSelf:y,cidVersion:a,onProgress:t.onProgress}),x=t.treeBuilder??fs({wrapWithDirectory:i,shardSplitThresholdBytes:o,shardFanoutBits:s,cidVersion:a,onProgress:t.onProgress});for await(let g of x(Pt(m(n,e),f),e))yield{cid:g.cid,path:g.path,unixfs:g.unixfs,size:g.size}}async function Dr(r,e,t={}){let n=await kn(Re([r],e,t));if(n==null)throw(0,mi.default)(new Error("Nothing imported"),"ERR_INVALID_PARAMS");return n}async function ls(r,e,t={}){let n=await kn(Re([r],e,t));if(n==null)throw(0,mi.default)(new Error("Nothing imported"),"ERR_INVALID_PARAMS");return n}async function hs(r,e,t={}){return Dr({content:r},e,t)}async function ds(r,e,t={}){return Dr({content:r},e,t)}var Qt={cidVersion:1,rawLeaves:!0,layout:qt({maxChildrenPerNode:1024}),chunker:Ut({chunkSize:1048576})};async function*ps(r,e,t={}){yield*Re(r,e,{...Qt,...t})}async function ms(r,e,t={}){let{cid:n}=await hs(r,e,{...Qt,...t});return n}async function ys(r,e,t={}){let{cid:n}=await ds(r,e,{...Qt,...t});return n}async function gs(r,e,t={}){let{cid:n}=await Dr(r,e,{...Qt,...t});return n}async function ws(r,e,t={}){let{cid:n}=await ls({...r,path:r.path??"-"},e,{...Qt,...t});return n}var Zr=R(K(),1);function Xf(r){return r[Symbol.asyncIterator]!=null}function qf(r){if(Xf(r))return(async()=>{let t;for await(let n of r)t=n;return t})();let e;for(let t of r)e=t;return e}var $e=qf;var Kf=["string","number","bigint","symbol"],Jf=["Function","Generator","AsyncGenerator","GeneratorFunction","AsyncGeneratorFunction","AsyncFunction","Observable","Array","Buffer","Object","RegExp","Date","Error","Map","Set","WeakMap","WeakSet","ArrayBuffer","SharedArrayBuffer","DataView","Promise","URL","HTMLElement","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array"];function xs(r){if(r===null)return"null";if(r===void 0)return"undefined";if(r===!0||r===!1)return"boolean";let e=typeof r;if(Kf.includes(e))return e;if(e==="function")return"Function";if(Array.isArray(r))return"Array";if(Yf(r))return"Buffer";let t=Qf(r);return t||"Object"}function Yf(r){return r&&r.constructor&&r.constructor.isBuffer&&r.constructor.isBuffer.call(null,r)}function Qf(r){let e=Object.prototype.toString.call(r).slice(8,-1);if(Jf.includes(e))return e}var p=class{constructor(e,t,n){this.major=e,this.majorEncoded=e<<5,this.name=t,this.terminal=n}toString(){return`Type[${this.major}].${this.name}`}compare(e){return this.major<e.major?-1:this.major>e.major?1:0}};p.uint=new p(0,"uint",!0);p.negint=new p(1,"negint",!0);p.bytes=new p(2,"bytes",!0);p.string=new p(3,"string",!0);p.array=new p(4,"array",!1);p.map=new p(5,"map",!1);p.tag=new p(6,"tag",!1);p.float=new p(7,"float",!0);p.false=new p(7,"false",!0);p.true=new p(7,"true",!0);p.null=new p(7,"null",!0);p.undefined=new p(7,"undefined",!0);p.break=new p(7,"break",!0);var _=class{constructor(e,t,n){this.type=e,this.value=t,this.encodedLength=n,this.encodedBytes=void 0,this.byteValue=void 0}toString(){return`Token[${this.type}].${this.value}`}};var mt=globalThis.process&&!globalThis.process.browser&&globalThis.Buffer&&typeof globalThis.Buffer.isBuffer=="function",Zf=new TextDecoder,el=new TextEncoder;function Lr(r){return mt&&globalThis.Buffer.isBuffer(r)}function Fr(r){return r instanceof Uint8Array?Lr(r)?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):r:Uint8Array.from(r)}var Es=mt?(r,e,t)=>t-e>64?globalThis.Buffer.from(r.subarray(e,t)).toString("utf8"):_s(r,e,t):(r,e,t)=>t-e>64?Zf.decode(r.subarray(e,t)):_s(r,e,t),Pr=mt?r=>r.length>64?globalThis.Buffer.from(r):bs(r):r=>r.length>64?el.encode(r):bs(r);var yt=mt?(r,e,t)=>Lr(r)?new Uint8Array(r.subarray(e,t)):r.slice(e,t):(r,e,t)=>r.slice(e,t),Ss=mt?(r,e)=>(r=r.map(t=>t instanceof Uint8Array?t:globalThis.Buffer.from(t)),Fr(globalThis.Buffer.concat(r,e))):(r,e)=>{let t=new Uint8Array(e),n=0;for(let i of r)n+i.length>t.length&&(i=i.subarray(0,t.length-n)),t.set(i,n),n+=i.length;return t},Bs=mt?r=>globalThis.Buffer.allocUnsafe(r):r=>new Uint8Array(r);function vs(r,e){if(Lr(r)&&Lr(e))return r.compare(e);for(let t=0;t<r.length;t++)if(r[t]!==e[t])return r[t]<e[t]?-1:1;return 0}function bs(r){let e=[],t=0;for(let n=0;n<r.length;n++){let i=r.charCodeAt(n);i<128?e[t++]=i:i<2048?(e[t++]=i>>6|192,e[t++]=i&63|128):(i&64512)===55296&&n+1<r.length&&(r.charCodeAt(n+1)&64512)===56320?(i=65536+((i&1023)<<10)+(r.charCodeAt(++n)&1023),e[t++]=i>>18|240,e[t++]=i>>12&63|128,e[t++]=i>>6&63|128,e[t++]=i&63|128):(e[t++]=i>>12|224,e[t++]=i>>6&63|128,e[t++]=i&63|128)}return e}function _s(r,e,t){let n=[];for(;e<t;){let i=r[e],o=null,s=i>239?4:i>223?3:i>191?2:1;if(e+s<=t){let a,c,h,f;switch(s){case 1:i<128&&(o=i);break;case 2:a=r[e+1],(a&192)===128&&(f=(i&31)<<6|a&63,f>127&&(o=f));break;case 3:a=r[e+1],c=r[e+2],(a&192)===128&&(c&192)===128&&(f=(i&15)<<12|(a&63)<<6|c&63,f>2047&&(f<55296||f>57343)&&(o=f));break;case 4:a=r[e+1],c=r[e+2],h=r[e+3],(a&192)===128&&(c&192)===128&&(h&192)===128&&(f=(i&15)<<18|(a&63)<<12|(c&63)<<6|h&63,f>65535&&f<1114112&&(o=f))}}o===null?(o=65533,s=1):o>65535&&(o-=65536,n.push(o>>>10&1023|55296),o=56320|o&1023),n.push(o),e+=s}return yi(n)}var ks=4096;function yi(r){let e=r.length;if(e<=ks)return String.fromCharCode.apply(String,r);let t="",n=0;for(;n<e;)t+=String.fromCharCode.apply(String,r.slice(n,n+=ks));return t}var tl=256,Ur=class{constructor(e=tl){this.chunkSize=e,this.cursor=0,this.maxCursor=-1,this.chunks=[],this._initReuseChunk=null}reset(){this.cursor=0,this.maxCursor=-1,this.chunks.length&&(this.chunks=[]),this._initReuseChunk!==null&&(this.chunks.push(this._initReuseChunk),this.maxCursor=this._initReuseChunk.length-1)}push(e){let t=this.chunks[this.chunks.length-1];if(this.cursor+e.length<=this.maxCursor+1){let i=t.length-(this.maxCursor-this.cursor)-1;t.set(e,i)}else{if(t){let i=t.length-(this.maxCursor-this.cursor)-1;i<t.length&&(this.chunks[this.chunks.length-1]=t.subarray(0,i),this.maxCursor=this.cursor-1)}e.length<64&&e.length<this.chunkSize?(t=Bs(this.chunkSize),this.chunks.push(t),this.maxCursor+=t.length,this._initReuseChunk===null&&(this._initReuseChunk=t),t.set(e,0)):(this.chunks.push(e),this.maxCursor+=e.length)}this.cursor+=e.length}toBytes(e=!1){let t;if(this.chunks.length===1){let n=this.chunks[0];e&&this.cursor>n.length/2?(t=this.cursor===n.length?n:n.subarray(0,this.cursor),this._initReuseChunk=null,this.chunks=[]):t=yt(n,0,this.cursor)}else t=Ss(this.chunks,this.cursor);return e&&this.reset(),t}};var B="CBOR decode error:",gt="CBOR encode error:",Zt=[];Zt[23]=1;Zt[24]=2;Zt[25]=3;Zt[26]=5;Zt[27]=9;function Te(r,e,t){if(r.length-e<t)throw new Error(`${B} not enough data for type`)}var M=[24,256,65536,4294967296,BigInt("18446744073709551616")];function oe(r,e,t){Te(r,e,1);let n=r[e];if(t.strict===!0&&n<M[0])throw new Error(`${B} integer encoded in more bytes than necessary (strict decode)`);return n}function se(r,e,t){Te(r,e,2);let n=r[e]<<8|r[e+1];if(t.strict===!0&&n<M[1])throw new Error(`${B} integer encoded in more bytes than necessary (strict decode)`);return n}function ae(r,e,t){Te(r,e,4);let n=r[e]*16777216+(r[e+1]<<16)+(r[e+2]<<8)+r[e+3];if(t.strict===!0&&n<M[2])throw new Error(`${B} integer encoded in more bytes than necessary (strict decode)`);return n}function ce(r,e,t){Te(r,e,8);let n=r[e]*16777216+(r[e+1]<<16)+(r[e+2]<<8)+r[e+3],i=r[e+4]*16777216+(r[e+5]<<16)+(r[e+6]<<8)+r[e+7],o=(BigInt(n)<<BigInt(32))+BigInt(i);if(t.strict===!0&&o<M[3])throw new Error(`${B} integer encoded in more bytes than necessary (strict decode)`);if(o<=Number.MAX_SAFE_INTEGER)return Number(o);if(t.allowBigInt===!0)return o;throw new Error(`${B} integers outside of the safe integer range are not supported`)}function As(r,e,t,n){return new _(p.uint,oe(r,e+1,n),2)}function Cs(r,e,t,n){return new _(p.uint,se(r,e+1,n),3)}function Is(r,e,t,n){return new _(p.uint,ae(r,e+1,n),5)}function Ns(r,e,t,n){return new _(p.uint,ce(r,e+1,n),9)}function de(r,e){return H(r,0,e.value)}function H(r,e,t){if(t<M[0]){let n=Number(t);r.push([e|n])}else if(t<M[1]){let n=Number(t);r.push([e|24,n])}else if(t<M[2]){let n=Number(t);r.push([e|25,n>>>8,n&255])}else if(t<M[3]){let n=Number(t);r.push([e|26,n>>>24&255,n>>>16&255,n>>>8&255,n&255])}else{let n=BigInt(t);if(n<M[4]){let i=[e|27,0,0,0,0,0,0,0],o=Number(n&BigInt(4294967295)),s=Number(n>>BigInt(32)&BigInt(4294967295));i[8]=o&255,o=o>>8,i[7]=o&255,o=o>>8,i[6]=o&255,o=o>>8,i[5]=o&255,i[4]=s&255,s=s>>8,i[3]=s&255,s=s>>8,i[2]=s&255,s=s>>8,i[1]=s&255,r.push(i)}else throw new Error(`${B} encountered BigInt larger than allowable range`)}}de.encodedSize=function(e){return H.encodedSize(e.value)};H.encodedSize=function(e){return e<M[0]?1:e<M[1]?2:e<M[2]?3:e<M[3]?5:9};de.compareTokens=function(e,t){return e.value<t.value?-1:e.value>t.value?1:0};function Ts(r,e,t,n){return new _(p.negint,-1-oe(r,e+1,n),2)}function Ds(r,e,t,n){return new _(p.negint,-1-se(r,e+1,n),3)}function Ls(r,e,t,n){return new _(p.negint,-1-ae(r,e+1,n),5)}var gi=BigInt(-1),Fs=BigInt(1);function Ps(r,e,t,n){let i=ce(r,e+1,n);if(typeof i!="bigint"){let o=-1-i;if(o>=Number.MIN_SAFE_INTEGER)return new _(p.negint,o,9)}if(n.allowBigInt!==!0)throw new Error(`${B} integers outside of the safe integer range are not supported`);return new _(p.negint,gi-BigInt(i),9)}function zr(r,e){let t=e.value,n=typeof t=="bigint"?t*gi-Fs:t*-1-1;H(r,e.type.majorEncoded,n)}zr.encodedSize=function(e){let t=e.value,n=typeof t=="bigint"?t*gi-Fs:t*-1-1;return n<M[0]?1:n<M[1]?2:n<M[2]?3:n<M[3]?5:9};zr.compareTokens=function(e,t){return e.value<t.value?1:e.value>t.value?-1:0};function er(r,e,t,n){Te(r,e,t+n);let i=yt(r,e+t,e+t+n);return new _(p.bytes,i,t+n)}function Us(r,e,t,n){return er(r,e,1,t)}function zs(r,e,t,n){return er(r,e,2,oe(r,e+1,n))}function Os(r,e,t,n){return er(r,e,3,se(r,e+1,n))}function Rs(r,e,t,n){return er(r,e,5,ae(r,e+1,n))}function $s(r,e,t,n){let i=ce(r,e+1,n);if(typeof i=="bigint")throw new Error(`${B} 64-bit integer bytes lengths not supported`);return er(r,e,9,i)}function Or(r){return r.encodedBytes===void 0&&(r.encodedBytes=r.type===p.string?Pr(r.value):r.value),r.encodedBytes}function wt(r,e){let t=Or(e);H(r,e.type.majorEncoded,t.length),r.push(t)}wt.encodedSize=function(e){let t=Or(e);return H.encodedSize(t.length)+t.length};wt.compareTokens=function(e,t){return nl(Or(e),Or(t))};function nl(r,e){return r.length<e.length?-1:r.length>e.length?1:vs(r,e)}function tr(r,e,t,n,i){let o=t+n;Te(r,e,o);let s=new _(p.string,Es(r,e+t,e+o),o);return i.retainStringBytes===!0&&(s.byteValue=yt(r,e+t,e+o)),s}function Ms(r,e,t,n){return tr(r,e,1,t,n)}function Vs(r,e,t,n){return tr(r,e,2,oe(r,e+1,n),n)}function Hs(r,e,t,n){return tr(r,e,3,se(r,e+1,n),n)}function js(r,e,t,n){return tr(r,e,5,ae(r,e+1,n),n)}function Gs(r,e,t,n){let i=ce(r,e+1,n);if(typeof i=="bigint")throw new Error(`${B} 64-bit integer string lengths not supported`);return tr(r,e,9,i,n)}var Ws=wt;function xt(r,e,t,n){return new _(p.array,n,t)}function Xs(r,e,t,n){return xt(r,e,1,t)}function qs(r,e,t,n){return xt(r,e,2,oe(r,e+1,n))}function Ks(r,e,t,n){return xt(r,e,3,se(r,e+1,n))}function Js(r,e,t,n){return xt(r,e,5,ae(r,e+1,n))}function Ys(r,e,t,n){let i=ce(r,e+1,n);if(typeof i=="bigint")throw new Error(`${B} 64-bit integer array lengths not supported`);return xt(r,e,9,i)}function Qs(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${B} indefinite length items not allowed`);return xt(r,e,1,1/0)}function Rr(r,e){H(r,p.array.majorEncoded,e.value)}Rr.compareTokens=de.compareTokens;Rr.encodedSize=function(e){return H.encodedSize(e.value)};function bt(r,e,t,n){return new _(p.map,n,t)}function Zs(r,e,t,n){return bt(r,e,1,t)}function ea(r,e,t,n){return bt(r,e,2,oe(r,e+1,n))}function ta(r,e,t,n){return bt(r,e,3,se(r,e+1,n))}function ra(r,e,t,n){return bt(r,e,5,ae(r,e+1,n))}function na(r,e,t,n){let i=ce(r,e+1,n);if(typeof i=="bigint")throw new Error(`${B} 64-bit integer map lengths not supported`);return bt(r,e,9,i)}function ia(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${B} indefinite length items not allowed`);return bt(r,e,1,1/0)}function $r(r,e){H(r,p.map.majorEncoded,e.value)}$r.compareTokens=de.compareTokens;$r.encodedSize=function(e){return H.encodedSize(e.value)};function oa(r,e,t,n){return new _(p.tag,t,1)}function sa(r,e,t,n){return new _(p.tag,oe(r,e+1,n),2)}function aa(r,e,t,n){return new _(p.tag,se(r,e+1,n),3)}function ca(r,e,t,n){return new _(p.tag,ae(r,e+1,n),5)}function ua(r,e,t,n){return new _(p.tag,ce(r,e+1,n),9)}function Mr(r,e){H(r,p.tag.majorEncoded,e.value)}Mr.compareTokens=de.compareTokens;Mr.encodedSize=function(e){return H.encodedSize(e.value)};var ul=20,fl=21,ll=22,hl=23;function fa(r,e,t,n){if(n.allowUndefined===!1)throw new Error(`${B} undefined values are not supported`);return n.coerceUndefinedToNull===!0?new _(p.null,null,1):new _(p.undefined,void 0,1)}function la(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${B} indefinite length items not allowed`);return new _(p.break,void 0,1)}function wi(r,e,t){if(t){if(t.allowNaN===!1&&Number.isNaN(r))throw new Error(`${B} NaN values are not supported`);if(t.allowInfinity===!1&&(r===1/0||r===-1/0))throw new Error(`${B} Infinity values are not supported`)}return new _(p.float,r,e)}function ha(r,e,t,n){return wi(xi(r,e+1),3,n)}function da(r,e,t,n){return wi(bi(r,e+1),5,n)}function pa(r,e,t,n){return wi(wa(r,e+1),9,n)}function Vr(r,e,t){let n=e.value;if(n===!1)r.push([p.float.majorEncoded|ul]);else if(n===!0)r.push([p.float.majorEncoded|fl]);else if(n===null)r.push([p.float.majorEncoded|ll]);else if(n===void 0)r.push([p.float.majorEncoded|hl]);else{let i,o=!1;(!t||t.float64!==!0)&&(ya(n),i=xi(xe,1),n===i||Number.isNaN(n)?(xe[0]=249,r.push(xe.slice(0,3)),o=!0):(ga(n),i=bi(xe,1),n===i&&(xe[0]=250,r.push(xe.slice(0,5)),o=!0))),o||(dl(n),i=wa(xe,1),xe[0]=251,r.push(xe.slice(0,9)))}}Vr.encodedSize=function(e,t){let n=e.value;if(n===!1||n===!0||n===null||n===void 0)return 1;if(!t||t.float64!==!0){ya(n);let i=xi(xe,1);if(n===i||Number.isNaN(n))return 3;if(ga(n),i=bi(xe,1),n===i)return 5}return 9};var ma=new ArrayBuffer(9),pe=new DataView(ma,1),xe=new Uint8Array(ma,0);function ya(r){if(r===1/0)pe.setUint16(0,31744,!1);else if(r===-1/0)pe.setUint16(0,64512,!1);else if(Number.isNaN(r))pe.setUint16(0,32256,!1);else{pe.setFloat32(0,r);let e=pe.getUint32(0),t=(e&2139095040)>>23,n=e&8388607;if(t===255)pe.setUint16(0,31744,!1);else if(t===0)pe.setUint16(0,(r&2147483648)>>16|n>>13,!1);else{let i=t-127;i<-24?pe.setUint16(0,0):i<-14?pe.setUint16(0,(e&2147483648)>>16|1<<24+i,!1):pe.setUint16(0,(e&2147483648)>>16|i+15<<10|n>>13,!1)}}}function xi(r,e){if(r.length-e<2)throw new Error(`${B} not enough data for float16`);let t=(r[e]<<8)+r[e+1];if(t===31744)return 1/0;if(t===64512)return-1/0;if(t===32256)return NaN;let n=t>>10&31,i=t&1023,o;return n===0?o=i*2**-24:n!==31?o=(i+1024)*2**(n-25):o=i===0?1/0:NaN,t&32768?-o:o}function ga(r){pe.setFloat32(0,r,!1)}function bi(r,e){if(r.length-e<4)throw new Error(`${B} not enough data for float32`);let t=(r.byteOffset||0)+e;return new DataView(r.buffer,t,4).getFloat32(0,!1)}function dl(r){pe.setFloat64(0,r,!1)}function wa(r,e){if(r.length-e<8)throw new Error(`${B} not enough data for float64`);let t=(r.byteOffset||0)+e;return new DataView(r.buffer,t,8).getFloat64(0,!1)}Vr.compareTokens=de.compareTokens;function L(r,e,t){throw new Error(`${B} encountered invalid minor (${t}) for major ${r[e]>>>5}`)}function Hr(r){return()=>{throw new Error(`${B} ${r}`)}}var E=[];for(let r=0;r<=23;r++)E[r]=L;E[24]=As;E[25]=Cs;E[26]=Is;E[27]=Ns;E[28]=L;E[29]=L;E[30]=L;E[31]=L;for(let r=32;r<=55;r++)E[r]=L;E[56]=Ts;E[57]=Ds;E[58]=Ls;E[59]=Ps;E[60]=L;E[61]=L;E[62]=L;E[63]=L;for(let r=64;r<=87;r++)E[r]=Us;E[88]=zs;E[89]=Os;E[90]=Rs;E[91]=$s;E[92]=L;E[93]=L;E[94]=L;E[95]=Hr("indefinite length bytes/strings are not supported");for(let r=96;r<=119;r++)E[r]=Ms;E[120]=Vs;E[121]=Hs;E[122]=js;E[123]=Gs;E[124]=L;E[125]=L;E[126]=L;E[127]=Hr("indefinite length bytes/strings are not supported");for(let r=128;r<=151;r++)E[r]=Xs;E[152]=qs;E[153]=Ks;E[154]=Js;E[155]=Ys;E[156]=L;E[157]=L;E[158]=L;E[159]=Qs;for(let r=160;r<=183;r++)E[r]=Zs;E[184]=ea;E[185]=ta;E[186]=ra;E[187]=na;E[188]=L;E[189]=L;E[190]=L;E[191]=ia;for(let r=192;r<=215;r++)E[r]=oa;E[216]=sa;E[217]=aa;E[218]=ca;E[219]=ua;E[220]=L;E[221]=L;E[222]=L;E[223]=L;for(let r=224;r<=243;r++)E[r]=Hr("simple values are not supported");E[244]=L;E[245]=L;E[246]=L;E[247]=fa;E[248]=Hr("simple values are not supported");E[249]=ha;E[250]=da;E[251]=pa;E[252]=L;E[253]=L;E[254]=L;E[255]=la;var be=[];for(let r=0;r<24;r++)be[r]=new _(p.uint,r,1);for(let r=-1;r>=-24;r--)be[31-r]=new _(p.negint,r,1);be[64]=new _(p.bytes,new Uint8Array(0),1);be[96]=new _(p.string,"",1);be[128]=new _(p.array,0,1);be[160]=new _(p.map,0,1);be[244]=new _(p.false,!1,1);be[245]=new _(p.true,!0,1);be[246]=new _(p.null,null,1);function ml(){let r=[];return r[p.uint.major]=de,r[p.negint.major]=zr,r[p.bytes.major]=wt,r[p.string.major]=Ws,r[p.array.major]=Rr,r[p.map.major]=$r,r[p.tag.major]=Mr,r[p.float.major]=Vr,r}var Uy=ml(),zy=new Ur,jr=class r{constructor(e,t){this.obj=e,this.parent=t}includes(e){let t=this;do if(t.obj===e)return!0;while(t=t.parent);return!1}static createCheck(e,t){if(e&&e.includes(t))throw new Error(`${gt} object contains circular references`);return new r(t,e)}},Me={null:new _(p.null,null),undefined:new _(p.undefined,void 0),true:new _(p.true,!0),false:new _(p.false,!1),emptyArray:new _(p.array,0),emptyMap:new _(p.map,0)},Ve={number(r,e,t,n){return!Number.isInteger(r)||!Number.isSafeInteger(r)?new _(p.float,r):r>=0?new _(p.uint,r):new _(p.negint,r)},bigint(r,e,t,n){return r>=BigInt(0)?new _(p.uint,r):new _(p.negint,r)},Uint8Array(r,e,t,n){return new _(p.bytes,r)},string(r,e,t,n){return new _(p.string,r)},boolean(r,e,t,n){return r?Me.true:Me.false},null(r,e,t,n){return Me.null},undefined(r,e,t,n){return Me.undefined},ArrayBuffer(r,e,t,n){return new _(p.bytes,new Uint8Array(r))},DataView(r,e,t,n){return new _(p.bytes,new Uint8Array(r.buffer,r.byteOffset,r.byteLength))},Array(r,e,t,n){if(!r.length)return t.addBreakTokens===!0?[Me.emptyArray,new _(p.break)]:Me.emptyArray;n=jr.createCheck(n,r);let i=[],o=0;for(let s of r)i[o++]=_i(s,t,n);return t.addBreakTokens?[new _(p.array,r.length),i,new _(p.break)]:[new _(p.array,r.length),i]},Object(r,e,t,n){let i=e!=="Object",o=i?r.keys():Object.keys(r),s=i?r.size:o.length;if(!s)return t.addBreakTokens===!0?[Me.emptyMap,new _(p.break)]:Me.emptyMap;n=jr.createCheck(n,r);let a=[],c=0;for(let h of o)a[c++]=[_i(h,t,n),_i(i?r.get(h):r[h],t,n)];return yl(a,t),t.addBreakTokens?[new _(p.map,s),a,new _(p.break)]:[new _(p.map,s),a]}};Ve.Map=Ve.Object;Ve.Buffer=Ve.Uint8Array;for(let r of"Uint8Clamped Uint16 Uint32 Int8 Int16 Int32 BigUint64 BigInt64 Float32 Float64".split(" "))Ve[`${r}Array`]=Ve.DataView;function _i(r,e={},t){let n=xs(r),i=e&&e.typeEncoders&&e.typeEncoders[n]||Ve[n];if(typeof i=="function"){let s=i(r,n,e,t);if(s!=null)return s}let o=Ve[n];if(!o)throw new Error(`${gt} unsupported type: ${n}`);return o(r,n,e,t)}function yl(r,e){e.mapSorter&&r.sort(e.mapSorter)}var gl={strict:!1,allowIndefinite:!0,allowUndefined:!0,allowBigInt:!0},Gr=class{constructor(e,t={}){this._pos=0,this.data=e,this.options=t}pos(){return this._pos}done(){return this._pos>=this.data.length}next(){let e=this.data[this._pos],t=be[e];if(t===void 0){let n=E[e];if(!n)throw new Error(`${B} no decoder for major type ${e>>>5} (byte 0x${e.toString(16).padStart(2,"0")})`);let i=e&31;t=n(this.data,this._pos,i,this.options)}return this._pos+=t.encodedLength,t}},rr=Symbol.for("DONE"),Wr=Symbol.for("BREAK");function wl(r,e,t){let n=[];for(let i=0;i<r.value;i++){let o=_t(e,t);if(o===Wr){if(r.value===1/0)break;throw new Error(`${B} got unexpected break to lengthed array`)}if(o===rr)throw new Error(`${B} found array but not enough entries (got ${i}, expected ${r.value})`);n[i]=o}return n}function xl(r,e,t){let n=t.useMaps===!0,i=n?void 0:{},o=n?new Map:void 0;for(let s=0;s<r.value;s++){let a=_t(e,t);if(a===Wr){if(r.value===1/0)break;throw new Error(`${B} got unexpected break to lengthed map`)}if(a===rr)throw new Error(`${B} found map but not enough entries (got ${s} [no key], expected ${r.value})`);if(n!==!0&&typeof a!="string")throw new Error(`${B} non-string keys not supported (got ${typeof a})`);if(t.rejectDuplicateMapKeys===!0&&(n&&o.has(a)||!n&&a in i))throw new Error(`${B} found repeat map key "${a}"`);let c=_t(e,t);if(c===rr)throw new Error(`${B} found map but not enough entries (got ${s} [no value], expected ${r.value})`);n?o.set(a,c):i[a]=c}return n?o:i}function _t(r,e){if(r.done())return rr;let t=r.next();if(t.type===p.break)return Wr;if(t.type.terminal)return t.value;if(t.type===p.array)return wl(t,r,e);if(t.type===p.map)return xl(t,r,e);if(t.type===p.tag){if(e.tags&&typeof e.tags[t.value]=="function"){let n=_t(r,e);return e.tags[t.value](n)}throw new Error(`${B} tag not supported (${t.value})`)}throw new Error("unsupported")}function ki(r,e){if(!(r instanceof Uint8Array))throw new Error(`${B} data to decode must be a Uint8Array`);e=Object.assign({},gl,e);let t=e.tokenizer||new Gr(r,e),n=_t(t,e);if(n===rr)throw new Error(`${B} did not find any content to decode`);if(n===Wr)throw new Error(`${B} got unexpected break`);return[n,r.subarray(t.pos())]}function nr(r,e){let[t,n]=ki(r,e);if(n.length>0)throw new Error(`${B} too many terminals, data makes no sense`);return t}var ba=42;function kl(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}function El(r){if(r.asCID!==r&&r["/"]!==r.bytes)return null;let e=C.asCID(r);if(!e)return null;let t=new Uint8Array(e.bytes.byteLength+1);return t.set(e.bytes,1),[new _(p.tag,ba),new _(p.bytes,t)]}function Sl(){throw new Error("`undefined` is not supported by the IPLD Data Model and cannot be encoded")}function Bl(r){if(Number.isNaN(r))throw new Error("`NaN` is not supported by the IPLD Data Model and cannot be encoded");if(r===1/0||r===-1/0)throw new Error("`Infinity` and `-Infinity` is not supported by the IPLD Data Model and cannot be encoded");return null}var xa={float64:!0,typeEncoders:{Object:El,undefined:Sl,number:Bl}},Xy={...xa,typeEncoders:{...xa.typeEncoders}};function vl(r){if(r[0]!==0)throw new Error("Invalid CID for CBOR tag 42; expected leading 0x00");return C.decode(r.subarray(1))}var Xr={allowIndefinite:!1,coerceUndefinedToNull:!0,allowNaN:!1,allowInfinity:!1,allowBigInt:!0,strict:!0,useMaps:!1,rejectDuplicateMapKeys:!0,tags:[]};Xr.tags[ba]=vl;var qy={...Xr,tags:Xr.tags.slice()};var _a=113;var ka=r=>nr(kl(r),Xr);var Sa=class extends Array{constructor(){super(),this.inRecursive=[]}prefix(e){let t=this.inRecursive[this.inRecursive.length-1];t&&(t.type===p.array&&(t.elements++,t.elements!==1&&e.push([44])),t.type===p.map&&(t.elements++,t.elements!==1&&(t.elements%2===1?e.push([44]):e.push([58]))))}[p.uint.major](e,t){this.prefix(e);let n=String(t.value),i=[];for(let o=0;o<n.length;o++)i[o]=n.charCodeAt(o);e.push(i)}[p.negint.major](e,t){this[p.uint.major](e,t)}[p.bytes.major](e,t){throw new Error(`${gt} unsupported type: Uint8Array`)}[p.string.major](e,t){this.prefix(e);let n=Pr(JSON.stringify(t.value));e.push(n.length>32?Fr(n):n)}[p.array.major](e,t){this.prefix(e),this.inRecursive.push({type:p.array,elements:0}),e.push([91])}[p.map.major](e,t){this.prefix(e),this.inRecursive.push({type:p.map,elements:0}),e.push([123])}[p.tag.major](e,t){}[p.float.major](e,t){if(t.type.name==="break"){let s=this.inRecursive.pop();if(s){if(s.type===p.array)e.push([93]);else if(s.type===p.map)e.push([125]);else throw new Error("Unexpected recursive type; this should not happen!");return}throw new Error("Unexpected break; this should not happen!")}if(t.value===void 0)throw new Error(`${gt} unsupported type: undefined`);if(this.prefix(e),t.type.name==="true"){e.push([116,114,117,101]);return}else if(t.type.name==="false"){e.push([102,97,108,115,101]);return}else if(t.type.name==="null"){e.push([110,117,108,108]);return}let n=String(t.value),i=[],o=!1;for(let s=0;s<n.length;s++)i[s]=n.charCodeAt(s),!o&&(i[s]===46||i[s]===101||i[s]===69)&&(o=!0);o||(i.push(46),i.push(48)),e.push(i)}};var kt=class{constructor(e,t={}){this._pos=0,this.data=e,this.options=t,this.modeStack=["value"],this.lastToken=""}pos(){return this._pos}done(){return this._pos>=this.data.length}ch(){return this.data[this._pos]}currentMode(){return this.modeStack[this.modeStack.length-1]}skipWhitespace(){let e=this.ch();for(;e===32||e===9||e===13||e===10;)e=this.data[++this._pos]}expect(e){if(this.data.length-this._pos<e.length)throw new Error(`${B} unexpected end of input at position ${this._pos}`);for(let t=0;t<e.length;t++)if(this.data[this._pos++]!==e[t])throw new Error(`${B} unexpected token at position ${this._pos}, expected to find '${String.fromCharCode(...e)}'`)}parseNumber(){let e=this._pos,t=!1,n=!1,i=a=>{for(;!this.done();){let c=this.ch();if(a.includes(c))this._pos++;else break}};if(this.ch()===45&&(t=!0,this._pos++),this.ch()===48)if(this._pos++,this.ch()===46)this._pos++,n=!0;else return new _(p.uint,0,this._pos-e);if(i([48,49,50,51,52,53,54,55,56,57]),t&&this._pos===e+1)throw new Error(`${B} unexpected token at position ${this._pos}`);if(!this.done()&&this.ch()===46){if(n)throw new Error(`${B} unexpected token at position ${this._pos}`);n=!0,this._pos++,i([48,49,50,51,52,53,54,55,56,57])}!this.done()&&(this.ch()===101||this.ch()===69)&&(n=!0,this._pos++,!this.done()&&(this.ch()===43||this.ch()===45)&&this._pos++,i([48,49,50,51,52,53,54,55,56,57]));let o=String.fromCharCode.apply(null,this.data.subarray(e,this._pos)),s=parseFloat(o);return n?new _(p.float,s,this._pos-e):this.options.allowBigInt!==!0||Number.isSafeInteger(s)?new _(s>=0?p.uint:p.negint,s,this._pos-e):new _(s>=0?p.uint:p.negint,BigInt(o),this._pos-e)}parseString(){if(this.ch()!==34)throw new Error(`${B} unexpected character at position ${this._pos}; this shouldn't happen`);this._pos++;for(let o=this._pos,s=0;o<this.data.length&&s<65536;o++,s++){let a=this.data[o];if(a===92||a<32||a>=128)break;if(a===34){let c=String.fromCharCode.apply(null,this.data.subarray(this._pos,o));return this._pos=o+1,new _(p.string,c,s)}}let e=this._pos,t=[],n=()=>{if(this._pos+4>=this.data.length)throw new Error(`${B} unexpected end of unicode escape sequence at position ${this._pos}`);let o=0;for(let s=0;s<4;s++){let a=this.ch();if(a>=48&&a<=57)a-=48;else if(a>=97&&a<=102)a=a-97+10;else if(a>=65&&a<=70)a=a-65+10;else throw new Error(`${B} unexpected unicode escape character at position ${this._pos}`);o=o*16+a,this._pos++}return o},i=()=>{let o=this.ch(),s=null,a=o>239?4:o>223?3:o>191?2:1;if(this._pos+a>this.data.length)throw new Error(`${B} unexpected unicode sequence at position ${this._pos}`);let c,h,f,l;switch(a){case 1:o<128&&(s=o);break;case 2:c=this.data[this._pos+1],(c&192)===128&&(l=(o&31)<<6|c&63,l>127&&(s=l));break;case 3:c=this.data[this._pos+1],h=this.data[this._pos+2],(c&192)===128&&(h&192)===128&&(l=(o&15)<<12|(c&63)<<6|h&63,l>2047&&(l<55296||l>57343)&&(s=l));break;case 4:c=this.data[this._pos+1],h=this.data[this._pos+2],f=this.data[this._pos+3],(c&192)===128&&(h&192)===128&&(f&192)===128&&(l=(o&15)<<18|(c&63)<<12|(h&63)<<6|f&63,l>65535&&l<1114112&&(s=l))}s===null?(s=65533,a=1):s>65535&&(s-=65536,t.push(s>>>10&1023|55296),s=56320|s&1023),t.push(s),this._pos+=a};for(;!this.done();){let o=this.ch(),s;switch(o){case 92:if(this._pos++,this.done())throw new Error(`${B} unexpected string termination at position ${this._pos}`);switch(s=this.ch(),this._pos++,s){case 34:case 39:case 92:case 47:t.push(s);break;case 98:t.push(8);break;case 116:t.push(9);break;case 110:t.push(10);break;case 102:t.push(12);break;case 114:t.push(13);break;case 117:t.push(n());break;default:throw new Error(`${B} unexpected string escape character at position ${this._pos}`)}break;case 34:return this._pos++,new _(p.string,yi(t),this._pos-e);default:if(o<32)throw new Error(`${B} invalid control character at position ${this._pos}`);o<128?(t.push(o),this._pos++):i()}}throw new Error(`${B} unexpected end of string at position ${this._pos}`)}parseValue(){switch(this.ch()){case 123:return this.modeStack.push("obj-start"),this._pos++,new _(p.map,1/0,1);case 91:return this.modeStack.push("array-start"),this._pos++,new _(p.array,1/0,1);case 34:return this.parseString();case 110:return this.expect([110,117,108,108]),new _(p.null,null,4);case 102:return this.expect([102,97,108,115,101]),new _(p.false,!1,5);case 116:return this.expect([116,114,117,101]),new _(p.true,!0,4);case 45:case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return this.parseNumber();default:throw new Error(`${B} unexpected character at position ${this._pos}`)}}next(){switch(this.skipWhitespace(),this.currentMode()){case"value":return this.modeStack.pop(),this.parseValue();case"array-value":{if(this.modeStack.pop(),this.ch()===93)return this._pos++,this.skipWhitespace(),new _(p.break,void 0,1);if(this.ch()!==44)throw new Error(`${B} unexpected character at position ${this._pos}, was expecting array delimiter but found '${String.fromCharCode(this.ch())}'`);return this._pos++,this.modeStack.push("array-value"),this.skipWhitespace(),this.parseValue()}case"array-start":return this.modeStack.pop(),this.ch()===93?(this._pos++,this.skipWhitespace(),new _(p.break,void 0,1)):(this.modeStack.push("array-value"),this.skipWhitespace(),this.parseValue());case"obj-key":if(this.ch()===125)return this.modeStack.pop(),this._pos++,this.skipWhitespace(),new _(p.break,void 0,1);if(this.ch()!==44)throw new Error(`${B} unexpected character at position ${this._pos}, was expecting object delimiter but found '${String.fromCharCode(this.ch())}'`);this._pos++,this.skipWhitespace();case"obj-start":{if(this.modeStack.pop(),this.ch()===125)return this._pos++,this.skipWhitespace(),new _(p.break,void 0,1);let e=this.parseString();if(this.skipWhitespace(),this.ch()!==58)throw new Error(`${B} unexpected character at position ${this._pos}, was expecting key/value delimiter ':' but found '${String.fromCharCode(this.ch())}'`);return this._pos++,this.modeStack.push("obj-value"),e}case"obj-value":return this.modeStack.pop(),this.modeStack.push("obj-key"),this.skipWhitespace(),this.parseValue();default:throw new Error(`${B} unexpected parse state at position ${this._pos}; this shouldn't happen`)}}};function Ei(r,e){return e=Object.assign({tokenizer:new kt(r,e)},e),nr(r,e)}function Il(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}var Si=class extends kt{constructor(e,t){super(e,t),this.tokenBuffer=[]}done(){return this.tokenBuffer.length===0&&super.done()}_next(){return this.tokenBuffer.length>0?this.tokenBuffer.pop():super.next()}next(){let e=this._next();if(e.type===p.map){let t=this._next();if(t.type===p.string&&t.value==="/"){let n=this._next();if(n.type===p.string){if(this._next().type!==p.break)throw new Error("Invalid encoded CID form");return this.tokenBuffer.push(n),new _(p.tag,42,0)}if(n.type===p.map){let i=this._next();if(i.type===p.string&&i.value==="bytes"){let o=this._next();if(o.type===p.string){for(let a=0;a<2;a++)if(this._next().type!==p.break)throw new Error("Invalid encoded Bytes form");let s=Ht.decode(`m${o.value}`);return new _(p.bytes,s,o.value.length)}this.tokenBuffer.push(o)}this.tokenBuffer.push(i)}this.tokenBuffer.push(n)}this.tokenBuffer.push(t)}return e}},Bi={allowIndefinite:!1,allowUndefined:!1,allowNaN:!1,allowInfinity:!1,allowBigInt:!0,strict:!0,useMaps:!1,rejectDuplicateMapKeys:!0,tags:[]};Bi.tags[42]=C.parse;var Ba=297;var va=r=>{let e=Il(r),t=Object.assign(Bi,{tokenizer:new Si(e,Bi)});return Ei(e,t)};var hg=new TextDecoder;var dg=new TextEncoder;var Qa=R(K(),1);var Ca=R(K(),1);function Et(r,e,t,n,i,o,s){let a=r,c=i;for(;o.length>0;){let h=o[0];if(h in a){o.shift(),c=`${c}/${h}`;let f=C.asCID(a[h]);if(f!=null)return{entry:{type:"object",name:n,path:i,cid:t,node:e,depth:s,size:BigInt(e.length),content:async function*(){yield r}},next:{cid:f,name:h,path:c,toResolve:o}};a=a[h]}else throw(0,Ca.default)(new Error(`No property named ${h} found in node ${t}`),"ERR_NO_PROP")}return{entry:{type:"object",name:n,path:i,cid:t,node:e,depth:s,size:BigInt(e.length),content:async function*(){yield r}}}}var Nl=async(r,e,t,n,i,o,s,a)=>{let c=await s.get(r,a),h=ka(c);return Et(h,c,r,e,t,n,o)},Ia=Nl;var Tl=async(r,e,t,n,i,o,s,a)=>{let c=await s.get(r,a),h=va(c);return Et(h,c,r,e,t,n,o)},Na=Tl;var Ta=R(K(),1);function Dl(r,e,t,n){let i=BigInt(r.length),o=BigInt(e+i);return t>=o||n<e?new Uint8Array(0):(n>=e&&n<o&&(r=r.subarray(0,Number(n-e))),t>=e&&t<o&&(r=r.subarray(Number(t-e))),r)}var et=Dl;var ir=R(K(),1),Ll=(r,e=0,t=r)=>{let n=BigInt(r),i=BigInt(e??0),o=BigInt(t);if(o!==n&&(o=i+o),o>n&&(o=n),i<0n)throw(0,ir.default)(new Error("Offset must be greater than or equal to 0"),"ERR_INVALID_PARAMS");if(i>n)throw(0,ir.default)(new Error("Offset must be less than the file size"),"ERR_INVALID_PARAMS");if(o<0n)throw(0,ir.default)(new Error("Length must be greater than or equal to 0"),"ERR_INVALID_PARAMS");if(o>n)throw(0,ir.default)(new Error("Length must be less than the file size"),"ERR_INVALID_PARAMS");return{start:i,end:o}},St=Ll;var Fl=r=>{async function*e(t={}){let{start:n,end:i}=St(r.length,t.offset,t.length),o=et(r,0n,n,i);t.onProgress?.(new U("unixfs:exporter:progress:identity",{bytesRead:BigInt(o.byteLength),totalBytes:i-n,fileSize:BigInt(r.byteLength)})),yield o}return e},Pl=async(r,e,t,n,i,o,s,a)=>{if(n.length>0)throw(0,Ta.default)(new Error(`No link named ${t} found in raw node ${r}`),"ERR_NOT_FOUND");let c=br(r.multihash.bytes);return{entry:{type:"identity",name:e,path:t,cid:r,content:Fl(c.digest),depth:o,size:BigInt(c.digest.length),node:c.digest}}},Da=Pl;var Ul=async(r,e,t,n,i,o,s,a)=>{let c=await s.get(r,a),h=Do(c);return Et(h,c,r,e,t,n,o)},La=Ul;var Fa=R(K(),1);var zl=r=>{async function*e(t={}){let{start:n,end:i}=St(r.length,t.offset,t.length),o=et(r,0n,n,i);t.onProgress?.(new U("unixfs:exporter:progress:raw",{bytesRead:BigInt(o.byteLength),totalBytes:i-n,fileSize:BigInt(r.byteLength)})),yield o}return e},Ol=async(r,e,t,n,i,o,s,a)=>{if(n.length>0)throw(0,Fa.default)(new Error(`No link named ${t} found in raw node ${r}`),"ERR_NOT_FOUND");let c=await s.get(r,a);return{entry:{type:"raw",name:e,path:t,cid:r,content:zl(c),depth:o,size:BigInt(c.length),node:c}}},Pa=Ol;var fr=R(K(),1);var or=R(K(),1);var Rl=async function(r){return(await Qe.encode(r)).slice(0,8).reverse()},$l=async(r,e,t)=>{let n=(e.tableSize()-1).toString(16).length;await Promise.all(r.map(async i=>{if(i.Name==null)throw new Error("Unexpected Link without a Name");if(i.Name.length===n){let o=parseInt(i.Name,16);e._putObjectAt(o,new ie({hash:t._options.hash,bits:t._options.bits},e,o));return}await t.put(i.Name.substring(2),!0)}))},Ua=(r,e)=>r.toString(16).toUpperCase().padStart(e,"0").substring(0,e),Ml=r=>{let e=r.bucket,t=[];for(;e._parent!=null;)t.push(e),e=e._parent;return t.push(e),t.reverse()},za=async(r,e,t,n,i)=>{if(n==null){if(r.Data==null)throw(0,or.default)(new Error("no data in PBNode"),"ERR_NOT_UNIXFS");let l;try{l=v.unmarshal(r.Data)}catch(u){throw(0,or.default)(u,"ERR_NOT_UNIXFS")}if(l.type!=="hamt-sharded-directory")throw(0,or.default)(new Error("not a HAMT"),"ERR_NOT_UNIXFS");if(l.fanout==null)throw(0,or.default)(new Error("missing fanout"),"ERR_NOT_UNIXFS");let y=pt({hashFn:Rl,bits:Math.log2(Number(l.fanout))});n={rootBucket:y,hamtDepth:1,lastBucket:y}}let o=(n.lastBucket.tableSize()-1).toString(16).length;await $l(r.Links,n.lastBucket,n.rootBucket);let s=await n.rootBucket._findNewBucketAndPos(e),a=Ua(s.pos,o),c=Ml(s);c.length>n.hamtDepth&&(n.lastBucket=c[n.hamtDepth],a=Ua(n.lastBucket._posAtParent,o));let h=r.Links.find(l=>{if(l.Name==null)return!1;let y=l.Name.substring(0,o),u=l.Name.substring(o);return!(y!==a||u!==""&&u!==e)});if(h==null)return;if(h.Name!=null&&h.Name.substring(o)===e)return h.Hash;n.hamtDepth++;let f=await t.get(h.Hash,i);return r=O(f),za(r,e,t,n,i)},Oa=za;function Vl(r){let[e,t]=r[Symbol.asyncIterator]!=null?[r[Symbol.asyncIterator](),Symbol.asyncIterator]:[r[Symbol.iterator](),Symbol.iterator],n=[];return{peek:()=>e.next(),push:i=>{n.push(i)},next:()=>n.length>0?{done:!1,value:n.shift()}:e.next(),[t](){return this}}}var qr=Vl;function Hl(r){return r[Symbol.asyncIterator]!=null}function jl(r,e){let t=0;if(Hl(r))return async function*(){for await(let c of r)await e(c,t++)&&(yield c)}();let n=qr(r),{value:i,done:o}=n.next();if(o===!0)return function*(){}();let s=e(i,t++);if(typeof s.then=="function")return async function*(){await s&&(yield i);for await(let c of n)await e(c,t++)&&(yield c)}();let a=e;return function*(){s===!0&&(yield i);for(let c of n)a(c,t++)&&(yield c)}()}var Ra=jl;function Gl(r){return r[Symbol.asyncIterator]!=null}function Wl(r,e){let t=0;if(Gl(r))return async function*(){for await(let c of r)yield e(c,t++)}();let n=qr(r),{value:i,done:o}=n.next();if(o===!0)return function*(){}();let s=e(i,t++);if(typeof s.then=="function")return async function*(){yield await s;for await(let c of n)yield e(c,t++)}();let a=e;return function*(){yield s;for(let c of n)yield a(c,t++)}()}var Bt=Wl;function De(){let r={};return r.promise=new Promise((e,t)=>{r.resolve=e,r.reject=t}),r}var Kr=globalThis.CustomEvent??Event;async function*tt(r,e={}){let t=e.concurrency??1/0;t<1&&(t=1/0);let n=e.ordered==null?!1:e.ordered,i=new EventTarget,o=[],s=De(),a=De(),c=!1,h,f=!1;i.addEventListener("task-complete",()=>{a.resolve()}),Promise.resolve().then(async()=>{try{for await(let d of r){if(o.length===t&&(s=De(),await s.promise),f)break;let m={done:!1};o.push(m),d().then(x=>{m.done=!0,m.ok=!0,m.value=x,i.dispatchEvent(new Kr("task-complete"))},x=>{m.done=!0,m.err=x,i.dispatchEvent(new Kr("task-complete"))})}c=!0,i.dispatchEvent(new Kr("task-complete"))}catch(d){h=d,i.dispatchEvent(new Kr("task-complete"))}});function l(){return n?o[0]?.done:!!o.find(d=>d.done)}function*y(){for(;o.length>0&&o[0].done;){let d=o[0];if(o.shift(),d.ok)yield d.value;else throw f=!0,s.resolve(),d.err;s.resolve()}}function*u(){for(;l();)for(let d=0;d<o.length;d++)if(o[d].done){let m=o[d];if(o.splice(d,1),d--,m.ok)yield m.value;else throw f=!0,s.resolve(),m.err;s.resolve()}}for(;;){if(l()||(a=De(),await a.promise),h!=null)throw h;if(n?yield*y():yield*u(),c&&o.length===0)break}}var Jr=class{buffer;mask;top;btm;next;constructor(e){if(!(e>0)||e-1&e)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(e),this.mask=e-1,this.top=0,this.btm=0,this.next=null}push(e){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=e,this.top=this.top+1&this.mask,!0)}shift(){let e=this.buffer[this.btm];if(e!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,e}isEmpty(){return this.buffer[this.btm]===void 0}},vt=class{size;hwm;head;tail;constructor(e={}){this.hwm=e.splitLimit??16,this.head=new Jr(this.hwm),this.tail=this.head,this.size=0}calculateSize(e){return e?.byteLength!=null?e.byteLength:1}push(e){if(e?.value!=null&&(this.size+=this.calculateSize(e.value)),!this.head.push(e)){let t=this.head;this.head=t.next=new Jr(2*this.head.buffer.length),this.head.push(e)}}shift(){let e=this.tail.shift();if(e===void 0&&this.tail.next!=null){let t=this.tail.next;this.tail.next=null,this.tail=t,e=this.tail.shift()}return e?.value!=null&&(this.size-=this.calculateSize(e.value)),e}isEmpty(){return this.head.isEmpty()}};var vi=class extends Error{type;code;constructor(e,t){super(e??"The operation was aborted"),this.type="aborted",this.code=t??"ABORT_ERR"}};function At(r={}){return Xl(t=>{let n=t.shift();if(n==null)return{done:!0};if(n.error!=null)throw n.error;return{done:n.done===!0,value:n.value}},r)}function Xl(r,e){e=e??{};let t=e.onEnd,n=new vt,i,o,s,a=De(),c=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((x,g)=>{o=w=>{o=null,n.push(w);try{x(r(n))}catch(b){g(b)}return i}}):r(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=De()})}},h=x=>o!=null?o(x):(n.push(x),i),f=x=>(n=new vt,o!=null?o({error:x}):(n.push({error:x}),i)),l=x=>{if(s)return i;if(e?.objectMode!==!0&&x?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return h({done:!1,value:x})},y=x=>s?i:(s=!0,x!=null?f(x):h({done:!0})),u=()=>(n=new vt,y(),{done:!0}),d=x=>(y(x),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:c,return:u,throw:d,push:l,end:y,get readableLength(){return n.size},onEmpty:async x=>{let g=x?.signal;if(g?.throwIfAborted(),n.isEmpty())return;let w,b;g!=null&&(w=new Promise((k,A)=>{b=()=>{A(new vi)},g.addEventListener("abort",b)}));try{await Promise.race([a.promise,w])}finally{b!=null&&g!=null&&g?.removeEventListener("abort",b)}}},t==null)return i;let m=i;return i={[Symbol.asyncIterator](){return this},next(){return m.next()},throw(x){return m.throw(x),t!=null&&(t(x),t=void 0),{done:!0}},return(){return m.return(),t!=null&&(t(),t=void 0),{done:!0}},push:l,end(x){return m.end(x),t!=null&&(t(x),t=void 0),i},get readableLength(){return m.readableLength},onEmpty:x=>m.onEmpty(x)},i}function ql(r){return r[Symbol.asyncIterator]!=null}function Kl(...r){let e=[];for(let t of r)ql(t)||e.push(t);return e.length===r.length?function*(){for(let t of e)yield*t}():async function*(){let t=At({objectMode:!0});Promise.resolve().then(async()=>{try{await Promise.all(r.map(async n=>{for await(let i of n)t.push(i)})),t.end()}catch(n){t.end(n)}}),yield*t}()}var $a=Kl;function Be(r,...e){if(r==null)throw new Error("Empty pipeline");if(Ai(r)){let n=r;r=()=>n.source}else if(Va(r)||Ma(r)){let n=r;r=()=>n}let t=[r,...e];if(t.length>1&&Ai(t[t.length-1])&&(t[t.length-1]=t[t.length-1].sink),t.length>2)for(let n=1;n<t.length-1;n++)Ai(t[n])&&(t[n]=Yl(t[n]));return Jl(...t)}var Jl=(...r)=>{let e;for(;r.length>0;)e=r.shift()(e);return e},Ma=r=>r?.[Symbol.asyncIterator]!=null,Va=r=>r?.[Symbol.iterator]!=null,Ai=r=>r==null?!1:r.sink!=null&&r.source!=null,Yl=r=>e=>{let t=r.sink(e);if(t?.then!=null){let n=At({objectMode:!0});t.then(()=>{n.end()},s=>{n.end(s)});let i,o=r.source;if(Ma(o))i=async function*(){yield*o,n.end()};else if(Va(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return $a(n,i())}return r.source};var Ql=(r,e,t,n,i,o,s)=>{async function*a(c={}){let h=c.offset??0,f=c.length??e.Links.length,l=e.Links.slice(h,f);c.onProgress?.(new U("unixfs:exporter:walk:directory",{cid:r})),yield*Be(l,y=>Bt(y,u=>async()=>{let d=u.Name??"",m=`${n}/${d}`;return(await i(u.Hash,d,m,[],o+1,s,c)).entry}),y=>tt(y,{ordered:!0,concurrency:c.blockReadConcurrency}),y=>Ra(y,u=>u!=null))}return a},Ha=Ql;var rt=R(K(),1);var Ii=R(Ga(),1);var ar=class extends Error{constructor(e){super(e),this.name="TimeoutError"}},Ni=class extends Error{constructor(e){super(),this.name="AbortError",this.message=e}},Wa=r=>globalThis.DOMException===void 0?new Ni(r):new DOMException(r),Xa=r=>{let e=r.reason===void 0?Wa("This operation was aborted."):r.reason;return e instanceof Error?e:Wa(e)};function Ti(r,e){let{milliseconds:t,fallback:n,message:i,customTimers:o={setTimeout,clearTimeout}}=e,s,c=new Promise((h,f)=>{if(typeof t!="number"||Math.sign(t)!==1)throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${t}\``);if(e.signal){let{signal:y}=e;y.aborted&&f(Xa(y)),y.addEventListener("abort",()=>{f(Xa(y))})}if(t===Number.POSITIVE_INFINITY){r.then(h,f);return}let l=new ar;s=o.setTimeout.call(void 0,()=>{if(n){try{h(n())}catch(y){f(y)}return}typeof r.cancel=="function"&&r.cancel(),i===!1?h():i instanceof Error?f(i):(l.message=i??`Promise timed out after ${t} milliseconds`,f(l))},t),(async()=>{try{h(await r)}catch(y){f(y)}})()}).finally(()=>{c.clear()});return c.clear=()=>{o.clearTimeout.call(void 0,s),s=void 0},c}function Di(r,e,t){let n=0,i=r.length;for(;i>0;){let o=Math.trunc(i/2),s=n+o;t(r[s],e)<=0?(n=++s,i-=o+1):i=o}return n}var cr=class{#e=[];enqueue(e,t){t={priority:0,...t};let n={priority:t.priority,run:e};if(this.size&&this.#e[this.size-1].priority>=t.priority){this.#e.push(n);return}let i=Di(this.#e,n,(o,s)=>s.priority-o.priority);this.#e.splice(i,0,n)}dequeue(){return this.#e.shift()?.run}filter(e){return this.#e.filter(t=>t.priority===e.priority).map(t=>t.run)}get size(){return this.#e.length}};var ur=class extends Ii.default{#e;#r;#n=0;#u;#s;#c=0;#i;#f;#t;#m;#o=0;#l;#a;#y;timeout;constructor(e){if(super(),e={carryoverConcurrencyCount:!1,intervalCap:Number.POSITIVE_INFINITY,interval:0,concurrency:Number.POSITIVE_INFINITY,autoStart:!0,queueClass:cr,...e},!(typeof e.intervalCap=="number"&&e.intervalCap>=1))throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${e.intervalCap?.toString()??""}\` (${typeof e.intervalCap})`);if(e.interval===void 0||!(Number.isFinite(e.interval)&&e.interval>=0))throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${e.interval?.toString()??""}\` (${typeof e.interval})`);this.#e=e.carryoverConcurrencyCount,this.#r=e.intervalCap===Number.POSITIVE_INFINITY||e.interval===0,this.#u=e.intervalCap,this.#s=e.interval,this.#t=new e.queueClass,this.#m=e.queueClass,this.concurrency=e.concurrency,this.timeout=e.timeout,this.#y=e.throwOnTimeout===!0,this.#a=e.autoStart===!1}get#x(){return this.#r||this.#n<this.#u}get#b(){return this.#o<this.#l}#_(){this.#o--,this.#h(),this.emit("next")}#k(){this.#w(),this.#g(),this.#f=void 0}get#E(){let e=Date.now();if(this.#i===void 0){let t=this.#c-e;if(t<0)this.#n=this.#e?this.#o:0;else return this.#f===void 0&&(this.#f=setTimeout(()=>{this.#k()},t)),!0}return!1}#h(){if(this.#t.size===0)return this.#i&&clearInterval(this.#i),this.#i=void 0,this.emit("empty"),this.#o===0&&this.emit("idle"),!1;if(!this.#a){let e=!this.#E;if(this.#x&&this.#b){let t=this.#t.dequeue();return t?(this.emit("active"),t(),e&&this.#g(),!0):!1}}return!1}#g(){this.#r||this.#i!==void 0||(this.#i=setInterval(()=>{this.#w()},this.#s),this.#c=Date.now()+this.#s)}#w(){this.#n===0&&this.#o===0&&this.#i&&(clearInterval(this.#i),this.#i=void 0),this.#n=this.#e?this.#o:0,this.#d()}#d(){for(;this.#h(););}get concurrency(){return this.#l}set concurrency(e){if(!(typeof e=="number"&&e>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${e}\` (${typeof e})`);this.#l=e,this.#d()}async#S(e){return new Promise((t,n)=>{e.addEventListener("abort",()=>{n(e.reason)},{once:!0})})}async add(e,t={}){return t={timeout:this.timeout,throwOnTimeout:this.#y,...t},new Promise((n,i)=>{this.#t.enqueue(async()=>{this.#o++,this.#n++;try{t.signal?.throwIfAborted();let o=e({signal:t.signal});t.timeout&&(o=Ti(Promise.resolve(o),{milliseconds:t.timeout})),t.signal&&(o=Promise.race([o,this.#S(t.signal)]));let s=await o;n(s),this.emit("completed",s)}catch(o){if(o instanceof ar&&!t.throwOnTimeout){n();return}i(o),this.emit("error",o)}finally{this.#_()}},t),this.emit("add"),this.#h()})}async addAll(e,t){return Promise.all(e.map(async n=>this.add(n,t)))}start(){return this.#a?(this.#a=!1,this.#d(),this):this}pause(){this.#a=!0}clear(){this.#t=new this.#m}async onEmpty(){this.#t.size!==0&&await this.#p("empty")}async onSizeLessThan(e){this.#t.size<e||await this.#p("next",()=>this.#t.size<e)}async onIdle(){this.#o===0&&this.#t.size===0||await this.#p("idle")}async#p(e,t){return new Promise(n=>{let i=()=>{t&&!t()||(this.off(e,i),n())};this.on(e,i)})}get size(){return this.#t.size}sizeBy(e){return this.#t.filter(e).length}get pending(){return this.#o}get isPaused(){return this.#a}};async function qa(r,e,t,n,i,o,s){if(e instanceof Uint8Array){let h=et(e,n,i,o);t.push(h);return}if(e.Data==null)throw(0,rt.default)(new Error("no data in PBNode"),"ERR_NOT_UNIXFS");let a;try{a=v.unmarshal(e.Data)}catch(h){throw(0,rt.default)(h,"ERR_NOT_UNIXFS")}if(a.data!=null){let h=a.data,f=et(h,n,i,o);t.push(f),n+=BigInt(f.byteLength)}let c=[];if(e.Links.length!==a.blockSizes.length)throw(0,rt.default)(new Error("Inconsistent block sizes and dag links"),"ERR_NOT_UNIXFS");for(let h=0;h<e.Links.length;h++){let f=e.Links[h],l=n,y=l+a.blockSizes[h];if((i>=l&&i<y||o>=l&&o<=y||i<l&&o>y)&&c.push({link:f,blockStart:n}),n=y,n>o)break}await Be(c,h=>Bt(h,f=>async()=>{let l=await r.get(f.link.Hash,s);return{...f,block:l}}),h=>tt(h,{ordered:!0,concurrency:s.blockReadConcurrency}),async h=>{for await(let{link:f,block:l,blockStart:y}of h){let u;switch(f.Hash.code){case V:u=O(l);break;case ee:u=l;break;default:t.end((0,rt.default)(new Error(`Unsupported codec: ${f.Hash.code}`),"ERR_NOT_UNIXFS"));return}let d=new ur({concurrency:1});d.on("error",m=>{t.end(m)}),d.add(async()=>{s.onProgress?.(new U("unixfs:exporter:walk:file",{cid:f.Hash})),await qa(r,u,t,y,i,o,s)}),await d.onIdle()}}),n>=o&&t.end()}var th=(r,e,t,n,i,o,s)=>{async function*a(c={}){let h=t.fileSize();if(h===void 0)throw new Error("File was a directory");let{start:f,end:l}=St(h,c.offset,c.length);if(l===0n)return;let y=0n,u=l-f,d=At();c.onProgress?.(new U("unixfs:exporter:walk:file",{cid:r})),qa(s,e,d,0n,f,l,c).catch(m=>{d.end(m)});for await(let m of d)if(m!=null){if(y+=BigInt(m.byteLength),y>u)throw d.end(),(0,rt.default)(new Error("Read too many bytes - the file size reported by the UnixFS data in the root node may be incorrect"),"ERR_OVER_READ");y===u&&d.end(),c.onProgress?.(new U("unixfs:exporter:progress:unixfs:file",{bytesRead:y,totalBytes:u,fileSize:h})),yield m}if(y<u)throw(0,rt.default)(new Error("Traversed entire DAG but did not read enough bytes"),"ERR_UNDER_READ")}return a},Li=th;var Qr=R(K(),1);var rh=(r,e,t,n,i,o,s)=>{function a(c={}){return c.onProgress?.(new U("unixfs:exporter:walk:hamt-sharded-directory",{cid:r})),Ka(e,n,i,o,s,c)}return a};async function*Ka(r,e,t,n,i,o){let s=r.Links;if(r.Data==null)throw(0,Qr.default)(new Error("no data in PBNode"),"ERR_NOT_UNIXFS");let a;try{a=v.unmarshal(r.Data)}catch(f){throw(0,Qr.default)(f,"ERR_NOT_UNIXFS")}if(a.fanout==null)throw(0,Qr.default)(new Error("missing fanout"),"ERR_NOT_UNIXFS");let c=(a.fanout-1n).toString(16).length,h=Be(s,f=>Bt(f,l=>async()=>{let y=l.Name!=null?l.Name.substring(c):null;if(y!=null&&y!==""){let u=await t(l.Hash,y,`${e}/${y}`,[],n+1,i,o);return{entries:u.entry==null?[]:[u.entry]}}else{let u=await i.get(l.Hash,o);return r=O(u),o.onProgress?.(new U("unixfs:exporter:walk:hamt-sharded-directory",{cid:l.Hash})),{entries:Ka(r,e,t,n,i,o)}}}),f=>tt(f,{ordered:!0,concurrency:o.blockReadConcurrency}));for await(let{entries:f}of h)yield*f}var Ja=rh;var nh=(r,e)=>r.Links.find(n=>n.Name===e)?.Hash,ih={raw:Li,file:Li,directory:Ha,"hamt-sharded-directory":Ja,metadata:(r,e,t,n,i,o,s)=>()=>[],symlink:(r,e,t,n,i,o,s)=>()=>[]},oh=async(r,e,t,n,i,o,s,a)=>{let c=await s.get(r,a),h=O(c),f,l;if(e==null&&(e=r.toString()),h.Data==null)throw(0,fr.default)(new Error("no data in PBNode"),"ERR_NOT_UNIXFS");try{f=v.unmarshal(h.Data)}catch(u){throw(0,fr.default)(u,"ERR_NOT_UNIXFS")}if(t==null&&(t=e),n.length>0){let u;if(f?.type==="hamt-sharded-directory"?u=await Oa(h,n[0],s):u=nh(h,n[0]),u==null)throw(0,fr.default)(new Error("file does not exist"),"ERR_NOT_FOUND");let d=n.shift(),m=`${t}/${d}`;l={cid:u,toResolve:n,name:d??"",path:m}}let y=ih[f.type](r,h,f,t,i,o,s);if(y==null)throw(0,fr.default)(new Error("could not find content exporter"),"ERR_NOT_FOUND");return f.isDirectory()?{entry:{type:"directory",name:e,path:t,cid:r,content:y,unixfs:f,depth:o,node:h,size:f.fileSize()},next:l}:{entry:{type:"file",name:e,path:t,cid:r,content:y,unixfs:f,depth:o,node:h,size:f.fileSize()},next:l}},Ya=oh;var sh={[V]:Ya,[ee]:Pa,[_a]:Ia,[Ba]:Na,[Yn.code]:Da,[To]:La},Za=async(r,e,t,n,i,o,s)=>{let a=sh[r.code];if(a==null)throw(0,Qa.default)(new Error(`No resolver for code ${r.code}`),"ERR_NO_RESOLVER");return a(r,e,t,n,Za,i,o,s)},ec=Za;var ah=(r="")=>(r.trim().match(/([^\\^/]|\\\/)+/g)??[]).filter(Boolean),ch=r=>{if(r instanceof Uint8Array)return{cid:C.decode(r),toResolve:[]};let e=C.asCID(r);if(e!=null)return{cid:e,toResolve:[]};if(typeof r=="string"){r.indexOf("/ipfs/")===0&&(r=r.substring(6));let t=ah(r);return{cid:C.parse(t[0]),toResolve:t.slice(1)}}throw(0,Zr.default)(new Error(`Unknown path type ${r}`),"ERR_BAD_PATH")};async function*Fi(r,e,t={}){let{cid:n,toResolve:i}=ch(r),o=n.toString(),s=o,a=i.length;for(;;){let c=await ec(n,o,s,i,a,e,t);if(c.entry==null&&c.next==null)throw(0,Zr.default)(new Error(`Could not resolve ${r}`),"ERR_NOT_FOUND");if(c.entry!=null&&(yield c.entry),c.next==null)return;i=c.next.toResolve,n=c.next.cid,o=c.next.name,s=c.next.path}}async function Q(r,e,t={}){let n=await $e(Fi(r,e,t));if(n==null)throw(0,Zr.default)(new Error(`Could not resolve ${r}`),"ERR_NOT_FOUND");return n}async function*en(r,e,t={}){let n=await Q(r,e,t);if(n==null)return;if(yield n,n.type==="directory")for await(let o of i(n,t))yield o;async function*i(o,s){for await(let a of o.content(s))yield a,!(a instanceof Uint8Array)&&a.type==="directory"&&(yield*i(a,s))}}var uc=R(cc(),1),q=uc.default;var _e=class extends Error{name;code;constructor(e,t,n){super(e),this.name=t,this.code=n}},ve=class extends _e{constructor(e="not a Unixfs node"){super(e,"NotUnixFSError","ERR_NOT_UNIXFS")}},Z=class extends _e{constructor(e="invalid PBNode"){super(e,"InvalidPBNodeError","ERR_INVALID_PBNODE")}},He=class extends _e{constructor(e="unknown error"){super(e,"InvalidPBNodeError","ERR_UNKNOWN_ERROR")}},nt=class extends _e{constructor(e="path already exists"){super(e,"AlreadyExistsError","ERR_ALREADY_EXISTS")}},Le=class extends _e{constructor(e="path does not exist"){super(e,"DoesNotExistError","ERR_DOES_NOT_EXIST")}},Nt=class extends _e{constructor(e="no content"){super(e,"NoContentError","ERR_NO_CONTENT")}},nn=class extends _e{constructor(e="not a file"){super(e,"NotAFileError","ERR_NOT_A_FILE")}},Ae=class extends _e{constructor(e="not a directory"){super(e,"NotADirectoryError","ERR_NOT_A_DIRECTORY")}},j=class extends _e{constructor(e="invalid parameters"){super(e,"InvalidParametersError","ERR_INVALID_PARAMETERS")}};function ph(r,e){try{if(typeof r=="string"&&r.length>0)return mh(r);if(typeof r=="number"&&isFinite(r))return e?.long?gh(r):yh(r);throw new Error("Value is not a string or number.")}catch(t){let n=wh(t)?`${t.message}. value=${JSON.stringify(r)}`:"An unknown error has occured.";throw new Error(n)}}function mh(r){if(r=String(r),r.length>100)throw new Error("Value exceeds the maximum length of 100 characters.");let e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(r);if(!e)return NaN;let t=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return t*315576e5;case"weeks":case"week":case"w":return t*6048e5;case"days":case"day":case"d":return t*864e5;case"hours":case"hour":case"hrs":case"hr":case"h":return t*36e5;case"minutes":case"minute":case"mins":case"min":case"m":return t*6e4;case"seconds":case"second":case"secs":case"sec":case"s":return t*1e3;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return t;default:throw new Error(`The unit ${n} was matched, but no matching case exists.`)}}var sn=ph;function yh(r){let e=Math.abs(r);return e>=864e5?`${Math.round(r/864e5)}d`:e>=36e5?`${Math.round(r/36e5)}h`:e>=6e4?`${Math.round(r/6e4)}m`:e>=1e3?`${Math.round(r/1e3)}s`:`${r}ms`}function gh(r){let e=Math.abs(r);return e>=864e5?on(r,e,864e5,"day"):e>=36e5?on(r,e,36e5,"hour"):e>=6e4?on(r,e,6e4,"minute"):e>=1e3?on(r,e,1e3,"second"):`${r} ms`}function on(r,e,t,n){let i=e>=t*1.5;return`${Math.round(r/t)} ${n}${i?"s":""}`}function wh(r){return typeof r=="object"&&r!==null&&"message"in r}function Ui(r){t.debug=t,t.default=t,t.coerce=c,t.disable=o,t.enable=i,t.enabled=s,t.humanize=sn,t.destroy=h,Object.keys(r).forEach(f=>{t[f]=r[f]}),t.names=[],t.skips=[],t.formatters={};function e(f){let l=0;for(let y=0;y<f.length;y++)l=(l<<5)-l+f.charCodeAt(y),l|=0;return t.colors[Math.abs(l)%t.colors.length]}t.selectColor=e;function t(f){let l,y=null,u,d;function m(...x){if(!m.enabled)return;let g=m,w=Number(new Date),b=w-(l||w);g.diff=b,g.prev=l,g.curr=w,l=w,x[0]=t.coerce(x[0]),typeof x[0]!="string"&&x.unshift("%O");let k=0;x[0]=x[0].replace(/%([a-zA-Z%])/g,(I,S)=>{if(I==="%%")return"%";k++;let D=t.formatters[S];if(typeof D=="function"){let me=x[k];I=D.call(g,me),x.splice(k,1),k--}return I}),t.formatArgs.call(g,x),(g.log||t.log).apply(g,x)}return m.namespace=f,m.useColors=t.useColors(),m.color=t.selectColor(f),m.extend=n,m.destroy=t.destroy,Object.defineProperty(m,"enabled",{enumerable:!0,configurable:!1,get:()=>y!==null?y:(u!==t.namespaces&&(u=t.namespaces,d=t.enabled(f)),d),set:x=>{y=x}}),typeof t.init=="function"&&t.init(m),m}function n(f,l){let y=t(this.namespace+(typeof l>"u"?":":l)+f);return y.log=this.log,y}function i(f){t.save(f),t.namespaces=f,t.names=[],t.skips=[];let l,y=(typeof f=="string"?f:"").split(/[\s,]+/),u=y.length;for(l=0;l<u;l++)y[l]&&(f=y[l].replace(/\*/g,".*?"),f[0]==="-"?t.skips.push(new RegExp("^"+f.substr(1)+"$")):t.names.push(new RegExp("^"+f+"$")))}function o(){let f=[...t.names.map(a),...t.skips.map(a).map(l=>"-"+l)].join(",");return t.enable(""),f}function s(f){if(f[f.length-1]==="*")return!0;let l,y;for(l=0,y=t.skips.length;l<y;l++)if(t.skips[l].test(f))return!1;for(l=0,y=t.names.length;l<y;l++)if(t.names[l].test(f))return!0;return!1}function a(f){return f.toString().substring(2,f.toString().length-2).replace(/\.\*\?$/,"*")}function c(f){return f instanceof Error?f.stack??f.message:f}function h(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return t.setupFormatters(t.formatters),t.enable(t.load()),t}var an=Bh(),xh=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function bh(){return typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)?!0:typeof navigator<"u"&&navigator.userAgent?.toLowerCase().match(/(edge|trident)\/(\d+)/)!=null?!1:typeof document<"u"&&document.documentElement?.style?.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent?.toLowerCase().match(/firefox\/(\d+)/)!=null&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent?.toLowerCase().match(/applewebkit\/(\d+)/)}function _h(r){if(r[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+r[0]+(this.useColors?"%c ":" ")+"+"+sn(this.diff),!this.useColors)return;let e="color: "+this.color;r.splice(1,0,e,"color: inherit");let t=0,n=0;r[0].replace(/%[a-zA-Z%]/g,i=>{i!=="%%"&&(t++,i==="%c"&&(n=t))}),r.splice(n,0,e)}var kh=console.debug??console.log??(()=>{});function Eh(r){try{r?an?.setItem("debug",r):an?.removeItem("debug")}catch{}}function Sh(){let r;try{r=an?.getItem("debug")}catch{}return!r&&typeof process<"u"&&"env"in process&&(r=process.env.DEBUG),r}function Bh(){try{return localStorage}catch{}}function vh(r){r.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}}var fc=Ui({formatArgs:_h,save:Eh,load:Sh,useColors:bh,setupFormatters:vh,colors:xh,storage:an,log:kh});var ue=fc;ue.formatters.b=r=>r==null?"undefined":le.baseEncode(r);ue.formatters.t=r=>r==null?"undefined":Ue.baseEncode(r);ue.formatters.m=r=>r==null?"undefined":Ht.baseEncode(r);ue.formatters.p=r=>r==null?"undefined":r.toString();ue.formatters.c=r=>r==null?"undefined":r.toString();ue.formatters.k=r=>r==null?"undefined":r.toString();ue.formatters.a=r=>r==null?"undefined":r.toString();function Ah(r){let e=()=>{};return e.enabled=!1,e.color="",e.diff=0,e.log=()=>{},e.namespace=r,e.destroy=()=>!0,e.extend=()=>e,e}function z(r){let e=Ah(`${r}:trace`);return ue.enabled(`${r}:trace`)&&ue.names.map(t=>t.toString()).find(t=>t.includes(":trace"))!=null&&(e=ue(`${r}:trace`)),Object.assign(ue(r),{error:ue(`${r}:error`),trace:e})}var $i=R(Ir(),1);function un(r){function e(t){return t instanceof cn?t:new cn(t,r)}return e}var cn=class{_value;_hashFn;_depth;_availableBits;_currentBufferIndex;_buffers;constructor(e,t){if(!(e instanceof Uint8Array))throw new Error("can only hash Uint8Arrays");this._value=e,this._hashFn=t,this._depth=-1,this._availableBits=0,this._currentBufferIndex=0,this._buffers=[]}async take(e){let t=e;for(;this._availableBits<t;)await this._produceMoreBits();let n=0;for(;t>0;){let i=this._buffers[this._currentBufferIndex],o=Math.min(i.availableBits(),t),s=i.take(o);n=(n<<o)+s,t-=o,this._availableBits-=o,i.availableBits()===0&&this._currentBufferIndex++}return n}untake(e){let t=e;for(;t>0;){let n=this._buffers[this._currentBufferIndex],i=Math.min(n.totalBits()-n.availableBits(),t);n.untake(i),t-=i,this._availableBits+=i,this._currentBufferIndex>0&&n.totalBits()===n.availableBits()&&(this._depth--,this._currentBufferIndex--)}}async _produceMoreBits(){this._depth++;let e=this._depth>0?We([this._value,Uint8Array.from([this._depth])]):this._value,t=await this._hashFn(e),n=new zi(t);this._buffers.push(n),this._availableBits+=n.availableBits()}},Ch=[255,254,252,248,240,224,192,128],Ih=[1,3,7,15,31,63,127,255],zi=class{_value;_currentBytePos;_currentBitPos;constructor(e){this._value=e,this._currentBytePos=e.length-1,this._currentBitPos=7}availableBits(){return this._currentBitPos+1+this._currentBytePos*8}totalBits(){return this._value.length*8}take(e){let t=e,n=0;for(;t>0&&this._haveBits();){let i=this._value[this._currentBytePos],o=this._currentBitPos+1,s=Math.min(o,t),a=Nh(i,o-s,s);n=(n<<s)+a,t-=s,this._currentBitPos-=s,this._currentBitPos<0&&(this._currentBitPos=7,this._currentBytePos--)}return n}untake(e){for(this._currentBitPos+=e;this._currentBitPos>7;)this._currentBitPos-=8,this._currentBytePos+=1}_haveBits(){return this._currentBytePos>=0}};function Nh(r,e,t){let n=Th(e,t);return(r&n)>>>e}function Th(r,e){return Ch[r]&Ih[Math.min(e+r-1,7)]}var lr=BigInt(Qe.code),it=8;async function Tt(r){return(await Qe.encode(r)).subarray(0,8).reverse()}var dc=R(Ir(),1);var ke=async(r,e,t)=>{t.codec==null&&(t.codec=$);let n=await ne.digest(r),i=C.create(t.cidVersion,t.codec.code,n);return await e.put(i,r,{...t,signal:t.signal}),i};var Oi=class{options;root;dir;path;dirty;flat;parent;parentKey;unixfs;mode;mtime;cid;size;nodeSize;constructor(e,t){this.options=t??{},this.root=e.root,this.dir=e.dir,this.path=e.path,this.dirty=e.dirty,this.flat=e.flat,this.parent=e.parent,this.parentKey=e.parentKey,this.unixfs=e.unixfs,this.mode=e.mode,this.mtime=e.mtime}},fn=class extends Oi{_bucket;constructor(e,t){super(e,t),this._bucket=pt({hashFn:Tt,bits:8})}async put(e,t){this.cid=void 0,this.size=void 0,this.nodeSize=void 0,await this._bucket.put(e,t)}async get(e){return this._bucket.get(e)}childCount(){return this._bucket.leafCount()}directChildrenCount(){return this._bucket.childrenCount()}onlyChild(){return this._bucket.onlyChild()}async*eachChildSeries(){for await(let{key:e,value:t}of this._bucket.eachLeafSeries())yield{key:e,child:t}}estimateNodeSize(){return this.nodeSize!==void 0?this.nodeSize:(this.nodeSize=hc(this._bucket,this,this.options),this.nodeSize)}async*flush(e){for await(let t of lc(this._bucket,e,this,this.options))yield{...t,path:this.path}}};async function*lc(r,e,t,n){let i=r._children,o=[],s=0n;for(let u=0;u<i.length;u++){let d=i.get(u);if(d==null)continue;let m=u.toString(16).toUpperCase().padStart(2,"0");if(d instanceof ie){let x;for await(let g of lc(d,e,null,n))x=g;if(x==null)throw new Error("Could not flush sharded directory, no subshard found");o.push({Name:m,Tsize:Number(x.size),Hash:x.cid}),s+=x.size}else if(Dh(d.value)){let x=d.value,g;for await(let b of x.flush(e))g=b,yield g;if(g==null)throw new Error("Did not flush dir");let w=m+d.key;o.push({Name:w,Tsize:Number(g.size),Hash:g.cid}),s+=g.size}else{let x=d.value;if(x.cid==null)continue;let g=m+d.key,w=x.size;o.push({Name:g,Tsize:Number(w),Hash:x.cid}),s+=BigInt(w??0)}}let a=Uint8Array.from(i.bitField().reverse()),c=new v({type:"hamt-sharded-directory",data:a,fanout:BigInt(r.tableSize()),hashType:lr,mtime:t?.mtime,mode:t?.mode}),h={Data:c.marshal(),Links:o},f=T(P(h)),l=await ke(f,e,n),y=BigInt(f.byteLength)+s;yield{cid:l,unixfs:c,size:y}}function Dh(r){return typeof r.flush=="function"}function hc(r,e,t){let n=r._children,i=[];for(let c=0;c<n.length;c++){let h=n.get(c);if(h==null)continue;let f=c.toString(16).toUpperCase().padStart(2,"0");if(h instanceof ie){let l=hc(h,null,t);i.push({Name:f,Tsize:Number(l),Hash:t.cidVersion===0?ln:hn})}else if(typeof h.value.flush=="function"){let y=h.value.nodeSize();i.push({Name:f+h.key,Tsize:Number(y),Hash:t.cidVersion===0?ln:hn})}else{let l=h.value;if(l.cid==null)continue;let y=f+h.key,u=l.size;i.push({Name:y,Tsize:Number(u),Hash:l.cid})}}let o=Uint8Array.from(n.bitField().reverse()),s=new v({type:"hamt-sharded-directory",data:o,fanout:BigInt(r.tableSize()),hashType:lr,mtime:e?.mtime,mode:e?.mode});return T(P({Data:s.marshal(),Links:i})).length}var ln=C.parse("QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn"),hn=C.parse("zdj7WbTaiJT1fgatdet9Ei9iDB5hdCxkbVyhyh8YTUnXMiwYi");var Ri=z("helia:unixfs:commands:utils:hamt-utils"),dn=r=>r.toString(16).toUpperCase().padStart(2,"0").substring(0,2),pc=async(r,e,t)=>{let n=new fn({root:!0,dir:!0,parent:void 0,parentKey:void 0,path:"",dirty:!0,flat:!1,mtime:t.mtime,mode:t.mode},t);for(let o=0;o<e.length;o++)await n._bucket.put(e[o].name,{size:e[o].size,cid:e[o].cid});let i=await $e(n.flush(r));if(i==null)throw new Error("Flushing shard yielded no result");return i},pn=async(r,e,t)=>{let n=v.unmarshal(r[0].node.Data??new Uint8Array(0)),i=BigInt(Math.pow(2,it));r.reverse();let o,s;for(let a=0;a<r.length;a++){let c=a===r.length-1,h=r[a],f=Uint8Array.from(h.children.bitField().reverse()),l=new v({type:"hamt-sharded-directory",data:f,fanout:i,hashType:lr});c&&(l.mtime=n.mtime,l.mode=n.mode),s={Data:l.marshal(),Links:h.node.Links};let y=T(P(s));if(o=await ke(y,e,t),!c){let u=r[a+1];if(u==null)throw new Error("Was not operating on shard root but also had no parent?");Ri("updating link in parent sub-shard with prefix %s",u.prefix),u.node.Links=u.node.Links.filter(d=>d.Name!==u.prefix),u.node.Links.push({Name:u.prefix,Hash:o,Tsize:h.node.Links.reduce((d,m)=>d+(m.Tsize??0),y.byteLength)})}}if(o==null||s==null)throw new Error("Noting persisted");return{cid:o,node:s}},mn=async(r,e,t,n)=>{let o=un(Tt)(he(e)),s=[];for(;;){let a=await t.get(r,n),c=O(a),h=new dc.default,f=await o.take(it),l=dn(f);s.push({prefix:l,children:h,node:c});let y;for(let d of c.Links){let m=d.Name??"";if(m.length<2)throw new Error("Invalid HAMT - link name was too short");let x=parseInt(m.substring(0,2),16);h.set(x,!0),m.startsWith(l)&&(y=d)}if(y==null){Ri("no link found with prefix %s for %s",l,e);break}let u=y.Name??"";if(u.length<2)throw new Error("Invalid HAMT - link name was too short");if(u.length===2){r=y.Hash,Ri("descend into sub-shard with prefix %s",u);continue}break}return{path:s,hash:o}};async function yn(r,e,t,n){if(r.Data==null)throw new Error("DagPB node had no data");let i=v.unmarshal(r.Data),o;if(i.type==="directory")o=Lh(r);else if(i.type==="hamt-sharded-directory")o=await mc(r,0,t,e,n);else throw new Error("Can only estimate the size of directories or shards");return o>t}function Lh(r){let e=0;for(let t of r.Links)e+=(t.Name??"").length,e+=t.Hash.version===1?hn.bytes.byteLength:ln.bytes.byteLength;return e}async function mc(r,e,t,n,i){if(e>t)return t;if(r.Data==null||!v.unmarshal(r.Data).isDirectory())return e;for(let s of r.Links){let a=s.Name??"";if(a=a.substring(2),e+=a.length,e+=s.Hash.bytes.byteLength,s.Hash.code===V){let c=await n.get(s.Hash,i),h=O(c);e+=await mc(h,e,t,n,i)}}return e}var Ce=z("helia:unixfs:components:utils:add-link");async function Dt(r,e,t,n){if(r.node.Data==null)throw new j("Invalid parent passed to addLink");if(v.unmarshal(r.node.Data).type==="hamt-sharded-directory")return Ce("adding link to sharded directory"),Uh(r,e,t,n);Ce(`adding ${e.Name} (${e.Hash}) to regular directory`);let o=await Ph(r,e,t,n);if(await yn(o.node,t,n.shardSplitThresholdBytes,n)){Ce("converting directory to sharded directory");let s=await Fh(o,t);o.cid=s.cid,o.node=O(await t.get(s.cid,n))}return o}var Fh=async(r,e)=>{if(r.node.Data==null)throw new j("Invalid parent passed to convertToShardedDirectory");let t=v.unmarshal(r.node.Data),n=await pc(e,r.node.Links.map(i=>({name:i.Name??"",size:BigInt(i.Tsize??0),cid:i.Hash})),{mode:t.mode,mtime:t.mtime,cidVersion:r.cid.version});return Ce(`converted directory to sharded directory ${n.cid}`),n},Ph=async(r,e,t,n)=>{let i=r.node.Links.filter(f=>{let l=f.Name===e.Name;if(l&&!n.allowOverwriting)throw new nt;return!l});if(i.push(e),r.node.Data==null)throw new Z("Parent node with no data passed to addToDirectory");let o=v.unmarshal(r.node.Data),s;if(o.mtime!=null){let f=Date.now(),l=Math.floor(f/1e3);o.mtime={secs:BigInt(l),nsecs:(f-l*1e3)*1e3},s=o.marshal()}else s=r.node.Data;r.node=P({Data:s,Links:i});let a=T(r.node),c=await ne.digest(a),h=C.create(r.cid.version,V,c);return await t.put(h,a),{node:r.node,cid:h}},Uh=async(r,e,t,n)=>{let{path:i,hash:o}=await mn(r.cid,e.Name,t,n),s=i[i.length-1];if(s==null)throw new Error("Invalid HAMT, could not generate path");let a=s.prefix,c=parseInt(a,16);Ce("next prefix for %s is %s",e.Name,a);let h=`${a}${e.Name}`,f=s.node.Links.find(l=>(l.Name??"").startsWith(a));if(f!=null)if(Ce("link %s was present in shard",h),f.Name===h){if(!n.allowOverwriting)throw new nt;Ce("overwriting %s in subshard",e.Name),s.node.Links=s.node.Links.filter(l=>l.Name!==h),s.node.Links.push({Name:h,Hash:e.Hash,Tsize:e.Tsize})}else{if(f.Name?.length===2)throw new Error("Existing link was subshard?!");{Ce("prefix %s already exists, creating new subshard",a);let l=s.node.Links.findIndex(x=>x.Name?.startsWith(a)),y=s.node.Links.splice(l,1)[0],u=(y.Name??"").substring(2),m=un(Tt)(he(u));for(let x=0;x<i.length;x++)await m.take(it);for(;;){let x=await m.take(it),g=dn(x);y.Name=`${g}${u}`;let w=await o.take(it),b=dn(w);if(g===b){let A=new $i.default;A.set(w,!0),i.push({prefix:b,children:A,node:{Links:[]}});continue}let k=new $i.default;k.set(w,!0),k.set(x,!0),i.push({prefix:a,children:k,node:{Links:[y,{Name:`${b}${e.Name}`,Hash:e.Hash,Tsize:e.Tsize}]}});break}}}else Ce("link %s was not present in sub-shard",h),e.Name=h,s.node.Links.push(e),s.children.set(c,!0),Ce("adding %s to existing sub-shard",h);return pn(i,t,n)};async function je(r,e,t={}){let n=await Q(r,e,t);if(n.type!=="directory")throw new Ae(`${r.toString()} was not a UnixFS directory`);return{cid:r,node:n.node}}async function Lt(r,e,t,n){let i=await Q(r,t,n);if(i.type!=="directory"&&i.type!=="file"&&i.type!=="raw")throw new ve(`${r.toString()} was not a UnixFS node`);return{Name:e,Tsize:i.node instanceof Uint8Array?i.node.byteLength:zh(i.node),Hash:r}}function zh(r){let e=r.Links.reduce((t,n)=>t+(n.Tsize??0),0);return T(r).byteLength+e}var Oh=z("helia:unixfs:components:utils:resolve");async function Ie(r,e,t,n){if(e==null||e==="")return{cid:r};let i=`/ipfs/${r}${e==null?"":`/${e}`}`,o=await Ko(Fi(i,t,n));if(o.length===0)throw new Le("Could not find path in directory");return Oh("resolved %s to %c",e,r),{cid:o[o.length-1].cid,path:e,segments:o}}async function Ft(r,e,t,n){if(e.segments==null||e.segments.length===0)return r;let i=e.segments.pop();if(i==null)throw new Error("Insufficient segments");i.cid=r,e.segments.reverse();for(let o of e.segments){let[s,a]=await Promise.all([je(o.cid,t,n),Lt(i.cid,i.name,t,n)]);r=(await Dt(s,a,t,{...n,allowOverwriting:!0,cidVersion:r.version})).cid,o.cid=r,i=o}return r}var Rh=q.bind({ignoreUndefined:!0}),$h={};async function*yc(r,e,t={}){let n=Rh($h,t),i=await Ie(r,n.path,e,n),o=await Q(i.cid,e,n);if(o.type!=="file"&&o.type!=="raw")throw new nn;if(o.content==null)throw new Nt;yield*o.content(n)}var Mh=q.bind({ignoreUndefined:!0}),Vh=z("helia:unixfs:chmod"),Hh={recursive:!1,shardSplitThresholdBytes:262144};async function gc(r,e,t,n={}){let i=Mh(Hh,n),o=await Ie(r,i.path,t,n);if(Vh("chmod %c %d",o.cid,e),i.recursive){let y=await Be(async function*(){for await(let u of en(o.cid,t,n)){let d,m=[];if(u.type==="raw")d=new v({type:"file",data:u.node});else if(u.type==="file"||u.type==="directory")d=u.unixfs,m=u.node.Links;else throw new ve;d.mode=e;let x={Data:d.marshal(),Links:m};yield{path:u.path,content:x}}},u=>Re(u,t,{...i,dagBuilder:async function*(d,m){for await(let x of d)yield async function(){let g=x.content,w=T(g),b=await ke(w,m,{...i,cidVersion:r.version});if(g.Data==null)throw new Z(`${b} had no data`);let k=v.unmarshal(g.Data);return{cid:b,size:BigInt(w.length),path:x.path,unixfs:k}}}}),async u=>$e(u));if(y==null)throw new He(`Could not chmod ${o.cid.toString()}`);return Ft(y.cid,o,t,i)}let s=await t.get(o.cid,n),a,c=[];if(o.cid.code===ee)a=new v({type:"file",data:s});else{let y=O(s);if(y.Data==null)throw new Z(`${o.cid.toString()} had no data`);c=y.Links,a=v.unmarshal(y.Data)}a.mode=e;let h=T({Data:a.marshal(),Links:c}),f=await ne.digest(h),l=C.create(o.cid.version,V,f);return await t.put(l,h),Ft(l,o,t,i)}var jh=q.bind({ignoreUndefined:!0}),Gh=z("helia:unixfs:cp"),Wh={force:!1,shardSplitThresholdBytes:262144};async function wc(r,e,t,n,i={}){let o=jh(Wh,i);if(t.includes("/"))throw new j("Name must not have slashes");let[s,a]=await Promise.all([je(e,n,o),Lt(r,t,n,o)]);return Gh('Adding %c as "%s" to %c',r,t,e),(await Dt(s,a,n,{allowOverwriting:o.force,cidVersion:e.version,...o})).cid}var Xh=q.bind({ignoreUndefined:!0}),qh={};async function*xc(r,e,t={}){let n=Xh(qh,t),i=await Ie(r,n.path,e,n),o=await Q(i.cid,e);if(o.type==="file"||o.type==="raw"){yield o;return}if(o.content==null)throw new Nt;if(o.type!=="directory")throw new Ae;yield*o.content({offset:t.offset,length:t.length})}var Kh=q.bind({ignoreUndefined:!0}),bc=z("helia:unixfs:mkdir"),Jh={cidVersion:1,force:!1,shardSplitThresholdBytes:262144};async function _c(r,e,t,n={}){let i=Kh(Jh,n);if(e.includes("/"))throw new j("Path must not have slashes");if((await Q(r,t,n)).type!=="directory")throw new Ae(`${r.toString()} was not a UnixFS directory`);bc("creating %s",e);let a={Data:new v({type:"directory",mode:i.mode,mtime:i.mtime}).marshal(),Links:[]},c=T(a),h=await ne.digest(c),f=C.create(i.cidVersion,V,h);await t.put(f,c);let[l,y]=await Promise.all([je(r,t,i),Lt(f,e,t,i)]);return bc("adding empty dir called %s to %c",e,r),(await Dt(l,y,t,{...i,allowOverwriting:i.force})).cid}var wn=z("helia:unixfs:utils:remove-link");async function kc(r,e,t,n){if(r.node.Data==null)throw new Z("Parent node had no data");if(v.unmarshal(r.node.Data).type==="hamt-sharded-directory"){wn(`removing ${e} from sharded directory`);let o=await Qh(r,e,t,n);return await yn(o.node,t,n.shardSplitThresholdBytes,n)?o:(wn("converting shard to flat directory %c",r.cid),Zh(o,t,n))}return wn(`removing link ${e} regular directory`),Yh(r,e,t,n)}var Yh=async(r,e,t,n)=>{r.node.Links=r.node.Links.filter(s=>s.Name!==e);let i=T(r.node),o=await ke(i,t,{...n,cidVersion:r.cid.version});return wn(`Updated regular directory ${o}`),{node:r.node,cid:o}},Qh=async(r,e,t,n)=>{let{path:i}=await mn(r.cid,e,t,n),o=i[i.length-1];if(o==null)throw new Error("Invalid HAMT, could not generate path");let s=o.node.Links.filter(h=>(h.Name??"").substring(2)===e).map(h=>h.Name).pop();if(s==null)throw new Error("File not found");let a=s.substring(0,2),c=parseInt(a,16);if(o.node.Links=o.node.Links.filter(h=>h.Name!==s),o.children.unset(c),o.node.Links.length===1)for(;i.length!==1;){let h=i[i.length-1];if(h==null||h.node.Links.length>1)break;i.pop();let f=i[i.length-1];if(f==null)break;let l=h.node.Links[0];f.node.Links=f.node.Links.filter(y=>!(y.Name??"").startsWith(f.prefix)),f.node.Links.push({Hash:l.Hash,Name:`${f.prefix}${(l.Name??"").substring(2)}`,Tsize:l.Tsize})}return pn(i,t,n)},Zh=async(r,e,t)=>{if(r.node.Data==null)throw new j("Invalid parent passed to convertToFlatDirectory");let n={Links:[]},i=await Q(r.cid,e);if(i.type!=="directory")throw new Error("Unexpected node type");for await(let c of i.content()){let h=0;c.node instanceof Uint8Array?h=c.node.byteLength:h=T(c.node).length,n.Links.push({Hash:c.cid,Name:c.name,Tsize:h})}let o=v.unmarshal(r.node.Data);n.Data=new v({type:"directory",mode:o.mode,mtime:o.mtime}).marshal();let s=T(P(n));return{cid:await ke(s,e,{codec:$,cidVersion:r.cid.version,signal:t.signal}),node:n}};var ed=q.bind({ignoreUndefined:!0}),td=z("helia:unixfs:rm"),rd={shardSplitThresholdBytes:262144};async function Ec(r,e,t,n={}){let i=ed(rd,n);if(e.includes("/"))throw new j("Name must not have slashes");let o=await je(r,t,i);return td("Removing %s from %c",e,r),(await kc(o,e,t,{...i,cidVersion:r.version})).cid}var nd=q.bind({ignoreUndefined:!0}),id=z("helia:unixfs:stat"),od={};async function Sc(r,e,t={}){let n=nd(od,t),i=await Ie(r,t.path,e,n);id("stat %c",i.cid);let o=await Q(i.cid,e,n);if(o.type!=="file"&&o.type!=="directory"&&o.type!=="raw")throw new ve;let s=0n,a=0n,c=0n,h=0n,f=0,l,y,u=o.type,d;if(o.type==="raw"&&(s=BigInt(o.node.byteLength),a=BigInt(o.node.byteLength),c=BigInt(o.node.byteLength),h=BigInt(o.node.byteLength),f=1),o.type==="directory"&&(s=0n,a=BigInt(o.unixfs.marshal().byteLength),c=0n,h=a,f=1,l=o.unixfs.mode,y=o.unixfs.mtime,d=o.unixfs),o.type==="file"){let m=await Bc(i.cid,e,n);s=o.unixfs.fileSize(),a=BigInt((o.node.Data?.byteLength??0)+o.node.Links.reduce((x,g)=>x+(g.Tsize??0),0)),c=BigInt(m.localFileSize),h=BigInt(m.localDagSize),f=m.blocks,l=o.unixfs.mode,y=o.unixfs.mtime,d=o.unixfs}return{cid:i.cid,mode:l,mtime:y,fileSize:s,dagSize:a,localFileSize:c,localDagSize:h,blocks:f,type:u,unixfs:d}}async function Bc(r,e,t){let n={localFileSize:0,localDagSize:0,blocks:0};if(await e.has(r,t)){let i=await e.get(r,t);if(n.blocks++,n.localDagSize+=i.byteLength,r.code===ee)n.localFileSize+=i.byteLength;else if(r.code===V){let o=O(i);if(o.Links.length>0)for(let s of o.Links){let a=await Bc(s.Hash,e,t);n.localFileSize+=a.localFileSize,n.localDagSize+=a.localDagSize,n.blocks+=a.blocks}else{if(o.Data==null)throw new Z(`PBNode ${r.toString()} had no data`);let s=v.unmarshal(o.Data);if(s.data==null)throw new Z(`UnixFS node ${r.toString()} had no data`);n.localFileSize+=s.data.byteLength??0}}else throw new He(`${r.toString()} was neither DAG_PB nor RAW`)}return n}var sd=q.bind({ignoreUndefined:!0}),ad=z("helia:unixfs:touch"),cd={recursive:!1,shardSplitThresholdBytes:262144};async function vc(r,e,t={}){let n=sd(cd,t),i=await Ie(r,n.path,e,n),o=n.mtime??{secs:BigInt(Math.round(Date.now()/1e3)),nsecs:0};if(ad("touch %c %o",i.cid,o),n.recursive){let y=await Be(async function*(){for await(let u of en(i.cid,e)){let d,m;if(u.type==="raw")d=new v({data:u.node}),m=[];else if(u.type==="file"||u.type==="directory")d=u.unixfs,m=u.node.Links;else throw new ve;d.mtime=o;let x={Data:d.marshal(),Links:m};yield{path:u.path,content:x}}},u=>Re(u,e,{...n,dagBuilder:async function*(d,m){for await(let x of d)yield async function(){let g=x.content,w=T(g),b=await ke(w,m,{...n,cidVersion:r.version});if(g.Data==null)throw new Z(`${b} had no data`);let k=v.unmarshal(g.Data);return{cid:b,size:BigInt(w.length),path:x.path,unixfs:k}}}}),async u=>$e(u));if(y==null)throw new He(`Could not chmod ${i.cid.toString()}`);return Ft(y.cid,i,e,n)}let s=await e.get(i.cid,t),a,c=[];if(i.cid.code===ee)a=new v({data:s});else{let y=O(s);if(c=y.Links,y.Data==null)throw new Z(`${i.cid.toString()} had no data`);a=v.unmarshal(y.Data)}a.mtime=o;let h=T({Data:a.marshal(),Links:c}),f=await ne.digest(h),l=C.create(i.cid.version,V,f);return await e.put(l,h),Ft(l,i,e,n)}var xn=class{components;constructor(e){this.components=e}async*addAll(e,t={}){yield*ps(e,this.components.blockstore,t)}async addBytes(e,t={}){return ms(e,this.components.blockstore,t)}async addByteStream(e,t={}){return ys(e,this.components.blockstore,t)}async addFile(e,t={}){return gs(e,this.components.blockstore,t)}async addDirectory(e={},t={}){return ws(e,this.components.blockstore,t)}async*cat(e,t={}){yield*yc(e,this.components.blockstore,t)}async chmod(e,t,n={}){return gc(e,t,this.components.blockstore,n)}async cp(e,t,n,i={}){return wc(e,t,n,this.components.blockstore,i)}async*ls(e,t={}){yield*xc(e,this.components.blockstore,t)}async mkdir(e,t,n={}){return _c(e,t,this.components.blockstore,n)}async rm(e,t,n={}){return Ec(e,t,this.components.blockstore,n)}async stat(e,t={}){return Sc(e,this.components.blockstore,t)}async touch(e,t={}){return vc(e,this.components.blockstore,t)}};function Ac(r){return new xn(r)}function Cc(r,e="utf8"){let t=Er[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return t.encoder.encode(r).substring(1)}var Fe="/",Ic=new TextEncoder().encode(Fe),bn=Ic[0],hr=class r{_buf;constructor(e,t){if(typeof e=="string")this._buf=he(e);else if(e instanceof Uint8Array)this._buf=e;else throw new Error("Invalid key, should be String of Uint8Array");if(t==null&&(t=!0),t&&this.clean(),this._buf.byteLength===0||this._buf[0]!==bn)throw new Error("Invalid key")}toString(e="utf8"){return Cc(this._buf,e)}uint8Array(){return this._buf}get[Symbol.toStringTag](){return`Key(${this.toString()})`}static withNamespaces(e){return new r(e.join(Fe))}static random(){return new r(Math.random().toString().substring(2))}static asKey(e){return e instanceof Uint8Array||typeof e=="string"?new r(e):typeof e.uint8Array=="function"?new r(e.uint8Array()):null}clean(){if((this._buf==null||this._buf.byteLength===0)&&(this._buf=Ic),this._buf[0]!==bn){let e=new Uint8Array(this._buf.byteLength+1);e.fill(bn,0,1),e.set(this._buf,1),this._buf=e}for(;this._buf.byteLength>1&&this._buf[this._buf.byteLength-1]===bn;)this._buf=this._buf.subarray(0,-1)}less(e){let t=this.list(),n=e.list();for(let i=0;i<t.length;i++){if(n.length<i+1)return!1;let o=t[i],s=n[i];if(o<s)return!0;if(o>s)return!1}return t.length<n.length}reverse(){return r.withNamespaces(this.list().slice().reverse())}namespaces(){return this.list()}baseNamespace(){let e=this.namespaces();return e[e.length-1]}list(){return this.toString().split(Fe).slice(1)}type(){return ud(this.baseNamespace())}name(){return fd(this.baseNamespace())}instance(e){return new r(this.toString()+":"+e)}path(){let e=this.parent().toString();return e.endsWith(Fe)||(e+=Fe),e+=this.type(),new r(e)}parent(){let e=this.list();return e.length===1?new r(Fe):new r(e.slice(0,-1).join(Fe))}child(e){return this.toString()===Fe?e:e.toString()===Fe?this:new r(this.toString()+e.toString(),!1)}isAncestorOf(e){return e.toString()===this.toString()?!1:e.toString().startsWith(this.toString())}isDecendantOf(e){return e.toString()===this.toString()?!1:this.toString().startsWith(e.toString())}isTopLevel(){return this.list().length===1}concat(...e){return r.withNamespaces([...this.namespaces(),...ld(e.map(t=>t.namespaces()))])}};function ud(r){let e=r.split(":");return e.length<2?"":e.slice(0,-1).join(":")}function fd(r){let e=r.split(":");return e[e.length-1]}function ld(r){return[].concat(...r)}function _n(r){return r.split("/").pop()??""}var hd=z("helia:mfs"),Mi=class{components;unixfs;root;key;constructor(e,t={}){this.components=e,this.key=new hr(t.key??"/locals/filesroot"),this.unixfs=Ac(e)}async#e(){if(this.root==null)try{let e=await this.components.datastore.get(this.key);this.root=C.decode(e)}catch(e){if(e.code!=="ERR_NOT_FOUND")throw e;this.root=await this.unixfs.addDirectory()}return this.root}async writeBytes(e,t,n){let i=await this.unixfs.addFile({content:e,mode:n?.mode,mtime:n?.mtime},n);await this.cp(i,t,n)}async writeByteStream(e,t,n){let i=await this.unixfs.addFile({content:e,mode:n?.mode,mtime:n?.mtime},n);await this.cp(i,t,n)}async*cat(e,t={}){let n=await this.#e(),i=await this.#r(n,e,{...t,createMissingDirectories:!1,finalSegmentMustBeDirectory:!1});yield*this.unixfs.cat(i[i.length-1].cid,t)}async chmod(e,t,n={}){let i=await this.#e();this.root=await this.unixfs.chmod(i,t,{...n,path:e})}async cp(e,t,n){let i=await this.#e(),o=n?.force??!1;typeof e=="string"&&(e=(await this.stat(e,n)).cid),o||await this.#s(t,n);let s=_n(t),a=t.substring(0,t.length-`/${s}`.length),c=[{cid:i,name:""}];a!==""&&(c=await this.#r(i,a,{...n,createMissingDirectories:n?.force??!1,finalSegmentMustBeDirectory:!0})),c.push({cid:e,name:s}),this.root=await this.#n(c,n)}async*ls(e,t){let n=await this.#e();t?.path!=null&&(e=`${e}/${t.path}`),yield*this.unixfs.ls(n,{...t,path:e})}async mkdir(e,t){let n=t?.force??!1;n||await this.#s(e,t);let i=_n(e),o=e.substring(0,e.length-`/${i}`.length),s=await this.#e(),a=[{cid:s,name:""}];o!==""&&(a=await this.#r(s,o,{...t,createMissingDirectories:n,finalSegmentMustBeDirectory:!0})),a.push({cid:await this.unixfs.addDirectory({mode:t?.mode,mtime:t?.mtime},t),name:_n(e)}),this.root=await this.#n(a,t)}async rm(e,t){(t?.force??!1)||await this.#u(e,t);let i=await this.#e(),o=await this.#r(i,e,{...t,createMissingDirectories:!1,finalSegmentMustBeDirectory:!1}),s=o.pop();if(s==null)throw new j("path was too short");let a=o[o.length-1];a.cid=await this.unixfs.rm(a.cid,s.name,t),this.root=await this.#n(o,t)}async stat(e,t){let n=await this.#e(),o=(await this.#r(n,e,{...t,createMissingDirectories:!1,finalSegmentMustBeDirectory:!1})).pop();if(o==null)throw new Le;return this.unixfs.stat(o.cid,{...t})}async touch(e,t){let n=await this.#e(),i=await this.#r(n,e,{...t,createMissingDirectories:!1,finalSegmentMustBeDirectory:!1}),o=i[i.length-1];if(o==null)throw new Le;o.cid=await this.unixfs.touch(o.cid,t),this.root=await this.#n(i,t)}async#r(e,t,n){if(!t.startsWith("/"))throw new j("path must be absolute");let i=await this.unixfs.stat(e,{...n,offline:!0}),o=[{cid:e,name:"",unixfs:i.unixfs}],s=e,a=t.split("/").filter(Boolean);for(let h=0;h<a.length;h++){let f=a[h];try{let l=await this.unixfs.stat(s,{...n,offline:!0,path:f});o.push({cid:l.cid,name:f,unixfs:l.unixfs}),s=l.cid}catch{if(hd.error("could not resolve path segment %s of %s under %c",f,t,e),n.createMissingDirectories){let y=await this.unixfs.addDirectory();o.push({cid:y,name:f,unixfs:new v({type:"directory"})})}else throw new Le(`${t} does not exist`)}}let c=o[o.length-1];if(n.finalSegmentMustBeDirectory&&c.unixfs?.isDirectory()!==!0)throw new Ae(`${t} was not a directory`);return o}async#n(e,t={}){let n=e.pop();if(n==null)throw new j("path was too short");let i=n.cid;for(let o=e.length-1;o>-1;o--){let s=e[o];s.cid=await this.unixfs.cp(n.cid,s.cid,n.name,{...t,force:!0}),n=s,i=s.cid}return await this.components.datastore.put(this.key,i.bytes,t),i}async#u(e,t={}){if(!await this.#c(e,t))throw new Le}async#s(e,t={}){if(await this.#c(e,t))throw new nt}async#c(e,t={}){try{return await this.stat(e,{...t,offline:!0}),!0}catch{return!1}}};function dd(r,e={}){return new Mi(r,e)}return Pc(pd);})();
2
+ "use strict";var HeliaMfs=(()=>{var Bc=Object.create;var wr=Object.defineProperty;var vc=Object.getOwnPropertyDescriptor;var Ac=Object.getOwnPropertyNames;var Ic=Object.getPrototypeOf,Cc=Object.prototype.hasOwnProperty;var ot=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),G=(r,e)=>{for(var t in e)wr(r,t,{get:e[t],enumerable:!0})},Vi=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Ac(e))!Cc.call(r,i)&&i!==t&&wr(r,i,{get:()=>e[i],enumerable:!(n=vc(e,i))||n.enumerable});return r};var st=(r,e,t)=>(t=r!=null?Bc(Ic(r)):{},Vi(e||!r||!r.__esModule?wr(t,"default",{value:r,enumerable:!0}):t,r)),Nc=r=>Vi(wr({},"__esModule",{value:!0}),r);var Xo=ot((rr,Cr)=>{(function(r,e){"use strict";var t={version:"3.0.0",x86:{},x64:{},inputValidation:!0};function n(u){if(!Array.isArray(u)&&!ArrayBuffer.isView(u))return!1;for(var d=0;d<u.length;d++)if(!Number.isInteger(u[d])||u[d]<0||u[d]>255)return!1;return!0}function i(u,d){return(u&65535)*d+(((u>>>16)*d&65535)<<16)}function o(u,d){return u<<d|u>>>32-d}function s(u){return u^=u>>>16,u=i(u,2246822507),u^=u>>>13,u=i(u,3266489909),u^=u>>>16,u}function a(u,d){u=[u[0]>>>16,u[0]&65535,u[1]>>>16,u[1]&65535],d=[d[0]>>>16,d[0]&65535,d[1]>>>16,d[1]&65535];var m=[0,0,0,0];return m[3]+=u[3]+d[3],m[2]+=m[3]>>>16,m[3]&=65535,m[2]+=u[2]+d[2],m[1]+=m[2]>>>16,m[2]&=65535,m[1]+=u[1]+d[1],m[0]+=m[1]>>>16,m[1]&=65535,m[0]+=u[0]+d[0],m[0]&=65535,[m[0]<<16|m[1],m[2]<<16|m[3]]}function c(u,d){u=[u[0]>>>16,u[0]&65535,u[1]>>>16,u[1]&65535],d=[d[0]>>>16,d[0]&65535,d[1]>>>16,d[1]&65535];var m=[0,0,0,0];return m[3]+=u[3]*d[3],m[2]+=m[3]>>>16,m[3]&=65535,m[2]+=u[2]*d[3],m[1]+=m[2]>>>16,m[2]&=65535,m[2]+=u[3]*d[2],m[1]+=m[2]>>>16,m[2]&=65535,m[1]+=u[1]*d[3],m[0]+=m[1]>>>16,m[1]&=65535,m[1]+=u[2]*d[2],m[0]+=m[1]>>>16,m[1]&=65535,m[1]+=u[3]*d[1],m[0]+=m[1]>>>16,m[1]&=65535,m[0]+=u[0]*d[3]+u[1]*d[2]+u[2]*d[1]+u[3]*d[0],m[0]&=65535,[m[0]<<16|m[1],m[2]<<16|m[3]]}function h(u,d){return d%=64,d===32?[u[1],u[0]]:d<32?[u[0]<<d|u[1]>>>32-d,u[1]<<d|u[0]>>>32-d]:(d-=32,[u[1]<<d|u[0]>>>32-d,u[0]<<d|u[1]>>>32-d])}function f(u,d){return d%=64,d===0?u:d<32?[u[0]<<d|u[1]>>>32-d,u[1]<<d]:[u[1]<<d-32,0]}function l(u,d){return[u[0]^d[0],u[1]^d[1]]}function y(u){return u=l(u,[0,u[0]>>>1]),u=c(u,[4283543511,3981806797]),u=l(u,[0,u[0]>>>1]),u=c(u,[3301882366,444984403]),u=l(u,[0,u[0]>>>1]),u}t.x86.hash32=function(u,d){if(t.inputValidation&&!n(u))return e;d=d||0;for(var m=u.length%4,x=u.length-m,g=d,w=0,b=3432918353,_=461845907,A=0;A<x;A=A+4)w=u[A]|u[A+1]<<8|u[A+2]<<16|u[A+3]<<24,w=i(w,b),w=o(w,15),w=i(w,_),g^=w,g=o(g,13),g=i(g,5)+3864292196;switch(w=0,m){case 3:w^=u[A+2]<<16;case 2:w^=u[A+1]<<8;case 1:w^=u[A],w=i(w,b),w=o(w,15),w=i(w,_),g^=w}return g^=u.length,g=s(g),g>>>0},t.x86.hash128=function(u,d){if(t.inputValidation&&!n(u))return e;d=d||0;for(var m=u.length%16,x=u.length-m,g=d,w=d,b=d,_=d,A=0,C=0,E=0,D=0,me=597399067,mr=2869860233,yr=951274213,gr=2716044179,N=0;N<x;N=N+16)A=u[N]|u[N+1]<<8|u[N+2]<<16|u[N+3]<<24,C=u[N+4]|u[N+5]<<8|u[N+6]<<16|u[N+7]<<24,E=u[N+8]|u[N+9]<<8|u[N+10]<<16|u[N+11]<<24,D=u[N+12]|u[N+13]<<8|u[N+14]<<16|u[N+15]<<24,A=i(A,me),A=o(A,15),A=i(A,mr),g^=A,g=o(g,19),g+=w,g=i(g,5)+1444728091,C=i(C,mr),C=o(C,16),C=i(C,yr),w^=C,w=o(w,17),w+=b,w=i(w,5)+197830471,E=i(E,yr),E=o(E,17),E=i(E,gr),b^=E,b=o(b,15),b+=_,b=i(b,5)+2530024501,D=i(D,gr),D=o(D,18),D=i(D,me),_^=D,_=o(_,13),_+=g,_=i(_,5)+850148119;switch(A=0,C=0,E=0,D=0,m){case 15:D^=u[N+14]<<16;case 14:D^=u[N+13]<<8;case 13:D^=u[N+12],D=i(D,gr),D=o(D,18),D=i(D,me),_^=D;case 12:E^=u[N+11]<<24;case 11:E^=u[N+10]<<16;case 10:E^=u[N+9]<<8;case 9:E^=u[N+8],E=i(E,yr),E=o(E,17),E=i(E,gr),b^=E;case 8:C^=u[N+7]<<24;case 7:C^=u[N+6]<<16;case 6:C^=u[N+5]<<8;case 5:C^=u[N+4],C=i(C,mr),C=o(C,16),C=i(C,yr),w^=C;case 4:A^=u[N+3]<<24;case 3:A^=u[N+2]<<16;case 2:A^=u[N+1]<<8;case 1:A^=u[N],A=i(A,me),A=o(A,15),A=i(A,mr),g^=A}return g^=u.length,w^=u.length,b^=u.length,_^=u.length,g+=w,g+=b,g+=_,w+=g,b+=g,_+=g,g=s(g),w=s(w),b=s(b),_=s(_),g+=w,g+=b,g+=_,w+=g,b+=g,_+=g,("00000000"+(g>>>0).toString(16)).slice(-8)+("00000000"+(w>>>0).toString(16)).slice(-8)+("00000000"+(b>>>0).toString(16)).slice(-8)+("00000000"+(_>>>0).toString(16)).slice(-8)},t.x64.hash128=function(u,d){if(t.inputValidation&&!n(u))return e;d=d||0;for(var m=u.length%16,x=u.length-m,g=[0,d],w=[0,d],b=[0,0],_=[0,0],A=[2277735313,289559509],C=[1291169091,658871167],E=0;E<x;E=E+16)b=[u[E+4]|u[E+5]<<8|u[E+6]<<16|u[E+7]<<24,u[E]|u[E+1]<<8|u[E+2]<<16|u[E+3]<<24],_=[u[E+12]|u[E+13]<<8|u[E+14]<<16|u[E+15]<<24,u[E+8]|u[E+9]<<8|u[E+10]<<16|u[E+11]<<24],b=c(b,A),b=h(b,31),b=c(b,C),g=l(g,b),g=h(g,27),g=a(g,w),g=a(c(g,[0,5]),[0,1390208809]),_=c(_,C),_=h(_,33),_=c(_,A),w=l(w,_),w=h(w,31),w=a(w,g),w=a(c(w,[0,5]),[0,944331445]);switch(b=[0,0],_=[0,0],m){case 15:_=l(_,f([0,u[E+14]],48));case 14:_=l(_,f([0,u[E+13]],40));case 13:_=l(_,f([0,u[E+12]],32));case 12:_=l(_,f([0,u[E+11]],24));case 11:_=l(_,f([0,u[E+10]],16));case 10:_=l(_,f([0,u[E+9]],8));case 9:_=l(_,[0,u[E+8]]),_=c(_,C),_=h(_,33),_=c(_,A),w=l(w,_);case 8:b=l(b,f([0,u[E+7]],56));case 7:b=l(b,f([0,u[E+6]],48));case 6:b=l(b,f([0,u[E+5]],40));case 5:b=l(b,f([0,u[E+4]],32));case 4:b=l(b,f([0,u[E+3]],24));case 3:b=l(b,f([0,u[E+2]],16));case 2:b=l(b,f([0,u[E+1]],8));case 1:b=l(b,[0,u[E]]),b=c(b,A),b=h(b,31),b=c(b,C),g=l(g,b)}return g=l(g,[0,u.length]),w=l(w,[0,u.length]),g=a(g,w),w=a(w,g),g=y(g),w=y(w),g=a(g,w),w=a(w,g),("00000000"+(g[0]>>>0).toString(16)).slice(-8)+("00000000"+(g[1]>>>0).toString(16)).slice(-8)+("00000000"+(w[0]>>>0).toString(16)).slice(-8)+("00000000"+(w[1]>>>0).toString(16)).slice(-8)},typeof rr<"u"?(typeof Cr<"u"&&Cr.exports&&(rr=Cr.exports=t),rr.murmurHash3=t):typeof define=="function"&&define.amd?define([],function(){return t}):(t._murmurHash3=r.murmurHash3,t.noConflict=function(){return r.murmurHash3=t._murmurHash3,t._murmurHash3=e,t.noConflict=e,t},r.murmurHash3=t)})(rr)});var Yo=ot((Xm,Jo)=>{Jo.exports=Xo()});var Tr=ot((r0,Zo)=>{"use strict";Zo.exports=class{constructor(){this._bitArrays=[],this._data=[],this._length=0,this._changedLength=!1,this._changedData=!1}set(e,t){let n=this._internalPositionFor(e,!1);if(t===void 0)n!==-1&&(this._unsetInternalPos(n),this._unsetBit(e),this._changedLength=!0,this._changedData=!0);else{let i=!1;n===-1?(n=this._data.length,this._setBit(e),this._changedData=!0):i=!0,this._setInternalPos(n,e,t,i),this._changedLength=!0}}unset(e){this.set(e,void 0)}get(e){this._sortData();let t=this._internalPositionFor(e,!0);if(t!==-1)return this._data[t][1]}push(e){return this.set(this.length,e),this.length}get length(){if(this._sortData(),this._changedLength){let e=this._data[this._data.length-1];this._length=e?e[0]+1:0,this._changedLength=!1}return this._length}forEach(e){let t=0;for(;t<this.length;)e(this.get(t),t,this),t++}map(e){let t=0,n=new Array(this.length);for(;t<this.length;)n[t]=e(this.get(t),t,this),t++;return n}reduce(e,t){let n=0,i=t;for(;n<this.length;){let o=this.get(n);i=e(i,o,n),n++}return i}find(e){let t=0,n,i;for(;t<this.length&&!n;)i=this.get(t),n=e(i),t++;return n?i:void 0}_internalPositionFor(e,t){let n=this._bytePosFor(e,t);if(n>=this._bitArrays.length)return-1;let i=this._bitArrays[n],o=e-n*7;if(!((i&1<<o)>0))return-1;let a=this._bitArrays.slice(0,n).reduce(Bf,0),c=~(4294967295<<o+1),h=Qo(i&c);return a+h-1}_bytePosFor(e,t){let n=Math.floor(e/7),i=n+1;for(;!t&&this._bitArrays.length<i;)this._bitArrays.push(0);return n}_setBit(e){let t=this._bytePosFor(e,!1);this._bitArrays[t]|=1<<e-t*7}_unsetBit(e){let t=this._bytePosFor(e,!1);this._bitArrays[t]&=~(1<<e-t*7)}_setInternalPos(e,t,n,i){let o=this._data,s=[t,n];if(i)this._sortData(),o[e]=s;else{if(o.length)if(o[o.length-1][0]>=t)o.push(s);else if(o[0][0]<=t)o.unshift(s);else{let a=Math.round(o.length/2);this._data=o.slice(0,a).concat(s).concat(o.slice(a))}else this._data.push(s);this._changedData=!0,this._changedLength=!0}}_unsetInternalPos(e){this._data.splice(e,1)}_sortData(){this._changedData&&this._data.sort(vf),this._changedData=!1}bitField(){let e=[],t=8,n=0,i=0,o,s=this._bitArrays.slice();for(;s.length||n;){n===0&&(o=s.shift(),n=7);let c=Math.min(n,t),h=~(255<<c),f=o&h;i|=f<<8-t,o=o>>>c,n-=c,t-=c,(!t||!n&&!s.length)&&(e.push(i),i=0,t=8)}for(var a=e.length-1;a>0&&e[a]===0;a--)e.pop();return e}compactArray(){return this._sortData(),this._data.map(Af)}};function Bf(r,e){return r+Qo(e)}function Qo(r){let e=r;return e=e-(e>>1&1431655765),e=(e&858993459)+(e>>2&858993459),(e+(e>>4)&252645135)*16843009>>24}function vf(r,e){return r[0]-e[0]}function Af(r){return r[1]}});var Ra=ot((dw,Ci)=>{"use strict";var Wl=Object.prototype.hasOwnProperty,J="~";function ur(){}Object.create&&(ur.prototype=Object.create(null),new ur().__proto__||(J=!1));function ql(r,e,t){this.fn=r,this.context=e,this.once=t||!1}function Ma(r,e,t,n,i){if(typeof t!="function")throw new TypeError("The listener must be a function");var o=new ql(t,n||r,i),s=J?J+e:e;return r._events[s]?r._events[s].fn?r._events[s]=[r._events[s],o]:r._events[s].push(o):(r._events[s]=o,r._eventsCount++),r}function on(r,e){--r._eventsCount===0?r._events=new ur:delete r._events[e]}function q(){this._events=new ur,this._eventsCount=0}q.prototype.eventNames=function(){var e=[],t,n;if(this._eventsCount===0)return e;for(n in t=this._events)Wl.call(t,n)&&e.push(J?n.slice(1):n);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e};q.prototype.listeners=function(e){var t=J?J+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var i=0,o=n.length,s=new Array(o);i<o;i++)s[i]=n[i].fn;return s};q.prototype.listenerCount=function(e){var t=J?J+e:e,n=this._events[t];return n?n.fn?1:n.length:0};q.prototype.emit=function(e,t,n,i,o,s){var a=J?J+e:e;if(!this._events[a])return!1;var c=this._events[a],h=arguments.length,f,l;if(c.fn){switch(c.once&&this.removeListener(e,c.fn,void 0,!0),h){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,t),!0;case 3:return c.fn.call(c.context,t,n),!0;case 4:return c.fn.call(c.context,t,n,i),!0;case 5:return c.fn.call(c.context,t,n,i,o),!0;case 6:return c.fn.call(c.context,t,n,i,o,s),!0}for(l=1,f=new Array(h-1);l<h;l++)f[l-1]=arguments[l];c.fn.apply(c.context,f)}else{var y=c.length,u;for(l=0;l<y;l++)switch(c[l].once&&this.removeListener(e,c[l].fn,void 0,!0),h){case 1:c[l].fn.call(c[l].context);break;case 2:c[l].fn.call(c[l].context,t);break;case 3:c[l].fn.call(c[l].context,t,n);break;case 4:c[l].fn.call(c[l].context,t,n,i);break;default:if(!f)for(u=1,f=new Array(h-1);u<h;u++)f[u-1]=arguments[u];c[l].fn.apply(c[l].context,f)}}return!0};q.prototype.on=function(e,t,n){return Ma(this,e,t,n,!1)};q.prototype.once=function(e,t,n){return Ma(this,e,t,n,!0)};q.prototype.removeListener=function(e,t,n,i){var o=J?J+e:e;if(!this._events[o])return this;if(!t)return on(this,o),this;var s=this._events[o];if(s.fn)s.fn===t&&(!i||s.once)&&(!n||s.context===n)&&on(this,o);else{for(var a=0,c=[],h=s.length;a<h;a++)(s[a].fn!==t||i&&!s[a].once||n&&s[a].context!==n)&&c.push(s[a]);c.length?this._events[o]=c.length===1?c[0]:c:on(this,o)}return this};q.prototype.removeAllListeners=function(e){var t;return e?(t=J?J+e:e,this._events[t]&&on(this,t)):(this._events=new ur,this._eventsCount=0),this};q.prototype.off=q.prototype.removeListener;q.prototype.addListener=q.prototype.on;q.prefixed=J;q.EventEmitter=q;typeof Ci<"u"&&(Ci.exports=q)});var Ya=ot((lx,Ja)=>{"use strict";Ja.exports=r=>{if(Object.prototype.toString.call(r)!=="[object Object]")return!1;let e=Object.getPrototypeOf(r);return e===null||e===Object.prototype}});var nc=ot((tc,rc)=>{"use strict";var an=Ya(),{hasOwnProperty:Za}=Object.prototype,{propertyIsEnumerable:rh}=Object,Nt=(r,e,t)=>Object.defineProperty(r,e,{value:t,writable:!0,enumerable:!0,configurable:!0}),nh=tc,Qa={concatArrays:!1,ignoreUndefined:!1},cn=r=>{let e=[];for(let t in r)Za.call(r,t)&&e.push(t);if(Object.getOwnPropertySymbols){let t=Object.getOwnPropertySymbols(r);for(let n of t)rh.call(r,n)&&e.push(n)}return e};function Tt(r){return Array.isArray(r)?ih(r):an(r)?oh(r):r}function ih(r){let e=r.slice(0,0);return cn(r).forEach(t=>{Nt(e,t,Tt(r[t]))}),e}function oh(r){let e=Object.getPrototypeOf(r)===null?Object.create(null):{};return cn(r).forEach(t=>{Nt(e,t,Tt(r[t]))}),e}var ec=(r,e,t,n)=>(t.forEach(i=>{typeof e[i]>"u"&&n.ignoreUndefined||(i in r&&r[i]!==Object.getPrototypeOf(r)?Nt(r,i,Ui(r[i],e[i],n)):Nt(r,i,Tt(e[i])))}),r),sh=(r,e,t)=>{let n=r.slice(0,0),i=0;return[r,e].forEach(o=>{let s=[];for(let a=0;a<o.length;a++)Za.call(o,a)&&(s.push(String(a)),o===r?Nt(n,i++,o[a]):Nt(n,i++,Tt(o[a])));n=ec(n,o,cn(o).filter(a=>!s.includes(a)),t)}),n};function Ui(r,e,t){return t.concatArrays&&Array.isArray(r)&&Array.isArray(e)?sh(r,e,t):!an(e)||!an(r)?Tt(e):ec(r,e,cn(e),t)}rc.exports=function(...r){let e=Ui(Tt(Qa),this!==nh&&this||{},Qa),t={_:{}};for(let n of r)if(n!==void 0){if(!an(n))throw new TypeError("`"+n+"` is not an Option Object");t=Ui(t,{_:n},e)}return t._}});var ad={};G(ad,{mfs:()=>sd});function Tc(r){return r[Symbol.asyncIterator]!=null}function Dc(r){if(Tc(r))return(async()=>{for await(let e of r)return e})();for(let e of r)return e}var An=Dc;function Lc(r){return r[Symbol.asyncIterator]!=null}function Pc(r,e=1){return e=Number(e),Lc(r)?async function*(){let t=[];if(e<1&&(e=1),e!==Math.round(e))throw new Error("Batch size must be an integer");for await(let n of r)for(t.push(n);t.length>=e;)yield t.slice(0,e),t=t.slice(e);for(;t.length>0;)yield t.slice(0,e),t=t.slice(e)}():function*(){let t=[];if(e<1&&(e=1),e!==Math.round(e))throw new Error("Batch size must be an integer");for(let n of r)for(t.push(n);t.length>=e;)yield t.slice(0,e),t=t.slice(e);for(;t.length>0;)yield t.slice(0,e),t=t.slice(e)}()}var xr=Pc;async function*zt(r,e=1){for await(let t of xr(r,e)){let n=t.map(async i=>i().then(o=>({ok:!0,value:o}),o=>({ok:!1,err:o})));for(let i=0;i<n.length;i++){let o=await n[i];if(o.ok)yield o.value;else throw o.err}}}function Ne(r=0){return new Uint8Array(r)}function ee(r=0){return new Uint8Array(r)}function We(r,e){e==null&&(e=r.reduce((i,o)=>i+o.length,0));let t=ee(e),n=0;for(let i of r)t.set(i,n),n+=i.length;return t}function ji(r,e){if(r===e)return!0;if(r.byteLength!==e.byteLength)return!1;for(let t=0;t<r.byteLength;t++)if(r[t]!==e[t])return!1;return!0}var Wi=Symbol.for("@achingbrain/uint8arraylist");function Gi(r,e){if(e==null||e<0)throw new RangeError("index is out of bounds");let t=0;for(let n of r){let i=t+n.byteLength;if(e<i)return{buf:n,index:e-t};t=i}throw new RangeError("index is out of bounds")}function br(r){return!!r?.[Wi]}var at=class r{bufs;length;[Wi]=!0;constructor(...e){this.bufs=[],this.length=0,e.length>0&&this.appendAll(e)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...e){this.appendAll(e)}appendAll(e){let t=0;for(let n of e)if(n instanceof Uint8Array)t+=n.byteLength,this.bufs.push(n);else if(br(n))t+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=t}prepend(...e){this.prependAll(e)}prependAll(e){let t=0;for(let n of e.reverse())if(n instanceof Uint8Array)t+=n.byteLength,this.bufs.unshift(n);else if(br(n))t+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=t}get(e){let t=Gi(this.bufs,e);return t.buf[t.index]}set(e,t){let n=Gi(this.bufs,e);n.buf[n.index]=t}write(e,t=0){if(e instanceof Uint8Array)for(let n=0;n<e.length;n++)this.set(t+n,e[n]);else if(br(e))for(let n=0;n<e.length;n++)this.set(t+n,e.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(e){if(e=Math.trunc(e),!(Number.isNaN(e)||e<=0)){if(e===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(e>=this.bufs[0].byteLength)e-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(e),this.length-=e;break}}}slice(e,t){let{bufs:n,length:i}=this._subList(e,t);return We(n,i)}subarray(e,t){let{bufs:n,length:i}=this._subList(e,t);return n.length===1?n[0]:We(n,i)}sublist(e,t){let{bufs:n,length:i}=this._subList(e,t),o=new r;return o.length=i,o.bufs=[...n],o}_subList(e,t){if(e=e??0,t=t??this.length,e<0&&(e=this.length+e),t<0&&(t=this.length+t),e<0||t>this.length)throw new RangeError("index is out of bounds");if(e===t)return{bufs:[],length:0};if(e===0&&t===this.length)return{bufs:this.bufs,length:this.length};let n=[],i=0;for(let o=0;o<this.bufs.length;o++){let s=this.bufs[o],a=i,c=a+s.byteLength;if(i=c,e>=c)continue;let h=e>=a&&e<c,f=t>a&&t<=c;if(h&&f){if(e===a&&t===c){n.push(s);break}let l=e-a;n.push(s.subarray(l,l+(t-e)));break}if(h){if(e===0){n.push(s);continue}n.push(s.subarray(e-a));continue}if(f){if(t===c){n.push(s);break}n.push(s.subarray(0,t-a));break}n.push(s)}return{bufs:n,length:t-e}}indexOf(e,t=0){if(!br(e)&&!(e instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=e instanceof Uint8Array?e:e.subarray();if(t=Number(t??0),isNaN(t)&&(t=0),t<0&&(t=this.length+t),t<0&&(t=0),e.length===0)return t>this.length?this.length:t;let i=n.byteLength;if(i===0)throw new TypeError("search must be at least 1 byte long");let o=256,s=new Int32Array(o);for(let l=0;l<o;l++)s[l]=-1;for(let l=0;l<i;l++)s[n[l]]=l;let a=s,c=this.byteLength-n.byteLength,h=n.byteLength-1,f;for(let l=t;l<=c;l+=f){f=0;for(let y=h;y>=0;y--){let u=this.get(l+y);if(n[y]!==u){f=Math.max(1,y-a[u]);break}}if(f===0)return l}return-1}getInt8(e){let t=this.subarray(e,e+1);return new DataView(t.buffer,t.byteOffset,t.byteLength).getInt8(0)}setInt8(e,t){let n=ee(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,t),this.write(n,e)}getInt16(e,t){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,t)}setInt16(e,t,n){let i=Ne(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt16(0,t,n),this.write(i,e)}getInt32(e,t){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,t)}setInt32(e,t,n){let i=Ne(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt32(0,t,n),this.write(i,e)}getBigInt64(e,t){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,t)}setBigInt64(e,t,n){let i=Ne(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigInt64(0,t,n),this.write(i,e)}getUint8(e){let t=this.subarray(e,e+1);return new DataView(t.buffer,t.byteOffset,t.byteLength).getUint8(0)}setUint8(e,t){let n=ee(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,t),this.write(n,e)}getUint16(e,t){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,t)}setUint16(e,t,n){let i=Ne(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint16(0,t,n),this.write(i,e)}getUint32(e,t){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,t)}setUint32(e,t,n){let i=Ne(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint32(0,t,n),this.write(i,e)}getBigUint64(e,t){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,t)}setBigUint64(e,t,n){let i=Ne(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigUint64(0,t,n),this.write(i,e)}getFloat32(e,t){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,t)}setFloat32(e,t,n){let i=Ne(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat32(0,t,n),this.write(i,e)}getFloat64(e,t){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,t)}setFloat64(e,t,n){let i=Ne(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat64(0,t,n),this.write(i,e)}equals(e){if(e==null||!(e instanceof r)||e.bufs.length!==this.bufs.length)return!1;for(let t=0;t<this.bufs.length;t++)if(!ji(this.bufs[t],e.bufs[t]))return!1;return!0}static fromUint8Arrays(e,t){let n=new r;return n.bufs=e,t==null&&(t=e.reduce((i,o)=>i+o.byteLength,0)),n.length=t,n}};var Fc=262144,Ot=(r={})=>{let e=r.chunkSize??Fc;return async function*(n){let i=new at,o=0,s=!1;for await(let a of n)for(i.append(a),o+=a.length;o>=e;)if(yield i.slice(0,e),s=!0,e===i.length)i=new at,o=0;else{let c=new at;c.append(i.sublist(e)),i=c,o-=e}(!s||o>0)&&(yield i.subarray(0,o))}};var $={};G($,{code:()=>H,createLink:()=>ho,createNode:()=>lo,decode:()=>O,encode:()=>T,name:()=>Lu,prepare:()=>F,validate:()=>Hn});var Fn={};G(Fn,{base32:()=>Ue,base32hex:()=>qc,base32hexpad:()=>Xc,base32hexpadupper:()=>Jc,base32hexupper:()=>Kc,base32pad:()=>Gc,base32padupper:()=>Wc,base32upper:()=>jc,base32z:()=>Yc});var ct={};G(ct,{coerce:()=>ue,empty:()=>qi,equals:()=>In,fromHex:()=>zc,fromString:()=>Cn,isBinary:()=>Oc,toHex:()=>Uc,toString:()=>Nn});var qi=new Uint8Array(0);function Uc(r){return r.reduce((e,t)=>e+t.toString(16).padStart(2,"0"),"")}function zc(r){let e=r.match(/../g);return e!=null?new Uint8Array(e.map(t=>parseInt(t,16))):qi}function In(r,e){if(r===e)return!0;if(r.byteLength!==e.byteLength)return!1;for(let t=0;t<r.byteLength;t++)if(r[t]!==e[t])return!1;return!0}function ue(r){if(r instanceof Uint8Array&&r.constructor.name==="Uint8Array")return r;if(r instanceof ArrayBuffer)return new Uint8Array(r);if(ArrayBuffer.isView(r))return new Uint8Array(r.buffer,r.byteOffset,r.byteLength);throw new Error("Unknown type, must be binary type")}function Oc(r){return r instanceof ArrayBuffer||ArrayBuffer.isView(r)}function Cn(r){return new TextEncoder().encode(r)}function Nn(r){return new TextDecoder().decode(r)}function $c(r,e){if(r.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),n=0;n<t.length;n++)t[n]=255;for(var i=0;i<r.length;i++){var o=r.charAt(i),s=o.charCodeAt(0);if(t[s]!==255)throw new TypeError(o+" is ambiguous");t[s]=i}var a=r.length,c=r.charAt(0),h=Math.log(a)/Math.log(256),f=Math.log(256)/Math.log(a);function l(d){if(d instanceof Uint8Array||(ArrayBuffer.isView(d)?d=new Uint8Array(d.buffer,d.byteOffset,d.byteLength):Array.isArray(d)&&(d=Uint8Array.from(d))),!(d instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(d.length===0)return"";for(var m=0,x=0,g=0,w=d.length;g!==w&&d[g]===0;)g++,m++;for(var b=(w-g)*f+1>>>0,_=new Uint8Array(b);g!==w;){for(var A=d[g],C=0,E=b-1;(A!==0||C<x)&&E!==-1;E--,C++)A+=256*_[E]>>>0,_[E]=A%a>>>0,A=A/a>>>0;if(A!==0)throw new Error("Non-zero carry");x=C,g++}for(var D=b-x;D!==b&&_[D]===0;)D++;for(var me=c.repeat(m);D<b;++D)me+=r.charAt(_[D]);return me}function y(d){if(typeof d!="string")throw new TypeError("Expected String");if(d.length===0)return new Uint8Array;var m=0;if(d[m]!==" "){for(var x=0,g=0;d[m]===c;)x++,m++;for(var w=(d.length-m)*h+1>>>0,b=new Uint8Array(w);d[m];){var _=t[d.charCodeAt(m)];if(_===255)return;for(var A=0,C=w-1;(_!==0||A<g)&&C!==-1;C--,A++)_+=a*b[C]>>>0,b[C]=_%256>>>0,_=_/256>>>0;if(_!==0)throw new Error("Non-zero carry");g=A,m++}if(d[m]!==" "){for(var E=w-g;E!==w&&b[E]===0;)E++;for(var D=new Uint8Array(x+(w-E)),me=x;E!==w;)D[me++]=b[E++];return D}}}function u(d){var m=y(d);if(m)return m;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:y,decode:u}}var Mc=$c,Rc=Mc,Ki=Rc;var Tn=class{name;prefix;baseEncode;constructor(e,t,n){this.name=e,this.prefix=t,this.baseEncode=n}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}},Dn=class{name;prefix;baseDecode;prefixCodePoint;constructor(e,t,n){if(this.name=e,this.prefix=t,t.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=t.codePointAt(0),this.baseDecode=n}decode(e){if(typeof e=="string"){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(e){return Xi(this,e)}},Ln=class{decoders;constructor(e){this.decoders=e}or(e){return Xi(this,e)}decode(e){let t=e[0],n=this.decoders[t];if(n!=null)return n.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}};function Xi(r,e){return new Ln({...r.decoders??{[r.prefix]:r},...e.decoders??{[e.prefix]:e}})}var Pn=class{name;prefix;baseEncode;baseDecode;encoder;decoder;constructor(e,t,n,i){this.name=e,this.prefix=t,this.baseEncode=n,this.baseDecode=i,this.encoder=new Tn(e,t,n),this.decoder=new Dn(e,t,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}};function ut({name:r,prefix:e,encode:t,decode:n}){return new Pn(r,e,t,n)}function Fe({name:r,prefix:e,alphabet:t}){let{encode:n,decode:i}=Ki(t,r);return ut({prefix:e,name:r,encode:n,decode:o=>ue(i(o))})}function Hc(r,e,t,n){let i={};for(let f=0;f<e.length;++f)i[e[f]]=f;let o=r.length;for(;r[o-1]==="=";)--o;let s=new Uint8Array(o*t/8|0),a=0,c=0,h=0;for(let f=0;f<o;++f){let l=i[r[f]];if(l===void 0)throw new SyntaxError(`Non-${n} character`);c=c<<t|l,a+=t,a>=8&&(a-=8,s[h++]=255&c>>a)}if(a>=t||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return s}function Vc(r,e,t){let n=e[e.length-1]==="=",i=(1<<t)-1,o="",s=0,a=0;for(let c=0;c<r.length;++c)for(a=a<<8|r[c],s+=8;s>t;)s-=t,o+=e[i&a>>s];if(s!==0&&(o+=e[i&a<<t-s]),n)for(;o.length*t&7;)o+="=";return o}function P({name:r,prefix:e,bitsPerChar:t,alphabet:n}){return ut({prefix:e,name:r,encode(i){return Vc(i,n,t)},decode(i){return Hc(i,n,t,r)}})}var Ue=P({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),jc=P({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),Gc=P({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),Wc=P({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),qc=P({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),Kc=P({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),Xc=P({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),Jc=P({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),Yc=P({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Un={};G(Un,{base36:()=>$t,base36upper:()=>Qc});var $t=Fe({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),Qc=Fe({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var zn={};G(zn,{base58btc:()=>fe,base58flickr:()=>Zc});var fe=Fe({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),Zc=Fe({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var eu=Qi,Ji=128,tu=127,ru=~tu,nu=Math.pow(2,31);function Qi(r,e,t){e=e||[],t=t||0;for(var n=t;r>=nu;)e[t++]=r&255|Ji,r/=128;for(;r&ru;)e[t++]=r&255|Ji,r>>>=7;return e[t]=r|0,Qi.bytes=t-n+1,e}var iu=On,ou=128,Yi=127;function On(r,n){var t=0,n=n||0,i=0,o=n,s,a=r.length;do{if(o>=a)throw On.bytes=0,new RangeError("Could not decode varint");s=r[o++],t+=i<28?(s&Yi)<<i:(s&Yi)*Math.pow(2,i),i+=7}while(s>=ou);return On.bytes=o-n,t}var su=Math.pow(2,7),au=Math.pow(2,14),cu=Math.pow(2,21),uu=Math.pow(2,28),fu=Math.pow(2,35),lu=Math.pow(2,42),hu=Math.pow(2,49),du=Math.pow(2,56),pu=Math.pow(2,63),mu=function(r){return r<su?1:r<au?2:r<cu?3:r<uu?4:r<fu?5:r<lu?6:r<hu?7:r<du?8:r<pu?9:10},yu={encode:eu,decode:iu,encodingLength:mu},gu=yu,Mt=gu;function Rt(r,e=0){return[Mt.decode(r,e),Mt.decode.bytes]}function ft(r,e,t=0){return Mt.encode(r,e,t),e}function lt(r){return Mt.encodingLength(r)}function qe(r,e){let t=e.byteLength,n=lt(r),i=n+lt(t),o=new Uint8Array(i+t);return ft(r,o,0),ft(t,o,n),o.set(e,i),new ht(r,t,e,o)}function _r(r){let e=ue(r),[t,n]=Rt(e),[i,o]=Rt(e.subarray(n)),s=e.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new ht(t,i,s,e)}function Zi(r,e){if(r===e)return!0;{let t=e;return r.code===t.code&&r.size===t.size&&t.bytes instanceof Uint8Array&&In(r.bytes,t.bytes)}}var ht=class{code;size;digest;bytes;constructor(e,t,n,i){this.code=e,this.size=t,this.digest=n,this.bytes=i}};function eo(r,e){let{bytes:t,version:n}=r;switch(n){case 0:return xu(t,$n(r),e??fe.encoder);default:return bu(t,$n(r),e??Ue.encoder)}}var to=new WeakMap;function $n(r){let e=to.get(r);if(e==null){let t=new Map;return to.set(r,t),t}return e}var I=class r{code;version;multihash;bytes;"/";constructor(e,t,n,i){this.code=t,this.version=e,this.multihash=n,this.bytes=i,this["/"]=i}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:e,multihash:t}=this;if(e!==Ht)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(t.code!==ku)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return r.createV0(t)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:e,digest:t}=this.multihash,n=qe(e,t);return r.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(e){return r.equals(this,e)}static equals(e,t){let n=t;return n!=null&&e.code===n.code&&e.version===n.version&&Zi(e.multihash,n.multihash)}toString(e){return eo(this,e)}toJSON(){return{"/":eo(this)}}link(){return this}[Symbol.toStringTag]="CID";[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(e){if(e==null)return null;let t=e;if(t instanceof r)return t;if(t["/"]!=null&&t["/"]===t.bytes||t.asCID===t){let{version:n,code:i,multihash:o,bytes:s}=t;return new r(n,i,o,s??ro(n,i,o.bytes))}else if(t[_u]===!0){let{version:n,multihash:i,code:o}=t,s=_r(i);return r.create(n,o,s)}else return null}static create(e,t,n){if(typeof t!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(e){case 0:{if(t!==Ht)throw new Error(`Version 0 CID must use dag-pb (code: ${Ht}) block encoding`);return new r(e,t,n,n.bytes)}case 1:{let i=ro(e,t,n.bytes);return new r(e,t,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return r.create(0,Ht,e)}static createV1(e,t){return r.create(1,e,t)}static decode(e){let[t,n]=r.decodeFirst(e);if(n.length!==0)throw new Error("Incorrect length");return t}static decodeFirst(e){let t=r.inspectBytes(e),n=t.size-t.multihashSize,i=ue(e.subarray(n,n+t.multihashSize));if(i.byteLength!==t.multihashSize)throw new Error("Incorrect length");let o=i.subarray(t.multihashSize-t.digestSize),s=new ht(t.multihashCode,t.digestSize,o,i);return[t.version===0?r.createV0(s):r.createV1(t.codec,s),e.subarray(t.size)]}static inspectBytes(e){let t=0,n=()=>{let[l,y]=Rt(e.subarray(t));return t+=y,l},i=n(),o=Ht;if(i===18?(i=0,t=0):o=n(),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let s=t,a=n(),c=n(),h=t+c,f=h-s;return{version:i,codec:o,multihashCode:a,digestSize:c,multihashSize:f,size:h}}static parse(e,t){let[n,i]=wu(e,t),o=r.decode(i);if(o.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return $n(o).set(n,e),o}};function wu(r,e){switch(r[0]){case"Q":{let t=e??fe;return[fe.prefix,t.decode(`${fe.prefix}${r}`)]}case fe.prefix:{let t=e??fe;return[fe.prefix,t.decode(r)]}case Ue.prefix:{let t=e??Ue;return[Ue.prefix,t.decode(r)]}case $t.prefix:{let t=e??$t;return[$t.prefix,t.decode(r)]}default:{if(e==null)throw Error("To parse non base32, base36 or base58btc encoded CID multibase decoder must be provided");return[r[0],e.decode(r)]}}}function xu(r,e,t){let{prefix:n}=t;if(n!==fe.prefix)throw Error(`Cannot string encode V0 in ${t.name} encoding`);let i=e.get(n);if(i==null){let o=t.encode(r).slice(1);return e.set(n,o),o}else return i}function bu(r,e,t){let{prefix:n}=t,i=e.get(n);if(i==null){let o=t.encode(r);return e.set(n,o),o}else return i}var Ht=112,ku=18;function ro(r,e,t){let n=lt(r),i=n+lt(e),o=new Uint8Array(i+t.byteLength);return ft(r,o,0),ft(e,o,n),o.set(t,i),o}var _u=Symbol.for("@ipld/js-cid/CID");var Su=new TextDecoder;function Mn(r,e){let t=0;for(let n=0;;n+=7){if(n>=64)throw new Error("protobuf: varint overflow");if(e>=r.length)throw new Error("protobuf: unexpected end of data");let i=r[e++];if(t+=n<28?(i&127)<<n:(i&127)*2**n,i<128)break}return[t,e]}function Sr(r,e){let t;[t,e]=Mn(r,e);let n=e+t;if(t<0||n<0)throw new Error("protobuf: invalid length");if(n>r.length)throw new Error("protobuf: unexpected end of data");return[r.subarray(e,n),n]}function no(r,e){let t;return[t,e]=Mn(r,e),[t&7,t>>3,e]}function Eu(r){let e={},t=r.length,n=0;for(;n<t;){let i,o;if([i,o,n]=no(r,n),o===1){if(e.Hash)throw new Error("protobuf: (PBLink) duplicate Hash section");if(i!==2)throw new Error(`protobuf: (PBLink) wrong wireType (${i}) for Hash`);if(e.Name!==void 0)throw new Error("protobuf: (PBLink) invalid order, found Name before Hash");if(e.Tsize!==void 0)throw new Error("protobuf: (PBLink) invalid order, found Tsize before Hash");[e.Hash,n]=Sr(r,n)}else if(o===2){if(e.Name!==void 0)throw new Error("protobuf: (PBLink) duplicate Name section");if(i!==2)throw new Error(`protobuf: (PBLink) wrong wireType (${i}) for Name`);if(e.Tsize!==void 0)throw new Error("protobuf: (PBLink) invalid order, found Tsize before Name");let s;[s,n]=Sr(r,n),e.Name=Su.decode(s)}else if(o===3){if(e.Tsize!==void 0)throw new Error("protobuf: (PBLink) duplicate Tsize section");if(i!==0)throw new Error(`protobuf: (PBLink) wrong wireType (${i}) for Tsize`);[e.Tsize,n]=Mn(r,n)}else throw new Error(`protobuf: (PBLink) invalid fieldNumber, expected 1, 2 or 3, got ${o}`)}if(n>t)throw new Error("protobuf: (PBLink) unexpected end of data");return e}function io(r){let e=r.length,t=0,n,i=!1,o;for(;t<e;){let a,c;if([a,c,t]=no(r,t),a!==2)throw new Error(`protobuf: (PBNode) invalid wireType, expected 2, got ${a}`);if(c===1){if(o)throw new Error("protobuf: (PBNode) duplicate Data section");[o,t]=Sr(r,t),n&&(i=!0)}else if(c===2){if(i)throw new Error("protobuf: (PBNode) duplicate Links section");n||(n=[]);let h;[h,t]=Sr(r,t),n.push(Eu(h))}else throw new Error(`protobuf: (PBNode) invalid fieldNumber, expected 1 or 2, got ${c}`)}if(t>e)throw new Error("protobuf: (PBNode) unexpected end of data");let s={};return o&&(s.Data=o),s.Links=n||[],s}var so=new TextEncoder,oo=2**32,Bu=2**31;function vu(r,e){let t=e.length;if(typeof r.Tsize=="number"){if(r.Tsize<0)throw new Error("Tsize cannot be negative");if(!Number.isSafeInteger(r.Tsize))throw new Error("Tsize too large for encoding");t=Vt(e,t,r.Tsize)-1,e[t]=24}if(typeof r.Name=="string"){let n=so.encode(r.Name);t-=n.length,e.set(n,t),t=Vt(e,t,n.length)-1,e[t]=18}return r.Hash&&(t-=r.Hash.length,e.set(r.Hash,t),t=Vt(e,t,r.Hash.length)-1,e[t]=10),e.length-t}function ao(r){let e=Iu(r),t=new Uint8Array(e),n=e;if(r.Data&&(n-=r.Data.length,t.set(r.Data,n),n=Vt(t,n,r.Data.length)-1,t[n]=10),r.Links)for(let i=r.Links.length-1;i>=0;i--){let o=vu(r.Links[i],t.subarray(0,n));n-=o,n=Vt(t,n,o)-1,t[n]=18}return t}function Au(r){let e=0;if(r.Hash){let t=r.Hash.length;e+=1+t+pt(t)}if(typeof r.Name=="string"){let t=so.encode(r.Name).length;e+=1+t+pt(t)}return typeof r.Tsize=="number"&&(e+=1+pt(r.Tsize)),e}function Iu(r){let e=0;if(r.Data){let t=r.Data.length;e+=1+t+pt(t)}if(r.Links)for(let t of r.Links){let n=Au(t);e+=1+n+pt(n)}return e}function Vt(r,e,t){e-=pt(t);let n=e;for(;t>=Bu;)r[e++]=t&127|128,t/=128;for(;t>=128;)r[e++]=t&127|128,t>>>=7;return r[e]=t,n}function pt(r){return r%2===0&&r++,Math.floor((Cu(r)+6)/7)}function Cu(r){let e=0;return r>=oo&&(r=Math.floor(r/oo),e=32),r>=65536&&(r>>>=16,e+=16),r>=256&&(r>>>=8,e+=8),e+Nu[r]}var Nu=[0,1,2,2,3,3,3,3,4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8];var Tu=["Data","Links"],Du=["Hash","Name","Tsize"],Rn=new TextEncoder;function uo(r,e){if(r===e)return 0;let t=r.Name?Rn.encode(r.Name):[],n=e.Name?Rn.encode(e.Name):[],i=t.length,o=n.length;for(let s=0,a=Math.min(i,o);s<a;++s)if(t[s]!==n[s]){i=t[s],o=n[s];break}return i<o?-1:o<i?1:0}function co(r,e){return!Object.keys(r).some(t=>!e.includes(t))}function fo(r){if(typeof r.asCID=="object"){let t=I.asCID(r);if(!t)throw new TypeError("Invalid DAG-PB form");return{Hash:t}}if(typeof r!="object"||Array.isArray(r))throw new TypeError("Invalid DAG-PB form");let e={};if(r.Hash){let t=I.asCID(r.Hash);try{t||(typeof r.Hash=="string"?t=I.parse(r.Hash):r.Hash instanceof Uint8Array&&(t=I.decode(r.Hash)))}catch(n){throw new TypeError(`Invalid DAG-PB form: ${n.message}`)}t&&(e.Hash=t)}if(!e.Hash)throw new TypeError("Invalid DAG-PB form");return typeof r.Name=="string"&&(e.Name=r.Name),typeof r.Tsize=="number"&&(e.Tsize=r.Tsize),e}function F(r){if((r instanceof Uint8Array||typeof r=="string")&&(r={Data:r}),typeof r!="object"||Array.isArray(r))throw new TypeError("Invalid DAG-PB form");let e={};if(r.Data!==void 0)if(typeof r.Data=="string")e.Data=Rn.encode(r.Data);else if(r.Data instanceof Uint8Array)e.Data=r.Data;else throw new TypeError("Invalid DAG-PB form");if(r.Links!==void 0)if(Array.isArray(r.Links))e.Links=r.Links.map(fo),e.Links.sort(uo);else throw new TypeError("Invalid DAG-PB form");else e.Links=[];return e}function Hn(r){if(!r||typeof r!="object"||Array.isArray(r)||r instanceof Uint8Array||r["/"]&&r["/"]===r.bytes)throw new TypeError("Invalid DAG-PB form");if(!co(r,Tu))throw new TypeError("Invalid DAG-PB form (extraneous properties)");if(r.Data!==void 0&&!(r.Data instanceof Uint8Array))throw new TypeError("Invalid DAG-PB form (Data must be bytes)");if(!Array.isArray(r.Links))throw new TypeError("Invalid DAG-PB form (Links must be a list)");for(let e=0;e<r.Links.length;e++){let t=r.Links[e];if(!t||typeof t!="object"||Array.isArray(t)||t instanceof Uint8Array||t["/"]&&t["/"]===t.bytes)throw new TypeError("Invalid DAG-PB form (bad link)");if(!co(t,Du))throw new TypeError("Invalid DAG-PB form (extraneous properties on link)");if(t.Hash===void 0)throw new TypeError("Invalid DAG-PB form (link must have a Hash)");if(t.Hash==null||!t.Hash["/"]||t.Hash["/"]!==t.Hash.bytes)throw new TypeError("Invalid DAG-PB form (link Hash must be a CID)");if(t.Name!==void 0&&typeof t.Name!="string")throw new TypeError("Invalid DAG-PB form (link Name must be a string)");if(t.Tsize!==void 0){if(typeof t.Tsize!="number"||t.Tsize%1!==0)throw new TypeError("Invalid DAG-PB form (link Tsize must be an integer)");if(t.Tsize<0)throw new TypeError("Invalid DAG-PB form (link Tsize cannot be negative)")}if(e>0&&uo(t,r.Links[e-1])===-1)throw new TypeError("Invalid DAG-PB form (links must be sorted by Name bytes)")}}function lo(r,e=[]){return F({Data:r,Links:e})}function ho(r,e,t){return fo({Hash:t,Name:r,Tsize:e})}function po(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}var Lu="dag-pb",H=112;function T(r){Hn(r);let e={};return r.Links&&(e.Links=r.Links.map(t=>{let n={};return t.Hash&&(n.Hash=t.Hash.bytes),t.Name!==void 0&&(n.Name=t.Name),t.Tsize!==void 0&&(n.Tsize=t.Tsize),n})),r.Data&&(e.Data=r.Data),ao(e)}function O(r){let e=po(r),t=io(e),n={};return t.Data&&(n.Data=t.Data),t.Links&&(n.Links=t.Links.map(i=>{let o={};try{o.Hash=I.decode(i.Hash)}catch{}if(!o.Hash)throw new Error("Invalid Hash field found in link, expected CID");return i.Name!==void 0&&(o.Name=i.Name),i.Tsize!==void 0&&(o.Tsize=i.Tsize),o})),n}var jt=class r extends Error{static name="InvalidTypeError";static code="ERR_INVALID_TYPE";name=r.name;code=r.code;constructor(e="Invalid type"){super(e)}};var Pu=Math.pow(2,7),Fu=Math.pow(2,14),Uu=Math.pow(2,21),mo=Math.pow(2,28),yo=Math.pow(2,35),go=Math.pow(2,42),wo=Math.pow(2,49),X=128,ze=127;function Gt(r){if(r<Pu)return 1;if(r<Fu)return 2;if(r<Uu)return 3;if(r<mo)return 4;if(r<yo)return 5;if(r<go)return 6;if(r<wo)return 7;if(Number.MAX_SAFE_INTEGER!=null&&r>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function xo(r,e,t=0){switch(Gt(r)){case 8:e[t++]=r&255|X,r/=128;case 7:e[t++]=r&255|X,r/=128;case 6:e[t++]=r&255|X,r/=128;case 5:e[t++]=r&255|X,r/=128;case 4:e[t++]=r&255|X,r>>>=7;case 3:e[t++]=r&255|X,r>>>=7;case 2:e[t++]=r&255|X,r>>>=7;case 1:{e[t++]=r&255,r>>>=7;break}default:throw new Error("unreachable")}return e}function bo(r,e){let t=r[e],n=0;if(n+=t&ze,t<X||(t=r[e+1],n+=(t&ze)<<7,t<X)||(t=r[e+2],n+=(t&ze)<<14,t<X)||(t=r[e+3],n+=(t&ze)<<21,t<X)||(t=r[e+4],n+=(t&ze)*mo,t<X)||(t=r[e+5],n+=(t&ze)*yo,t<X)||(t=r[e+6],n+=(t&ze)*go,t<X)||(t=r[e+7],n+=(t&ze)*wo,t<X))return n;throw new RangeError("Could not decode varint")}var Vn=new Float32Array([-0]),Oe=new Uint8Array(Vn.buffer);function ko(r,e,t){Vn[0]=r,e[t]=Oe[0],e[t+1]=Oe[1],e[t+2]=Oe[2],e[t+3]=Oe[3]}function _o(r,e){return Oe[0]=r[e],Oe[1]=r[e+1],Oe[2]=r[e+2],Oe[3]=r[e+3],Vn[0]}var jn=new Float64Array([-0]),W=new Uint8Array(jn.buffer);function So(r,e,t){jn[0]=r,e[t]=W[0],e[t+1]=W[1],e[t+2]=W[2],e[t+3]=W[3],e[t+4]=W[4],e[t+5]=W[5],e[t+6]=W[6],e[t+7]=W[7]}function Eo(r,e){return W[0]=r[e],W[1]=r[e+1],W[2]=r[e+2],W[3]=r[e+3],W[4]=r[e+4],W[5]=r[e+5],W[6]=r[e+6],W[7]=r[e+7],jn[0]}var zu=BigInt(Number.MAX_SAFE_INTEGER),Ou=BigInt(Number.MIN_SAFE_INTEGER),te=class r{lo;hi;constructor(e,t){this.lo=e|0,this.hi=t|0}toNumber(e=!1){if(!e&&this.hi>>>31>0){let t=~this.lo+1>>>0,n=~this.hi>>>0;return t===0&&(n=n+1>>>0),-(t+n*4294967296)}return this.lo+this.hi*4294967296}toBigInt(e=!1){if(e)return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n);if(this.hi>>>31){let t=~this.lo+1>>>0,n=~this.hi>>>0;return t===0&&(n=n+1>>>0),-(BigInt(t)+(BigInt(n)<<32n))}return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n)}toString(e=!1){return this.toBigInt(e).toString()}zzEncode(){let e=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^e)>>>0,this.lo=(this.lo<<1^e)>>>0,this}zzDecode(){let e=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^e)>>>0,this.hi=(this.hi>>>1^e)>>>0,this}length(){let e=this.lo,t=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?t===0?e<16384?e<128?1:2:e<2097152?3:4:t<16384?t<128?5:6:t<2097152?7:8:n<128?9:10}static fromBigInt(e){if(e===0n)return Ke;if(e<zu&&e>Ou)return this.fromNumber(Number(e));let t=e<0n;t&&(e=-e);let n=e>>32n,i=e-(n<<32n);return t&&(n=~n|0n,i=~i|0n,++i>Bo&&(i=0n,++n>Bo&&(n=0n))),new r(Number(i),Number(n))}static fromNumber(e){if(e===0)return Ke;let t=e<0;t&&(e=-e);let n=e>>>0,i=(e-n)/4294967296>>>0;return t&&(i=~i>>>0,n=~n>>>0,++n>4294967295&&(n=0,++i>4294967295&&(i=0))),new r(n,i)}static from(e){return typeof e=="number"?r.fromNumber(e):typeof e=="bigint"?r.fromBigInt(e):typeof e=="string"?r.fromBigInt(BigInt(e)):e.low!=null||e.high!=null?new r(e.low>>>0,e.high>>>0):Ke}},Ke=new te(0,0);Ke.toBigInt=function(){return 0n};Ke.zzEncode=Ke.zzDecode=function(){return this};Ke.length=function(){return 1};var Bo=4294967296n;function vo(r){let e=0,t=0;for(let n=0;n<r.length;++n)t=r.charCodeAt(n),t<128?e+=1:t<2048?e+=2:(t&64512)===55296&&(r.charCodeAt(n+1)&64512)===56320?(++n,e+=4):e+=3;return e}function Ao(r,e,t){if(t-e<1)return"";let i,o=[],s=0,a;for(;e<t;)a=r[e++],a<128?o[s++]=a:a>191&&a<224?o[s++]=(a&31)<<6|r[e++]&63:a>239&&a<365?(a=((a&7)<<18|(r[e++]&63)<<12|(r[e++]&63)<<6|r[e++]&63)-65536,o[s++]=55296+(a>>10),o[s++]=56320+(a&1023)):o[s++]=(a&15)<<12|(r[e++]&63)<<6|r[e++]&63,s>8191&&((i??(i=[])).push(String.fromCharCode.apply(String,o)),s=0);return i!=null?(s>0&&i.push(String.fromCharCode.apply(String,o.slice(0,s))),i.join("")):String.fromCharCode.apply(String,o.slice(0,s))}function Gn(r,e,t){let n=t,i,o;for(let s=0;s<r.length;++s)i=r.charCodeAt(s),i<128?e[t++]=i:i<2048?(e[t++]=i>>6|192,e[t++]=i&63|128):(i&64512)===55296&&((o=r.charCodeAt(s+1))&64512)===56320?(i=65536+((i&1023)<<10)+(o&1023),++s,e[t++]=i>>18|240,e[t++]=i>>12&63|128,e[t++]=i>>6&63|128,e[t++]=i&63|128):(e[t++]=i>>12|224,e[t++]=i>>6&63|128,e[t++]=i&63|128);return t-n}function ye(r,e){return RangeError(`index out of range: ${r.pos} + ${e??1} > ${r.len}`)}function Er(r,e){return(r[e-4]|r[e-3]<<8|r[e-2]<<16|r[e-1]<<24)>>>0}var Wn=class{buf;pos;len;_slice=Uint8Array.prototype.subarray;constructor(e){this.buf=e,this.pos=0,this.len=e.length}uint32(){let e=4294967295;if(e=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(e=(e|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return e;if((this.pos+=5)>this.len)throw this.pos=this.len,ye(this,10);return e}int32(){return this.uint32()|0}sint32(){let e=this.uint32();return e>>>1^-(e&1)|0}bool(){return this.uint32()!==0}fixed32(){if(this.pos+4>this.len)throw ye(this,4);return Er(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw ye(this,4);return Er(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw ye(this,4);let e=_o(this.buf,this.pos);return this.pos+=4,e}double(){if(this.pos+8>this.len)throw ye(this,4);let e=Eo(this.buf,this.pos);return this.pos+=8,e}bytes(){let e=this.uint32(),t=this.pos,n=this.pos+e;if(n>this.len)throw ye(this,e);return this.pos+=e,t===n?new Uint8Array(0):this.buf.subarray(t,n)}string(){let e=this.bytes();return Ao(e,0,e.length)}skip(e){if(typeof e=="number"){if(this.pos+e>this.len)throw ye(this,e);this.pos+=e}else do if(this.pos>=this.len)throw ye(this);while(this.buf[this.pos++]&128);return this}skipType(e){switch(e){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;(e=this.uint32()&7)!==4;)this.skipType(e);break;case 5:this.skip(4);break;default:throw Error(`invalid wire type ${e} at offset ${this.pos}`)}return this}readLongVarint(){let e=new te(0,0),t=0;if(this.len-this.pos>4){for(;t<4;++t)if(e.lo=(e.lo|(this.buf[this.pos]&127)<<t*7)>>>0,this.buf[this.pos++]<128)return e;if(e.lo=(e.lo|(this.buf[this.pos]&127)<<28)>>>0,e.hi=(e.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return e;t=0}else{for(;t<3;++t){if(this.pos>=this.len)throw ye(this);if(e.lo=(e.lo|(this.buf[this.pos]&127)<<t*7)>>>0,this.buf[this.pos++]<128)return e}return e.lo=(e.lo|(this.buf[this.pos++]&127)<<t*7)>>>0,e}if(this.len-this.pos>4){for(;t<5;++t)if(e.hi=(e.hi|(this.buf[this.pos]&127)<<t*7+3)>>>0,this.buf[this.pos++]<128)return e}else for(;t<5;++t){if(this.pos>=this.len)throw ye(this);if(e.hi=(e.hi|(this.buf[this.pos]&127)<<t*7+3)>>>0,this.buf[this.pos++]<128)return e}throw Error("invalid varint encoding")}readFixed64(){if(this.pos+8>this.len)throw ye(this,8);let e=Er(this.buf,this.pos+=4),t=Er(this.buf,this.pos+=4);return new te(e,t)}int64(){return this.readLongVarint().toBigInt()}int64Number(){return this.readLongVarint().toNumber()}int64String(){return this.readLongVarint().toString()}uint64(){return this.readLongVarint().toBigInt(!0)}uint64Number(){let e=bo(this.buf,this.pos);return this.pos+=Gt(e),e}uint64String(){return this.readLongVarint().toString(!0)}sint64(){return this.readLongVarint().zzDecode().toBigInt()}sint64Number(){return this.readLongVarint().zzDecode().toNumber()}sint64String(){return this.readLongVarint().zzDecode().toString()}fixed64(){return this.readFixed64().toBigInt()}fixed64Number(){return this.readFixed64().toNumber()}fixed64String(){return this.readFixed64().toString()}sfixed64(){return this.readFixed64().toBigInt()}sfixed64Number(){return this.readFixed64().toNumber()}sfixed64String(){return this.readFixed64().toString()}};function qn(r){return new Wn(r instanceof Uint8Array?r:r.subarray())}function Wt(r,e,t){let n=qn(r);return e.decode(n,void 0,t)}var Kn={};G(Kn,{base10:()=>$u});var $u=Fe({prefix:"9",name:"base10",alphabet:"0123456789"});var Xn={};G(Xn,{base16:()=>Mu,base16upper:()=>Ru});var Mu=P({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),Ru=P({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Jn={};G(Jn,{base2:()=>Hu});var Hu=P({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Yn={};G(Yn,{base256emoji:()=>qu});var Co=Array.from("\u{1F680}\u{1FA90}\u2604\u{1F6F0}\u{1F30C}\u{1F311}\u{1F312}\u{1F313}\u{1F314}\u{1F315}\u{1F316}\u{1F317}\u{1F318}\u{1F30D}\u{1F30F}\u{1F30E}\u{1F409}\u2600\u{1F4BB}\u{1F5A5}\u{1F4BE}\u{1F4BF}\u{1F602}\u2764\u{1F60D}\u{1F923}\u{1F60A}\u{1F64F}\u{1F495}\u{1F62D}\u{1F618}\u{1F44D}\u{1F605}\u{1F44F}\u{1F601}\u{1F525}\u{1F970}\u{1F494}\u{1F496}\u{1F499}\u{1F622}\u{1F914}\u{1F606}\u{1F644}\u{1F4AA}\u{1F609}\u263A\u{1F44C}\u{1F917}\u{1F49C}\u{1F614}\u{1F60E}\u{1F607}\u{1F339}\u{1F926}\u{1F389}\u{1F49E}\u270C\u2728\u{1F937}\u{1F631}\u{1F60C}\u{1F338}\u{1F64C}\u{1F60B}\u{1F497}\u{1F49A}\u{1F60F}\u{1F49B}\u{1F642}\u{1F493}\u{1F929}\u{1F604}\u{1F600}\u{1F5A4}\u{1F603}\u{1F4AF}\u{1F648}\u{1F447}\u{1F3B6}\u{1F612}\u{1F92D}\u2763\u{1F61C}\u{1F48B}\u{1F440}\u{1F62A}\u{1F611}\u{1F4A5}\u{1F64B}\u{1F61E}\u{1F629}\u{1F621}\u{1F92A}\u{1F44A}\u{1F973}\u{1F625}\u{1F924}\u{1F449}\u{1F483}\u{1F633}\u270B\u{1F61A}\u{1F61D}\u{1F634}\u{1F31F}\u{1F62C}\u{1F643}\u{1F340}\u{1F337}\u{1F63B}\u{1F613}\u2B50\u2705\u{1F97A}\u{1F308}\u{1F608}\u{1F918}\u{1F4A6}\u2714\u{1F623}\u{1F3C3}\u{1F490}\u2639\u{1F38A}\u{1F498}\u{1F620}\u261D\u{1F615}\u{1F33A}\u{1F382}\u{1F33B}\u{1F610}\u{1F595}\u{1F49D}\u{1F64A}\u{1F639}\u{1F5E3}\u{1F4AB}\u{1F480}\u{1F451}\u{1F3B5}\u{1F91E}\u{1F61B}\u{1F534}\u{1F624}\u{1F33C}\u{1F62B}\u26BD\u{1F919}\u2615\u{1F3C6}\u{1F92B}\u{1F448}\u{1F62E}\u{1F646}\u{1F37B}\u{1F343}\u{1F436}\u{1F481}\u{1F632}\u{1F33F}\u{1F9E1}\u{1F381}\u26A1\u{1F31E}\u{1F388}\u274C\u270A\u{1F44B}\u{1F630}\u{1F928}\u{1F636}\u{1F91D}\u{1F6B6}\u{1F4B0}\u{1F353}\u{1F4A2}\u{1F91F}\u{1F641}\u{1F6A8}\u{1F4A8}\u{1F92C}\u2708\u{1F380}\u{1F37A}\u{1F913}\u{1F619}\u{1F49F}\u{1F331}\u{1F616}\u{1F476}\u{1F974}\u25B6\u27A1\u2753\u{1F48E}\u{1F4B8}\u2B07\u{1F628}\u{1F31A}\u{1F98B}\u{1F637}\u{1F57A}\u26A0\u{1F645}\u{1F61F}\u{1F635}\u{1F44E}\u{1F932}\u{1F920}\u{1F927}\u{1F4CC}\u{1F535}\u{1F485}\u{1F9D0}\u{1F43E}\u{1F352}\u{1F617}\u{1F911}\u{1F30A}\u{1F92F}\u{1F437}\u260E\u{1F4A7}\u{1F62F}\u{1F486}\u{1F446}\u{1F3A4}\u{1F647}\u{1F351}\u2744\u{1F334}\u{1F4A3}\u{1F438}\u{1F48C}\u{1F4CD}\u{1F940}\u{1F922}\u{1F445}\u{1F4A1}\u{1F4A9}\u{1F450}\u{1F4F8}\u{1F47B}\u{1F910}\u{1F92E}\u{1F3BC}\u{1F975}\u{1F6A9}\u{1F34E}\u{1F34A}\u{1F47C}\u{1F48D}\u{1F4E3}\u{1F942}"),Vu=Co.reduce((r,e,t)=>(r[t]=e,r),[]),ju=Co.reduce((r,e,t)=>(r[e.codePointAt(0)]=t,r),[]);function Gu(r){return r.reduce((e,t)=>(e+=Vu[t],e),"")}function Wu(r){let e=[];for(let t of r){let n=ju[t.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${t}`);e.push(n)}return new Uint8Array(e)}var qu=ut({prefix:"\u{1F680}",name:"base256emoji",encode:Gu,decode:Wu});var Qn={};G(Qn,{base64:()=>qt,base64pad:()=>Ku,base64url:()=>Xu,base64urlpad:()=>Ju});var qt=P({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),Ku=P({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Xu=P({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),Ju=P({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var Zn={};G(Zn,{base8:()=>Yu});var Yu=P({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var ei={};G(ei,{identity:()=>Qu});var Qu=ut({prefix:"\0",name:"identity",encode:r=>Nn(r),decode:r=>Cn(r)});var mp=new TextEncoder,Zu=new TextDecoder;var No=512;function To(r){return JSON.parse(Zu.decode(r))}var Se={};G(Se,{code:()=>Z,decode:()=>rf,encode:()=>tf,name:()=>ef});var ef="raw",Z=85;function tf(r){return ue(r)}function rf(r){return ue(r)}var ni={};G(ni,{identity:()=>ri});var Do=0,nf="identity",Lo=ue;function of(r){return qe(Do,Lo(r))}var ri={code:Do,name:nf,encode:Lo,digest:of};var oi={};G(oi,{sha256:()=>re,sha512:()=>sf});function Xe({name:r,code:e,encode:t}){return new ii(r,e,t)}var ii=class{name;code;encode;constructor(e,t,n){this.name=e,this.code=t,this.encode=n}digest(e){if(e instanceof Uint8Array){let t=this.encode(e);return t instanceof Uint8Array?qe(this.code,t):t.then(n=>qe(this.code,n))}else throw Error("Unknown type, must be binary type")}};function Fo(r){return async e=>new Uint8Array(await crypto.subtle.digest(r,e))}var re=Xe({name:"sha2-256",code:18,encode:Fo("SHA-256")}),sf=Xe({name:"sha2-512",code:19,encode:Fo("SHA-512")});var si={...ei,...Jn,...Zn,...Kn,...Xn,...Fn,...Un,...zn,...Qn,...Yn},Ip={...oi,...ni};function zo(r,e,t,n){return{name:r,prefix:e,encoder:{name:r,prefix:e,encode:t},decoder:{decode:n}}}var Uo=zo("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),ai=zo("ascii","a",r=>{let e="a";for(let t=0;t<r.length;t++)e+=String.fromCharCode(r[t]);return e},r=>{r=r.substring(1);let e=ee(r.length);for(let t=0;t<r.length;t++)e[t]=r.charCodeAt(t);return e}),af={utf8:Uo,"utf-8":Uo,hex:si.base16,latin1:ai,ascii:ai,binary:ai,...si},Br=af;function le(r,e="utf8"){let t=Br[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return t.decoder.decode(`${t.prefix}${r}`)}function ci(r){let e=r??8192,t=e>>>1,n,i=e;return function(s){if(s<1||s>t)return ee(s);i+s>e&&(n=ee(e),i=0);let a=n.subarray(i,i+=s);return i&7&&(i=(i|7)+1),a}}var Je=class{fn;len;next;val;constructor(e,t,n){this.fn=e,this.len=t,this.next=void 0,this.val=n}};function ui(){}var li=class{head;tail;len;next;constructor(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}},cf=ci();function uf(r){return globalThis.Buffer!=null?ee(r):cf(r)}var Xt=class{len;head;tail;states;constructor(){this.len=0,this.head=new Je(ui,0,0),this.tail=this.head,this.states=null}_push(e,t,n){return this.tail=this.tail.next=new Je(e,t,n),this.len+=t,this}uint32(e){return this.len+=(this.tail=this.tail.next=new hi((e=e>>>0)<128?1:e<16384?2:e<2097152?3:e<268435456?4:5,e)).len,this}int32(e){return e<0?this._push(vr,10,te.fromNumber(e)):this.uint32(e)}sint32(e){return this.uint32((e<<1^e>>31)>>>0)}uint64(e){let t=te.fromBigInt(e);return this._push(vr,t.length(),t)}uint64Number(e){return this._push(xo,Gt(e),e)}uint64String(e){return this.uint64(BigInt(e))}int64(e){return this.uint64(e)}int64Number(e){return this.uint64Number(e)}int64String(e){return this.uint64String(e)}sint64(e){let t=te.fromBigInt(e).zzEncode();return this._push(vr,t.length(),t)}sint64Number(e){let t=te.fromNumber(e).zzEncode();return this._push(vr,t.length(),t)}sint64String(e){return this.sint64(BigInt(e))}bool(e){return this._push(fi,1,e?1:0)}fixed32(e){return this._push(Kt,4,e>>>0)}sfixed32(e){return this.fixed32(e)}fixed64(e){let t=te.fromBigInt(e);return this._push(Kt,4,t.lo)._push(Kt,4,t.hi)}fixed64Number(e){let t=te.fromNumber(e);return this._push(Kt,4,t.lo)._push(Kt,4,t.hi)}fixed64String(e){return this.fixed64(BigInt(e))}sfixed64(e){return this.fixed64(e)}sfixed64Number(e){return this.fixed64Number(e)}sfixed64String(e){return this.fixed64String(e)}float(e){return this._push(ko,4,e)}double(e){return this._push(So,8,e)}bytes(e){let t=e.length>>>0;return t===0?this._push(fi,1,0):this.uint32(t)._push(lf,t,e)}string(e){let t=vo(e);return t!==0?this.uint32(t)._push(Gn,t,e):this._push(fi,1,0)}fork(){return this.states=new li(this),this.head=this.tail=new Je(ui,0,0),this.len=0,this}reset(){return this.states!=null?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new Je(ui,0,0),this.len=0),this}ldelim(){let e=this.head,t=this.tail,n=this.len;return this.reset().uint32(n),n!==0&&(this.tail.next=e.next,this.tail=t,this.len+=n),this}finish(){let e=this.head.next,t=uf(this.len),n=0;for(;e!=null;)e.fn(e.val,t,n),n+=e.len,e=e.next;return t}};function fi(r,e,t){e[t]=r&255}function ff(r,e,t){for(;r>127;)e[t++]=r&127|128,r>>>=7;e[t]=r}var hi=class extends Je{next;constructor(e,t){super(ff,e,t),this.next=void 0}};function vr(r,e,t){for(;r.hi!==0;)e[t++]=r.lo&127|128,r.lo=(r.lo>>>7|r.hi<<25)>>>0,r.hi>>>=7;for(;r.lo>127;)e[t++]=r.lo&127|128,r.lo=r.lo>>>7;e[t++]=r.lo}function Kt(r,e,t){e[t]=r&255,e[t+1]=r>>>8&255,e[t+2]=r>>>16&255,e[t+3]=r>>>24}function lf(r,e,t){e.set(r,t)}globalThis.Buffer!=null&&(Xt.prototype.bytes=function(r){let e=r.length>>>0;return this.uint32(e),e>0&&this._push(hf,e,r),this},Xt.prototype.string=function(r){let e=globalThis.Buffer.byteLength(r);return this.uint32(e),e>0&&this._push(df,e,r),this});function hf(r,e,t){e.set(r,t)}function df(r,e,t){r.length<40?Gn(r,e,t):e.utf8Write!=null?e.utf8Write(r,t):e.set(le(r),t)}function di(){return new Xt}function Jt(r,e){let t=di();return e.encode(r,t,{lengthDelimited:!1}),t.finish()}var mt;(function(r){r[r.VARINT=0]="VARINT",r[r.BIT64=1]="BIT64",r[r.LENGTH_DELIMITED=2]="LENGTH_DELIMITED",r[r.START_GROUP=3]="START_GROUP",r[r.END_GROUP=4]="END_GROUP",r[r.BIT32=5]="BIT32"})(mt||(mt={}));function Ar(r,e,t,n){return{name:r,type:e,encode:t,decode:n}}function pi(r){function e(i){if(r[i.toString()]==null)throw new Error("Invalid enum value");return r[i]}let t=function(o,s){let a=e(o);s.int32(a)},n=function(o){let s=o.int32();return e(s)};return Ar("enum",mt.VARINT,t,n)}function Yt(r,e){return Ar("message",mt.LENGTH_DELIMITED,r,e)}var ge;(function(r){let e;(function(i){i.Raw="Raw",i.Directory="Directory",i.File="File",i.Metadata="Metadata",i.Symlink="Symlink",i.HAMTShard="HAMTShard"})(e=r.DataType||(r.DataType={}));let t;(function(i){i[i.Raw=0]="Raw",i[i.Directory=1]="Directory",i[i.File=2]="File",i[i.Metadata=3]="Metadata",i[i.Symlink=4]="Symlink",i[i.HAMTShard=5]="HAMTShard"})(t||(t={})),function(i){i.codec=()=>pi(t)}(e=r.DataType||(r.DataType={}));let n;r.codec=()=>(n==null&&(n=Yt((i,o,s={})=>{if(s.lengthDelimited!==!1&&o.fork(),i.Type!=null&&(o.uint32(8),r.DataType.codec().encode(i.Type,o)),i.Data!=null&&(o.uint32(18),o.bytes(i.Data)),i.filesize!=null&&(o.uint32(24),o.uint64(i.filesize)),i.blocksizes!=null)for(let a of i.blocksizes)o.uint32(32),o.uint64(a);i.hashType!=null&&(o.uint32(40),o.uint64(i.hashType)),i.fanout!=null&&(o.uint32(48),o.uint64(i.fanout)),i.mode!=null&&(o.uint32(56),o.uint32(i.mode)),i.mtime!=null&&(o.uint32(66),Ir.codec().encode(i.mtime,o)),s.lengthDelimited!==!1&&o.ldelim()},(i,o)=>{let s={blocksizes:[]},a=o==null?i.len:i.pos+o;for(;i.pos<a;){let c=i.uint32();switch(c>>>3){case 1:s.Type=r.DataType.codec().decode(i);break;case 2:s.Data=i.bytes();break;case 3:s.filesize=i.uint64();break;case 4:s.blocksizes.push(i.uint64());break;case 5:s.hashType=i.uint64();break;case 6:s.fanout=i.uint64();break;case 7:s.mode=i.uint32();break;case 8:s.mtime=Ir.codec().decode(i,i.uint32());break;default:i.skipType(c&7);break}}return s})),n),r.encode=i=>Jt(i,r.codec()),r.decode=i=>Wt(i,r.codec())})(ge||(ge={}));var Ir;(function(r){let e;r.codec=()=>(e==null&&(e=Yt((t,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),t.Seconds!=null&&(n.uint32(8),n.int64(t.Seconds)),t.FractionalNanoseconds!=null&&(n.uint32(21),n.fixed32(t.FractionalNanoseconds)),i.lengthDelimited!==!1&&n.ldelim()},(t,n)=>{let i={},o=n==null?t.len:t.pos+n;for(;t.pos<o;){let s=t.uint32();switch(s>>>3){case 1:i.Seconds=t.int64();break;case 2:i.FractionalNanoseconds=t.fixed32();break;default:t.skipType(s&7);break}}return i})),e),r.encode=t=>Jt(t,r.codec()),r.decode=t=>Wt(t,r.codec())})(Ir||(Ir={}));var Oo;(function(r){let e;r.codec=()=>(e==null&&(e=Yt((t,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),t.MimeType!=null&&(n.uint32(10),n.string(t.MimeType)),i.lengthDelimited!==!1&&n.ldelim()},(t,n)=>{let i={},o=n==null?t.len:t.pos+n;for(;t.pos<o;){let s=t.uint32();switch(s>>>3){case 1:i.MimeType=t.string();break;default:t.skipType(s&7);break}}return i})),e),r.encode=t=>Jt(t,r.codec()),r.decode=t=>Wt(t,r.codec())})(Oo||(Oo={}));var $o={Raw:"raw",Directory:"directory",File:"file",Metadata:"metadata",Symlink:"symlink",HAMTShard:"hamt-sharded-directory"},pf=["directory","hamt-sharded-directory"],Mo=parseInt("0644",8),Ro=parseInt("0755",8),v=class r{static unmarshal(e){let t=ge.decode(e),n=new r({type:$o[t.Type!=null?t.Type.toString():"File"],data:t.Data,blockSizes:t.blocksizes,mode:t.mode,mtime:t.mtime!=null?{secs:t.mtime.Seconds??0n,nsecs:t.mtime.FractionalNanoseconds}:void 0,fanout:t.fanout});return n._originalMode=t.mode??0,n}type;data;blockSizes;hashType;fanout;mtime;_mode;_originalMode;constructor(e={type:"file"}){let{type:t,data:n,blockSizes:i,hashType:o,fanout:s,mtime:a,mode:c}=e;if(t!=null&&!Object.values($o).includes(t))throw new jt("Type: "+t+" is not valid");this.type=t??"file",this.data=n,this.hashType=o,this.fanout=s,this.blockSizes=i??[],this._originalMode=0,this.mode=c,this.mtime=a}set mode(e){e==null?this._mode=this.isDirectory()?Ro:Mo:this._mode=e&4095}get mode(){return this._mode}isDirectory(){return pf.includes(this.type)}addBlockSize(e){this.blockSizes.push(e)}removeBlockSize(e){this.blockSizes.splice(e,1)}fileSize(){if(this.isDirectory())return 0n;let e=0n;return this.blockSizes.forEach(t=>{e+=t}),this.data!=null&&(e+=BigInt(this.data.length)),e}marshal(){let e;switch(this.type){case"raw":e=ge.DataType.Raw;break;case"directory":e=ge.DataType.Directory;break;case"file":e=ge.DataType.File;break;case"metadata":e=ge.DataType.Metadata;break;case"symlink":e=ge.DataType.Symlink;break;case"hamt-sharded-directory":e=ge.DataType.HAMTShard;break;default:throw new jt(`Type: ${e} is not valid`)}let t=this.data;(this.data==null||this.data.length===0)&&(t=void 0);let n;this.mode!=null&&(n=this._originalMode&4294963200|(this.mode??0),n===Mo&&!this.isDirectory()&&(n=void 0),n===Ro&&this.isDirectory()&&(n=void 0));let i;return this.mtime!=null&&(i={Seconds:this.mtime.secs,FractionalNanoseconds:this.mtime.nsecs}),ge.encode({Type:e,Data:t,filesize:this.isDirectory()?void 0:this.fileSize(),blocksizes:this.blockSizes,hashType:this.hashType,fanout:this.fanout,mode:n,mtime:i})}};var U=class extends Event{type;detail;constructor(e,t){super(e),this.type=e,this.detail=t}};var we=async(r,e,t)=>{t.codec==null&&(t.codec=$);let n=await re.digest(r),i=I.create(t.cidVersion,t.codec.code,n);return await e.put(i,r,t),i};function Ho(r){return async function*(t,n){let i=0n;for await(let o of t.content)yield async()=>{let s,a={codec:$,cidVersion:r.cidVersion,onProgress:r.onProgress};r.rawLeaves?(a.codec=Se,a.cidVersion=1):(s=new v({type:r.leafType,data:o}),o=T({Data:s.marshal(),Links:[]}));let c=await we(o,n,a);return i+=BigInt(o.byteLength),r.onProgress?.(new U("unixfs:importer:progress:file:write",{bytesWritten:i,cid:c,path:t.path})),{cid:c,unixfs:s,size:BigInt(o.length),block:o}}}}var Qt=class r extends Error{static name="InvalidParametersError";static code="ERR_INVALID_PARAMS";name=r.name;code=r.code;constructor(e="Invalid parameters"){super(e)}};var $e=class r extends Error{static name="InvalidContentError";static code="ERR_INVALID_CONTENT";name=r.name;code=r.code;constructor(e="Invalid content"){super(e)}};var Vo=async(r,e,t)=>{let n=new v({type:"directory",mtime:r.mtime,mode:r.mode}),i=T(F({Data:n.marshal()})),o=await we(i,e,t),s=r.path;return{cid:o,path:s,unixfs:n,size:BigInt(i.length),originalPath:r.originalPath,block:i}};async function*mf(r,e,t){let n=-1,i;for await(let o of zt(t.bufferImporter(r,e),t.blockWriteConcurrency)){if(n++,n===0){i={...o,single:!0};continue}else n===1&&i!=null&&(yield{...i,block:void 0,single:void 0},i=void 0);yield{...o,block:void 0}}i!=null&&(yield i)}function jo(r){return r.single===!0}var yf=(r,e,t)=>async function(i){if(i.length===1&&jo(i[0])&&t.reduceSingleLeafToSelf){let f=i[0],l=f.block;return jo(f)&&(r.mtime!==void 0||r.mode!==void 0)&&(f.unixfs=new v({type:"file",mtime:r.mtime,mode:r.mode,data:f.block}),l={Data:f.unixfs.marshal(),Links:[]},f.block=T(F(l)),f.cid=await we(f.block,e,{...t,cidVersion:t.cidVersion}),f.size=BigInt(f.block.length)),t.onProgress?.(new U("unixfs:importer:progress:file:layout",{cid:f.cid,path:f.originalPath})),{cid:f.cid,path:r.path,unixfs:f.unixfs,size:f.size,originalPath:f.originalPath}}let o=new v({type:"file",mtime:r.mtime,mode:r.mode}),s=i.filter(f=>f.cid.code===Z&&f.size>0||f.unixfs!=null&&f.unixfs.data==null&&f.unixfs.fileSize()>0n?!0:!!f.unixfs?.data?.length).map(f=>f.cid.code===Z?(o.addBlockSize(f.size),{Name:"",Tsize:Number(f.size),Hash:f.cid}):(f.unixfs?.data==null?o.addBlockSize(f.unixfs?.fileSize()??0n):o.addBlockSize(BigInt(f.unixfs.data.length)),{Name:"",Tsize:Number(f.size),Hash:f.cid})),a={Data:o.marshal(),Links:s},c=T(F(a)),h=await we(c,e,t);return t.onProgress?.(new U("unixfs:importer:progress:file:layout",{cid:h,path:r.originalPath})),{cid:h,path:r.path,unixfs:o,size:BigInt(c.length+a.Links.reduce((f,l)=>f+(l.Tsize??0),0)),originalPath:r.originalPath,block:c}},Go=async(r,e,t)=>t.layout(mf(r,e,t),yf(r,e,t));function gf(r){return Symbol.iterator in r}function wf(r){return Symbol.asyncIterator in r}function xf(r){try{if(r instanceof Uint8Array)return async function*(){yield r}();if(gf(r))return async function*(){yield*r}();if(wf(r))return r}catch{throw new $e("Content was invalid")}throw new $e("Content was invalid")}function Wo(r){return async function*(t,n){for await(let i of t){let o;if(i.path!=null&&(o=i.path,i.path=i.path.split("/").filter(s=>s!=null&&s!==".").join("/")),bf(i)){let s={path:i.path,mtime:i.mtime,mode:i.mode,content:async function*(){let a=0n;for await(let c of r.chunker(r.chunkValidator(xf(i.content)))){let h=BigInt(c.byteLength);a+=h,r.onProgress?.(new U("unixfs:importer:progress:file:read",{bytesRead:a,chunkSize:h,path:i.path})),yield c}}(),originalPath:o};yield async()=>Go(s,n,r)}else if(i.path!=null){let s={path:i.path,mtime:i.mtime,mode:i.mode,originalPath:o};yield async()=>Vo(s,n,r)}else throw new Error("Import candidate must have content or path or both")}}}function bf(r){return r.content!=null}var qo=()=>async function*(e){for await(let t of e){if(t.length===void 0)throw new $e("Content was invalid");if(typeof t=="string"||t instanceof String)yield le(t.toString());else if(Array.isArray(t))yield Uint8Array.from(t);else if(t instanceof Uint8Array)yield t;else throw new $e("Content was invalid")}};var kf=174;function Zt(r){let e=r?.maxChildrenPerNode??kf;return async function t(n,i){let o=[];for await(let s of xr(n,e))o.push(await i(s));return o.length>1?t(o,i):o[0]}}function _f(r){return r[Symbol.asyncIterator]!=null}function Sf(r){if(_f(r))return(async()=>{let t=[];for await(let n of r)t.push(n);return t})();let e=[];for(let t of r)e.push(t);return e}var Ko=Sf;var Ee=class{options;root;dir;path;dirty;flat;parent;parentKey;unixfs;mode;mtime;cid;size;nodeSize;constructor(e,t){this.options=t??{},this.root=e.root,this.dir=e.dir,this.path=e.path,this.dirty=e.dirty,this.flat=e.flat,this.parent=e.parent,this.parentKey=e.parentKey,this.unixfs=e.unixfs,this.mode=e.mode,this.mtime=e.mtime}},er=I.parse("QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn"),tr=I.parse("zdj7WbTaiJT1fgatdet9Ei9iDB5hdCxkbVyhyh8YTUnXMiwYi");var Ye=class extends Ee{_children;constructor(e,t){super(e,t),this._children=new Map}async put(e,t){this.cid=void 0,this.size=void 0,this.nodeSize=void 0,this._children.set(e,t)}async get(e){return Promise.resolve(this._children.get(e))}childCount(){return this._children.size}directChildrenCount(){return this.childCount()}onlyChild(){return this._children.values().next().value}async*eachChildSeries(){for(let[e,t]of this._children.entries())yield{key:e,child:t}}estimateNodeSize(){if(this.nodeSize!==void 0)return this.nodeSize;this.nodeSize=0;for(let[e,t]of this._children.entries())t.size!=null&&t.cid!=null&&(this.nodeSize+=e.length+(this.options.cidVersion===1?tr.bytes.byteLength:er.bytes.byteLength));return this.nodeSize}async*flush(e){let t=[];for(let[c,h]of this._children.entries()){let f=h;if(h instanceof Ee)for await(let l of h.flush(e))f=l,yield l;f.size!=null&&f.cid!=null&&t.push({Name:c,Tsize:Number(f.size),Hash:f.cid})}let n=new v({type:"directory",mtime:this.mtime,mode:this.mode}),i={Data:n.marshal(),Links:t},o=T(F(i)),s=await we(o,e,this.options),a=o.length+i.Links.reduce((c,h)=>c+(h.Tsize??0),0);this.cid=s,this.size=a,yield{cid:s,unixfs:n,path:this.path,size:BigInt(a)}}};var Nr=st(Yo(),1);function Ef(r){let e=new Array(4);for(let t=0;t<4;t++)e[t]=r&255,r=r>>8;return new Uint8Array(e)}var Qm=Xe({name:"murmur3-32",code:35,encode:r=>Ef(Nr.default.x86.hash32(r))}),Qe=Xe({name:"murmur3-128",code:34,encode:r=>ct.fromHex(Nr.default.x64.hash128(r))}),Zm=Xe({name:"murmur3-x64-64",code:34,encode:r=>ct.fromHex(Nr.default.x64.hash128(r)).subarray(0,8)});var es=st(Tr(),1);var ne=class r{_options;_popCount;_parent;_posAtParent;_children;key;constructor(e,t,n=0){this._options=e,this._popCount=0,this._parent=t,this._posAtParent=n,this._children=new es.default,this.key=null}async put(e,t){let n=await this._findNewBucketAndPos(e);n.bucket._putAt(n,e,t)}async get(e){let t=await this._findChild(e);if(t!=null)return t.value}async del(e){let t=await this._findPlace(e),n=t.bucket._at(t.pos);n!=null&&n.key===e&&t.bucket._delAt(t.pos)}leafCount(){return this._children.compactArray().reduce((t,n)=>n instanceof r?t+n.leafCount():t+1,0)}childrenCount(){return this._children.length}onlyChild(){return this._children.get(0)}*eachLeafSeries(){let e=this._children.compactArray();for(let t of e)t instanceof r?yield*t.eachLeafSeries():yield t}serialize(e,t){let n=[];return t(this._children.reduce((i,o,s)=>(o!=null&&(o instanceof r?i.push(o.serialize(e,t)):i.push(e(o,s))),i),n))}async asyncTransform(e,t){return ts(this,e,t)}toJSON(){return this.serialize(Cf,Nf)}prettyPrint(){return JSON.stringify(this.toJSON(),null," ")}tableSize(){return Math.pow(2,this._options.bits)}async _findChild(e){let t=await this._findPlace(e),n=t.bucket._at(t.pos);if(!(n instanceof r)&&n!=null&&n.key===e)return n}async _findPlace(e){let t=this._options.hash(typeof e=="string"?le(e):e),n=await t.take(this._options.bits),i=this._children.get(n);return i instanceof r?i._findPlace(t):{bucket:this,pos:n,hash:t,existingChild:i}}async _findNewBucketAndPos(e){let t=await this._findPlace(e);if(t.existingChild!=null&&t.existingChild.key!==e){let n=new r(this._options,t.bucket,t.pos);t.bucket._putObjectAt(t.pos,n);let i=await n._findPlace(t.existingChild.hash);return i.bucket._putAt(i,t.existingChild.key,t.existingChild.value),n._findNewBucketAndPos(t.hash)}return t}_putAt(e,t,n){this._putObjectAt(e.pos,{key:t,value:n,hash:e.hash})}_putObjectAt(e,t){this._children.get(e)==null&&this._popCount++,this._children.set(e,t)}_delAt(e){if(e===-1)throw new Error("Invalid position");this._children.get(e)!=null&&this._popCount--,this._children.unset(e),this._level()}_level(){if(this._parent!=null&&this._popCount<=1)if(this._popCount===1){let e=this._children.find(If);if(e!=null&&!(e instanceof r)){let t=e.hash;t.untake(this._options.bits);let n={pos:this._posAtParent,hash:t,bucket:this._parent};this._parent._putAt(n,e.key,e.value)}}else this._parent._delAt(this._posAtParent)}_at(e){return this._children.get(e)}};function If(r){return!!r}function Cf(r,e){return r.key}function Nf(r){return r}async function ts(r,e,t){let n=[];for(let i of r._children.compactArray())if(i instanceof ne)await ts(i,e,t);else{let o=await e(i);n.push({bitField:r._children.bitField(),children:o})}return t(n)}var Tf=[255,254,252,248,240,224,192,128],Df=[1,3,7,15,31,63,127,255],Dr=class{_value;_currentBytePos;_currentBitPos;constructor(e){this._value=e,this._currentBytePos=e.length-1,this._currentBitPos=7}availableBits(){return this._currentBitPos+1+this._currentBytePos*8}totalBits(){return this._value.length*8}take(e){let t=e,n=0;for(;t>0&&this._haveBits();){let i=this._value[this._currentBytePos],o=this._currentBitPos+1,s=Math.min(o,t),a=Lf(i,o-s,s);n=(n<<s)+a,t-=s,this._currentBitPos-=s,this._currentBitPos<0&&(this._currentBitPos=7,this._currentBytePos--)}return n}untake(e){for(this._currentBitPos+=e;this._currentBitPos>7;)this._currentBitPos-=8,this._currentBytePos+=1}_haveBits(){return this._currentBytePos>=0}};function Lf(r,e,t){let n=Pf(e,t);return(r&n)>>>e}function Pf(r,e){return Tf[r]&Df[Math.min(e+r-1,7)]}function rs(r){function e(t){return t instanceof Lr?t:new Lr(t,r)}return e}var Lr=class{_value;_hashFn;_depth;_availableBits;_currentBufferIndex;_buffers;constructor(e,t){if(!(e instanceof Uint8Array))throw new Error("can only hash Uint8Arrays");this._value=e,this._hashFn=t,this._depth=-1,this._availableBits=0,this._currentBufferIndex=0,this._buffers=[]}async take(e){let t=e;for(;this._availableBits<t;)await this._produceMoreBits();let n=0;for(;t>0;){let i=this._buffers[this._currentBufferIndex],o=Math.min(i.availableBits(),t),s=i.take(o);n=(n<<o)+s,t-=o,this._availableBits-=o,i.availableBits()===0&&this._currentBufferIndex++}return n}untake(e){let t=e;for(;t>0;){let n=this._buffers[this._currentBufferIndex],i=Math.min(n.totalBits()-n.availableBits(),t);n.untake(i),t-=i,this._availableBits+=i,this._currentBufferIndex>0&&n.totalBits()===n.availableBits()&&(this._depth--,this._currentBufferIndex--)}}async _produceMoreBits(){this._depth++;let e=this._depth>0?We([this._value,Uint8Array.from([this._depth])]):this._value,t=await this._hashFn(e),n=new Dr(t);this._buffers.push(n),this._availableBits+=n.availableBits()}};function yt(r){if(r==null||r.hashFn==null)throw new Error("please define an options.hashFn");let e={bits:r.bits??8,hash:rs(r.hashFn)};return new ne(e)}async function Ff(r){return(await Qe.encode(r)).slice(0,8).reverse()}var ns=BigInt(34),Uf=8,mi=class extends Ee{_bucket;constructor(e,t){super(e,t),this._bucket=yt({hashFn:Ff,bits:t.shardFanoutBits??Uf})}async put(e,t){this.cid=void 0,this.size=void 0,this.nodeSize=void 0,await this._bucket.put(e,t)}async get(e){return this._bucket.get(e)}childCount(){return this._bucket.leafCount()}directChildrenCount(){return this._bucket.childrenCount()}onlyChild(){return this._bucket.onlyChild()}async*eachChildSeries(){for await(let{key:e,value:t}of this._bucket.eachLeafSeries())yield{key:e,child:t}}estimateNodeSize(){return this.nodeSize!==void 0?this.nodeSize:(this.nodeSize=ss(this._bucket,this,this.options),this.nodeSize)}async*flush(e){for await(let t of os(this._bucket,e,this,this.options))yield{...t,path:this.path}}},is=mi;async function*os(r,e,t,n){let i=r._children,o=(r.tableSize()-1).toString(16).length,s=[],a=0n;for(let d=0;d<i.length;d++){let m=i.get(d);if(m==null)continue;let x=d.toString(16).toUpperCase().padStart(o,"0");if(m instanceof ne){let g;for await(let w of os(m,e,null,n))g=w;if(g==null)throw new Error("Could not flush sharded directory, no subshard found");s.push({Name:x,Tsize:Number(g.size),Hash:g.cid}),a+=g.size}else if(zf(m.value)){let g=m.value,w;for await(let _ of g.flush(e))w=_,yield w;if(w==null)throw new Error("Did not flush dir");let b=x+m.key;s.push({Name:b,Tsize:Number(w.size),Hash:w.cid}),a+=w.size}else{let g=m.value;if(g.cid==null)continue;let w=x+m.key,b=g.size;s.push({Name:w,Tsize:Number(b),Hash:g.cid}),a+=BigInt(b??0)}}let c=Uint8Array.from(i.bitField().reverse()),h=new v({type:"hamt-sharded-directory",data:c,fanout:BigInt(r.tableSize()),hashType:ns,mtime:t?.mtime,mode:t?.mode}),f={Data:h.marshal(),Links:s},l=T(F(f)),y=await we(l,e,n),u=BigInt(l.byteLength)+a;yield{cid:y,unixfs:h,size:u}}function zf(r){return typeof r.flush=="function"}function ss(r,e,t){let n=r._children,i=(r.tableSize()-1).toString(16).length,o=[];for(let h=0;h<n.length;h++){let f=n.get(h);if(f==null)continue;let l=h.toString(16).toUpperCase().padStart(i,"0");if(f instanceof ne){let y=ss(f,null,t);o.push({Name:l,Tsize:Number(y),Hash:t.cidVersion===0?er:tr})}else if(typeof f.value.flush=="function"){let u=f.value.nodeSize();o.push({Name:l+f.key,Tsize:Number(u),Hash:t.cidVersion===0?er:tr})}else{let y=f.value;if(y.cid==null)continue;let u=l+f.key,d=y.size;o.push({Name:u,Tsize:Number(d),Hash:y.cid})}}let s=Uint8Array.from(n.bitField().reverse()),a=new v({type:"hamt-sharded-directory",data:s,fanout:BigInt(r.tableSize()),hashType:ns,mtime:e?.mtime,mode:e?.mode});return T(F({Data:a.marshal(),Links:o})).length}async function yi(r,e,t,n){let i=e;e instanceof Ye&&e.estimateNodeSize()>t&&(i=await Of(e,n));let o=i.parent;if(o!=null){if(i!==e){if(r!=null&&(r.parent=i),i.parentKey==null)throw new Error("No parent key found");await o.put(i.parentKey,i)}return yi(i,o,t,n)}return i}async function Of(r,e){let t=new is({root:r.root,dir:!0,parent:r.parent,parentKey:r.parentKey,path:r.path,dirty:r.dirty,flat:!1,mtime:r.mtime,mode:r.mode},e);for await(let{key:n,child:i}of r.eachChildSeries())await t.put(n,i);return t}var as=(r="")=>r.split(/(?<!\\)\//).filter(Boolean);async function $f(r,e,t){let n=as(r.path??""),i=n.length-1,o=e,s="";for(let a=0;a<n.length;a++){let c=n[a];s+=`${s!==""?"/":""}${c}`;let h=a===i;if(o.dirty=!0,o.cid=void 0,o.size=void 0,h)await o.put(c,r),e=await yi(null,o,t.shardSplitThresholdBytes,t);else{let f=await o.get(c);(f==null||!(f instanceof Ee))&&(f=new Ye({root:!1,dir:!0,parent:o,parentKey:c,path:s,dirty:!0,flat:!0,mtime:f?.unixfs?.mtime,mode:f?.unixfs?.mode},t)),await o.put(c,f),o=f}}return e}async function*cs(r,e){if(!(r instanceof Ee)){r.unixfs?.isDirectory()===!0&&(yield r);return}yield*r.flush(e)}function us(r){return async function*(t,n){let i=new Ye({root:!0,dir:!0,path:"",dirty:!0,flat:!0},r),o,s=!1;for await(let a of t){if(a==null)continue;let c=`${a.originalPath??""}`.split("/")[0];c!=null&&c!==""&&(o==null?(o=c,s=!0):o!==c&&(s=!1)),i=await $f(a,i,r),a.unixfs?.isDirectory()!==!0&&(yield a)}if(r.wrapWithDirectory||s&&i.childCount()>1)yield*cs(i,n);else for await(let a of i.eachChildSeries())a!=null&&(yield*cs(a.child,n))}}async function*Me(r,e,t={}){let n;Symbol.asyncIterator in r||Symbol.iterator in r?n=r:n=[r];let i=t.wrapWithDirectory??!1,o=t.shardSplitThresholdBytes??262144,s=t.shardFanoutBits??8,a=t.cidVersion??1,c=t.rawLeaves??!0,h=t.leafType??"file",f=t.fileImportConcurrency??50,l=t.blockWriteConcurrency??10,y=t.reduceSingleLeafToSelf??!0,u=t.chunker??Ot(),d=t.chunkValidator??qo(),m=t.dagBuilder??Wo({chunker:u,chunkValidator:d,wrapWithDirectory:i,layout:t.layout??Zt(),bufferImporter:t.bufferImporter??Ho({cidVersion:a,rawLeaves:c,leafType:h,onProgress:t.onProgress}),blockWriteConcurrency:l,reduceSingleLeafToSelf:y,cidVersion:a,onProgress:t.onProgress}),x=t.treeBuilder??us({wrapWithDirectory:i,shardSplitThresholdBytes:o,shardFanoutBits:s,cidVersion:a,onProgress:t.onProgress});for await(let g of x(zt(m(n,e),f),e))yield{cid:g.cid,path:g.path,unixfs:g.unixfs,size:g.size}}async function Pr(r,e,t={}){let n=await An(Me([r],e,t));if(n==null)throw new Qt("Nothing imported");return n}async function fs(r,e,t={}){let n=await An(Me([r],e,t));if(n==null)throw new Qt("Nothing imported");return n}async function ls(r,e,t={}){return Pr({content:r},e,t)}async function hs(r,e,t={}){return Pr({content:r},e,t)}var nr={cidVersion:1,rawLeaves:!0,layout:Zt({maxChildrenPerNode:1024}),chunker:Ot({chunkSize:1048576})};async function*ds(r,e,t={}){yield*Me(r,e,{...nr,...t})}async function ps(r,e,t={}){let{cid:n}=await ls(r,e,{...nr,...t});return n}async function ms(r,e,t={}){let{cid:n}=await hs(r,e,{...nr,...t});return n}async function ys(r,e,t={}){let{cid:n}=await Pr(r,e,{...nr,...t});return n}async function gs(r,e,t={}){let{cid:n}=await fs({...r,path:r.path??"-"},e,{...nr,...t});return n}function Mf(r){return r[Symbol.asyncIterator]!=null}function Rf(r){if(Mf(r))return(async()=>{let t;for await(let n of r)t=n;return t})();let e;for(let t of r)e=t;return e}var Re=Rf;var Fr=class r extends Error{static name="BadPathError";static code="ERR_BAD_PATH";name=r.name;code=r.code;constructor(e="Bad path"){super(e)}},he=class r extends Error{static name="NotFoundError";static code="ERR_NOT_FOUND";name=r.name;code=r.code;constructor(e="Not found"){super(e)}},Ur=class r extends Error{static name="NoResolverError";static code="ERR_NO_RESOLVER";name=r.name;code=r.code;constructor(e="No resolver"){super(e)}},M=class r extends Error{static name="NotUnixFSError";static code="ERR_NOT_UNIXFS";name=r.name;code=r.code;constructor(e="Not UnixFS"){super(e)}},zr=class r extends Error{static name="OverReadError";static code="ERR_OVER_READ";name=r.name;code=r.code;constructor(e="Over read"){super(e)}},Or=class r extends Error{static name="UnderReadError";static code="ERR_UNDER_READ";name=r.name;code=r.code;constructor(e="Under read"){super(e)}},$r=class r extends Error{static name="NoPropError";static code="ERR_NO_PROP";name=r.name;code=r.code;constructor(e="No Property found"){super(e)}},Ze=class r extends Error{static name="InvalidParametersError";static code="ERR_INVALID_PARAMS";name=r.name;code=r.code;constructor(e="Invalid parameters"){super(e)}};var Hf=["string","number","bigint","symbol"],Vf=["Function","Generator","AsyncGenerator","GeneratorFunction","AsyncGeneratorFunction","AsyncFunction","Observable","Array","Buffer","Object","RegExp","Date","Error","Map","Set","WeakMap","WeakSet","ArrayBuffer","SharedArrayBuffer","DataView","Promise","URL","HTMLElement","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array"];function ws(r){if(r===null)return"null";if(r===void 0)return"undefined";if(r===!0||r===!1)return"boolean";let e=typeof r;if(Hf.includes(e))return e;if(e==="function")return"Function";if(Array.isArray(r))return"Array";if(jf(r))return"Buffer";let t=Gf(r);return t||"Object"}function jf(r){return r&&r.constructor&&r.constructor.isBuffer&&r.constructor.isBuffer.call(null,r)}function Gf(r){let e=Object.prototype.toString.call(r).slice(8,-1);if(Vf.includes(e))return e}var p=class{constructor(e,t,n){this.major=e,this.majorEncoded=e<<5,this.name=t,this.terminal=n}toString(){return`Type[${this.major}].${this.name}`}compare(e){return this.major<e.major?-1:this.major>e.major?1:0}};p.uint=new p(0,"uint",!0);p.negint=new p(1,"negint",!0);p.bytes=new p(2,"bytes",!0);p.string=new p(3,"string",!0);p.array=new p(4,"array",!1);p.map=new p(5,"map",!1);p.tag=new p(6,"tag",!1);p.float=new p(7,"float",!0);p.false=new p(7,"false",!0);p.true=new p(7,"true",!0);p.null=new p(7,"null",!0);p.undefined=new p(7,"undefined",!0);p.break=new p(7,"break",!0);var k=class{constructor(e,t,n){this.type=e,this.value=t,this.encodedLength=n,this.encodedBytes=void 0,this.byteValue=void 0}toString(){return`Token[${this.type}].${this.value}`}};var gt=globalThis.process&&!globalThis.process.browser&&globalThis.Buffer&&typeof globalThis.Buffer.isBuffer=="function",Wf=new TextDecoder,qf=new TextEncoder;function Mr(r){return gt&&globalThis.Buffer.isBuffer(r)}function Rr(r){return r instanceof Uint8Array?Mr(r)?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):r:Uint8Array.from(r)}var _s=gt?(r,e,t)=>t-e>64?globalThis.Buffer.from(r.subarray(e,t)).toString("utf8"):bs(r,e,t):(r,e,t)=>t-e>64?Wf.decode(r.subarray(e,t)):bs(r,e,t),Hr=gt?r=>r.length>64?globalThis.Buffer.from(r):xs(r):r=>r.length>64?qf.encode(r):xs(r);var wt=gt?(r,e,t)=>Mr(r)?new Uint8Array(r.subarray(e,t)):r.slice(e,t):(r,e,t)=>r.slice(e,t),Ss=gt?(r,e)=>(r=r.map(t=>t instanceof Uint8Array?t:globalThis.Buffer.from(t)),Rr(globalThis.Buffer.concat(r,e))):(r,e)=>{let t=new Uint8Array(e),n=0;for(let i of r)n+i.length>t.length&&(i=i.subarray(0,t.length-n)),t.set(i,n),n+=i.length;return t},Es=gt?r=>globalThis.Buffer.allocUnsafe(r):r=>new Uint8Array(r);function Bs(r,e){if(Mr(r)&&Mr(e))return r.compare(e);for(let t=0;t<r.length;t++)if(r[t]!==e[t])return r[t]<e[t]?-1:1;return 0}function xs(r){let e=[],t=0;for(let n=0;n<r.length;n++){let i=r.charCodeAt(n);i<128?e[t++]=i:i<2048?(e[t++]=i>>6|192,e[t++]=i&63|128):(i&64512)===55296&&n+1<r.length&&(r.charCodeAt(n+1)&64512)===56320?(i=65536+((i&1023)<<10)+(r.charCodeAt(++n)&1023),e[t++]=i>>18|240,e[t++]=i>>12&63|128,e[t++]=i>>6&63|128,e[t++]=i&63|128):(e[t++]=i>>12|224,e[t++]=i>>6&63|128,e[t++]=i&63|128)}return e}function bs(r,e,t){let n=[];for(;e<t;){let i=r[e],o=null,s=i>239?4:i>223?3:i>191?2:1;if(e+s<=t){let a,c,h,f;switch(s){case 1:i<128&&(o=i);break;case 2:a=r[e+1],(a&192)===128&&(f=(i&31)<<6|a&63,f>127&&(o=f));break;case 3:a=r[e+1],c=r[e+2],(a&192)===128&&(c&192)===128&&(f=(i&15)<<12|(a&63)<<6|c&63,f>2047&&(f<55296||f>57343)&&(o=f));break;case 4:a=r[e+1],c=r[e+2],h=r[e+3],(a&192)===128&&(c&192)===128&&(h&192)===128&&(f=(i&15)<<18|(a&63)<<12|(c&63)<<6|h&63,f>65535&&f<1114112&&(o=f))}}o===null?(o=65533,s=1):o>65535&&(o-=65536,n.push(o>>>10&1023|55296),o=56320|o&1023),n.push(o),e+=s}return gi(n)}var ks=4096;function gi(r){let e=r.length;if(e<=ks)return String.fromCharCode.apply(String,r);let t="",n=0;for(;n<e;)t+=String.fromCharCode.apply(String,r.slice(n,n+=ks));return t}var Kf=256,Vr=class{constructor(e=Kf){this.chunkSize=e,this.cursor=0,this.maxCursor=-1,this.chunks=[],this._initReuseChunk=null}reset(){this.cursor=0,this.maxCursor=-1,this.chunks.length&&(this.chunks=[]),this._initReuseChunk!==null&&(this.chunks.push(this._initReuseChunk),this.maxCursor=this._initReuseChunk.length-1)}push(e){let t=this.chunks[this.chunks.length-1];if(this.cursor+e.length<=this.maxCursor+1){let i=t.length-(this.maxCursor-this.cursor)-1;t.set(e,i)}else{if(t){let i=t.length-(this.maxCursor-this.cursor)-1;i<t.length&&(this.chunks[this.chunks.length-1]=t.subarray(0,i),this.maxCursor=this.cursor-1)}e.length<64&&e.length<this.chunkSize?(t=Es(this.chunkSize),this.chunks.push(t),this.maxCursor+=t.length,this._initReuseChunk===null&&(this._initReuseChunk=t),t.set(e,0)):(this.chunks.push(e),this.maxCursor+=e.length)}this.cursor+=e.length}toBytes(e=!1){let t;if(this.chunks.length===1){let n=this.chunks[0];e&&this.cursor>n.length/2?(t=this.cursor===n.length?n:n.subarray(0,this.cursor),this._initReuseChunk=null,this.chunks=[]):t=wt(n,0,this.cursor)}else t=Ss(this.chunks,this.cursor);return e&&this.reset(),t}};var B="CBOR decode error:",xt="CBOR encode error:",ir=[];ir[23]=1;ir[24]=2;ir[25]=3;ir[26]=5;ir[27]=9;function Te(r,e,t){if(r.length-e<t)throw new Error(`${B} not enough data for type`)}var R=[24,256,65536,4294967296,BigInt("18446744073709551616")];function ie(r,e,t){Te(r,e,1);let n=r[e];if(t.strict===!0&&n<R[0])throw new Error(`${B} integer encoded in more bytes than necessary (strict decode)`);return n}function oe(r,e,t){Te(r,e,2);let n=r[e]<<8|r[e+1];if(t.strict===!0&&n<R[1])throw new Error(`${B} integer encoded in more bytes than necessary (strict decode)`);return n}function se(r,e,t){Te(r,e,4);let n=r[e]*16777216+(r[e+1]<<16)+(r[e+2]<<8)+r[e+3];if(t.strict===!0&&n<R[2])throw new Error(`${B} integer encoded in more bytes than necessary (strict decode)`);return n}function ae(r,e,t){Te(r,e,8);let n=r[e]*16777216+(r[e+1]<<16)+(r[e+2]<<8)+r[e+3],i=r[e+4]*16777216+(r[e+5]<<16)+(r[e+6]<<8)+r[e+7],o=(BigInt(n)<<BigInt(32))+BigInt(i);if(t.strict===!0&&o<R[3])throw new Error(`${B} integer encoded in more bytes than necessary (strict decode)`);if(o<=Number.MAX_SAFE_INTEGER)return Number(o);if(t.allowBigInt===!0)return o;throw new Error(`${B} integers outside of the safe integer range are not supported`)}function vs(r,e,t,n){return new k(p.uint,ie(r,e+1,n),2)}function As(r,e,t,n){return new k(p.uint,oe(r,e+1,n),3)}function Is(r,e,t,n){return new k(p.uint,se(r,e+1,n),5)}function Cs(r,e,t,n){return new k(p.uint,ae(r,e+1,n),9)}function de(r,e){return V(r,0,e.value)}function V(r,e,t){if(t<R[0]){let n=Number(t);r.push([e|n])}else if(t<R[1]){let n=Number(t);r.push([e|24,n])}else if(t<R[2]){let n=Number(t);r.push([e|25,n>>>8,n&255])}else if(t<R[3]){let n=Number(t);r.push([e|26,n>>>24&255,n>>>16&255,n>>>8&255,n&255])}else{let n=BigInt(t);if(n<R[4]){let i=[e|27,0,0,0,0,0,0,0],o=Number(n&BigInt(4294967295)),s=Number(n>>BigInt(32)&BigInt(4294967295));i[8]=o&255,o=o>>8,i[7]=o&255,o=o>>8,i[6]=o&255,o=o>>8,i[5]=o&255,i[4]=s&255,s=s>>8,i[3]=s&255,s=s>>8,i[2]=s&255,s=s>>8,i[1]=s&255,r.push(i)}else throw new Error(`${B} encountered BigInt larger than allowable range`)}}de.encodedSize=function(e){return V.encodedSize(e.value)};V.encodedSize=function(e){return e<R[0]?1:e<R[1]?2:e<R[2]?3:e<R[3]?5:9};de.compareTokens=function(e,t){return e.value<t.value?-1:e.value>t.value?1:0};function Ns(r,e,t,n){return new k(p.negint,-1-ie(r,e+1,n),2)}function Ts(r,e,t,n){return new k(p.negint,-1-oe(r,e+1,n),3)}function Ds(r,e,t,n){return new k(p.negint,-1-se(r,e+1,n),5)}var wi=BigInt(-1),Ls=BigInt(1);function Ps(r,e,t,n){let i=ae(r,e+1,n);if(typeof i!="bigint"){let o=-1-i;if(o>=Number.MIN_SAFE_INTEGER)return new k(p.negint,o,9)}if(n.allowBigInt!==!0)throw new Error(`${B} integers outside of the safe integer range are not supported`);return new k(p.negint,wi-BigInt(i),9)}function jr(r,e){let t=e.value,n=typeof t=="bigint"?t*wi-Ls:t*-1-1;V(r,e.type.majorEncoded,n)}jr.encodedSize=function(e){let t=e.value,n=typeof t=="bigint"?t*wi-Ls:t*-1-1;return n<R[0]?1:n<R[1]?2:n<R[2]?3:n<R[3]?5:9};jr.compareTokens=function(e,t){return e.value<t.value?1:e.value>t.value?-1:0};function or(r,e,t,n){Te(r,e,t+n);let i=wt(r,e+t,e+t+n);return new k(p.bytes,i,t+n)}function Fs(r,e,t,n){return or(r,e,1,t)}function Us(r,e,t,n){return or(r,e,2,ie(r,e+1,n))}function zs(r,e,t,n){return or(r,e,3,oe(r,e+1,n))}function Os(r,e,t,n){return or(r,e,5,se(r,e+1,n))}function $s(r,e,t,n){let i=ae(r,e+1,n);if(typeof i=="bigint")throw new Error(`${B} 64-bit integer bytes lengths not supported`);return or(r,e,9,i)}function Gr(r){return r.encodedBytes===void 0&&(r.encodedBytes=r.type===p.string?Hr(r.value):r.value),r.encodedBytes}function bt(r,e){let t=Gr(e);V(r,e.type.majorEncoded,t.length),r.push(t)}bt.encodedSize=function(e){let t=Gr(e);return V.encodedSize(t.length)+t.length};bt.compareTokens=function(e,t){return Jf(Gr(e),Gr(t))};function Jf(r,e){return r.length<e.length?-1:r.length>e.length?1:Bs(r,e)}function sr(r,e,t,n,i){let o=t+n;Te(r,e,o);let s=new k(p.string,_s(r,e+t,e+o),o);return i.retainStringBytes===!0&&(s.byteValue=wt(r,e+t,e+o)),s}function Ms(r,e,t,n){return sr(r,e,1,t,n)}function Rs(r,e,t,n){return sr(r,e,2,ie(r,e+1,n),n)}function Hs(r,e,t,n){return sr(r,e,3,oe(r,e+1,n),n)}function Vs(r,e,t,n){return sr(r,e,5,se(r,e+1,n),n)}function js(r,e,t,n){let i=ae(r,e+1,n);if(typeof i=="bigint")throw new Error(`${B} 64-bit integer string lengths not supported`);return sr(r,e,9,i,n)}var Gs=bt;function kt(r,e,t,n){return new k(p.array,n,t)}function Ws(r,e,t,n){return kt(r,e,1,t)}function qs(r,e,t,n){return kt(r,e,2,ie(r,e+1,n))}function Ks(r,e,t,n){return kt(r,e,3,oe(r,e+1,n))}function Xs(r,e,t,n){return kt(r,e,5,se(r,e+1,n))}function Js(r,e,t,n){let i=ae(r,e+1,n);if(typeof i=="bigint")throw new Error(`${B} 64-bit integer array lengths not supported`);return kt(r,e,9,i)}function Ys(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${B} indefinite length items not allowed`);return kt(r,e,1,1/0)}function Wr(r,e){V(r,p.array.majorEncoded,e.value)}Wr.compareTokens=de.compareTokens;Wr.encodedSize=function(e){return V.encodedSize(e.value)};function _t(r,e,t,n){return new k(p.map,n,t)}function Qs(r,e,t,n){return _t(r,e,1,t)}function Zs(r,e,t,n){return _t(r,e,2,ie(r,e+1,n))}function ea(r,e,t,n){return _t(r,e,3,oe(r,e+1,n))}function ta(r,e,t,n){return _t(r,e,5,se(r,e+1,n))}function ra(r,e,t,n){let i=ae(r,e+1,n);if(typeof i=="bigint")throw new Error(`${B} 64-bit integer map lengths not supported`);return _t(r,e,9,i)}function na(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${B} indefinite length items not allowed`);return _t(r,e,1,1/0)}function qr(r,e){V(r,p.map.majorEncoded,e.value)}qr.compareTokens=de.compareTokens;qr.encodedSize=function(e){return V.encodedSize(e.value)};function ia(r,e,t,n){return new k(p.tag,t,1)}function oa(r,e,t,n){return new k(p.tag,ie(r,e+1,n),2)}function sa(r,e,t,n){return new k(p.tag,oe(r,e+1,n),3)}function aa(r,e,t,n){return new k(p.tag,se(r,e+1,n),5)}function ca(r,e,t,n){return new k(p.tag,ae(r,e+1,n),9)}function Kr(r,e){V(r,p.tag.majorEncoded,e.value)}Kr.compareTokens=de.compareTokens;Kr.encodedSize=function(e){return V.encodedSize(e.value)};var rl=20,nl=21,il=22,ol=23;function ua(r,e,t,n){if(n.allowUndefined===!1)throw new Error(`${B} undefined values are not supported`);return n.coerceUndefinedToNull===!0?new k(p.null,null,1):new k(p.undefined,void 0,1)}function fa(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${B} indefinite length items not allowed`);return new k(p.break,void 0,1)}function xi(r,e,t){if(t){if(t.allowNaN===!1&&Number.isNaN(r))throw new Error(`${B} NaN values are not supported`);if(t.allowInfinity===!1&&(r===1/0||r===-1/0))throw new Error(`${B} Infinity values are not supported`)}return new k(p.float,r,e)}function la(r,e,t,n){return xi(bi(r,e+1),3,n)}function ha(r,e,t,n){return xi(ki(r,e+1),5,n)}function da(r,e,t,n){return xi(ga(r,e+1),9,n)}function Xr(r,e,t){let n=e.value;if(n===!1)r.push([p.float.majorEncoded|rl]);else if(n===!0)r.push([p.float.majorEncoded|nl]);else if(n===null)r.push([p.float.majorEncoded|il]);else if(n===void 0)r.push([p.float.majorEncoded|ol]);else{let i,o=!1;(!t||t.float64!==!0)&&(ma(n),i=bi(xe,1),n===i||Number.isNaN(n)?(xe[0]=249,r.push(xe.slice(0,3)),o=!0):(ya(n),i=ki(xe,1),n===i&&(xe[0]=250,r.push(xe.slice(0,5)),o=!0))),o||(sl(n),i=ga(xe,1),xe[0]=251,r.push(xe.slice(0,9)))}}Xr.encodedSize=function(e,t){let n=e.value;if(n===!1||n===!0||n===null||n===void 0)return 1;if(!t||t.float64!==!0){ma(n);let i=bi(xe,1);if(n===i||Number.isNaN(n))return 3;if(ya(n),i=ki(xe,1),n===i)return 5}return 9};var pa=new ArrayBuffer(9),pe=new DataView(pa,1),xe=new Uint8Array(pa,0);function ma(r){if(r===1/0)pe.setUint16(0,31744,!1);else if(r===-1/0)pe.setUint16(0,64512,!1);else if(Number.isNaN(r))pe.setUint16(0,32256,!1);else{pe.setFloat32(0,r);let e=pe.getUint32(0),t=(e&2139095040)>>23,n=e&8388607;if(t===255)pe.setUint16(0,31744,!1);else if(t===0)pe.setUint16(0,(r&2147483648)>>16|n>>13,!1);else{let i=t-127;i<-24?pe.setUint16(0,0):i<-14?pe.setUint16(0,(e&2147483648)>>16|1<<24+i,!1):pe.setUint16(0,(e&2147483648)>>16|i+15<<10|n>>13,!1)}}}function bi(r,e){if(r.length-e<2)throw new Error(`${B} not enough data for float16`);let t=(r[e]<<8)+r[e+1];if(t===31744)return 1/0;if(t===64512)return-1/0;if(t===32256)return NaN;let n=t>>10&31,i=t&1023,o;return n===0?o=i*2**-24:n!==31?o=(i+1024)*2**(n-25):o=i===0?1/0:NaN,t&32768?-o:o}function ya(r){pe.setFloat32(0,r,!1)}function ki(r,e){if(r.length-e<4)throw new Error(`${B} not enough data for float32`);let t=(r.byteOffset||0)+e;return new DataView(r.buffer,t,4).getFloat32(0,!1)}function sl(r){pe.setFloat64(0,r,!1)}function ga(r,e){if(r.length-e<8)throw new Error(`${B} not enough data for float64`);let t=(r.byteOffset||0)+e;return new DataView(r.buffer,t,8).getFloat64(0,!1)}Xr.compareTokens=de.compareTokens;function L(r,e,t){throw new Error(`${B} encountered invalid minor (${t}) for major ${r[e]>>>5}`)}function Jr(r){return()=>{throw new Error(`${B} ${r}`)}}var S=[];for(let r=0;r<=23;r++)S[r]=L;S[24]=vs;S[25]=As;S[26]=Is;S[27]=Cs;S[28]=L;S[29]=L;S[30]=L;S[31]=L;for(let r=32;r<=55;r++)S[r]=L;S[56]=Ns;S[57]=Ts;S[58]=Ds;S[59]=Ps;S[60]=L;S[61]=L;S[62]=L;S[63]=L;for(let r=64;r<=87;r++)S[r]=Fs;S[88]=Us;S[89]=zs;S[90]=Os;S[91]=$s;S[92]=L;S[93]=L;S[94]=L;S[95]=Jr("indefinite length bytes/strings are not supported");for(let r=96;r<=119;r++)S[r]=Ms;S[120]=Rs;S[121]=Hs;S[122]=Vs;S[123]=js;S[124]=L;S[125]=L;S[126]=L;S[127]=Jr("indefinite length bytes/strings are not supported");for(let r=128;r<=151;r++)S[r]=Ws;S[152]=qs;S[153]=Ks;S[154]=Xs;S[155]=Js;S[156]=L;S[157]=L;S[158]=L;S[159]=Ys;for(let r=160;r<=183;r++)S[r]=Qs;S[184]=Zs;S[185]=ea;S[186]=ta;S[187]=ra;S[188]=L;S[189]=L;S[190]=L;S[191]=na;for(let r=192;r<=215;r++)S[r]=ia;S[216]=oa;S[217]=sa;S[218]=aa;S[219]=ca;S[220]=L;S[221]=L;S[222]=L;S[223]=L;for(let r=224;r<=243;r++)S[r]=Jr("simple values are not supported");S[244]=L;S[245]=L;S[246]=L;S[247]=ua;S[248]=Jr("simple values are not supported");S[249]=la;S[250]=ha;S[251]=da;S[252]=L;S[253]=L;S[254]=L;S[255]=fa;var be=[];for(let r=0;r<24;r++)be[r]=new k(p.uint,r,1);for(let r=-1;r>=-24;r--)be[31-r]=new k(p.negint,r,1);be[64]=new k(p.bytes,new Uint8Array(0),1);be[96]=new k(p.string,"",1);be[128]=new k(p.array,0,1);be[160]=new k(p.map,0,1);be[244]=new k(p.false,!1,1);be[245]=new k(p.true,!0,1);be[246]=new k(p.null,null,1);function cl(){let r=[];return r[p.uint.major]=de,r[p.negint.major]=jr,r[p.bytes.major]=bt,r[p.string.major]=Gs,r[p.array.major]=Wr,r[p.map.major]=qr,r[p.tag.major]=Kr,r[p.float.major]=Xr,r}var Oy=cl(),$y=new Vr,Yr=class r{constructor(e,t){this.obj=e,this.parent=t}includes(e){let t=this;do if(t.obj===e)return!0;while(t=t.parent);return!1}static createCheck(e,t){if(e&&e.includes(t))throw new Error(`${xt} object contains circular references`);return new r(t,e)}},He={null:new k(p.null,null),undefined:new k(p.undefined,void 0),true:new k(p.true,!0),false:new k(p.false,!1),emptyArray:new k(p.array,0),emptyMap:new k(p.map,0)},Ve={number(r,e,t,n){return!Number.isInteger(r)||!Number.isSafeInteger(r)?new k(p.float,r):r>=0?new k(p.uint,r):new k(p.negint,r)},bigint(r,e,t,n){return r>=BigInt(0)?new k(p.uint,r):new k(p.negint,r)},Uint8Array(r,e,t,n){return new k(p.bytes,r)},string(r,e,t,n){return new k(p.string,r)},boolean(r,e,t,n){return r?He.true:He.false},null(r,e,t,n){return He.null},undefined(r,e,t,n){return He.undefined},ArrayBuffer(r,e,t,n){return new k(p.bytes,new Uint8Array(r))},DataView(r,e,t,n){return new k(p.bytes,new Uint8Array(r.buffer,r.byteOffset,r.byteLength))},Array(r,e,t,n){if(!r.length)return t.addBreakTokens===!0?[He.emptyArray,new k(p.break)]:He.emptyArray;n=Yr.createCheck(n,r);let i=[],o=0;for(let s of r)i[o++]=_i(s,t,n);return t.addBreakTokens?[new k(p.array,r.length),i,new k(p.break)]:[new k(p.array,r.length),i]},Object(r,e,t,n){let i=e!=="Object",o=i?r.keys():Object.keys(r),s=i?r.size:o.length;if(!s)return t.addBreakTokens===!0?[He.emptyMap,new k(p.break)]:He.emptyMap;n=Yr.createCheck(n,r);let a=[],c=0;for(let h of o)a[c++]=[_i(h,t,n),_i(i?r.get(h):r[h],t,n)];return ul(a,t),t.addBreakTokens?[new k(p.map,s),a,new k(p.break)]:[new k(p.map,s),a]}};Ve.Map=Ve.Object;Ve.Buffer=Ve.Uint8Array;for(let r of"Uint8Clamped Uint16 Uint32 Int8 Int16 Int32 BigUint64 BigInt64 Float32 Float64".split(" "))Ve[`${r}Array`]=Ve.DataView;function _i(r,e={},t){let n=ws(r),i=e&&e.typeEncoders&&e.typeEncoders[n]||Ve[n];if(typeof i=="function"){let s=i(r,n,e,t);if(s!=null)return s}let o=Ve[n];if(!o)throw new Error(`${xt} unsupported type: ${n}`);return o(r,n,e,t)}function ul(r,e){e.mapSorter&&r.sort(e.mapSorter)}var fl={strict:!1,allowIndefinite:!0,allowUndefined:!0,allowBigInt:!0},Qr=class{constructor(e,t={}){this._pos=0,this.data=e,this.options=t}pos(){return this._pos}done(){return this._pos>=this.data.length}next(){let e=this.data[this._pos],t=be[e];if(t===void 0){let n=S[e];if(!n)throw new Error(`${B} no decoder for major type ${e>>>5} (byte 0x${e.toString(16).padStart(2,"0")})`);let i=e&31;t=n(this.data,this._pos,i,this.options)}return this._pos+=t.encodedLength,t}},ar=Symbol.for("DONE"),Zr=Symbol.for("BREAK");function ll(r,e,t){let n=[];for(let i=0;i<r.value;i++){let o=St(e,t);if(o===Zr){if(r.value===1/0)break;throw new Error(`${B} got unexpected break to lengthed array`)}if(o===ar)throw new Error(`${B} found array but not enough entries (got ${i}, expected ${r.value})`);n[i]=o}return n}function hl(r,e,t){let n=t.useMaps===!0,i=n?void 0:{},o=n?new Map:void 0;for(let s=0;s<r.value;s++){let a=St(e,t);if(a===Zr){if(r.value===1/0)break;throw new Error(`${B} got unexpected break to lengthed map`)}if(a===ar)throw new Error(`${B} found map but not enough entries (got ${s} [no key], expected ${r.value})`);if(n!==!0&&typeof a!="string")throw new Error(`${B} non-string keys not supported (got ${typeof a})`);if(t.rejectDuplicateMapKeys===!0&&(n&&o.has(a)||!n&&a in i))throw new Error(`${B} found repeat map key "${a}"`);let c=St(e,t);if(c===ar)throw new Error(`${B} found map but not enough entries (got ${s} [no value], expected ${r.value})`);n?o.set(a,c):i[a]=c}return n?o:i}function St(r,e){if(r.done())return ar;let t=r.next();if(t.type===p.break)return Zr;if(t.type.terminal)return t.value;if(t.type===p.array)return ll(t,r,e);if(t.type===p.map)return hl(t,r,e);if(t.type===p.tag){if(e.tags&&typeof e.tags[t.value]=="function"){let n=St(r,e);return e.tags[t.value](n)}throw new Error(`${B} tag not supported (${t.value})`)}throw new Error("unsupported")}function Si(r,e){if(!(r instanceof Uint8Array))throw new Error(`${B} data to decode must be a Uint8Array`);e=Object.assign({},fl,e);let t=e.tokenizer||new Qr(r,e),n=St(t,e);if(n===ar)throw new Error(`${B} did not find any content to decode`);if(n===Zr)throw new Error(`${B} got unexpected break`);return[n,r.subarray(t.pos())]}function cr(r,e){let[t,n]=Si(r,e);if(n.length>0)throw new Error(`${B} too many terminals, data makes no sense`);return t}var xa=42;function ml(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}function yl(r){if(r.asCID!==r&&r["/"]!==r.bytes)return null;let e=I.asCID(r);if(!e)return null;let t=new Uint8Array(e.bytes.byteLength+1);return t.set(e.bytes,1),[new k(p.tag,xa),new k(p.bytes,t)]}function gl(){throw new Error("`undefined` is not supported by the IPLD Data Model and cannot be encoded")}function wl(r){if(Number.isNaN(r))throw new Error("`NaN` is not supported by the IPLD Data Model and cannot be encoded");if(r===1/0||r===-1/0)throw new Error("`Infinity` and `-Infinity` is not supported by the IPLD Data Model and cannot be encoded");return null}var wa={float64:!0,typeEncoders:{Object:yl,undefined:gl,number:wl}},Xy={...wa,typeEncoders:{...wa.typeEncoders}};function xl(r){if(r[0]!==0)throw new Error("Invalid CID for CBOR tag 42; expected leading 0x00");return I.decode(r.subarray(1))}var en={allowIndefinite:!1,coerceUndefinedToNull:!0,allowNaN:!1,allowInfinity:!1,allowBigInt:!0,strict:!0,useMaps:!1,rejectDuplicateMapKeys:!0,tags:[]};en.tags[xa]=xl;var Jy={...en,tags:en.tags.slice()};var ba=113;var ka=r=>cr(ml(r),en);var Sa=class extends Array{constructor(){super(),this.inRecursive=[]}prefix(e){let t=this.inRecursive[this.inRecursive.length-1];t&&(t.type===p.array&&(t.elements++,t.elements!==1&&e.push([44])),t.type===p.map&&(t.elements++,t.elements!==1&&(t.elements%2===1?e.push([44]):e.push([58]))))}[p.uint.major](e,t){this.prefix(e);let n=String(t.value),i=[];for(let o=0;o<n.length;o++)i[o]=n.charCodeAt(o);e.push(i)}[p.negint.major](e,t){this[p.uint.major](e,t)}[p.bytes.major](e,t){throw new Error(`${xt} unsupported type: Uint8Array`)}[p.string.major](e,t){this.prefix(e);let n=Hr(JSON.stringify(t.value));e.push(n.length>32?Rr(n):n)}[p.array.major](e,t){this.prefix(e),this.inRecursive.push({type:p.array,elements:0}),e.push([91])}[p.map.major](e,t){this.prefix(e),this.inRecursive.push({type:p.map,elements:0}),e.push([123])}[p.tag.major](e,t){}[p.float.major](e,t){if(t.type.name==="break"){let s=this.inRecursive.pop();if(s){if(s.type===p.array)e.push([93]);else if(s.type===p.map)e.push([125]);else throw new Error("Unexpected recursive type; this should not happen!");return}throw new Error("Unexpected break; this should not happen!")}if(t.value===void 0)throw new Error(`${xt} unsupported type: undefined`);if(this.prefix(e),t.type.name==="true"){e.push([116,114,117,101]);return}else if(t.type.name==="false"){e.push([102,97,108,115,101]);return}else if(t.type.name==="null"){e.push([110,117,108,108]);return}let n=String(t.value),i=[],o=!1;for(let s=0;s<n.length;s++)i[s]=n.charCodeAt(s),!o&&(i[s]===46||i[s]===101||i[s]===69)&&(o=!0);o||(i.push(46),i.push(48)),e.push(i)}};var Et=class{constructor(e,t={}){this._pos=0,this.data=e,this.options=t,this.modeStack=["value"],this.lastToken=""}pos(){return this._pos}done(){return this._pos>=this.data.length}ch(){return this.data[this._pos]}currentMode(){return this.modeStack[this.modeStack.length-1]}skipWhitespace(){let e=this.ch();for(;e===32||e===9||e===13||e===10;)e=this.data[++this._pos]}expect(e){if(this.data.length-this._pos<e.length)throw new Error(`${B} unexpected end of input at position ${this._pos}`);for(let t=0;t<e.length;t++)if(this.data[this._pos++]!==e[t])throw new Error(`${B} unexpected token at position ${this._pos}, expected to find '${String.fromCharCode(...e)}'`)}parseNumber(){let e=this._pos,t=!1,n=!1,i=a=>{for(;!this.done();){let c=this.ch();if(a.includes(c))this._pos++;else break}};if(this.ch()===45&&(t=!0,this._pos++),this.ch()===48)if(this._pos++,this.ch()===46)this._pos++,n=!0;else return new k(p.uint,0,this._pos-e);if(i([48,49,50,51,52,53,54,55,56,57]),t&&this._pos===e+1)throw new Error(`${B} unexpected token at position ${this._pos}`);if(!this.done()&&this.ch()===46){if(n)throw new Error(`${B} unexpected token at position ${this._pos}`);n=!0,this._pos++,i([48,49,50,51,52,53,54,55,56,57])}!this.done()&&(this.ch()===101||this.ch()===69)&&(n=!0,this._pos++,!this.done()&&(this.ch()===43||this.ch()===45)&&this._pos++,i([48,49,50,51,52,53,54,55,56,57]));let o=String.fromCharCode.apply(null,this.data.subarray(e,this._pos)),s=parseFloat(o);return n?new k(p.float,s,this._pos-e):this.options.allowBigInt!==!0||Number.isSafeInteger(s)?new k(s>=0?p.uint:p.negint,s,this._pos-e):new k(s>=0?p.uint:p.negint,BigInt(o),this._pos-e)}parseString(){if(this.ch()!==34)throw new Error(`${B} unexpected character at position ${this._pos}; this shouldn't happen`);this._pos++;for(let o=this._pos,s=0;o<this.data.length&&s<65536;o++,s++){let a=this.data[o];if(a===92||a<32||a>=128)break;if(a===34){let c=String.fromCharCode.apply(null,this.data.subarray(this._pos,o));return this._pos=o+1,new k(p.string,c,s)}}let e=this._pos,t=[],n=()=>{if(this._pos+4>=this.data.length)throw new Error(`${B} unexpected end of unicode escape sequence at position ${this._pos}`);let o=0;for(let s=0;s<4;s++){let a=this.ch();if(a>=48&&a<=57)a-=48;else if(a>=97&&a<=102)a=a-97+10;else if(a>=65&&a<=70)a=a-65+10;else throw new Error(`${B} unexpected unicode escape character at position ${this._pos}`);o=o*16+a,this._pos++}return o},i=()=>{let o=this.ch(),s=null,a=o>239?4:o>223?3:o>191?2:1;if(this._pos+a>this.data.length)throw new Error(`${B} unexpected unicode sequence at position ${this._pos}`);let c,h,f,l;switch(a){case 1:o<128&&(s=o);break;case 2:c=this.data[this._pos+1],(c&192)===128&&(l=(o&31)<<6|c&63,l>127&&(s=l));break;case 3:c=this.data[this._pos+1],h=this.data[this._pos+2],(c&192)===128&&(h&192)===128&&(l=(o&15)<<12|(c&63)<<6|h&63,l>2047&&(l<55296||l>57343)&&(s=l));break;case 4:c=this.data[this._pos+1],h=this.data[this._pos+2],f=this.data[this._pos+3],(c&192)===128&&(h&192)===128&&(f&192)===128&&(l=(o&15)<<18|(c&63)<<12|(h&63)<<6|f&63,l>65535&&l<1114112&&(s=l))}s===null?(s=65533,a=1):s>65535&&(s-=65536,t.push(s>>>10&1023|55296),s=56320|s&1023),t.push(s),this._pos+=a};for(;!this.done();){let o=this.ch(),s;switch(o){case 92:if(this._pos++,this.done())throw new Error(`${B} unexpected string termination at position ${this._pos}`);switch(s=this.ch(),this._pos++,s){case 34:case 39:case 92:case 47:t.push(s);break;case 98:t.push(8);break;case 116:t.push(9);break;case 110:t.push(10);break;case 102:t.push(12);break;case 114:t.push(13);break;case 117:t.push(n());break;default:throw new Error(`${B} unexpected string escape character at position ${this._pos}`)}break;case 34:return this._pos++,new k(p.string,gi(t),this._pos-e);default:if(o<32)throw new Error(`${B} invalid control character at position ${this._pos}`);o<128?(t.push(o),this._pos++):i()}}throw new Error(`${B} unexpected end of string at position ${this._pos}`)}parseValue(){switch(this.ch()){case 123:return this.modeStack.push("obj-start"),this._pos++,new k(p.map,1/0,1);case 91:return this.modeStack.push("array-start"),this._pos++,new k(p.array,1/0,1);case 34:return this.parseString();case 110:return this.expect([110,117,108,108]),new k(p.null,null,4);case 102:return this.expect([102,97,108,115,101]),new k(p.false,!1,5);case 116:return this.expect([116,114,117,101]),new k(p.true,!0,4);case 45:case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return this.parseNumber();default:throw new Error(`${B} unexpected character at position ${this._pos}`)}}next(){switch(this.skipWhitespace(),this.currentMode()){case"value":return this.modeStack.pop(),this.parseValue();case"array-value":{if(this.modeStack.pop(),this.ch()===93)return this._pos++,this.skipWhitespace(),new k(p.break,void 0,1);if(this.ch()!==44)throw new Error(`${B} unexpected character at position ${this._pos}, was expecting array delimiter but found '${String.fromCharCode(this.ch())}'`);return this._pos++,this.modeStack.push("array-value"),this.skipWhitespace(),this.parseValue()}case"array-start":return this.modeStack.pop(),this.ch()===93?(this._pos++,this.skipWhitespace(),new k(p.break,void 0,1)):(this.modeStack.push("array-value"),this.skipWhitespace(),this.parseValue());case"obj-key":if(this.ch()===125)return this.modeStack.pop(),this._pos++,this.skipWhitespace(),new k(p.break,void 0,1);if(this.ch()!==44)throw new Error(`${B} unexpected character at position ${this._pos}, was expecting object delimiter but found '${String.fromCharCode(this.ch())}'`);this._pos++,this.skipWhitespace();case"obj-start":{if(this.modeStack.pop(),this.ch()===125)return this._pos++,this.skipWhitespace(),new k(p.break,void 0,1);let e=this.parseString();if(this.skipWhitespace(),this.ch()!==58)throw new Error(`${B} unexpected character at position ${this._pos}, was expecting key/value delimiter ':' but found '${String.fromCharCode(this.ch())}'`);return this._pos++,this.modeStack.push("obj-value"),e}case"obj-value":return this.modeStack.pop(),this.modeStack.push("obj-key"),this.skipWhitespace(),this.parseValue();default:throw new Error(`${B} unexpected parse state at position ${this._pos}; this shouldn't happen`)}}};function Ei(r,e){return e=Object.assign({tokenizer:new Et(r,e)},e),cr(r,e)}function _l(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}var Bi=class extends Et{constructor(e,t){super(e,t),this.tokenBuffer=[]}done(){return this.tokenBuffer.length===0&&super.done()}_next(){return this.tokenBuffer.length>0?this.tokenBuffer.pop():super.next()}next(){let e=this._next();if(e.type===p.map){let t=this._next();if(t.type===p.string&&t.value==="/"){let n=this._next();if(n.type===p.string){if(this._next().type!==p.break)throw new Error("Invalid encoded CID form");return this.tokenBuffer.push(n),new k(p.tag,42,0)}if(n.type===p.map){let i=this._next();if(i.type===p.string&&i.value==="bytes"){let o=this._next();if(o.type===p.string){for(let a=0;a<2;a++)if(this._next().type!==p.break)throw new Error("Invalid encoded Bytes form");let s=qt.decode(`m${o.value}`);return new k(p.bytes,s,o.value.length)}this.tokenBuffer.push(o)}this.tokenBuffer.push(i)}this.tokenBuffer.push(n)}this.tokenBuffer.push(t)}return e}},vi={allowIndefinite:!1,allowUndefined:!1,allowNaN:!1,allowInfinity:!1,allowBigInt:!0,strict:!0,useMaps:!1,rejectDuplicateMapKeys:!0,tags:[]};vi.tags[42]=I.parse;var Ea=297;var Ba=r=>{let e=_l(r),t=Object.assign(vi,{tokenizer:new Bi(e,vi)});return Ei(e,t)};var pg=new TextDecoder;var mg=new TextEncoder;function Bt(r,e,t,n,i,o,s){let a=r,c=i;for(;o.length>0;){let h=o[0];if(h in a){o.shift(),c=`${c}/${h}`;let f=I.asCID(a[h]);if(f!=null)return{entry:{type:"object",name:n,path:i,cid:t,node:e,depth:s,size:BigInt(e.length),content:async function*(){yield r}},next:{cid:f,name:h,path:c,toResolve:o}};a=a[h]}else throw new $r(`No property named ${h} found in node ${t}`)}return{entry:{type:"object",name:n,path:i,cid:t,node:e,depth:s,size:BigInt(e.length),content:async function*(){yield r}}}}var Sl=async(r,e,t,n,i,o,s,a)=>{let c=await s.get(r,a),h=ka(c);return Bt(h,c,r,e,t,n,o)},Aa=Sl;var El=async(r,e,t,n,i,o,s,a)=>{let c=await s.get(r,a),h=Ba(c);return Bt(h,c,r,e,t,n,o)},Ia=El;function Bl(r,e,t,n){let i=BigInt(r.length),o=BigInt(e+i);return t>=o||n<e?new Uint8Array(0):(n>=e&&n<o&&(r=r.subarray(0,Number(n-e))),t>=e&&t<o&&(r=r.subarray(Number(t-e))),r)}var tt=Bl;var vl=(r,e=0,t=r)=>{let n=BigInt(r),i=BigInt(e??0),o=BigInt(t);if(o!==n&&(o=i+o),o>n&&(o=n),i<0n)throw new Ze("Offset must be greater than or equal to 0");if(i>n)throw new Ze("Offset must be less than the file size");if(o<0n)throw new Ze("Length must be greater than or equal to 0");if(o>n)throw new Ze("Length must be less than the file size");return{start:i,end:o}},vt=vl;var Al=r=>{async function*e(t={}){let{start:n,end:i}=vt(r.length,t.offset,t.length),o=tt(r,0n,n,i);t.onProgress?.(new U("unixfs:exporter:progress:identity",{bytesRead:BigInt(o.byteLength),totalBytes:i-n,fileSize:BigInt(r.byteLength)})),yield o}return e},Il=async(r,e,t,n,i,o,s,a)=>{if(n.length>0)throw new he(`No link named ${t} found in raw node ${r}`);let c=_r(r.multihash.bytes);return{entry:{type:"identity",name:e,path:t,cid:r,content:Al(c.digest),depth:o,size:BigInt(c.digest.length),node:c.digest}}},Ca=Il;var Cl=async(r,e,t,n,i,o,s,a)=>{let c=await s.get(r,a),h=To(c);return Bt(h,c,r,e,t,n,o)},Na=Cl;var Nl=r=>{async function*e(t={}){let{start:n,end:i}=vt(r.length,t.offset,t.length),o=tt(r,0n,n,i);t.onProgress?.(new U("unixfs:exporter:progress:raw",{bytesRead:BigInt(o.byteLength),totalBytes:i-n,fileSize:BigInt(r.byteLength)})),yield o}return e},Tl=async(r,e,t,n,i,o,s,a)=>{if(n.length>0)throw new he(`No link named ${t} found in raw node ${r}`);let c=await s.get(r,a);return{entry:{type:"raw",name:e,path:t,cid:r,content:Nl(c),depth:o,size:BigInt(c.length),node:c}}},Ta=Tl;var Dl=async function(r){return(await Qe.encode(r)).slice(0,8).reverse()},Ll=async(r,e,t)=>{let n=(e.tableSize()-1).toString(16).length;await Promise.all(r.map(async i=>{if(i.Name==null)throw new Error("Unexpected Link without a Name");if(i.Name.length===n){let o=parseInt(i.Name,16);e._putObjectAt(o,new ne({hash:t._options.hash,bits:t._options.bits},e,o));return}await t.put(i.Name.substring(2),!0)}))},Da=(r,e)=>r.toString(16).toUpperCase().padStart(e,"0").substring(0,e),Pl=r=>{let e=r.bucket,t=[];for(;e._parent!=null;)t.push(e),e=e._parent;return t.push(e),t.reverse()},La=async(r,e,t,n,i)=>{if(n==null){if(r.Data==null)throw new M("no data in PBNode");let l;try{l=v.unmarshal(r.Data)}catch(u){throw new M(u.message)}if(l.type!=="hamt-sharded-directory")throw new M("not a HAMT");if(l.fanout==null)throw new M("missing fanout");let y=yt({hashFn:Dl,bits:Math.log2(Number(l.fanout))});n={rootBucket:y,hamtDepth:1,lastBucket:y}}let o=(n.lastBucket.tableSize()-1).toString(16).length;await Ll(r.Links,n.lastBucket,n.rootBucket);let s=await n.rootBucket._findNewBucketAndPos(e),a=Da(s.pos,o),c=Pl(s);c.length>n.hamtDepth&&(n.lastBucket=c[n.hamtDepth],a=Da(n.lastBucket._posAtParent,o));let h=r.Links.find(l=>{if(l.Name==null)return!1;let y=l.Name.substring(0,o),u=l.Name.substring(o);return!(y!==a||u!==""&&u!==e)});if(h==null)return;if(h.Name!=null&&h.Name.substring(o)===e)return h.Hash;n.hamtDepth++;let f=await t.get(h.Hash,i);return r=O(f),La(r,e,t,n,i)},Pa=La;function Fl(r){let[e,t]=r[Symbol.asyncIterator]!=null?[r[Symbol.asyncIterator](),Symbol.asyncIterator]:[r[Symbol.iterator](),Symbol.iterator],n=[];return{peek:()=>e.next(),push:i=>{n.push(i)},next:()=>n.length>0?{done:!1,value:n.shift()}:e.next(),[t](){return this}}}var tn=Fl;function Ul(r){return r[Symbol.asyncIterator]!=null}function zl(r,e){let t=0;if(Ul(r))return async function*(){for await(let c of r)await e(c,t++)&&(yield c)}();let n=tn(r),{value:i,done:o}=n.next();if(o===!0)return function*(){}();let s=e(i,t++);if(typeof s.then=="function")return async function*(){await s&&(yield i);for await(let c of n)await e(c,t++)&&(yield c)}();let a=e;return function*(){s===!0&&(yield i);for(let c of n)a(c,t++)&&(yield c)}()}var Fa=zl;function Ol(r){return r[Symbol.asyncIterator]!=null}function $l(r,e){let t=0;if(Ol(r))return async function*(){for await(let c of r)yield e(c,t++)}();let n=tn(r),{value:i,done:o}=n.next();if(o===!0)return function*(){}();let s=e(i,t++);if(typeof s.then=="function")return async function*(){yield await s;for await(let c of n)yield e(c,t++)}();let a=e;return function*(){yield s;for(let c of n)yield a(c,t++)}()}var At=$l;function De(){let r={};return r.promise=new Promise((e,t)=>{r.resolve=e,r.reject=t}),r}var rn=globalThis.CustomEvent??Event;async function*rt(r,e={}){let t=e.concurrency??1/0;t<1&&(t=1/0);let n=e.ordered==null?!1:e.ordered,i=new EventTarget,o=[],s=De(),a=De(),c=!1,h,f=!1;i.addEventListener("task-complete",()=>{a.resolve()}),Promise.resolve().then(async()=>{try{for await(let d of r){if(o.length===t&&(s=De(),await s.promise),f)break;let m={done:!1};o.push(m),d().then(x=>{m.done=!0,m.ok=!0,m.value=x,i.dispatchEvent(new rn("task-complete"))},x=>{m.done=!0,m.err=x,i.dispatchEvent(new rn("task-complete"))})}c=!0,i.dispatchEvent(new rn("task-complete"))}catch(d){h=d,i.dispatchEvent(new rn("task-complete"))}});function l(){return n?o[0]?.done:!!o.find(d=>d.done)}function*y(){for(;o.length>0&&o[0].done;){let d=o[0];if(o.shift(),d.ok)yield d.value;else throw f=!0,s.resolve(),d.err;s.resolve()}}function*u(){for(;l();)for(let d=0;d<o.length;d++)if(o[d].done){let m=o[d];if(o.splice(d,1),d--,m.ok)yield m.value;else throw f=!0,s.resolve(),m.err;s.resolve()}}for(;;){if(l()||(a=De(),await a.promise),h!=null)throw h;if(n?yield*y():yield*u(),c&&o.length===0)break}}var nn=class{buffer;mask;top;btm;next;constructor(e){if(!(e>0)||e-1&e)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(e),this.mask=e-1,this.top=0,this.btm=0,this.next=null}push(e){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=e,this.top=this.top+1&this.mask,!0)}shift(){let e=this.buffer[this.btm];if(e!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,e}isEmpty(){return this.buffer[this.btm]===void 0}},It=class{size;hwm;head;tail;constructor(e={}){this.hwm=e.splitLimit??16,this.head=new nn(this.hwm),this.tail=this.head,this.size=0}calculateSize(e){return e?.byteLength!=null?e.byteLength:1}push(e){if(e?.value!=null&&(this.size+=this.calculateSize(e.value)),!this.head.push(e)){let t=this.head;this.head=t.next=new nn(2*this.head.buffer.length),this.head.push(e)}}shift(){let e=this.tail.shift();if(e===void 0&&this.tail.next!=null){let t=this.tail.next;this.tail.next=null,this.tail=t,e=this.tail.shift()}return e?.value!=null&&(this.size-=this.calculateSize(e.value)),e}isEmpty(){return this.head.isEmpty()}};var Ai=class extends Error{type;code;constructor(e,t){super(e??"The operation was aborted"),this.type="aborted",this.code=t??"ABORT_ERR"}};function Ct(r={}){return Ml(t=>{let n=t.shift();if(n==null)return{done:!0};if(n.error!=null)throw n.error;return{done:n.done===!0,value:n.value}},r)}function Ml(r,e){e=e??{};let t=e.onEnd,n=new It,i,o,s,a=De(),c=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((x,g)=>{o=w=>{o=null,n.push(w);try{x(r(n))}catch(b){g(b)}return i}}):r(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=De()})}},h=x=>o!=null?o(x):(n.push(x),i),f=x=>(n=new It,o!=null?o({error:x}):(n.push({error:x}),i)),l=x=>{if(s)return i;if(e?.objectMode!==!0&&x?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return h({done:!1,value:x})},y=x=>s?i:(s=!0,x!=null?f(x):h({done:!0})),u=()=>(n=new It,y(),{done:!0}),d=x=>(y(x),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:c,return:u,throw:d,push:l,end:y,get readableLength(){return n.size},onEmpty:async x=>{let g=x?.signal;if(g?.throwIfAborted(),n.isEmpty())return;let w,b;g!=null&&(w=new Promise((_,A)=>{b=()=>{A(new Ai)},g.addEventListener("abort",b)}));try{await Promise.race([a.promise,w])}finally{b!=null&&g!=null&&g?.removeEventListener("abort",b)}}},t==null)return i;let m=i;return i={[Symbol.asyncIterator](){return this},next(){return m.next()},throw(x){return m.throw(x),t!=null&&(t(x),t=void 0),{done:!0}},return(){return m.return(),t!=null&&(t(),t=void 0),{done:!0}},push:l,end(x){return m.end(x),t!=null&&(t(x),t=void 0),i},get readableLength(){return m.readableLength},onEmpty:x=>m.onEmpty(x)},i}function Rl(r){return r[Symbol.asyncIterator]!=null}function Hl(...r){let e=[];for(let t of r)Rl(t)||e.push(t);return e.length===r.length?function*(){for(let t of e)yield*t}():async function*(){let t=Ct({objectMode:!0});Promise.resolve().then(async()=>{try{await Promise.all(r.map(async n=>{for await(let i of n)t.push(i)})),t.end()}catch(n){t.end(n)}}),yield*t}()}var Ua=Hl;function Be(r,...e){if(r==null)throw new Error("Empty pipeline");if(Ii(r)){let n=r;r=()=>n.source}else if(Oa(r)||za(r)){let n=r;r=()=>n}let t=[r,...e];if(t.length>1&&Ii(t[t.length-1])&&(t[t.length-1]=t[t.length-1].sink),t.length>2)for(let n=1;n<t.length-1;n++)Ii(t[n])&&(t[n]=jl(t[n]));return Vl(...t)}var Vl=(...r)=>{let e;for(;r.length>0;)e=r.shift()(e);return e},za=r=>r?.[Symbol.asyncIterator]!=null,Oa=r=>r?.[Symbol.iterator]!=null,Ii=r=>r==null?!1:r.sink!=null&&r.source!=null,jl=r=>e=>{let t=r.sink(e);if(t?.then!=null){let n=Ct({objectMode:!0});t.then(()=>{n.end()},s=>{n.end(s)});let i,o=r.source;if(za(o))i=async function*(){yield*o,n.end()};else if(Oa(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return Ua(n,i())}return r.source};var Gl=(r,e,t,n,i,o,s)=>{async function*a(c={}){let h=c.offset??0,f=c.length??e.Links.length,l=e.Links.slice(h,f);c.onProgress?.(new U("unixfs:exporter:walk:directory",{cid:r})),yield*Be(l,y=>At(y,u=>async()=>{let d=u.Name??"",m=`${n}/${d}`;return(await i(u.Hash,d,m,[],o+1,s,c)).entry}),y=>rt(y,{ordered:!0,concurrency:c.blockReadConcurrency}),y=>Fa(y,u=>u!=null))}return a},$a=Gl;var Ni=st(Ra(),1);var fr=class extends Error{constructor(e){super(e),this.name="TimeoutError"}},Ti=class extends Error{constructor(e){super(),this.name="AbortError",this.message=e}},Ha=r=>globalThis.DOMException===void 0?new Ti(r):new DOMException(r),Va=r=>{let e=r.reason===void 0?Ha("This operation was aborted."):r.reason;return e instanceof Error?e:Ha(e)};function Di(r,e){let{milliseconds:t,fallback:n,message:i,customTimers:o={setTimeout,clearTimeout}}=e,s,c=new Promise((h,f)=>{if(typeof t!="number"||Math.sign(t)!==1)throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${t}\``);if(e.signal){let{signal:y}=e;y.aborted&&f(Va(y)),y.addEventListener("abort",()=>{f(Va(y))})}if(t===Number.POSITIVE_INFINITY){r.then(h,f);return}let l=new fr;s=o.setTimeout.call(void 0,()=>{if(n){try{h(n())}catch(y){f(y)}return}typeof r.cancel=="function"&&r.cancel(),i===!1?h():i instanceof Error?f(i):(l.message=i??`Promise timed out after ${t} milliseconds`,f(l))},t),(async()=>{try{h(await r)}catch(y){f(y)}})()}).finally(()=>{c.clear()});return c.clear=()=>{o.clearTimeout.call(void 0,s),s=void 0},c}function Li(r,e,t){let n=0,i=r.length;for(;i>0;){let o=Math.trunc(i/2),s=n+o;t(r[s],e)<=0?(n=++s,i-=o+1):i=o}return n}var lr=class{#e=[];enqueue(e,t){t={priority:0,...t};let n={priority:t.priority,run:e};if(this.size&&this.#e[this.size-1].priority>=t.priority){this.#e.push(n);return}let i=Li(this.#e,n,(o,s)=>s.priority-o.priority);this.#e.splice(i,0,n)}dequeue(){return this.#e.shift()?.run}filter(e){return this.#e.filter(t=>t.priority===e.priority).map(t=>t.run)}get size(){return this.#e.length}};var hr=class extends Ni.default{#e;#r;#n=0;#u;#s;#c=0;#i;#f;#t;#m;#o=0;#l;#a;#y;timeout;constructor(e){if(super(),e={carryoverConcurrencyCount:!1,intervalCap:Number.POSITIVE_INFINITY,interval:0,concurrency:Number.POSITIVE_INFINITY,autoStart:!0,queueClass:lr,...e},!(typeof e.intervalCap=="number"&&e.intervalCap>=1))throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${e.intervalCap?.toString()??""}\` (${typeof e.intervalCap})`);if(e.interval===void 0||!(Number.isFinite(e.interval)&&e.interval>=0))throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${e.interval?.toString()??""}\` (${typeof e.interval})`);this.#e=e.carryoverConcurrencyCount,this.#r=e.intervalCap===Number.POSITIVE_INFINITY||e.interval===0,this.#u=e.intervalCap,this.#s=e.interval,this.#t=new e.queueClass,this.#m=e.queueClass,this.concurrency=e.concurrency,this.timeout=e.timeout,this.#y=e.throwOnTimeout===!0,this.#a=e.autoStart===!1}get#x(){return this.#r||this.#n<this.#u}get#b(){return this.#o<this.#l}#k(){this.#o--,this.#h(),this.emit("next")}#_(){this.#w(),this.#g(),this.#f=void 0}get#S(){let e=Date.now();if(this.#i===void 0){let t=this.#c-e;if(t<0)this.#n=this.#e?this.#o:0;else return this.#f===void 0&&(this.#f=setTimeout(()=>{this.#_()},t)),!0}return!1}#h(){if(this.#t.size===0)return this.#i&&clearInterval(this.#i),this.#i=void 0,this.emit("empty"),this.#o===0&&this.emit("idle"),!1;if(!this.#a){let e=!this.#S;if(this.#x&&this.#b){let t=this.#t.dequeue();return t?(this.emit("active"),t(),e&&this.#g(),!0):!1}}return!1}#g(){this.#r||this.#i!==void 0||(this.#i=setInterval(()=>{this.#w()},this.#s),this.#c=Date.now()+this.#s)}#w(){this.#n===0&&this.#o===0&&this.#i&&(clearInterval(this.#i),this.#i=void 0),this.#n=this.#e?this.#o:0,this.#d()}#d(){for(;this.#h(););}get concurrency(){return this.#l}set concurrency(e){if(!(typeof e=="number"&&e>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${e}\` (${typeof e})`);this.#l=e,this.#d()}async#E(e){return new Promise((t,n)=>{e.addEventListener("abort",()=>{n(e.reason)},{once:!0})})}async add(e,t={}){return t={timeout:this.timeout,throwOnTimeout:this.#y,...t},new Promise((n,i)=>{this.#t.enqueue(async()=>{this.#o++,this.#n++;try{t.signal?.throwIfAborted();let o=e({signal:t.signal});t.timeout&&(o=Di(Promise.resolve(o),{milliseconds:t.timeout})),t.signal&&(o=Promise.race([o,this.#E(t.signal)]));let s=await o;n(s),this.emit("completed",s)}catch(o){if(o instanceof fr&&!t.throwOnTimeout){n();return}i(o),this.emit("error",o)}finally{this.#k()}},t),this.emit("add"),this.#h()})}async addAll(e,t){return Promise.all(e.map(async n=>this.add(n,t)))}start(){return this.#a?(this.#a=!1,this.#d(),this):this}pause(){this.#a=!0}clear(){this.#t=new this.#m}async onEmpty(){this.#t.size!==0&&await this.#p("empty")}async onSizeLessThan(e){this.#t.size<e||await this.#p("next",()=>this.#t.size<e)}async onIdle(){this.#o===0&&this.#t.size===0||await this.#p("idle")}async#p(e,t){return new Promise(n=>{let i=()=>{t&&!t()||(this.off(e,i),n())};this.on(e,i)})}get size(){return this.#t.size}sizeBy(e){return this.#t.filter(e).length}get pending(){return this.#o}get isPaused(){return this.#a}};async function ja(r,e,t,n,i,o,s){if(e instanceof Uint8Array){let h=tt(e,n,i,o);t.push(h);return}if(e.Data==null)throw new M("no data in PBNode");let a;try{a=v.unmarshal(e.Data)}catch(h){throw new M(h.message)}if(a.data!=null){let h=a.data,f=tt(h,n,i,o);t.push(f),n+=BigInt(f.byteLength)}let c=[];if(e.Links.length!==a.blockSizes.length)throw new M("Inconsistent block sizes and dag links");for(let h=0;h<e.Links.length;h++){let f=e.Links[h],l=n,y=l+a.blockSizes[h];if((i>=l&&i<y||o>=l&&o<=y||i<l&&o>y)&&c.push({link:f,blockStart:n}),n=y,n>o)break}await Be(c,h=>At(h,f=>async()=>{let l=await r.get(f.link.Hash,s);return{...f,block:l}}),h=>rt(h,{ordered:!0,concurrency:s.blockReadConcurrency}),async h=>{for await(let{link:f,block:l,blockStart:y}of h){let u;switch(f.Hash.code){case H:u=O(l);break;case Z:u=l;break;default:t.end(new M(`Unsupported codec: ${f.Hash.code}`));return}let d=new hr({concurrency:1});d.on("error",m=>{t.end(m)}),d.add(async()=>{s.onProgress?.(new U("unixfs:exporter:walk:file",{cid:f.Hash})),await ja(r,u,t,y,i,o,s)}),await d.onIdle()}}),n>=o&&t.end()}var Kl=(r,e,t,n,i,o,s)=>{async function*a(c={}){let h=t.fileSize();if(h===void 0)throw new Error("File was a directory");let{start:f,end:l}=vt(h,c.offset,c.length);if(l===0n)return;let y=0n,u=l-f,d=Ct();c.onProgress?.(new U("unixfs:exporter:walk:file",{cid:r})),ja(s,e,d,0n,f,l,c).catch(m=>{d.end(m)});for await(let m of d)if(m!=null){if(y+=BigInt(m.byteLength),y>u)throw d.end(),new zr("Read too many bytes - the file size reported by the UnixFS data in the root node may be incorrect");y===u&&d.end(),c.onProgress?.(new U("unixfs:exporter:progress:unixfs:file",{bytesRead:y,totalBytes:u,fileSize:h})),yield m}if(y<u)throw new Or("Traversed entire DAG but did not read enough bytes")}return a},Pi=Kl;var Xl=(r,e,t,n,i,o,s)=>{function a(c={}){return c.onProgress?.(new U("unixfs:exporter:walk:hamt-sharded-directory",{cid:r})),Ga(e,n,i,o,s,c)}return a};async function*Ga(r,e,t,n,i,o){let s=r.Links;if(r.Data==null)throw new M("no data in PBNode");let a;try{a=v.unmarshal(r.Data)}catch(f){throw new M(f.message)}if(a.fanout==null)throw new M("missing fanout");let c=(a.fanout-1n).toString(16).length,h=Be(s,f=>At(f,l=>async()=>{let y=l.Name!=null?l.Name.substring(c):null;if(y!=null&&y!==""){let u=await t(l.Hash,y,`${e}/${y}`,[],n+1,i,o);return{entries:u.entry==null?[]:[u.entry]}}else{let u=await i.get(l.Hash,o);return r=O(u),o.onProgress?.(new U("unixfs:exporter:walk:hamt-sharded-directory",{cid:l.Hash})),{entries:Ga(r,e,t,n,i,o)}}}),f=>rt(f,{ordered:!0,concurrency:o.blockReadConcurrency}));for await(let{entries:f}of h)yield*f}var Wa=Xl;var Jl=(r,e)=>r.Links.find(n=>n.Name===e)?.Hash,Yl={raw:Pi,file:Pi,directory:$a,"hamt-sharded-directory":Wa,metadata:(r,e,t,n,i,o,s)=>()=>[],symlink:(r,e,t,n,i,o,s)=>()=>[]},Ql=async(r,e,t,n,i,o,s,a)=>{let c=await s.get(r,a),h=O(c),f,l;if(e==null&&(e=r.toString()),h.Data==null)throw new M("no data in PBNode");try{f=v.unmarshal(h.Data)}catch(u){throw new M(u.message)}if(t==null&&(t=e),n.length>0){let u;if(f?.type==="hamt-sharded-directory"?u=await Pa(h,n[0],s):u=Jl(h,n[0]),u==null)throw new he("file does not exist");let d=n.shift(),m=`${t}/${d}`;l={cid:u,toResolve:n,name:d??"",path:m}}let y=Yl[f.type](r,h,f,t,i,o,s);if(y==null)throw new he("could not find content exporter");return f.isDirectory()?{entry:{type:"directory",name:e,path:t,cid:r,content:y,unixfs:f,depth:o,node:h,size:f.fileSize()},next:l}:{entry:{type:"file",name:e,path:t,cid:r,content:y,unixfs:f,depth:o,node:h,size:f.fileSize()},next:l}},qa=Ql;var Zl={[H]:qa,[Z]:Ta,[ba]:Aa,[Ea]:Ia,[ri.code]:Ca,[No]:Na},Ka=async(r,e,t,n,i,o,s)=>{let a=Zl[r.code];if(a==null)throw new Ur(`No resolver for code ${r.code}`);return a(r,e,t,n,Ka,i,o,s)},Xa=Ka;var eh=(r="")=>(r.trim().match(/([^\\^/]|\\\/)+/g)??[]).filter(Boolean),th=r=>{if(r instanceof Uint8Array)return{cid:I.decode(r),toResolve:[]};let e=I.asCID(r);if(e!=null)return{cid:e,toResolve:[]};if(typeof r=="string"){r.indexOf("/ipfs/")===0&&(r=r.substring(6));let t=eh(r);return{cid:I.parse(t[0]),toResolve:t.slice(1)}}throw new Fr(`Unknown path type ${r}`)};async function*Fi(r,e,t={}){let{cid:n,toResolve:i}=th(r),o=n.toString(),s=o,a=i.length;for(;;){let c=await Xa(n,o,s,i,a,e,t);if(c.entry==null&&c.next==null)throw new he(`Could not resolve ${r}`);if(c.entry!=null&&(yield c.entry),c.next==null)return;i=c.next.toResolve,n=c.next.cid,o=c.next.name,s=c.next.path}}async function Y(r,e,t={}){let n=await Re(Fi(r,e,t));if(n==null)throw new he(`Could not resolve ${r}`);return n}async function*sn(r,e,t={}){let n=await Y(r,e,t);if(n==null)return;if(yield n,n.type==="directory")for await(let o of i(n,t))yield o;async function*i(o,s){for await(let a of o.content(s))yield a,!(a instanceof Uint8Array)&&a.type==="directory"&&(yield*i(a,s))}}var ic=st(nc(),1),K=ic.default;var ke=class extends Error{name;code;constructor(e,t,n){super(e),this.name=t,this.code=n}},ve=class extends ke{constructor(e="not a Unixfs node"){super(e,"NotUnixFSError","ERR_NOT_UNIXFS")}},Q=class extends ke{constructor(e="invalid PBNode"){super(e,"InvalidPBNodeError","ERR_INVALID_PBNODE")}},je=class extends ke{constructor(e="unknown error"){super(e,"InvalidPBNodeError","ERR_UNKNOWN_ERROR")}},nt=class extends ke{constructor(e="path already exists"){super(e,"AlreadyExistsError","ERR_ALREADY_EXISTS")}},Le=class extends ke{constructor(e="path does not exist"){super(e,"DoesNotExistError","ERR_DOES_NOT_EXIST")}},Dt=class extends ke{constructor(e="no content"){super(e,"NoContentError","ERR_NO_CONTENT")}},un=class extends ke{constructor(e="not a file"){super(e,"NotAFileError","ERR_NOT_A_FILE")}},Ae=class extends ke{constructor(e="not a directory"){super(e,"NotADirectoryError","ERR_NOT_A_DIRECTORY")}},j=class extends ke{constructor(e="invalid parameters"){super(e,"InvalidParametersError","ERR_INVALID_PARAMETERS")}};function ah(r,e){try{if(typeof r=="string"&&r.length>0)return ch(r);if(typeof r=="number"&&isFinite(r))return e?.long?fh(r):uh(r);throw new Error("Value is not a string or number.")}catch(t){let n=lh(t)?`${t.message}. value=${JSON.stringify(r)}`:"An unknown error has occured.";throw new Error(n)}}function ch(r){if(r=String(r),r.length>100)throw new Error("Value exceeds the maximum length of 100 characters.");let e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(r);if(!e)return NaN;let t=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return t*315576e5;case"weeks":case"week":case"w":return t*6048e5;case"days":case"day":case"d":return t*864e5;case"hours":case"hour":case"hrs":case"hr":case"h":return t*36e5;case"minutes":case"minute":case"mins":case"min":case"m":return t*6e4;case"seconds":case"second":case"secs":case"sec":case"s":return t*1e3;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return t;default:throw new Error(`The unit ${n} was matched, but no matching case exists.`)}}var ln=ah;function uh(r){let e=Math.abs(r);return e>=864e5?`${Math.round(r/864e5)}d`:e>=36e5?`${Math.round(r/36e5)}h`:e>=6e4?`${Math.round(r/6e4)}m`:e>=1e3?`${Math.round(r/1e3)}s`:`${r}ms`}function fh(r){let e=Math.abs(r);return e>=864e5?fn(r,e,864e5,"day"):e>=36e5?fn(r,e,36e5,"hour"):e>=6e4?fn(r,e,6e4,"minute"):e>=1e3?fn(r,e,1e3,"second"):`${r} ms`}function fn(r,e,t,n){let i=e>=t*1.5;return`${Math.round(r/t)} ${n}${i?"s":""}`}function lh(r){return typeof r=="object"&&r!==null&&"message"in r}function zi(r){t.debug=t,t.default=t,t.coerce=c,t.disable=o,t.enable=i,t.enabled=s,t.humanize=ln,t.destroy=h,Object.keys(r).forEach(f=>{t[f]=r[f]}),t.names=[],t.skips=[],t.formatters={};function e(f){let l=0;for(let y=0;y<f.length;y++)l=(l<<5)-l+f.charCodeAt(y),l|=0;return t.colors[Math.abs(l)%t.colors.length]}t.selectColor=e;function t(f){let l,y=null,u,d;function m(...x){if(!m.enabled)return;let g=m,w=Number(new Date),b=w-(l||w);g.diff=b,g.prev=l,g.curr=w,l=w,x[0]=t.coerce(x[0]),typeof x[0]!="string"&&x.unshift("%O");let _=0;x[0]=x[0].replace(/%([a-zA-Z%])/g,(C,E)=>{if(C==="%%")return"%";_++;let D=t.formatters[E];if(typeof D=="function"){let me=x[_];C=D.call(g,me),x.splice(_,1),_--}return C}),t.formatArgs.call(g,x),(g.log||t.log).apply(g,x)}return m.namespace=f,m.useColors=t.useColors(),m.color=t.selectColor(f),m.extend=n,m.destroy=t.destroy,Object.defineProperty(m,"enabled",{enumerable:!0,configurable:!1,get:()=>y!==null?y:(u!==t.namespaces&&(u=t.namespaces,d=t.enabled(f)),d),set:x=>{y=x}}),typeof t.init=="function"&&t.init(m),m}function n(f,l){let y=t(this.namespace+(typeof l>"u"?":":l)+f);return y.log=this.log,y}function i(f){t.save(f),t.namespaces=f,t.names=[],t.skips=[];let l,y=(typeof f=="string"?f:"").split(/[\s,]+/),u=y.length;for(l=0;l<u;l++)y[l]&&(f=y[l].replace(/\*/g,".*?"),f[0]==="-"?t.skips.push(new RegExp("^"+f.substr(1)+"$")):t.names.push(new RegExp("^"+f+"$")))}function o(){let f=[...t.names.map(a),...t.skips.map(a).map(l=>"-"+l)].join(",");return t.enable(""),f}function s(f){if(f[f.length-1]==="*")return!0;let l,y;for(l=0,y=t.skips.length;l<y;l++)if(t.skips[l].test(f))return!1;for(l=0,y=t.names.length;l<y;l++)if(t.names[l].test(f))return!0;return!1}function a(f){return f.toString().substring(2,f.toString().length-2).replace(/\.\*\?$/,"*")}function c(f){return f instanceof Error?f.stack??f.message:f}function h(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return t.setupFormatters(t.formatters),t.enable(t.load()),t}var hn=wh(),hh=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function dh(){return typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)?!0:typeof navigator<"u"&&navigator.userAgent?.toLowerCase().match(/(edge|trident)\/(\d+)/)!=null?!1:typeof document<"u"&&document.documentElement?.style?.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent?.toLowerCase().match(/firefox\/(\d+)/)!=null&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent?.toLowerCase().match(/applewebkit\/(\d+)/)}function ph(r){if(r[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+r[0]+(this.useColors?"%c ":" ")+"+"+ln(this.diff),!this.useColors)return;let e="color: "+this.color;r.splice(1,0,e,"color: inherit");let t=0,n=0;r[0].replace(/%[a-zA-Z%]/g,i=>{i!=="%%"&&(t++,i==="%c"&&(n=t))}),r.splice(n,0,e)}var mh=console.debug??console.log??(()=>{});function yh(r){try{r?hn?.setItem("debug",r):hn?.removeItem("debug")}catch{}}function gh(){let r;try{r=hn?.getItem("debug")}catch{}return!r&&typeof process<"u"&&"env"in process&&(r=process.env.DEBUG),r}function wh(){try{return localStorage}catch{}}function xh(r){r.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}}var oc=zi({formatArgs:ph,save:yh,load:gh,useColors:dh,setupFormatters:xh,colors:hh,storage:hn,log:mh});var ce=oc;ce.formatters.b=r=>r==null?"undefined":fe.baseEncode(r);ce.formatters.t=r=>r==null?"undefined":Ue.baseEncode(r);ce.formatters.m=r=>r==null?"undefined":qt.baseEncode(r);ce.formatters.p=r=>r==null?"undefined":r.toString();ce.formatters.c=r=>r==null?"undefined":r.toString();ce.formatters.k=r=>r==null?"undefined":r.toString();ce.formatters.a=r=>r==null?"undefined":r.toString();function bh(r){let e=()=>{};return e.enabled=!1,e.color="",e.diff=0,e.log=()=>{},e.namespace=r,e.destroy=()=>!0,e.extend=()=>e,e}function z(r){let e=bh(`${r}:trace`);return ce.enabled(`${r}:trace`)&&ce.names.map(t=>t.toString()).find(t=>t.includes(":trace"))!=null&&(e=ce(`${r}:trace`)),Object.assign(ce(r),{error:ce(`${r}:error`),trace:e})}var Ri=st(Tr(),1);function pn(r){function e(t){return t instanceof dn?t:new dn(t,r)}return e}var dn=class{_value;_hashFn;_depth;_availableBits;_currentBufferIndex;_buffers;constructor(e,t){if(!(e instanceof Uint8Array))throw new Error("can only hash Uint8Arrays");this._value=e,this._hashFn=t,this._depth=-1,this._availableBits=0,this._currentBufferIndex=0,this._buffers=[]}async take(e){let t=e;for(;this._availableBits<t;)await this._produceMoreBits();let n=0;for(;t>0;){let i=this._buffers[this._currentBufferIndex],o=Math.min(i.availableBits(),t),s=i.take(o);n=(n<<o)+s,t-=o,this._availableBits-=o,i.availableBits()===0&&this._currentBufferIndex++}return n}untake(e){let t=e;for(;t>0;){let n=this._buffers[this._currentBufferIndex],i=Math.min(n.totalBits()-n.availableBits(),t);n.untake(i),t-=i,this._availableBits+=i,this._currentBufferIndex>0&&n.totalBits()===n.availableBits()&&(this._depth--,this._currentBufferIndex--)}}async _produceMoreBits(){this._depth++;let e=this._depth>0?We([this._value,Uint8Array.from([this._depth])]):this._value,t=await this._hashFn(e),n=new Oi(t);this._buffers.push(n),this._availableBits+=n.availableBits()}},kh=[255,254,252,248,240,224,192,128],_h=[1,3,7,15,31,63,127,255],Oi=class{_value;_currentBytePos;_currentBitPos;constructor(e){this._value=e,this._currentBytePos=e.length-1,this._currentBitPos=7}availableBits(){return this._currentBitPos+1+this._currentBytePos*8}totalBits(){return this._value.length*8}take(e){let t=e,n=0;for(;t>0&&this._haveBits();){let i=this._value[this._currentBytePos],o=this._currentBitPos+1,s=Math.min(o,t),a=Sh(i,o-s,s);n=(n<<s)+a,t-=s,this._currentBitPos-=s,this._currentBitPos<0&&(this._currentBitPos=7,this._currentBytePos--)}return n}untake(e){for(this._currentBitPos+=e;this._currentBitPos>7;)this._currentBitPos-=8,this._currentBytePos+=1}_haveBits(){return this._currentBytePos>=0}};function Sh(r,e,t){let n=Eh(e,t);return(r&n)>>>e}function Eh(r,e){return kh[r]&_h[Math.min(e+r-1,7)]}var dr=BigInt(Qe.code),it=8;async function Lt(r){return(await Qe.encode(r)).subarray(0,8).reverse()}var cc=st(Tr(),1);var _e=async(r,e,t)=>{t.codec==null&&(t.codec=$);let n=await re.digest(r),i=I.create(t.cidVersion,t.codec.code,n);return await e.put(i,r,{...t,signal:t.signal}),i};var $i=class{options;root;dir;path;dirty;flat;parent;parentKey;unixfs;mode;mtime;cid;size;nodeSize;constructor(e,t){this.options=t??{},this.root=e.root,this.dir=e.dir,this.path=e.path,this.dirty=e.dirty,this.flat=e.flat,this.parent=e.parent,this.parentKey=e.parentKey,this.unixfs=e.unixfs,this.mode=e.mode,this.mtime=e.mtime}},mn=class extends $i{_bucket;constructor(e,t){super(e,t),this._bucket=yt({hashFn:Lt,bits:8})}async put(e,t){this.cid=void 0,this.size=void 0,this.nodeSize=void 0,await this._bucket.put(e,t)}async get(e){return this._bucket.get(e)}childCount(){return this._bucket.leafCount()}directChildrenCount(){return this._bucket.childrenCount()}onlyChild(){return this._bucket.onlyChild()}async*eachChildSeries(){for await(let{key:e,value:t}of this._bucket.eachLeafSeries())yield{key:e,child:t}}estimateNodeSize(){return this.nodeSize!==void 0?this.nodeSize:(this.nodeSize=ac(this._bucket,this,this.options),this.nodeSize)}async*flush(e){for await(let t of sc(this._bucket,e,this,this.options))yield{...t,path:this.path}}};async function*sc(r,e,t,n){let i=r._children,o=[],s=0n;for(let u=0;u<i.length;u++){let d=i.get(u);if(d==null)continue;let m=u.toString(16).toUpperCase().padStart(2,"0");if(d instanceof ne){let x;for await(let g of sc(d,e,null,n))x=g;if(x==null)throw new Error("Could not flush sharded directory, no subshard found");o.push({Name:m,Tsize:Number(x.size),Hash:x.cid}),s+=x.size}else if(Bh(d.value)){let x=d.value,g;for await(let b of x.flush(e))g=b,yield g;if(g==null)throw new Error("Did not flush dir");let w=m+d.key;o.push({Name:w,Tsize:Number(g.size),Hash:g.cid}),s+=g.size}else{let x=d.value;if(x.cid==null)continue;let g=m+d.key,w=x.size;o.push({Name:g,Tsize:Number(w),Hash:x.cid}),s+=BigInt(w??0)}}let a=Uint8Array.from(i.bitField().reverse()),c=new v({type:"hamt-sharded-directory",data:a,fanout:BigInt(r.tableSize()),hashType:dr,mtime:t?.mtime,mode:t?.mode}),h={Data:c.marshal(),Links:o},f=T(F(h)),l=await _e(f,e,n),y=BigInt(f.byteLength)+s;yield{cid:l,unixfs:c,size:y}}function Bh(r){return typeof r.flush=="function"}function ac(r,e,t){let n=r._children,i=[];for(let c=0;c<n.length;c++){let h=n.get(c);if(h==null)continue;let f=c.toString(16).toUpperCase().padStart(2,"0");if(h instanceof ne){let l=ac(h,null,t);i.push({Name:f,Tsize:Number(l),Hash:t.cidVersion===0?yn:gn})}else if(typeof h.value.flush=="function"){let y=h.value.nodeSize();i.push({Name:f+h.key,Tsize:Number(y),Hash:t.cidVersion===0?yn:gn})}else{let l=h.value;if(l.cid==null)continue;let y=f+h.key,u=l.size;i.push({Name:y,Tsize:Number(u),Hash:l.cid})}}let o=Uint8Array.from(n.bitField().reverse()),s=new v({type:"hamt-sharded-directory",data:o,fanout:BigInt(r.tableSize()),hashType:dr,mtime:e?.mtime,mode:e?.mode});return T(F({Data:s.marshal(),Links:i})).length}var yn=I.parse("QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn"),gn=I.parse("zdj7WbTaiJT1fgatdet9Ei9iDB5hdCxkbVyhyh8YTUnXMiwYi");var Mi=z("helia:unixfs:commands:utils:hamt-utils"),wn=r=>r.toString(16).toUpperCase().padStart(2,"0").substring(0,2),uc=async(r,e,t)=>{let n=new mn({root:!0,dir:!0,parent:void 0,parentKey:void 0,path:"",dirty:!0,flat:!1,mtime:t.mtime,mode:t.mode},t);for(let o=0;o<e.length;o++)await n._bucket.put(e[o].name,{size:e[o].size,cid:e[o].cid});let i=await Re(n.flush(r));if(i==null)throw new Error("Flushing shard yielded no result");return i},xn=async(r,e,t)=>{let n=v.unmarshal(r[0].node.Data??new Uint8Array(0)),i=BigInt(Math.pow(2,it));r.reverse();let o,s;for(let a=0;a<r.length;a++){let c=a===r.length-1,h=r[a],f=Uint8Array.from(h.children.bitField().reverse()),l=new v({type:"hamt-sharded-directory",data:f,fanout:i,hashType:dr});c&&(l.mtime=n.mtime,l.mode=n.mode),s={Data:l.marshal(),Links:h.node.Links};let y=T(F(s));if(o=await _e(y,e,t),!c){let u=r[a+1];if(u==null)throw new Error("Was not operating on shard root but also had no parent?");Mi("updating link in parent sub-shard with prefix %s",u.prefix),u.node.Links=u.node.Links.filter(d=>d.Name!==u.prefix),u.node.Links.push({Name:u.prefix,Hash:o,Tsize:h.node.Links.reduce((d,m)=>d+(m.Tsize??0),y.byteLength)})}}if(o==null||s==null)throw new Error("Noting persisted");return{cid:o,node:s}},bn=async(r,e,t,n)=>{let o=pn(Lt)(le(e)),s=[];for(;;){let a=await t.get(r,n),c=O(a),h=new cc.default,f=await o.take(it),l=wn(f);s.push({prefix:l,children:h,node:c});let y;for(let d of c.Links){let m=d.Name??"";if(m.length<2)throw new Error("Invalid HAMT - link name was too short");let x=parseInt(m.substring(0,2),16);h.set(x,!0),m.startsWith(l)&&(y=d)}if(y==null){Mi("no link found with prefix %s for %s",l,e);break}let u=y.Name??"";if(u.length<2)throw new Error("Invalid HAMT - link name was too short");if(u.length===2){r=y.Hash,Mi("descend into sub-shard with prefix %s",u);continue}break}return{path:s,hash:o}};async function kn(r,e,t,n){if(r.Data==null)throw new Error("DagPB node had no data");let i=v.unmarshal(r.Data),o;if(i.type==="directory")o=vh(r);else if(i.type==="hamt-sharded-directory")o=await fc(r,0,t,e,n);else throw new Error("Can only estimate the size of directories or shards");return o>t}function vh(r){let e=0;for(let t of r.Links)e+=(t.Name??"").length,e+=t.Hash.version===1?gn.bytes.byteLength:yn.bytes.byteLength;return e}async function fc(r,e,t,n,i){if(e>t)return t;if(r.Data==null||!v.unmarshal(r.Data).isDirectory())return e;for(let s of r.Links){let a=s.Name??"";if(a=a.substring(2),e+=a.length,e+=s.Hash.bytes.byteLength,s.Hash.code===H){let c=await n.get(s.Hash,i),h=O(c);e+=await fc(h,e,t,n,i)}}return e}var Ie=z("helia:unixfs:components:utils:add-link");async function Pt(r,e,t,n){if(r.node.Data==null)throw new j("Invalid parent passed to addLink");if(v.unmarshal(r.node.Data).type==="hamt-sharded-directory")return Ie("adding link to sharded directory"),Ch(r,e,t,n);Ie(`adding ${e.Name} (${e.Hash}) to regular directory`);let o=await Ih(r,e,t,n);if(await kn(o.node,t,n.shardSplitThresholdBytes,n)){Ie("converting directory to sharded directory");let s=await Ah(o,t);o.cid=s.cid,o.node=O(await t.get(s.cid,n))}return o}var Ah=async(r,e)=>{if(r.node.Data==null)throw new j("Invalid parent passed to convertToShardedDirectory");let t=v.unmarshal(r.node.Data),n=await uc(e,r.node.Links.map(i=>({name:i.Name??"",size:BigInt(i.Tsize??0),cid:i.Hash})),{mode:t.mode,mtime:t.mtime,cidVersion:r.cid.version});return Ie(`converted directory to sharded directory ${n.cid}`),n},Ih=async(r,e,t,n)=>{let i=r.node.Links.filter(f=>{let l=f.Name===e.Name;if(l&&!n.allowOverwriting)throw new nt;return!l});if(i.push(e),r.node.Data==null)throw new Q("Parent node with no data passed to addToDirectory");let o=v.unmarshal(r.node.Data),s;if(o.mtime!=null){let f=Date.now(),l=Math.floor(f/1e3);o.mtime={secs:BigInt(l),nsecs:(f-l*1e3)*1e3},s=o.marshal()}else s=r.node.Data;r.node=F({Data:s,Links:i});let a=T(r.node),c=await re.digest(a),h=I.create(r.cid.version,H,c);return await t.put(h,a),{node:r.node,cid:h}},Ch=async(r,e,t,n)=>{let{path:i,hash:o}=await bn(r.cid,e.Name,t,n),s=i[i.length-1];if(s==null)throw new Error("Invalid HAMT, could not generate path");let a=s.prefix,c=parseInt(a,16);Ie("next prefix for %s is %s",e.Name,a);let h=`${a}${e.Name}`,f=s.node.Links.find(l=>(l.Name??"").startsWith(a));if(f!=null)if(Ie("link %s was present in shard",h),f.Name===h){if(!n.allowOverwriting)throw new nt;Ie("overwriting %s in subshard",e.Name),s.node.Links=s.node.Links.filter(l=>l.Name!==h),s.node.Links.push({Name:h,Hash:e.Hash,Tsize:e.Tsize})}else{if(f.Name?.length===2)throw new Error("Existing link was subshard?!");{Ie("prefix %s already exists, creating new subshard",a);let l=s.node.Links.findIndex(x=>x.Name?.startsWith(a)),y=s.node.Links.splice(l,1)[0],u=(y.Name??"").substring(2),m=pn(Lt)(le(u));for(let x=0;x<i.length;x++)await m.take(it);for(;;){let x=await m.take(it),g=wn(x);y.Name=`${g}${u}`;let w=await o.take(it),b=wn(w);if(g===b){let A=new Ri.default;A.set(w,!0),i.push({prefix:b,children:A,node:{Links:[]}});continue}let _=new Ri.default;_.set(w,!0),_.set(x,!0),i.push({prefix:a,children:_,node:{Links:[y,{Name:`${b}${e.Name}`,Hash:e.Hash,Tsize:e.Tsize}]}});break}}}else Ie("link %s was not present in sub-shard",h),e.Name=h,s.node.Links.push(e),s.children.set(c,!0),Ie("adding %s to existing sub-shard",h);return xn(i,t,n)};async function Ge(r,e,t={}){let n=await Y(r,e,t);if(n.type!=="directory")throw new Ae(`${r.toString()} was not a UnixFS directory`);return{cid:r,node:n.node}}async function Ft(r,e,t,n){let i=await Y(r,t,n);if(i.type!=="directory"&&i.type!=="file"&&i.type!=="raw")throw new ve(`${r.toString()} was not a UnixFS node`);return{Name:e,Tsize:i.node instanceof Uint8Array?i.node.byteLength:Nh(i.node),Hash:r}}function Nh(r){let e=r.Links.reduce((t,n)=>t+(n.Tsize??0),0);return T(r).byteLength+e}var Th=z("helia:unixfs:components:utils:resolve");async function Ce(r,e,t,n){if(e==null||e==="")return{cid:r};let i=`/ipfs/${r}${e==null?"":`/${e}`}`,o=await Ko(Fi(i,t,n));if(o.length===0)throw new Le("Could not find path in directory");return Th("resolved %s to %c",e,r),{cid:o[o.length-1].cid,path:e,segments:o}}async function Ut(r,e,t,n){if(e.segments==null||e.segments.length===0)return r;let i=e.segments.pop();if(i==null)throw new Error("Insufficient segments");i.cid=r,e.segments.reverse();for(let o of e.segments){let[s,a]=await Promise.all([Ge(o.cid,t,n),Ft(i.cid,i.name,t,n)]);r=(await Pt(s,a,t,{...n,allowOverwriting:!0,cidVersion:r.version})).cid,o.cid=r,i=o}return r}var Dh=K.bind({ignoreUndefined:!0}),Lh={};async function*lc(r,e,t={}){let n=Dh(Lh,t),i=await Ce(r,n.path,e,n),o=await Y(i.cid,e,n);if(o.type!=="file"&&o.type!=="raw")throw new un;if(o.content==null)throw new Dt;yield*o.content(n)}var Ph=K.bind({ignoreUndefined:!0}),Fh=z("helia:unixfs:chmod"),Uh={recursive:!1,shardSplitThresholdBytes:262144};async function hc(r,e,t,n={}){let i=Ph(Uh,n),o=await Ce(r,i.path,t,n);if(Fh("chmod %c %d",o.cid,e),i.recursive){let y=await Be(async function*(){for await(let u of sn(o.cid,t,n)){let d,m=[];if(u.type==="raw")d=new v({type:"file",data:u.node});else if(u.type==="file"||u.type==="directory")d=u.unixfs,m=u.node.Links;else throw new ve;d.mode=e;let x={Data:d.marshal(),Links:m};yield{path:u.path,content:x}}},u=>Me(u,t,{...i,dagBuilder:async function*(d,m){for await(let x of d)yield async function(){let g=x.content,w=T(g),b=await _e(w,m,{...i,cidVersion:r.version});if(g.Data==null)throw new Q(`${b} had no data`);let _=v.unmarshal(g.Data);return{cid:b,size:BigInt(w.length),path:x.path,unixfs:_}}}}),async u=>Re(u));if(y==null)throw new je(`Could not chmod ${o.cid.toString()}`);return Ut(y.cid,o,t,i)}let s=await t.get(o.cid,n),a,c=[];if(o.cid.code===Z)a=new v({type:"file",data:s});else{let y=O(s);if(y.Data==null)throw new Q(`${o.cid.toString()} had no data`);c=y.Links,a=v.unmarshal(y.Data)}a.mode=e;let h=T({Data:a.marshal(),Links:c}),f=await re.digest(h),l=I.create(o.cid.version,H,f);return await t.put(l,h),Ut(l,o,t,i)}var zh=K.bind({ignoreUndefined:!0}),Oh=z("helia:unixfs:cp"),$h={force:!1,shardSplitThresholdBytes:262144};async function dc(r,e,t,n,i={}){let o=zh($h,i);if(t.includes("/"))throw new j("Name must not have slashes");let[s,a]=await Promise.all([Ge(e,n,o),Ft(r,t,n,o)]);return Oh('Adding %c as "%s" to %c',r,t,e),(await Pt(s,a,n,{allowOverwriting:o.force,cidVersion:e.version,...o})).cid}var Mh=K.bind({ignoreUndefined:!0}),Rh={};async function*pc(r,e,t={}){let n=Mh(Rh,t),i=await Ce(r,n.path,e,n),o=await Y(i.cid,e);if(o.type==="file"||o.type==="raw"){yield o;return}if(o.content==null)throw new Dt;if(o.type!=="directory")throw new Ae;yield*o.content({offset:t.offset,length:t.length})}var Hh=K.bind({ignoreUndefined:!0}),mc=z("helia:unixfs:mkdir"),Vh={cidVersion:1,force:!1,shardSplitThresholdBytes:262144};async function yc(r,e,t,n={}){let i=Hh(Vh,n);if(e.includes("/"))throw new j("Path must not have slashes");if((await Y(r,t,n)).type!=="directory")throw new Ae(`${r.toString()} was not a UnixFS directory`);mc("creating %s",e);let a={Data:new v({type:"directory",mode:i.mode,mtime:i.mtime}).marshal(),Links:[]},c=T(a),h=await re.digest(c),f=I.create(i.cidVersion,H,h);await t.put(f,c);let[l,y]=await Promise.all([Ge(r,t,i),Ft(f,e,t,i)]);return mc("adding empty dir called %s to %c",e,r),(await Pt(l,y,t,{...i,allowOverwriting:i.force})).cid}var Sn=z("helia:unixfs:utils:remove-link");async function gc(r,e,t,n){if(r.node.Data==null)throw new Q("Parent node had no data");if(v.unmarshal(r.node.Data).type==="hamt-sharded-directory"){Sn(`removing ${e} from sharded directory`);let o=await Gh(r,e,t,n);return await kn(o.node,t,n.shardSplitThresholdBytes,n)?o:(Sn("converting shard to flat directory %c",r.cid),Wh(o,t,n))}return Sn(`removing link ${e} regular directory`),jh(r,e,t,n)}var jh=async(r,e,t,n)=>{r.node.Links=r.node.Links.filter(s=>s.Name!==e);let i=T(r.node),o=await _e(i,t,{...n,cidVersion:r.cid.version});return Sn(`Updated regular directory ${o}`),{node:r.node,cid:o}},Gh=async(r,e,t,n)=>{let{path:i}=await bn(r.cid,e,t,n),o=i[i.length-1];if(o==null)throw new Error("Invalid HAMT, could not generate path");let s=o.node.Links.filter(h=>(h.Name??"").substring(2)===e).map(h=>h.Name).pop();if(s==null)throw new Error("File not found");let a=s.substring(0,2),c=parseInt(a,16);if(o.node.Links=o.node.Links.filter(h=>h.Name!==s),o.children.unset(c),o.node.Links.length===1)for(;i.length!==1;){let h=i[i.length-1];if(h==null||h.node.Links.length>1)break;i.pop();let f=i[i.length-1];if(f==null)break;let l=h.node.Links[0];f.node.Links=f.node.Links.filter(y=>!(y.Name??"").startsWith(f.prefix)),f.node.Links.push({Hash:l.Hash,Name:`${f.prefix}${(l.Name??"").substring(2)}`,Tsize:l.Tsize})}return xn(i,t,n)},Wh=async(r,e,t)=>{if(r.node.Data==null)throw new j("Invalid parent passed to convertToFlatDirectory");let n={Links:[]},i=await Y(r.cid,e);if(i.type!=="directory")throw new Error("Unexpected node type");for await(let c of i.content()){let h=0;c.node instanceof Uint8Array?h=c.node.byteLength:h=T(c.node).length,n.Links.push({Hash:c.cid,Name:c.name,Tsize:h})}let o=v.unmarshal(r.node.Data);n.Data=new v({type:"directory",mode:o.mode,mtime:o.mtime}).marshal();let s=T(F(n));return{cid:await _e(s,e,{codec:$,cidVersion:r.cid.version,signal:t.signal}),node:n}};var qh=K.bind({ignoreUndefined:!0}),Kh=z("helia:unixfs:rm"),Xh={shardSplitThresholdBytes:262144};async function wc(r,e,t,n={}){let i=qh(Xh,n);if(e.includes("/"))throw new j("Name must not have slashes");let o=await Ge(r,t,i);return Kh("Removing %s from %c",e,r),(await gc(o,e,t,{...i,cidVersion:r.version})).cid}var Jh=K.bind({ignoreUndefined:!0}),Yh=z("helia:unixfs:stat"),Qh={};async function xc(r,e,t={}){let n=Jh(Qh,t),i=await Ce(r,t.path,e,n);Yh("stat %c",i.cid);let o=await Y(i.cid,e,n);if(o.type!=="file"&&o.type!=="directory"&&o.type!=="raw")throw new ve;let s=0n,a=0n,c=0n,h=0n,f=0,l,y,u=o.type,d;if(o.type==="raw"&&(s=BigInt(o.node.byteLength),a=BigInt(o.node.byteLength),c=BigInt(o.node.byteLength),h=BigInt(o.node.byteLength),f=1),o.type==="directory"&&(s=0n,a=BigInt(o.unixfs.marshal().byteLength),c=0n,h=a,f=1,l=o.unixfs.mode,y=o.unixfs.mtime,d=o.unixfs),o.type==="file"){let m=await bc(i.cid,e,n);s=o.unixfs.fileSize(),a=BigInt((o.node.Data?.byteLength??0)+o.node.Links.reduce((x,g)=>x+(g.Tsize??0),0)),c=BigInt(m.localFileSize),h=BigInt(m.localDagSize),f=m.blocks,l=o.unixfs.mode,y=o.unixfs.mtime,d=o.unixfs}return{cid:i.cid,mode:l,mtime:y,fileSize:s,dagSize:a,localFileSize:c,localDagSize:h,blocks:f,type:u,unixfs:d}}async function bc(r,e,t){let n={localFileSize:0,localDagSize:0,blocks:0};if(await e.has(r,t)){let i=await e.get(r,t);if(n.blocks++,n.localDagSize+=i.byteLength,r.code===Z)n.localFileSize+=i.byteLength;else if(r.code===H){let o=O(i);if(o.Links.length>0)for(let s of o.Links){let a=await bc(s.Hash,e,t);n.localFileSize+=a.localFileSize,n.localDagSize+=a.localDagSize,n.blocks+=a.blocks}else{if(o.Data==null)throw new Q(`PBNode ${r.toString()} had no data`);let s=v.unmarshal(o.Data);if(s.data==null)throw new Q(`UnixFS node ${r.toString()} had no data`);n.localFileSize+=s.data.byteLength??0}}else throw new je(`${r.toString()} was neither DAG_PB nor RAW`)}return n}var Zh=K.bind({ignoreUndefined:!0}),ed=z("helia:unixfs:touch"),td={recursive:!1,shardSplitThresholdBytes:262144};async function kc(r,e,t={}){let n=Zh(td,t),i=await Ce(r,n.path,e,n),o=n.mtime??{secs:BigInt(Math.round(Date.now()/1e3)),nsecs:0};if(ed("touch %c %o",i.cid,o),n.recursive){let y=await Be(async function*(){for await(let u of sn(i.cid,e)){let d,m;if(u.type==="raw")d=new v({data:u.node}),m=[];else if(u.type==="file"||u.type==="directory")d=u.unixfs,m=u.node.Links;else throw new ve;d.mtime=o;let x={Data:d.marshal(),Links:m};yield{path:u.path,content:x}}},u=>Me(u,e,{...n,dagBuilder:async function*(d,m){for await(let x of d)yield async function(){let g=x.content,w=T(g),b=await _e(w,m,{...n,cidVersion:r.version});if(g.Data==null)throw new Q(`${b} had no data`);let _=v.unmarshal(g.Data);return{cid:b,size:BigInt(w.length),path:x.path,unixfs:_}}}}),async u=>Re(u));if(y==null)throw new je(`Could not chmod ${i.cid.toString()}`);return Ut(y.cid,i,e,n)}let s=await e.get(i.cid,t),a,c=[];if(i.cid.code===Z)a=new v({data:s});else{let y=O(s);if(c=y.Links,y.Data==null)throw new Q(`${i.cid.toString()} had no data`);a=v.unmarshal(y.Data)}a.mtime=o;let h=T({Data:a.marshal(),Links:c}),f=await re.digest(h),l=I.create(i.cid.version,H,f);return await e.put(l,h),Ut(l,i,e,n)}var En=class{components;constructor(e){this.components=e}async*addAll(e,t={}){yield*ds(e,this.components.blockstore,t)}async addBytes(e,t={}){return ps(e,this.components.blockstore,t)}async addByteStream(e,t={}){return ms(e,this.components.blockstore,t)}async addFile(e,t={}){return ys(e,this.components.blockstore,t)}async addDirectory(e={},t={}){return gs(e,this.components.blockstore,t)}async*cat(e,t={}){yield*lc(e,this.components.blockstore,t)}async chmod(e,t,n={}){return hc(e,t,this.components.blockstore,n)}async cp(e,t,n,i={}){return dc(e,t,n,this.components.blockstore,i)}async*ls(e,t={}){yield*pc(e,this.components.blockstore,t)}async mkdir(e,t,n={}){return yc(e,t,this.components.blockstore,n)}async rm(e,t,n={}){return wc(e,t,this.components.blockstore,n)}async stat(e,t={}){return xc(e,this.components.blockstore,t)}async touch(e,t={}){return kc(e,this.components.blockstore,t)}};function _c(r){return new En(r)}function Sc(r,e="utf8"){let t=Br[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return t.encoder.encode(r).substring(1)}var Pe="/",Ec=new TextEncoder().encode(Pe),Bn=Ec[0],pr=class r{_buf;constructor(e,t){if(typeof e=="string")this._buf=le(e);else if(e instanceof Uint8Array)this._buf=e;else throw new Error("Invalid key, should be String of Uint8Array");if(t==null&&(t=!0),t&&this.clean(),this._buf.byteLength===0||this._buf[0]!==Bn)throw new Error("Invalid key")}toString(e="utf8"){return Sc(this._buf,e)}uint8Array(){return this._buf}get[Symbol.toStringTag](){return`Key(${this.toString()})`}static withNamespaces(e){return new r(e.join(Pe))}static random(){return new r(Math.random().toString().substring(2))}static asKey(e){return e instanceof Uint8Array||typeof e=="string"?new r(e):typeof e.uint8Array=="function"?new r(e.uint8Array()):null}clean(){if((this._buf==null||this._buf.byteLength===0)&&(this._buf=Ec),this._buf[0]!==Bn){let e=new Uint8Array(this._buf.byteLength+1);e.fill(Bn,0,1),e.set(this._buf,1),this._buf=e}for(;this._buf.byteLength>1&&this._buf[this._buf.byteLength-1]===Bn;)this._buf=this._buf.subarray(0,-1)}less(e){let t=this.list(),n=e.list();for(let i=0;i<t.length;i++){if(n.length<i+1)return!1;let o=t[i],s=n[i];if(o<s)return!0;if(o>s)return!1}return t.length<n.length}reverse(){return r.withNamespaces(this.list().slice().reverse())}namespaces(){return this.list()}baseNamespace(){let e=this.namespaces();return e[e.length-1]}list(){return this.toString().split(Pe).slice(1)}type(){return rd(this.baseNamespace())}name(){return nd(this.baseNamespace())}instance(e){return new r(this.toString()+":"+e)}path(){let e=this.parent().toString();return e.endsWith(Pe)||(e+=Pe),e+=this.type(),new r(e)}parent(){let e=this.list();return e.length===1?new r(Pe):new r(e.slice(0,-1).join(Pe))}child(e){return this.toString()===Pe?e:e.toString()===Pe?this:new r(this.toString()+e.toString(),!1)}isAncestorOf(e){return e.toString()===this.toString()?!1:e.toString().startsWith(this.toString())}isDecendantOf(e){return e.toString()===this.toString()?!1:this.toString().startsWith(e.toString())}isTopLevel(){return this.list().length===1}concat(...e){return r.withNamespaces([...this.namespaces(),...id(e.map(t=>t.namespaces()))])}};function rd(r){let e=r.split(":");return e.length<2?"":e.slice(0,-1).join(":")}function nd(r){let e=r.split(":");return e[e.length-1]}function id(r){return[].concat(...r)}function vn(r){return r.split("/").pop()??""}var od=z("helia:mfs"),Hi=class{components;unixfs;root;key;constructor(e,t={}){this.components=e,this.key=new pr(t.key??"/locals/filesroot"),this.unixfs=_c(e)}async#e(){if(this.root==null)try{let e=await this.components.datastore.get(this.key);this.root=I.decode(e)}catch(e){if(e.code!=="ERR_NOT_FOUND")throw e;this.root=await this.unixfs.addDirectory()}return this.root}async writeBytes(e,t,n){let i=await this.unixfs.addFile({content:e,mode:n?.mode,mtime:n?.mtime},n);await this.cp(i,t,n)}async writeByteStream(e,t,n){let i=await this.unixfs.addFile({content:e,mode:n?.mode,mtime:n?.mtime},n);await this.cp(i,t,n)}async*cat(e,t={}){let n=await this.#e(),i=await this.#r(n,e,{...t,createMissingDirectories:!1,finalSegmentMustBeDirectory:!1});yield*this.unixfs.cat(i[i.length-1].cid,t)}async chmod(e,t,n={}){let i=await this.#e();this.root=await this.unixfs.chmod(i,t,{...n,path:e})}async cp(e,t,n){let i=await this.#e(),o=n?.force??!1;typeof e=="string"&&(e=(await this.stat(e,n)).cid),o||await this.#s(t,n);let s=vn(t),a=t.substring(0,t.length-`/${s}`.length),c=[{cid:i,name:""}];a!==""&&(c=await this.#r(i,a,{...n,createMissingDirectories:n?.force??!1,finalSegmentMustBeDirectory:!0})),c.push({cid:e,name:s}),this.root=await this.#n(c,n)}async*ls(e,t){let n=await this.#e();t?.path!=null&&(e=`${e}/${t.path}`),yield*this.unixfs.ls(n,{...t,path:e})}async mkdir(e,t){let n=t?.force??!1;n||await this.#s(e,t);let i=vn(e),o=e.substring(0,e.length-`/${i}`.length),s=await this.#e(),a=[{cid:s,name:""}];o!==""&&(a=await this.#r(s,o,{...t,createMissingDirectories:n,finalSegmentMustBeDirectory:!0})),a.push({cid:await this.unixfs.addDirectory({mode:t?.mode,mtime:t?.mtime},t),name:vn(e)}),this.root=await this.#n(a,t)}async rm(e,t){(t?.force??!1)||await this.#u(e,t);let i=await this.#e(),o=await this.#r(i,e,{...t,createMissingDirectories:!1,finalSegmentMustBeDirectory:!1}),s=o.pop();if(s==null)throw new j("path was too short");let a=o[o.length-1];a.cid=await this.unixfs.rm(a.cid,s.name,t),this.root=await this.#n(o,t)}async stat(e,t){let n=await this.#e(),o=(await this.#r(n,e,{...t,createMissingDirectories:!1,finalSegmentMustBeDirectory:!1})).pop();if(o==null)throw new Le;return this.unixfs.stat(o.cid,{...t})}async touch(e,t){let n=await this.#e(),i=await this.#r(n,e,{...t,createMissingDirectories:!1,finalSegmentMustBeDirectory:!1}),o=i[i.length-1];if(o==null)throw new Le;o.cid=await this.unixfs.touch(o.cid,t),this.root=await this.#n(i,t)}async#r(e,t,n){if(!t.startsWith("/"))throw new j("path must be absolute");let i=await this.unixfs.stat(e,{...n,offline:!0}),o=[{cid:e,name:"",unixfs:i.unixfs}],s=e,a=t.split("/").filter(Boolean);for(let h=0;h<a.length;h++){let f=a[h];try{let l=await this.unixfs.stat(s,{...n,offline:!0,path:f});o.push({cid:l.cid,name:f,unixfs:l.unixfs}),s=l.cid}catch{if(od.error("could not resolve path segment %s of %s under %c",f,t,e),n.createMissingDirectories){let y=await this.unixfs.addDirectory();o.push({cid:y,name:f,unixfs:new v({type:"directory"})})}else throw new Le(`${t} does not exist`)}}let c=o[o.length-1];if(n.finalSegmentMustBeDirectory&&c.unixfs?.isDirectory()!==!0)throw new Ae(`${t} was not a directory`);return o}async#n(e,t={}){let n=e.pop();if(n==null)throw new j("path was too short");let i=n.cid;for(let o=e.length-1;o>-1;o--){let s=e[o];s.cid=await this.unixfs.cp(n.cid,s.cid,n.name,{...t,force:!0}),n=s,i=s.cid}return await this.components.datastore.put(this.key,i.bytes,t),i}async#u(e,t={}){if(!await this.#c(e,t))throw new Le}async#s(e,t={}){if(await this.#c(e,t))throw new nt}async#c(e,t={}){try{return await this.stat(e,{...t,offline:!0}),!0}catch{return!1}}};function sd(r,e={}){return new Hi(r,e)}return Nc(ad);})();
3
3
  return HeliaMfs}));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@helia/mfs",
3
- "version": "3.0.7-e567717",
3
+ "version": "3.0.8-3bf5ab0",
4
4
  "description": "A mutable filesystem powered by Helia",
5
5
  "license": "Apache-2.0 OR MIT",
6
6
  "homepage": "https://github.com/ipfs/helia/tree/main/packages/mfs#readme",
@@ -139,7 +139,7 @@
139
139
  "release": "aegir release"
140
140
  },
141
141
  "dependencies": {
142
- "@helia/unixfs": "3.0.7-e567717",
142
+ "@helia/unixfs": "3.0.7-3bf5ab0",
143
143
  "@libp2p/interface": "^1.1.4",
144
144
  "@libp2p/logger": "^4.0.7",
145
145
  "interface-blockstore": "^5.2.10",